/* =====================================================================
   Environe · site público (layout comum + /mudar + /parceiros)
   Desenho aprovado: mockups MudarInicio, MudarPedido, MudarObrigado, MudarTelemovel,
   ParceirosPublico, ParceirosRegisto, ParceirosTelemovel.
   Prefixo sp- (site público). Componentes em environe_app/src/site/_publico.php.
   ===================================================================== */
:root{
  --sp-forest:#0D3A22; --sp-forest-2:#184A2E; --sp-forest-3:#245A3B;
  --sp-green:#1B7A44; --sp-green-bg:#E6F2EA; --sp-green-soft:#6FB08A;
  --sp-orange:#F59E0B; --sp-orange-d:#B4530B; --sp-cream:#FFF4DE; --sp-brown:#7A4A0B; --sp-brown-2:#3B2A06;
  --sp-bg:#FAF8F2; --sp-line:#E8E4D8; --sp-line-2:#EFEBE0; --sp-field:#D6D2C4;
  --sp-ink:#13261B; --sp-ink-2:#3E4F45; --sp-muted:#6B786F; --sp-mint:#CFE3D6; --sp-mint-2:#9FC2AD; --sp-mint-3:#DDEFE3;
  --sp-red:#B42318; --sp-red-bg:#FDECEA;
  --sp-h:'Raleway',system-ui,sans-serif; --sp-b:'Hind',system-ui,sans-serif;
  --sp-r1:12px; --sp-r2:20px; --sp-r3:28px;
  --sp-pad:72px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.sp{margin:0;font:400 16px/1.5 var(--sp-b);background:var(--sp-bg);color:var(--sp-ink);-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
body.sp main{flex:1 0 auto}
.sp a{color:var(--sp-green);text-decoration:none}
.sp a:hover{color:var(--sp-forest)}
.sp img{max-width:100%}
.sp button{font-family:inherit}
.sp h1,.sp h2,.sp h3{font-family:var(--sp-h);margin:0}
.sp p{margin:0}
.sp [hidden]{display:none!important}
.sp :focus-visible{outline:3px solid var(--sp-orange);outline-offset:2px}
.sp-wrap{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--sp-pad)}
.sp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sp-test{background:var(--sp-orange);color:var(--sp-ink);text-align:center;font-size:13px;font-weight:600;padding:4px 12px}
.sp-missing{display:inline-block;padding:0 6px;border-radius:4px;background:var(--sp-cream);color:var(--sp-orange-d);font-weight:600}

/* ---------- botões ---------- */
.sp-btn{height:56px;padding:0 28px;border-radius:999px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 17px var(--sp-b);cursor:pointer;white-space:nowrap;text-decoration:none;transition:filter .15s,background .15s}
.sp-btn:hover{filter:brightness(.96)}
.sp-btn[disabled]{opacity:.55;cursor:default}
.sp .sp-btn-o{background:var(--sp-orange);color:var(--sp-ink)}
.sp .sp-btn-d{background:var(--sp-forest);color:#fff}
.sp .sp-btn-d:hover{color:#fff}
.sp .sp-btn-green{background:var(--sp-green);color:#fff}
.sp .sp-btn-g{background:transparent;border:1.5px solid var(--sp-mint);color:var(--sp-forest)}
.sp .sp-btn-g.on-dark{border-color:#3E7A57;color:#fff}
.sp .sp-btn-g.on-green{border-color:var(--sp-green-soft);color:#fff}
.sp-btn-sm{height:44px;padding:0 22px;font-size:16px;gap:8px}
.sp-btn-md{height:46px;padding:0 22px;font-size:16px}
.sp-btn-block{width:100%}
.sp-linkbtn{background:none;border:0;padding:0;color:var(--sp-green);font:600 16px var(--sp-b);cursor:pointer}
.sp-linkbtn:hover{color:var(--sp-forest)}

/* ---------- cabeçalho ---------- */
.sp-top{background:var(--sp-forest);color:#fff;position:relative;z-index:20}
.sp-top-in{height:80px;display:flex;align-items:center;gap:32px}
.sp-brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.sp-brand img{height:30px;width:auto;display:block}
.sp-tag{padding:4px 10px;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);font:800 12px var(--sp-h);letter-spacing:1px}
.sp-nav{display:flex;gap:28px;margin-left:24px}
.sp .sp-nav a{font-size:16px;font-weight:500;color:var(--sp-mint)}
.sp .sp-nav a:hover{color:#fff}
.sp-top-r{margin-left:auto;display:flex;align-items:center;gap:16px}
.sp-lang{display:flex;gap:2px;padding:3px;border-radius:999px;background:var(--sp-forest-2)}
.sp .sp-lang a{padding:4px 10px;border-radius:999px;color:var(--sp-mint);font-size:13px;font-weight:600;line-height:1.5}
.sp .sp-lang a.on{background:#fff;color:var(--sp-forest)}
.sp .sp-login{font-size:16px;font-weight:600;color:#fff}
.sp-round{display:none;margin-left:auto;width:40px;height:40px;border-radius:999px;border:0;background:var(--sp-forest-2);color:#fff;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.sp .sp-round{color:#fff}
.sp-drawer{background:var(--sp-forest);border-top:1px solid var(--sp-forest-3);padding:8px 0 20px}
.sp-drawer-nav{display:flex;flex-direction:column}
.sp .sp-drawer-nav a{color:#fff;font-size:17px;font-weight:500;padding:12px 0;border-bottom:1px solid var(--sp-forest-3)}
.sp-drawer-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0}
.sp-drawer-cta .sp-btn{width:100%}

/* ---------- blocos comuns ---------- */
.sp-eyebrow{font:700 13px var(--sp-h);letter-spacing:2px;text-transform:uppercase;color:var(--sp-orange-d)}
.sp-eyebrow.or{color:var(--sp-orange)}
.sp-pillhead{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:var(--sp-forest-2);color:var(--sp-orange);font:700 13px var(--sp-h);letter-spacing:1.5px;text-transform:uppercase}
.sp-h2{font:800 48px/1.12 var(--sp-h);letter-spacing:-1px;color:var(--sp-forest)}
.sp-h2.sm{font-size:44px}
.sp-h3{font:800 24px/1.25 var(--sp-h);color:var(--sp-forest)}
.sp-card{background:#fff;border:1px solid var(--sp-line);border-radius:var(--sp-r2)}
.sp-sec{padding-top:96px;padding-bottom:72px}
.sp-sec-h{display:flex;flex-direction:column;gap:10px}
.sp-muted{color:var(--sp-muted)}
.sp-alert{padding:12px 16px;border-radius:var(--sp-r1);background:var(--sp-red-bg);color:#8A1C12;font-size:15px;line-height:1.5}
.sp-alert a{color:#8A1C12;text-decoration:underline}
.sp-alert.ok{background:var(--sp-green-bg);color:var(--sp-forest)}
.sp-err{color:var(--sp-red);font-size:14px;font-weight:500;min-height:0}
.sp-err:empty{display:none}

/* campos */
.sp-field{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:500;color:var(--sp-ink-2);min-width:0}
.sp-field small{font-weight:400;color:var(--sp-muted)}
.sp-input{height:50px;width:100%;padding:0 14px;border:1px solid var(--sp-field);border-radius:var(--sp-r1);font:400 17px var(--sp-b);color:var(--sp-ink);background:#fff;-webkit-appearance:none;appearance:none}
.sp-input::placeholder{color:#8F9A92}
.sp-input:focus{outline:none;border-color:var(--sp-green);box-shadow:0 0 0 3px rgba(27,122,68,.15)}
.sp-input.bad{border-color:var(--sp-red)}
select.sp-input{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236B786F' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;padding-right:40px}
.sp-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sp-pills{display:flex;flex-wrap:wrap;gap:8px}
.sp-pill{height:42px;padding:0 16px;border-radius:999px;border:1.5px solid var(--sp-field);background:#fff;color:var(--sp-ink-2);font:600 15px var(--sp-b);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.sp-pill.on,.sp-pill[aria-pressed="true"],.sp-pill:has(input:checked){border-color:var(--sp-green);background:var(--sp-green-bg);color:var(--sp-forest)}
.sp-pill[disabled]{opacity:.5;cursor:default}
.sp-pill:has(input:focus-visible){outline:3px solid var(--sp-orange);outline-offset:2px}
.sp-legend{padding:0;margin:0 0 8px;font-size:15px;font-weight:500;color:var(--sp-ink-2)}
.sp-fs{border:0;margin:0;padding:0;min-width:0}
.sp-ref{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:var(--sp-r1);background:var(--sp-cream);font-size:15px;color:var(--sp-brown);line-height:1.5}
.sp-ref strong{font-weight:600}

/* ---------- hero ---------- */
.sp-hero{background:var(--sp-forest);color:#fff}
.sp-hero-in{padding-top:72px;padding-bottom:88px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:center}
.sp-hero-copy{display:flex;flex-direction:column;gap:24px}
.sp-h1{font:800 64px/1.04 var(--sp-h);letter-spacing:-1.5px;color:#fff}
.sp-h1 .hl{color:var(--sp-orange)}
.sp-lede{font-size:20px;line-height:1.55;color:var(--sp-mint);max-width:560px}
.sp-trust{display:flex;flex-wrap:wrap;gap:12px 28px;font-size:16px;color:var(--sp-mint)}
.sp-trust span{display:flex;gap:8px;align-items:center}
.sp-trust svg{color:var(--sp-orange)}

/* "Começa aqui" */
.sp-start{padding:36px;display:flex;flex-direction:column;gap:18px;color:var(--sp-ink)}
.sp-start-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sp-start-t{font:800 26px var(--sp-h);color:var(--sp-forest)}
.sp-start-s{font-size:14px;color:var(--sp-muted)}
.sp-start .sp-btn{width:100%;font-size:18px}

/* marcas */
.sp-brands{background:#fff;border-bottom:1px solid var(--sp-line)}
.sp-brands-in{padding-top:26px;padding-bottom:26px;display:flex;align-items:center;gap:40px}
.sp-brands-l{font:700 13px var(--sp-h);letter-spacing:2px;text-transform:uppercase;color:var(--sp-muted);flex-shrink:0}
.sp-brands-list{display:flex;flex-wrap:wrap;gap:12px 40px}
.sp-brands-list span{font:700 20px var(--sp-h);color:#7C8A80}

/* como funciona (3 passos) */
.sp-how{display:flex;flex-direction:column;gap:44px}
.sp-steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.sp-step3{display:flex;flex-direction:column;gap:14px}
.sp-num{width:48px;height:48px;border-radius:999px;background:var(--sp-forest);color:var(--sp-orange);font:800 20px var(--sp-h);display:flex;align-items:center;justify-content:center}
.sp-step3 p{font-size:17px;line-height:1.55;color:var(--sp-ink-2)}

/* serviços */
.sp-svc-sec{padding-top:24px;padding-bottom:96px;display:flex;flex-direction:column;gap:40px}
.sp-svc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.sp-svc-head p{font-size:17px;color:var(--sp-ink-2);max-width:380px}
.sp-svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp-svc{padding:28px;display:flex;flex-direction:column;gap:12px}
.sp-svc.soon{opacity:.75}
.sp-svc-top{display:flex;justify-content:space-between;align-items:flex-start}
.sp-ico52{width:52px;height:52px;border-radius:14px;background:var(--sp-cream);color:var(--sp-orange-d);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sp-ico52.gr{background:var(--sp-green-bg);color:var(--sp-green)}
.sp-add{width:28px;height:28px;border-radius:8px;border:1.5px solid var(--sp-mint);background:#fff;display:flex;align-items:center;justify-content:center;color:var(--sp-green);cursor:pointer;padding:0}
.sp-add.on{background:var(--sp-green);border-color:var(--sp-green);color:#fff}
.sp-soon{padding:4px 10px;border-radius:999px;background:var(--sp-line-2);color:#5B6B61;font-size:13px;font-weight:600}
.sp-svc-d{font-size:17px;line-height:1.5;color:var(--sp-ink-2)}
.sp-svc-n{font-size:15px;color:var(--sp-muted)}

/* banda da checklist */
.sp-clband{border-radius:var(--sp-r3);background:var(--sp-green);padding:56px 64px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:center}
.sp-clband-copy{display:flex;flex-direction:column;gap:16px}
.sp-clband h2{font:800 40px/1.15 var(--sp-h);letter-spacing:-1px;color:#fff}
.sp-clband p{font-size:18px;line-height:1.55;color:var(--sp-mint-3)}
.sp-clband-btns{display:flex;flex-wrap:wrap;gap:12px}
.sp-clprev{padding:26px;display:flex;flex-direction:column;gap:14px}
.sp-clprev-h{display:flex;justify-content:space-between;font:700 16px var(--sp-h);color:var(--sp-forest)}
.sp-clprev-h span+span{color:var(--sp-orange-d)}
.sp-bar{height:8px;border-radius:999px;background:var(--sp-line-2);overflow:hidden}
.sp-bar>i{display:block;height:100%;border-radius:999px;background:var(--sp-green);transition:width .3s}
.sp-task{display:flex;gap:12px;align-items:center;font-size:16px;color:var(--sp-ink)}
.sp-task.done{color:var(--sp-muted);text-decoration:line-through}
.sp-chk{width:22px;height:22px;border-radius:6px;border:1.5px solid var(--sp-field);flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fff;color:#fff}
.sp-task.done .sp-chk,.sp-chk.on{background:var(--sp-green);border-color:var(--sp-green)}
.sp-we{margin-left:auto;padding:2px 8px;border-radius:999px;background:var(--sp-cream);color:var(--sp-orange-d);font-size:13px;font-weight:600;white-space:nowrap;text-decoration:none}

/* perguntas */
.sp-faqsec{padding-top:96px;padding-bottom:96px;display:grid;grid-template-columns:420px minmax(0,1fr);gap:72px}
.sp-faqsec-h{display:flex;flex-direction:column;gap:14px}
.sp-faqsec-h p{font-size:17px;color:var(--sp-ink-2)}
.sp-faq details{padding:22px 0;border-bottom:1px solid var(--sp-line)}
.sp-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;font:700 20px/1.35 var(--sp-h);color:var(--sp-forest);cursor:pointer;list-style:none}
.sp-faq summary::-webkit-details-marker{display:none}
.sp-faq-i{color:var(--sp-green);display:flex;transition:transform .2s;flex-shrink:0}
.sp-faq details[open] .sp-faq-i{transform:rotate(45deg)}
.sp-faq p{margin-top:8px;font-size:17px;line-height:1.55;color:var(--sp-ink-2);max-width:760px}

/* banda laranja (CTA) */
.sp-band{margin-bottom:96px;padding:48px 56px;border-radius:var(--sp-r3);background:var(--sp-orange);display:flex;justify-content:space-between;align-items:center;gap:32px}
.sp-band-t{font:800 36px/1.2 var(--sp-h);color:var(--sp-forest)}
.sp-band p{font-size:18px;color:var(--sp-brown-2);margin-top:8px}

/* ---------- rodapé ---------- */
.sp-foot{background:var(--sp-forest);color:var(--sp-mint);padding:64px 0 36px;margin-top:auto}
.sp-foot-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:40px}
.sp-foot-brand{display:flex;flex-direction:column;gap:14px;color:#fff;align-items:flex-start}
.sp-foot-brand img{height:30px;width:auto}
.sp-foot-brand p{font-size:15px;line-height:1.55;color:var(--sp-mint)}
.sp .sp-foot-brand a{display:flex;gap:8px;align-items:center;font-size:16px;color:#fff}
.sp-foot-col{display:flex;flex-direction:column;gap:12px}
.sp-foot-h{font:700 13px var(--sp-h);letter-spacing:2px;text-transform:uppercase;color:var(--sp-orange)}
.sp .sp-foot-col a,.sp .sp-foot-legal a{font-size:16px;color:var(--sp-mint)}
.sp .sp-foot-col a:hover,.sp .sp-foot-legal a:hover{color:#fff}
.sp-foot-bottom{margin-top:40px;padding-top:24px;border-top:1px solid var(--sp-forest-3);display:flex;justify-content:space-between;gap:12px 32px;font-size:14px;color:var(--sp-mint-2)}
.sp-foot-addr{display:flex;gap:8px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--sp-mint)}
.sp-foot-addr svg{flex-shrink:0;margin-top:2px}
.sp-foot-bottom{align-items:center}
.sp-foot-socs{display:flex;gap:8px}
.sp .sp-foot-soc{width:40px;height:40px;border-radius:999px;background:var(--sp-forest-2);color:#fff;display:flex;align-items:center;justify-content:center}
.sp .sp-foot-soc:hover{background:var(--sp-forest-3);color:#fff}
.sp-foot-compact{padding:28px 0}
.sp-foot-compact .sp-foot-bottom{margin-top:0;padding-top:0;border-top:0}
.sp-foot-legal{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px}
.sp .sp-foot-legal a{font-size:14px}

/* =====================================================================
   /mudar · pedido
   ===================================================================== */
.sp-steps{padding-top:32px;display:flex;align-items:center;gap:14px}
.sp-step{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;font:500 16px var(--sp-b);color:var(--sp-muted);cursor:default}
.sp-step.can{cursor:pointer}
.sp-step-n{width:32px;height:32px;border-radius:999px;background:#fff;border:1.5px solid var(--sp-field);color:var(--sp-muted);display:flex;align-items:center;justify-content:center;font:800 15px var(--sp-h);flex-shrink:0}
.sp-step.done,.sp-step.cur{color:var(--sp-forest)}
.sp-step.cur{font-weight:600}
.sp-step.done .sp-step-n{background:var(--sp-green);border:0;color:#fff}
.sp-step.cur .sp-step-n{background:var(--sp-forest);border:0;color:#fff}
.sp-step-line{flex-grow:1;height:2px;background:var(--sp-line)}
.sp-step-line.done{background:var(--sp-green)}
.sp-mprog{display:none}
.sp-pedido{padding-top:32px;padding-bottom:64px;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.sp-p-main{display:flex;flex-direction:column;gap:24px;min-width:0}
.sp-p-step{display:flex;flex-direction:column;gap:24px}
.sp-p-head{display:flex;flex-direction:column;gap:8px}
.sp-h1p{font:800 40px/1.15 var(--sp-h);letter-spacing:-1px;color:var(--sp-forest)}
.sp-p-head p{font-size:18px;color:var(--sp-ink-2)}
.sp-resume{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 16px;border-radius:var(--sp-r1);background:var(--sp-green-bg);color:var(--sp-forest);font-size:15px}
.sp-resume .sp-linkbtn{font-size:15px;margin-left:auto}
.sp-hint{display:flex;gap:8px;align-items:center;font-size:15px;color:var(--sp-muted)}
.sp-loc{font-size:15px;color:var(--sp-green);display:flex;gap:6px;align-items:center;min-height:22px}
.sp-loc.bad{color:var(--sp-muted)}
.sp-addr{display:grid;grid-template-columns:200px 200px minmax(0,1fr);gap:14px}

/* lista de serviços (passo 2) */
.sp-svc-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sp-svc-item{display:flex;align-items:center;gap:14px;padding:16px;border-radius:16px;border:1px solid var(--sp-line);background:#fff;cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%}
.sp-svc-item.on{border:2px solid var(--sp-green);padding:15px}
.sp-svc-item[disabled]{opacity:.6;cursor:default}
.sp-ico44{width:44px;height:44px;border-radius:12px;background:var(--sp-cream);color:var(--sp-orange-d);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sp-svc-item-t{display:flex;flex-direction:column;gap:2px;flex-grow:1;min-width:0}
.sp-svc-item-t b{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-svc-item-t small{font-size:14px;color:var(--sp-muted)}
.sp-box{width:28px;height:28px;border-radius:8px;border:1.5px solid var(--sp-field);background:#fff;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}
.sp-svc-item.on .sp-box{background:var(--sp-green);border-color:var(--sp-green)}

/* separadores e planos (passo 3) */
.sp-tabs{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sp-tab{height:44px;padding:0 18px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;font:600 16px var(--sp-b);background:#fff;color:var(--sp-ink-2);border:1px solid var(--sp-line);cursor:pointer}
.sp-tab.on{background:var(--sp-forest);color:#fff;border-color:var(--sp-forest)}
.sp-tab .ok{display:inline-flex;width:18px;height:18px;border-radius:999px;background:var(--sp-green);color:#fff;align-items:center;justify-content:center}
.sp-tab.on .ok{background:var(--sp-orange);color:var(--sp-ink)}
.sp-tune-link{margin-left:auto;display:flex;gap:8px;align-items:center;font:600 16px var(--sp-b);color:var(--sp-green);background:none;border:0;cursor:pointer;padding:0}
.sp-tune{padding:20px 22px;display:flex;flex-direction:column;gap:16px}
.sp-tune-f{display:flex;flex-direction:column;gap:8px}
.sp-tune-f>span{font-size:15px;font-weight:500;color:var(--sp-ink-2)}
.sp-chips{display:flex;flex-wrap:wrap;gap:8px}
.sp-chips .sp-pill{height:38px;font-size:15px}
.sp-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp-plan{padding:24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.sp-plan.sel{border:2px solid var(--sp-green);padding:23px}
.sp-plan-h{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:26px}
.sp-plan-sup{font:700 15px var(--sp-h);color:var(--sp-muted);text-transform:uppercase;letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis}
.sp-plan-badge{padding:4px 10px;border-radius:999px;background:var(--sp-forest);color:var(--sp-orange);font-size:13px;font-weight:700;white-space:nowrap}
.sp-plan-n{font:800 22px/1.2 var(--sp-h);color:var(--sp-forest);overflow-wrap:anywhere}
.sp-plan-p{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.sp-plan-p b{font:800 36px/1 var(--sp-h);color:var(--sp-forest);font-variant-numeric:lining-nums;letter-spacing:-.5px;white-space:nowrap}
.sp-plan-p b small{font-size:24px}
.sp-plan-p span{font-size:15px;color:var(--sp-muted);white-space:nowrap}
.sp-plan-y{font-size:15px;color:var(--sp-muted)}
.sp-plan-f{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--sp-line-2);flex-grow:1}
.sp-plan-f div{display:flex;gap:8px;align-items:flex-start;font-size:15px;line-height:1.4;color:var(--sp-ink-2)}
.sp-plan-f svg{color:var(--sp-green);flex-shrink:0;margin-top:1px}
.sp-plan-b{height:48px;border-radius:999px;border:1.5px solid var(--sp-mint);background:#fff;color:var(--sp-forest);font:600 16px var(--sp-b);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;width:100%}
.sp-plan.sel .sp-plan-b{background:var(--sp-green);border-color:var(--sp-green);color:#fff}
.sp-plans-msg{grid-column:1/-1;padding:28px;text-align:center;color:var(--sp-ink-2);font-size:16px;display:flex;flex-direction:column;align-items:center;gap:12px}
.sp-spin{width:28px;height:28px;border-radius:999px;border:3px solid var(--sp-line);border-top-color:var(--sp-green);animation:spspin .8s linear infinite}
@keyframes spspin{to{transform:rotate(360deg)}}
.sp-skel{min-height:360px;background:linear-gradient(90deg,#fff 0,#F6F3EA 50%,#fff 100%);background-size:200% 100%;animation:spsk 1.2s infinite}
@keyframes spsk{to{background-position:-200% 0}}
.sp-pick{display:flex;gap:12px;align-items:center;padding:16px 18px;border-radius:14px;background:#fff;border:1px dashed var(--sp-field);font-size:16px;color:var(--sp-ink-2)}
.sp-pick strong{color:var(--sp-ink)}
.sp-pick svg{flex-shrink:0;color:var(--sp-ink-2)}
.sp-pick .sp-linkbtn{margin-left:auto;white-space:nowrap}
.sp-pick.on{background:var(--sp-green-bg);border:1px solid var(--sp-green);color:var(--sp-forest)}
.sp-info{padding:28px;display:flex;gap:18px;align-items:flex-start}
.sp-info h3{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-info p{font-size:17px;line-height:1.55;color:var(--sp-ink-2);margin-top:6px}
.sp-alarm-h{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp-addons{display:flex;flex-wrap:wrap;gap:8px}
.sp-alarm-tot{display:flex;justify-content:space-between;align-items:baseline;padding:16px 20px;border-radius:16px;background:var(--sp-forest);color:var(--sp-mint)}
.sp-alarm-tot b{font:800 28px var(--sp-h);color:var(--sp-orange)}
.sp-p-nav{display:flex;justify-content:space-between;gap:12px}
.sp-p-nav .sp-btn-g{padding:0 28px}

/* dados (passo 4) */
.sp-form{padding:28px;display:flex;flex-direction:column;gap:16px}
.sp-consent{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--sp-r1);background:var(--sp-bg);font-size:15px;line-height:1.5;color:var(--sp-ink-2);cursor:pointer}
.sp-consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--sp-green);flex-shrink:0}

/* resumo */
.sp-sum{padding:26px;display:flex;flex-direction:column;gap:18px;position:sticky;top:24px}
.sp-sum-t{font:800 20px var(--sp-h);color:var(--sp-forest)}
.sp-sum-row{display:flex;gap:12px;align-items:flex-start}
.sp-ico36{width:36px;height:36px;border-radius:10px;background:var(--sp-cream);color:var(--sp-orange-d);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sp-sum-row>div{display:flex;flex-direction:column;gap:2px;flex-grow:1;min-width:0}
.sp-sum-l{font-size:15px;color:var(--sp-muted)}
.sp-sum-v{font-size:16px;font-weight:600;color:var(--sp-ink);overflow-wrap:anywhere}
.sp-sum-v.soft{color:var(--sp-muted);font-weight:500}
.sp-sum-s{font-size:14px;color:var(--sp-muted)}
.sp-sum-tot{padding-top:16px;border-top:1px solid var(--sp-line-2);display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sp-sum-tot span{font-size:16px;color:var(--sp-ink-2)}
.sp-sum-tot b{font:800 28px var(--sp-h);color:var(--sp-forest)}
.sp-sum-note{font-size:14px;line-height:1.5;color:var(--sp-muted)}
.sp-overlay{position:fixed;inset:0;background:rgba(250,248,242,.8);display:flex;align-items:center;justify-content:center;z-index:50}

/* =====================================================================
   /mudar · pedido enviado
   ===================================================================== */
.sp-ok{padding-top:64px;padding-bottom:80px;display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:48px;align-items:start}
.sp-ok-main{display:flex;flex-direction:column;gap:28px;min-width:0}
.sp-okmark{width:64px;height:64px;border-radius:999px;background:var(--sp-green);color:#fff;display:flex;align-items:center;justify-content:center}
.sp-ok h1{font:800 52px/1.1 var(--sp-h);letter-spacing:-1.2px;color:var(--sp-forest)}
.sp-ok-lede{font-size:20px;line-height:1.55;color:var(--sp-ink-2);max-width:640px;margin-top:12px}
.sp-refchip{display:inline-flex;align-self:flex-start;gap:10px;align-items:center;padding:10px 16px;border-radius:var(--sp-r1);background:#fff;border:1px solid var(--sp-line);font-size:16px;color:var(--sp-ink-2)}
.sp-refchip strong{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-tl{padding:28px;display:flex;flex-direction:column;gap:20px}
.sp-tl-t{font:800 20px var(--sp-h);color:var(--sp-forest)}
.sp-tl-i{display:flex;gap:16px;align-items:flex-start}
.sp-tl-dot{width:40px;height:40px;flex-shrink:0;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#fff;color:var(--sp-muted);border:1.5px solid var(--sp-field)}
.sp-tl-dot.done{background:var(--sp-green);color:#fff;border:0}
.sp-tl-dot.cur{background:var(--sp-orange);color:var(--sp-ink);border:0}
.sp-tl-i b{display:block;font:700 18px var(--sp-h);color:var(--sp-forest)}
.sp-tl-i span{font-size:15px;color:var(--sp-muted)}
.sp-ok-side{display:flex;flex-direction:column;gap:16px}
.sp-dark{padding:28px;border-radius:var(--sp-r2);background:var(--sp-forest);display:flex;flex-direction:column;gap:14px;color:var(--sp-mint)}
.sp-dark-t{font:800 26px/1.2 var(--sp-h);color:#fff}
.sp-dark p{font-size:16px;line-height:1.5;color:var(--sp-mint)}
.sp-dark .sp-field{color:var(--sp-mint)}
.sp-pwwrap{position:relative}
.sp-pwwrap .sp-input{padding-right:90px}
.sp-pwwrap button{position:absolute;right:8px;top:9px;height:32px;padding:0 10px;border:0;border-radius:8px;background:var(--sp-bg);color:var(--sp-forest);font:600 14px var(--sp-b);cursor:pointer}
.sp-okcl{padding:24px;display:flex;flex-direction:column;gap:12px}
.sp-okcl-t{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-okcl p{font-size:16px;color:var(--sp-ink-2)}
.sp-btnrow{display:flex;flex-wrap:wrap;gap:10px}

/* =====================================================================
   /mudar · checklist
   ===================================================================== */
.sp-cl-hero .sp-hero-in{grid-template-columns:minmax(0,1fr) 440px;padding-top:64px;padding-bottom:64px}
.sp-cl-form{padding:28px;display:flex;flex-direction:column;gap:14px;color:var(--sp-ink)}
.sp-cl{padding-top:56px;padding-bottom:72px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}
.sp-cl-list{display:flex;flex-direction:column;gap:16px;min-width:0}
.sp-ms{padding:24px 26px;display:flex;flex-direction:column;gap:14px}
.sp-ms-h{display:flex;align-items:center;gap:14px}
.sp-ms-h h2{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-ms-d{margin-left:auto;font-size:15px;font-weight:600;color:var(--sp-orange-d);white-space:nowrap}
.sp-ms-tasks{display:flex;flex-direction:column}
.sp-mt{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--sp-line-2);cursor:pointer}
.sp-mt input{position:absolute;opacity:0;pointer-events:none}
.sp-mt .sp-chk{margin-top:2px}
.sp-mt input:checked+.sp-chk{background:var(--sp-green);border-color:var(--sp-green)}
.sp-mt input:focus-visible+.sp-chk{outline:3px solid var(--sp-orange);outline-offset:2px}
.sp-mt-b{display:flex;flex-direction:column;gap:2px;min-width:0;flex-grow:1}
.sp-mt-b b{font-weight:600;color:var(--sp-ink);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sp-mt-b small{font-size:15px;color:var(--sp-muted);line-height:1.45}
.sp-mt input:checked~.sp-mt-b b{color:var(--sp-muted);text-decoration:line-through}
.sp-cl-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:24px}
.sp-cl-prog{padding:24px;display:flex;flex-direction:column;gap:12px}

/* páginas legais */
.sp-legal{padding-top:64px;padding-bottom:96px;max-width:1240px}
.sp-legal .sp-card{padding:40px;display:flex;flex-direction:column;gap:16px}
.sp-legal p,.sp-legal li{font-size:17px;line-height:1.6;color:var(--sp-ink-2)}
.sp-legal p{margin:0}
.sp-legal-upd{margin:10px 0 0!important;font-size:15px!important;color:var(--sp-muted)!important}
.sp-legal .sp-alert{margin-top:20px}
.sp-legal-g{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:start;margin-top:32px}
.sp-legal-toc{position:sticky;top:24px;display:flex;flex-direction:column;gap:2px;font-size:15px}
.sp-legal-toc b{font:800 13px var(--sp-h);letter-spacing:1.2px;text-transform:uppercase;color:var(--sp-orange-d);margin-bottom:8px}
.sp-legal-toc a{padding:6px 0;color:var(--sp-ink-2);line-height:1.35}
.sp-legal-toc a:hover{color:var(--sp-green)}
.sp-legal-oth{display:flex;flex-direction:column;gap:2px;margin-top:16px;padding-top:16px;border-top:1px solid var(--sp-line)}
.sp-legal-oth a{color:var(--sp-green);font-weight:600}
.sp-legal-doc section{display:flex;flex-direction:column;gap:12px;padding-top:24px;border-top:1px solid var(--sp-line-2);scroll-margin-top:24px}
.sp-legal-doc h2{font-size:22px;color:var(--sp-forest)}
.sp-legal-doc ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.sp-legal-doc a{text-decoration:underline;text-underline-offset:2px}
.sp-legal-doc code{font:600 14px ui-monospace,Menlo,monospace;background:var(--sp-bg);padding:1px 6px;border-radius:6px;white-space:nowrap}
.sp-ltable{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.sp-ltable th{text-align:left;font:700 13px var(--sp-h);letter-spacing:.4px;color:var(--sp-forest);background:var(--sp-green-bg);padding:10px 14px}
.sp-ltable td{padding:12px 14px;border-bottom:1px solid var(--sp-line-2);vertical-align:top;color:var(--sp-ink-2)}

/* =====================================================================
   /parceiros
   ===================================================================== */
.sp-ph-in{padding-top:80px;padding-bottom:88px;grid-template-columns:minmax(0,1fr) 520px}
.sp-ph-in .sp-h1{font-size:68px;line-height:1.02;letter-spacing:-1.6px}
.sp-ph-in .sp-lede{max-width:580px}
.sp-hero-btns{display:flex;flex-wrap:wrap;gap:12px}
.sp-mlogin{display:none}
.sp-calc{padding:28px;display:flex;flex-direction:column;gap:18px;color:var(--sp-ink)}
.sp-calc-t{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-calc-s{font-size:15px;color:var(--sp-muted);margin-top:4px}
.sp-calc-row{display:flex;justify-content:space-between;gap:12px;font-size:16px;color:var(--sp-ink-2)}
.sp-calc-row strong{color:var(--sp-forest)}
.sp-calc input[type=range]{width:100%;accent-color:var(--sp-green);margin:8px 0 0}
.sp-calc-lines{display:flex;flex-direction:column;gap:8px}
.sp-calc-tot{padding:18px 20px;border-radius:16px;background:var(--sp-forest);display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sp-calc-tot span{font-size:16px;color:var(--sp-mint)}
.sp-calc-tot b{font:800 40px var(--sp-h);color:var(--sp-orange);font-variant-numeric:lining-nums}
.sp-calc-n{font-size:14px;color:var(--sp-muted)}
.sp-who{padding-bottom:72px;display:flex;flex-direction:column;gap:40px}
.sp-who-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sp-who-c{padding:26px;display:flex;flex-direction:column;gap:12px}
.sp-who-c h3{font:800 22px/1.2 var(--sp-h);color:var(--sp-forest)}
.sp-who-c p{font-size:16px;line-height:1.5;color:var(--sp-ink-2)}
.sp-com{padding-top:24px;padding-bottom:96px;display:grid;grid-template-columns:440px minmax(0,1fr);gap:64px;align-items:start}
.sp-com-h{display:flex;flex-direction:column;gap:16px}
.sp-com-h p{font-size:17px;line-height:1.55;color:var(--sp-ink-2)}
.sp-cattabs{display:flex;flex-wrap:wrap;gap:8px}
.sp-cattab{height:40px;padding:0 16px;border-radius:999px;display:flex;align-items:center;font:600 15px var(--sp-b);background:#fff;color:var(--sp-ink-2);border:1px solid var(--sp-line);cursor:pointer}
.sp-cattab.on{background:var(--sp-forest);color:#fff;border-color:var(--sp-forest)}
.sp-rates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sp-rate{padding:18px 20px;border-radius:16px;background:#fff;border:1px solid var(--sp-line);display:flex;align-items:center;gap:14px}
.sp-rate .sp-ico40{width:40px;height:40px;border-radius:10px;background:var(--sp-cream);color:var(--sp-orange-d);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sp-rate-t{display:flex;flex-direction:column;flex-grow:1;min-width:0}
.sp-rate-t b{font-size:16px;font-weight:600;color:var(--sp-ink)}
.sp-rate-t span{font-size:14px;color:var(--sp-muted)}
.sp-rate-v{font:800 26px var(--sp-h);color:var(--sp-forest);font-variant-numeric:lining-nums;white-space:nowrap}
.sp-rate.hl{background:var(--sp-orange);border-color:var(--sp-orange)}
.sp-rate.hl .sp-ico40{background:#fff;color:var(--sp-forest)}
.sp-rate.hl .sp-rate-t b{color:var(--sp-ink)}
.sp-rate.hl .sp-rate-t span{color:var(--sp-brown-2)}
.sp-dsec{background:var(--sp-forest)}
.sp-dsec-in{padding-top:80px;padding-bottom:80px;display:flex;flex-direction:column;gap:48px}
.sp-dsec .sp-h2{color:#fff}
.sp-steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
.sp-step4{display:flex;flex-direction:column;gap:14px}
.sp-step4-h{display:flex;align-items:center;gap:12px}
.sp-step4-i{width:48px;height:48px;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);display:flex;align-items:center;justify-content:center}
.sp-step4-n{font:800 14px var(--sp-h);color:var(--sp-green-soft)}
.sp-step4 h3{font:800 22px var(--sp-h);color:#fff}
.sp-step4 p{font-size:16px;line-height:1.55;color:var(--sp-mint)}
.sp-gets{display:flex;flex-direction:column;gap:44px}
.sp-gets-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 48px}
.sp-get{display:flex;gap:16px;align-items:flex-start}
.sp-ico44.sq{width:44px;height:44px}
.sp-get h3{font:800 19px var(--sp-h);color:var(--sp-forest)}
.sp-get p{font-size:16px;line-height:1.5;color:var(--sp-ink-2);margin-top:4px}
.sp-mrates{display:none}

/* registo */
.sp-reg{padding-top:56px;padding-bottom:80px;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:48px;align-items:start}
.sp-reg-form{padding:36px;display:flex;flex-direction:column;gap:26px;min-width:0}
.sp-reg-form .sp-h1p{font-size:40px}
.sp-reg-form>div>p{font-size:17px;color:var(--sp-ink-2);margin-top:8px}
.sp-reg-sec{display:flex;flex-direction:column;gap:12px}
.sp-reg-sec-t{font:800 16px var(--sp-h);color:var(--sp-forest)}
.sp-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sp-type{min-height:76px;padding:10px 16px;border-radius:14px;border:1px solid var(--sp-field);background:#fff;display:flex;align-items:center;gap:12px;font:600 16px/1.35 var(--sp-b);color:var(--sp-forest);text-align:left;cursor:pointer;position:relative}
.sp-type input{position:absolute;opacity:0;pointer-events:none}
.sp-type svg{color:var(--sp-green);flex-shrink:0}
.sp-type:has(input:checked),.sp-type.on{border:2px solid var(--sp-green);background:var(--sp-green-bg);padding:9px 15px}
.sp-type:has(input:focus-visible){outline:3px solid var(--sp-orange);outline-offset:2px}
.sp-reg-note{font-size:14px;color:var(--sp-muted)}
.sp-reg-go{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.sp-reg-go>span{display:flex;gap:8px;align-items:center;font-size:15px;color:var(--sp-muted)}
.sp-reg-side{display:flex;flex-direction:column;gap:16px}
.sp-after{gap:18px}
.sp-after-t{font:800 20px var(--sp-h);color:#fff}
.sp-after-i{display:flex;gap:12px;color:var(--sp-mint);font-size:16px;line-height:1.5}
.sp-after-i svg{color:var(--sp-orange);flex-shrink:0;margin-top:2px}
.sp-after-i strong{color:#fff;font-weight:600}
.sp-vals{padding:24px;display:flex;flex-direction:column;gap:10px}
.sp-vals-t{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-vals-r{display:flex;justify-content:space-between;gap:12px;font-size:16px;color:var(--sp-ink-2)}
.sp-vals-r strong{color:var(--sp-forest);font-weight:600;text-align:right}

/* =====================================================================
   Responsivo
   ===================================================================== */
@media (max-width:1280px){
  :root{--sp-pad:48px}
  .sp-nav{gap:20px;margin-left:8px}
  .sp-h1{font-size:56px}
  .sp-ph-in .sp-h1{font-size:58px}
  .sp-ph-in{grid-template-columns:minmax(0,1fr) 460px}
  .sp-faqsec{grid-template-columns:340px minmax(0,1fr);gap:48px}
  .sp-com{grid-template-columns:360px minmax(0,1fr);gap:40px}
  .sp-addr{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-addr .sp-field:last-child{grid-column:1/-1}
}
@media (max-width:1100px){
  .sp-nav{display:none}
  .sp-hero-in,.sp-ph-in,.sp-cl-hero .sp-hero-in{grid-template-columns:minmax(0,1fr);gap:40px}
  .sp-pedido,.sp-ok,.sp-reg,.sp-cl{grid-template-columns:minmax(0,1fr)}
  .sp-sum,.sp-cl-side{position:static}
  .sp-plans{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
  .sp-foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sp-foot-brand{grid-column:1/-1}
  .sp-who-grid,.sp-steps4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-com,.sp-faqsec{grid-template-columns:minmax(0,1fr)}
  .sp-clband{grid-template-columns:minmax(0,1fr);padding:44px}
  .sp-svc-head{flex-direction:column;align-items:flex-start;gap:12px}
  .sp-gets-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .sp-top-r{display:none}
  .sp-round{display:flex}
  .sp-steps{display:none}
  .sp-mprog{display:flex;flex-direction:column;gap:10px;padding-top:16px}
  .sp-mprog-h{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:var(--sp-ink-2)}
  .sp-mprog .sp-bar{height:6px}
  .sp-svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-types{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-alarm-h{grid-template-columns:minmax(0,1fr)}
  .sp-brands-in{flex-direction:column;align-items:flex-start;gap:12px}
  .sp-brands-list{gap:8px 24px}
  .sp-brands-list span{font-size:17px}
  /* pedido: botões fixos em baixo (mockup MudarTelemovel) */
  body.sp-pedido-page{padding-bottom:88px}
  .sp-p-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--sp-line);padding:14px 16px calc(14px + env(safe-area-inset-bottom));gap:10px}
  .sp-p-nav .sp-btn{height:52px}
  .sp-p-nav .sp-btn-g{padding:0 18px}
  .sp-p-nav .sp-btn-o{flex-grow:1}
  .sp-p-nav .sp-btn-back-ico{display:none}
}
@media (max-width:640px){
  :root{--sp-pad:20px}
  .sp-top-in{height:60px;gap:10px;padding-left:16px;padding-right:16px}
  .sp-brand{gap:10px}
  .sp-brand img{height:22px}
  .sp-tag{font-size:11px;padding:3px 8px;letter-spacing:.5px}
  .sp-hero-in{padding-top:32px;padding-bottom:32px;gap:28px}
  .sp-ph-in{padding-top:32px;padding-bottom:28px}
  .sp-h1,.sp-ph-in .sp-h1{font-size:40px;line-height:1.05;letter-spacing:-1px}
  .sp-lede{font-size:17px}
  .sp-trust{gap:10px 18px;font-size:15px}
  .sp-start,.sp-calc{padding:22px}
  .sp-start-t{font-size:22px}
  .sp-grid2{grid-template-columns:minmax(0,1fr)}
  .sp-h2,.sp-h2.sm{font-size:32px}
  .sp-sec{padding-top:56px;padding-bottom:40px}
  .sp-steps3{grid-template-columns:minmax(0,1fr);gap:28px}
  .sp-svc-sec{padding-bottom:56px;gap:28px}
  .sp-svc-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .sp-svc{padding:20px}
  .sp-clband{padding:28px 22px;border-radius:var(--sp-r2);gap:28px}
  .sp-clband h2{font-size:30px}
  .sp-clband-btns .sp-btn{flex-grow:1}
  .sp-faqsec{padding-top:56px;padding-bottom:56px;gap:20px}
  .sp-faq summary{font-size:18px}
  .sp-band{flex-direction:column;align-items:stretch;padding:28px 22px;margin-bottom:56px;border-radius:var(--sp-r2)}
  .sp-band-t{font-size:26px}
  .sp-foot{padding:28px 0}
  .sp-foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
  .sp-foot-brand img{height:24px}
  .sp .sp-foot-col a{font-size:15px}
  .sp-foot-bottom{flex-direction:column;align-items:flex-start;margin-top:28px;font-size:13px}
  .sp-pedido{padding-top:20px;padding-bottom:32px;gap:24px}
  .sp-h1p{font-size:30px}
  .sp-p-head p{font-size:16px}
  .sp-svc-list{grid-template-columns:minmax(0,1fr)}
  .sp-addr{grid-template-columns:minmax(0,1fr)}
  .sp-pick{flex-wrap:wrap}
  .sp-pick .sp-linkbtn{margin-left:32px}
  .sp-plans{grid-template-columns:minmax(0,1fr)}
  .sp-tabs{gap:8px}
  .sp-tab{height:40px;padding:0 14px;font-size:15px}
  .sp-tune-link{margin-left:0;width:100%}
  .sp-form,.sp-sum{padding:20px}
  .sp-ok{padding-top:32px;padding-bottom:48px;gap:28px}
  .sp-ok h1{font-size:36px}
  .sp-ok-lede{font-size:17px}
  .sp-dark{padding:22px}
  .sp-dark-t{font-size:22px}
  .sp-tl{padding:22px}
  .sp-who{padding-bottom:40px;gap:24px}
  .sp-who-grid,.sp-steps4,.sp-gets-grid,.sp-rates{grid-template-columns:minmax(0,1fr)}
  .sp-com{padding-bottom:56px}
  .sp-dsec-in{padding-top:56px;padding-bottom:56px;gap:32px}
  .sp-gets{gap:28px}
  .sp-hero-btns .sp-btn{width:100%}
  .sp-ph .sp-hero-btns .sp-btn-g{display:none}
  .sp-mlogin{display:block;text-align:center;font-size:16px;font-weight:600}
  .sp .sp-mlogin{color:#fff}
  .sp-reg{padding-top:24px;padding-bottom:48px;gap:24px}
  .sp-reg-form{padding:22px;gap:22px}
  .sp-reg-form .sp-h1p{font-size:30px}
  .sp-types{gap:8px}
  .sp-type{min-height:64px;font-size:15px;padding:8px 12px}
  .sp-type:has(input:checked){padding:7px 11px}
  .sp-reg-go .sp-btn{width:100%}
  .sp-cl{padding-top:28px}
  .sp-ms{padding:20px}
  .sp-ms-h{flex-wrap:wrap}
  .sp-ms-d{margin-left:58px}
  .sp-legal .sp-card{padding:22px}
  .sp-legal-g{grid-template-columns:1fr;gap:20px;margin-top:20px}
  .sp-legal-toc{position:static;padding:16px 20px;border-radius:var(--sp-r1);background:#fff;border:1px solid var(--sp-line)}
  .sp-ltable thead{display:none}
  .sp-ltable tr{display:block;padding:10px 0;border-bottom:1px solid var(--sp-line-2)}
  .sp-ltable td{display:block;padding:2px 0;border:0}
  .sp-ltable td:first-child{font-weight:600;color:var(--sp-ink)}
}

/* =====================================================================
   Site institucional (/, /empresas, /particulares, serviços, /sobre, /contactos, /conteudos)
   Mockups SiteInicio, SiteEmpresas, SiteParticulares, SiteServico, SiteSobre, SiteContactos,
   SiteConteudos, SiteArtigo, SiteInicioTelemovel. Componentes em environe_app/src/site/_site.php.
   ===================================================================== */
.sp-anchor{display:block;position:relative;top:-16px;height:0}
.sp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.sp-nowrap{white-space:nowrap}
.sp-center{display:flex;justify-content:center}
.sp-note{font-size:15px;line-height:1.5;color:var(--sp-muted)}
.sp-p{font-size:17px;line-height:1.55;color:var(--sp-ink-2)}
.sp-stack{display:flex;flex-direction:column;gap:10px}
.sp-sec2{padding-top:96px;padding-bottom:88px}
.sp-sec3{padding-top:88px;padding-bottom:88px;display:flex;flex-direction:column;gap:40px}
.sp-sec2>.sp-sh,.sp-sec2>.sp-sh-row{margin-bottom:40px}
.sp-sec-b{padding-bottom:96px}
.sp-sec-b>.sp-sh{margin-bottom:40px}
.sp-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.sp-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp-g2-top{align-items:start}
.sp-g2.sp-sec2{gap:40px}
.sp-pad40{padding:40px;display:flex;flex-direction:column;gap:14px;border-radius:var(--sp-r3)}
.sp-btn-block{width:100%}

/* cabeçalho principal */
.sp-top-site .sp-top-in{gap:40px}
.sp-top-site .sp-nav{margin-left:0;gap:28px;align-items:center}
.sp .sp-top-site .sp-nav>a,.sp-dd-b{padding:6px 0;font:500 16px var(--sp-b);color:var(--sp-mint);border-bottom:2px solid transparent;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.sp .sp-top-site .sp-nav>a:hover,.sp-dd-b:hover{color:#fff}
.sp .sp-top-site .sp-nav>a.on,.sp-dd.on .sp-dd-b{color:#fff;font-weight:600;border-bottom-color:var(--sp-orange)}
.sp-dd{position:relative}
.sp-dd-m{position:absolute;top:calc(100% + 10px);left:-16px;min-width:260px;padding:8px;border-radius:16px;background:#fff;border:1px solid var(--sp-line);box-shadow:0 16px 40px rgba(13,58,34,.18);display:none;flex-direction:column;z-index:40}
.sp-dd-m::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.sp-dd:hover .sp-dd-m,.sp-dd:focus-within .sp-dd-m,.sp-dd.open .sp-dd-m{display:flex}
.sp .sp-dd-m a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;color:var(--sp-forest);font:600 16px var(--sp-b)}
.sp .sp-dd-m a svg{color:var(--sp-orange-d)}
.sp .sp-dd-m a:hover{background:var(--sp-bg)}
.sp-top-site .sp-top-r{gap:20px}
.sp .sp-top-site .sp-login{display:inline-flex;align-items:center;gap:8px}
.sp-mh{display:none;margin-left:auto;align-items:center;gap:8px}
.sp-mh .sp-round{display:flex;margin-left:0}
.sp .sp-mh-cta{height:40px;padding:0 14px;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);display:flex;align-items:center;font-size:15px;font-weight:600}
.sp .sp-drawer-site a,.sp-drawer-dd summary{height:52px;padding:0 4px;border-bottom:1px solid var(--sp-forest-3);display:flex;align-items:center;justify-content:space-between;font:700 19px var(--sp-h);color:#fff}
.sp .sp-drawer-site a svg,.sp-drawer-dd summary svg{color:var(--sp-green-soft)}
.sp .sp-drawer-site a.on{color:var(--sp-orange)}
.sp-drawer-dd summary{list-style:none;cursor:pointer}
.sp-drawer-dd summary::-webkit-details-marker{display:none}
.sp-drawer-dd[open] summary svg{transform:rotate(180deg)}
.sp .sp-drawer-dd>div a{height:46px;padding-left:12px;font:600 17px var(--sp-b);justify-content:flex-start;gap:10px}
.sp .sp-drawer-dd>div a svg{color:var(--sp-orange)}
.sp-drawer-login{margin-top:18px;height:50px}
.sp .sp-drawer-tel{margin-top:14px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:16px;color:var(--sp-mint)}

/* migalhas, pílulas, cabeçalhos de secção */
.sp-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;color:var(--sp-mint-2)}
.sp .sp-crumbs a{color:var(--sp-mint-2)}
.sp .sp-crumbs a:hover{color:#fff}
.sp-crumbs svg{flex-shrink:0}
.sp-crumbs span[aria-current]{color:#fff;font-weight:600}
.sp-crumbs.light,.sp .sp-crumbs.light a{color:var(--sp-muted)}
.sp-crumbs.light span[aria-current]{color:var(--sp-forest)}
.sp-pillhead svg{flex-shrink:0}
.sp-sh{display:flex;flex-direction:column;gap:12px}
.sp-sh>p{font-size:18px;line-height:1.55;color:var(--sp-ink-2);max-width:720px}
.sp-sh.dark .sp-h2{color:#fff}
.sp-sh.dark>p{color:var(--sp-mint)}
.sp-sh .sp-h2{max-width:900px}
.sp-sh-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.sp-sh-r{display:flex;gap:20px;flex-shrink:0;flex-wrap:wrap}
.sp-h2.s32{font-size:32px;letter-spacing:-.6px;line-height:1.15}
.sp-h2.s36{font-size:36px;letter-spacing:-.8px;line-height:1.15}
.sp-h2.s40{font-size:40px;line-height:1.1}
.sp-h2.s44{font-size:44px;line-height:1.1}
.sp-h1.s60{font-size:60px;line-height:1.05;letter-spacing:-1.4px}
.sp-h3{font:800 24px/1.25 var(--sp-h);color:var(--sp-forest);margin:0}
.sp .sp-la{display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:600;color:var(--sp-green)}
.sp .sp-la:hover{color:var(--sp-forest)}
.sp-icb{width:52px;height:52px;flex-shrink:0;border-radius:14px;background:var(--sp-cream);color:var(--sp-orange-d);display:inline-flex;align-items:center;justify-content:center}
.sp-icb.sm{width:44px;height:44px;border-radius:12px}
.sp-icb.sm svg{width:20px;height:20px}
.sp-icb.gr{background:var(--sp-green-bg);color:var(--sp-green)}
.sp-icb.dk{background:var(--sp-forest-2);color:var(--sp-orange)}
.sp-icb.wh{background:#fff}
.sp-icb.or{background:var(--sp-orange);color:var(--sp-forest)}
.sp-icb.big{width:72px;height:72px;border-radius:20px}
.sp-cks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sp-ck{display:flex;gap:10px;align-items:flex-start;font-size:17px;line-height:1.5;color:var(--sp-ink-2)}
.sp-ck svg{flex-shrink:0;margin-top:2px;color:var(--sp-green)}
.sp-ck.dark{color:var(--sp-mint)}
.sp-ck.dark svg{color:var(--sp-orange)}
.sp-cks.sm .sp-ck{font-size:15px}
.sp-aud{display:inline-flex;align-self:flex-start;padding:4px 10px;border-radius:999px;background:var(--sp-line-2);color:var(--sp-ink-2);font-size:13px;font-weight:600;white-space:nowrap}
.sp-aud.gr{background:var(--sp-green-bg);color:var(--sp-green)}
.sp-aud.or{background:var(--sp-cream);color:var(--sp-orange-d)}

/* fotografias (ou bloco gráfico quando ainda não há fotografia) */
.sp-photo{display:block;width:100%;object-fit:cover;border-radius:var(--sp-r2);background:var(--sp-green-bg)}
.sp-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--sp-green);background:linear-gradient(135deg,#E6F2EA 0%,#D6EADD 100%);min-height:120px;text-align:center;padding:16px}
.sp-ph svg{opacity:.8}
.sp-ph small{font-size:12px;font-weight:600;color:var(--sp-orange-d);background:var(--sp-cream);padding:2px 8px;border-radius:6px}
.sp-photo.r28{border-radius:var(--sp-r3)}
.sp-photo.h420{height:420px}
.sp-photo.h360{height:360px}
.sp-photo.h240{height:240px;border-radius:0}

/* marcas */
.sp-brandsec{border-top:1px solid var(--sp-line);border-bottom:1px solid var(--sp-line)}
.sp-brandsec.white{background:#fff}
.sp-brandsec.plain{border:0}
.sp-brandsec-in{padding-top:80px;padding-bottom:80px;display:grid;grid-template-columns:420px minmax(0,1fr);gap:64px;align-items:center}
.sp-brandsec .sp-sh>p{font-size:17px}
.sp-bchips{display:flex;flex-wrap:wrap;gap:12px}
.sp-bchip{height:52px;padding:0 22px;border-radius:999px;border:1px solid var(--sp-line);background:var(--sp-bg);display:inline-flex;align-items:center;font:700 18px var(--sp-h);color:var(--sp-ink-2)}
.sp-brandsec.white .sp-bchip{background:var(--sp-bg)}
.sp-brandsec.plain .sp-bchip{background:#fff}
.sp-bchip.logo{background:#fff}
.sp-bchip.logo img{height:28px;width:auto;max-width:120px;object-fit:contain;filter:grayscale(1);opacity:.75;transition:filter .2s,opacity .2s}
.sp-bchip.logo:hover img{filter:none;opacity:1}

/* números */
.sp-nums{background:#fff;border-bottom:1px solid var(--sp-line)}
.sp-nums-in{padding-top:44px;padding-bottom:44px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.sp-nums.n4 .sp-nums-in{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:32px;padding-bottom:32px}
.sp-num-c{display:flex;flex-direction:column;gap:6px;padding:0 20px}
.sp-num-c+.sp-num-c{border-left:1px solid var(--sp-line)}
.sp-num-c:first-child{padding-left:0}
.sp-num-c b{font:800 48px/1 var(--sp-h);letter-spacing:-1px;color:var(--sp-forest);font-variant-numeric:lining-nums}
.sp-nums.n4 .sp-num-c b{font-size:40px}
.sp-num-c span{font-size:16px;line-height:1.4;color:var(--sp-ink-2)}

/* cartões de serviço */
.sp-svcc{padding:28px;display:flex;flex-direction:column;gap:14px;color:inherit;border-radius:var(--sp-r2);transition:border-color .15s,box-shadow .15s}
.sp a.sp-svcc{color:inherit}
.sp a.sp-svcc:hover,.sp a.sp-plat-c:hover,.sp a.sp-relc:hover,.sp a.sp-artc:hover,.sp a.sp-feat:hover,.sp a.sp-bigc:hover,.sp a.sp-socc:hover{border-color:var(--sp-green-soft);box-shadow:0 10px 30px rgba(13,58,34,.08);color:inherit}
.sp-svcc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.sp-svcc h3,.sp-plat-c h3,.sp-bigc h3{font:800 24px/1.2 var(--sp-h);color:var(--sp-forest)}
.sp-svcc p,.sp-plat-c p,.sp-bigc p{font-size:17px;line-height:1.5;color:var(--sp-ink-2);flex-grow:1}
.sp-svcc-f{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;border-top:1px solid var(--sp-line-2);font-size:14px;color:var(--sp-muted)}
.sp-svcc.dark{background:var(--sp-forest)}
.sp-svcc.dark h3{color:#fff}
.sp-svcc.dark p{color:var(--sp-mint)}
.sp-svcc.cream{background:var(--sp-cream);border:1px solid #F5D9A8}
.sp-svcc .sp-btn{align-self:flex-start}

/* como trabalhamos */
.sp-work{background:var(--sp-forest)}
.sp-work.joined{border-top:1px solid var(--sp-forest-3)}
.sp-work-in{padding-top:96px;padding-bottom:96px;display:flex;flex-direction:column;gap:48px}
.sp-work-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sp-work-c{display:flex;flex-direction:column;gap:16px;padding:32px;border-radius:var(--sp-r2);background:#134A2C}
.sp-work-h{display:flex;align-items:center;justify-content:space-between}
.sp-work-i{width:52px;height:52px;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);display:flex;align-items:center;justify-content:center}
.sp-work-n{font:800 40px var(--sp-h);color:#2F6B49}
.sp-work-c h3{font:800 26px var(--sp-h);color:#fff}
.sp-work-s{font:700 18px/1.35 var(--sp-h);color:#F5C46B}
.sp-work-c p{font-size:17px;line-height:1.6;color:var(--sp-mint)}

/* perguntas (versão do site) */
.sp-faqsec-h .sp-h2{font-size:44px;line-height:1.1}
.sp .sp-faqsec-h p a{color:var(--sp-green);font-weight:600}
.sp-band-b{display:flex;gap:12px;flex-shrink:0;flex-wrap:wrap}
.sp .sp-band .sp-btn-g{border-color:var(--sp-forest)}
.sp .sp-band p a{color:var(--sp-forest);font-weight:600}
.sp .sp-btn-g:hover{border-color:var(--sp-forest)}

/* artigos (cartões) */
.sp-artc{overflow:hidden;display:flex;flex-direction:column;color:inherit}
.sp a.sp-artc{color:inherit}
.sp-artc .sp-artc-ph{height:200px;border-radius:0}
.sp-artc-b{padding:24px;display:flex;flex-direction:column;gap:10px;flex-grow:1}
.sp-artc h3{font:800 21px/1.3 var(--sp-h);color:var(--sp-forest)}
.sp-artc p{font-size:16px;line-height:1.55;color:var(--sp-ink-2);flex-grow:1}
.sp-tagc{display:inline-flex;align-self:flex-start;padding:4px 10px;border-radius:999px;background:var(--sp-green-bg);color:var(--sp-green);font-size:13px;font-weight:600}
.sp-tagc.or{background:var(--sp-orange);color:var(--sp-ink);font-weight:700}
.sp-meta{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font-size:14px;color:var(--sp-muted)}
.sp-meta span{display:inline-flex;gap:6px;align-items:center}
.sp-arts .sp-more{display:none}
.sp-arts .sp-more.sp-show{display:flex}

/* formulários */
.sp-sform{display:flex;flex-direction:column;gap:16px;min-width:0}
.sp-sform.big{padding:40px;gap:18px;border-radius:var(--sp-r3)}
.sp-form-t{font:800 24px var(--sp-h);color:var(--sp-forest)}
.sp-sform.big .sp-form-t{font-size:28px}
.sp-ta{height:auto;min-height:110px;padding:12px 14px;resize:vertical;line-height:1.5}
.sp-sform .sp-consent{background:none;padding:0}
.sp-form-go{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.sp-sform>.sp-btn{align-self:stretch}
.sp-form-msg:not([hidden]){display:flex;gap:8px;align-items:center}
.sp-up{position:relative;min-height:88px;border-radius:14px;border:1.5px dashed #B9C9BE;background:var(--sp-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px;font-size:16px;color:var(--sp-ink-2);cursor:pointer;text-align:center}
.sp-up.big{min-height:120px;border-radius:16px;background:#fff}
.sp-up svg{color:var(--sp-green)}
.sp-up strong{color:var(--sp-forest);font-weight:600}
.sp-up small{font-size:14px;color:var(--sp-muted)}
.sp-up input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.sp-up:focus-within{outline:3px solid var(--sp-orange);outline-offset:2px}
.sp-up.has{border-style:solid;border-color:var(--sp-green);background:var(--sp-green-bg)}
.sp-formbox{background:var(--sp-bg);border:1px solid var(--sp-line);border-radius:var(--sp-r3);padding:32px;display:flex;flex-direction:column;gap:16px}
.sp-formbox .sp-up.big{background:#fff}

/* cartão do topo (simulador / caminhos / pedidos) */
.sp-hcard{border-radius:var(--sp-r3);padding:28px;display:flex;flex-direction:column;gap:22px;color:var(--sp-ink);min-width:0}
.sp-hcard-q{font-size:15px;font-weight:600;color:var(--sp-muted);margin-bottom:-12px}
.sp-hcard-alt{font-size:15px;color:var(--sp-ink-2)}
.sp .sp-hcard-alt a{font-weight:600}
.sp-tabs2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border-radius:999px;background:var(--sp-line-2)}
.sp-tabs2 button{height:48px;border:0;border-radius:999px;background:transparent;color:var(--sp-ink-2);font:600 16px var(--sp-b);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;padding:0 12px;white-space:nowrap}
.sp-tabs2 button.on{background:var(--sp-forest);color:#fff}
.sp-tabs2.sm{display:inline-grid}
.sp-tabs2.sm button{height:44px;padding:0 18px;font-size:15px}
.sp-tabp{display:flex;flex-direction:column;gap:18px;min-width:0}
.sp-sim{display:flex;flex-direction:column;gap:18px}
.sp-sim-h{display:flex;flex-direction:column;gap:4px}
.sp-sim-h h2{font:800 24px/1.25 var(--sp-h);color:var(--sp-forest)}
.sp-sim-h p{font-size:16px;color:var(--sp-muted)}
.sp-sim-u{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.sp-seg{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--sp-line-2)}
.sp-seg label{cursor:pointer}
.sp-seg span{display:block;padding:3px 12px;border-radius:999px;font-size:14px;font-weight:600;color:var(--sp-muted)}
.sp-seg input:checked+span{background:#fff;color:var(--sp-forest)}
.sp-seg input:focus-visible+span{outline:3px solid var(--sp-orange)}
.sp-sim-f{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;font-size:14px;color:var(--sp-muted)}
.sp-sim-f span{display:inline-flex;gap:6px;align-items:center}
.sp-sim .sp-btn{font-size:18px}
.sp-paths{display:flex;flex-direction:column;gap:12px}
.sp .sp-path{padding:18px;border-radius:16px;border:1px solid var(--sp-line);background:#fff;display:flex;gap:14px;align-items:center;color:inherit}
.sp .sp-path:hover{border-color:var(--sp-green-soft);color:inherit}
.sp-path>svg{flex-shrink:0;color:var(--sp-green)}
.sp-path-b{display:flex;flex-direction:column;gap:3px;flex-grow:1;min-width:0}
.sp-path-b b{font:800 19px var(--sp-h);color:var(--sp-forest)}
.sp-path-b span{font-size:15px;line-height:1.45;color:var(--sp-ink-2)}
.sp-path-b small{font-size:13px;font-weight:600;color:var(--sp-green)}
.sp .sp-callout{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:12px;background:var(--sp-cream);font-size:15px;color:var(--sp-brown)}
.sp-callout svg{flex-shrink:0}

/* topos (início e páginas) */
.sp-hh-in{padding-top:72px;padding-bottom:88px;display:grid;grid-template-columns:minmax(0,1fr) 560px;gap:64px;align-items:center}
.sp-hh-in .sp-hero-copy{gap:26px}
.sp-hh-in .sp-lede{max-width:600px}
.sp-hh-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding-top:10px;border-top:1px solid var(--sp-forest-3);font-size:15px;color:var(--sp-mint-2)}
.sp-hh-badges b{font:700 15px var(--sp-h);color:#fff}
.sp-hh-badges i{font-style:normal}
.sp-phero-in{padding-top:40px;padding-bottom:88px;display:flex;flex-direction:column;gap:40px}
.sp-phero-in.short{padding-bottom:72px;gap:32px}
.sp-phero-g{display:grid;grid-template-columns:minmax(0,1fr) 540px;gap:64px;align-items:center}
.sp-phero-g.w560{grid-template-columns:minmax(0,1fr) 560px}
.sp-phero-g.w600{grid-template-columns:minmax(0,1fr) 600px}
.sp-phero-g.w460{grid-template-columns:minmax(0,1fr) 460px}
.sp-phero-g.narrow{grid-template-columns:minmax(0,1fr) 420px}
.sp-phero-g.end{align-items:end}
.sp-hero-copy.narrow{max-width:820px;gap:18px}
.sp-phero .sp-lede{max-width:640px}
.sp-hero-alt{font-size:16px;color:var(--sp-mint-2)}
.sp .sp-hero-alt a{font-weight:600;color:var(--sp-orange)}
.sp-hero-box{padding:24px;border-radius:var(--sp-r2);background:#134A2C}
.sp-pathcards{margin-top:0}

/* início: plataformas e contacto */
.sp-plat{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:20px}
.sp-plat-cl{padding:36px;border-radius:var(--sp-r3);background:var(--sp-forest);display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;align-items:center}
.sp-plat-cl-t{display:flex;flex-direction:column;gap:14px}
.sp-plat-cl h3{font:800 30px/1.15 var(--sp-h);color:#fff}
.sp-plat-cl p{font-size:17px;line-height:1.55;color:var(--sp-mint)}
.sp-plat-cl .sp-btn{align-self:flex-start}
.sp-plat-card{height:136px;border-radius:16px;background:linear-gradient(135deg,#1B7A44,#0D3A22);border:1px solid #2F6B49;padding:18px;display:flex;flex-direction:column;justify-content:space-between;color:#fff}
.sp-plat-card img{height:18px;width:auto;align-self:flex-start}
.sp-plat-card div{display:flex;flex-direction:column;gap:2px}
.sp-plat-card small{font-size:11px;letter-spacing:1.5px;color:var(--sp-mint-2)}
.sp-plat-card b{font:800 18px var(--sp-h);letter-spacing:2px}
.sp-plat-c{padding:32px;display:flex;flex-direction:column;gap:14px;color:inherit}
.sp a.sp-plat-c,.sp a.sp-bigc,.sp a.sp-relc,.sp a.sp-socc,.sp a.sp-feat{color:inherit}
.sp-sec-contact{padding-bottom:96px}
.sp-contact{padding:48px;border-radius:var(--sp-r3);display:grid;grid-template-columns:420px minmax(0,1fr);gap:56px}
.sp-contact-l{display:flex;flex-direction:column;gap:18px}
.sp-contact-l>p{font-size:17px;line-height:1.55;color:var(--sp-ink-2)}
.sp-clines{display:flex;flex-direction:column;gap:12px;padding-top:8px}
.sp .sp-clines a,.sp-clines span{display:flex;gap:12px;align-items:center;font-size:18px;font-weight:600;color:var(--sp-forest)}
.sp-clines span{font-size:16px;font-weight:400;color:var(--sp-ink-2)}
.sp-clines .sp-icb{width:40px;height:40px;border-radius:10px}
.sp-clines .sp-icb svg{width:18px;height:18px}

/* empresas */
.sp-docs{display:flex;flex-direction:column}
.sp-doc{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--sp-line-2)}
.sp-doc div{display:flex;flex-direction:column;gap:2px}
.sp-doc b{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-doc span{font-size:15px;color:var(--sp-muted)}
.sp-alerts{padding:56px 64px;border-radius:var(--sp-r3);background:var(--sp-green);display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:56px;align-items:center}
.sp-alerts-t{display:flex;flex-direction:column;gap:16px}
.sp-alerts .sp-h2{color:#fff}
.sp-alerts-t>p{font-size:18px;line-height:1.55;color:var(--sp-mint-3)}
.sp-alerts-ex{padding:26px;display:flex;flex-direction:column;gap:14px}
.sp-alerts-exh{display:flex;justify-content:space-between;align-items:center}
.sp-alerts-exh b{font:800 17px var(--sp-h);color:var(--sp-forest)}
.sp-alerts-exh span{font-size:14px;color:var(--sp-muted)}
.sp-ctr{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px;background:var(--sp-bg)}
.sp-ctr.warn{background:var(--sp-cream)}
.sp-ctr .sp-icb{width:40px;height:40px;border-radius:10px}
.sp-ctr div{display:flex;flex-direction:column;flex-grow:1;min-width:0}
.sp-ctr b{font-size:16px;font-weight:600;color:var(--sp-ink)}
.sp-ctr span{font-size:14px;color:var(--sp-muted)}
.sp-ctr.warn span{color:var(--sp-brown)}
.sp-ctr em{font-style:normal;padding:4px 10px;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);font-size:13px;font-weight:700}
.sp-ctr em.ok{background:var(--sp-green-bg);color:var(--sp-green)}

/* particulares */
.sp-split{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:72px;align-items:center}
.sp-split-t{display:flex;flex-direction:column;gap:18px;min-width:0}
.sp-split-t>p{font-size:18px;line-height:1.6;color:var(--sp-ink-2)}
.sp-mudlist{display:flex;flex-direction:column;gap:10px;padding:28px;border-radius:var(--sp-r3);background:var(--sp-line-2)}
.sp-mudi{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--sp-line)}
.sp-mudi .sp-icb{width:40px;height:40px;border-radius:10px}
.sp-mudi b{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-mudi>svg{margin-left:auto;color:var(--sp-green)}
.sp-band-w{background:#fff;border-top:1px solid var(--sp-line);border-bottom:1px solid var(--sp-line)}
.sp-split-form{padding-top:96px;padding-bottom:96px;grid-template-columns:minmax(0,1fr) 560px;align-items:start}
.sp-split-form .sp-split-t{gap:22px}
.sp-tar3{gap:12px}
.sp-tar3 div{padding:18px;border-radius:16px;background:var(--sp-bg);display:flex;flex-direction:column;gap:4px}
.sp-tar3 b{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-tar3 span{font-size:15px;line-height:1.45;color:var(--sp-ink-2)}
.sp-darkrow{padding:24px;border-radius:var(--sp-r2);background:var(--sp-forest);display:flex;gap:18px;align-items:center}
.sp-darkrow>div{display:flex;flex-direction:column;gap:4px;flex-grow:1}
.sp-darkrow b{font:800 20px var(--sp-h);color:#fff}
.sp-darkrow span{font-size:16px;line-height:1.5;color:var(--sp-mint)}
.sp-darkrow .sp-btn{flex-shrink:0}
.sp-split-solar{grid-template-columns:560px minmax(0,1fr);align-items:start}
.sp-solar-l{display:flex;flex-direction:column;gap:20px}
.sp-cream-box{padding:24px;border-radius:var(--sp-r2);background:var(--sp-cream);display:flex;flex-direction:column;gap:12px}
.sp-cream-box b{font:800 20px var(--sp-h);color:var(--sp-forest)}
.sp-cream-box span{font-size:16px;line-height:1.5;color:var(--sp-ink-2)}
.sp-cream-box small{font-size:14px;color:var(--sp-brown)}
.sp-cream-box .sp-btn{align-self:flex-start}
.sp-nsteps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.sp-nsteps li{display:flex;gap:16px;align-items:flex-start}
.sp-nstep-n{width:36px;height:36px;flex-shrink:0;border-radius:999px;background:var(--sp-forest);color:var(--sp-orange);font:800 16px var(--sp-h);display:flex;align-items:center;justify-content:center}
.sp-nsteps div{display:flex;flex-direction:column;gap:2px}
.sp-nsteps b{font:800 18px var(--sp-h);color:var(--sp-forest)}
.sp-nsteps div span{font-size:16px;line-height:1.5;color:var(--sp-ink-2)}
.sp-bigc{padding:36px;border-radius:var(--sp-r3);display:flex;flex-direction:column;gap:14px}
.sp-bigc h3{font-size:28px}
.sp-refer{padding:48px 56px;border-radius:var(--sp-r3);background:var(--sp-forest);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}
.sp-refer-t{display:flex;gap:24px;align-items:center}
.sp-refer-t>div{display:flex;flex-direction:column;gap:8px}
.sp-refer h2{font:800 32px/1.15 var(--sp-h);color:#fff}
.sp-refer p{font-size:17px;color:var(--sp-mint)}

/* páginas de serviço */
.sp-badge-nos{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;padding:10px 16px;border-radius:14px;background:var(--sp-orange);color:var(--sp-ink);font:800 16px var(--sp-h)}
.sp-hstats{display:flex;flex-wrap:wrap;gap:16px 44px}
.sp-hstats div{display:flex;flex-direction:column;gap:4px}
.sp-hstats b{font:800 34px/1 var(--sp-h);color:#fff}
.sp-hstats span{font-size:14px;color:var(--sp-mint-2)}
.sp-mini2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sp-mini2 div{padding:18px;border-radius:16px;background:#134A2C;display:flex;flex-direction:column;gap:6px}
.sp-mini2 b{display:flex;gap:8px;align-items:center;font:800 16px var(--sp-h);color:var(--sp-orange)}
.sp-mini2 span{font-size:15px;line-height:1.5;color:var(--sp-mint)}
.sp-ben{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
.sp-ben>div{display:flex;flex-direction:column;gap:12px}
.sp-ben h3{font:800 21px var(--sp-h);color:var(--sp-forest)}
.sp-ben p{font-size:16px;line-height:1.55;color:var(--sp-ink-2)}
.sp-steps-sec{background:var(--sp-line-2)}
.sp-steps-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sp-steps-g.n5{grid-template-columns:repeat(5,minmax(0,1fr))}
.sp-stepc{display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:var(--sp-r2);background:#fff;border:1px solid var(--sp-line)}
.sp-stepc h3{font:800 21px var(--sp-h);color:var(--sp-forest)}
.sp-stepc p{font-size:16px;line-height:1.55;color:var(--sp-ink-2)}
.sp-tarc{padding:32px;border-radius:24px;display:flex;flex-direction:column;gap:14px}
.sp-tarc h3{font:800 26px var(--sp-h);color:var(--sp-forest)}
.sp-tarc>p{font-size:16px;line-height:1.55;color:var(--sp-ink-2)}
.sp-pc{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--sp-line-2);display:flex;flex-direction:column;gap:10px}
.sp-pc li,.sp-artbody li.pro,.sp-artbody li.con{position:relative;padding-left:34px;font-size:16px;line-height:1.5;color:var(--sp-ink-2);list-style:none}
.sp-pc li::before,.sp-artbody li.pro::before,.sp-artbody li.con::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:999px;background:var(--sp-green-bg) no-repeat center/14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B7A44' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E")}
.sp-pc li.con::before,.sp-artbody li.con::before{background-color:#FBE9E2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B4530B' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E")}
.sp-esc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:16px}
.sp-escc{padding:28px;display:flex;flex-direction:column;gap:10px}
.sp-esc-n{font:700 13px var(--sp-h);letter-spacing:2px;text-transform:uppercase;color:var(--sp-orange-d)}
.sp-escc b{font:800 24px/1.2 var(--sp-h);color:var(--sp-forest)}
.sp-escc p{font-size:16px;line-height:1.5;color:var(--sp-ink-2);flex-grow:1}
.sp-apoios{margin-top:20px;padding:24px 28px;border-radius:var(--sp-r2);background:var(--sp-cream);border:1px solid #F5D9A8;display:flex;gap:18px;align-items:center}
.sp-apoios div{display:flex;flex-direction:column;gap:4px}
.sp-apoios b{font:800 20px var(--sp-h);color:var(--sp-forest)}
.sp-apoios span{font-size:16px;line-height:1.5;color:var(--sp-ink-2)}
.sp-nosc .sp-aud{margin-top:-4px}
.sp-nosc p,.sp-partner p{font-size:17px;line-height:1.55;color:var(--sp-ink-2)}
.sp-nosc .sp-btn{align-self:flex-start}
.sp-sec-docs .sp-docc{padding:32px;border-radius:24px;display:flex;flex-direction:column;gap:8px}
.sp-docc-h{display:flex;gap:12px;align-items:center}
.sp-docc-h h3{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-docl{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--sp-line-2)}
.sp-docl svg{color:var(--sp-green)}
.sp-docl b{font-size:17px;font-weight:600;color:var(--sp-ink)}
.sp-docl span{font-size:15px;color:var(--sp-muted)}
.sp-sec-rel{padding-bottom:96px;display:flex;flex-direction:column;gap:32px}
.sp-relc{padding:24px;display:flex;gap:16px;align-items:center}
.sp-relc>div{display:flex;flex-direction:column;gap:4px;flex-grow:1;min-width:0}
.sp-relc b{font:800 20px var(--sp-h);color:var(--sp-forest)}
.sp-relc span{font-size:15px;line-height:1.45;color:var(--sp-ink-2)}
.sp-relc small{font-size:13px;color:var(--sp-muted)}
.sp-relc>svg{color:var(--sp-green);flex-shrink:0}
/* mobilidade: cartões e comparativo */
.sp-mcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp-mcards.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.sp-mcard{padding:26px;display:flex;flex-direction:column;gap:6px}
.sp-mcard h3{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-mcard .sp-muted{font-size:14px}
.sp-mcard-p{margin-top:12px}
.sp-mcard-p b{font:800 30px var(--sp-h);color:var(--sp-green)}
.sp-mcard-p span{font-size:14px;color:var(--sp-ink-2)}
.sp-mcard-n{align-self:flex-start;font-size:13px;color:var(--sp-brown);background:var(--sp-cream);border-radius:6px;padding:5px 8px}
.sp-mcard .sp-cks{margin:14px 0;flex-grow:1}
.sp-tablecard{overflow:hidden}
.sp-tscroll{overflow-x:auto}
.sp-table{border-collapse:collapse;width:100%;min-width:720px}
.sp-table th,.sp-table td{padding:14px 18px;text-align:left;font-size:15px;border-top:1px solid var(--sp-line-2);color:var(--sp-ink-2)}
.sp-table thead th{background:var(--sp-forest);color:#fff;font:700 14px var(--sp-h);border:0}
.sp-table tbody th{font:700 15px var(--sp-h);color:var(--sp-forest)}
.sp-table tbody tr:nth-child(even){background:var(--sp-bg)}
.sp-table .y{color:var(--sp-green);font-weight:700}
.sp-table .n{color:var(--sp-muted)}
.sp-dnote{font-size:14px;color:var(--sp-mint-2)}
/* solar: simulação no mapa */
.sp-solsim{padding:28px;border-radius:var(--sp-r3);display:flex;flex-direction:column;gap:18px}
.sp-solsteps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.sp-solsteps li{padding-top:10px;border-top:4px solid var(--sp-line);font-size:14px;color:var(--sp-muted)}
.sp-solsteps li.on{border-color:var(--sp-green);color:var(--sp-forest);font-weight:600}
.sp-solstep{display:flex;flex-direction:column;gap:16px}
.sp-inrow{display:flex;gap:10px}
.sp-inrow .sp-input{flex-grow:1}
.sp-solmap{height:400px;border-radius:16px;background:var(--sp-green-bg);z-index:1}
.sp-solarea{margin-left:auto;color:var(--sp-forest)}
.sp-solmet{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sp-solmet div{padding:16px;border-radius:14px;background:var(--sp-bg);display:flex;flex-direction:column;gap:4px}
.sp-solmet small{font-size:13px;color:var(--sp-muted)}
.sp-solmet b{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-soloffers{display:flex;flex-direction:column;gap:10px}
.sp-soloffer{display:flex;gap:16px;align-items:center;padding:16px 18px;border-radius:14px;border:1px solid var(--sp-line)}
.sp-soloffer>div{display:flex;flex-direction:column;gap:4px;flex-grow:1}
.sp-soloffer b{font-size:16px;font-weight:600;color:var(--sp-ink);display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sp-soloffer span{font-size:14px;color:var(--sp-muted)}
.sp-solq{font:700 18px var(--sp-h);color:var(--sp-forest)}
.sp-solnav{display:flex;justify-content:space-between;gap:12px}
.sp-solnav [data-sol-next]{margin-left:auto}

/* sobre */
.sp-hist{display:grid;grid-template-columns:380px minmax(0,1fr);gap:72px;align-items:start}
.sp-hist-l{display:flex;flex-direction:column;gap:14px}
.sp-hist-y{font:800 120px/1 var(--sp-h);letter-spacing:-4px;color:var(--sp-green)}
.sp-hist-l b{font:800 22px var(--sp-h);color:var(--sp-forest)}
.sp-hist-l span:last-child{font-size:16px;line-height:1.5;color:var(--sp-muted)}
.sp-hist-t{display:flex;flex-direction:column;gap:20px}
.sp-hist-t p{font-size:19px;line-height:1.7;color:var(--sp-ink-2)}
.sp-mission{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:end}
.sp-mission>p{font-size:19px;line-height:1.65;color:var(--sp-mint)}
.sp-comp{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.sp-comp div{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:var(--sp-r2);background:#134A2C}
.sp-comp svg{color:var(--sp-orange)}
.sp-comp b{font:800 19px var(--sp-h);color:#fff}
.sp-comp span{font-size:15px;line-height:1.5;color:var(--sp-mint)}
.sp-partner h2{font:800 34px var(--sp-h);color:var(--sp-forest)}
.sp-store{overflow:hidden;border-radius:var(--sp-r3);display:flex;flex-direction:column}
.sp-store-b{padding:28px;display:flex;flex-direction:column;gap:12px}
.sp-store-h{display:flex;justify-content:space-between;align-items:center;gap:12px}
.sp-store-h h3{font:800 24px var(--sp-h);color:var(--sp-forest)}
.sp-store-b p{display:flex;gap:10px;align-items:flex-start;font-size:17px;line-height:1.5;color:var(--sp-ink-2)}
.sp-store-b p svg{flex-shrink:0;color:var(--sp-green);margin-top:2px}
.sp-franch{margin-bottom:96px;padding:56px;border-radius:var(--sp-r3);background:var(--sp-green);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}
.sp-franch>div:first-child{display:flex;flex-direction:column;gap:12px}
.sp-franch h2{font:800 38px/1.12 var(--sp-h);color:#fff}
.sp-franch p{font-size:18px;line-height:1.55;color:var(--sp-mint-3);max-width:680px}

/* contactos */
.sp-cgrid{padding-top:64px;padding-bottom:96px;display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:40px;align-items:start}
.sp-caside{padding:32px;border-radius:var(--sp-r3);display:flex;flex-direction:column}
.sp-caside h2{font:800 22px var(--sp-h);color:var(--sp-forest);padding-bottom:6px}
.sp-cinfo{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--sp-line-2)}
.sp-cinfo div{display:flex;flex-direction:column;gap:2px;min-width:0}
.sp-cinfo small{font-size:14px;font-weight:600;letter-spacing:1px;color:var(--sp-muted)}
.sp-cinfo b,.sp .sp-cinfo a{font-size:17px;font-weight:600;color:var(--sp-ink);overflow-wrap:anywhere}
.sp-caside-f{display:flex;flex-direction:column;gap:10px;padding-top:22px;font-size:15px;color:var(--sp-ink-2)}
.sp-storec{padding:20px;border-radius:var(--sp-r3);display:flex;flex-direction:column;gap:18px}
.sp .sp-mapbox{height:280px;border-radius:16px;background:repeating-linear-gradient(0deg,#E3EDE6 0 1px,transparent 1px 40px),repeating-linear-gradient(90deg,#E3EDE6 0 1px,transparent 1px 40px),#EEF4EF;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--sp-green);font-size:15px;font-weight:600}
.sp .sp-mapbox:hover{color:var(--sp-forest)}
.sp-storec .sp-store-b{padding:0 8px 8px;gap:10px}
.sp-addr2{font-size:17px!important}
.sp-socg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.sp-socc{padding:22px;display:flex;flex-direction:column;gap:10px}
.sp-socc b{font:800 19px var(--sp-h);color:var(--sp-forest)}
.sp-socc>span:last-child{font-size:16px;color:var(--sp-ink-2);overflow-wrap:anywhere}

/* conteúdos */
.sp-search{height:60px;padding:0 20px;border-radius:999px;background:#fff;display:flex;align-items:center;gap:12px;color:var(--sp-muted)}
.sp-search input{flex-grow:1;min-width:0;height:56px;border:0;outline:0;font:17px var(--sp-b);color:var(--sp-ink);background:transparent}
.sp-search:focus-within{outline:3px solid var(--sp-orange)}
.sp-filt{background:#fff;border-bottom:1px solid var(--sp-line)}
.sp-filt-in{padding-top:28px;padding-bottom:28px;display:flex;align-items:center;gap:10px}
.sp-filt-l{font:700 13px var(--sp-h);letter-spacing:2px;text-transform:uppercase;color:var(--sp-muted);margin-right:8px}
.sp-filt-list{display:flex;flex-wrap:wrap;gap:10px}
.sp .sp-filt-list a,.sp-filt-off{height:44px;padding:0 18px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:600;background:#fff;color:var(--sp-ink-2);border:1px solid var(--sp-line)}
.sp .sp-filt-list a span,.sp-filt-off span{font-size:13px;color:var(--sp-muted)}
.sp .sp-filt-list a.on{background:var(--sp-forest);color:#fff;border-color:var(--sp-forest)}
.sp .sp-filt-list a.on span{color:var(--sp-orange)}
.sp-filt-off{opacity:.55;cursor:default}
.sp-sort{margin-left:auto;display:flex;gap:8px;align-items:center;font-size:15px;color:var(--sp-ink-2);white-space:nowrap}
.sp-sort select{border:0;background:transparent;font:600 15px var(--sp-b);color:var(--sp-forest);cursor:pointer}
.sp-featsec{padding-top:56px}
.sp-feat{border-radius:var(--sp-r3);overflow:hidden;display:grid;grid-template-columns:minmax(0,720px) minmax(0,1fr)}
.sp-feat .sp-feat-ph{height:420px;border-radius:0}
.sp-feat-b{padding:48px;display:flex;flex-direction:column;gap:16px;justify-content:center}
.sp-feat-tags{display:flex;gap:10px}
.sp-feat h2{font:800 34px/1.15 var(--sp-h);letter-spacing:-.6px;color:var(--sp-forest)}
.sp-feat p{font-size:18px;line-height:1.6;color:var(--sp-ink-2)}
.sp-feat .sp-meta{font-size:15px}
.sp-artsec{padding-top:56px;padding-bottom:96px;display:flex;flex-direction:column;gap:40px}
.sp-arts{gap:24px}
.sp-empty{padding:32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;font-size:17px;color:var(--sp-ink-2)}
.sp-news{margin-bottom:96px;padding:56px 64px;border-radius:var(--sp-r3);background:var(--sp-forest);display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:56px;align-items:center}
.sp-news-t{display:flex;flex-direction:column;gap:14px}
.sp-news h2{font:800 38px/1.12 var(--sp-h);color:#fff}
.sp-news-t p{font-size:18px;line-height:1.55;color:var(--sp-mint)}
.sp-newsf{padding:28px;display:flex;flex-direction:column;gap:14px}
.sp-newsf .sp-consent{background:none;padding:0}

/* artigo */
.sp-arthead{padding-top:40px;display:flex;flex-direction:column;gap:28px}
.sp-arthead-t{display:flex;flex-direction:column;gap:18px;max-width:980px}
.sp-arthead h1{font:800 56px/1.08 var(--sp-h);letter-spacing:-1.3px;color:var(--sp-forest)}
.sp-art-lede{font-size:21px;line-height:1.55;color:var(--sp-ink-2)}
.sp-artmeta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;font-size:16px;color:var(--sp-muted)}
.sp-artmeta>span{display:inline-flex;gap:6px;align-items:center}
.sp-author{gap:10px!important}
.sp-author-i{width:40px;height:40px;border-radius:999px;background:var(--sp-forest);color:var(--sp-orange);display:flex;align-items:center;justify-content:center;font:800 15px var(--sp-h)}
.sp-author b{color:var(--sp-ink)}
.sp-shares{display:flex;gap:8px;align-items:center}
.sp-artmeta .sp-shares{margin-left:auto}
.sp .sp-share{width:44px;height:44px;border-radius:999px;border:1px solid var(--sp-line);background:#fff;color:var(--sp-forest);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.sp .sp-share.x{font:800 16px var(--sp-h)}
.sp .sp-share:hover{border-color:var(--sp-forest)}
.sp .sp-share.ok{background:var(--sp-green);color:#fff;border-color:var(--sp-green)}
.sp-art-ph{height:460px}
.sp-artgrid{padding-top:64px;padding-bottom:96px;display:grid;grid-template-columns:260px minmax(0,720px) minmax(0,1fr);gap:48px;align-items:start}
.sp-toc{position:sticky;top:24px;padding:20px;display:flex;flex-direction:column;gap:4px}
.sp-toc .sp-eyebrow{padding:0 14px 10px}
.sp .sp-toc a{padding:10px 14px;border-radius:10px;font-size:16px;font-weight:500;color:var(--sp-ink-2);border-left:3px solid transparent}
.sp .sp-toc a.on{background:var(--sp-green-bg);color:var(--sp-forest);font-weight:600;border-left-color:var(--sp-green)}
.sp-toc-f{margin:14px 14px 4px;padding-top:14px;border-top:1px solid var(--sp-line-2)}
.sp .sp-toc-f a{padding:0;border:0;display:inline-flex;gap:6px;align-items:center;font-size:15px;font-weight:600;color:var(--sp-green)}
.sp-artbody{display:flex;flex-direction:column;gap:22px;min-width:0}
.sp-artbody>p{font-size:19px;line-height:1.75;color:var(--sp-ink-2)}
.sp-artbody h2{margin-top:16px;font:800 32px/1.2 var(--sp-h);letter-spacing:-.6px;color:var(--sp-forest);scroll-margin-top:24px}
.sp-artbody ul,.sp-artbody ol{margin:0;padding-left:24px;display:flex;flex-direction:column;gap:10px}
.sp-artbody li{font-size:18px;line-height:1.6;color:var(--sp-ink-2)}
.sp-artbody li strong{color:var(--sp-ink)}
.sp-artbody ul:has(li.pro),.sp-artbody ul:has(li.con){padding-left:0}
.sp-artbody li.pro,.sp-artbody li.con{font-size:18px;line-height:1.6;padding-left:36px}
.sp-artbody li.pro::before,.sp-artbody li.con::before{top:4px}
.sp-midcta{margin:12px 0;padding:28px 32px;border-radius:var(--sp-r2);background:var(--sp-cream);border:1px solid #F5D9A8;display:flex;gap:20px;align-items:center}
.sp-midcta .sp-icb{width:56px;height:56px;border-radius:16px}
.sp-midcta>div{display:flex;flex-direction:column;gap:4px;flex-grow:1}
.sp-midcta b{font:800 21px var(--sp-h);color:var(--sp-forest)}
.sp-midcta span{font-size:16px;line-height:1.5;color:var(--sp-ink-2)}
.sp-midcta .sp-btn{flex-shrink:0}
.sp-artcta{margin-top:16px;padding:40px;border-radius:var(--sp-r3);background:var(--sp-forest);display:flex;flex-direction:column;gap:14px}
.sp-artcta b{font:800 30px/1.15 var(--sp-h);color:#fff}
.sp-artcta>span{font-size:18px;line-height:1.55;color:var(--sp-mint)}
.sp-artfoot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;border-top:1px solid var(--sp-line);border-bottom:1px solid var(--sp-line)}
.sp-arttags{display:flex;flex-wrap:wrap;gap:8px}
.sp-arttags span{padding:6px 12px;border-radius:999px;background:var(--sp-line-2);font-size:14px;color:var(--sp-ink-2)}
.sp-artfoot .sp-shares>span{font-size:15px;color:var(--sp-muted);margin-right:4px}
.sp-artside{padding:24px;display:flex;flex-direction:column;gap:12px}
.sp-artside b{font:800 18px/1.25 var(--sp-h);color:var(--sp-forest)}
.sp-artside>span{font-size:15px;line-height:1.5;color:var(--sp-ink-2)}

/* ---------- responsivo do site institucional ---------- */
@media (max-width:1280px){
  .sp-top-site .sp-top-in{gap:24px}
  .sp-top-site .sp-nav{gap:20px}
  .sp-top-site .sp-top-r{gap:14px}
  .sp-h1.s60{font-size:52px}
  .sp-hh-in{grid-template-columns:minmax(0,1fr) 500px;gap:48px}
  .sp-phero-g,.sp-phero-g.w560,.sp-phero-g.w600{grid-template-columns:minmax(0,1fr) 500px;gap:48px}
  .sp-brandsec-in{grid-template-columns:340px minmax(0,1fr);gap:48px}
  .sp-plat{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-plat-cl{grid-column:1/-1}
  .sp-contact{grid-template-columns:340px minmax(0,1fr);gap:40px}
  .sp-artgrid{grid-template-columns:240px minmax(0,1fr);gap:40px}
  .sp-artside{display:none}
  .sp-feat{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .sp-steps-g.n5{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sp-mcards.n4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-comp{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1100px){
  .sp-top-site .sp-nav{display:none}
  .sp-hh-in,.sp-phero-g,.sp-phero-g.w560,.sp-phero-g.w600,.sp-phero-g.w460,.sp-phero-g.narrow{grid-template-columns:minmax(0,1fr);gap:40px}
  .sp-split,.sp-split-form,.sp-split-solar,.sp-alerts,.sp-news,.sp-refer,.sp-franch,.sp-cgrid,.sp-hist,.sp-mission,.sp-contact,.sp-brandsec-in{grid-template-columns:minmax(0,1fr);gap:40px}
  .sp-nums-in{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:28px}
  .sp-num-c:nth-child(3n+1){border-left:0;padding-left:0}
  .sp-ben,.sp-esc,.sp-steps-g{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-socg{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sp-sh-row{flex-direction:column;align-items:flex-start;gap:16px}
  .sp-feat{grid-template-columns:minmax(0,1fr)}
  .sp-feat .sp-feat-ph{height:320px}
  .sp-artgrid{grid-template-columns:minmax(0,1fr)}
  .sp-toc{position:static}
  .sp-hist-y{font-size:88px}
  .sp-solmet{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .sp-top-site .sp-top-r{display:none}
  .sp-top-site>.sp-top-in>.sp-round{display:none}
  .sp-mh{display:flex}
  .sp-g3,.sp-mcards,.sp-mcards.n4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-plat{grid-template-columns:minmax(0,1fr)}
  .sp-comp{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-filt-in{flex-wrap:wrap}
  .sp-sort{margin-left:0}
}
@media (max-width:640px){
  .sp-top-site .sp-top-in{gap:8px}
  .sp-h1.s60,.sp-hh-in .sp-h1{font-size:34px;line-height:1.08;letter-spacing:-.8px}
  .sp-hh-in{padding-top:28px;padding-bottom:28px;gap:18px}
  .sp-hh-in .sp-hero-copy{gap:18px}
  .sp-home .sp-hh-in .sp-cks,.sp-home .sp-hh-badges{display:none}
  .sp-lede{font-size:17px;line-height:1.5}
  .sp-phero-in{padding-top:20px;padding-bottom:40px;gap:24px}
  .sp-phero-in.short{padding-bottom:40px}
  .sp-hcard{padding:16px;border-radius:24px;gap:16px}
  .sp-tabs2 button{height:44px;font-size:15px}
  .sp-sim-h h2{font-size:20px}
  .sp-sim{gap:14px}
  .sp-sim .sp-btn{font-size:17px;height:54px}
  .sp .sp-path{padding:14px}
  .sp-path-b b{font-size:17px}
  .sp-path-b span{font-size:14px}
  .sp-icb{width:44px;height:44px;border-radius:12px}
  .sp-sec2{padding-top:48px;padding-bottom:48px}
  .sp-sec3{padding-top:48px;padding-bottom:48px;gap:24px}
  .sp-sec2>.sp-sh,.sp-sec2>.sp-sh-row,.sp-sec-b>.sp-sh{margin-bottom:24px}
  .sp-sec-b,.sp-sec-rel,.sp-sec-contact{padding-bottom:56px}
  .sp-h2,.sp-h2.s32,.sp-h2.s36,.sp-h2.s40,.sp-h2.s44,.sp-faqsec-h .sp-h2{font-size:28px;line-height:1.12;letter-spacing:-.5px}
  .sp-sh>p{font-size:16px}
  .sp-g2,.sp-g3,.sp-ben,.sp-esc,.sp-steps-g,.sp-steps-g.n5,.sp-mcards,.sp-mcards.n4,.sp-socg,.sp-tar3,.sp-mini2{grid-template-columns:minmax(0,1fr)}
  .sp-g2.sp-sec2{gap:16px}
  .sp-nums-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:24px;padding-bottom:24px}
  .sp-nums{background:transparent;border:0}
  .sp-num-c,.sp-num-c:first-child,.sp-num-c:nth-child(3n+1){padding:14px;border:1px solid var(--sp-line)!important;border-radius:16px;background:#fff}
  .sp-num-c b,.sp-nums.n4 .sp-num-c b{font-size:30px}
  .sp-num-c span{font-size:14px;line-height:1.35}
  .sp-svcc{padding:20px}
  .sp-svcc h3{font-size:21px}
  .sp-svcc p{font-size:16px}
  /* serviços em lista compacta (mockup SiteInicioTelemovel) */
  .sp-g3>a.sp-svcc{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:center;padding:14px;border-radius:16px}
  .sp-g3>a.sp-svcc .sp-svcc-top{grid-row:1/3;grid-column:1}
  .sp-g3>a.sp-svcc .sp-aud,.sp-g3>a.sp-svcc .sp-svcc-f{display:none}
  .sp-g3>a.sp-svcc h3{grid-column:2;font-size:17px}
  .sp-g3>a.sp-svcc p{grid-column:2;font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .sp-g3{gap:10px}
  .sp-arts{gap:16px}
  /* artigos em lista compacta na página inicial (mockup SiteInicioTelemovel) */
  .sp-home .sp-arts{gap:10px}
  .sp-home .sp-arts .sp-artc{flex-direction:row;align-items:center;padding:12px;gap:12px;border-radius:16px}
  .sp-home .sp-arts .sp-artc-ph{width:84px;height:84px;min-height:0;flex-shrink:0;border-radius:12px;padding:0}
  .sp-home .sp-arts .sp-artc-ph small{display:none}
  .sp-home .sp-arts .sp-artc-ph svg{width:28px;height:28px}
  .sp-home .sp-arts .sp-artc-b{padding:0;gap:4px}
  .sp-home .sp-arts .sp-artc p,.sp-home .sp-arts .sp-meta{display:none}
  .sp-home .sp-arts .sp-artc h3{font-size:15px}
  .sp-home .sp-arts .sp-tagc{padding:0;background:none;font-size:12px}
  .sp-work-in{padding-top:40px;padding-bottom:40px;gap:24px}
  .sp-work-g{grid-template-columns:minmax(0,1fr);gap:12px}
  .sp-work-c{padding:22px;gap:10px}
  .sp-work-c p{display:none}
  .sp-work-n{font-size:28px}
  .sp-brandsec-in{padding-top:32px;padding-bottom:32px;gap:16px}
  .sp-bchips{gap:8px}
  .sp-bchip{height:40px;padding:0 14px;font-size:15px}
  .sp-plat-cl{grid-template-columns:minmax(0,1fr);padding:22px}
  .sp-plat-card{display:none}
  .sp-plat-c{padding:20px}
  .sp-contact{padding:22px;gap:24px;border-radius:24px}
  .sp-sform.big{padding:22px}
  .sp-alerts,.sp-refer,.sp-franch,.sp-news{padding:28px 22px;gap:24px;border-radius:24px}
  .sp-refer-t{flex-direction:column;align-items:flex-start;gap:16px}
  .sp-refer h2,.sp-news h2,.sp-franch h2{font-size:26px}
  .sp-split{gap:28px}
  .sp-split-form{padding-top:48px;padding-bottom:48px}
  .sp-formbox{padding:20px;border-radius:20px}
  .sp-darkrow{flex-direction:column;align-items:flex-start}
  .sp-mudlist{padding:16px}
  .sp-photo.h420,.sp-photo.h360{height:220px}
  .sp-art-ph{height:220px}
  .sp-pad40,.sp-tarc,.sp-sec-docs .sp-docc{padding:22px}
  .sp-bigc{padding:22px}
  .sp-bigc h3{font-size:22px}
  .sp-band-b .sp-btn{flex-grow:1}
  .sp-hist-y{font-size:64px}
  .sp-hist-t p{font-size:17px}
  .sp-comp{grid-template-columns:minmax(0,1fr)}
  .sp-cgrid{padding-top:28px;padding-bottom:56px;gap:20px}
  .sp-caside{padding:22px}
  .sp-mapbox{height:180px!important}
  .sp-filt-in{padding-top:16px;padding-bottom:16px}
  .sp-filt-l{display:none}
  .sp .sp-filt-list a,.sp-filt-off{height:38px;padding:0 12px;font-size:15px}
  .sp-feat-b{padding:22px}
  .sp-feat h2{font-size:24px}
  .sp-feat .sp-feat-ph{height:200px}
  .sp-artsec{padding-top:28px;padding-bottom:56px}
  .sp-arthead{padding-top:20px}
  .sp-arthead h1{font-size:32px;letter-spacing:-.6px}
  .sp-art-lede{font-size:17px}
  .sp-artmeta .sp-shares{margin-left:0}
  .sp-artgrid{padding-top:28px;padding-bottom:56px;gap:24px}
  .sp-artbody>p{font-size:17px}
  .sp-artbody h2{font-size:24px}
  .sp-artbody li,.sp-artbody li.pro,.sp-artbody li.con{font-size:17px}
  .sp-midcta{flex-direction:column;align-items:flex-start;padding:22px}
  .sp-artcta{padding:24px}
  .sp-artcta b{font-size:24px}
  .sp-solsim{padding:18px}
  .sp-solmap{height:320px}
  .sp-soloffer{flex-direction:column;align-items:stretch}
  .sp-hstats b{font-size:26px}
  .sp-table{min-width:640px}
  .sp-tabs2.sm{display:grid;width:100%}
  .sp-tabs2.sm button{padding:0 8px;font-size:14px}
  .sp-apoios{flex-direction:column;align-items:flex-start}
  .sp-foot-socs{flex-wrap:wrap}
}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* fotografia da página de serviço (só aparece quando o ficheiro existe) */
.sp-svc-photo{margin-top:-56px;position:relative;z-index:1}
.sp-photo.sp-svc-img{height:380px;border-radius:var(--sp-r3);box-shadow:0 18px 40px rgba(13,58,34,.18)}
@media (max-width:720px){.sp-svc-photo{margin-top:-28px}.sp-photo.sp-svc-img{height:200px}}

/* cartões de serviço com fotografia */
.sp-svcc.has-img{padding:0;overflow:hidden;gap:0}
.sp-svcc-img{position:relative;height:190px;background:var(--sp-green-bg)}
.sp-svcc-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.sp a.sp-svcc.has-img:hover .sp-svcc-img img{transform:scale(1.04)}
.sp-svcc-img .sp-aud{position:absolute;top:14px;right:14px;background:rgba(255,255,255,.92)}
.sp-svcc-b{display:flex;flex-direction:column;gap:12px;padding:0 28px 26px;flex-grow:1}
.sp-svcc-ic{margin-top:-28px;position:relative}
.sp-svcc-ic>*{box-shadow:0 0 0 5px #fff}
.sp-svcc.dark.bgimg{background:linear-gradient(180deg,rgba(13,58,34,.82),rgba(13,58,34,.94)),var(--bg) center/cover no-repeat}
@media (max-width:720px){
  .sp-g3>a.sp-svcc.has-img{display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:12px;padding:10px;align-items:center}
  .sp-g3>a.sp-svcc.has-img .sp-svcc-img{height:72px;width:72px;border-radius:12px;overflow:hidden;grid-row:1}
  .sp-g3>a.sp-svcc.has-img .sp-svcc-img .sp-aud,.sp-g3>a.sp-svcc.has-img .sp-svcc-ic,.sp-g3>a.sp-svcc.has-img .sp-svcc-f{display:none}
  .sp-g3>a.sp-svcc.has-img .sp-svcc-b{padding:0;gap:2px}
  .sp-g3>a.sp-svcc.has-img h3{font-size:17px}
  .sp-g3>a.sp-svcc.has-img p{font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}
/* contactos: com o assunto "Energia Solar", sugere o Environe Solar (/solar#simulacao) */
.sp-solar-hint{display:none;gap:8px;align-items:flex-start;margin:0;padding:10px 14px;border-radius:12px;background:var(--sp-cream);color:var(--sp-brown);font-size:15px}
.sp-solar-hint svg{flex-shrink:0;margin-top:2px}
.sp .sp-solar-hint a{font-weight:600;color:var(--sp-orange-d)}
.sp-sform:has(option[value="Pedido de proposta — Energia Solar"]:checked) .sp-solar-hint{display:flex}
/* pedido de comparação B2B (cartão do topo): contacto depois do 1.º clique */
.sp-sim-c{display:flex;flex-direction:column;gap:14px}
.sp-sim-c[hidden]{display:none}

/* =====================================================================
   Franchising (/franchising)
   ===================================================================== */
.sp-fr-nums{padding:32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-radius:var(--sp-r3)}
.sp-fr-nums-t{grid-column:1/-1;font:800 14px var(--sp-h);letter-spacing:1.4px;text-transform:uppercase;color:var(--sp-orange-d)}
.sp-fr-num{padding:20px;border-radius:var(--sp-r2);background:var(--sp-bg);display:flex;flex-direction:column;gap:4px}
.sp-fr-num b{font:800 34px/1.1 var(--sp-h);color:var(--sp-forest)}
.sp-fr-num span{font-size:15px;color:var(--sp-muted);line-height:1.35}
.sp-fr-nums-n{grid-column:1/-1;margin:4px 0 0;display:flex;gap:8px;align-items:center;font-size:15px;font-weight:600;color:var(--sp-green)}
.sp-fr-svcs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:40px}
.sp-fr-svc{padding:24px;display:flex;flex-direction:column;gap:14px}
.sp-fr-svc h3{font:800 18px/1.25 var(--sp-h);color:var(--sp-forest)}
.sp-fr-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.sp-fr-pillar{padding:32px;border-radius:var(--sp-r2);background:var(--sp-forest-2);display:flex;flex-direction:column;gap:14px}
.sp-fr-pillar h3{font:800 24px/1.2 var(--sp-h);color:#fff}
.sp-fr-pillar p{margin:0;font-size:16.5px;line-height:1.55;color:var(--sp-mint-3)}
.sp-fr-pillar ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.sp-fr-fin{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px;align-items:center}
.sp-fr-fin>div:first-child{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.sp-fr-table{padding:8px 32px}
.sp-fr-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;border-bottom:1px solid var(--sp-line-2)}
.sp-fr-row:last-child{border-bottom:0}
.sp-fr-row div{display:flex;flex-direction:column;gap:2px}
.sp-fr-row b{font-size:17px;color:var(--sp-ink)}
.sp-fr-row span{font-size:15px;color:var(--sp-muted)}
.sp-fr-row strong{font:800 28px var(--sp-h);color:var(--sp-green);white-space:nowrap}
.sp-fr-apply{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.sp-fr-apply-l{display:flex;flex-direction:column;gap:14px;position:sticky;top:24px}
.sp-fr-contact{margin:0;display:flex;gap:10px;align-items:center;font-size:18px;font-weight:600}
@media (max-width:1100px){
  .sp-fr-svcs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sp-fr-pillars,.sp-fr-fin,.sp-fr-apply{grid-template-columns:minmax(0,1fr);gap:32px}
  .sp-fr-apply-l{position:static}
}
@media (max-width:640px){
  .sp-fr-nums{padding:22px;gap:10px}
  .sp-fr-num{padding:14px}
  .sp-fr-num b{font-size:26px}
  .sp-fr-svcs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
  .sp-fr-svc{padding:16px;min-width:0}
  .sp-fr-svc h3{font-size:15px;overflow-wrap:anywhere}
  .sp-fr-pillar{padding:24px}
  .sp-fr-table{padding:4px 20px}
  .sp-fr-row strong{font-size:22px}
}
