@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght,SOFT,WONK@9..144,600,10,1;9..144,700,10,1&display=swap');:root{--ink:#17342c;--forest:#173b31;--paper:#f7f4e9;--cream:#fffdf6;--ochre:#d6a73d;--line:#d9dfd4;--muted:#63756b}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.55 'DM Sans',system-ui,sans-serif}button{font:inherit;cursor:pointer}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Fraunces',Georgia,serif;line-height:1.1}h1{font-size:clamp(2.8rem,6vw,5.8rem);letter-spacing:-.045em}h1 em{font-style:normal;color:#b37f21}h2{font-size:clamp(2rem,3vw,3rem)}.top{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);background:#fffdf6;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:18px;font-weight:700;letter-spacing:.12em;line-height:1}.brand span{color:#aa792b}.brand small{display:block;font-size:10px;letter-spacing:.35em;margin-top:5px;color:var(--muted)}.topnote{font-size:14px;color:var(--muted)}.intro{min-height:610px;background:linear-gradient(90deg,rgba(247,244,233,.98) 0%,rgba(247,244,233,.95) 29%,rgba(247,244,233,.25) 61%,rgba(247,244,233,0) 100%),url('assets/park-fauve.png') center/cover;display:flex;align-items:center;padding:70px max(5vw,24px)}.intro-inner{max-width:660px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.19em;color:#a47627;margin-bottom:20px}.intro-inner>p:not(.eyebrow){font-size:19px;max-width:560px}.intro-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:32px}.intro-actions>span{font-size:14px;color:var(--muted)}.primary,.secondary{border-radius:9px;min-height:52px;padding:12px 21px;font-weight:700;border:1px solid var(--forest)}.primary{color:white;background:var(--forest)}.primary:hover{background:#285646}.primary:disabled{opacity:.45;cursor:not-allowed}.secondary{color:var(--forest);background:transparent}.secondary:hover{background:#e9eee4}.app-shell{max-width:1300px;margin:35px auto 80px;padding:0 24px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px}.app-shell[hidden],section[hidden],div[hidden]{display:none!important}.sidebar{background:#e9eee5;border:1px solid var(--line);border-radius:16px;padding:26px;align-self:start;position:sticky;top:24px}.side-head strong{display:block;font-size:22px;margin-bottom:18px}.side-head .eyebrow{margin-bottom:5px}.bar{height:7px;background:#d3ddd2;border-radius:10px;overflow:hidden}.bar div{height:100%;width:0;background:var(--ochre);transition:width .2s}.themes{margin:25px 0}.theme-row{display:flex;align-items:center;gap:13px;width:100%;padding:12px 10px;border:0;background:transparent;text-align:left;border-radius:9px;color:var(--ink)}.theme-row.active{background:#fffdf6}.theme-row>span{font-size:24px;width:26px;color:#b08029}.theme-row b{font-weight:600;flex:1}.theme-row small{font-size:13px;color:var(--muted)}.linkbutton{background:none;border:0;color:var(--forest);text-decoration:underline;font-weight:700;padding:0}.side-foot{border-top:1px solid #cbd6c9;margin-top:25px;padding-top:20px;font-size:13px;color:var(--muted)}.content{padding:10px 0;max-width:760px;width:100%}.question-top{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700;letter-spacing:.08em;color:var(--muted)}.pill{border-radius:99px;padding:7px 14px;color:var(--forest);background:#e9eee5;letter-spacing:0}.illustration{height:155px;margin:25px 0 30px;border-radius:15px;background:linear-gradient(110deg,#254b3b,#173b31);color:#f5e8c4;display:flex;align-items:center;gap:20px;padding:22px 32px;position:relative;overflow:hidden}.illustration:after{content:'';position:absolute;right:-50px;top:-95px;border:2px solid #ffffff25;border-radius:50%;width:320px;height:320px;box-shadow:0 0 0 35px #ffffff0b,0 0 0 75px #ffffff08}.scene-label{position:absolute;top:15px;left:32px;font-size:11px;letter-spacing:.18em;opacity:.7}.scene-glyph{font-size:65px;line-height:1;color:#d9ad58;margin-top:22px}.illustration #sceneText{font-family:Georgia,serif;font-size:23px;max-width:470px;margin-top:20px}.content h2{font-size:clamp(1.7rem,3vw,2.6rem);margin-bottom:12px}.prompt{color:var(--muted);margin-bottom:18px}.options{display:grid;gap:10px}.option{width:100%;display:flex;align-items:center;gap:17px;text-align:left;background:var(--cream);border:1px solid #d8ded3;border-radius:11px;padding:15px 18px;min-height:64px;color:var(--ink)}.option:hover{border-color:#759b80}.option.selected{border:2px solid var(--forest);background:#eaf0e6;padding:14px 17px}.letter{display:grid;place-items:center;flex:0 0 33px;width:33px;height:33px;border-radius:7px;background:#e9eee5;font-weight:700}.option.selected .letter{background:var(--forest);color:white}.mark{margin-left:auto;color:var(--forest);font-weight:700}.exam-nav{display:flex;justify-content:space-between;gap:15px;margin-top:28px}.skip{font-size:13px;color:var(--muted);margin-top:18px}.knowledge,.sources{max-width:1252px;padding:70px 24px;margin:auto}.knowledge{display:flex;justify-content:space-between;gap:60px;border-top:1px solid var(--line)}.knowledge>div:first-child{max-width:690px}.knowledge p:not(.eyebrow){font-size:18px}.knowledge-cards{display:flex;gap:28px;align-items:center}.knowledge-cards div{text-align:center}.knowledge-cards strong{display:block;font:700 40px Georgia,serif;color:#b38432}.knowledge-cards span{font-size:14px;color:var(--muted)}.sources{padding-top:30px;padding-bottom:80px;border-top:1px solid var(--line)}.sources h2{font-size:2rem}.sources p{max-width:780px}.sources ul{padding-left:20px;line-height:2}footer{padding:30px max(5vw,24px);background:var(--forest);color:#e0e8dc;font-size:13px}.results{max-width:950px;margin:55px auto 90px;padding:0 24px}.result-hero{background:var(--forest);color:white;border-radius:18px;padding:55px;position:relative;overflow:hidden}.result-hero:after{content:'◌';font-size:350px;position:absolute;right:-30px;top:-140px;color:#ffffff0c;pointer-events:none}.result-hero .eyebrow{color:#dbb66b}.score{font:700 110px/1 Georgia,serif;margin-bottom:15px}.score span{font:400 28px 'DM Sans',sans-serif;color:#c0d1c6}.result-hero h2{margin-bottom:12px}.result-hero p{max-width:580px}.result-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.result-actions .primary{background:#e4b653;color:#173b31;border-color:#e4b653}.result-actions .secondary{color:white;border-color:#aec4b4}.review-list{margin-top:35px;display:grid;gap:12px}.review-item{padding:22px 25px;border-radius:11px;background:white;border-left:5px solid #c66e55}.review-item.right{border-left-color:#5a9a70}.review-item span{font-size:13px;color:var(--muted);font-weight:700}.review-item h3{font-size:18px;margin:8px 0}.review-item p{margin:5px 0}.overlay{position:fixed;inset:0;background:#112b24b8;z-index:10;display:grid;place-items:center;padding:20px}.modal{width:min(680px,100%);max-height:90vh;overflow:auto;background:var(--paper);padding:30px;border-radius:16px}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal-head h2{margin:0}.modal-head button{border:0;background:none;font-size:25px}.grid-questions{display:grid;grid-template-columns:repeat(10,1fr);gap:8px;margin:24px 0}.grid-questions button{aspect-ratio:1;border:1px solid var(--line);background:white;border-radius:7px;font-weight:700}.grid-questions button.answered{background:#d5e4d8;border-color:#91ae9a}.grid-questions button.current{outline:2px solid var(--forest)}.modal-note{font-size:13px;color:var(--muted);margin-top:12px}@media(max-width:800px){.intro{min-height:600px;background:linear-gradient(180deg,#f7f4e9 0%,#f7f4e9e8 42%,#f7f4e933 100%),url('assets/park-fauve.png') 63% center/cover;align-items:flex-start}.app-shell{display:block;margin-top:18px}.sidebar{position:static;margin-bottom:24px;padding:18px}.themes{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin:12px 0}.theme-row{font-size:14px;padding:7px}.side-foot{display:none}.content{max-width:none}.knowledge{display:block}.knowledge-cards{justify-content:flex-start}.illustration{margin-top:20px}}@media(max-width:520px){.topnote{display:none}.intro{padding-top:55px}.intro-inner>p:not(.eyebrow){font-size:17px}.app-shell{padding:0 16px}.themes{grid-template-columns:1fr 1fr}.theme-row{gap:5px}.theme-row>span{font-size:18px;width:20px}.theme-row small{display:none}.illustration{height:125px;padding:20px}.illustration #sceneText{font-size:18px}.scene-glyph{font-size:42px}.content h2{font-size:1.7rem}.option{font-size:15px}.exam-nav .primary,.exam-nav .secondary{padding:10px 12px;font-size:14px}.knowledge-cards{gap:18px}.knowledge-cards strong{font-size:32px}.result-hero{padding:32px 24px}.score{font-size:80px}.grid-questions{grid-template-columns:repeat(5,1fr)}}
.candidate-form{max-width:550px;margin-top:28px}.candidate-form label{display:block;font-weight:700;font-size:14px;margin:10px 0}.candidate-form input{display:block;width:100%;height:52px;margin-top:6px;border:1px solid #9eada1;border-radius:8px;background:#fffdf8;padding:10px 14px;font:inherit;color:var(--ink)}.candidate-form input:focus{outline:3px solid #d6a73d88;border-color:var(--forest)}.candidate-form .intro-actions{margin-top:20px}.candidate-form>small{display:block;margin-top:12px;color:var(--muted);font-size:13px}.certificate-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:45px 0 16px}.certificate-actions h2{font-size:2rem;margin:0}.certificate-actions>div{display:flex;gap:8px;flex-wrap:wrap}.certificate-actions button{min-height:42px;font-size:14px}.certificate{position:relative;overflow:hidden;background:#faf8ee;border:16px solid #1a3e32;outline:2px solid #c59a4a;outline-offset:-25px;text-align:center;padding:45px 45px 25px;min-height:555px;box-shadow:0 16px 45px #183b3020}.cert-ring{border:2px solid #c49a4a;color:#ac7b27;border-radius:100%;width:60px;height:60px;line-height:54px;margin:0 auto 15px;font-size:30px}.cert-logo{font-weight:700;letter-spacing:.15em;font-size:16px}.cert-logo span{color:#a9792c}.cert-logo small{display:block;font-size:9px;letter-spacing:.4em}.cert-kicker{font-size:12px;letter-spacing:.22em;color:#ab7b2b;font-weight:700;margin:23px 0 8px}.certificate h2{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:16px}.cert-caption{margin:5px 0;color:#607368;font-size:14px}.cert-name,.cert-dog{display:block;font-family:Georgia,serif;color:#173b31;overflow-wrap:anywhere}.cert-name{font-size:clamp(1.7rem,4vw,2.5rem)}.cert-dog{font-size:1.7rem}.cert-bottom{border-top:1px solid #bd9858;margin:28px 0 15px;padding-top:16px;display:flex;justify-content:space-around;gap:14px}.cert-bottom div{min-width:0}.cert-bottom small{display:block;color:#ae7c2c;font-weight:700;font-size:10px;letter-spacing:.12em}.cert-bottom b{font-size:13px}.cert-disclaimer,.cert-privacy{font-size:12px;color:#617168}.cert-disclaimer{margin:0}.cert-privacy{margin-top:12px}@media(max-width:640px){.certificate-actions{display:block}.certificate-actions>div{margin-top:12px}.certificate{border-width:10px;outline-offset:-17px;padding:30px 14px 20px;min-height:0}.cert-bottom{gap:6px}.cert-bottom b{font-size:10px}.cert-bottom small{font-size:8px}}@media print{body{background:white}.top,.intro,.app-shell,.knowledge,.sources,footer,.result-hero,.certificate-actions,.cert-privacy,.review-list{display:none!important}.results{padding:0;margin:0;max-width:none}.certificate{width:100%;height:100vh;box-shadow:none;page-break-inside:avoid;border-width:12px;padding:6vh 4vw}.certificate h2{font-size:36pt}@page{size:A4 landscape;margin:0}}
.share-modal{max-width:580px}.share-modal>p{margin:10px 0 18px}.share-preview{background:#e4eadf;border-radius:12px;min-height:220px;display:grid;place-items:center;overflow:hidden}.share-preview img{width:min(100%,290px);height:auto;display:block;box-shadow:0 8px 24px #173b3130}.share-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.share-buttons button{font-size:14px;min-height:46px}.share-help{font-size:13px;color:var(--muted)}@media(max-width:580px){.share-buttons{display:grid}.share-buttons button{width:100%}}
.candidate-form .consent-row{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-weight:500;line-height:1.4;margin-top:16px}.consent-row input{width:20px;height:20px;margin:2px 0 0;flex:0 0 20px;accent-color:var(--forest)}.consent-row span{font-size:14px}.honey{position:absolute!important;left:-9999px;opacity:0}.form-status{color:#8b3325;font-size:14px;font-weight:600;margin:8px 0;min-height:0}.form-status:empty{display:none}.candidate-form>small a{text-decoration:underline}
.privacy-page{max-width:850px;margin:60px auto 100px;padding:0 24px}.privacy-page h1{font-size:clamp(2.5rem,5vw,4rem);margin:28px 0}.privacy-page h2{font-size:1.7rem;margin:38px 0 10px}.privacy-page p{font-size:18px}
.counter{display:inline-block;padding:8px 13px;border-radius:8px;background:#fffdf6d9;color:var(--forest);font-weight:700;font-size:14px!important}.recovery-box{padding:18px;margin:14px 0;background:#fffdf6;border:1px solid var(--line);border-radius:10px}.recovery-box p{font-size:14px;color:#8b3325}.recovery-box button{min-height:42px}.ranking-line{color:#f0d596;font-weight:700}.recovery-note{background:#e8eee5;padding:16px 20px;border-radius:10px;margin:24px 0}.history-card{padding:18px 0;border-bottom:1px solid var(--line)}.history-card strong{font-size:20px}.history-card p{margin:5px 0 12px}.history-card button{min-height:40px}
