/* Shared editorial system for the three complete language editions. */
:root{--ink:#002147;--muted:#52616d;--soft:#52616d;--violet:#367588;--gold:#87501f;--gold-light:#f7e7ce;--dusk:#002147;--border:#ccd0cd;--card:#fffcf8;--paper:#f4f0ec;--teal:#367588;--copper:#b87333;--display:'Instrument Serif',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;border-top:5px solid var(--ink);min-height:100vh;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.page{width:min(1240px,calc(100% - 96px));margin:auto;display:grid;grid-template-columns:155px minmax(0,1fr);column-gap:55px;padding-bottom:42px}header{grid-column:1/-1;min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);margin-bottom:42px}.name{font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--ink)}.name:hover{color:var(--teal)}a{color:var(--teal);text-underline-offset:3px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:5px}button{font:inherit}.langs{display:flex;gap:2px}.langs a{padding:10px;font:600 10px var(--sans);letter-spacing:.06em;text-decoration:none;color:var(--muted)}.langs a[aria-current=page]{background:var(--ink);color:var(--paper)}.langs a:hover{color:var(--teal)}.langs a[aria-current=page]:hover{color:white}.hero{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:38px;padding:55px 54px;background:var(--ink);color:var(--paper);border-radius:2px 2px 62px 2px;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#f7e7ce07 1px,transparent 1px),linear-gradient(90deg,#f7e7ce07 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent,#000)}.hero>div,.hero>.stair{position:relative}.eyebrow{margin:0 0 21px;font:600 9px/1.7 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--gold-light)}h1{margin:0;font:400 clamp(46px,4.8vw,72px)/.99 var(--display);letter-spacing:-.025em}h1 em{color:var(--gold-light);font-weight:400}.lead{margin:26px 0 0;max-width:570px;color:#d3dddf;font-size:14px;line-height:1.95}.hook{display:flex;align-items:flex-start;gap:12px;border-top:1px solid #ffffff28;margin-top:26px;padding-top:20px;font-size:11px;line-height:1.85;color:var(--paper)}.hook>span:first-child{font-size:18px}.hook a{display:block;width:fit-content;margin-top:7px;color:var(--gold-light);font-size:10px;font-weight:700;text-decoration:none}.stair{width:100%;max-width:380px;justify-self:center}.stair rect{transition:fill .2s}.stair a:hover rect{fill:#f7e7ce55}.stair text{font-family:var(--sans);pointer-events:none}.star{transform-origin:334px 34px;animation:star-breathe 5s ease-in-out infinite}@keyframes star-breathe{50%{opacity:.65}}
.counters{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--border);padding:28px 0 30px;gap:20px}.counter{display:flex;align-items:center;gap:20px;padding:0 28px;border-right:1px solid var(--border)}.counter:first-child{padding-left:0}.counter:last-child{border-right:0}.counter b{font:400 56px/1 var(--display);letter-spacing:-.03em;color:var(--teal);min-width:52px}.counter span{max-width:190px;font-size:10px;line-height:1.7;color:var(--muted)}section{grid-column:2;margin:0;padding-top:64px;scroll-margin-top:30px}#quiz{grid-column:1/-1;padding-top:48px;padding-bottom:15px}.level{display:flex;align-items:flex-start;gap:22px;margin-bottom:25px}.level-num{flex:none;min-width:45px;padding-top:5px;font:400 43px/1 var(--display);color:var(--copper);letter-spacing:-.03em}.kicker{margin:0 0 7px;font:700 8px/1.8 var(--sans);text-transform:uppercase;letter-spacing:.16em;color:var(--gold)}h2{margin:0 0 8px;font:400 clamp(32px,3.6vw,44px)/1.08 var(--display);letter-spacing:-.018em}.sub{margin:0;max-width:650px;color:var(--muted);font-size:13px;line-height:1.85}.steps-nav{grid-column:1;grid-row:5/span 13;align-self:start;position:sticky;top:27px;display:flex;flex-direction:column;gap:4px;padding:0 20px 0 0;margin-top:69px;border-right:1px solid var(--border)}.steps-nav a{font:600 10px/1.7 var(--sans);padding:9px 10px;white-space:nowrap;color:var(--muted);text-decoration:none;border-left:2px solid transparent;transition:color .2s,border-color .2s}.steps-nav a:hover,.steps-nav a.ativo{color:var(--teal);border-left-color:var(--teal);background:#36758809}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.prize{position:relative;display:flex;flex-direction:column;padding:23px 24px 21px;border:1px solid var(--border);background:var(--card);transition:border-color .2s,transform .2s;min-width:0}.prize:hover{border-color:var(--teal);transform:translateY(-2px)}.prize-top{display:flex;align-items:center;gap:8px;margin-bottom:16px}.num{font:500 10px var(--sans);color:var(--gold)}.tag{margin-left:auto;font-size:8px;line-height:1.6;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:right}.prize h3{font:700 14px/1.5 var(--sans);margin:0 0 11px;overflow-wrap:anywhere}.prize p{margin:0;font-size:14px;line-height:1.9;color:var(--muted)}.prize-link{align-self:flex-start;margin-top:auto;padding-top:20px;font-size:10px;font-weight:700;text-decoration:none;line-height:1.7}.prize-link:hover{text-decoration:underline}.prize.brilha{border-color:#b8733388;background:#f7e7ce66}.prize.largo{grid-column:1/-1;padding:27px 30px}.prize.largo h3{font-family:var(--display);font-weight:400;font-size:34px}.prize.largo p{max-width:670px}.sabia{margin-top:18px;border:1px solid var(--border);border-left:3px solid var(--teal);background:#fff9f2}.sabia summary{display:flex;align-items:center;gap:13px;cursor:pointer;list-style:none;padding:20px 22px;font:600 12px/1.6 var(--sans)}.sabia summary::-webkit-details-marker{display:none}.sabia summary::after{content:'+';margin-left:auto;font-weight:400;font-size:23px;color:var(--teal)}.sabia[open] summary::after{content:'−'}.bulb{font-size:17px;flex:none}.sabia .inside{padding:0 28px 22px 53px;max-width:760px;font-size:14px;line-height:1.95;color:var(--muted)}.sabia .inside p{margin:0 0 13px}.fonte{font-size:10px;line-height:1.85}.fonte a{font-weight:600}.quiz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.q{display:flex;flex-direction:column;padding:23px 24px;background:var(--card);border:1px solid var(--border);min-width:0}.q p{margin:0 0 24px;font:400 23px/1.25 var(--display)}.q .buttons{display:flex;gap:8px;margin-top:auto}.q button{flex:1;padding:10px 8px;font:600 9px var(--sans);letter-spacing:.04em;cursor:pointer;background:transparent;border:1px solid var(--teal);color:var(--teal)}.q button:hover,.q button.escolhida{background:var(--teal);color:#fff}.q .answer{display:none;margin-top:15px;padding-top:15px;border-top:1px solid var(--border);font-size:11px;line-height:1.9;color:var(--muted)}.q.respondida .answer{display:block}.q.respondida button{pointer-events:none;opacity:.5}.q.respondida button.escolhida{opacity:1}.certo{color:#24634e}.errado{color:#8a3d26}.millennium{padding:34px 30px;background:var(--ink);color:var(--paper);border-radius:2px 2px 38px 2px}.millennium .level-num{color:var(--gold-light)}.millennium .sub{color:#d3dddf}.millennium .fonte a{color:var(--gold-light)}.problems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:27px}.problem{display:flex;flex-direction:column;gap:12px;min-height:133px;padding:18px 17px;border:1px solid #ffffff33;background:transparent;color:var(--paper);font:400 22px/1.17 var(--display);text-decoration:none;text-align:left;cursor:pointer}.problem small{font:500 8px/1.5 var(--sans);letter-spacing:.07em;color:#c6d5d8;text-transform:uppercase}.problem .clay{margin-top:auto;padding-top:3px;font:600 8px var(--sans);letter-spacing:.03em;color:var(--gold-light)}.problem:hover{background:#ffffff0b;border-color:var(--gold-light)}.problem.solved{border-color:var(--gold-light);background:#f7e7ce12}.problem.solved small{color:var(--gold-light)}.story{display:none;padding:23px 0 0 18px;margin-top:25px;border-left:2px solid var(--gold-light);font-size:12px;line-height:1.95;color:#d3dddf}.story.aberta{display:block}.story p{margin:0 0 13px}.people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.person{padding:24px;border:1px solid var(--border);background:var(--card)}.person .who{font:700 8px/1.7 var(--sans);letter-spacing:.08em;color:var(--gold);text-transform:uppercase}.person h3{font:400 32px/1.15 var(--display);margin:12px 0}.person p{margin:0;color:var(--muted);font-size:14px;line-height:1.9}.invite{display:grid;grid-template-columns:1fr 1fr;gap:14px}.door{display:flex;flex-direction:column;padding:27px;background:var(--teal);color:#fff;text-decoration:none;transition:background .2s}.door:hover{background:#285d6d}.door .big{font:400 32px var(--display)}.door h3{font:400 30px/1.1 var(--display);margin:18px 0 13px}.door p{color:#edf2f1;font-size:12px;line-height:1.8;margin:0 0 24px}.door .go{margin-top:auto;font:600 9px var(--sans);letter-spacing:.08em;color:var(--gold-light);text-transform:uppercase}footer{grid-column:1/-1;margin-top:65px;padding-top:27px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;color:var(--muted);font:600 9px/1.8 var(--sans);letter-spacing:.06em}footer a{text-decoration:none}footer a.github{padding:12px 18px;background:var(--ink);color:var(--paper)}::selection{background:var(--gold-light);color:var(--ink)}
@media(max-width:1050px){.page{width:calc(100% - 64px);grid-template-columns:130px minmax(0,1fr);column-gap:30px}.hero{padding:40px 36px;gap:25px;grid-template-columns:1.2fr .8fr}h1{font-size:55px}.stair{min-width:0}.counter{padding:0 14px;gap:12px}.counter b{font-size:46px;min-width:40px}.quiz{grid-template-columns:repeat(2,minmax(0,1fr))}.steps-nav{padding-right:10px}.prize{padding:19px}.problem{font-size:21px}.invite{grid-template-columns:1fr}.door{padding:26px}.door h3{margin-top:12px}}
@media(max-width:760px){.page{display:block;width:calc(100% - 40px);padding-bottom:30px}header{min-height:85px;margin-bottom:24px}.hero{grid-template-columns:1fr;padding:32px 26px 26px;gap:27px;border-bottom-right-radius:42px}h1{font-size:clamp(44px,8.7vw,62px)}.eyebrow{font-size:8px;margin-bottom:20px}.lead{font-size:12px;line-height:1.9;margin-top:23px}.hook{font-size:11px}.stair{max-width:290px}.counters{gap:12px;padding:24px 0}.counter{flex-direction:column;align-items:flex-start;gap:9px;padding:0 10px}.counter b{font-size:40px}.counter span{font-size:8px;line-height:1.7}.steps-nav{position:sticky;top:0;flex-direction:row;overflow-x:auto;width:calc(100% + 40px);margin:34px -20px 0;padding:10px 20px;border-right:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f4f0ecf5;backdrop-filter:blur(12px);z-index:10;scrollbar-width:none}.steps-nav a{padding:7px 10px;flex:none;border-left:0;border-bottom:2px solid transparent;font-size:9px}.steps-nav a:hover,.steps-nav a.ativo{border-left-color:transparent;border-bottom-color:var(--teal)}section{padding-top:43px;scroll-margin-top:75px}#quiz{padding-top:37px}.level{gap:13px}.level-num{min-width:33px;font-size:35px;padding-top:7px}.kicker{font-size:7px;letter-spacing:.12em}h2{font-size:32px}.sub{font-size:11px}.grid{gap:11px}.prize h3{font-size:13px}.prize p{font-size:12px}.quiz{gap:11px}.q{padding:20px}.q p{font-size:22px}.sabia summary{padding:17px;font-size:11px;gap:10px}.sabia .inside{padding:0 20px 17px 20px;font-size:12px}.millennium{padding:26px 21px}.problem{font-size:22px;min-height:145px;padding:17px 15px}.problem small{font-size:7px}.people{gap:11px}.person{padding:19px}.person h3{font-size:29px}footer{margin-top:43px;font-size:8px;gap:12px}.langs a{font-size:9px;padding:9px}}
@media(max-width:480px){.grid,.quiz,.people{grid-template-columns:1fr}.q p{font-size:25px;line-height:1.25}.q{padding:24px}.q .buttons{margin-top:4px}.prize{padding:23px}.prize h3{font-size:15px}.prize p{font-size:13px}.prize-link{font-size:10px}.tag{font-size:8px}.prize.largo{padding:24px}.counter{padding:0 7px}.counter span{font-size:8px}.problem{font-size:21px;min-height:156px;padding:15px 12px}.person{padding:23px}.person p{font-size:13px}.door h3{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:760px){.lead,.sub,.prize p,.person p,.sabia .inside,.story,.door p{font-size:18px;line-height:1.8}.hook,.q .answer,.sabia summary{font-size:16px}.prize h3{font-size:19px}.prize-link,.fonte,.steps-nav a,.langs a,.q button{font-size:14px}.q button,.langs a{min-height:44px}.counter span,.tag,.kicker,.problem small,.problem .clay,.door .go,footer{font-size:12px}.problems{grid-template-columns:1fr}.problem{font-size:27px}.person .who{font-size:12px}}
.door .big{display:flex;align-items:center;justify-content:center;width:58px;height:58px;background:var(--paper);border-radius:3px}.door .big img{display:block;width:52px;height:52px}
