:root{color-scheme:dark;--bg:#1b1427;--panel:#251c33;--text:#f8f3ec;--muted:#cfc4d9;--gold:#f3cf85;--line:#493a59}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.65 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}h1,h2,h3,p{margin-top:0}h2{font:clamp(2rem,4vw,3.3rem)/1.15 Georgia,serif;letter-spacing:-.025em;margin-bottom:1.2rem}h3{font-size:1.15rem}p{color:var(--muted)}.skip{position:fixed;top:-100px;left:1rem;background:var(--gold);color:var(--bg);padding:.7rem;z-index:10}.skip:focus{top:1rem}.header{border-bottom:1px solid var(--line);background:#1b1427}.nav-wrap{max-width:1240px;margin:auto;padding:1.4rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-weight:700;letter-spacing:.12em;color:var(--gold)}.brand span{display:block;font-size:.75rem;letter-spacing:.04em;font-weight:400;color:var(--muted)}nav{display:flex;flex-wrap:wrap;gap:1.4rem;font-size:.9rem}.hero{max-width:1240px;margin:auto;padding:4rem 2rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.eyebrow{font-size:.85rem;letter-spacing:.15em;color:var(--gold);line-height:1.7}.edition{margin-top:3rem;letter-spacing:.3em;font-size:.9rem;color:var(--text)}h1{font:italic clamp(4rem,8vw,7rem)/1.1 Georgia,serif;color:var(--gold);letter-spacing:-.05em;margin-bottom:1.5rem}.intro{font-size:1.25rem;line-height:1.7}.hero-date{font:1.6rem Georgia,serif;color:var(--text);margin:2.4rem 0}.hero-date span{display:block;font:1rem system-ui;color:var(--muted);margin-top:.5rem}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.3rem}.button{display:inline-block;background:var(--gold);color:#21172d;padding:.85rem 1.25rem;border-radius:4px;font-weight:650}.text-link{font-size:.9rem;text-decoration:underline;text-underline-offset:5px}.hero-note{font-size:.875rem;margin:1.5rem 0 0}.poster{margin:0;max-width:490px;justify-self:end}.poster img{width:100%;height:auto;display:block;border:1px solid #695077;box-shadow:0 20px 70px #08040c80;border-radius:3px}.section{max-width:1176px;margin:auto;padding:4.5rem 0;border-top:1px solid var(--line);scroll-margin-top:1rem}.section-heading{max-width:650px;margin-bottom:2rem}.notice{padding:2rem;background:var(--panel);border-left:3px solid var(--gold)}.notice h3{margin:1rem 0 .5rem}.notice p{margin-bottom:.5rem}.label,.status{font-size:.85rem;color:var(--gold)}.meta,.pending-note{font-size:.875rem}.pending-note{margin-top:1.5rem}.sessions{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.session{border-top:1px solid var(--gold);padding:1.3rem .8rem;background:var(--panel)}.day{font-size:.875rem}.session h3{font:3rem Georgia,serif;color:var(--gold);margin-bottom:1.2rem}.session h3 span{display:block;font:1rem system-ui;color:var(--text);margin-top:.5rem}.hour{font-size:1.4rem;color:var(--text);margin-bottom:.6rem}.restriction{font-size:.875rem;line-height:1.4;color:var(--gold)}.split{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.info-list{margin:0}.info-list div{display:flex;justify-content:space-between;gap:2rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}dt{font-weight:600}dd{margin:0;color:var(--muted);text-align:right}.form-placeholder{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;border:1px solid var(--line);background:var(--panel)}.form-placeholder p{margin-bottom:0}.status{padding:.5rem 1rem;border:1px solid var(--line);border-radius:30px}.practical{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.number{display:block;font:1.4rem Georgia;color:var(--gold);margin-bottom:1.8rem}.practical article{border-top:1px solid var(--line);padding-top:1.2rem}.faq details{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq summary{cursor:pointer;font-weight:600;padding-right:1rem}.faq details p{margin:1rem 0 .3rem}footer{background:#140f1e;padding:3rem max(2rem,calc((100vw - 1176px)/2))}footer p{margin:.8rem 0 0;font-size:.875rem}@media(max-width:1250px){.section{margin-left:2rem;margin-right:2rem}}@media(max-width:900px){.nav-wrap{align-items:flex-start;flex-direction:column;gap:1rem}nav{gap:.7rem 1.2rem}.hero{gap:2rem;padding-top:2.5rem}.edition{margin-top:2rem}.sessions{grid-template-columns:repeat(3,1fr)}.split{gap:2rem}.practical{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.nav-wrap{padding:1.2rem}.hero{grid-template-columns:1fr;padding:2.5rem 1.2rem 3rem;gap:2.5rem}.poster{max-width:400px;justify-self:center}.hero-copy{width:100%}.edition{margin-top:2rem}h1{font-size:4.5rem}.section{margin:0 1.2rem;padding:3rem 0}.sessions{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr;gap:0}.practical{gap:1.2rem}.form-placeholder{align-items:flex-start;flex-direction:column;padding:1.4rem}.info-list div{gap:1rem}.section-heading{margin-bottom:1.5rem}footer{padding:2rem 1.2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Direção visual do mockup aprovado. */
:root{color-scheme:light;--bg:#fcf0e6;--panel:#efdeed;--text:#2c1435;--muted:#503c55;--gold:#693676;--line:#dec9d8}body{background:linear-gradient(120deg,#fff4e9,#f7e6e7)}.header{background:#fff7f0;border-bottom:0}.nav-wrap{max-width:1320px;padding:1.2rem 2rem}.brand{color:#3d1c48}.hero{max-width:none;min-height:470px;padding:3rem 1.5rem;display:flex;justify-content:center;text-align:center;background:linear-gradient(#20102d40,#20102d65),url('assets/hero-rapunzel.png') center/cover;color:#fff6eb}.hero-copy{max-width:720px}.hero .eyebrow{font:1.15rem/1.35 Georgia,serif;color:#fff1d1;letter-spacing:0}.presents{color:#fff1d1;font-size:.75rem;letter-spacing:.4em;margin-top:1.4rem}h1{color:#ffdb92;font-size:clamp(4.5rem,10vw,7.5rem);text-shadow:0 2px 15px #271333;margin-bottom:.9rem}.edition{color:#fff5e9;letter-spacing:.4em;margin:0 0 .75rem;font:1.3rem Georgia,serif}.hero .intro{color:#ffdb92;font-size:.85rem;letter-spacing:.3em}.button{background:#62316f;color:#fff;border-radius:30px}.hero .button{background:#f7d396;color:#301a3c;margin-top:1rem}.section{padding:3rem 0}.notice{border-radius:18px;border-left:0;background:linear-gradient(110deg,#e9d1e9,#f2e1ec)}#avisos .section-heading{margin-bottom:1.2rem}#avisos h2{font-size:2rem}.about{display:grid;grid-template-columns:1.4fr 1fr;gap:5rem;align-items:center}.about h2{font-style:italic;font-size:4rem}.poster{max-width:240px;justify-self:center;transform:rotate(3deg)}.poster img{border:8px solid #fff9f3;box-shadow:0 12px 30px #56344633}.poster figcaption{font-size:.875rem;text-align:center;margin-top:.6rem}.sessions-section{max-width:none;margin:0;padding:3rem max(2rem,calc((100vw - 1176px)/2));background:linear-gradient(#241430cc,#241430dd),url('assets/hero-rapunzel.png') center/cover}.sessions-section .section-heading{margin:0 auto 2rem;text-align:center}.sessions-section .eyebrow,.sessions-section h2,.sessions-section .pending-note{color:#fff0db}.sessions{gap:1rem}.session{background:#fff0e1;border:0;border-radius:10px;padding:1.3rem;text-align:center}.session h3{color:#652854}.session .hour{color:#321631}.session h3 span{color:#321631}.session .restriction{color:#652854}.info-list{padding:1.3rem 1.8rem;background:#edd6e9;border-radius:18px}.form-placeholder{border:0;border-radius:18px;background:#e2e5da}.practical article{background:#fff7ef;border:1px solid #edd9d5;padding:1.5rem;border-radius:12px}.number{margin-bottom:1rem;color:#ad5860}.faq details{padding:1.1rem 0}footer{background:#2b1936;color:#fff2dd}footer .brand{color:#f6d091}footer p,footer .brand span{color:#e1cfe7}@media(max-width:900px){.about{gap:2rem}.sessions-section{padding:3rem 2rem}}@media(max-width:600px){.hero{min-height:420px;background-position:center}.hero .edition{font-size:1rem;letter-spacing:.2em}.about{grid-template-columns:1fr;gap:2rem}.poster{max-width:220px}.sessions-section{margin:0;padding:2.5rem 1.2rem}.about h2{font-size:3rem}.info-list{padding:1rem}.nav-wrap{padding:1rem 1.2rem}.session{padding:1.2rem .8rem}}
@media(max-width:600px){h1{font-size:clamp(3.3rem,16vw,4.5rem)}nav{font-size:.875rem}.status{max-width:100%;border-radius:12px}.info-list dt,.info-list dd{overflow-wrap:anywhere}}
