:root{--navy:#031b33;--navy2:#082f54;--blue:#006be7;--gold:#f3ae25;--gold2:#ffe08a;--ink:#08204a;--muted:#41618b;--pale:#f3f8fd;--line:#d6e5f3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:15px/1.38 Arial,Helvetica,sans-serif}button,input,select{font:inherit}button,a{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #68a6ff;outline-offset:2px}.wrap{width:min(1220px,calc(100% - 40px));margin-inline:auto}.sitehead{background:#02182c;color:white}.headrow{height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px}.logo{width:185px;height:48px;object-fit:contain}.headrow nav{display:flex;align-items:center;gap:24px}.headrow a{text-decoration:none;color:#f6faff;font-size:12px}.headrow a.selected{color:#ffd366;border-bottom:2px solid var(--gold);padding-bottom:8px}.goldbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(110deg,#ffdc74,#ffae19);border:0;border-radius:8px;padding:12px 22px;font-weight:800;color:#06182c;text-decoration:none;box-shadow:0 3px 12px #c98c2220}.headrow .goldbtn{color:#051629}.hero{background:radial-gradient(circle at 72% 20%,#0b416c 0%,#041e36 42%,#00162b 85%);color:#fff}.herogrid{min-height:295px;display:grid;grid-template-columns:1.28fr .85fr .55fr;gap:14px;position:relative}.herocopy{padding:23px 0 10px;z-index:2}.eyebrow{display:block;font-size:12px;color:#ffb72f;font-weight:900;letter-spacing:.055em}.pill{background:#ffbd37;color:#10284b;border-radius:6px;display:inline-block;padding:3px 10px}.hero h1{font:700 clamp(29px,3.3vw,44px)/.98 Georgia,serif;letter-spacing:-.03em;margin:10px 0}.hero h1 em{font-style:normal;color:#ffce62}.hero p{font-size:16px;max-width:535px;margin:6px 0 12px}.herostats{display:flex;gap:6px;margin-top:12px}.herostats>div{border:1px solid #235479;border-radius:8px;background:#06365b;min-width:105px;padding:7px 11px;display:flex;align-items:center;gap:8px}.herostats strong{color:#ffbe33;font-size:23px}.herostats span{font-size:11px;line-height:1.1}.herofigure{position:relative;min-width:0;display:flex;align-items:end;justify-content:center;overflow:hidden}.herofigure img{max-width:100%;height:290px;object-fit:contain;object-position:bottom;filter:drop-shadow(0 6px 8px #0004)}.scribble{position:absolute;top:22px;left:0;font:italic 18px Georgia,serif;text-align:center;transform:rotate(-8deg);z-index:1}.heroaside{padding:16px 0;display:flex;flex-direction:column;gap:10px}.herolist{background:#072a4a;border:1px solid #315b7e;border-radius:10px;padding:13px;display:grid;gap:9px;font-size:12px}.herolist b{color:#ffcf76}.heronote{background:#ffebbd;color:#061c38;border-radius:8px;padding:12px;font-weight:700;font-size:12px}.timeline{position:relative;display:grid;grid-template-columns:310px 1fr;gap:20px;padding:16px 18px 24px;border:1px solid var(--line);border-radius:12px;margin-top:3px;margin-bottom:4px;background:linear-gradient(90deg,#fff,#f8fbff)}h2{font-family:Georgia,serif;line-height:1.04;letter-spacing:-.025em}.timeline h2{font-size:26px;margin:3px 0}.timeline p{margin:5px 0;font-size:13px;color:var(--muted)}.steps{display:flex;align-items:center;justify-content:space-around;gap:10px}.step{min-width:0;text-align:center;display:grid;justify-items:center;gap:2px;position:relative}.step img{height:58px;width:68px;object-fit:contain}.step strong{font-size:13px}.step small{font-size:11px;color:var(--muted)}.number{position:absolute;left:-4px;top:16px;background:var(--gold);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;color:#fff;font-weight:800}.number.blue{background:var(--blue)}.arrow{color:#5297ea;font-size:26px}.timelinelegal{position:absolute;bottom:3px;left:18px;font-size:10px!important;color:#6c83a3!important}.calculator{background:linear-gradient(115deg,#031c34,#07395e);border-radius:13px;color:#fff;padding:17px 20px 20px}.sectionhead,.flex{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.sectionhead{justify-content:space-between;align-items:start}.sectionhead h2{font-size:28px;margin:2px 0}.sectionhead p{margin:0 0 10px}.targetlabel{width:240px;font-size:12px;font-weight:bold}.targetlabel select{margin:3px 0 0}.targetlabel small{display:block;font-size:10px;font-weight:400;color:#c4dcf7}.calcgrid{display:grid;grid-template-columns:275px minmax(0,1fr) 270px;gap:12px}.presets,.result{background:#082e51;border:1px solid #24547d;border-radius:10px;padding:14px}.presets h3,.result h3,.fields h3{margin:0 0 10px;font-size:15px}.presets button{display:block;width:100%;text-align:left;margin-bottom:6px;background:#0c3a64;border:1px solid #37678e;color:#fff;border-radius:6px;padding:10px 12px;font-size:12px;font-weight:700}.presets button.active{background:linear-gradient(110deg,#ffe08c,#f4a51b);color:#061a35}.fields{background:#fff;border-radius:10px;padding:14px 16px;color:#092650}.fields h3:not(:first-child){margin-top:18px}.link{border:0;background:none;color:#006ae6;padding:3px 5px;font-size:11px}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.days button{border:1px solid #c5dbf1;border-radius:5px;background:#edf5ff;color:#163a65;min-height:38px;font-size:12px}.days button.on{background:#0870ea;color:#fff;border-color:#0870ea}.fieldgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px}.fieldgrid label,.targetlabel{display:block}.fieldgrid label{font-size:12px;font-weight:bold}.fieldgrid input,select,input[type=number]{width:100%;min-height:35px;border:1px solid #c5d8eb;border-radius:6px;padding:5px 10px;background:#fff;color:#163457}.fieldgrid input{margin-top:3px}.check{display:flex;align-items:center;gap:6px;font-size:12px;margin-top:12px}.check input{accent-color:#0876ef}.hint{font-size:11px;color:#6682a5;margin:6px 0}.result{text-align:center;background:#052442}.ring,.smallring{--pct:0%;--ring:#137cf4;border-radius:50%;background:conic-gradient(var(--ring) var(--pct),#244765 0);display:grid;place-items:center}.ring{width:164px;height:164px;margin:10px auto 14px;padding:17px}.ring>div{background:#052442;border-radius:50%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.ring strong{font-size:33px}.ring small{font-size:11px}.status{border:1px solid #e8a727;color:#ffcd67;border-radius:6px;padding:7px;font-weight:800;font-size:13px}.meter{height:8px;background:#24486a;border-radius:10px;overflow:hidden;margin:9px 0}.meter>div{height:100%;background:#f5b533;width:0;transition:width .2s}.result p{font-size:12px;margin:4px}.result>small{font-size:10px;color:#c6d8eb}.preview{background:#f6faff;border:1px solid #d7e6f5;border-radius:12px;margin-top:7px;padding:13px 17px}.preview h2{font-size:23px;margin:0 0 10px}.preview .small{margin:0}.previewgrid{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:12px;align-items:start}.tablewrap{min-width:0}.tablewrap table{width:100%;border-collapse:separate;border-spacing:2px;table-layout:fixed;font-size:12px}.tablewrap th{background:#dcecfb;color:#073067;padding:5px}.tablewrap td{background:#fff;padding:2px;text-align:center;height:34px}.tablewrap th:first-child{width:13%}.tablewrap th:last-child{width:10%}.tablewrap td input{width:100%;min-width:0;height:30px;padding:2px 4px;border:1px solid #c4d9ed;border-radius:5px;color:#193e69;font-size:12px}.tablewrap td.total{font-weight:800}.tablewrap td.off{color:#5079a7}.weeksummary{background:#e9f4ff;border:1px solid #d0e3f5;border-radius:10px;padding:12px}.weeksummary h3{margin:0 0 6px;font-size:17px}.summarytop{display:flex;align-items:center;justify-content:space-between}.summarytop strong{font-size:32px;display:block;line-height:1}.summarytop small{display:block;color:#416b9d}.smallring{width:80px;height:80px;padding:12px}.smallring b{display:grid;place-items:center;width:100%;height:100%;background:#e9f4ff;border-radius:50%;font-size:14px}.miniinfo{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.miniinfo>div{background:#fff;border-radius:6px;padding:6px 2px;text-align:center}.miniinfo strong{display:block;font-size:18px}.miniinfo small{font-size:10px}.legal{background:#fff0d4;padding:8px;border-radius:7px;font-size:11px;margin-bottom:0}.alternatives{margin-top:8px;border:1px solid #e0eafa;border-radius:11px;background:#f8fbff;padding:12px}.alternatives h2{font:700 18px Arial;margin:0 0 10px}.alternativegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.alternativegrid article{border:1px solid #e0eafa;border-radius:8px;background:white;display:flex;align-items:center;gap:8px;padding:10px;min-height:95px}.alternativegrid img{width:58px;height:58px;object-fit:contain;flex:none}.alternativegrid h3{font-size:13px;margin:0 0 4px}.alternativegrid p{font-size:11px;color:#42608a;margin:0}.alternativeinfo strong{font-size:24px;color:#1376e8}.bottom{display:grid;grid-template-columns:1.35fr 1fr 1fr .9fr;gap:10px;margin-top:8px;margin-bottom:8px}.bottom article{min-height:165px;border-radius:10px;padding:12px}.costcard{background:linear-gradient(125deg,#061c36,#0b3d68);color:white;display:flex;align-items:center;gap:10px;overflow:hidden}.costcard img{width:110px;max-height:140px;object-fit:contain}.costcard h2{font-size:19px;margin:4px 0}.costcard p{font-size:11px;margin:5px 0 8px}.costcard .goldbtn{font-size:12px;padding:9px 12px}.servicecard{background:#eef6ff}.servicecard h3{font-size:14px;margin:0 0 8px}.servicecard p{font-size:11px;color:#48688e}.servicecard button{display:block;width:100%;padding:7px;border:1px solid #bcd7f2;border-radius:5px;background:white;color:#08386c;font-size:12px;margin:6px 0}.servicecard button.share{background:#e5f1ff}.servicecard.glossary{background:#fff5e8}.glossary div{display:flex;flex-wrap:wrap;gap:4px}.glossary span{border:1px solid #e5d9c9;background:white;border-radius:4px;padding:4px;font-size:10px}.contact{background:#fff0ee}.contact h3{color:#ba3238}.contact .goldbtn{font-size:12px;padding:9px}.footer{background:#02182c;color:#fff;padding:22px 0 10px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr 1.6fr;gap:24px}.footerbrand{display:flex;gap:12px;align-items:center}.footerbrand img{width:145px;object-fit:contain}.footerbrand p{font-size:12px}.footlinks{display:grid;gap:5px;align-content:start}.footlinks a{color:#f3f7ff;text-decoration:none;font-size:12px}.footcontact p{font-size:12px;margin:0 0 12px}.footbottom{display:flex;justify-content:space-between;border-top:1px solid #31506c;margin-top:14px;padding-top:12px;font-size:10px;color:#b7cbe0}@media(max-width:1020px){.headrow nav{gap:9px}.calcgrid{grid-template-columns:220px minmax(0,1fr)}.result{grid-column:1/-1}.ring{width:140px;height:140px}.herogrid{grid-template-columns:1.2fr .8fr}.heroaside{display:none}.alternativegrid{grid-template-columns:repeat(2,1fr)}.bottom{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:1fr}.timelinelegal{position:static;grid-column:1/-1}.previewgrid{grid-template-columns:1fr 230px}}@media(max-width:720px){.wrap{width:min(100% - 20px,550px)}.headrow{height:auto;min-height:62px;flex-wrap:wrap;padding:6px 0}.headrow nav{order:3;width:100%;overflow-x:auto;white-space:nowrap;padding-bottom:6px}.headrow .whatsapp{padding:8px;font-size:11px}.logo{width:135px}.herogrid{grid-template-columns:1fr;min-height:0}.herocopy{padding-bottom:0}.hero h1{font-size:33px}.herofigure{height:225px}.herofigure img{height:220px}.scribble{left:10%}.herostats{flex-wrap:wrap}.herostats>div{flex:1;min-width:40%}.timeline{padding:12px}.steps{gap:2px}.step img{height:45px;width:46px}.step strong{font-size:10px}.step small{font-size:9px}.number{width:21px;height:21px;font-size:11px}.arrow{font-size:15px}.sectionhead{flex-wrap:wrap}.targetlabel{width:100%}.calcgrid{grid-template-columns:1fr}.presets{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.presets h3{grid-column:1/-1}.presets button{margin:0}.result{grid-column:auto}.previewgrid{grid-template-columns:1fr}.tablewrap{overflow-x:auto}.tablewrap table{min-width:560px}.preview .flex{align-items:start}.preview h2{font-size:20px}.weeksummary{display:block}.alternativegrid{grid-template-columns:1fr}.bottom{grid-template-columns:1fr}.footergrid{grid-template-columns:1fr 1fr}.footerbrand{grid-column:1/-1}.footbottom{gap:8px;flex-direction:column}.fieldgrid{gap:7px}.fields{padding:12px}.days{gap:3px}.days button{font-size:11px;min-height:34px}}
@media print{.sitehead,.footer,.goldbtn,.servicecard,.alternatives,.herolist,.heronote,.presets{display:none!important}.hero{color:#000;background:#fff}.herofigure{display:none}.calculator{background:#fff;color:#000}.result{color:#000;background:#fff}.wrap{width:100%}input,select{border:0!important}.previewgrid{grid-template-columns:1fr 220px}}
.herofigure img{height:310px;max-height:100%;}
.costcard #costnote:not([hidden]){display:block;color:#f8d988;font-size:10px;margin-top:5px;}
.print-head{display:none;}
@media print{.print-head{display:block;font-size:18px;font-weight:bold;margin:0 0 12px;color:#092650}.bottom{grid-template-columns:1fr}.herofigure{display:none}.sitehead,.heroaside,.timeline,.alternatives,.footer,.servicecard,.costcard{display:none!important}.calculator{break-inside:avoid}.preview{break-inside:avoid}}

/* Mission 03: keep the weekly editor legible on narrow screens without page-level overflow. */
@media(max-width:720px){
  .steps{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:6px 0}
  .step{min-height:90px;grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;justify-items:start;text-align:left;align-content:center;padding-left:34px}
  .step img{grid-column:1;grid-row:1/3;width:68px;height:68px}
  .step strong,.step small{grid-column:2;align-self:end;font-size:13px}
  .step small{align-self:start;font-size:11px}
  .number{left:0;top:calc(50% - 14px);width:26px;height:26px;font-size:13px}
  .arrow{justify-self:center;transform:rotate(90deg);line-height:1}
  .timelinelegal{margin:4px 0 0!important}
  .tablewrap{overflow:visible}
  .tablewrap table{display:block;width:100%;min-width:0;border-spacing:0}
  .tablewrap thead{display:none}
  .tablewrap tbody{display:grid;gap:8px}
  .tablewrap tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;border:1px solid #d7e6f5;border-radius:8px;background:#fff}
  .tablewrap td{display:grid;grid-template-columns:1fr;align-content:center;gap:3px;min-width:0;height:auto;padding:3px;background:transparent;text-align:left}
  .tablewrap tr:not(.offday) td:first-child{grid-column:1/-1;padding-bottom:5px;border-bottom:1px solid #e4eef8;color:#073067;font-weight:800}
  .tablewrap td[data-label]::before{content:attr(data-label);font-size:10px;line-height:1.2;color:#557397}
  .tablewrap td input{height:34px;font-size:13px}
  .tablewrap td.total{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e4eef8;padding-top:6px;color:#073067}
  .tablewrap td.total::before{font-weight:700}
  .tablewrap tr.offday{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .tablewrap tr.offday td:first-child{font-weight:800;color:#073067}
  .tablewrap tr.offday td.off{grid-column:2;text-align:right}
}

.herofigure img{height:279px;max-height:100%;}
.presets button{display:flex;align-items:center;gap:8px;}
.preseticon{width:25px;height:25px;object-fit:contain;flex:none;}

@media(max-width:720px){.timeline .step img{height:68px;width:68px}}

/* Approved CESCOND mark: retain the source PNG's square proportions and alpha. */
.headrow .official-logo{width:56px;height:56px;flex:none;object-fit:contain}
.footerbrand .official-logo{width:82px;height:82px;flex:none;object-fit:contain}
.footerbrand{gap:18px}
.herostats>div{min-width:0;flex:1;padding:6px 8px;gap:7px}
.stat-icon{width:32px;height:32px;flex:none;fill:none;stroke:#ffcf68;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.herostats strong{font-size:22px;line-height:1}
.herostats span{max-width:62px}
.herolist{gap:7px;padding:12px 13px}
.herolist span{display:flex;align-items:center;gap:8px;line-height:1.2}
.herolist i{width:23px;height:23px;flex:none;border-radius:50%;display:grid;place-items:center;background:#ffdc83;color:#07315a;font-style:normal;font-size:15px;font-weight:900}
.heronote{position:relative;min-height:72px;display:flex;align-items:center;padding:10px 62px 10px 12px;overflow:visible}
.heronote img{position:absolute;width:78px;height:78px;right:-2px;bottom:-7px;object-fit:contain;filter:drop-shadow(0 3px 3px #00162c55)}
.preseticon{width:27px;height:27px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.costcard{position:relative;padding-left:88px;padding-right:118px}
.costcard .cost-shield{position:absolute;left:8px;top:50%;width:70px;height:82px;max-height:90px;object-fit:contain;transform:translateY(-50%);filter:drop-shadow(0 4px 5px #0004)}
.costcard .cost-art{position:absolute;right:2px;top:50%;width:119px;height:102px;transform:translateY(-50%);pointer-events:none}
.costcard .cost-art img{position:absolute;object-fit:contain;filter:drop-shadow(0 4px 5px #0004)}
.costcard .cost-art img:first-child{width:108px;height:72px;right:5px;bottom:2px}
.costcard .cost-art img:last-child{width:57px;height:62px;right:0;bottom:0}
.costcard>div:not(.cost-art){position:relative;z-index:1}
.costcard .eyebrow{font-size:10px}
@media(max-width:1020px){.herostats>div{padding:6px}.stat-icon{width:28px;height:28px}.costcard{padding-left:76px;padding-right:104px}.costcard .cost-shield{width:62px;height:72px}.costcard .cost-art{width:104px}.costcard .cost-art img:first-child{width:92px;height:64px}.costcard .cost-art img:last-child{width:48px;height:54px}}
@media(max-width:720px){.headrow .official-logo{width:50px;height:50px}.footerbrand .official-logo{width:76px;height:76px}.herostats>div{min-width:40%;flex:1}.herostats span{max-width:none}.herolist{font-size:12px}.costcard{padding-left:66px;padding-right:88px;min-height:170px}.costcard .cost-shield{left:4px;width:55px;height:65px}.costcard .cost-art{right:0;width:88px;height:82px}.costcard .cost-art img:first-child{width:78px;height:54px}.costcard .cost-art img:last-child{width:39px;height:46px}}
.ui-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.preview-title,.icon-heading{display:flex;align-items:center;gap:8px}
.preview-title .ui-icon{width:25px;height:25px;color:#0752b7}
.servicecard button{display:flex;align-items:center;justify-content:center;gap:7px}
.servicecard button .ui-icon{width:17px;height:17px}
.servicecard button.whatsapp-share{background:#06a345;color:#fff;border-color:#07893b}
.servicecard button.whatsapp-share .ui-icon{color:#fff}
.servicecard.glossary .icon-heading .ui-icon{color:#1475df}
.contact .icon-heading .ui-icon{color:#e8444a}
@media(max-width:720px){.preview-title .ui-icon{width:22px;height:22px}}
.footcontact .foot-line{display:flex;align-items:flex-start;gap:8px}
.footcontact .foot-line .ui-icon{width:17px;height:17px;color:#ffd05d}
.footcontact .foot-social{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.foot-social .social-label{font-size:10px;color:#d8e8f8}.foot-social .social-link{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:#d8e8f8;text-decoration:none}.foot-social .social-icon{display:block;flex:none;width:21px;height:21px}.foot-social a.social-link:hover{opacity:.86;transform:translateY(-1px)}.foot-social a.social-link:focus-visible{outline:2px solid #ffd05d;outline-offset:3px;border-radius:3px}
.headrow{height:78px}
.headrow .official-logo{width:72px;height:72px}
@media(max-width:720px){.headrow{height:auto;min-height:76px}.headrow .official-logo{width:62px;height:62px}}


/* Correções de fidelidade a partir dos recortes aprovados */
.heronote{font-size:13px;line-height:1.18;padding-right:68px}
.heronote img{width:82px;height:82px;right:-4px;bottom:-8px}
.step img{width:74px;height:68px;object-fit:contain}
.step strong{font-size:14px}
.step small{font-size:12px}
.number{z-index:1}
.costcard>div:not(.cost-art){max-width:100%;min-width:0}
.costcard h2,.costcard p{max-width:100%;overflow-wrap:normal}
@media(max-width:720px){.heronote{font-size:12px}.heronote img{width:72px;height:72px}.step img{width:54px;height:50px}.step strong{font-size:10px}.step small{font-size:9px}}

/* Ajustes finais da linha do tempo e do cartão de custo */
.timeline{padding-bottom:16px}
.step img{width:60px;height:56px}
.costcard>div:not(.cost-art){flex:1 1 0%}
@media(max-width:720px){.step img{width:46px;height:42px}}

/* Reconstrução localizada dos três blocos a partir dos recortes aprovados */
.herolist{font-size:13px;gap:7px;padding:12px 13px}
.herolist span{gap:9px;line-height:1.2}
.herolist i{width:24px;height:24px;font-size:15px;background:#ffdc83;color:#07315a}
.heronote{font-size:13px;line-height:1.15;min-height:74px;padding:10px 68px 10px 12px;transform:rotate(-2deg)}
.heronote img{width:84px;height:84px;right:-5px;bottom:-8px}
.timeline{grid-template-columns:310px minmax(0,1fr);padding:12px 18px 16px;min-height:126px}
.timelineintro h2{font-size:25px}
.timelineintro p{font-size:13px;line-height:1.15;max-width:300px}
.steps{gap:12px}
.step{gap:2px}
.step img{width:68px;height:62px;object-fit:contain}
.step strong{font-size:13px;line-height:1.1}
.step small{font-size:12px;line-height:1.15}
.number{width:36px;height:36px;font-size:20px;left:-12px;top:17px;z-index:1}
.arrow{font-size:30px;line-height:1;color:#5799ea}
.bottom{grid-template-columns:1.48fr 1fr 1fr .87fr;gap:10px;margin-top:8px;margin-bottom:8px}
.bottom article{min-height:100px;padding:7px 8px}
.costcard{display:grid;grid-template-columns:68px minmax(0,1fr) 106px;grid-template-rows:1fr;gap:8px;align-items:center;padding:7px 8px;overflow:hidden}
.costcard .cost-shield{position:static;left:auto;top:auto;width:66px;height:78px;max-height:78px;object-fit:contain;transform:none;filter:drop-shadow(0 3px 4px #0004)}
.costcard .costcopy{grid-column:2;grid-row:1;position:relative;z-index:1;min-width:0;max-width:none}
.costcard .costcopy .eyebrow{font-size:8px;line-height:1.05;letter-spacing:.02em}
.costcard .costcopy h2{font-size:14px;line-height:1.03;margin:3px 0;overflow-wrap:normal}
.costcard .costcopy p{font-size:9px;line-height:1.1;margin:3px 0 5px}
.costcard .costcopy .goldbtn{display:inline-block;font-size:10px;line-height:1;padding:7px 9px;white-space:nowrap}
.costcard .cost-art{position:relative;grid-column:3;grid-row:1;right:auto;top:auto;width:106px;height:82px;transform:none;pointer-events:none}
.costcard .cost-art img:first-child{width:94px;height:66px;right:8px;bottom:1px}
.costcard .cost-art img:last-child{width:43px;height:53px;right:0;bottom:0}
.servicecard{padding:8px}
.servicecard h3{font-size:12px;margin:0 0 5px;line-height:1.1}
.servicecard p{font-size:9px;line-height:1.15;margin:4px 0 6px}
.servicecard button{font-size:10px;padding:5px;margin:4px 0;min-height:22px}
.servicecard button#copy{display:none}
.glossary span{font-size:9px;padding:3px}
.contact .goldbtn{font-size:10px;padding:7px 9px}
@media(max-width:1020px){
 .timeline{grid-template-columns:1fr;min-height:0}
 .bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
 .costcard{grid-template-columns:62px minmax(0,1fr) 98px}
 .costcard .cost-shield{width:60px;height:70px}
 .costcard .cost-art{width:98px}
 .costcard .cost-art img:first-child{width:86px;height:61px}
}
@media(max-width:720px){
 .herolist{font-size:12px}
 .heronote{font-size:12px;transform:rotate(-1deg)}
 .heronote img{width:72px;height:72px}
 .steps{gap:3px}
 .step img{width:48px;height:44px}
 .step strong{font-size:10px}
 .step small{font-size:9px}
 .number{width:22px;height:22px;font-size:12px;left:-5px;top:11px}
 .arrow{font-size:16px}
 .bottom{grid-template-columns:1fr}
 .bottom article{min-height:100px}
 .costcard{grid-template-columns:58px minmax(0,1fr) 84px;padding:7px;gap:5px}
 .costcard .cost-shield{width:56px;height:64px}
 .costcard .costcopy .eyebrow{font-size:8px}
 .costcard .costcopy h2{font-size:13px}
 .costcard .cost-art{width:84px;height:72px}
 .costcard .cost-art img:first-child{width:76px;height:53px}
 .costcard .cost-art img:last-child{width:35px;height:44px}
}

/* Calibração da página inteira para a referência 1312 × 1199 */
@media(min-width:1021px){
 .wrap{width:min(1220px,calc(100% - 96px))}
 .headrow{height:48px;gap:14px}
 .headrow .official-logo{width:48px;height:46px;flex:none;margin-left:22px}
 .headrow nav{gap:24px}
 .headrow nav a{font-size:12px}
 .headrow .selected{padding-bottom:6px}
 .headrow .whatsapp{font-size:12px;padding:8px 15px;border-radius:7px;min-width:184px}
 .hero .herogrid{min-height:273px;grid-template-columns:1.35fr .85fr .52fr;gap:12px}
 .herocopy{padding:2px 0 6px}
 .hero .pill{font-size:13px;padding:3px 10px}
 .hero h1{font-size:36px;line-height:.94;margin:5px 0}
 .hero p{font-size:15px;line-height:1.2;max-width:470px;margin:5px 0 8px}
 .hero .herocopy>.goldbtn{font-size:14px;padding:9px 30px;min-width:242px}
 .herostats{gap:5px;margin-top:3px}
 .herostats>div{min-height:49px;padding:5px 8px;gap:7px}
 .stat-icon{width:34px;height:34px}
 .herostats strong{font-size:22px}
 .herostats span{font-size:11px;max-width:68px}
 .herofigure{overflow:visible}
 .herofigure img{height:286px;max-height:none}
 .scribble{top:28px;left:2%;font-size:18px}
 .heroaside{padding:6px 0;gap:12px}
 .herolist{padding:9px 12px;gap:5px;font-size:13px}
 .herolist i{width:24px;height:24px;font-size:15px}
 .heronote{min-height:72px;font-size:13px;padding:9px 72px 9px 12px}
 .heronote img{width:82px;height:82px}
 .timeline{height:127px;min-height:127px;grid-template-columns:310px minmax(0,1fr);gap:18px;padding:10px 24px;margin:3px auto 4px}
 .timelineintro h2{font-size:25px;line-height:.98;margin:3px 0}
 .timelineintro p{font-size:13px;line-height:1.15;margin:4px 0;max-width:280px}
 .steps{justify-content:space-around;gap:8px}
 .step img{width:68px;height:62px}
 .step strong{font-size:13px}
 .step small{font-size:12px}
 .number{width:36px;height:36px;font-size:20px;left:-12px;top:17px}
 .arrow{font-size:29px}
 .calculator{min-height:294px;padding:8px 18px 9px}
 .sectionhead{gap:10px;align-items:start}
 .sectionhead h2{font-size:23px;margin:1px 0}
 .sectionhead p{font-size:12px;margin:0 0 6px}
 .targetlabel{width:250px;font-size:12px}
 .targetlabel select{min-height:26px;padding:3px 8px}
 .targetlabel small{font-size:9px}
 .calcgrid{grid-template-columns:284px minmax(0,1fr) 304px;gap:10px}
 .presets,.result{padding:9px 11px}
 .presets h3,.result h3,.fields h3{font-size:14px;margin-bottom:6px}
 .presets button{padding:5px 8px;margin-bottom:4px;min-height:29px;font-size:12px}
 .preseticon{width:22px;height:22px}
 .fields{padding:9px 13px}
 .fields h3:not(:first-child){margin-top:7px}
 .days{gap:4px}
 .days button{min-height:28px;font-size:12px}
 .fieldgrid{gap:5px 10px}
 .fieldgrid label{font-size:11px}
 .fieldgrid input{min-height:25px;padding:3px 8px;margin-top:2px}
 .check{font-size:11px;margin-top:6px}
 .hint{font-size:10px;line-height:1.1;margin:4px 0}
 .ring{width:112px;height:112px;padding:11px;margin:4px auto 7px}
 .ring strong{font-size:25px}
 .status{padding:4px 6px;font-size:12px}
 .meter{height:8px;margin:6px 0}
 .result p{font-size:10px;margin:3px}
 .result>small{font-size:9px}
 .preview{height:183px;margin-top:4px;padding:8px 16px}
 .preview h2{font-size:20px;margin:0}
 .previewgrid{grid-template-columns:minmax(0,1fr) 342px;gap:14px}
 .tablewrap table{font-size:11px;border-spacing:1px}
 .tablewrap th{padding:3px}
 .tablewrap td{height:17px;padding:1px}
 .tablewrap td input{height:15px;font-size:10px;padding:1px 4px}
 .weeksummary{padding:7px 10px}
 .weeksummary h3{font-size:16px;margin-bottom:4px}
 .summarytop strong{font-size:29px}
 .smallring{width:68px;height:68px;padding:10px}
 .miniinfo{gap:4px}
 .miniinfo>div{padding:4px 2px}
 .miniinfo strong{font-size:16px}
 .miniinfo small{font-size:9px}
 .legal{font-size:9px;padding:5px;margin-top:4px}
 .alternatives{height:76px;min-height:76px;margin:7px auto 7px;padding:5px 10px}
 .alternatives h2{font-size:16px;margin:0 0 4px}
 .alternativegrid{gap:8px}
 .alternativegrid article{min-height:47px;padding:5px 7px;gap:7px}
 .alternativegrid img{width:42px;height:42px}
 .alternativegrid h3{font-size:11px;margin:0 0 2px}
 .alternativegrid p{font-size:9px;line-height:1.05}
 .alternativeinfo strong{font-size:20px}
 .bottom{height:99px;min-height:99px;margin:6px auto 2px}
 .bottom article{height:99px;min-height:99px}
 .footer{min-height:80px;padding:6px 0 4px}
 .footergrid{grid-template-columns:2fr 1fr 1fr 1.6fr;gap:20px}
 .footerbrand{gap:8px}
 .footerbrand .official-logo{width:58px;height:58px;object-fit:contain;flex:none}
 .footerbrand p,.footcontact p{font-size:10px;line-height:1.15;margin:0 0 4px}
 .footlinks{gap:2px}
 .footlinks a{font-size:10px}
 .footcontact .foot-line .ui-icon{width:14px;height:14px}
 .foot-social span{font-size:9px}
 .footbottom{margin-top:4px;padding-top:4px;font-size:9px}
}

/* Espaçamento de segurança: deixa as seções crescerem com o conteúdo e evita sobreposição. */
.preview{
  height:auto;
  min-height:183px;
  margin-top:12px;
  padding-bottom:12px;
}
.alternatives{
  height:auto;
  min-height:76px;
  margin-top:12px;
  margin-bottom:12px;
  padding-top:8px;
  padding-bottom:8px;
}
.alternativegrid article{
  min-height:58px;
}
.bottom{
  height:auto;
  min-height:99px;
  margin-top:12px;
  margin-bottom:12px;
  grid-auto-rows:minmax(99px,auto);
}
.bottom article{
  height:auto;
  min-height:99px;
}
.footer{
  margin-top:10px;
}

@media(max-width:1020px){
  .preview,
  .alternatives,
  .bottom{
    height:auto;
  }
  .bottom{row-gap:12px}
  .footer{margin-top:10px}
}

@media(max-width:720px){
  .preview,
  .alternatives,
  .bottom{margin-top:14px;margin-bottom:14px}
  .bottom{row-gap:12px}
  .footer{margin-top:12px}
}

/* Missão 05: leitura confortável, cartão premium e três cartões finais. */
.targetlabel{font-size:13px}
.targetlabel small,
.result>small,
.hint,
.legal{font-size:12px;line-height:1.3}
.link,
.presets button,
.fieldgrid label,
.check,
.tablewrap table,
.tablewrap td input,
.servicecard button{font-size:13px}
.tablewrap td{height:25px}
.tablewrap td input{height:26px;padding:3px 6px}
.previewgrid{align-items:stretch}
.weeksummary{
  display:flex;
  flex-direction:column;
  gap:8px;
  height:100%;
  padding:14px;
  color:#f5f8ff;
  background:linear-gradient(155deg,#0a3155 0%,#061e38 72%,#04172c 100%);
  border:1px solid #315d83;
  border-top:3px solid #eeb332;
  border-radius:12px;
  box-shadow:0 10px 24px rgba(3,24,47,.16);
}
.weeksummary[hidden]{display:none!important}
.weeksummary h3{margin:0;color:#fff;font-size:17px;line-height:1.2}
.summarytop{gap:8px;min-height:78px}
.week-total strong{display:block;color:#fff;font-size:32px;line-height:1.05;letter-spacing:-.03em}
.week-total small{display:block;margin-top:4px;color:#d7e5f5;font-size:13px}
.week-total small span{color:#ffd36a;font-weight:800}
.smallring{
  flex:none;
  width:76px;
  height:76px;
  padding:9px;
  background:conic-gradient(var(--ring,#2488ff) var(--pct,0%),#36516d 0);
  box-shadow:0 0 0 3px rgba(255,255,255,.06);
}
.smallring b{display:grid;place-items:center;width:100%;height:100%;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:#08233f;color:#fff;font-size:15px}
.week-meter{height:10px;margin:0;background:#264766}
.weekstatus{margin:0;padding:8px 10px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:rgba(255,255,255,.07);color:#eaf2fb;font-size:13px;font-weight:700;line-height:1.25}
.weeksummary[data-state="below"]{--ring:#2789ff}
.weeksummary[data-state="below"] .weekstatus{border-color:#5489bf;color:#d8eaff}
.weeksummary[data-state="met"]{--ring:#ffc344;border-color:#dca62e}
.weeksummary[data-state="met"] .week-meter>div{background:#ffc344!important}
.weeksummary[data-state="met"] .weekstatus{border-color:#dca62e;background:rgba(255,195,68,.12);color:#ffdf91}
.weeksummary[data-state="over"],
.weeksummary[data-state="invalid"]{--ring:#f16a65;border-color:#a84f55}
.weeksummary[data-state="over"] .week-meter>div,
.weeksummary[data-state="invalid"] .week-meter>div{background:#f16a65!important}
.weeksummary[data-state="over"] .weekstatus,
.weeksummary[data-state="invalid"] .weekstatus{border-color:#a84f55;background:rgba(241,106,101,.12);color:#ffc4c1}
.weeksummary .miniinfo{gap:6px}
.weeksummary .miniinfo>div{min-width:0;padding:7px 3px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.07)}
.weeksummary .miniinfo strong{color:#ffd36a;font-size:17px}
.weeksummary .miniinfo small{color:#e0eaf6;font-size:12px;line-height:1.15}
.weeksummary .legal{margin:0;padding:8px 9px;border-radius:7px;background:rgba(1,15,29,.42);color:#c8d7e8;font-size:12px;line-height:1.25}
.bottom{grid-template-columns:minmax(0,4fr) minmax(0,3fr) minmax(0,3fr)}
.costcard h2{font-size:17px;line-height:1.12}
.costcard p,.servicecard p{font-size:13px;line-height:1.3}
.servicecard h3{font-size:16px;line-height:1.2}
.servicecard button{min-height:34px;padding:7px 9px}
.contact .goldbtn{font-size:13px}
.alternativegrid h3{font-size:15px}
.alternativegrid p{font-size:13px;line-height:1.25}

@media(min-width:1021px){
  .preview{height:auto;min-height:183px;padding-bottom:12px}
  .previewgrid{grid-template-columns:minmax(0,1fr) 342px;gap:14px}
  .weeksummary{min-height:100%}
  .bottom{grid-template-columns:minmax(0,4fr) minmax(0,3fr) minmax(0,3fr)}
}
@media(max-width:1020px){
  .previewgrid{grid-template-columns:minmax(0,1fr) minmax(260px,320px)}
  .bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
  .costcard p,.servicecard p{font-size:13px}
  .weeksummary{padding:13px}
}
@media(max-width:720px){
  .previewgrid{grid-template-columns:minmax(0,1fr)}
  .weeksummary{height:auto;min-height:0;padding:14px}
  .weeksummary .miniinfo small{font-size:12px}
  .tablewrap td input{height:36px;font-size:14px}
  .tablewrap td[data-label]::before{font-size:12px}
  .tablewrap td.total{font-size:13px}
  .bottom{grid-template-columns:minmax(0,1fr);row-gap:12px}
  .bottom article{min-height:0;padding:14px}
  .costcard h2{font-size:17px}
  .costcard p,.servicecard p{font-size:13px}
  .servicecard h3{font-size:16px}
  .servicecard button{font-size:13px;min-height:40px}
  .alternativegrid h3{font-size:15px}
  .alternativegrid p,.alternativeinfo p{font-size:13px}
  .targetlabel small,.result>small,.hint,.legal{font-size:12px}
}

/* Missão 05 — cartão comercial no quarto espaço de “Como resolver?” */
.alternativeinfo{
  min-height:132px;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:8px!important;
  border-color:#b88c35!important;
  background:linear-gradient(145deg,#0a3155 0%,#041a31 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(255,211,106,.12),0 8px 20px rgba(3,24,47,.18);
  color:#f5f8ff;
}
.commercial-heading{display:flex;align-items:center;gap:9px}
.commercial-icon{width:31px;height:31px;flex:none;fill:none;stroke:#ffd166;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.alternativeinfo h3{margin:0;color:#ffe09a;font-size:16px;line-height:1.2}
.alternativeinfo p{margin:0;color:#e0eaf6;font-size:13px;line-height:1.3}
.guidance-cta{
  display:inline-flex;
  align-self:flex-start;
  align-items:center;
  justify-content:center;
  max-width:100%;
  min-height:36px;
  padding:8px 11px;
  border:1px solid #f7c54f;
  border-radius:7px;
  background:linear-gradient(110deg,#ffe08a,#f2a817);
  box-shadow:0 3px 10px rgba(0,0,0,.18);
  color:#071c34;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
}
.guidance-cta:hover{filter:brightness(1.05)}
@media(max-width:720px){
  .alternativeinfo{min-height:0;gap:10px!important;padding:16px 14px!important}
  .commercial-icon{width:34px;height:34px}
  .alternativeinfo h3{font-size:16px}
  .alternativeinfo p{font-size:14px;line-height:1.35}
  .guidance-cta{align-self:stretch;min-height:42px;font-size:14px}
}


/* Opções internas do modelo Trabalha sábado */
.presets .sat-options{margin:0 0 8px;padding:9px;background:#062744;border:1px solid #38658a;border-radius:7px}
.presets .sat-options[hidden]{display:none}
.presets .sat-options p{margin:0 0 7px;color:#dcecff;font-size:12px;font-weight:700;line-height:1.25}
.presets .sat-options button{margin:0 0 5px;padding:7px 8px;min-height:0;font-size:11px;line-height:1.25}
.presets .sat-options button.active{background:linear-gradient(110deg,#ffe08c,#f4a51b);color:#061a35}
.presets .sat-options label{display:grid;gap:4px;color:#dcecff;font-size:11px;font-weight:700}
.presets .sat-options select{width:100%;min-height:30px;padding:4px 7px;border:1px solid #37678e;border-radius:5px;background:#fff;color:#082044;font:inherit}
@media(max-width:720px){.presets .sat-options{padding:10px}.presets .sat-options button{font-size:12px;min-height:36px}}
