/* Proposta aprovada: três serviços, navegação e rodapé compartilhados. */
.compact-site { --space-section: 1.75rem; }
.compact-site .container { max-width: 1120px; }
.compact-site .proposal-hero__grid { grid-template-columns: 1.15fr .85fr; gap: 2rem; }
.compact-site .proposal-hero :is(.system-preview, .service-preview-collage) { width: min(100%, 430px); justify-self: end; }
.compact-site .system-preview img { box-shadow: none; border: 1px solid var(--color-line); border-radius: 12px; }
.compact-site .page-intro__copy h1 { max-width: 30ch; }
.compact-site .page-intro__copy .lede { max-width: 70ch; }
.compact-site .hero:not(.proposal-hero) h1 { margin-inline: 0; }
.compact-site .page-intro .system-preview { max-width: 340px; }
.compact-site .hero + .section { padding-top: .75rem; }
.compact-site main > .section:not(.section--soft) + .section:not(.section--soft) { padding-top: .5rem; }
.compact-site :is(.section-head, .service-section-heading, .review-section-head, .plan-panel__heading) { display: block; margin-bottom: 1rem; text-align: left; }
.compact-site :is(.section-head, .service-section-heading, .review-section-head, .plan-panel__heading) p { margin: .4rem 0 0; color: var(--color-muted); }
.compact-site .plan-panel__heading > span { display: none; }
.compact-site .plan-panel + .plan-panel { margin-top: 1.5rem; padding-top: 1.5rem; }
.compact-site .plan-tabs { display: flex; gap: 1.5rem; flex-wrap: wrap; border-bottom: 1px solid var(--color-line); margin-bottom: 1.25rem; }
.compact-site .plan-tabs a { display: inline-flex; min-height: 44px; align-items: center; padding: .6rem 0; border-bottom: 2px solid transparent; color: var(--color-muted); font-weight: 600; text-decoration: none; }
.compact-site .plan-tabs a[aria-selected="true"] { color: var(--color-blue-dark); border-color: var(--color-blue); }
.compact-site .pricing-cards { gap: 1rem; align-items: start; }
.compact-site .pricing-cards:has(.plan-compact) { align-items: stretch; }
.compact-site .pricing-cards:has(.plan-details[open]) { align-items: start; }
.compact-site .pricing-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.plan-compact { display: flex; flex-direction: column; min-width: 0; padding: 1.25rem; border: 1px solid var(--color-line); border-radius: 12px; background: #fff; }
.plan-compact:has(.plan-recommendation) { border-color: var(--color-blue); }
.plan-recommendation { display: inline-block; color: var(--color-blue-dark); font-size: .9rem; font-weight: 600; margin-bottom: .3rem; }
.tecenda-refresh .plan-compact h3 { margin: 0; font-size: 1.25rem; }
.plan-purpose { margin: .4rem 0 .8rem; color: var(--color-muted); font-size: 1rem; }
.compact-price { display: grid; gap: .2rem; }
.compact-price > span, .compact-price > small { color: var(--color-muted); font-size: .95rem; }
.compact-price > strong { font-family: Sora, sans-serif; font-weight: 600; font-size: 2rem; line-height: 1.3; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.plan-summary { display: grid; gap: .4rem; padding-left: 1.1rem; margin-block: .9rem 1rem; font-size: 1rem; }
.plan-compact > .button { width: 100%; min-height: 44px; font-size: 1rem; margin-top: auto; }
.plan-details { margin-top: .5rem; }
.plan-details summary { min-height: 44px; padding-block: .6rem; color: var(--color-blue-dark); font-size: 1rem; cursor: pointer; }
.plan-details__body { border-top: 1px solid var(--color-line); padding-top: .8rem; font-size: 1rem; }
.compact-site .plan-details__body :is(.plan-overview, .site-plan-meta, .plan-deliveries) { display: block; min-height: 0; padding: 0; margin: 0; }
.compact-site .plan-details__body li { font-size: 1rem; }
.compact-site .plan-details__body small { font-size: .95rem; }
.compact-site .plan-offer__audience { min-height: 0; padding-block: .6rem; }
.compact-site .plan-offer__audience :is(strong, p) { font-size: 1rem; }
.compact-site .plan-deliveries ul { list-style: none; padding: 0; margin: .5rem 0 1rem; }
.compact-site .plan-deliveries li { display: flex; align-items: flex-start; gap: .5rem; margin-block: .5rem; color: var(--color-muted); }
.compact-site .plan-deliveries svg { width: 18px; height: 22px; flex: 0 0 18px; fill: none; stroke: var(--color-blue); stroke-width: 2; }
.compact-site .payment-options { font-size: 1rem; margin: .5rem 0; padding-block: .5rem; }
.compact-site .installment-adjustment { display: block; font-size: .95rem; }
.compact-site .plan-offer__followup { margin: .6rem 0; font-size: 1rem; }
.compact-site .plan-offer__time { padding: .65rem 0; background: transparent; margin: .5rem 0; }
.compact-site .plan-offer__time :is(strong, span) { font-size: 1rem; }
.compact-site :is(.scope-notice, .sites-billing-note, .service-notice, .catalog-billing-note) { max-width: 75ch; padding: 0; margin: .75rem 0 1.25rem; color: var(--color-muted); font-size: 1rem; border: 0; background: transparent; }
.compact-site .plan-note { margin-top: 1rem; }
.compact-site p.plan-note { font-size: 1rem; }
.compact-site .plan-note h3 { font-size: 1.1rem; }
.compact-site .plan-note p { margin-bottom: 0; }
.compact-site .catalog-disclosure__body > .section { padding-block: 1rem 0; }
.compact-site .catalog-disclosure__body .container { width: 100%; }
.compact-site .payment-conditions { padding: 1.25rem; border: 0; background: #f4f8fc; border-radius: 12px; }
.compact-site .payment-methods { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 1rem; }
.compact-site .payment-methods p { margin-top: .3rem; }
.compact-site :is(.card, .editorial-card) { padding: 1.25rem; border: 1px solid var(--color-line); border-radius: 12px; box-shadow: none; background: #fff; }
.compact-site .card--lift:hover, .compact-site .plan-offer:hover { transform: none; box-shadow: none; }
.compact-site .plan-offer :is(h3, .plan-offer__price, .plan-offer__audience) { min-height: 0; }
.compact-site .plan-offer h3 { min-height: 0; }
.compact-site .plan-offer__price { padding-block: .5rem; }
.compact-site .plan-offer__price :is(span, small) { font-size: .95rem; }
.compact-site .plan-offer__price strong { font-size: 1.9rem; }
.compact-site .plan-offer .button { margin-top: .8rem; font-size: 1rem; min-height: 44px; }
.compact-site .site-plan-highlights { margin: .75rem 0; }
.compact-site .site-plan-highlights li { display: list-item; margin-left: 1rem; font-size: 1rem; }
.compact-site :is(.mission-vision-grid, .values-grid) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.compact-site .values-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.compact-site .editorial-card h2 { font-size: 1.375rem; }
.compact-site .editorial-card p { margin: .6rem 0 0; color: var(--color-muted); }
.compact-site .catalog-group-heading { margin-top: 1.75rem; }
.compact-site .catalog-product__price { display: grid; gap: .2rem; margin: .65rem 0; }
.compact-site .catalog-product__price strong { font-family: Sora, sans-serif; font-size: 1.8rem; line-height: 1.4; }
.compact-site .catalog-product__price small { font-size: .95rem; color: var(--color-muted); }
.compact-site .catalog-card-details h4 { margin: .7rem 0 0; }
.compact-site .catalog-product .button { width: 100%; }
.compact-site .catalog-product .list svg { display: inline-block; width: 18px; height: 18px; }
.process-editorial { list-style: none; counter-reset: stage; padding: 0; margin: 0; }
.process-editorial > li { counter-increment: stage; position: relative; padding: 1.25rem 0 1.25rem 3rem; border-top: 1px solid var(--color-line); }
.process-editorial > li::before { content: "0" counter(stage); position: absolute; left: 0; top: 1.25rem; color: var(--color-blue-dark); font-weight: 600; }
.process-editorial p { margin: .5rem 0; }
.process-editorial ul { padding-left: 1.1rem; color: var(--color-muted); }
.process-stage__deliverable { display: flex; flex-wrap: wrap; gap: .4rem 1rem; font-size: 1rem; }
.compact-site .steps { margin-top: 1rem; }
.compact-site .step.card { border: 0; padding: 0; }
.compact-site .step::before, .compact-site .step::after, .compact-site .step-number { display: none; }
.compact-site .contact-layout { gap: 2rem; }
.compact-site .review-contact-channels { display: grid; gap: .75rem; border: 0; padding: 0; margin-top: 1rem; background: none; }
.compact-site .review-contact-channels .card { border: 0; border-bottom: 1px solid var(--color-line); border-radius: 0; padding: .75rem 0; background: none; }
.compact-site .review-contact-channels p { margin: .4rem 0; overflow-wrap: anywhere; }
.compact-site .review-contact-channels a { display: inline-flex; min-height: 44px; align-items: center; }
.compact-site .form-progress { margin-bottom: 1.25rem; font-size: 1rem; }
.compact-site .lead-form legend { font-size: 1.25rem; margin-bottom: .75rem; }
.compact-site .lead-form label { font-size: 1rem; }
.compact-site .lead-form small { font-size: .95rem; font-weight: 400; }
.compact-site .lead-form fieldset { gap: .8rem; }
.compact-site .lead-form :is(input:not([type="checkbox"]), select, textarea) { padding: .6rem .75rem; min-height: 44px; }
.form-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.compact-site main > .legal-content { padding-block: 1.5rem; }
.compact-site .legal-content .legal-content { padding: 0; }
.compact-site .legal-hero .shell { max-width: 75ch; margin-inline: auto; }
.compact-site .legal-hero h1 { margin-inline: 0; }
.compact-site .legal-hero { margin-bottom: 1.25rem; }
.compact-site .legal-content article { max-width: 75ch; margin-inline: auto; padding: 0; border: 0; }
.compact-site .legal-content h2 { max-width: none; font-size: 1.375rem; margin-top: 1.5rem; }
.compact-site .legal-content h1 { margin-bottom: 1rem; }
.compact-site .legal-content p { margin-block: .75rem; }
.compact-site .legal-content li { margin-block: .3rem; }

@media (max-width: 800px) {
  .compact-site .pricing-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compact-site .proposal-hero :is(.system-preview, .service-preview-collage) { justify-self: center; }
  .compact-site .contact-layout { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .compact-site .pricing-cards, .compact-site .grid-2, .compact-site .mission-vision-grid, .compact-site .values-grid, .compact-site .payment-methods { grid-template-columns: 1fr; }
  .compact-site .plan-tabs { gap: .25rem; justify-content: space-between; }
  .compact-site .plan-tabs a { font-size: .95rem; }
  .compact-site .steps { grid-template-columns: 1fr; }
  .compact-site .page-intro .system-preview { max-width: 320px; }
}
.tecenda-refresh .site-nav { gap: 1.7rem; }
.tecenda-refresh .solutions-menu > summary { min-height: 44px; align-items: center; font-size: 1rem; font-weight: 600; }
.tecenda-refresh .solutions-menu__panel { top: calc(100% + .5rem); width: 270px; padding: .5rem; border-radius: 12px; box-shadow: 0 16px 36px rgba(7,27,54,.13); }
.tecenda-refresh .solutions-menu__panel a { min-height: 44px; padding: .65rem .85rem; font-size: 1rem; }
.tecenda-refresh .solutions-menu__panel a[aria-current="page"] { color: var(--color-blue); background: #f0f6fd; }
.tecenda-refresh .mobile-nav .solutions-menu__panel { width: 100%; border: 0; box-shadow: none; }
.tecenda-refresh .mobile-nav .solutions-menu > summary { border: 0; text-align: left; justify-content: space-between; }

.tecenda-refresh .proposal-hero { padding-block: clamp(1.5rem, 3vw, 2rem); }
.tecenda-refresh .proposal-hero__grid { display: grid; grid-template-columns: 1fr 1.08fr; align-items: center; gap: 3rem; text-align: left; }
.tecenda-refresh .proposal-hero h1 { max-width: 22ch; margin: 0; font-size: clamp(1.9rem, 3.2vw, 2.7rem); line-height: 1.2; font-weight: 650; }
.tecenda-refresh .proposal-hero .lede { max-width: 52ch; margin: .8rem 0 0; }
.tecenda-refresh .proposal-hero .actions { margin-top: 1rem; justify-content: flex-start; }
.service-preview-collage, .system-preview { margin: 0; min-width: 0; }
.preview-windows { position: relative; aspect-ratio: 1.55; }
.preview-window { position: absolute; width: 68%; height: auto; border-radius: 10px; box-shadow: 0 15px 30px rgba(7,27,54,.16); }
.preview-window--site { top: 0; left: 0; transform: rotate(-2deg); }
.preview-window--store { top: 8%; right: 0; transform: rotate(2deg); }
.preview-window--system { bottom: 0; left: 18%; }
.service-preview-collage figcaption, .system-preview figcaption { margin-top: 1rem; color: var(--color-muted); font-size: .9rem; text-align: center; }
.system-preview img { width: 100%; height: auto; border-radius: 12px; box-shadow: 0 16px 36px rgba(7,27,54,.13); }
.section-heading { text-align: left; margin-bottom: 1.2rem; }
.tecenda-refresh .section-heading h2 { max-width: 40ch; margin-inline: 0; font-size: clamp(1.45rem, 2.2vw, 1.9rem); }
.section-heading p { margin: .5rem 0 0; color: var(--color-muted); }
.service-paths__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
.service-path { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--color-line); border-radius: 12px; padding: 1.25rem; }
.tecenda-refresh .service-path h3 { font-size: 1.25rem; margin-bottom: .5rem; }
.service-path p { color: var(--color-muted); margin: .7rem 0 0; }
.service-path .service-path__scope { margin-block: .8rem; font-size: 1rem; }
.service-path .text-link { margin-top: auto; padding-block: .5rem; min-height: 44px; font-size: 1rem; }
.service-path--custom { border-color: var(--color-blue); background: #eef6ff; }
.project-journey { counter-reset: journey; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; padding: 0; margin: 1.25rem 0 0; list-style: none; }
.project-journey li { position: relative; counter-increment: journey; min-width: 0; padding-top: 3.6rem; }
.project-journey li::before { content: "0" counter(journey); position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--color-blue); color: #fff; font-size: 1rem; font-weight: 600; }
.project-journey li:not(:last-child)::after { content: ""; position: absolute; top: 20px; left: 55px; right: 0; height: 1px; background: var(--color-line); }
.tecenda-refresh .project-journey h3 { font-size: 1.1rem; line-height: 1.4; }
.project-journey p { margin: .7rem 0 0; color: var(--color-muted); font-size: 1rem; }
.journey-more { display: table; margin: 1rem 0 0; padding-block: .5rem; }
.solution-rows { border-top: 1px solid var(--color-line); }
.solution-rows article { display: grid; grid-template-columns: minmax(150px, .6fr) 1.7fr; align-items: baseline; gap: 1.5rem; padding-block: 1rem; border-bottom: 1px solid var(--color-line); }
.solution-rows p { margin: 0; color: var(--color-muted); }
.tecenda-refresh .custom-project { padding-top: 0; }
.custom-project__inner { background: #eef6ff; padding: clamp(1.25rem, 2.5vw, 1.75rem); border-radius: 12px; }
.project-journey--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.custom-investment { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid #c8d9eb; text-align: left; }
.custom-investment p { margin: .75rem auto 0; color: var(--color-muted); }
.custom-investment .text-link { display: inline-flex; min-height: 44px; align-items: center; margin-top: 1rem; }
.portfolio-note { margin-bottom: 2rem; }
.portfolio-note p { color: var(--color-muted); }
.portfolio-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
.portfolio-example { min-width: 0; margin: 0; }
.portfolio-example img { width: 100%; height: auto; border: 1px solid var(--color-line); border-radius: 12px; }
.portfolio-example figcaption { padding-top: 1.4rem; }
.portfolio-example p { color: var(--color-muted); }

.tecenda-refresh .footer-renewed { padding-block: 0 1.7rem; background: #071b36; color: #cbd9e9; }
.footer-invitation { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding-block: 1.5rem; border-bottom: 1px solid #344b65; }
.tecenda-refresh .footer-invitation h2 { max-width: 30ch; margin: 0; color: #fff; font-size: clamp(1.5rem, 2.5vw, 2.15rem); font-weight: 600; line-height: 1.3; letter-spacing: -.03em; }
.footer-invitation p { margin: .7rem 0 0; max-width: 64ch; }
.tecenda-refresh .footer-invitation .button { flex-shrink: 0; min-height: 48px; padding-inline: 1.4rem; color: #fff; }
.footer-main { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 2rem; padding-block: 1.5rem; }
.footer-main > div { min-width: 0; }
.footer-brand { position: relative; display: block; width: 192px; max-width: 100%; }
.tecenda-refresh .footer-brand img.footer-brand-original { display: block; width: 192px; height: 54px; padding: 0; border-radius: 0; box-sizing: border-box; filter: none; opacity: 1; }
.footer-brand::before { content: ""; position: absolute; inset: 0; background: #fff; mask: url('/Tecenda_Logo_Principal_Fundo_Transparente.png?v=20261001') center / contain no-repeat; clip-path: inset(0 0 0 35%); pointer-events: none; }
.footer-identity p { max-width: 28ch; margin: 1rem 0 .8rem; }
.footer-identity .social-link { display: inline-flex; align-items: center; gap: .55rem; border: 0; padding-block: .4rem; text-decoration: none; }
.footer-identity .social-link svg { width: 18px; height: 18px; fill: currentColor; }
.footer-renewed h3 { color: #fff; font-family: 'Source Sans 3', sans-serif; font-size: 1.1rem; line-height: 1.5; font-weight: 600; letter-spacing: 0; margin: 0 0 .6rem; }
.footer-solutions > a, .footer-contact > a { display: block; width: fit-content; padding-block: .3rem; text-decoration: none; overflow-wrap: anywhere; }
.footer-contact .footer-whatsapp { color: #72ddec; }
.footer-contact p { font-size: 1rem; margin-top: 1rem; }
.footer-company { display: flex; flex-wrap: wrap; gap: .3rem 1rem; margin-top: .8rem; }
.footer-company a { display: inline-flex; align-items: center; padding-block: .25rem; text-decoration: none; font-size: 1rem; }
.footer-renewed a:hover, .footer-renewed button:hover { color: #fff; text-decoration: underline; text-underline-offset: .22em; }
.footer-renewed .button:hover { text-decoration: none; background: #064fa8; }
.footer-renewed :focus-visible { outline-color: #72ddec; }
.footer-legal { display: flex; justify-content: center; flex-wrap: wrap; gap: .3rem 1.6rem; padding-top: 1.4rem; border-top: 1px solid #344b65; }
.footer-legal a, .footer-legal button { display: inline-flex; align-items: center; min-height: 44px; padding: .3rem 0; border: 0; border-radius: 0; background: none; color: #cbd9e9; text-decoration: none; font-size: .95rem; }
.footer-copyright { display: flex; justify-content: center; gap: .3rem 1rem; flex-wrap: wrap; margin-top: .7rem; font-size: .9rem; }

@media (max-width: 1000px) {
  .tecenda-refresh .site-nav { gap: 1rem; }
  .proposal-hero__grid { gap: 2rem; }
  .footer-main { gap: 2rem; }
  .service-path { padding: 1.4rem; }
}
@media (max-width: 800px) {
  .tecenda-refresh .proposal-hero__grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .tecenda-refresh .proposal-hero h1 { max-width: 24ch; }
  .service-preview-collage, .system-preview { width: min(100%, 550px); margin-inline: auto; }
  .footer-invitation { align-items: flex-start; flex-direction: column; gap: 1.4rem; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-identity { grid-column: 1 / -1; }
  .project-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .portfolio-grid { grid-template-columns: 1fr; }
  .portfolio-example { max-width: 650px; }
}
@media (max-width: 650px) {
  .service-paths__grid, .footer-main, .project-journey--three { grid-template-columns: 1fr; }
  .footer-identity { grid-column: auto; }
  .section-heading { text-align: left; }
  .tecenda-refresh .section-heading h2 { margin-inline: 0; }
  .section-heading p { margin-inline: 0; }
  .service-path { padding: 1.25rem; }
  .solution-rows article { grid-template-columns: 1fr; gap: .8rem; }
  .footer-invitation { padding-block: 1.25rem; }
  .footer-invitation .button { width: 100%; }
  .footer-main { padding-block: 1.25rem; gap: 1.25rem; }
  .footer-legal { justify-content: flex-start; gap: .25rem 1.4rem; }
  .footer-copyright { justify-content: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: no-preference) {
  .preview-window { animation: preview-arrive .65s cubic-bezier(.16,1,.3,1) both; }
  .preview-window--store { animation-delay: .08s; }
  .preview-window--system { animation-delay: .16s; }
  @keyframes preview-arrive { from { filter: blur(2px); translate: 0 8px; } to { filter: blur(0); translate: 0 0; } }
}
