.feier-page{padding:70px 0 100px}
.feier-intro{max-width:840px;margin-bottom:50px}
.feier-intro h1{max-width:14ch;font-size:clamp(42px,5vw,68px)}
.feier-intro>p:last-child{max-width:660px;color:var(--muted);font-size:17px;line-height:1.75}
.feier-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.65fr);gap:65px;align-items:start}
.feier-check{min-width:0;background:#eef1e8;border:1px solid var(--line);padding:clamp(22px,4vw,48px);border-radius:4px}
.feier-progress{font-size:12px;font-weight:700;color:#48674f;margin-bottom:34px}
.feier-progress-track{height:5px;margin-top:12px;background:#d5dfd2;border-radius:5px;overflow:hidden}
.feier-progress-track span{display:block;height:100%;background:#386449;transition:width .25s ease}
.feier-step{border:0;margin:0;padding:0;min-width:0}
.feier-step[hidden],.feier-result[hidden],.feier-form[hidden],.feier-progress[hidden],.feier-error[hidden],.feier-back[hidden]{display:none}
.feier-step legend{font:400 clamp(27px,3vw,37px)/1.18 Georgia,'Times New Roman',serif;letter-spacing:-.04em;padding:0}
.feier-step-copy{color:var(--muted);margin:12px 0 28px}
.feier-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.feier-options label{display:block;cursor:pointer;position:relative}
.feier-options input{position:absolute;left:15px;top:20px;width:18px;height:18px;accent-color:#28523e}
.feier-options span{display:block;min-height:102px;background:#faf9f4;border:1px solid #cad8c9;border-radius:4px;padding:19px 14px 16px 46px;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.feier-options input:checked+span{background:#deeadc;border-color:#28523e;box-shadow:inset 0 0 0 1px #28523e}
.feier-options input:focus-visible+span{outline:3px solid #72945d;outline-offset:3px}
.feier-options strong{display:block;font-size:15px;line-height:1.3}
.feier-options small{display:block;color:var(--muted);line-height:1.4;margin-top:5px}
.feier-input-label,.feier-details label{display:block;font-size:13px;font-weight:700;margin:0 0 8px}
.feier-details label{margin-top:18px}.feier-details label span{font-weight:400;color:var(--muted)}
.feier-step input[type=number],.feier-details input{width:100%;max-width:480px;border:1px solid #b8cbb9;border-radius:4px;padding:14px;background:#fff;color:var(--ink);font:inherit}
.feier-step input:focus-visible{outline:3px solid #72945d;outline-offset:2px}
.feier-error{color:#9c352b;font-weight:700;font-size:13px}
.feier-actions{display:flex;justify-content:space-between;gap:12px;margin-top:34px}.feier-actions [data-next]{margin-left:auto}
.feier-aside{border-top:2px solid #74916d;padding-top:30px}.feier-aside h2{font-size:clamp(28px,2.7vw,39px)}.feier-aside p{color:var(--muted);line-height:1.75}.feier-aside .eyebrow{color:#597451}.feier-aside .feier-privacy{margin-top:36px;padding-top:22px;border-top:1px solid var(--line);font-size:12px}
.feier-result{outline:none}.feier-result h2{font-size:clamp(30px,3.5vw,48px);margin:20px 0}.feier-result-copy{font:400 21px/1.55 Georgia,serif;color:#385446}
.feier-color{position:relative;width:108px;height:96px;background:var(--feier-result-color,#77a780);border-radius:52% 46% 47% 51%;transform:rotate(-9deg);box-shadow:inset -12px -10px 0 #203e3322;margin:18px 0 14px}
.feier-color::before{content:'';position:absolute;width:45px;height:45px;right:-17px;top:13px;background:inherit;border-radius:50%}
.feier-color-eye{position:absolute;z-index:1;width:14px;height:14px;right:-8px;top:25px;background:#fff;border-radius:50%}.feier-color-eye::after{content:'';position:absolute;top:4px;right:2px;width:6px;height:6px;background:#203e33;border-radius:50%}
.feier-color-tail{position:absolute;left:-34px;bottom:-17px;width:54px;height:54px;border:12px solid var(--feier-result-color);border-radius:50%;border-right-color:transparent;transform:rotate(15deg)}
.feier-recommendation{margin-top:35px;padding:26px;background:#faf9f4;border-left:4px solid #517754}.feier-recommendation .eyebrow{margin-bottom:10px}.feier-recommendation h3{margin-bottom:10px}.feier-recommendation p{max-width:550px;line-height:1.6}.feier-recommendation a{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.feier-tips{padding:26px 0 0}.feier-tips h3{font-size:25px}.feier-tips p{line-height:1.7}.feier-result-note{font-size:12px;color:var(--muted)}.feier-result-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
@media(max-width:850px){.feier-layout{grid-template-columns:1fr;gap:45px}}
@media(max-width:600px){.feier-page{padding:48px 0 72px}.feier-intro{margin-bottom:32px}.feier-options{grid-template-columns:1fr}.feier-options span{min-height:80px}.feier-check{padding:22px}.feier-actions .button,.feier-result-actions .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){.feier-progress-track span,.feier-options span{transition:none}}
.feier-share{margin-top:45px;padding-top:32px;border-top:1px solid #cad8c9}.feier-share h3{font-size:27px}.feier-share>p{max-width:640px;line-height:1.7}.feier-share-status{color:#28523e;font-weight:700}.feier-share-panel{margin-top:24px}.feier-share-panel[hidden],.feier-share [hidden]{display:none}.feier-share-panel img{display:block;width:100%;height:auto;max-width:600px;border:1px solid var(--line);margin-bottom:20px}.feier-share-panel label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.feier-share-panel input{display:block;width:100%;padding:12px;border:1px solid #b8cbb9;border-radius:4px;background:#fff;color:var(--ink);font:inherit}.feier-share-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 22px}.feier-share-actions .button{font-size:12px}
.feier-shared{max-width:980px}.feier-shared h1{max-width:20ch;font-size:clamp(38px,5vw,66px)}.feier-shared-lead{max-width:740px;font:400 clamp(20px,2.4vw,29px)/1.5 Georgia,serif;color:#385446}.feier-shared-card{margin:35px 0 45px}.feier-shared-card img{display:block;width:100%;height:auto;border:1px solid var(--line)}.feier-shared-card figcaption{margin-top:10px;font-size:13px}.feier-shared-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.feier-shared-grid .feier-recommendation{margin:0}.feier-shared-grid .feier-tips{background:#eef1e8;padding:26px}.feier-shared-grid h2{font-size:28px}.feier-shared-actions{display:flex;flex-wrap:wrap;gap:12px;margin:35px 0 24px}
@media(max-width:700px){.feier-shared-grid{grid-template-columns:1fr}.feier-share-actions .button{width:100%}}
