/* Revisão local: a ilustração ocupa uma área própria; navegação sempre visível. */
html,body{min-height:100%;height:100%;}
.layout{height:100vh;height:100svh;min-height:0;grid-template-columns:minmax(270px,34%) minmax(0,1fr);}
.story{min-height:0;height:100%;padding:clamp(22px,3.5vh,40px) clamp(25px,3.5vw,64px);display:grid;grid-template-rows:auto minmax(0,1fr) clamp(80px,18vh,180px) auto;gap:16px;isolation:isolate;}
.logo{width:clamp(115px,11vw,170px);max-height:16vh;object-fit:contain;object-position:left;}
.story-copy{margin:0;padding:0;align-self:center;z-index:auto;}
.story h1{font-size:clamp(29px,3.05vw,47px);line-height:1.12;letter-spacing:-1.6px;margin:18px 0;}
.story-copy p{font-size:clamp(12px,1vw,14px);line-height:1.65;margin:0;max-width:390px;}
.story .eyebrow{font-size:9px;letter-spacing:2px;}
.story-art{position:relative;min-height:0;overflow:hidden;margin-right:calc(-1 * clamp(25px,3.5vw,64px));pointer-events:none;}
.story-art .sphere{width:clamp(145px,19vw,285px);right:-55px;bottom:-68px;opacity:.88;}
.story-art .jump{width:clamp(115px,15vw,215px);right:15px;bottom:-28px;opacity:.9;}
.story-bottom{z-index:auto;position:static;font-size:10px;line-height:1.5;align-items:flex-start;gap:9px;}
.story-bottom span:first-child{font-size:19px;line-height:1.2;}
.content{min-height:0;height:100%;padding:clamp(18px,3vh,32px) clamp(24px,4vw,72px) 16px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;justify-items:center;}
.topline,.survey,.footer{max-width:830px;}
.survey{min-height:0;margin:0;padding:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:9px;}
#resume:not([hidden]){grid-row:1;}.survey:has(#resume:not([hidden])){grid-template-rows:auto auto minmax(0,1fr) auto auto;}
.progress-meta{margin-bottom:8px;font-size:11px;}
.progress-track{margin-bottom:9px;}
.section-nav{margin-bottom:0;gap:8px;flex-wrap:nowrap;justify-content:space-between;}
.nav-step{font-size:10px;margin:0;min-height:30px;}
#survey-form{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px;}
.card{min-height:0;padding:clamp(20px,2.5vh,30px) clamp(22px,2.5vw,38px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;display:flex;align-items:safe center;}
.card:focus-visible{outline:2px solid var(--violet);outline-offset:3px;}
.card-inner{width:100%;min-width:0;}
.card[data-review=true]{align-items:flex-start;}
.step-kicker{font-size:10px;margin:0 0 8px;letter-spacing:1.8px;}
h2{font-size:clamp(24px,2.1vw,30px);line-height:1.22;margin-bottom:9px;}
.intro{font-size:12px;line-height:1.6;margin-bottom:18px;max-width:620px;}
.fields{gap:14px;}.field-row{gap:16px;}
.field label,.question-label{font-size:12px;margin-bottom:6px;}
.field input,.field textarea{font-size:13px;padding:11px 13px;}
.field input{min-height:44px;}
.field textarea{min-height:clamp(105px,19vh,175px);resize:vertical;line-height:1.6;}
.required-note{margin-top:12px;}.field-foot{font-size:10px;line-height:1.5;gap:10px;}
.actions{margin:0;min-height:44px;}.primary{padding:10px 18px;min-height:44px;}
.save-area{margin:0;min-height:26px;}.save-area .text-button{padding:3px 0;}
.privacy-line{margin:0;font-size:9px;line-height:1.5;}.privacy-line br{display:none;}
.footer{padding:0;font-size:9px;}
.nps-fieldset legend{font-size:12px;line-height:1.5;margin-bottom:10px;}
.nps-option span{height:40px;}.scale-labels{margin-top:7px;}
.nps-status{margin-top:9px;padding:7px 11px;min-height:34px;font-size:10px;}.nps-status strong{font-size:16px;}
#nps-reason{margin-top:10px!important;}#nps-reason textarea{min-height:76px;height:76px;}
#nps-reason .field-foot{font-size:9px;}.review-block{padding:10px 0;}.review-block p{font-size:12px;line-height:1.6;}
.consent{font-size:11px;line-height:1.6;margin-top:13px;}.preview-badge{color:var(--teal);font-size:9px;font-weight:700;letter-spacing:.5px;}
@media(min-width:761px) and (max-height:780px){
.story{grid-template-rows:auto minmax(0,1fr) 90px auto;gap:12px;}.story h1{font-size:clamp(29px,3vw,40px);margin:13px 0;}.logo{width:130px;max-height:96px;}
.content{padding-top:18px;padding-bottom:12px;gap:10px;}.survey{gap:7px;}.card{padding:18px 24px;}h2{font-size:26px;}.intro{margin-bottom:13px;}.step-kicker{margin-bottom:7px;}.fields{gap:12px;}.field input{padding:9px 12px;}.nps-status{min-height:28px;padding:4px 9px;}
}
@media(min-width:761px) and (max-width:1050px){
.layout{grid-template-columns:31% minmax(0,1fr);}.story{padding-left:24px;padding-right:24px;}.story-art{margin-right:-24px;}.story h1{font-size:32px;}.story .eyebrow{font-size:8px;letter-spacing:1.3px;}.content{padding-left:24px;padding-right:24px;}.nav-step{font-size:9px;}.story-bottom{font-size:9px;}
}
@media(max-width:760px){
.layout{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);}
.story{height:auto;padding:14px 20px;display:grid;grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto;gap:18px;align-items:center;overflow:visible;}
.logo{width:76px;max-height:60px;}.story-copy{max-width:none;margin:0;padding:0;}.story h1{font-size:19px;letter-spacing:-.6px;line-height:1.2;margin:0;max-width:380px;}.story .eyebrow,.story-copy p,.story-art,.story-bottom{display:none;}
.content{padding:12px 16px 10px;gap:8px;grid-template-rows:auto minmax(0,1fr) auto;}
.topline{font-size:9px;}.topline .eyebrow{font-size:8px;letter-spacing:1px;}.time svg{width:12px;height:12px;}.preview-badge{font-size:8px;}
.survey{gap:7px;}.progress-meta{font-size:10px;margin-bottom:7px;}.progress-track{margin-bottom:7px;gap:5px;}
.section-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin:0;}.nav-step{font-size:8px;min-height:35px;gap:3px;flex-direction:column;}.nav-step b{width:17px;height:17px;}
.card{padding:18px 17px;border-radius:13px;}.step-kicker{font-size:9px;letter-spacing:1.4px;margin-bottom:7px;}h2{font-size:24px;letter-spacing:-.8px;}.intro{font-size:11px;line-height:1.5;margin-bottom:16px;}
.fields{gap:12px;}.field-row{grid-template-columns:1fr;gap:12px;}.field input{min-height:44px;font-size:16px;padding:9px 11px;}.field textarea{font-size:16px;min-height:120px;}.field label{font-size:11px;}.field label span{font-size:9px;}.required-note{font-size:9px;margin-top:10px;}
.field-foot{font-size:9px;}.nps-options{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;}.nps-option span{height:39px;}.nps-fieldset legend{font-size:11px;line-height:1.4;}.nps-status{font-size:9px;min-height:28px;padding:5px 8px;}.scale-labels{font-size:8px;}
#nps-reason textarea{height:76px;min-height:76px;}#nps-reason .field-foot span:first-child{display:none;}.nps-status strong{font-size:15px;}
.actions{gap:8px;}.primary{min-height:44px;font-size:11px;padding:10px 15px;gap:14px;}.save-area{min-height:23px;}.save-area .text-button{max-width:none;font-size:9px;}.save-status{font-size:9px;max-width:130px;}.privacy-line{font-size:8px;line-height:1.45;}.footer{font-size:8px;gap:10px;}.footer span{display:none;}
}
@media(max-height:560px){html,body{height:auto;}.layout{height:auto;min-height:100svh;}.content{min-height:560px;}.story{min-height:560px;}.card{overflow:visible;}@media(max-width:760px){.story{min-height:0;}}}
@media print{html,body,.layout,.content,.survey,#survey-form{height:auto;display:block;}.card{overflow:visible;}}

/* Três etapas e ornamentos separados da assinatura. */
.story-art .jump{display:none;}
@media(max-width:760px){.section-nav{grid-template-columns:repeat(3,minmax(0,1fr));}.nav-step{flex-direction:row;justify-content:center;min-height:27px;font-size:9px;gap:6px;}}

/* O círculo ocupa sua própria área, separado dos textos e da assinatura. */
.survey{height:100%;max-height:760px;}
.story-art{margin:0;display:flex;justify-content:center;align-items:center;}
.story-art .sphere{display:block;position:static;width:auto;max-width:100%;height:100%;object-fit:contain;opacity:.9;}
.story-art .jump{display:none;}
@media(max-width:760px){.story-art{display:none;}}

/* Revisão enxuta; relatos extensos continuam acessíveis na rolagem interna. */
.card[data-review=true] .step-kicker,.card[data-review=true] .intro{display:none;}
.card[data-review=true] h2{font-size:25px;margin-bottom:10px;}
.card[data-review=true] .review-block{padding:7px 0;}
.card[data-review=true] .review-heading{margin-bottom:3px;}
.card[data-review=true] .review-heading button{padding:3px;}
.card[data-review=true] .review-block p{font-size:11px;line-height:1.5;}
.card[data-review=true] .consent{margin-top:10px;font-size:10px;line-height:1.5;}

/* Também cabe na área útil de notebook com barras do navegador abertas. */
@media(min-width:761px) and (max-height:650px){
.card{padding:15px 22px;}.card:not([data-stage="2"]) .intro{display:none;}.card[data-stage="2"] textarea{min-height:100px;height:100px;}.step-kicker{margin-bottom:5px;}.fields{gap:10px;}.field-row{gap:14px;}.field input{min-height:40px;padding:8px 11px;}.required-note{margin-top:8px;}
.nps-status{display:none;}#nps-reason{margin-top:7px!important;}#nps-reason textarea{height:60px;min-height:60px;}#nps-reason .field-foot{display:none;}
}

@media(min-width:761px){.story{grid-template-rows:auto minmax(0,1fr) clamp(110px,23vh,230px) auto;}.story-art{justify-content:flex-end;}}
