/* Print Livros — estilos do motor (modais herdados, PDF do orçamento).
   Não afeta o layout novo: ele vive em shadow DOM (#nl-home / #nl-etapas). */
    /* ==========================================================================
       PRINT LIVROS — mapa do CSS
       A ordem das regras foi preservada (cascade + desktop >=1024px congelado).
         ////// CSS compartilhado /////  ->  base, todos os viewports
         ////// CSS mobile        /////  ->  viewport max 1023px
         /////  CSS desktop       ////  ->  viewport min 1024px
       ========================================================================== */

    /* ////// CSS compartilhado ///// */

    :root {
      --font-primary: "Rajdhani", system-ui, -apple-system, sans-serif;
      --bg: #f1f4f8;
      --card: #fff;
      --border: #e8ecf1;
      --text: #1e293b;
      --muted: #64748b;
      --accent: #2563eb;
      --accent-soft: #f0f5ff;
      --danger: #dc2626;
      --radius: 14px;
      --shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 6px 20px rgba(15, 23, 42, 0.05);
      --wrap-max: 1240px;
      --wrap-pad-x: clamp(1rem, 2.5vw, 1.75rem);
      --pl-bloco-paper: url('assets/img/papel-textura-resumo.png');
      --pl-bloco-paper-bg:
        linear-gradient(rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0.65)),
        var(--pl-bloco-paper) center / 384px auto repeat #f0f0f0;
      --pl-sum-paper-bg: var(--pl-bloco-paper-bg);
      --wiz-line-off: #e2e8f0;
      --wiz-line-on: #3b82f6;
      --wiz-disc-pulse-a: rgba(37, 99, 235, 0.35);
      --wiz-disc-pulse-b: rgba(59, 130, 246, 0.55);
      font-family: var(--font-primary);
    }

    * { box-sizing: border-box; }

    h1, h2, h3, h4, h5, h6,
    button, input, select, textarea {
      font-family: var(--font-primary);
    }

    html {
      min-height: 100%;
      overflow-x: clip;
      overflow-y: visible;
    }

    body {
      margin: 0;
      min-height: 100%;
      min-height: 100dvh;
      font-family: var(--font-primary);
      overflow-x: clip;
      overflow-y: visible;
      display: flex;
      flex-direction: column;
      position: relative;
      background: linear-gradient(
        180deg,
        #d8e7ff 0%,
        #dce4ef 18%,
        #e1e5ec 32%,
        #e9edf4 52%,
        #eef2f7 74%,
        #f3f5f9 100%
      );
      color: var(--text);
      line-height: 1.45;
    }

    body::before {
      content: "";
      position: fixed;
      left: 50%;
      top: 50%;
      width: 160vmax;
      height: 160vmax;
      z-index: 0;
      pointer-events: none;
      transform: translate(-50%, -50%) rotate(-28deg);
      transform-origin: center center;
      /* SVG inline (data URI): evita 404 / bloqueio de .svg / caminho errado em produção */
      background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNjAgMTYwIiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGcgc3Ryb2tlPSIjNjQ3NDhiIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIHN0cm9rZS13aWR0aD0iMC42NSIgZD0iTTgwIDM4IEwzOCA0OCBMMzggMTE0IFEzOCAxMjAgNDYgMTIyIEw4MCAxMTIiLz48cGF0aCBzdHJva2Utd2lkdGg9IjAuNjUiIGQ9Ik04MCAzOCBMMTIyIDQ4IEwxMjIgMTE0IFExMjIgMTIwIDExNCAxMjIgTDgwIDExMiIvPjxwYXRoIHN0cm9rZS13aWR0aD0iMC42IiBkPSJNNDYgMTIyIFE4MCAxMzAgMTE0IDEyMiIvPjxwYXRoIHN0cm9rZS13aWR0aD0iMC42NSIgZD0iTTgwIDM4IEw4MCAxMTIiLz48cGF0aCBzdHJva2Utd2lkdGg9IjAuMzgiIGQ9Ik00NiA1OCBINzIgTTQ2IDY4IEg3MCBNNDYgNzggSDcxIi8+PHBhdGggc3Ryb2tlLXdpZHRoPSIwLjM4IiBkPSJNODggNTggSDExNCBNOTAgNjggSDExNiBNODkgNzggSDExNSIvPjxwYXRoIHN0cm9rZS13aWR0aD0iMC4zNSIgZD0iTTUyIDk2IEg3NiBNODQgOTYgSDEwOCIvPjwvZz48L3N2Zz4=");
      background-size: 64px 64px;
      background-position: 0 0;
      background-repeat: space;
      opacity: 0.26;
    }

    body > * {
      position: relative;
      z-index: 1;
    }

    .wrap {
      flex: 1 1 auto;
      min-height: 0;
      max-width: var(--wrap-max);
      width: 100%;
      margin: 0 auto;
      padding: 1.75rem var(--wrap-pad-x) 2rem;
      padding-bottom: max(2rem, calc(1.5rem + env(safe-area-inset-bottom, 0px)));
      display: flex;
      flex-direction: column;
      overflow: visible;
    }

    /* Única área de rolagem da página; barra lateral do navegador some no “site” */
    #orc-form.layout-shell {
      flex: 1 1 auto;
      min-height: 0;
      min-width: 0;
      overflow: visible;
      position: relative;
    }

    .calc-page-head {
      flex-shrink: 0;
      width: 100%;
      margin-bottom: 1rem;
      margin-top: 0;
      padding-top: 0;
    }

    .layout-page-head {
      position: relative;
    }

    /* Menu + hero fora do .wrap: borda a borda, sem faixa em cima do menu */
    .site-head-fullbleed {
      position: relative;
      z-index: 200;
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 0;
      flex-shrink: 0;
      align-self: stretch;
    }

    .pl-oche-mainnav {
      width: 100%;
      margin: 0;
      background: #fff;
      border-bottom: 0;
      box-shadow: none;
    }

    .pl-oche-mainnav__inner {
      max-width: var(--wrap-max);
      margin: 0 auto;
      padding: 0.55rem var(--wrap-pad-x);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem 1rem;
      min-height: 3.25rem;
    }

    .pl-oche-brand {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      text-decoration: none;
      color: var(--text);
      font-weight: 800;
      font-size: 1.05rem;
      letter-spacing: -0.02em;
    }

    .pl-oche-brand__mark {
      width: 2.15rem;
      height: 2.15rem;
      border-radius: 10px;
      background: linear-gradient(145deg, var(--accent) 0%, #1d4ed8 100%);
      color: #fff;
      display: grid;
      place-items: center;
      font-size: 0.72rem;
      font-weight: 900;
    }

    .pl-oche-brand__sub {
      display: none;
      font-size: 0.68rem;
      font-weight: 600;
      color: var(--muted);
      max-width: 11rem;
      line-height: 1.2;
    }

    @media (min-width: 640px) {
      .pl-oche-brand__sub {
        display: block;
      }
    }

    .pl-oche-navdesk {
      display: none;
      align-items: center;
      gap: 0.15rem 0.35rem;
      flex: 1;
      justify-content: center;
      min-width: 0;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .pl-oche-navdesk {
        display: flex;
      }
    }

    .pl-oche-navdesk a {
      font-size: 0.8rem;
      font-weight: 700;
      color: var(--text);
      text-decoration: none;
      padding: 0.35rem 0.5rem;
      border-radius: 8px;
      white-space: nowrap;
    }

    .pl-oche-navdesk a:hover {
      background: #f0f5ff;
      color: #2563eb;
    }

    .pl-oche-navdesk a.is-current {
      color: #2563eb;
      background: #f0f5ff;
    }

    .pl-oche-nav-actions {
      display: flex;
      align-items: center;
      gap: 0.4rem;
      flex-shrink: 0;
    }

    .pl-oche-btn-cta {
      display: none;
      padding: 0.45rem 0.85rem;
      border-radius: 999px;
      font-size: 0.78rem;
      font-weight: 800;
      text-decoration: none;
      color: #fff;
      background: linear-gradient(135deg, #1d4ed8 0%, var(--accent) 55%, #38bdf8 100%);
      border: 1px solid rgba(37, 99, 235, 0.35);
      box-shadow: 0 4px 14px rgba(37, 99, 235, 0.25);
      white-space: nowrap;
    }

    .pl-oche-btn-cta:hover {
      filter: brightness(1.05);
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .pl-oche-btn-cta {
        display: inline-flex;
        align-items: center;
      }
    }

    .pl-oche-btn-soft {
      display: none;
      padding: 0.4rem 0.65rem;
      border-radius: var(--radius);
      font-size: 0.78rem;
      font-weight: 700;
      text-decoration: none;
      color: var(--text);
      border: 1px solid var(--border);
      background: #fff;
    }

    @media (min-width: 900px) {
      .pl-oche-btn-soft {
        display: inline-flex;
        align-items: center;
      }
    }

    .pl-oche-btn-soft:hover {
      border-color: var(--border);
      background: #f8fafc;
    }

    .pl-oche-burger {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2.35rem;
      height: 2.35rem;
      border-radius: var(--radius);
      border: 1px solid var(--border);
      background: #fff;
      padding: 0;
      cursor: pointer;
      color: var(--text);
    }

    @media (min-width: 1100px) {
      .pl-oche-burger {
        display: none;
      }
    }

    .pl-oche-burger svg {
      width: 1.15rem;
      height: 1.15rem;
    }

    .pl-oche-drawer {
      display: none;
      border-top: 1px solid var(--border);
      background: #f8fafc;
      padding: 0.65rem var(--wrap-pad-x) 0.85rem;
    }

    .pl-oche-drawer.is-open {
      display: block;
    }

    @media (min-width: 1100px) {
      .pl-oche-drawer {
        display: none !important;
      }
    }

    .pl-oche-drawer a {
      display: block;
      padding: 0.55rem 0.35rem;
      font-weight: 700;
      font-size: 0.88rem;
      color: var(--text);
      text-decoration: none;
      border-radius: 8px;
    }

    .pl-oche-drawer a:hover {
      background: #fff;
      color: #2563eb;
    }

    /* —— Full-bleed glass hero (barra pílula + trilho) —— */
    .pl-glass-hero-stack {
      position: relative;
      width: 100%;
      isolation: isolate;
    }

    /* Hero reels lightbox: trava scroll do body no desktop */
    html.pl-reels-lb-open,
    html.pl-reels-lb-open body,
    html.pl-mreels-lb-open,
    html.pl-mreels-lb-open body {
      overflow: hidden !important;
    }

    /* Lightbox reels: nunca no mobile */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .pl-reels-lightbox,
      .pl-reels-lightbox.is-open {
        display: none !important;
      }
    }

    /* Hero split (desktop): oculto por padrão; mobile usa .pl-m-hero */
    .pl-hero-desktop,
    .pl-hero-mesh-grain {
      display: none;
    }

    .pl-glass-floating-nav-shell {
      position: absolute;
      top: 1.1rem;
      left: 50%;
      transform: translateX(-50%);
      z-index: 60;
      width: min(82%, 1040px);
      pointer-events: none;
    }

    .pl-glass-floating-nav-shell > * {
      pointer-events: auto;
    }

    /*
      Proporções tipo referência (2ª imagem): menos largura, mais altura,
      cantos estilo cápsula (~18px), vidro escuro.
    */
    .pl-glass-floating-nav {
      position: relative;
      box-sizing: border-box;
      width: 100%;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      column-gap: 1rem;
      row-gap: 0.5rem;
      padding: 1.05rem 1.45rem;
      border-radius: var(--radius);
      font-family: var(--font-primary), -apple-system, sans-serif;
      background: rgba(20, 20, 20, 0.3);
      backdrop-filter: blur(6px) saturate(1.1);
      -webkit-backdrop-filter: blur(12px) saturate(1.1);
      border: 1px solid rgba(255, 255, 255, 0.1);
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.42);
    }

    @media (min-width: 1100px) {
      .pl-glass-floating-nav {
        /* auto | 1fr | auto evita a marca encolher e “atropelar” os links */
        grid-template-columns: auto minmax(0, 1fr) auto;
        column-gap: 1.35rem;
      }
    }

    .pl-glass-floating-nav__left {
      justify-self: start;
      min-width: auto;
      flex-shrink: 0;
    }

    .pl-glass-floating-nav__brand {
      display: inline-flex;
      align-items: center;
      gap: 0.6rem;
      flex-shrink: 0;
      text-decoration: none;
      color: #fff;
      font-weight: 700;
      font-size: 1.125rem;
      letter-spacing: -0.02em;
      line-height: 1;
    }

    .pl-glass-floating-nav__brand-mark {
      width: 3rem;
      height: 3rem;
      flex-shrink: 0;
      display: block;
      object-fit: contain;
      object-position: center;
    }

    /* Logo tipográfico (PNG escuro) → branco no menu escuro */
    .pl-glass-floating-nav__brand-wordmark {
      height: 2.35rem;
      width: auto;
      max-width: min(38vw, 260px);
      flex-shrink: 1;
      min-width: 0;
      display: block;
      object-fit: contain;
      object-position: left center;
      filter: brightness(0) invert(1);
    }

    .pl-glass-floating-nav__center {
      display: none;
      align-items: center;
      justify-content: center;
      flex-wrap: nowrap;
      gap: 0.35rem;
      min-width: 0;
    }

    @media (min-width: 1100px) {
      .pl-glass-floating-nav__center {
        display: flex;
        grid-column: 2;
        justify-self: stretch;
        justify-content: center;
        padding-inline: 0.85rem;
        gap: 0.45rem;
      }
    }

    .pl-glass-floating-nav__center a {
      display: inline-flex;
      align-items: center;
      gap: 0.32rem;
      padding: 0.5rem 0.72rem;
      border-radius: 8px;
      font-size: 0.8125rem;
      font-weight: 650;
      letter-spacing: 0;
      text-transform: none;
      color: #fff;
      text-decoration: none;
      white-space: nowrap;
      transition: background 0.15s ease, color 0.15s ease;
    }

    .pl-glass-floating-nav__center a:hover {
      background: rgba(255, 255, 255, 0.06);
      color: #fff;
    }

    /* —— Mega menu “Serviços” — mockup glass / 5 colunas / rodapé —— */
    @media (min-width: 1100px) {
      .pl-nav-mega {
        display: inline-flex;
        align-items: center;
      }

      .pl-nav-mega__trigger {
        display: inline-flex;
        align-items: center;
        gap: 0.32rem;
        padding: 0.5rem 0.72rem;
        border-radius: 8px;
        font-family: var(--font-primary), -apple-system, sans-serif;
        font-size: 0.8125rem;
        font-weight: 650;
        letter-spacing: 0;
        line-height: normal;
        text-transform: none;
        color: #fff;
        text-decoration: none;
        white-space: nowrap;
        transition: background 0.15s ease, color 0.15s ease;
        margin: 0;
        background: transparent;
        border: none;
        cursor: pointer;
        -webkit-appearance: none;
        appearance: none;
      }

      .pl-nav-mega__trigger:hover {
        background: rgba(255, 255, 255, 0.06);
      }

      .pl-nav-mega__trigger:focus-visible {
        outline: 2px solid rgba(196, 181, 253, 0.85);
        outline-offset: 2px;
      }

      /* fixed (âncora: .pl-glass-floating-nav-shell por causa do transform no shell) + left/top via JS */
      .pl-nav-mega__panel {
        position: fixed;
        top: 0;
        left: 0;
        transform: translateX(-50%);
        width: min(1280px, calc(100vw - 2rem));
        max-width: calc(100vw - 2rem);
        display: none;
        z-index: 500;
        padding-top: 2px;
        box-sizing: border-box;
        pointer-events: auto;
        min-width: 0;
      }

      /* Ponte invisível para não perder :hover entre o botão e o painel */
      .pl-nav-mega__panel::before {
        content: "";
        position: absolute;
        bottom: 100%;
        left: 0;
        right: 0;
        height: 14px;
        pointer-events: auto;
      }

      .pl-nav-mega:hover .pl-nav-mega__panel,
      .pl-nav-mega:focus-within .pl-nav-mega__panel {
        display: block;
      }

      .pl-nav-mega__card {
        background: rgba(20, 22, 35, 0.82);
        -webkit-backdrop-filter: blur(20px) saturate(1.15);
        backdrop-filter: blur(20px) saturate(1.15);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 12px;
        box-shadow: 0 28px 90px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.06);
        overflow: hidden;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
      }

      .pl-nav-mega__grid {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 0;
        align-items: start;
        min-width: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 1.15rem 1rem 1.35rem;
      }

      /* Colunas: texto com quebra natural (sem truncar como img. 2); separadores verticais com folga topo/fundo */
      .pl-nav-mega__col {
        position: relative;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        padding: 0.35rem 0.75rem 0.5rem;
        border-right: none;
        overflow-wrap: break-word;
        word-wrap: break-word;
        word-break: normal;
        overflow-x: visible;
        overflow-y: visible;
        display: flex;
        flex-direction: column;
        align-items: stretch;
      }

      .pl-nav-mega__col:not(:last-of-type)::after {
        content: "";
        position: absolute;
        top: 1.1rem;
        bottom: 1.1rem;
        right: 0;
        width: 1px;
        background: rgba(148, 163, 184, 0.35);
        pointer-events: none;
      }

      .pl-nav-mega__col-head {
        display: flex;
        align-items: center;
        gap: 0.55rem;
        margin-bottom: 0.55rem;
        min-width: 0;
      }

      .pl-nav-mega__ico {
        flex-shrink: 0;
        width: 36px;
        height: 36px;
        border-radius: var(--radius);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(155deg, rgba(94, 68, 168, 0.98), rgba(76, 29, 149, 0.92));
        border: 1px solid rgba(167, 139, 250, 0.45);
        color: #e9d5ff;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
      }

      .pl-nav-mega__ico svg {
        width: 17px;
        height: 17px;
        display: block;
      }

      .pl-nav-mega__title {
        margin: 0;
        font-size: 0.74rem;
        font-weight: 600;
        line-height: 1.28;
        letter-spacing: 0.02em;
        text-transform: none;
        color: #f8fafc;
        padding: 0;
        min-width: 0;
        flex: 1;
        word-break: normal;
        overflow-wrap: normal;
        hyphens: manual;
      }

      /* Linha curta e grossa sob o título (referência visual 1) */
      .pl-nav-mega__rule {
        width: 2.85rem;
        height: 3px;
        border-radius: 2px;
        flex-shrink: 0;
        align-self: flex-start;
        background: linear-gradient(90deg, rgba(37, 99, 235, 0.14) 0%, #60a5fa 55%, rgba(96, 165, 250, 0.35) 100%);
        margin: 0 0 0.65rem 0;
      }

      .pl-nav-mega__list {
        list-style: none;
        padding: 0;
        margin: 0;
        width: 100%;
        min-width: 0;
      }

      .pl-nav-mega__list > li {
        border-top: 1px solid rgba(255, 255, 255, 0.07);
        min-width: 0;
      }

      .pl-nav-mega__list > li:first-child {
        border-top: 0;
      }

      .pl-nav-mega__link {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 0.45rem;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
        padding: 0.58rem 0.15rem 0.58rem 0;
        font-weight: 400;
        font-size: 0.76rem;
        line-height: 1.35;
        color: rgba(248, 250, 252, 0.92);
        text-decoration: none;
        transition: color 0.15s ease, background 0.15s ease;
      }

      .pl-nav-mega__link:hover {
        color: #fff;
      }

      .pl-nav-mega__link-text {
        flex: 1 1 0;
        min-width: 0;
        overflow-wrap: break-word;
        word-wrap: break-word;
        word-break: normal;
      }

      .pl-nav-mega__link-chev {
        flex-shrink: 0;
        opacity: 0.65;
        color: #c4b5fd;
        font-size: 0.95rem;
        font-weight: 300;
        line-height: 1.2;
        align-self: flex-start;
        margin-top: 0.12em;
      }

      .pl-nav-mega__link:hover .pl-nav-mega__link-chev {
        opacity: 1;
        color: #e9d5ff;
      }

      .pl-nav-mega__footer {
        border-top: none;
        background: transparent;
        padding: 0.35rem 1rem 1.05rem;
      }

      .pl-nav-mega__footer-inner {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 0.75rem 1rem;
        max-width: 100%;
        box-sizing: border-box;
        padding: 0.85rem 1rem;
        border-radius: 12px;
        background: rgba(10, 12, 28, 0.88);
        border: 1px solid rgba(255, 255, 255, 0.1);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
      }

      .pl-nav-mega__footer-left {
        display: flex;
        align-items: center;
        gap: 0.6rem;
        min-width: 0;
      }

      .pl-nav-mega__footer-tag {
        flex-shrink: 0;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(145deg, rgba(168, 85, 247, 0.45), rgba(124, 58, 237, 0.35));
        border: 1px solid rgba(196, 181, 253, 0.4);
        color: #f5f3ff;
      }

      .pl-nav-mega__footer-tag svg {
        width: 18px;
        height: 18px;
      }

      .pl-nav-mega__footer-lead {
        margin: 0;
        font-size: 0.78rem;
        font-weight: 700;
        color: #fff;
        letter-spacing: 0.02em;
        line-height: 1.3;
      }

      .pl-nav-mega__footer-mid {
        margin: 0;
        font-size: 0.72rem;
        font-weight: 400;
        color: rgba(226, 232, 240, 0.88);
        text-align: center;
        line-height: 1.35;
      }

      .pl-nav-mega__footer-cta {
        justify-self: end;
        display: inline-flex;
        align-items: center;
        gap: 0.4rem;
        padding: 0.45rem 0.95rem;
        border-radius: 8px;
        border: 1px solid rgba(147, 197, 253, 0.55);
        background: transparent;
        color: #fff;
        font-size: 0.68rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-decoration: none;
        white-space: nowrap;
        transition: background 0.15s ease, border-color 0.15s ease;
      }

      .pl-nav-mega__footer-cta:hover {
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.65);
      }

      .pl-nav-mega__footer-cta svg {
        width: 14px;
        height: 14px;
        opacity: 0.9;
      }

      @media (max-width: 1300px) {
        .pl-nav-mega__footer-inner {
          grid-template-columns: 1fr;
          text-align: center;
        }

        .pl-nav-mega__footer-left {
          justify-content: center;
        }

        .pl-nav-mega__footer-cta {
          justify-self: center;
        }

        .pl-nav-mega__footer-mid {
          order: 3;
        }
      }

      /* Viewports mais estreitos: texto um pouco menor para caber nas 5 colunas */
      @media (max-width: 1360px) {
        .pl-nav-mega__title {
          font-size: 0.7rem;
        }

        .pl-nav-mega__link {
          font-size: 0.73rem;
          line-height: 1.34;
        }
      }
    }

    .pl-glass-floating-nav__chev {
      display: inline-flex;
      opacity: 0.95;
      margin-left: 0.06rem;
    }

    .pl-glass-floating-nav__chev svg {
      width: 9px;
      height: 9px;
      display: block;
    }

    /* Quem somos e Portfólio: links diretos — sem setinha (desktop) */
    .pl-glass-floating-nav__center > a[href*="quem-somos"] .pl-glass-floating-nav__chev,
    .pl-glass-floating-nav__center > a[href*="instagram.com/printlivros"] .pl-glass-floating-nav__chev {
      display: none !important;
    }

    /* Links diretos — sem setinha à direita (mobile drawer) */
    .pl-m-drawer__link[data-pl-m-nav="home"] .pl-m-drawer__chev,
    .pl-m-drawer__link[data-pl-m-nav="quem"] .pl-m-drawer__chev,
    .pl-m-drawer__link[data-pl-m-nav="portfolio"] .pl-m-drawer__chev,
    .pl-m-drawer__link[data-pl-m-nav="contato"] .pl-m-drawer__chev {
      display: none !important;
    }

    .pl-glass-floating-nav__right {
      display: flex;
      align-items: center;
      gap: 0.55rem 0.85rem;
      justify-self: end;
      grid-column: 2;
    }

    @media (min-width: 1100px) {
      .pl-glass-floating-nav__right {
        grid-column: 3;
      }
    }

    .pl-glass-floating-nav__btn {
      display: none;
      align-items: center;
      justify-content: center;
      min-height: 2.75rem;
      padding: 0 1.2rem;
      border-radius: 9px;
      font-size: 0.6875rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      text-decoration: none;
      transition: transform 0.15s ease, filter 0.15s ease;
      box-sizing: border-box;
    }

    @media (min-width: 768px) {
      .pl-glass-floating-nav__btn {
        display: inline-flex;
      }
    }

    .pl-glass-floating-nav__btn--demo {
      background: #fff;
      color: #000;
      border: 1px solid #fff;
    }

    .pl-glass-floating-nav__btn--demo:hover {
      filter: brightness(0.97);
      transform: translateY(-1px);
    }

    .pl-glass-floating-nav__login-wrap {
      display: none;
      align-items: center;
      gap: 0.55rem;
      position: relative;
    }

    @media (min-width: 768px) {
      .pl-glass-floating-nav__login-wrap {
        display: inline-flex;
      }
    }

    .pl-glass-floating-nav__login-userico {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.35rem;
      height: 1.35rem;
      flex-shrink: 0;
      color: rgba(255, 255, 255, 0.92);
    }

    .pl-glass-floating-nav__login-userico svg {
      width: 100%;
      height: 100%;
      display: block;
    }

    .pl-glass-floating-nav__login-tooltip {
      position: absolute;
      bottom: calc(100% + 10px);
      left: 50%;
      transform: translateX(-50%);
      padding: 0.45rem 0.65rem;
      border-radius: 8px;
      font-size: 0.8125rem;
      font-weight: 500;
      white-space: nowrap;
      max-width: min(280px, 70vw);
      overflow: hidden;
      text-overflow: ellipsis;
      background: rgba(12, 14, 18, 0.96);
      border: 1px solid rgba(255, 255, 255, 0.12);
      color: #fff;
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
      pointer-events: none;
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.15s ease, visibility 0.15s ease;
      z-index: 60;
    }

    .pl-glass-floating-nav__login-tooltip::after {
      content: '';
      position: absolute;
      top: 100%;
      left: 50%;
      margin-left: -6px;
      border: 6px solid transparent;
      border-top-color: rgba(12, 14, 18, 0.96);
    }

    .pl-glass-floating-nav__login-wrap.is-session-active:hover .pl-glass-floating-nav__login-tooltip,
    .pl-glass-floating-nav__login-wrap.is-session-active:focus-within .pl-glass-floating-nav__login-tooltip {
      opacity: 1;
      visibility: visible;
    }

    .pl-glass-hero-stack .pl-oche-burger {
      border-color: rgba(255, 255, 255, 0.35);
      background: rgba(255, 255, 255, 0.08);
      color: #fff;
    }

    .pl-glass-floating-nav-shell .pl-oche-drawer {
      position: absolute;
      left: 0;
      right: 0;
      width: 100%;
      top: 100%;
      margin-top: 0.45rem;
      z-index: 45;
      border-radius: var(--radius);
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: rgba(12, 14, 18, 0.92);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35);
    }

    .pl-glass-hero-stack .pl-oche-drawer a {
      color: rgba(255, 255, 255, 0.92);
    }

    .pl-glass-hero-stack .pl-oche-drawer a:hover {
      background: rgba(255, 255, 255, 0.08);
      color: #fff;
    }

    /* —— Mobile menu (mockup: cartão escuro, separadores, chevrons, LOGIN) —— */
    .pl-glass-floating-nav__brand-text {
      display: inline-flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 0.15rem;
      min-width: 0;
    }

    .pl-glass-floating-nav__brand-kicker {
      display: none;
      font-family: var(--font-primary), -apple-system, sans-serif;
      font-size: 0.52rem;
      font-weight: 700;
      letter-spacing: 0.14em;
      color: rgba(255, 255, 255, 0.88);
      line-height: 1;
      text-transform: uppercase;
    }

    .pl-m-nav-backdrop {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 25;
      pointer-events: none;
      background: rgba(0, 0, 0, 0.52);
      backdrop-filter: blur(14px) saturate(1.05);
      -webkit-backdrop-filter: blur(14px) saturate(1.05);
      transition: opacity 0.22s ease;
      opacity: 0;
    }

    .pl-m-nav-backdrop.is-open {
      display: block;
      pointer-events: auto;
      opacity: 1;
    }

    .pl-m-nav-backdrop::before {
      content: "";
      position: absolute;
      left: 50%;
      top: 0;
      transform: translateX(-50%);
      width: 140%;
      max-width: 720px;
      height: min(42vh, 280px);
      background: radial-gradient(ellipse 80% 90% at 50% 0%, rgba(74, 108, 247, 0.38) 0%, rgba(30, 40, 90, 0.12) 45%, transparent 72%);
      pointer-events: none;
    }

    .pl-glass-floating-nav-shell.pl-m-nav-open {
      z-index: 120;
    }

    @media (min-width: 1100px) {
      .pl-glass-floating-nav__brand-kicker {
        display: none;
      }

      .pl-m-nav-backdrop {
        display: none !important;
      }

      .pl-glass-floating-nav-shell.pl-m-nav-open {
        z-index: 40;
      }
    }

    @media (max-width: 1099px) {
      .pl-glass-floating-nav__brand-kicker {
        display: block;
      }

      .pl-glass-floating-nav-shell .pl-oche-drawer.pl-m-drawer {
        margin-top: 0.55rem;
        padding: 0;
        border: none;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
      }

      /* Cartão escuro — alinhado à ref. 1 (gradiente suave, cantos amplos, brilho topo) */
      .pl-m-drawer__card {
        background: linear-gradient(180deg, #171717 0%, #0c0c0c 45%, #080808 100%);
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        border: 1px solid rgba(255, 255, 255, 0.09);
        border-radius: 26px;
        overflow: hidden;
        padding: 0.55rem 1.2rem 1.05rem;
        box-sizing: border-box;
        box-shadow:
          0 20px 50px rgba(0, 0, 0, 0.72),
          inset 0 1px 0 rgba(255, 255, 255, 0.07);
      }

      .pl-glass-floating-nav-shell .pl-oche-drawer.pl-m-drawer.is-open .pl-m-drawer__card {
        max-height: min(72vh, calc(100dvh - 7.5rem));
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
      }

      .pl-m-drawer__row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        margin: 0;
        padding: 1.12rem 0.1rem;
        min-height: 3.35rem;
        font-family: var(--font-primary), -apple-system, sans-serif;
        font-size: 0.96875rem;
        font-weight: 700;
        color: #fafafa;
        text-decoration: none;
        border: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.07);
        background: transparent;
        width: 100%;
        box-sizing: border-box;
        text-align: left;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
      }

      .pl-m-drawer__card > a.pl-m-drawer__row.pl-m-drawer__link:last-of-type {
        border-bottom: none;
      }

      .pl-m-drawer__row.is-active {
        color: #818cf8;
      }

      .pl-m-drawer__chev {
        flex-shrink: 0;
        margin-left: auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: rgba(255, 255, 255, 0.88);
      }

      .pl-m-drawer__row.is-active .pl-m-drawer__chev {
        color: #818cf8;
      }

      .pl-m-drawer__chev svg {
        width: 1.05rem;
        height: 1.05rem;
        display: block;
      }

      .pl-m-drawer__chev--right {
        font-family: var(--font-primary), -apple-system, sans-serif;
        font-size: 1.05rem;
        font-weight: 500;
        line-height: 1;
        opacity: 0.92;
      }

      .pl-m-drawer__chev--down svg {
        transition: transform 0.2s ease;
      }

      details.pl-m-drawer__acc[open] > summary .pl-m-drawer__chev--down svg {
        transform: rotate(180deg);
      }

      details.pl-m-drawer__acc > summary {
        list-style: none;
      }

      details.pl-m-drawer__acc > summary::-webkit-details-marker {
        display: none;
      }

      details.pl-m-drawer__acc > summary::marker {
        content: "";
      }

      details.pl-m-drawer__acc {
        border-bottom: 1px solid rgba(255, 255, 255, 0.07);
      }

      details.pl-m-drawer__acc > summary.pl-m-drawer__row {
        border-bottom: none;
      }

      details.pl-m-drawer__acc.is-active > summary.pl-m-drawer__row {
        color: #818cf8;
      }

      details.pl-m-drawer__acc.is-active > summary.pl-m-drawer__row .pl-m-drawer__chev {
        color: #818cf8;
      }

      .pl-m-drawer__acc-panel {
        padding: 0.15rem 0 0.85rem;
        font-family: var(--font-primary), -apple-system, sans-serif;
      }

      .pl-m-drawer__group {
        padding-top: 0.45rem;
        padding-bottom: 0.55rem;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
      }

      .pl-m-drawer__group:first-child {
        border-top: none;
        padding-top: 0;
      }

      .pl-m-drawer__group-title {
        margin: 0 0 0.35rem;
        font-size: 0.62rem;
        font-weight: 600;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.42);
      }

      .pl-m-drawer__group ul {
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .pl-m-drawer__group a {
        display: block;
        padding: 0.4rem 0;
        font-size: 0.78rem;
        font-weight: 600;
        color: rgba(255, 255, 255, 0.85);
        text-decoration: none;
      }

      .pl-m-drawer__group a:hover {
        color: #fff;
      }

      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer .pl-m-drawer__group a {
        padding: 0.4rem 0;
        font-size: 0.78rem;
        font-weight: 600;
        color: rgba(255, 255, 255, 0.85);
        border-radius: 0;
      }

      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer .pl-m-drawer__group a:hover {
        background: transparent;
        color: #fff;
      }

      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer a.pl-m-drawer__link:hover {
        background: rgba(255, 255, 255, 0.06);
        color: #fff;
      }

      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer a.pl-m-drawer__link.is-active:hover {
        color: #818cf8;
      }

      /* Acima de .pl-oche-drawer a (especificidade maior), senão cor herda --text e some no fundo branco */
      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer a.pl-m-drawer__login {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.6rem;
        width: 100%;
        margin: 0;
        margin-bottom: calc(0.65rem + env(safe-area-inset-bottom, 0px));
        padding: 1.05rem 1.35rem;
        min-height: 3.35rem;
        border-radius: 999px;
        font-family: var(--font-primary), -apple-system, sans-serif;
        font-size: 0.8125rem;
        font-weight: 600;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        text-decoration: none;
        color: #0a0a0a;
        background: #ffffff;
        border: none;
        box-sizing: border-box;
        box-shadow: 0 6px 24px rgba(0, 0, 0, 0.35);
      }

      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer a.pl-m-drawer__login svg {
        width: 1.25rem;
        height: 1.25rem;
        flex-shrink: 0;
        color: inherit;
        stroke: currentColor;
        stroke-width: 2;
      }

      .pl-m-drawer__login-wrap {
        margin-top: 0.65rem;
        padding-top: 1.05rem;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
      }

      .pl-m-drawer__login:hover {
        filter: brightness(0.98);
      }

      .pl-glass-floating-nav-shell .pl-m-drawer.pl-m-drawer a.pl-m-drawer__login:hover {
        background: #ffffff;
        color: #0a0a0a;
        filter: brightness(0.98);
      }

      .pl-m-nav-backdrop {
        background: rgba(0, 0, 0, 0.48);
        -webkit-backdrop-filter: blur(12px) saturate(1.06);
        backdrop-filter: blur(12px) saturate(1.06);
      }

      .pl-m-nav-backdrop::before {
        height: min(38vh, 260px);
        background: radial-gradient(
          ellipse 85% 95% at 50% 0%,
          rgba(99, 102, 241, 0.28) 0%,
          rgba(55, 65, 120, 0.1) 42%,
          transparent 70%
        );
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__login-wrap {
        display: inline-flex;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__btn.pl-glass-floating-nav__btn--demo {
        display: none !important;
      }
    }

    .pl-glass-hero-rail {
      position: absolute;
      left: max(0.75rem, env(safe-area-inset-left, 0px));
      top: 50%;
      transform: translateY(-50%);
      z-index: 35;
      display: none;
      flex-direction: row;
      align-items: center;
      gap: 0.45rem;
      pointer-events: none;
    }

    @media (min-width: 900px) {
      .pl-glass-hero-rail {
        display: flex;
      }
    }

    .pl-glass-hero-rail__line {
      position: relative;
      width: 2px;
      height: 7.5rem;
      border-radius: 2px;
      background: rgba(255, 255, 255, 0.22);
      overflow: hidden;
    }

    .pl-glass-hero-rail__fill {
      position: absolute;
      left: 0;
      right: 0;
      width: 100%;
      height: 33.3333%;
      top: 0;
      background: #ccff00;
      border-radius: 2px;
      box-shadow: 0 0 16px rgba(204, 255, 0, 0.45);
      transition: top 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .pl-glass-hero-rail__num {
      font-family: var(--font-primary), sans-serif;
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.12em;
      color: rgba(255, 255, 255, 0.95);
    }

    /* Faixa tipo referência: ~50–60% da altura da viewport (banner horizontal). */
    .pl-glass-hero-stack .pl-oche-hero {
      --pl-oche-hero-h: clamp(280px, 56vh, 720px);
    }

    /* Desktop / tablet largo (≥769px): afastar menu do topo como referência + slide mais alto. Mobile (≤768) não usa isto. */
    @media (min-width: 769px) {
      .pl-glass-hero-stack:not(.pl-glass-hero-stack--split) .pl-glass-floating-nav-shell {
        top: 1.875rem;
      }

      .pl-glass-hero-stack .pl-oche-hero {
        --pl-oche-hero-h: clamp(340px, 66vh, 840px);
      }

      /* Faixa .pl-m-hero só existe para ≤768px; sem isto o bloco vaza no desktop. */
      .pl-glass-hero-stack .pl-m-hero {
        display: none;
      }

      /* Lightbox do carrossel mobile — nunca no desktop */
      .pl-hm-v2-lb,
      .pl-hm-v2-reels-lb {
        display: none !important;
      }
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .pl-glass-hero-stack .pl-oche-hero__viewport {
        min-height: var(--pl-oche-hero-h);
        aspect-ratio: unset;
        max-height: none;
      }
    }

    .pl-glass-hero-stack .pl-oche-slide__overlay {
      background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.35) 0%,
        rgba(0, 0, 0, 0.42) 45%,
        rgba(0, 0, 0, 0.55) 100%
      );
    }

    .pl-glass-hero-stack .pl-oche-slide__media img,
    .pl-glass-hero-stack .pl-oche-slide__media-video {
      filter: brightness(0.95) contrast(1.02);
    }

    @media (min-width: 900px) {
      .pl-glass-hero-stack .pl-oche-hero__btn--prev {
        left: 2.75rem;
      }
    }

    .pl-glass-hero-stack .pl-oche-hero__dots button[aria-current="true"] {
      background: #ccff00;
      box-shadow: 0 0 10px rgba(204, 255, 0, 0.45);
    }

    /* —— Mobile (≤768px): layout como referência — trilho 01, faixa do slide mais alta, barra com “gutters”, 2 traços no menu. Desktop intacto. —— */
    .pl-oche-burger__ico--2 {
      display: none;
    }

    .pl-oche-burger__ico {
      width: 1.15rem;
      height: 1.15rem;
      display: block;
    }

    @media (max-width: 768px) {
      .pl-glass-hero-stack {
        --pl-m-nav-scale: 1;
        --pl-m-nav-ctrl: 1.7rem;
        --pl-m-nav-ico: 1.12rem;
        --pl-m-nav-word: 1.28rem;
        overflow: hidden;
        background: transparent;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav-shell {
        width: 100%;
        max-width: none;
        left: 0;
        transform: none;
        top: env(safe-area-inset-top, 0px);
      }

      .pl-glass-hero-stack .pl-glass-floating-nav {
        transform: none;
        transform-origin: top center;
        align-items: center;
        padding: 0.42rem 1rem 0.38rem;
        border-radius: 0;
        background: transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        border: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.28);
        box-shadow: none;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__left,
      .pl-glass-hero-stack .pl-glass-floating-nav__right {
        display: flex;
        align-items: center;
        align-self: center;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__brand-kicker {
        display: none !important;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__brand {
        align-items: center;
        min-height: var(--pl-m-nav-ctrl);
        font-size: 1.02rem;
        gap: 0.28rem;
        color: #ffffff;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__brand-text {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-self: center;
        gap: 0;
        min-height: var(--pl-m-nav-word);
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__brand-mark {
        width: var(--pl-m-nav-ctrl) !important;
        height: var(--pl-m-nav-ctrl) !important;
        max-width: var(--pl-m-nav-ctrl);
        max-height: var(--pl-m-nav-ctrl);
        flex: 0 0 var(--pl-m-nav-ctrl);
        align-self: center;
        object-fit: contain;
        object-position: center;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__brand-wordmark {
        height: var(--pl-m-nav-word) !important;
        width: auto;
        max-width: min(42vw, 148px);
        flex: 0 1 auto;
        align-self: center;
        object-fit: contain;
        object-position: center;
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__login-userico {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: var(--pl-m-nav-ctrl);
        height: var(--pl-m-nav-ctrl);
      }

      .pl-glass-hero-stack .pl-glass-floating-nav__login-userico svg {
        width: var(--pl-m-nav-ico);
        height: var(--pl-m-nav-ico);
      }

      .pl-glass-hero-stack .pl-oche-burger {
        width: var(--pl-m-nav-ctrl);
        height: var(--pl-m-nav-ctrl);
        border-radius: 0;
        border: 0;
        border-color: transparent;
        background: transparent;
        color: #ffffff;
      }

      .pl-glass-hero-stack .pl-oche-burger__ico {
        width: var(--pl-m-nav-ico);
        height: var(--pl-m-nav-ico);
      }

      .pl-glass-hero-stack .pl-oche-burger__ico--3 {
        display: none;
      }

      .pl-glass-hero-stack .pl-oche-burger__ico--2 {
        display: block;
      }

      .pl-glass-hero-stack .pl-glass-hero-rail {
        display: none;
      }

      /* —— MOBILE ONLY: HeroMobilePrintLivrosV2 (desktop intacto) —— */
      .pl-glass-hero-stack .pl-hero-glass-stack,
      .pl-glass-hero-stack .pl-oche-slide__text-glass {
        display: none;
      }

      .pl-glass-hero-stack .pl-m-book {
        display: none;
      }

      .pl-glass-hero-stack .pl-oche-hero {
        --pl-oche-hero-h: auto;
        overflow: visible;
        background: transparent;
      }

      .pl-glass-hero-stack .pl-oche-hero__viewport {
        min-height: 0;
        max-height: none;
        height: auto;
        aspect-ratio: unset;
        line-height: normal;
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-hero__track {
        position: relative;
        inset: auto;
        min-height: 0;
        height: auto;
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-slide {
        min-height: 0;
        height: auto;
        display: block;
        position: relative;
        isolation: isolate;
        /* Fundo no ::before — roxo da referência, dissolve no branco */
        --pl-m-hero-mesh-base: #3a2170;
        background: transparent;
        overflow: visible;
      }

      /* Mesh orgânico + blobs — dissolve na junção com o fundo da página */
      .pl-glass-hero-stack .pl-oche-slide::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
        background:
          radial-gradient(
            ellipse 72% 46% at 92% 10%,
            rgba(176, 148, 238, 0.38) 0%,
            transparent 58%
          ),
          linear-gradient(
            180deg,
            #32185c 0%,
            #3c2170 22%,
            #472a80 42%,
            #6a4aa6 58%,
            #d9d0ee 72%,
            #f3f0f8 86%,
            #ffffff 100%
          );
        filter: none;
        opacity: 1;
        transform: translateZ(0);
        -webkit-mask-image: none;
        mask-image: none;
      }

      /* Camada nítida por baixo do blur — mesma máscara de dissolve */
      .pl-glass-hero-stack .pl-oche-slide::after {
        content: "";
        display: block;
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
        background:
          radial-gradient(
            ellipse 70% 42% at 90% 8%,
            rgba(176, 148, 238, 0.28) 0%,
            transparent 55%
          ),
          linear-gradient(
            180deg,
            #32185c 0%,
            #3c2170 22%,
            #472a80 42%,
            #6a4aa6 58%,
            #d9d0ee 72%,
            #f3f0f8 86%,
            #ffffff 100%
          );
        -webkit-mask-image: none;
        mask-image: none;
      }

      /* Granulado — desligado neste hero (referência é chapada) */
      .pl-glass-hero-stack > .pl-hero-mesh-grain {
        display: none;
        position: absolute;
        inset: 0 -4% -8%;
        z-index: 1;
        pointer-events: none;
        background-image: url("assets/img/hero-grain-tile.png");
        background-size: 140px 140px;
        background-repeat: repeat;
        opacity: 0.18;
        mix-blend-mode: soft-light;
        -webkit-mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 55%,
          rgba(0, 0, 0, 0.65) 74%,
          rgba(0, 0, 0, 0.25) 88%,
          transparent 100%
        );
        mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 55%,
          rgba(0, 0, 0, 0.65) 74%,
          rgba(0, 0, 0, 0.25) 88%,
          transparent 100%
        );
      }

      .pl-glass-hero-stack > .pl-hero-mesh-grain::after {
        content: "";
        position: absolute;
        inset: 0;
        background-image: url("assets/img/hero-grain-tile.png");
        background-size: 200px 200px;
        background-repeat: repeat;
        opacity: 0.12;
        mix-blend-mode: overlay;
        transform: rotate(0.2deg);
      }

      .pl-glass-hero-stack .pl-oche-slide__media {
        position: absolute;
        inset: 0;
        z-index: 0;
        overflow: hidden;
        /* Mobile: sem vídeo de fundo (desktop ≥769 mantém o hero.mp4). */
        display: none;
      }

      .pl-glass-hero-stack .pl-oche-slide__media-video {
        display: none !important;
      }

      .pl-glass-hero-stack .pl-oche-hero--single .pl-oche-slide__overlay {
        display: none !important;
      }

      .pl-glass-hero-stack .pl-oche-slide__content {
        position: relative;
        z-index: 2;
        inset: auto;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        text-align: center;
        gap: 0;
        --pl-m-hero-edge-gap: 8px;
        --pl-m-hero-nav-top: env(safe-area-inset-top, 0px);
        --pl-m-hero-nav-h: calc(0.42rem + var(--pl-m-nav-ctrl) + 0.38rem);
        min-height: 0;
        padding:
          calc(var(--pl-m-hero-nav-top) + var(--pl-m-hero-nav-h) + 18px)
          0
          8px;
        color: #fff;
        box-sizing: border-box;
        overflow-x: hidden;
      }

      .pl-glass-hero-stack .pl-oche-slide__content::before,
      .pl-glass-hero-stack .pl-oche-slide__content::after {
        content: none;
        display: none;
      }

      .pl-glass-hero-stack .pl-m-hero.pl-hm-v2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0;
        order: 1;
        flex: 0 0 auto;
        width: 100%;
        max-width: 100%;
        margin: 0;
        pointer-events: none;
        text-align: center;
        font-family: Inter, var(--font-primary), -apple-system, sans-serif;
        color: #ffffff;
        box-sizing: border-box;
      }

      .pl-hm-v2__inner {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        max-width: 430px;
        margin: 0 auto;
        padding: 2px 18px 6px;
        box-sizing: border-box;
      }

      .pl-hm-v2__head {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
        column-gap: 6px;
        width: 100%;
        text-align: left;
        pointer-events: none;
      }

      .pl-hm-v2__head-main {
        min-width: 0;
      }

      .pl-hm-v2__kicker {
        margin: 0 0 8px;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.16em;
        line-height: 1.2;
        color: rgba(255, 255, 255, 0.78);
        text-transform: uppercase;
      }

      .pl-hm-v2__lead {
        margin: 10px 0 0;
        max-width: none;
        padding-right: 4px;
        font-size: 13px;
        font-weight: 400;
        line-height: 1.35;
        letter-spacing: -0.015em;
        color: rgba(255, 255, 255, 0.92);
      }

      .pl-hm-v2__script {
        margin: 10px 0 0;
        padding: 0 2px 0 0;
        font-family: Caveat, cursive;
        font-size: clamp(22px, 6vw, 27px);
        font-weight: 700;
        line-height: 0.92;
        letter-spacing: 0.01em;
        color: #c9b6ff;
        text-align: left;
        transform: rotate(9deg);
        white-space: nowrap;
      }

      .pl-hm-v2__script-u {
        position: relative;
        display: inline-block;
      }

      .pl-hm-v2__script-u::after {
        content: "";
        position: absolute;
        left: 0;
        right: 2px;
        bottom: -3px;
        height: 7px;
        border-bottom: 1.8px solid #c9b6ff;
        border-radius: 50%;
        transform: rotate(-6deg);
      }

      /* Player mobile — largura sincronizada à referência do subtítulo antigo */
      .pl-m-hero__player.pl-hero-player {
        --pl-hero-player-accent: #ff0000;
        position: relative;
        display: block;
        box-sizing: border-box;
        width: 100% !important;
        max-width: 100%;
        margin: 16px auto 6px;
        aspect-ratio: 16 / 9;
        line-height: 0;
        overflow: hidden;
        isolation: isolate;
        border-radius: 16px;
        background: #111;
        box-shadow: 0 14px 28px rgba(28, 12, 64, 0.32);
        cursor: pointer;
        user-select: none;
        pointer-events: auto;
        flex: 0 0 auto;
      }

      .pl-m-hero__player.pl-hero-player.is-fs {
        max-width: none;
        max-height: none;
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
        border-radius: 0;
      }

      .pl-m-hero .pl-hero-player__video {
        display: block;
        width: 100%;
        height: 100%;
        margin: 0;
        border: 0;
        object-fit: cover;
        object-position: center center;
        pointer-events: none;
        background: #111;
      }

      .pl-m-hero .pl-hero-player__bigplay {
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 3;
        transform: translate(-50%, -50%);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 72px;
        height: 72px;
        padding: 0;
        border: 0;
        background: transparent;
        cursor: pointer;
        filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.45));
        opacity: 0;
        pointer-events: none;
        transition: transform 0.18s ease, opacity 0.18s ease;
      }

      .pl-m-hero .pl-hero-player__bigplay svg {
        width: 72px;
        height: auto;
        display: block;
      }

      .pl-m-hero .pl-hero-player[data-playing="0"] .pl-hero-player__bigplay,
      .pl-m-hero .pl-hero-player[data-state="paused"] .pl-hero-player__bigplay,
      .pl-m-hero .pl-hero-player[data-state="loading"] .pl-hero-player__bigplay {
        opacity: 1;
        pointer-events: auto;
      }

      .pl-m-hero .pl-hero-player[data-playing="1"] .pl-hero-player__bigplay {
        opacity: 0;
        pointer-events: none;
      }

      .pl-m-hero .pl-hero-player__sound-cta {
        position: absolute;
        top: 10px;
        right: 10px;
        z-index: 6;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        max-width: calc(100% - 20px);
        margin: 0;
        padding: 7px 10px 7px 8px;
        border: 1px solid rgba(255, 255, 255, 0.55);
        border-radius: 999px;
        background:
          linear-gradient(135deg, rgba(255, 60, 60, 0.95) 0%, rgba(220, 0, 0, 0.92) 55%, rgba(180, 0, 0, 0.94) 100%);
        box-shadow:
          0 0 0 1px rgba(255, 255, 255, 0.28) inset,
          0 0 0 2px rgba(255, 0, 0, 0.25),
          0 10px 28px rgba(185, 0, 0, 0.45);
        color: #fff;
        font: 750 11px/1.2 Inter, var(--font-primary), system-ui, sans-serif;
        letter-spacing: 0.01em;
        cursor: pointer;
        pointer-events: auto;
        animation: pl-hero-sound-cta-glow 1.8s ease-in-out infinite;
      }

      .pl-m-hero .pl-hero-player__sound-cta[hidden] {
        display: none !important;
      }

      .pl-m-hero .pl-hero-player__sound-cta-ico {
        display: grid;
        place-items: center;
        width: 24px;
        height: 24px;
        flex: 0 0 auto;
      }

      .pl-m-hero .pl-hero-player__sound-cta-ico svg {
        display: block;
        width: 18px;
        height: 18px;
      }

      .pl-m-hero .pl-hero-player__sound-wave--1 {
        animation: pl-hero-sound-wave 1.2s ease-in-out infinite;
      }

      .pl-m-hero .pl-hero-player__sound-wave--2 {
        animation: pl-hero-sound-wave 1.2s ease-in-out 0.2s infinite;
      }

      .pl-m-hero .pl-hero-player__chrome {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 4;
        padding: 0 8px 6px;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.72) 100%);
        opacity: 1;
        transform: none;
        pointer-events: auto;
      }

      .pl-m-hero .pl-hero-player__progress {
        height: 18px;
        display: flex;
        align-items: center;
        cursor: pointer;
        touch-action: none;
        position: relative;
        z-index: 5;
      }

      .pl-m-hero .pl-hero-player__progress-track {
        position: relative;
        width: 100%;
        height: 3px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.28);
        overflow: hidden;
      }

      .pl-m-hero .pl-hero-player__progress-buf,
      .pl-m-hero .pl-hero-player__progress-fill {
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 0;
        border-radius: inherit;
      }

      .pl-m-hero .pl-hero-player__progress-buf {
        background: rgba(255, 255, 255, 0.35);
      }

      .pl-m-hero .pl-hero-player__progress-fill {
        background: var(--pl-hero-player-accent);
      }

      .pl-m-hero .pl-hero-player__bar {
        display: flex;
        align-items: center;
        gap: 2px;
        min-height: 36px;
      }

      .pl-m-hero .pl-hero-player__btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        padding: 0;
        border: 0;
        border-radius: 8px;
        background: transparent;
        color: #fff;
        cursor: pointer;
        flex: 0 0 auto;
      }

      .pl-m-hero .pl-hero-player__ico {
        width: 22px;
        height: 22px;
        display: block;
      }

      .pl-m-hero .pl-hero-player[data-playing="1"] .pl-hero-player__ico--play,
      .pl-m-hero .pl-hero-player:not([data-playing="1"]) .pl-hero-player__ico--pause {
        display: none;
      }

      .pl-m-hero .pl-hero-player[data-muted="0"] .pl-hero-player__ico--mute,
      .pl-m-hero .pl-hero-player:not([data-muted="0"]) .pl-hero-player__ico--vol {
        display: none;
      }

      .pl-m-hero .pl-hero-player.is-fs .pl-hero-player__ico--fs,
      .pl-m-hero .pl-hero-player:not(.is-fs) .pl-hero-player__ico--fs-exit {
        display: none;
      }

      .pl-m-hero .pl-hero-player__volwrap {
        display: flex;
        align-items: center;
        width: min(72px, 18vw);
        margin: 0 2px;
      }

      .pl-m-hero .pl-hero-player__volume {
        width: 100%;
        accent-color: #fff;
        cursor: pointer;
      }

      .pl-m-hero .pl-hero-player__time {
        margin-left: auto;
        margin-right: 2px;
        color: #fff;
        font: 600 11px/1 Inter, var(--font-primary), system-ui, sans-serif;
        white-space: nowrap;
        opacity: 0.92;
      }

      .pl-m-hero .pl-hero-player__btn--fs {
        margin-left: 0;
      }

      .pl-m-hero .pl-hero-player[data-state="loading"]::before {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 2;
        width: 36px;
        height: 36px;
        margin: -18px 0 0 -18px;
        border: 3px solid rgba(255, 255, 255, 0.25);
        border-top-color: #fff;
        border-radius: 50%;
        animation: pl-m-hero-spin 0.75s linear infinite;
        pointer-events: none;
      }

      .pl-m-hero .pl-hero-player[data-state="playing"]::before,
      .pl-m-hero .pl-hero-player[data-state="paused"]::before {
        display: none;
      }

      @keyframes pl-m-hero-spin {
        to { transform: rotate(360deg); }
      }

      @keyframes pl-hero-sound-cta-glow {
        0%, 100% {
          box-shadow:
            0 0 0 1px rgba(255, 255, 255, 0.28) inset,
            0 0 0 2px rgba(255, 0, 0, 0.25),
            0 10px 28px rgba(185, 0, 0, 0.45),
            0 0 14px rgba(255, 40, 40, 0.4);
        }
        50% {
          box-shadow:
            0 0 0 1px rgba(255, 255, 255, 0.4) inset,
            0 0 0 2px rgba(255, 80, 80, 0.45),
            0 12px 32px rgba(185, 0, 0, 0.55),
            0 0 26px rgba(255, 50, 50, 0.7);
        }
      }

      @keyframes pl-hero-sound-wave {
        0%, 100% { opacity: 0.3; }
        50% { opacity: 1; }
      }

      .pl-m-hero__badge {
        display: none;
      }

      .pl-m-hero__headline {
        margin: 0;
        max-width: 100%;
        width: 100%;
        font-size: clamp(28px, 8.4vw, 36px);
        font-weight: 800;
        line-height: 1.05;
        letter-spacing: -0.035em;
        text-align: left;
        text-wrap: unset;
        flex: 0 0 auto;
      }

      .pl-m-hero__headline-line {
        display: block;
        color: #ffffff;
      }

      .pl-m-hero__headline-line--gold {
        color: #cbb6ff;
        text-shadow: none;
        margin-top: 0;
      }

      .pl-m-hero__desc {
        /* Referência invisível — mesma métrica do subtítulo antigo p/ largura do vídeo */
        position: absolute;
        left: 0;
        top: 0;
        width: max-content;
        max-width: none;
        margin: 0;
        padding: 0;
        border: 0;
        font-size: clamp(9.5px, 2.55vw, 12px);
        line-height: 1.2;
        font-weight: 400;
        letter-spacing: -0.02em;
        white-space: nowrap;
        visibility: hidden;
        pointer-events: none;
        overflow: hidden;
        height: 0;
      }

      .pl-m-hero__desc strong {
        font-weight: 700;
      }

      .pl-m-hero__features {
        display: none;
      }

      /* Stories Instagram — swipe nativo; clique abre o vídeo */
      .pl-hm-v2__carousel-title {
        display: none !important;
      }

      .pl-hm-v2__products,
      .pl-hm-v2__trust {
        display: none !important;
      }

      .pl-hm-v2__carousel-title::before,
      .pl-hm-v2__carousel-title::after {
        content: none;
        display: none;
      }

      /* Mobile reels coverflow — menor + cards mais juntos */
      .pl-hm-v2__reels {
        --pl-mrc-scale: 1;
        --pl-mrc-base-h: 112;
        --pl-mrc-center-w: 58;
        --pl-mrc-center-h: 102;
        --pl-mrc-side-scale: 0.86;
        --pl-mrc-spacing: -4;
        --pl-mrc-feather-x: linear-gradient(
          90deg,
          transparent 0%,
          rgba(0, 0, 0, 0.12) 2%,
          rgba(0, 0, 0, 0.4) 7%,
          rgba(0, 0, 0, 0.75) 14%,
          #000 22%,
          #000 78%,
          rgba(0, 0, 0, 0.75) 86%,
          rgba(0, 0, 0, 0.4) 93%,
          rgba(0, 0, 0, 0.12) 98%,
          transparent 100%
        );
        --pl-mrc-feather-y: linear-gradient(
          180deg,
          transparent 0%,
          rgba(0, 0, 0, 0.35) 6%,
          #000 16%,
          #000 84%,
          rgba(0, 0, 0, 0.35) 94%,
          transparent 100%
        );
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100vw;
        max-width: 100vw;
        height: calc(var(--pl-mrc-base-h) * 1px * var(--pl-mrc-scale));
        margin-top: 0;
        margin-bottom: 14px;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 0;
        box-sizing: border-box;
        overflow: visible;
        isolation: isolate;
        touch-action: pan-y;
        user-select: none;
        -webkit-user-select: none;
        pointer-events: auto;
        flex: 0 0 auto;
        align-self: stretch;
      }

      .pl-hm-v2__reels::before {
        content: "";
        position: absolute;
        inset: -6% 0;
        z-index: 0;
        pointer-events: none;
        background:
          radial-gradient(
            120% 90% at 50% 50%,
            rgba(255, 255, 255, 0.1) 0%,
            rgba(255, 255, 255, 0.03) 45%,
            transparent 72%
          );
        -webkit-mask-image: var(--pl-mrc-feather-x), var(--pl-mrc-feather-y);
        -webkit-mask-composite: source-in;
        mask-image: var(--pl-mrc-feather-x), var(--pl-mrc-feather-y);
        mask-composite: intersect;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
      }

      .pl-hm-v2__reels-viewport {
        position: relative;
        z-index: 1;
        width: 100%;
        height: 100%;
        overflow: hidden;
        -webkit-mask-image: var(--pl-mrc-feather-x);
        mask-image: var(--pl-mrc-feather-x);
      }

      .pl-hm-v2__reels-track {
        position: absolute;
        inset: 0;
        display: block;
      }

      .pl-hm-v2__reel {
        position: absolute;
        top: 50%;
        left: 50%;
        width: calc(var(--pl-mrc-center-w) * 1px * var(--pl-mrc-scale));
        height: calc(var(--pl-mrc-center-h) * 1px * var(--pl-mrc-scale));
        margin: 0;
        padding: 0;
        border: none;
        border-radius: 10px;
        overflow: hidden;
        background: #0b1220;
        box-shadow: 0 6px 16px rgba(0, 0, 0, 0.32);
        transform: translate(-50%, -50%);
        transform-origin: center center;
        transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.28s ease, box-shadow 0.28s ease;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        pointer-events: auto;
        display: flex;
        flex-direction: column;
      }

      .pl-hm-v2__reel.is-center {
        box-shadow:
          0 0 0 1.5px rgba(112, 86, 255, 0.55),
          0 0 16px rgba(112, 86, 255, 0.28),
          0 8px 18px rgba(0, 0, 0, 0.36);
        z-index: 5;
      }

      .pl-hm-v2__reel.is-edge {
        filter: saturate(0.85) brightness(0.88);
      }

      .pl-hm-v2__reel:focus-visible {
        outline: 2px solid rgba(245, 188, 51, 0.85);
        outline-offset: 3px;
      }

      .pl-hm-v2__reels.is-dragging .pl-hm-v2__reel {
        cursor: grabbing;
        transition: none;
      }

      .pl-hm-v2__reel-cover {
        position: relative;
        display: block;
        width: 100%;
        flex: 1 1 auto;
        min-height: 0;
        overflow: hidden;
        background: #0b1220;
      }

      .pl-hm-v2__reel-poster {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        pointer-events: none;
        background: #0b1220;
      }

      .pl-hm-v2__reel-play {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.02) 0%, rgba(0, 0, 0, 0.22) 100%);
      }

      .pl-hm-v2__reel-play-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(28px * var(--pl-mrc-scale));
        height: calc(28px * var(--pl-mrc-scale));
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.15);
        border: 1.5px solid rgba(255, 255, 255, 0.9);
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.28);
      }

      .pl-hm-v2__reel.is-center .pl-hm-v2__reel-play-btn {
        width: calc(32px * var(--pl-mrc-scale));
        height: calc(32px * var(--pl-mrc-scale));
      }

      .pl-hm-v2__reel-play-btn svg {
        width: 42%;
        height: 42%;
        margin-left: 6%;
        fill: #fff;
      }

      .pl-hm-v2__reel-foot {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 0;
        width: 100%;
        min-height: calc(30px * var(--pl-mrc-scale));
        height: auto;
        flex: 0 0 auto;
        padding: 4px 5px 5px;
        box-sizing: border-box;
        background: linear-gradient(180deg, rgba(90, 78, 160, 0.78) 0%, rgba(70, 58, 140, 0.86) 100%);
        text-align: left;
        overflow: visible;
      }

      .pl-hm-v2__reel.is-center .pl-hm-v2__reel-foot {
        background: linear-gradient(180deg, rgba(115, 91, 255, 0.92) 0%, rgba(93, 60, 243, 0.95) 100%);
      }

      .pl-hm-v2__reel-title {
        display: block;
        width: 100%;
        font-family: var(--font-primary), sans-serif;
        font-size: 8.5px;
        font-weight: 700;
        line-height: 1.15;
        letter-spacing: 0;
        color: #fff;
        text-transform: uppercase;
        white-space: nowrap;
        overflow: visible;
      }

      .pl-hm-v2__reel-sub {
        display: block;
        width: 100%;
        font-family: var(--font-primary), sans-serif;
        font-size: 7.5px;
        font-weight: 500;
        line-height: 1.15;
        letter-spacing: 0;
        color: rgba(255, 255, 255, 0.72);
        white-space: nowrap;
        overflow: visible;
      }

      /* Legacy material carousel — desativado (substituído por reels) */
      .pl-hm-v2__carousel-wrap,
      .pl-hm-v2__carousel,
      .pl-hm-v2__carousel-nav,
      .pl-hm-v2__card {
        display: none !important;
      }

      /* Instagram stories: fila circular, swipe nativo, clique abre o vídeo */
      .pl-hm-v2__reels.pl-hm-v2__reels--ig {
        display: block !important;
        width: calc(100% + 36px);
        max-width: none;
        height: auto;
        margin: 10px -18px 0;
        padding: 12px 16px 4px;
        box-sizing: border-box;
        overflow: visible;
        touch-action: pan-x;
        isolation: auto;
        align-self: stretch;
        pointer-events: auto;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0, #f4f0fa 28px, #ffffff 70px);
      }

      .pl-hm-v2__reels.pl-hm-v2__reels--ig::before {
        display: none !important;
        content: none;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reels-viewport {
        position: relative;
        width: 100%;
        height: auto;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        overscroll-behavior-x: contain;
        -webkit-mask-image: none;
        mask-image: none;
        scrollbar-width: none;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reels-viewport::-webkit-scrollbar {
        display: none;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reels-track {
        position: relative;
        inset: auto;
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 12px;
        width: max-content;
        min-width: 100%;
        padding: 2px 2px 4px;
        box-sizing: border-box;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel {
        position: relative;
        top: auto;
        left: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 6px;
        width: 68px;
        height: auto;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        overflow: visible;
        background: transparent;
        box-shadow: none;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
        flex: 0 0 auto;
        scroll-snap-align: start;
        cursor: pointer;
        z-index: auto !important;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel-cover {
        width: 64px;
        height: 64px;
        flex: 0 0 64px;
        border-radius: 999px;
        padding: 2.5px;
        box-sizing: border-box;
        overflow: hidden;
        background: linear-gradient(135deg, #f58529 0%, #dd2a7b 40%, #8134af 70%, #515bd4 100%);
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel-poster {
        width: 100%;
        height: 100%;
        border-radius: 999px;
        border: 2px solid #efeaf8;
        object-fit: cover;
        object-position: 50% 40%;
        background: #1a1028;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel-play {
        display: none !important;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel-foot {
        display: block;
        width: 68px;
        min-height: 0;
        height: auto;
        padding: 0;
        background: transparent;
        text-align: center;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel.is-center .pl-hm-v2__reel-foot {
        background: transparent;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel-title {
        font-size: 9px;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        color: #3d2a72;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .pl-hm-v2__reels--ig .pl-hm-v2__reel-sub {
        display: none !important;
      }

      /* Lightbox reels mobile */
      .pl-hm-v2-reels-lb {
        position: fixed;
        inset: 0;
        z-index: 2147483000;
        display: none;
        align-items: center;
        justify-content: center;
        padding: 16px;
        box-sizing: border-box;
      }

      .pl-hm-v2-reels-lb.is-open:not([hidden]) {
        display: flex;
      }

      .pl-hm-v2-reels-lb__backdrop {
        position: absolute;
        inset: 0;
        background: rgba(8, 12, 24, 0.78);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
      }

      .pl-hm-v2-reels-lb__dialog {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: min(100%, 420px);
        max-height: min(92vh, 820px);
      }

      .pl-hm-v2-reels-lb__stage {
        position: relative;
        width: min(100%, 300px);
        aspect-ratio: 9 / 16;
        max-height: min(78vh, 720px);
        border-radius: 16px;
        overflow: hidden;
        background: #000;
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
      }

      .pl-hm-v2-reels-lb__video {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
        background: #000;
      }

      .pl-hm-v2-reels-lb__nav,
      .pl-hm-v2-reels-lb__close {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        margin: 0;
        padding: 0;
        border: none;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.94);
        color: #0f172a;
        cursor: pointer;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
        -webkit-tap-highlight-color: transparent;
      }

      .pl-hm-v2-reels-lb__nav svg,
      .pl-hm-v2-reels-lb__close svg {
        width: 20px;
        height: 20px;
      }

      .pl-hm-v2-reels-lb__close {
        position: absolute;
        top: 12px;
        right: 12px;
        z-index: 2;
      }

      .pl-hm-v2-reels-lb__count {
        position: absolute;
        left: 50%;
        bottom: 12px;
        transform: translateX(-50%);
        z-index: 2;
        padding: 4px 10px;
        border-radius: 999px;
        background: rgba(0, 0, 0, 0.55);
        color: #fff;
        font-family: var(--font-primary), sans-serif;
        font-size: 11px;
        font-weight: 600;
        letter-spacing: 0.04em;
        pointer-events: none;
      }

      .pl-hm-v2__lower {
        width: calc(100% + 36px);
        margin: 0 -18px 0;
        padding: 8px 18px 4px;
        box-sizing: border-box;
        background: #ffffff;
        pointer-events: none;
      }

      .pl-hm-v2__lower > * {
        pointer-events: auto;
      }

      .pl-hm-v2__products {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 6px 4px;
        width: 100%;
        margin: 14px 0 0;
        padding: 0;
        pointer-events: auto;
      }

      .pl-hm-v2__product {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 7px;
        min-width: 0;
        text-decoration: none;
        color: #4a2d86;
        -webkit-tap-highlight-color: transparent;
      }

      .pl-hm-v2__product-ring {
        display: block;
        width: 62px;
        height: 62px;
        border-radius: 999px;
        overflow: hidden;
        background: #fff;
        box-shadow: 0 0 0 2.5px #6b3fd4;
        flex: 0 0 auto;
      }

      .pl-hm-v2__product-ring img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 50% 40%;
      }

      .pl-hm-v2__product:last-child .pl-hm-v2__product-ring img {
        object-position: 50% 42%;
      }

      .pl-hm-v2__product-label {
        font-size: 9px;
        font-weight: 800;
        letter-spacing: 0.06em;
        line-height: 1;
        text-transform: uppercase;
        color: #3d2a72;
      }

      .pl-hm-v2__trust {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px 6px;
        width: 100%;
        margin: 16px 0 0;
        padding: 0;
        list-style: none;
        pointer-events: none;
      }

      .pl-hm-v2__trust-item {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 6px;
        min-width: 0;
        color: #4b3388;
      }

      .pl-hm-v2__trust-ico {
        display: grid;
        place-items: center;
        width: 28px;
        height: 28px;
        flex: 0 0 28px;
        border: 1.5px solid #6b46c1;
        border-radius: 999px;
        color: #5b3bb0;
        background: transparent;
      }

      .pl-hm-v2__trust-ico svg {
        width: 14px;
        height: 14px;
        display: block;
      }

      .pl-hm-v2__trust-item span:last-child {
        font-size: 9px;
        font-weight: 600;
        line-height: 1.15;
        letter-spacing: -0.02em;
        text-align: left;
        color: #4b3388;
      }

      .pl-m-hero__cta {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        min-width: 0;
        max-width: 100%;
        height: 50px;
        margin: 10px auto 0;
        padding: 0 18px;
        flex: 0 0 auto;
        border: none;
        border-radius: 999px;
        background: #ffffff;
        color: #4a2d8a;
        font-family: inherit;
        font-size: 13px;
        font-weight: 800;
        line-height: 1;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        text-decoration: none;
        text-align: center;
        box-shadow: 0 8px 22px rgba(62, 32, 130, 0.16);
        pointer-events: auto;
        box-sizing: border-box;
      }

      .pl-m-hero__cta svg {
        width: 18px;
        height: 18px;
        flex: 0 0 auto;
        color: #5b3bb0;
      }

      .pl-m-hero__cta:focus-visible {
        outline: 2px solid rgba(74, 45, 138, 0.45);
        outline-offset: 2px;
      }

      /* Nota mantida no DOM (regra visual-only); ocultada no V2 */
      .pl-m-hero.pl-hm-v2 .pl-m-hero__note {
        display: none;
      }

      /* Lightbox material (mobile-only) — MaterialPreviewModal v3 */
      .pl-hm-v2-lb {
        position: fixed;
        inset: 0;
        z-index: 12000;
        display: none;
        align-items: center;
        justify-content: center;
        padding: max(10px, env(safe-area-inset-top, 0px)) 12px max(10px, env(safe-area-inset-bottom, 0px));
        box-sizing: border-box;
        background: rgba(4, 8, 16, 0.82);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
        overflow: hidden;
      }

      .pl-hm-v2-lb.is-open {
        display: flex !important;
      }

      .pl-hm-v2-lb__panel {
        position: relative;
        display: flex;
        flex-direction: column;
        width: min(calc(100vw - 24px), 420px);
        max-width: 100%;
        max-height: min(92dvh, calc(100vh - 20px));
        height: auto;
        margin: 0;
        padding: clamp(10px, 2.2vh, 16px) clamp(22px, 6vw, 32px);
        border-radius: clamp(14px, 4vw, 22px);
        background: #111824;
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow: 0 35px 80px rgba(0, 0, 0, 0.55);
        box-sizing: border-box;
        overflow: hidden;
      }

      .pl-hm-v2-lb__close {
        position: absolute;
        top: 8px;
        right: 8px;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: center;
        width: clamp(36px, 10vw, 42px);
        height: clamp(36px, 10vw, 42px);
        margin: 0;
        padding: 0;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 999px;
        background: #1c2432;
        color: #fff;
        cursor: pointer;
        box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35);
        -webkit-tap-highlight-color: transparent;
      }

      .pl-hm-v2-lb__close svg {
        width: 16px;
        height: 16px;
        display: block;
      }

      .pl-hm-v2-lb__header {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        min-height: 0;
        margin: 2px 36px 0;
        padding: 0;
        text-align: center;
      }

      .pl-hm-v2-lb__crown {
        display: block;
        width: clamp(16px, 4.5vw, 20px);
        height: clamp(16px, 4.5vw, 20px);
        margin: 0 0 4px;
        color: #f4c74a;
      }

      .pl-hm-v2-lb__title {
        margin: 0;
        padding: 0;
        font-family: "Bebas Neue", Arial, sans-serif;
        font-size: clamp(20px, 5.5vw, 28px);
        font-weight: 700;
        line-height: 1;
        letter-spacing: 1.4px;
        text-align: center;
        text-transform: uppercase;
        color: #ffffff;
      }

      .pl-hm-v2-lb__title-accent {
        color: #f4c74a;
      }

      .pl-hm-v2-lb__divider {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: min(180px, 65%);
        height: 10px;
        margin: 6px auto 0;
      }

      .pl-hm-v2-lb__divider::before,
      .pl-hm-v2-lb__divider::after {
        content: "";
        flex: 1 1 auto;
        height: 1px;
        background: rgba(255, 255, 255, 0.18);
      }

      .pl-hm-v2-lb__divider-star {
        flex: 0 0 auto;
        width: 7px;
        height: 7px;
        margin: 0 8px;
        background: #f4c74a;
        transform: rotate(45deg);
        box-shadow: 0 0 0 1px rgba(244, 199, 74, 0.25);
      }

      .pl-hm-v2-lb__gallery {
        position: relative;
        flex: 1 1 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 0;
        margin-top: clamp(6px, 1.4vh, 12px);
        padding: 0;
        border-radius: clamp(12px, 3vw, 16px);
        background: #ffffff;
        box-sizing: border-box;
        overflow: hidden;
      }

      .pl-hm-v2-lb__img {
        display: block;
        width: 100%;
        height: auto;
        max-height: min(28vh, 220px);
        margin: 0;
        border-radius: clamp(12px, 3vw, 16px);
        object-fit: contain;
        background: #ffffff;
      }

      .pl-hm-v2-lb__prev,
      .pl-hm-v2-lb__next {
        position: absolute;
        top: 50%;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        width: clamp(40px, 11vw, 48px);
        height: clamp(40px, 11vw, 48px);
        margin: 0;
        padding: 0;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 999px;
        background: #1b2432;
        color: #fff;
        cursor: pointer;
        transform: translateY(-50%);
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.45);
        -webkit-tap-highlight-color: transparent;
      }

      .pl-hm-v2-lb__prev {
        left: -18px;
      }

      .pl-hm-v2-lb__next {
        right: -18px;
      }

      .pl-hm-v2-lb__prev svg,
      .pl-hm-v2-lb__next svg {
        width: 18px;
        height: 18px;
        display: block;
      }

      .pl-hm-v2-lb__features {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: clamp(6px, 1.5vw, 10px);
        flex: 0 0 auto;
        margin-top: clamp(6px, 1.4vh, 12px);
      }

      .pl-hm-v2-lb__feature {
        margin: 0;
        padding: clamp(8px, 1.4vh, 12px);
        border-radius: 12px;
        background: #161f2d;
        border: 1px solid rgba(255, 255, 255, 0.05);
        box-sizing: border-box;
      }

      .pl-hm-v2-lb__feature-icon {
        display: block;
        width: 16px;
        height: 16px;
        margin: 0 0 5px;
        color: #f4c74a;
      }

      .pl-hm-v2-lb__feature-title {
        margin: 0 0 2px;
        padding: 0;
        color: #ffffff;
        font-size: clamp(11px, 3.2vw, 13px);
        font-weight: 700;
        line-height: 1.2;
      }

      .pl-hm-v2-lb__feature-desc {
        margin: 0;
        padding: 0;
        color: #b6c0cf;
        font-size: clamp(10px, 2.8vw, 12px);
        font-weight: 400;
        line-height: 1.3;
      }

      .pl-hm-v2-lb__footer,
      .pl-hm-v2-lb__caption,
      .pl-hm-v2-lb__desc {
        display: none !important;
      }

      @media (max-height: 720px) {
        .pl-hm-v2-lb__img {
          max-height: min(22vh, 160px);
        }

        .pl-hm-v2-lb__feature-desc {
          display: none;
        }

        .pl-hm-v2-lb__feature-icon {
          margin-bottom: 3px;
        }
      }

      @media (max-height: 600px) {
        .pl-hm-v2-lb__crown,
        .pl-hm-v2-lb__divider {
          display: none;
        }

        .pl-hm-v2-lb__img {
          max-height: min(18vh, 120px);
        }

        .pl-hm-v2-lb__features {
          gap: 6px;
        }

        .pl-hm-v2-lb__feature {
          padding: 6px 8px;
        }
      }

      @media (max-width: 420px) {
        .pl-hm-v2-lb {
          padding: 8px 10px;
        }

        .pl-hm-v2-lb__panel {
          width: calc(100vw - 20px);
          padding: 10px 22px;
          border-radius: 16px;
        }

        .pl-hm-v2-lb__prev {
          left: -14px;
        }

        .pl-hm-v2-lb__next {
          right: -14px;
        }

        .pl-hm-v2__inner {
          padding-inline: 16px;
        }

        .pl-m-hero__headline {
          font-size: clamp(26px, 8vw, 34px);
          line-height: 1.06;
        }

        .pl-hm-v2__product-ring {
          width: 54px;
          height: 54px;
        }

        .pl-m-hero__cta {
          font-size: 12.5px;
          height: 48px;
          margin-top: 14px;
        }

        .pl-m-hero__player.pl-hero-player {
          margin-bottom: 6px;
          border-radius: 16px;
        }
      }

      /* Telas baixas: compacta um pouco o bloco */
      @media (max-height: 740px) {
        .pl-m-hero__player.pl-hero-player {
          margin-bottom: 4px;
        }
      }

      @media (max-height: 640px) {
        .pl-m-hero__headline {
          font-size: clamp(25px, 7.6vw, 32px);
        }
      }

      .pl-glass-hero-stack .pl-m-book__pages {
        position: relative;
        display: flex;
        border-radius: 28px;
        overflow: hidden;
        /* NÃO usar filter aqui: costuma quebrar backdrop-filter */
        box-shadow:
          0 22px 70px rgba(0, 0, 0, 0.5),
          /* contorno branco “brilhando” do livro */
          0 0 0 1px rgba(255, 255, 255, 0.38),
          0 0 22px rgba(255, 255, 255, 0.14),
          inset 0 1px 0 rgba(255, 255, 255, 0.22);
      }

      .pl-glass-hero-stack .pl-m-book__page {
        position: relative;
        width: 50%;
        padding: 1.35rem 1.15rem;
        /* VIDRO DE VERDADE: transparência + blur juntos (sem sólido) */
        backdrop-filter: blur(22px);
        -webkit-backdrop-filter: blur(22px);
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.22);
      }

      .pl-glass-hero-stack .pl-m-book__page::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background:
          /* brilho suave topo */
          radial-gradient(240px 160px at 22% 10%, rgba(255, 255, 255, 0.22), transparent 65%),
          /* vinheta das bordas (efeito “objeto”) */
          radial-gradient(520px 420px at 50% 55%, rgba(0, 0, 0, 0.08), transparent 62%),
          linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0) 58%);
        opacity: 1;
      }

      .pl-glass-hero-stack .pl-m-book__page > * {
        position: relative;
        z-index: 1;
      }

      .pl-glass-hero-stack .pl-m-book__page--left {
        border-right: 0;
        border-radius: 28px 0 0 28px;
        transform: perspective(1100px) rotateY(10deg);
        /* esquerda um pouco mais clara */
        background: rgba(255, 255, 255, 0.1);
        box-shadow:
          inset -22px 0 40px rgba(0, 0, 0, 0.5),
          inset 0 2px 5px rgba(255, 255, 255, 0.22),
          inset 0 1px 0 rgba(255, 255, 255, 0.28);
      }

      .pl-glass-hero-stack .pl-m-book__page--right {
        border-left: 0;
        border-radius: 0 28px 28px 0;
        transform: perspective(1100px) rotateY(-10deg);
        /* direita mais escura */
        background: rgba(255, 255, 255, 0.06);
        box-shadow:
          inset 22px 0 40px rgba(0, 0, 0, 0.5),
          inset 0 2px 5px rgba(255, 255, 255, 0.2),
          inset 0 1px 0 rgba(255, 255, 255, 0.26);
        display: flex;
        flex-direction: column;
        justify-content: center;
      }

      .pl-glass-hero-stack .pl-m-book__spine {
        position: absolute;
        left: 50%;
        top: 5%;
        bottom: 5%;
        width: 2px;
        transform: translateX(-50%);
        background: linear-gradient(
          to right,
          rgba(0, 0, 0, 0.55),
          rgba(255, 255, 255, 0.18),
          rgba(0, 0, 0, 0.55)
        );
        opacity: 0.55;
        filter: blur(0.5px);
        z-index: 3;
      }

      /* topo levemente “curvo” (realismo) */
      .pl-glass-hero-stack .pl-m-book__pages::before {
        content: "";
        position: absolute;
        left: 3.5%;
        right: 3.5%;
        top: 6px;
        height: 18px;
        border-radius: 999px;
        background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.28), transparent 70%);
        opacity: 0.62;
        pointer-events: none;
        z-index: 2;
      }

      /* curva inferior / “miolo” do livro (linha branca + sombra suave) */
      .pl-glass-hero-stack .pl-m-book__pages::after {
        content: "";
        position: absolute;
        left: 10%;
        right: 10%;
        bottom: -10px;
        height: 28px;
        pointer-events: none;
        background:
          radial-gradient(ellipse at center, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0) 58%),
          radial-gradient(ellipse at center, rgba(0, 0, 0, 0.42), rgba(0, 0, 0, 0) 74%);
        opacity: 0.85;
        filter: blur(0.2px);
        z-index: 2;
      }

      .pl-glass-hero-stack .pl-m-book__title {
        position: relative;
        z-index: 2;
        font-family: var(--font-primary), -apple-system, sans-serif;
        font-weight: 600;
        letter-spacing: -0.03em;
        line-height: 1.03;
        color: #fff;
        font-size: clamp(1.55rem, 6.2vw, 2.15rem);
        margin: 0;
      }

      .pl-glass-hero-stack .pl-m-book__title span {
        color: #f5b400;
      }

      .pl-glass-hero-stack .pl-m-book__underline {
        position: relative;
        z-index: 2;
        width: 68%;
        height: 2px;
        margin-top: 0.7rem;
        background: rgba(245, 180, 0, 0.85);
        box-shadow: 0 0 14px rgba(245, 180, 0, 0.22);
      }

      .pl-glass-hero-stack .pl-m-book__desc {
        position: relative;
        z-index: 2;
        margin: 0.85rem 0 0;
        font-size: 0.86rem;
        line-height: 1.55;
        color: rgba(255, 255, 255, 0.88);
        max-width: 26ch;
      }

      .pl-glass-hero-stack .pl-m-book__desc strong {
        color: rgba(245, 180, 0, 0.95);
        font-weight: 600;
      }

      .pl-glass-hero-stack .pl-m-book__list {
        position: relative;
        z-index: 2;
        margin: 0;
        padding: 0.1rem 0 0;
        list-style: none;
      }

      .pl-glass-hero-stack .pl-m-book__item {
        display: grid;
        grid-template-columns: 28px 1fr;
        gap: 0.65rem;
        align-items: center;
        padding: 0.78rem 0;
        color: rgba(255, 255, 255, 0.94);
        text-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
        font-family: var(--font-primary), -apple-system, sans-serif;
        font-weight: 650;
        font-size: 0.92rem;
        line-height: 1.05;
      }

      .pl-glass-hero-stack .pl-m-book__item + .pl-m-book__item {
        border-top: 1px dashed rgba(255, 255, 255, 0.3);
      }

      .pl-glass-hero-stack .pl-m-book__ico {
        width: 28px;
        height: 28px;
        display: grid;
        place-items: center;
        color: #f5b400;
        opacity: 0.95;
      }

      .pl-glass-hero-stack .pl-m-book__ico svg {
        width: 22px;
        height: 22px;
        display: block;
      }

      .pl-glass-hero-stack .pl-m-book__base {
        height: 25px;
        margin: -10px auto 0;
        width: 70%;
        background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.42), transparent 72%);
      }
    }

    /* ≤1023px: alinhado ao hero em formato retrato; vídeo forte (telefone + tablet). >1023 desktop inalterado. */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .pl-glass-hero-stack .pl-oche-slide__overlay {
        background: linear-gradient(
          180deg,
          rgba(0, 0, 0, 0) 0%,
          rgba(0, 0, 0, 0) 55%,
          rgba(0, 0, 0, 0.03) 100%
        );
      }

      .pl-glass-hero-stack .pl-oche-slide__media-video {
        opacity: 1;
        filter: brightness(2.48) contrast(1.16) saturate(1.68);
        -webkit-filter: brightness(2.48) contrast(1.16) saturate(1.68);
      }

      /* Remove camada por cima do vídeo (evita “opaco”); texto no painel vidro. */
      .pl-glass-hero-stack .pl-oche-hero--single .pl-oche-slide__overlay {
        display: none;
      }

      .pl-glass-hero-stack .pl-oche-hero--single .pl-oche-slide__media-video {
        filter: brightness(2.62) contrast(1.18) saturate(1.78);
        -webkit-filter: brightness(2.62) contrast(1.18) saturate(1.78);
      }
    }

    /* Mobile hero ref.: sobrescreve regras ≤1023px (overlay/vídeo/viewport) */
    @media (max-width: 768px) {
      .pl-glass-hero-stack {
        overflow: hidden !important;
      }

      .pl-oche-hero__viewport {
        min-height: 0 !important;
        aspect-ratio: unset !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
      }

      .pl-glass-hero-stack .pl-oche-hero {
        overflow: visible !important;
        background: transparent !important;
      }

      .pl-glass-hero-stack .pl-oche-hero__track {
        position: relative !important;
        inset: auto !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
      }

      .pl-glass-hero-stack .pl-oche-slide {
        height: auto !important;
        min-height: 0 !important;
        isolation: isolate !important;
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        overflow: visible !important;
      }

      .pl-glass-hero-stack .pl-oche-slide::before {
        content: "" !important;
        position: absolute !important;
        inset: 0 0 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background-image: none !important;
        background:
          radial-gradient(
            ellipse 72% 46% at 92% 10%,
            rgba(176, 148, 238, 0.38) 0%,
            transparent 58%
          ),
          linear-gradient(
            180deg,
            #32185c 0%,
            #3c2170 22%,
            #472a80 42%,
            #6a4aa6 58%,
            #d9d0ee 72%,
            #f3f0f8 86%,
            #ffffff 100%
          ) !important;
        background-size: auto !important;
        background-repeat: no-repeat !important;
        filter: none !important;
        opacity: 1 !important;
        mix-blend-mode: normal !important;
        transform: translateZ(0);
        -webkit-mask-image: none !important;
        mask-image: none !important;
      }

      .pl-glass-hero-stack .pl-oche-slide::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background:
          radial-gradient(
            ellipse 70% 42% at 90% 8%,
            rgba(176, 148, 238, 0.28) 0%,
            transparent 55%
          ),
          linear-gradient(
            180deg,
            #32185c 0%,
            #3c2170 22%,
            #472a80 42%,
            #6a4aa6 58%,
            #d9d0ee 72%,
            #f3f0f8 86%,
            #ffffff 100%
          ) !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
      }

      .pl-glass-hero-stack .pl-oche-hero--single .pl-oche-slide__overlay {
        display: none !important;
      }

      .pl-glass-hero-stack .pl-oche-hero--single .pl-oche-slide__media-video {
        filter: brightness(0.9) contrast(1.04) saturate(1.06) !important;
        -webkit-filter: brightness(0.9) contrast(1.04) saturate(1.06) !important;
      }
    }

    .pl-oche-hero {
      --pl-oche-hero-h: clamp(220px, 28vw, 460px);
      position: relative;
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 0;
      background: #0f172a;
      overflow: hidden;
      touch-action: pan-y;
    }

    .pl-oche-hero__viewport {
      position: relative;
      width: 100%;
      min-height: var(--pl-oche-hero-h);
      line-height: 0;
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .pl-oche-hero {
        --pl-oche-hero-h: auto;
      }

      .pl-oche-hero__viewport {
        min-height: 0;
        aspect-ratio: 3 / 4;
        max-height: min(64vh, 420px);
      }
    }

    .pl-oche-hero__track {
      display: flex;
      width: 100%;
      height: 100%;
      min-height: var(--pl-oche-hero-h);
      transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
      will-change: transform;
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .pl-oche-hero__track {
        min-height: 100%;
        position: absolute;
        inset: 0;
        height: 100%;
      }
    }

    .pl-oche-slide {
      position: relative;
      flex: 0 0 100%;
      width: 100%;
      min-height: var(--pl-oche-hero-h);
      display: block;
      overflow: hidden;
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .pl-oche-slide {
        min-height: 100%;
        height: 100%;
      }
    }

    .pl-oche-slide__media {
      position: absolute;
      inset: 0;
      z-index: 0;
    }

    .pl-oche-slide__media picture {
      display: block;
      width: 100%;
      height: 100%;
      margin: 0;
    }

    .pl-oche-slide__media img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      user-select: none;
      pointer-events: none;
      filter: brightness(0.82) contrast(1.03);
    }

    /* Vídeo hero-slide: assets/video/videos-gerais/videos-desktop/hero-slide.{mp4,webm} */
    .pl-oche-slide__media-video {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      pointer-events: none;
      filter: brightness(0.82) contrast(1.03);
    }

    .pl-oche-hero--single .pl-oche-hero__btn,
    .pl-oche-hero--single .pl-oche-hero__dots {
      display: none !important;
    }

    .pl-oche-hero--single + .pl-glass-hero-rail {
      display: none !important;
    }

    .pl-oche-slide__overlay {
      position: absolute;
      inset: 0;
      z-index: 1;
      background: linear-gradient(180deg, rgba(0, 0, 0, 0.885) 0%, rgba(0, 0, 0, 0.744) 55%, rgba(0, 0, 0, 0.74) 100%);
      pointer-events: none;
    }

    .pl-oche-slide__content {
      position: absolute;
      inset: 0;
      z-index: 2;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      gap: 0.75rem;
      padding: 1.25rem;
      color: #fff;
    }

    .pl-oche-slide__title {
      margin: 0;
      font-size: clamp(2.35rem, 2.8vw, 2.35rem);
      line-height: 1.18;
      font-weight: 600;
      font-family: var(--font-primary);
      letter-spacing: -0.02em;
      text-wrap: balance;
      max-width: 30ch;
    }

    /* Título + subtítulo: painel vidro no mobile (≤768); no desktop o vidro está em @media (min-width: 769px) para .pl-glass-hero-stack. */
    .pl-oche-slide__text-glass {
      display: flex;

      align-items: center;
      gap: 0.42rem;
      text-align: center;
      max-width: min(94vw, 44ch);
    }

    @media (max-width: 768px) {
      .pl-oche-slide__text-glass {
        align-items: stretch;
        gap: 0.72rem;
        width: 100%;
        max-width: min(calc(100vw - 1.75rem), 24.5rem);
        margin-inline: auto;
        padding: 0.95rem 0.85rem 1.05rem;
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(255, 255, 255, 0.3);
        box-shadow:
          0 4px 24px rgba(0, 0, 0, 0.18),
          inset 0 1px 0 rgba(255, 255, 255, 0.08);
        backdrop-filter: blur(5px) saturate(1.25);
        -webkit-backdrop-filter: blur(14px) saturate(1.25);
      }

      .pl-oche-slide__text-glass .pl-oche-slide__title,
      .pl-oche-slide__text-glass .pl-oche-slide__subtitle {
        max-width: none;
        width: 100%;
      }

      .pl-oche-slide__text-glass .pl-oche-slide__title {
        white-space: nowrap;
        max-width: 100%;
        font-size: clamp(1.35rem, 5.5vw + 0.55rem, 2.85rem);
        line-height: 1.05;
        letter-spacing: -0.045em;
        text-wrap: unset;
        padding: 0;
      }

      .pl-oche-slide__text-glass .pl-oche-slide__subtitle {
        font-size: clamp(0.8125rem, 2.85vw, 0.9375rem);
        line-height: 1.48;
        font-weight: 500;
        color: rgba(255, 255, 255, 0.92);
        letter-spacing: 0.01em;
        text-wrap: pretty;
        padding: 0 0.05rem;
      }
    }

    @media (min-width: 769px) {
      .pl-oche-slide__text-glass {
        max-width: min(92vw, 54ch);
      }

      .pl-oche-slide__text-glass .pl-oche-slide__title {
        max-width: 30ch;
      }

      .pl-oche-slide__text-glass .pl-oche-slide__subtitle {
        max-width: 54ch;
      }

      /* Hero glass stack: vidro só em desktop (≥769px); mobile usa .pl-m-hero. */
      .pl-glass-hero-stack .pl-oche-hero__viewport {
        line-height: normal;
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-slide {
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-slide__content {
        align-items: center;
        justify-content: flex-end;
        text-align: center;
        line-height: normal;
        overflow: visible;
        padding-left: clamp(1.25rem, 4vw, 3.25rem);
        padding-right: clamp(1.25rem, 4vw, 3.25rem);
        padding-bottom: clamp(2.75rem, 13vh, 6.5rem);
      }

      .pl-glass-hero-stack .pl-hero-glass-stack {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.75rem;
        width: min(980px, calc(100% - 2.5rem));
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-slide__text-glass {
        position: relative;
        display: block;
        width: 100%;
        overflow: visible;
        padding: 2.05rem 2.4rem 2.1rem;
        border-radius: var(--radius);
        background: rgba(15, 16, 20, 0.58);
        border: 1px solid rgba(255, 255, 255, 0.16);
        box-shadow:
          0 26px 70px rgba(0, 0, 0, 0.52),
          inset 0 1px 0 rgba(255, 255, 255, 0.12);
        backdrop-filter: blur(22px) saturate(1.18);
        -webkit-backdrop-filter: blur(22px) saturate(1.18);
      }

      .pl-glass-hero-stack .pl-oche-slide__text-glass--title {
        width: fit-content;
        max-width: none;
        align-self: center;
        padding: 2.15rem 2.55rem 2.2rem;
        text-align: center;
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-slide__text-glass .pl-oche-slide__title,
      .pl-glass-hero-stack .pl-oche-slide__text-glass--title .pl-oche-slide__title {
        max-width: none;
        text-wrap: nowrap;
      }

      .pl-glass-hero-stack .pl-oche-slide__text-glass--sub {
        width: fit-content;
        max-width: min(100%, 96vw);
        align-self: center;
        padding: 0.5rem 1.15rem 0.55rem;
        text-align: center;
      }

      /* Desktop hero: título estilo colagem / recorte de revista (referência ransom note). */
      .pl-glass-hero-stack .pl-oche-slide__title {
        font-size: clamp(2rem, 2.5vw, 2.8rem);
        font-weight: 400;
        letter-spacing: 0;
        line-height: 1.5;
        text-align: center;
        color: #fff;
        text-shadow: none;
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-oche-slide__text-glass--sub .pl-oche-slide__subtitle,
      .pl-glass-hero-stack h2.pl-oche-slide__subtitle {
        font-family: "EB Garamond", "Times New Roman", Georgia, serif;
        font-size: clamp(0.92rem, 1.05vw, 1.12rem);
        font-weight: 500;
        font-style: italic;
        line-height: 1.15;
        letter-spacing: 0.02em;
        text-align: center;
        color: rgba(255, 248, 235, 0.92);
        text-shadow: 0 6px 18px rgba(0, 0, 0, 0.48);
        white-space: nowrap;
        text-wrap: unset;
      }

      .pl-glass-hero-stack .pl-oche-slide__title.pl-hero-typewriter {
        display: inline-block;
        min-width: 0.15em;
        white-space: nowrap;
        padding: 0.08em 0.05em;
        letter-spacing: 0;
        line-height: 1.35;
        overflow: visible;
      }

      .pl-glass-hero-stack .pl-hero-type-char {
        display: inline-block;
        vertical-align: middle;
        position: relative;
        line-height: 1.12;
        transform-origin: 50% 58%;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
      }

      .pl-glass-hero-stack .pl-hero-cut {
        z-index: 1;
        isolation: isolate;
        background-color: var(--pl-scrap, #e7592f);
        color: var(--pl-ink, #fff);
        box-shadow:
          2px 4px 10px rgba(0, 0, 0, 0.38),
          0 1px 0 rgba(255, 255, 255, 0.22) inset;
      }

      /* Pontos de impressão leves (revista) */
      .pl-glass-hero-stack .pl-hero-cut::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        opacity: 0.12;
        mix-blend-mode: multiply;
        background-image: radial-gradient(circle, rgba(0, 0, 0, 0.45) 0.6px, transparent 0.7px);
        background-size: 4px 4px;
      }

      .pl-glass-hero-stack .pl-hero-cut::after {
        display: none;
      }

      .pl-glass-hero-stack .pl-hero-type-char--space {
        background: transparent !important;
        box-shadow: none !important;
        clip-path: none !important;
        transform: none !important;
        padding: 0 !important;
        margin: 0 0.14em !important;
        min-width: 0.18em;
      }

      .pl-glass-hero-stack .pl-hero-type-char--space::before,
      .pl-glass-hero-stack .pl-hero-type-char--space::after {
        display: none !important;
      }

      .pl-glass-hero-stack .pl-oche-slide__title.pl-hero-typewriter.is-typing::after {
        content: "|";
        display: inline-block;
        margin-left: 4px;
        font-family: "Roboto", sans-serif;
        font-weight: 700;
        color: #fff;
        text-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
        animation: pl-hero-typewriter-caret 0.72s step-end infinite;
        vertical-align: middle;
      }

      @keyframes pl-hero-typewriter-caret {
        0%,
        100% {
          opacity: 1;
        }
        50% {
          opacity: 0;
        }
      }

      .pl-glass-hero-stack .pl-oche-slide__text-glass--sub .pl-oche-slide__subtitle {
        margin: 0;
        max-width: none;
        font-family: "EB Garamond", "Times New Roman", Georgia, serif;
      }

      /* —— Desktop split hero: mesh full-bleed + grain + nav/dropdown vidro — mobile intacto —— */
      .pl-glass-hero-stack--split {
        --pl-hero-mesh-base: #d8e7ff;
        --pl-hero-mesh-grain: url("assets/img/hero-grain-tile.png");
        --pl-hero-primary: #2155ff;
        --pl-hero-title: #111827;
        --pl-hero-lead: #374151;
        --pl-hero-feature-title: #111827;
        --pl-hero-feature-desc: #6b7280;
        --pl-hero-surface-soft: #eef3ff;
        --pl-hero-feature-glass-bg: rgba(255, 255, 255, 0.22);
        --pl-hero-feature-glass-blur: blur(16px) saturate(1.45);
        --pl-hero-feature-glass-shadow: 0 4px 14px rgba(99, 102, 241, 0.06);
        --pl-glass-bg: rgba(255, 255, 255, 0.62);
        --pl-glass-blur: blur(48px) saturate(1.9) brightness(1.05);
        --pl-glass-border: 1px solid rgba(255, 255, 255, 0.88);
        --pl-glass-shadow:
          0 20px 56px rgba(99, 102, 241, 0.16),
          inset 0 1px 0 rgba(255, 255, 255, 0.95);
        /* Mega menu: blur mais forte que o menu */
        --pl-mega-glass-bg: rgba(255, 255, 255, 0.42);
        --pl-mega-glass-blur: blur(80px) saturate(2.35) brightness(1.08);
        --pl-mega-glass-border: 1px solid rgba(255, 255, 255, 0.94);
        --pl-mega-glass-shadow:
          0 28px 72px rgba(99, 102, 241, 0.22),
          inset 0 1px 0 rgba(255, 255, 255, 1);
        position: relative;
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        background: transparent;
        /* clip + isolate impedem backdrop-filter no mega menu (painel sai da caixa do hero) */
        overflow: visible;
        isolation: auto;
        padding-bottom: 0;
      }

      /* Mesh orgânico — dissolve na base (junção com o fundo da página) */
      .pl-glass-hero-stack--split::before {
        content: "";
        position: absolute;
        inset: -38% -38% -14%;
        z-index: 0;
        pointer-events: none;
        -webkit-mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 68%,
          rgba(0, 0, 0, 0.75) 82%,
          transparent 100%
        );
        mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 68%,
          rgba(0, 0, 0, 0.75) 82%,
          transparent 100%
        );
        background:
          radial-gradient(
            ellipse 68% 68% at 15% 35%,
            rgba(123, 143, 255, 0.92) 0%,
            rgba(124, 144, 255, 0.45) 38%,
            transparent 72%
          ),
          radial-gradient(
            ellipse 72% 72% at 85% 20%,
            rgba(157, 238, 241, 0.88) 0%,
            rgba(145, 182, 255, 0.4) 40%,
            transparent 74%
          ),
          radial-gradient(
            ellipse 82% 82% at 50% 80%,
            rgba(183, 211, 255, 0.9) 0%,
            rgba(184, 217, 255, 0.42) 42%,
            transparent 76%
          ),
          radial-gradient(
            ellipse 55% 55% at 72% 62%,
            rgba(124, 144, 255, 0.28) 0%,
            transparent 68%
          );
        filter: blur(140px);
        transform: translateZ(0);
      }

      /* Film grain — tile PNG (visível como referência Linear/Raycast) */
      .pl-glass-hero-stack--split .pl-hero-mesh-grain {
        display: block;
        position: absolute;
        inset: 0;
        z-index: 2;
        pointer-events: none;
        background-image: var(--pl-hero-mesh-grain);
        background-size: 64px 64px;
        background-repeat: repeat;
        opacity: 0.38;
        mix-blend-mode: overlay;
        -webkit-mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 64%,
          rgba(0, 0, 0, 0.5) 80%,
          transparent 100%
        );
        mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 64%,
          rgba(0, 0, 0, 0.5) 80%,
          transparent 100%
        );
      }

      .pl-glass-hero-stack--split .pl-hero-mesh-grain::after {
        content: "";
        position: absolute;
        inset: 0;
        background-image: var(--pl-hero-mesh-grain);
        background-size: 96px 96px;
        background-repeat: repeat;
        opacity: 0.22;
        mix-blend-mode: soft-light;
        transform: rotate(0.35deg);
      }

      .pl-glass-hero-stack--split::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 2;
        pointer-events: none;
        opacity: 0.12;
        mix-blend-mode: multiply;
        background-image: var(--pl-hero-mesh-grain);
        background-size: 128px 128px;
        background-repeat: repeat;
        -webkit-mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 62%,
          transparent 100%
        );
        mask-image: linear-gradient(
          180deg,
          #000 0%,
          #000 62%,
          transparent 100%
        );
      }

      .pl-glass-hero-stack--split .pl-oche-hero::after {
        content: none;
      }

      .pl-glass-hero-stack--split .pl-hero-desktop {
        display: block;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        position: relative;
        z-index: 3;
        overflow: visible;
      }

      .pl-glass-hero-stack--split .pl-oche-hero {
        --pl-oche-hero-h: auto;
        position: relative;
        z-index: 3;
        isolation: isolate;
        margin: 0;
        width: 100%;
        max-width: none;
        border-radius: 0;
        overflow: visible;
        background: transparent;
        box-shadow: none;
      }

      .pl-glass-hero-stack--split .pl-oche-hero::before {
        content: none;
      }

      .pl-glass-hero-stack--split .pl-oche-hero__viewport,
      .pl-glass-hero-stack--split .pl-oche-hero__track,
      .pl-glass-hero-stack--split .pl-oche-slide {
        min-height: 0;
        height: auto;
        overflow: visible;
      }

      .pl-glass-hero-stack--split .pl-oche-hero__viewport {
        aspect-ratio: unset;
        max-height: none;
      }

      .pl-glass-hero-stack--split .pl-oche-hero__track {
        position: relative;
        inset: auto;
      }

      .pl-glass-hero-stack--split .pl-oche-slide__media,
      .pl-glass-hero-stack--split .pl-oche-slide__overlay {
        display: none !important;
      }

      .pl-glass-hero-stack--split .pl-oche-slide__content {
        position: relative;
        z-index: 3;
        inset: auto;
        display: block;
        align-items: stretch;
        justify-content: flex-start;
        text-align: left;
        padding: 0;
        color: #111827;
        overflow: visible;
        width: 100%;
        max-width: none;
        margin: 0 auto;
        box-sizing: border-box;
      }

      .pl-glass-hero-stack--split .pl-hero-glass-stack {
        display: none !important;
      }

      /* Container único: navbar + hero no mesmo grid */
      .pl-glass-hero-stack--split .pl-hero-shell {
        position: relative;
        z-index: 3;
        width: 100%;
      }

      .pl-glass-hero-stack--split .pl-hero-shell__frame {
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: min(1400px, 100%);
        margin: 0 auto;
        padding: clamp(1.35rem, 2.8vh, 2rem) 0 0;
        box-sizing: border-box;
      }

      .pl-glass-hero-stack--split .pl-hero-shell__frame .pl-glass-floating-nav-shell {
        order: -1;
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        width: 100%;
        max-width: 100%;
        margin: 0 0 clamp(2.25rem, 4.5vh, 3.25rem);
        padding: 0 48px;
        box-sizing: border-box;
        pointer-events: none;
      }

      .pl-glass-hero-stack--split .pl-hero-shell__frame .pl-oche-hero {
        order: 0;
      }

      /* Hero desktop: texto | vídeo — vídeo acompanha a altura do bloco esquerdo (tamanho/alinhamento originais) */
      .pl-hero-desktop__inner {
        --pl-hero-gap: clamp(28px, 3vw, 44px);
        --pl-hero-book-scale: 1;
        --pl-hero-book-shift: 0;
        --pl-feat-scale: 0.9;
        width: 100%;
        max-width: min(1360px, 100%);
        margin: 0 auto;
        padding: clamp(40px, 5vh, 72px) clamp(24px, 3.5vw, 48px);
        box-sizing: border-box;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
        column-gap: var(--pl-hero-gap);
        align-items: stretch;
        justify-items: stretch;
      }

      .pl-hero-desktop__left {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        text-align: left;
        width: 100%;
        min-width: 0;
        max-width: 100%;
        overflow: visible;
      }

      .pl-hero-desktop__badges {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        align-self: flex-start;
        gap: 8px;
        margin: 0 0 18px;
        max-width: min(720px, 100%);
      }

      .pl-hero-desktop__badge {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        margin: 0;
        padding: 9px 14px 9px 16px;
        border-radius: 0;
        font-family: var(--font-primary), sans-serif;
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.03em;
        text-transform: uppercase;
        color: var(--pl-hero-primary);
        background: #fffef8;
        line-height: 1.25;
        max-width: 100%;
        /* Papel rasgado — bordas irregulares */
        clip-path: polygon(
          0% 10%, 1.5% 2%, 3.5% 8%, 5.5% 0%, 8% 7%, 10.5% 1%, 13% 9%, 15.5% 0%,
          18% 6%, 20.5% 1%, 23% 10%, 26% 0%, 29% 7%, 32% 1%, 35% 9%, 38% 0%,
          41% 8%, 44% 1%, 47% 10%, 50% 0%, 53% 7%, 56% 2%, 59% 9%, 62% 0%,
          65% 8%, 68% 1%, 71% 10%, 74% 0%, 77% 7%, 80% 2%, 83% 9%, 86% 0%,
          89% 8%, 92% 1%, 95% 9%, 97.5% 3%, 100% 8%,
          98.5% 18%, 100% 28%, 98% 38%, 100% 48%, 98.5% 58%, 100% 68%, 98% 78%, 100% 88%, 99% 96%,
          96% 100%, 93% 93%, 90% 100%, 87% 94%, 84% 100%, 81% 93%, 78% 100%, 75% 94%,
          72% 100%, 69% 93%, 66% 100%, 63% 94%, 60% 100%, 57% 93%, 54% 100%, 51% 94%,
          48% 100%, 45% 93%, 42% 100%, 39% 94%, 36% 100%, 33% 93%, 30% 100%, 27% 94%,
          24% 100%, 21% 93%, 18% 100%, 15% 94%, 12% 100%, 9% 93%, 6% 100%, 3% 94%, 0.5% 100%, 0% 94%,
          1.5% 84%, 0% 74%, 2% 64%, 0% 54%, 1.5% 44%, 0% 34%, 2% 24%, 0% 14%
        );
        filter: drop-shadow(0 1px 2px rgba(40, 28, 90, 0.1));
      }

      .pl-hero-desktop__badge-text {
        display: block;
        min-width: 0;
      }

      .pl-hero-desktop__badge-flag,
      .pl-hero-desktop__badge-card {
        display: inline-flex;
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
        width: 20px;
        height: 20px;
      }

      .pl-hero-desktop__badge-flag .pl-br-flag {
        display: block;
        width: 20px;
        height: 20px;
        object-fit: contain;
        border-radius: 1px;
        box-shadow: none;
      }

      .pl-hero-desktop__badge-card svg {
        display: block;
        width: 20px;
        height: 20px;
        color: var(--pl-hero-primary);
      }

      .pl-hero-desktop__title {
        display: inline-block;
        margin: 0 0 18px;
        max-width: min(650px, 100%);
        font-family: var(--font-primary);
        font-size: clamp(3.5rem, 5vw, 4.5rem);
        font-weight: 700;
        line-height: 0.95;
        letter-spacing: -0.03em;
        color: var(--pl-hero-title);
        vertical-align: top;
      }

      .pl-hero-desktop__title-top {
        display: block;
        white-space: nowrap;
      }

      /* Largura = só “Orçamento online”; o restante quebra dentro desse bloco */
      .pl-hero-desktop__title-sub {
        display: block;
        width: 0;
        min-width: 100%;
      }

      .pl-hero-desktop__lead {
        margin: 10px 0 0;
        max-width: 500px;
        padding: 0.22rem 0.85rem 0.26rem;
        font-family: var(--font-primary), sans-serif;
        font-size: 1.5rem;
        line-height: 1.25;
        font-weight: 500;
        color: var(--pl-hero-lead);
        text-align: center;
        text-wrap: pretty;
        align-self: flex-start;
        box-sizing: border-box;
        /* Faixa de papel branca atrás do texto */
        background:
          linear-gradient(rgba(255, 255, 255, 0.82), rgba(255, 254, 248, 0.9)),
          url("assets/img/papel-textura-resumo.png") center / 280px auto repeat,
          #fffef8;
        border: 1px solid rgba(255, 255, 255, 0.95);
        box-shadow:
          0 1px 0 rgba(255, 255, 255, 0.9) inset,
          0 2px 8px rgba(40, 28, 90, 0.08),
          0 1px 2px rgba(15, 23, 42, 0.04);
        /* Borda papel rasgado — irregular suave */
        clip-path: polygon(
          0% 8%, 1.2% 2%, 3% 7%, 5% 0%, 7.5% 6%, 10% 1%, 12.5% 8%, 15% 0%,
          18% 6%, 21% 1%, 24% 8%, 27% 0%, 30% 7%, 33% 1%, 36% 8%, 39% 0%,
          42% 7%, 45% 1%, 48% 8%, 51% 0%, 54% 6%, 57% 2%, 60% 8%, 63% 0%,
          66% 7%, 69% 1%, 72% 8%, 75% 0%, 78% 6%, 81% 2%, 84% 8%, 87% 0%,
          90% 7%, 93% 1%, 96% 8%, 98.5% 3%, 100% 7%,
          98.8% 18%, 100% 30%, 98.5% 42%, 100% 54%, 98.8% 66%, 100% 78%, 99% 90%, 100% 97%,
          97% 100%, 94% 94%, 91% 100%, 88% 95%, 85% 100%, 82% 94%, 79% 100%, 76% 95%,
          73% 100%, 70% 94%, 67% 100%, 64% 95%, 61% 100%, 58% 94%, 55% 100%, 52% 95%,
          49% 100%, 46% 94%, 43% 100%, 40% 95%, 37% 100%, 34% 94%, 31% 100%, 28% 95%,
          25% 100%, 22% 94%, 19% 100%, 16% 95%, 13% 100%, 10% 94%, 7% 100%, 4% 95%, 1% 100%, 0% 94%,
          1.2% 82%, 0% 70%, 1.5% 58%, 0% 46%, 1.2% 34%, 0% 22%, 1.5% 12%
        );
        filter: drop-shadow(0 2px 6px rgba(40, 28, 90, 0.1));
      }

      /* DesktopReelsCarousel — glassmorphism feathered, sem caixa branca */
      .pl-hero-desktop__reels {
        --pl-drc-base-w: 1060;
        --pl-drc-base-h: 360;
        --pl-drc-center-w: 240;
        --pl-drc-center-h: 330;
        --pl-drc-side-w: 210;
        --pl-drc-side-h: 300;
        --pl-drc-side-scale: 0.88;
        --pl-drc-spacing: -10;
        --pl-drc-scale: 1;
        --pl-drc-accent: #7056ff;
        --pl-drc-feather-x: linear-gradient(
          90deg,
          transparent 0%,
          rgba(0, 0, 0, 0.25) 8%,
          #000 18%,
          #000 82%,
          rgba(0, 0, 0, 0.25) 92%,
          transparent 100%
        );
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        width: auto;
        max-width: 100%;
        /* Altura folgada: glow/hover não geram linha dura em cima/baixo */
        height: calc((var(--pl-drc-base-h) + 72) * 1px * var(--pl-drc-scale));
        margin: 4px 0 0;
        padding: 0;
        box-sizing: border-box;
        align-self: flex-start;
        overflow: visible;
        border: none;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        touch-action: pan-y;
        user-select: none;
        -webkit-user-select: none;
      }

      /* Vidro fosco — só dissolve laterais (sem máscara Y = sem linhas horizontais) */
      .pl-hero-desktop__reels::before {
        content: "";
        position: absolute;
        inset: 8% -4%;
        z-index: 0;
        pointer-events: none;
        border: 0;
        border-radius: 0;
        background:
          radial-gradient(
            120% 90% at 50% 50%,
            rgba(255, 255, 255, 0.12) 0%,
            rgba(255, 255, 255, 0.05) 48%,
            rgba(255, 255, 255, 0) 78%
          );
        backdrop-filter: blur(14px) saturate(1.06);
        -webkit-backdrop-filter: blur(14px) saturate(1.06);
        -webkit-mask-image: var(--pl-drc-feather-x);
        mask-image: var(--pl-drc-feather-x);
        opacity: 0.85;
      }

      .pl-hero-desktop__reels-fade {
        display: none !important;
      }

      .pl-hero-desktop__reels-viewport {
        position: relative;
        z-index: 1;
        width: 100%;
        height: 100%;
        overflow: visible;
        /* sem perspective/mask Y — evita corte em faixa horizontal */
        -webkit-mask-image: var(--pl-drc-feather-x);
        mask-image: var(--pl-drc-feather-x);
      }

      .pl-hero-desktop__reels-track {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
      }

      .pl-hero-desktop__reel {
        position: absolute;
        top: 50%;
        left: 50%;
        display: flex;
        flex-direction: column;
        width: calc(var(--pl-drc-center-w) * 1px * var(--pl-drc-scale));
        height: calc(var(--pl-drc-center-h) * 1px * var(--pl-drc-scale));
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: calc(28px * var(--pl-drc-scale));
        overflow: hidden;
        cursor: grab;
        background: rgba(255, 255, 255, 0.42);
        backdrop-filter: blur(10px) saturate(1.05);
        -webkit-backdrop-filter: blur(10px) saturate(1.05);
        box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
        opacity: 0.78;
        filter: blur(0.25px);
        transform: translate(-50%, -50%) scale(var(--pl-drc-side-scale));
        transform-origin: center center;
        scale: 1;
        transition:
          transform 700ms ease-in-out,
          opacity 700ms ease-in-out,
          filter 700ms ease-in-out,
          box-shadow 700ms ease-in-out,
          background 700ms ease-in-out,
          scale 280ms ease;
        -webkit-tap-highlight-color: transparent;
        will-change: transform, opacity, scale;
        z-index: 1;
      }

      .pl-hero-desktop__reel.is-center {
        border: 2px solid rgba(212, 200, 255, 0.95);
        background: rgba(255, 255, 255, 0.72);
        backdrop-filter: blur(12px) saturate(1.08);
        -webkit-backdrop-filter: blur(12px) saturate(1.08);
        overflow: hidden;
        /* Glow suave via drop-shadow (sem linha dura de clip) */
        box-shadow: none;
        filter:
          drop-shadow(0 0 10px rgba(168, 148, 255, 0.55))
          drop-shadow(0 0 22px rgba(112, 86, 255, 0.32));
        opacity: 1;
        z-index: 5;
      }

      .pl-hero-desktop__reel.is-edge {
        opacity: 0.38;
        filter: blur(1.1px);
        z-index: 0;
      }

      /* Hover: cresce um pouco; sem máscara/corte horizontal */
      @media (hover: hover) and (pointer: fine) {
        .pl-hero-desktop__reels:has(.pl-hero-desktop__reel:hover) {
          overflow: visible;
          z-index: 8;
        }

        .pl-hero-desktop__reels:has(.pl-hero-desktop__reel:hover) .pl-hero-desktop__reels-viewport {
          overflow: visible;
          -webkit-mask-image: none;
          mask-image: none;
        }

        .pl-hero-desktop__reel:hover {
          scale: 1.08;
          z-index: 50 !important;
          opacity: 1 !important;
          overflow: hidden;
          border: 2px solid rgba(212, 200, 255, 0.95);
          background: rgba(255, 255, 255, 0.78);
          box-shadow: none;
          filter:
            drop-shadow(0 0 12px rgba(168, 148, 255, 0.6))
            drop-shadow(0 0 26px rgba(112, 86, 255, 0.36)) !important;
        }

        .pl-hero-desktop__reels.is-dragging .pl-hero-desktop__reel,
        .pl-hero-desktop__reels.is-dragging .pl-hero-desktop__reel:hover {
          scale: 1;
        }
      }

      .pl-hero-desktop__reel:focus-visible {
        outline: 2px solid rgba(112, 86, 255, 0.7);
        outline-offset: 3px;
      }

      .pl-hero-desktop__reels.is-dragging .pl-hero-desktop__reel {
        cursor: grabbing;
        transition: none;
      }

      .pl-hero-desktop__reel-cover {
        position: relative;
        display: block;
        width: 100%;
        height: calc(255px * var(--pl-drc-scale));
        overflow: hidden;
        border-radius: calc(26px * var(--pl-drc-scale)) calc(26px * var(--pl-drc-scale)) 0 0;
        background: #0b1220;
        flex: 1 1 auto;
        min-height: 0;
      }

      .pl-hero-desktop__reel.is-center .pl-hero-desktop__reel-cover {
        height: calc(255px * var(--pl-drc-scale));
        border-radius: calc(26px * var(--pl-drc-scale)) calc(26px * var(--pl-drc-scale)) 0 0;
        overflow: hidden;
        filter: none;
      }

      .pl-hero-desktop__reel.is-center .pl-hero-desktop__reel-poster {
        filter: none;
      }

      .pl-hero-desktop__reel-poster {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        pointer-events: none;
        background: #0b1220;
        filter: none;
      }

      .pl-hero-desktop__reel-play {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.02) 0%, rgba(0, 0, 0, 0.18) 100%);
      }

      .pl-hero-desktop__reel-play-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(60px * var(--pl-drc-scale));
        height: calc(60px * var(--pl-drc-scale));
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.15);
        border: 2px solid rgba(255, 255, 255, 0.9);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
      }

      .pl-hero-desktop__reel.is-center .pl-hero-desktop__reel-play-btn {
        width: calc(70px * var(--pl-drc-scale));
        height: calc(70px * var(--pl-drc-scale));
      }

      .pl-hero-desktop__reel-play-btn svg {
        width: 42%;
        height: 42%;
        margin-left: 6%;
        fill: #fff;
      }

      .pl-hero-desktop__reel-foot {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 2px;
        width: 100%;
        height: calc(75px * var(--pl-drc-scale));
        flex: 0 0 auto;
        padding: calc(18px * var(--pl-drc-scale)) calc(20px * var(--pl-drc-scale));
        box-sizing: border-box;
        background: linear-gradient(180deg, rgba(90, 78, 160, 0.72) 0%, rgba(70, 58, 140, 0.78) 100%);
        text-align: left;
        border-radius: 0 0 calc(26px * var(--pl-drc-scale)) calc(26px * var(--pl-drc-scale));
        overflow: hidden;
        box-shadow: none;
      }

      .pl-hero-desktop__reel.is-center .pl-hero-desktop__reel-foot {
        background: linear-gradient(180deg, rgba(115, 91, 255, 0.92) 0%, rgba(93, 60, 243, 0.95) 100%);
        box-shadow: none;
      }

      .pl-hero-desktop__reel-title {
        display: block;
        font-family: var(--font-primary), sans-serif;
        font-size: calc(16px * var(--pl-drc-scale));
        font-weight: 700;
        line-height: 1.15;
        letter-spacing: 0.02em;
        color: #fff;
        text-transform: uppercase;
      }

      .pl-hero-desktop__reel-sub {
        display: block;
        font-family: var(--font-primary), sans-serif;
        font-size: calc(13px * var(--pl-drc-scale));
        font-weight: 500;
        line-height: 1.2;
        color: rgba(255, 255, 255, 0.72);
      }

      @media (max-width: 1023px) {
        .pl-hero-desktop__reels {
          display: none !important;
        }
      }

      /* Lightbox reels — só desktop */
      .pl-reels-lightbox {
        position: fixed;
        inset: 0;
        z-index: 2147483000;
        display: none;
        align-items: center;
        justify-content: center;
        padding: 24px;
        box-sizing: border-box;
      }

      .pl-reels-lightbox.is-open:not([hidden]) {
        display: flex;
      }

      .pl-reels-lightbox__backdrop {
        position: absolute;
        inset: 0;
        background: rgba(8, 12, 24, 0.72);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
      }

      .pl-reels-lightbox__dialog {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 18px;
        width: min(100%, 520px);
        max-height: min(92vh, 920px);
      }

      .pl-reels-lightbox__stage {
        position: relative;
        width: min(100%, 360px);
        aspect-ratio: 9 / 16;
        max-height: min(86vh, 860px);
        border-radius: 18px;
        overflow: hidden;
        background: #000;
        box-shadow: 0 28px 80px rgba(0, 0, 0, 0.45);
      }

      .pl-reels-lightbox__video {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
        background: #000;
      }

      .pl-reels-lightbox__nav,
      .pl-reels-lightbox__close {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        margin: 0;
        padding: 0;
        border: none;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.94);
        color: #0f172a;
        cursor: pointer;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
        transition: background 0.15s ease, transform 0.15s ease;
      }

      .pl-reels-lightbox__nav:hover,
      .pl-reels-lightbox__close:hover {
        background: #fff;
        transform: scale(1.05);
      }

      .pl-reels-lightbox__nav svg,
      .pl-reels-lightbox__close svg {
        width: 22px;
        height: 22px;
      }

      .pl-reels-lightbox__close {
        position: absolute;
        top: 18px;
        right: 18px;
        z-index: 2;
      }

      .pl-reels-lightbox__count {
        position: absolute;
        left: 50%;
        bottom: 14px;
        transform: translateX(-50%);
        z-index: 2;
        padding: 5px 12px;
        border-radius: 999px;
        background: rgba(0, 0, 0, 0.55);
        color: #fff;
        font-family: var(--font-primary), sans-serif;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 0.04em;
        pointer-events: none;
      }

      .pl-hero-desktop__right {
        display: flex;
        width: 100%;
        min-width: 0;
        min-height: 0;
        padding: 0;
        justify-content: flex-end;
        align-items: stretch;
        margin-left: 0;
      }

      .pl-hero-desktop__visual {
        display: flex;
        justify-content: flex-end;
        align-items: stretch;
        width: 100%;
        max-width: 100%;
        height: 100%;
        min-height: 0;
        margin: 0;
        overflow: visible;
      }

      .pl-hero-desktop__media {
        position: relative;
        display: block;
        box-sizing: border-box;
        height: 100%;
        width: auto;
        max-width: 100%;
        max-height: 100%;
        aspect-ratio: 16 / 9;
        margin: 0;
        line-height: 0;
        overflow: hidden;
        isolation: isolate;
        transform: translateZ(0);
        border-radius: 14px;
        background: #0b0b0b;
        box-shadow:
          0 0 0 1px rgba(15, 23, 42, 0.08),
          0 18px 40px rgba(15, 23, 42, 0.18);
      }

      .pl-hero-player {
        --pl-hero-player-accent: #ff0000;
        cursor: pointer;
        user-select: none;
      }

      .pl-hero-player.is-fs {
        max-width: none;
        max-height: none;
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
        border-radius: 0;
      }

      /* Só vídeo no slot do hero desktop */
      .pl-hero-desktop__books-img,
      .pl-hero-player__video {
        display: block;
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: none;
        margin: 0;
        border: 0;
        object-fit: cover;
        object-position: center center;
        pointer-events: none;
        transform: translateZ(0);
        backface-visibility: hidden;
        background: #0b0b0b;
      }

      .pl-hero-player__bigplay {
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 3;
        transform: translate(-50%, -50%);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border: 0;
        background: transparent;
        cursor: pointer;
        filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.45));
        opacity: 0;
        pointer-events: none;
        transition: transform 0.18s ease, opacity 0.18s ease;
      }

      /* CTA som — canto superior direito, vermelho chamativo + vidro */
      .pl-hero-player__sound-cta {
        position: absolute;
        top: 12px;
        right: 12px;
        z-index: 6;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        max-width: calc(100% - 24px);
        margin: 0;
        padding: 9px 14px 9px 10px;
        border: 1px solid rgba(255, 255, 255, 0.55);
        border-radius: 999px;
        background:
          linear-gradient(135deg, rgba(255, 60, 60, 0.95) 0%, rgba(220, 0, 0, 0.92) 55%, rgba(180, 0, 0, 0.94) 100%);
        box-shadow:
          0 0 0 1px rgba(255, 255, 255, 0.28) inset,
          0 0 0 2px rgba(255, 0, 0, 0.25),
          0 10px 28px rgba(185, 0, 0, 0.45),
          0 0 22px rgba(255, 40, 40, 0.55);
        -webkit-backdrop-filter: blur(12px) saturate(1.4);
        backdrop-filter: blur(12px) saturate(1.4);
        color: #fff;
        font: 750 12.5px/1.2 var(--font-primary), system-ui, sans-serif;
        letter-spacing: 0.01em;
        cursor: pointer;
        pointer-events: auto;
        opacity: 1;
        transform: translateZ(0);
        transition: transform 0.18s ease, opacity 0.2s ease, box-shadow 0.18s ease, filter 0.18s ease;
        animation: pl-hero-sound-cta-glow 1.8s ease-in-out infinite;
      }

      .pl-hero-player__sound-cta[hidden] {
        display: none !important;
      }

      .pl-hero-player__sound-cta:hover,
      .pl-hero-player__sound-cta:focus-visible {
        transform: translateY(-1px) scale(1.04);
        filter: brightness(1.08);
        box-shadow:
          0 0 0 1px rgba(255, 255, 255, 0.4) inset,
          0 0 0 2px rgba(255, 80, 80, 0.45),
          0 14px 34px rgba(185, 0, 0, 0.55),
          0 0 28px rgba(255, 50, 50, 0.7);
        outline: none;
      }

      .pl-hero-player__sound-cta:active {
        transform: translateY(0) scale(0.98);
      }

      .pl-hero-player__sound-cta-ico {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.95);
        border: 1px solid rgba(255, 255, 255, 0.9);
        color: #e10600;
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
        animation: pl-hero-sound-pulse 1.4s ease-in-out infinite;
      }

      .pl-hero-player__sound-cta-ico svg {
        display: block;
      }

      .pl-hero-player__sound-wave {
        opacity: 0.4;
      }

      .pl-hero-player__sound-wave--1 {
        animation: pl-hero-sound-wave 1.1s ease-in-out infinite;
      }

      .pl-hero-player__sound-wave--2 {
        animation: pl-hero-sound-wave 1.1s ease-in-out infinite 0.18s;
      }

      .pl-hero-player__sound-cta-txt {
        white-space: nowrap;
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
      }

      @keyframes pl-hero-sound-cta-glow {
        0%, 100% {
          box-shadow:
            0 0 0 1px rgba(255, 255, 255, 0.28) inset,
            0 0 0 2px rgba(255, 0, 0, 0.22),
            0 10px 28px rgba(185, 0, 0, 0.45),
            0 0 18px rgba(255, 40, 40, 0.45);
        }
        50% {
          box-shadow:
            0 0 0 1px rgba(255, 255, 255, 0.35) inset,
            0 0 0 3px rgba(255, 70, 70, 0.4),
            0 12px 32px rgba(185, 0, 0, 0.55),
            0 0 30px rgba(255, 50, 50, 0.75);
        }
      }

      @keyframes pl-hero-sound-pulse {
        0%, 100% {
          box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.75);
          transform: scale(1);
        }
        50% {
          box-shadow: 0 0 0 9px rgba(255, 255, 255, 0);
          transform: scale(1.08);
        }
      }

      @keyframes pl-hero-sound-wave {
        0%, 100% { opacity: 0.3; }
        50% { opacity: 1; }
      }

      @media (max-width: 900px) {
        .pl-hero-player__sound-cta {
          padding: 7px 10px 7px 8px;
          gap: 6px;
          font-size: 11px;
        }
        .pl-hero-player__sound-cta-ico {
          width: 24px;
          height: 24px;
        }
      }

      .pl-hero-player:hover .pl-hero-player__bigplay,
      .pl-hero-player:focus-within .pl-hero-player__bigplay {
        opacity: 1;
        pointer-events: auto;
      }

      .pl-hero-player:hover .pl-hero-player__bigplay:hover,
      .pl-hero-player:focus-within .pl-hero-player__bigplay:hover {
        transform: translate(-50%, -50%) scale(1.06);
      }

      .pl-hero-player[data-playing="1"]:hover .pl-hero-player__bigplay,
      .pl-hero-player[data-playing="1"]:focus-within .pl-hero-player__bigplay {
        opacity: 0;
        pointer-events: none;
      }

      .pl-hero-player__chrome {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 4;
        padding: 0 10px 8px;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.72) 100%);
        opacity: 0;
        transform: translateY(6px);
        transition: opacity 0.2s ease, transform 0.2s ease;
        pointer-events: none;
      }

      .pl-hero-player:hover .pl-hero-player__chrome,
      .pl-hero-player:focus-within .pl-hero-player__chrome {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
      }

      .pl-hero-player__progress {
        height: 18px;
        display: flex;
        align-items: center;
        cursor: pointer;
        touch-action: none;
        position: relative;
        z-index: 5;
      }

      .pl-hero-player__progress-track {
        position: relative;
        width: 100%;
        height: 3px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.28);
        overflow: hidden;
        transition: height 0.12s ease;
      }

      .pl-hero-player__progress:hover .pl-hero-player__progress-track {
        height: 5px;
      }

      .pl-hero-player__progress-buf,
      .pl-hero-player__progress-fill {
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 0%;
        border-radius: inherit;
      }

      .pl-hero-player__progress-buf {
        background: rgba(255, 255, 255, 0.35);
      }

      .pl-hero-player__progress-fill {
        background: var(--pl-hero-player-accent);
      }

      .pl-hero-player__bar {
        display: flex;
        align-items: center;
        gap: 4px;
        min-height: 36px;
      }

      .pl-hero-player__btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        padding: 0;
        border: 0;
        border-radius: 8px;
        background: transparent;
        color: #fff;
        cursor: pointer;
        flex: 0 0 auto;
      }

      .pl-hero-player__btn:hover {
        background: rgba(255, 255, 255, 0.12);
      }

      .pl-hero-player__ico {
        width: 22px;
        height: 22px;
        display: block;
      }

      .pl-hero-player[data-playing="1"] .pl-hero-player__ico--play,
      .pl-hero-player:not([data-playing="1"]) .pl-hero-player__ico--pause {
        display: none;
      }

      .pl-hero-player[data-muted="0"] .pl-hero-player__ico--mute,
      .pl-hero-player:not([data-muted="0"]) .pl-hero-player__ico--vol {
        display: none;
      }

      .pl-hero-player.is-fs .pl-hero-player__ico--fs,
      .pl-hero-player:not(.is-fs) .pl-hero-player__ico--fs-exit {
        display: none;
      }

      .pl-hero-player__volwrap {
        display: flex;
        align-items: center;
        width: 72px;
        margin: 0 4px 0 0;
      }

      .pl-hero-player__volume {
        width: 100%;
        height: 4px;
        accent-color: #fff;
        cursor: pointer;
      }

      .pl-hero-player__time {
        margin-left: 4px;
        margin-right: auto;
        font: 500 12px/1 var(--font-primary), system-ui, sans-serif;
        color: rgba(255, 255, 255, 0.92);
        letter-spacing: 0.01em;
        white-space: nowrap;
      }

      .pl-hero-player__btn--fs {
        margin-left: 0;
      }

      @media (min-width: 1100px) {
        .pl-hero-desktop__title {
          font-size: 4rem;
        }
      }

      /* Nav + mega menu — vidro fosco (backdrop-filter no próprio elemento) */
      .pl-glass-hero-stack--split .pl-glass-floating-nav-shell {
        z-index: 80;
      }

      .pl-glass-hero-stack--split .pl-glass-floating-nav {
        position: relative;
        background: var(--pl-glass-bg);
        border: var(--pl-glass-border);
        box-shadow: var(--pl-glass-shadow);
        -webkit-backdrop-filter: var(--pl-glass-blur);
        backdrop-filter: var(--pl-glass-blur);
      }

      .pl-glass-hero-stack--split .pl-glass-floating-nav__brand,
      .pl-glass-hero-stack--split .pl-glass-floating-nav__center a,
      .pl-glass-hero-stack--split .pl-nav-mega__trigger {
        color: #0f172a;
      }

      .pl-glass-hero-stack--split .pl-glass-floating-nav__brand-wordmark {
        filter: none;
      }

      .pl-glass-hero-stack--split .pl-glass-floating-nav__center a:hover,
      .pl-glass-hero-stack--split .pl-nav-mega__trigger:hover,
      .pl-glass-hero-stack--split .pl-nav-mega:hover .pl-nav-mega__trigger,
      .pl-glass-hero-stack--split .pl-nav-mega:focus-within .pl-nav-mega__trigger {
        background: rgba(108, 76, 255, 0.1);
        color: #5a4bff;
      }

      .pl-glass-hero-stack--split .pl-glass-floating-nav__btn {
        color: #0f172a;
        border-color: rgba(15, 23, 42, 0.14);
        background: rgba(255, 255, 255, 0.35);
      }

      .pl-glass-hero-stack--split .pl-oche-burger {
        border-color: rgba(15, 23, 42, 0.14);
        color: #0f172a;
        background: rgba(255, 255, 255, 0.28);
      }

      @media (max-width: 768px) {
        .pl-glass-hero-stack--split .pl-glass-floating-nav-shell {
          width: 100%;
          max-width: none;
          left: 0;
          transform: none;
          top: env(safe-area-inset-top, 0px);
        }

        .pl-glass-hero-stack--split .pl-glass-floating-nav {
          background: transparent;
          border: 0;
          border-bottom: 1px solid rgba(255, 255, 255, 0.28);
          box-shadow: none;
          -webkit-backdrop-filter: none;
          backdrop-filter: none;
          padding: 0.42rem 1rem 0.38rem;
          border-radius: 0;
        }

        .pl-glass-hero-stack--split .pl-glass-floating-nav__brand,
        .pl-glass-hero-stack--split .pl-glass-floating-nav__center a {
          color: #ffffff;
        }

        .pl-glass-hero-stack--split .pl-glass-floating-nav__brand-wordmark {
          filter: brightness(0) invert(1);
        }

        .pl-glass-hero-stack--split .pl-glass-floating-nav__btn {
          color: #ffffff;
          border-color: transparent;
          background: transparent;
        }

        .pl-glass-hero-stack--split .pl-oche-burger {
          border: 0;
          border-color: transparent;
          color: #ffffff;
          background: transparent;
        }

        .pl-glass-hero-stack--split .pl-glass-floating-nav__login-userico {
          color: #ffffff;
        }
      }

      /* Mega menu: centralizado na viewport + vidro (sem transform no nav/card) */
      .pl-glass-hero-stack--split .pl-nav-mega__panel {
        left: 50%;
        transform: translateX(-50%);
        width: min(var(--wrap-max), calc(100vw - 2rem));
        max-width: calc(100vw - 2rem);
        margin: 0;
      }

      /* Painel no body: variáveis em :root (fora do hero não herda --pl-mega-*) */
      body:has(.pl-glass-hero-stack--split) {
        --pl-mega-glass-bg: rgba(255, 255, 255, 0.78);
        --pl-mega-glass-blur: blur(48px) saturate(2) brightness(1.05);
        --pl-mega-glass-border: 1px solid rgba(255, 255, 255, 0.92);
        --pl-mega-glass-shadow:
          0 28px 72px rgba(99, 102, 241, 0.2),
          inset 0 1px 0 rgba(255, 255, 255, 0.98);
      }

      /* Painel no body: hover via JS (.is-pl-mega-open), blur sobre a página inteira */
      .pl-nav-mega__panel--portaled {
        display: none !important;
        z-index: 10050;
        padding-top: 2px;
        box-sizing: border-box;
      }

      .pl-nav-mega__panel--portaled.is-pl-mega-open {
        display: block !important;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__card,
      .pl-nav-mega__panel--portaled .pl-nav-mega__card {
        position: relative;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.92);
        border-radius: 16px;
        box-shadow:
          0 28px 72px rgba(99, 102, 241, 0.2),
          inset 0 1px 0 rgba(255, 255, 255, 0.98);
        background: rgba(255, 255, 255, 0.78) !important;
        -webkit-backdrop-filter: blur(48px) saturate(2) brightness(1.05) !important;
        backdrop-filter: blur(48px) saturate(2) brightness(1.05) !important;
      }

      /* Mega portado no body: tema claro + vidro (não herda .pl-glass-hero-stack--split) */
      .pl-nav-mega__panel--portaled .pl-nav-mega__grid {
        padding: 0.95rem 1rem 1rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__col {
        padding: 0.25rem 0.65rem 0.35rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__col:not(:last-of-type)::after {
        background: rgba(15, 23, 42, 0.08);
        top: 0.65rem;
        bottom: 0.65rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__ico {
        width: 30px;
        height: 30px;
        border-radius: 8px;
        background: rgba(108, 76, 255, 0.1);
        border: 1px solid rgba(108, 76, 255, 0.2);
        color: #5a4bff;
        box-shadow: none;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__title {
        color: #0f172a;
        font-size: 0.72rem;
        font-weight: 650;
        line-height: 1.3;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__rule {
        width: 2rem;
        height: 2px;
        margin-bottom: 0.5rem;
        background: linear-gradient(90deg, #6c4cff 0%, rgba(108, 76, 255, 0.15) 100%);
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__list > li {
        border-top-color: rgba(15, 23, 42, 0.06);
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__link {
        color: #475569;
        font-size: 0.74rem;
        font-weight: 500;
        line-height: 1.38;
        padding: 0.48rem 0.2rem 0.48rem 0;
        border-radius: 6px;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__link:hover {
        color: #5a4bff;
        background: rgba(108, 76, 255, 0.07);
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__link-chev {
        color: #94a3b8;
        opacity: 0.45;
        font-size: 0.85rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__link:hover .pl-nav-mega__link-chev {
        color: #6c4cff;
        opacity: 0.85;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__footer {
        padding: 0.35rem 0.85rem 0.85rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__footer-tag {
        width: 32px;
        height: 32px;
        background: rgba(108, 76, 255, 0.12);
        border: 1px solid rgba(108, 76, 255, 0.22);
        color: #5a4bff;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__footer-lead {
        color: #0f172a;
        font-size: 0.76rem;
        font-weight: 650;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__footer-mid {
        color: #64748b;
        font-size: 0.7rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__footer-cta {
        background: #5a4bff;
        border-color: transparent;
        color: #fff;
        font-size: 0.65rem;
        padding: 0.42rem 0.85rem;
      }

      .pl-nav-mega__panel--portaled .pl-nav-mega__footer-cta:hover {
        background: #4f46e5;
        border-color: transparent;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__grid {
        padding: 0.95rem 1rem 1rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__col {
        padding: 0.25rem 0.65rem 0.35rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__col:not(:last-of-type)::after {
        background: rgba(15, 23, 42, 0.08);
        top: 0.65rem;
        bottom: 0.65rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__ico {
        width: 30px;
        height: 30px;
        border-radius: 8px;
        background: rgba(108, 76, 255, 0.1);
        border: 1px solid rgba(108, 76, 255, 0.2);
        color: #5a4bff;
        box-shadow: none;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__title {
        color: #0f172a;
        font-size: 0.72rem;
        font-weight: 650;
        line-height: 1.3;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__rule {
        width: 2rem;
        height: 2px;
        margin-bottom: 0.5rem;
        background: linear-gradient(90deg, #6c4cff 0%, rgba(108, 76, 255, 0.15) 100%);
      }

      .pl-glass-hero-stack--split .pl-nav-mega__list > li {
        border-top-color: rgba(15, 23, 42, 0.06);
      }

      .pl-glass-hero-stack--split .pl-nav-mega__link {
        color: #475569;
        font-size: 0.74rem;
        font-weight: 500;
        line-height: 1.38;
        padding: 0.48rem 0.2rem 0.48rem 0;
        border-radius: 6px;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__link:hover {
        color: #5a4bff;
        background: rgba(108, 76, 255, 0.07);
      }

      .pl-glass-hero-stack--split .pl-nav-mega__link-chev {
        color: #94a3b8;
        opacity: 0.45;
        font-size: 0.85rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__link:hover .pl-nav-mega__link-chev {
        color: #6c4cff;
        opacity: 0.85;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer {
        padding: 0.35rem 0.85rem 0.85rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer-inner,
      .pl-nav-mega__panel--portaled .pl-nav-mega__footer-inner {
        background: rgba(255, 255, 255, 0.55);
        border: 1px solid rgba(255, 255, 255, 0.82);
        border-radius: 12px;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95);
        padding: 0.75rem 0.95rem;
        -webkit-backdrop-filter: blur(32px) saturate(1.85);
        backdrop-filter: blur(32px) saturate(1.85);
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer-tag {
        width: 32px;
        height: 32px;
        background: rgba(108, 76, 255, 0.12);
        border: 1px solid rgba(108, 76, 255, 0.22);
        color: #5a4bff;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer-lead {
        color: #0f172a;
        font-size: 0.76rem;
        font-weight: 650;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer-mid {
        color: #64748b;
        font-size: 0.7rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer-cta {
        background: #5a4bff;
        border-color: transparent;
        color: #fff;
        font-size: 0.65rem;
        padding: 0.42rem 0.85rem;
      }

      .pl-glass-hero-stack--split .pl-nav-mega__footer-cta:hover {
        background: #4f46e5;
        border-color: transparent;
      }
    }

    @media (min-width: 769px) and (max-width: 1099px) {
      .pl-glass-hero-stack--split .pl-hero-shell__frame {
        max-width: min(1400px, 100%);
      }

      .pl-hero-desktop__inner {
        --pl-hero-book-scale: 1;
        --pl-hero-book-shift: 0;
        grid-template-columns: 1fr;
        row-gap: clamp(32px, 4vw, 48px);
        padding: 48px 28px;
      }

      .pl-hero-desktop__left {
        max-width: min(650px, 100%);
      }

      .pl-hero-desktop__right {
        margin-left: 0;
        justify-content: center;
        align-items: center;
      }

      .pl-hero-desktop__title {
        font-size: clamp(2.25rem, 5.5vw + 0.5rem, 3.5rem);
      }

      .pl-hero-desktop__lead {
        font-size: clamp(1.0625rem, 2vw + 0.5rem, 1.25rem);
        max-width: 100%;
        text-align: center;
      }

      .pl-hero-desktop__reels {
        width: auto;
        max-width: 100%;
        margin: 16px 0 0;
        align-self: flex-start;
      }

      .pl-hero-desktop__visual,
      .pl-hero-desktop__media,
      .pl-hero-desktop__books-img {
        margin-inline: auto;
        object-position: center center;
      }

      .pl-hero-desktop__visual {
        height: auto;
        align-items: center;
        justify-content: center;
      }

      .pl-hero-desktop__media {
        width: min(100%, 920px);
        height: auto;
        max-height: min(520px, 58vh);
        aspect-ratio: 16 / 9;
      }
    }

    .pl-oche-slide__subtitle {
      margin: 0;
      font-size: clamp(1.3rem, 1.2vw, 1.08rem);
      line-height: 1.45;
      font-weight: 650;
      color: rgba(255, 255, 255, 0.9);
      text-wrap: pretty;
      max-width: 54ch;
      font-family: var(--font-primary);
    }

    .pl-oche-slide__cta {
      margin-top: 0.2rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      padding: 0.68rem 1.1rem;
      border-radius: var(--radius);
      text-decoration: none;
      font-size: 0.88rem;
      font-weight: 700;
      color: #fff;
      background: #D34E44;
      border: 1px solid rgba(211, 78, 68, 0.88);
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
      transition: background 0.2s ease, transform 0.2s ease;
      pointer-events: auto;
    }

    .pl-oche-slide__cta:hover {
      background: #b83f36;
      transform: translateY(-1px);
    }

    .pl-oche-hero__btn {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      z-index: 4;
      width: 2.35rem;
      height: 2.35rem;
      border-radius: 50%;
      border: 1px solid rgba(255, 255, 255, 0.35);
      background: rgba(15, 23, 42, 0.45);
      color: #fff;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      backdrop-filter: blur(6px);
    }

    .pl-oche-hero__btn:hover {
      background: rgba(15, 23, 42, 0.62);
    }

    .pl-oche-hero__btn--prev {
      left: max(0.35rem, env(safe-area-inset-left, 0px));
    }

    .pl-oche-hero__btn--next {
      right: max(0.35rem, env(safe-area-inset-right, 0px));
    }

    .pl-oche-hero__btn svg {
      width: 1rem;
      height: 1rem;
    }

    .pl-oche-hero__dots {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0.55rem;
      z-index: 4;
      display: flex;
      justify-content: center;
      gap: 0.35rem;
      pointer-events: none;
    }

    .pl-oche-hero__dots button {
      pointer-events: auto;
      width: 0.45rem;
      height: 0.45rem;
      border-radius: 50%;
      border: 0;
      padding: 0;
      background: rgba(255, 255, 255, 0.45);
      cursor: pointer;
    }

    .pl-oche-hero__dots button[aria-current="true"] {
      background: #fff;
      transform: scale(1.15);
    }

    .calc-page-head__intro {
      width: 100%;
      max-width: none;
      margin: 0 0 0.7rem;
      padding: 0;
      text-align: center;
      background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      border-top: 3px solid #2563eb;
      box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    }

    .calc-page-head__titlerow {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: 0.35rem 0.65rem;
      margin: 0 auto;
      width: 100%;
      max-width: min(52rem, 100%);
      min-width: 0;
      padding: 0.65rem 1rem 0.7rem;
      text-align: center;
    }

    .calc-page-head .calc-page-lead {
      margin: 0;
      font-size: clamp(0.9rem, 1.95vw, 1.05rem);
      font-weight: 400;
      letter-spacing: 0.01em;
      color: var(--muted);
      line-height: 1.35;
    }

    .calc-page-head__sep {
      display: inline-block;
      font-weight: 400;
      font-size: 0.95rem;
      line-height: 1;
      color: #cbd5e1;
      user-select: none;
      padding: 0 0.1rem;
    }

    .calc-page-head__intro h1 {
      font-size: clamp(1.02rem, 2.15vw, 1.28rem);
      font-weight: 600;
      margin: 0;
      letter-spacing: -0.03em;
      color: #0f172a;
      line-height: 1.3;
    }

    @media (max-width: 400px) {
      .calc-page-head__titlerow {
        flex-direction: column;
        gap: 0.2rem;
      }

      .calc-page-head__sep {
        display: none;
      }
    }

    .calc-page-head__status {
      margin: 0 0 0.85rem;
      text-align: center;
      max-width: none;
      width: 100%;
      padding: 1.1rem 1.25rem 1.2rem;
      background: var(--pl-bloco-paper-bg);
      border: 1px solid #eef2f6;
      border-radius: 12px;
      box-shadow: 0 2px 14px rgba(15, 23, 42, 0.07);
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 0;
    }

    .calc-page-head .wizard-stepper.calc-page-stepper {
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 0.15rem 0 0;
      gap: 0;
      align-self: stretch;
      box-sizing: border-box;
    }

    .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__item {
      flex: 1 1 0;
      min-width: 0;
      max-width: none;
    }

    .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__name {
      font-size: clamp(0.65rem, 1.45vw, 0.8rem);
      line-height: 1.22;
    }

    @media (min-width: 720px) {
      .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__name {
        font-size: clamp(0.68rem, 1.1vw, 0.84rem);
      }
    }

    @media (max-width: 640px) {
      .calc-page-head .wizard-stepper.calc-page-stepper {
        flex-wrap: nowrap;
        justify-content: stretch;
        row-gap: 0;
        --wiz-disc-size: clamp(1.55rem, 4.2vw, 2rem);
      }

      .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__item {
        flex: 1 1 0;
        min-width: 0;
        max-width: none;
        gap: 0.3rem;
      }

      .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__name {
        font-size: clamp(0.48rem, 2vw, 0.62rem);
        line-height: 1.12;
        padding: 0 0.05rem;
      }
    }

    /* Admin: botão fora da tela (modal ainda abre por JS); evita linha “Acompanhar · Admin” no título */
    .admin-open-sr {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      clip-path: inset(50%);
      white-space: nowrap;
      border: 0;
    }

    .calc-page-head__login-target {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .hero-top-progress {
      margin: 0.4rem auto 0.95rem;
      width: 100%;
      max-width: 100%;
      display: grid;
      gap: 0.55rem;
      justify-items: stretch;
      background: #07153a;
      border: 1px solid rgba(59, 130, 246, 0.3);
      border-radius: 14px;
      padding: 0.7rem;
      box-shadow: 0 10px 30px rgba(2, 6, 23, 0.28);
    }

    .hero-top-progress-track {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      align-items: stretch;
      gap: 0.9rem;
      width: 100%;
      overflow: visible;
      padding-bottom: 0;
    }

    .hero-top-step {
      position: relative;
      min-height: 3.45rem;
      display: flex;
      align-items: center;
      gap: 0.58rem;
      background: #1f9fd6;
      color: #052346;
      padding: 0.6rem 0.95rem 0.6rem 0.72rem;
      clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%, 12px 50%);
      transition: transform 0.2s ease, filter 0.2s ease, background 0.2s ease;
    }

    .hero-top-step::after {
      content: '';
      position: absolute;
      right: -0.74rem;
      top: 50%;
      width: 0;
      height: 0;
      transform: translateY(-50%);
      border-top: 0.58rem solid transparent;
      border-bottom: 0.58rem solid transparent;
      border-left: 0.68rem solid #cbd5e1;
      z-index: 2;
    }

    .hero-top-step:last-child::after {
      display: none;
    }

    .hero-top-step-num {
      font-weight: 600;
      font-size: 1.72rem;
      line-height: 1;
      letter-spacing: -0.03em;
      color: #64748b;
      min-width: 2rem;
      text-align: center;
    }

    .hero-top-step-body {
      min-width: 0;
    }

    .hero-top-step-label {
      margin: 0;
      font-size: 1.06rem;
      line-height: 1;
      font-weight: 600;
      color: #64748b;
      text-transform: uppercase;
      letter-spacing: 0.03em;
    }

    .hero-top-step-name {
      display: none;
    }

    .hero-top-step.is-done {
      background: #f0f5ff;
      filter: saturate(0.82) brightness(0.88);
    }

    .hero-top-step.is-current {
      background: #f0f5ff;
      transform: translateY(-1px);
      box-shadow: 0 0 0 2px #f0f5ff;
    }

    .hero-top-step.is-upcoming {
      background: #f8fafc;
      filter: saturate(0.65) brightness(0.9);
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      .hero-top-progress {
        margin-top: 0.25rem;
        padding: 0.58rem 0.5rem;
      }

      .hero-top-progress-track {
        display: flex;
        gap: 0.72rem;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 0.15rem;
        -webkit-overflow-scrolling: touch;
      }

      .hero-top-step {
        flex: 0 0 10.6rem;
        flex-basis: 10.6rem;
        min-height: 3.25rem;
        padding: 0.58rem 0.9rem 0.58rem 0.72rem;
      }

      .hero-top-step-num {
        font-size: 1.7rem;
      }

      .hero-top-step-label {
        font-size: 1.08rem;
      }

    }

    /* Rodapé institucional — layout espaçado, colunas proporcionais */
    .pl-orc-sitefoot {
      --foot-bg: #0b1220;
      --foot-surface: rgba(255, 255, 255, 0.04);
      --foot-border: rgba(148, 163, 184, 0.16);
      --foot-text: #cbd5e1;
      --foot-muted: #94a3b8;
      --foot-subtle: #64748b;
      --foot-heading: #e2e8f0;
      --foot-link: #b6c2d3;
      --foot-link-hover: #f8fafc;
      --foot-accent: #93c5fd;
      --foot-max: min(1280px, 100%);
      width: 100%;
      margin-top: clamp(2rem, 4vw, 3rem);
      flex-shrink: 0;
      background: var(--foot-bg);
      color: var(--foot-text);
      border-top: 1px solid var(--foot-border);
      font-size: 0.9rem;
      line-height: 1.6;
    }

    .pl-orc-sitefoot__trust {
      border-bottom: 1px solid var(--foot-border);
      background: rgba(15, 23, 42, 0.55);
    }

    .pl-orc-sitefoot__trust-inner {
      max-width: var(--foot-max);
      margin: 0 auto;
      padding: 0.9rem var(--wrap-pad-x);
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: 0.5rem 1.25rem;
      font-size: 0.78rem;
      font-weight: 500;
      color: var(--foot-muted);
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }

    .pl-orc-sitefoot__trust-inner span[aria-hidden="true"] {
      color: var(--foot-subtle);
      opacity: 1;
    }

    .pl-orc-sitefoot__main {
      padding: clamp(2.5rem, 4.5vw, 3.75rem) var(--wrap-pad-x) clamp(2rem, 3.5vw, 3rem);
    }

    .pl-orc-sitefoot__grid {
      max-width: var(--foot-max);
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr;
      gap: clamp(1.75rem, 3vw, 2.5rem);
      align-items: start;
    }

    @media (min-width: 600px) {
      .pl-orc-sitefoot__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: clamp(1.5rem, 3vw, 2.25rem);
        row-gap: clamp(2rem, 3.5vw, 2.75rem);
      }

      .pl-orc-sitefoot__col--brand {
        grid-column: 1 / -1;
      }
    }

    @media (min-width: 900px) {
      .pl-orc-sitefoot__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .pl-orc-sitefoot__col--brand {
        grid-column: auto;
        grid-row: span 2;
      }
    }

    @media (min-width: 1140px) {
      .pl-orc-sitefoot__grid {
        grid-template-columns: minmax(260px, 1.45fr) repeat(5, minmax(0, 1fr));
        column-gap: clamp(1.75rem, 2.5vw, 2.75rem);
        row-gap: 0;
      }

      .pl-orc-sitefoot__col--brand {
        grid-row: 1 / -1;
        padding-right: clamp(1rem, 2vw, 1.75rem);
        border-right: 1px solid var(--foot-border);
      }
    }

    .pl-orc-sitefoot__col {
      min-width: 0;
      padding: 0;
      background: transparent;
      border: none;
      border-radius: 0;
      box-shadow: none;
    }

    .pl-orc-sitefoot__col--brand {
      padding-bottom: 0.25rem;
    }

    @media (max-width: 599px) {
      .pl-orc-sitefoot__col--brand {
        padding-bottom: 0.5rem;
        margin-bottom: 0.25rem;
        border-bottom: 1px solid var(--foot-border);
      }
    }

    .pl-orc-sitefoot__brand {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      margin-bottom: 1rem;
    }

    .pl-orc-sitefoot__brand-mark {
      width: 2.75rem;
      height: 2.75rem;
      border-radius: var(--radius);
      background: rgba(248, 250, 252, 0.08);
      border: 1px solid var(--foot-border);
      color: var(--foot-heading);
      display: grid;
      place-items: center;
      font-size: 0.8rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      flex-shrink: 0;
    }

    .pl-orc-sitefoot__brand-name {
      font-weight: 600;
      font-size: 1.15rem;
      letter-spacing: -0.02em;
      color: var(--foot-heading);
      text-decoration: none;
    }

    .pl-orc-sitefoot__brand-name:hover {
      color: var(--foot-link-hover);
    }

    .pl-orc-sitefoot__about {
      margin: 0;
      max-width: 38ch;
      font-size: 0.875rem;
      color: var(--foot-muted);
      line-height: 1.65;
    }

    .pl-orc-sitefoot__about strong {
      color: var(--foot-text);
      font-weight: 600;
    }

    .pl-orc-sitefoot__heading {
      margin: 0 0 1rem;
      font-size: 0.72rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.14em;
      color: var(--foot-heading);
    }

    .pl-orc-sitefoot ul {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .pl-orc-sitefoot li {
      margin: 0 0 0.55rem;
    }

    .pl-orc-sitefoot li:last-child {
      margin-bottom: 0;
    }

    .pl-orc-sitefoot a {
      color: var(--foot-link);
      text-decoration: none;
      border-radius: 4px;
      overflow-wrap: anywhere;
      transition: color 0.15s ease;
    }

    .pl-orc-sitefoot a:hover {
      color: var(--foot-link-hover);
      text-decoration: none;
    }

    .pl-orc-sitefoot button.pl-gerar-link {
      background: none;
      border: 0;
      padding: 0;
      margin: 0;
      font: inherit;
      color: var(--foot-link);
      cursor: pointer;
      text-align: left;
    }

    .pl-orc-sitefoot button.pl-gerar-link:hover {
      color: var(--foot-link-hover);
    }

    .pl-orc-sitefoot__atend p {
      margin: 0 0 0.85rem;
      color: var(--foot-muted);
      font-size: 0.875rem;
      line-height: 1.6;
    }

    .pl-orc-sitefoot__atend p:last-child {
      margin-bottom: 0;
    }

    .pl-orc-sitefoot__col--trust .pl-orc-sitefoot__heading {
      margin-bottom: 1.1rem;
    }

    .pl-orc-sitefoot__trust-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1.25rem 1rem;
    }

    @media (min-width: 1140px) {
      .pl-orc-sitefoot__trust-grid {
        grid-template-columns: 1fr;
        gap: 1.35rem;
      }
    }

    .pl-orc-sitefoot__trust-label {
      display: block;
      margin: 0 0 0.5rem;
      font-size: 0.65rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.12em;
      color: var(--foot-subtle);
    }

    .pl-orc-sitefoot__social {
      display: flex;
      flex-wrap: wrap;
      gap: 0.6rem;
      align-items: center;
      margin: 0;
    }

    .pl-orc-sitefoot__social a {
      display: inline-flex;
      opacity: 0.92;
    }

    .pl-orc-sitefoot__social a:hover {
      opacity: 1;
    }

    .pl-orc-sitefoot__social img {
      display: block;
      border-radius: 8px;
    }

    .pl-orc-sitefoot__pay,
    .pl-orc-sitefoot__ssl,
    .pl-orc-sitefoot__maps {
      margin: 0;
    }

    .pl-orc-sitefoot__pay img,
    .pl-orc-sitefoot__ssl img,
    .pl-orc-sitefoot__maps img {
      max-width: 100%;
      width: auto;
      height: auto;
      display: block;
      border-radius: 8px;
    }

    .pl-orc-sitefoot__sep {
      height: 1px;
      background: var(--foot-border);
      margin: 0;
    }

    .pl-orc-sitefoot__mega {
      padding: clamp(2rem, 3.5vw, 2.75rem) var(--wrap-pad-x) clamp(2.25rem, 4vw, 3rem);
      background: rgba(15, 23, 42, 0.35);
    }

    .pl-orc-sitefoot__mega-inner {
      max-width: var(--foot-max);
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr;
      gap: clamp(1.75rem, 3vw, 2.5rem);
    }

    @media (min-width: 640px) {
      .pl-orc-sitefoot__mega-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (min-width: 900px) {
      .pl-orc-sitefoot__mega-inner {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

    @media (min-width: 1140px) {
      .pl-orc-sitefoot__mega-inner {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: clamp(2rem, 2.5vw, 2.75rem);
      }
    }

    .pl-orc-sitefoot__mega-title {
      margin: 0 0 0.75rem;
      font-size: 0.72rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.14em;
      color: var(--foot-heading);
    }

    .pl-orc-sitefoot__mega ul {
      font-size: 0.84rem;
    }

    .pl-orc-sitefoot__mega a {
      color: var(--foot-muted);
    }

    .pl-orc-sitefoot__mega a:hover {
      color: var(--foot-link-hover);
    }

    .pl-orc-sitefoot__mega li {
      margin-bottom: 0.45rem;
    }

    .pl-orc-sitefoot__promos {
      max-width: var(--foot-max);
      margin: 0 auto;
      padding: clamp(2.25rem, 4vw, 3rem) var(--wrap-pad-x) clamp(2.5rem, 4vw, 3.25rem);
      display: grid;
      grid-template-columns: 1fr;
      gap: clamp(1.25rem, 2.5vw, 1.75rem);
    }

    @media (min-width: 768px) {
      .pl-orc-sitefoot__promos {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: clamp(1.5rem, 2.5vw, 2rem);
      }
    }

    .pl-orc-sitefoot__promo {
      background: var(--foot-surface);
      border: 1px solid var(--foot-border);
      border-radius: var(--radius);
      padding: clamp(1.35rem, 2vw, 1.65rem) clamp(1.4rem, 2.2vw, 1.75rem);
    }

    .pl-orc-sitefoot__promo h3 {
      margin: 0 0 0.75rem;
      font-size: 0.98rem;
      font-weight: 600;
      color: var(--foot-heading);
      letter-spacing: -0.015em;
      line-height: 1.4;
    }

    .pl-orc-sitefoot__promo p {
      margin: 0;
      font-size: 0.84rem;
      color: var(--foot-muted);
      line-height: 1.65;
    }

    .pl-orc-sitefoot__promo strong {
      color: var(--foot-text);
      font-weight: 600;
    }

    .pl-orc-sitefoot__bottom {
      background: #070d18;
      border-top: 1px solid var(--foot-border);
      padding: clamp(1.15rem, 2vw, 1.35rem) var(--wrap-pad-x);
    }

    .pl-orc-sitefoot__bottom-inner {
      max-width: var(--foot-max);
      margin: 0 auto;
      font-size: 0.8rem;
      color: var(--foot-subtle);
      text-align: center;
      line-height: 1.65;
    }

    .pl-orc-sitefoot__bottom-inner strong {
      color: var(--foot-muted);
      font-weight: 600;
    }

    .pl-orc-sitefoot__bottom-inner a {
      color: var(--foot-muted);
      font-weight: 500;
      text-decoration: underline;
      text-underline-offset: 3px;
      text-decoration-color: rgba(148, 163, 184, 0.45);
    }

    .pl-orc-sitefoot__bottom-inner a:hover {
      color: var(--foot-link-hover);
      text-decoration-color: currentColor;
    }

    /* Painel cliente — passo “concluído” (acompanhamento após cobrança Asaas) */
    .pedido-dashboard {
      max-width: 40rem;
      margin: 0 auto;
    }

    .pedido-dash-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
      margin: 0 0 1rem;
    }

    .pedido-dash-tab {
      padding: 0.45rem 0.75rem;
      border-radius: 8px;
      border: 1px solid var(--border);
      background: var(--card);
      font: inherit;
      font-size: 0.82rem;
      font-weight: 700;
      cursor: pointer;
      color: var(--text);
    }

    .pedido-dash-tab[aria-selected="true"] {
      background: #1e40af;
      color: #fff;
      border-color: var(--text);
    }

    .pedido-dash-panel[hidden] {
      display: none !important;
    }

    .pedido-dash-panel {
      font-size: 0.9rem;
      line-height: 1.45;
    }

    .pedido-dash-panel dl {
      margin: 0;
    }

    .pedido-dash-panel dt {
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--muted);
      margin-top: 0.65rem;
    }

    .pedido-dash-panel dt:first-child {
      margin-top: 0;
    }

    .pedido-dash-panel dd {
      margin: 0.15rem 0 0;
    }

    .pedido-timeline {
      list-style: none;
      margin: 1rem 0 0;
      padding: 0;
      border-left: 3px solid #e2e8f0;
    }

    .pedido-timeline li {
      position: relative;
      padding: 0.35rem 0 0.75rem 1rem;
      font-size: 0.86rem;
    }

    .pedido-timeline li::before {
      content: '';
      position: absolute;
      left: -0.42rem;
      top: 0.5rem;
      width: 0.55rem;
      height: 0.55rem;
      border-radius: 50%;
      background: #cbd5e1;
      border: 2px solid #fff;
    }

    .pedido-timeline li.is-done::before {
      background: #16a34a;
    }

    .pedido-timeline li.is-current {
      font-weight: 700;
      color: var(--text);
    }

    .pedido-timeline li.is-current::before {
      background: #2563eb;
      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.25);
    }

    .pedido-timeline li.is-pend::before {
      background: #e2e8f0;
    }

    .pedido-dash-note {
      margin-top: 1rem;
      padding: 0.65rem 0.75rem;
      background: #f0f9ff;
      border: 1px solid #bae6fd;
      border-radius: var(--radius);
      font-size: 0.82rem;
      color: #0c4a6e;
    }

    .btn-dash-demo {
      margin-top: 0.85rem;
    }

    .pedido-dash-actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.5rem;
      margin-top: 0.75rem;
    }

    .pedido-dash-actions .btn-dash-demo {
      margin-top: 0;
    }

    .layout-shell {
      display: grid;

      align-items: flex-start;
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      body {
        background: linear-gradient(
          180deg,
          #faf9f7 0%,
          #f9f8f6 42%,
          #f8f7f5 100%
        );
      }

      body::before {
        opacity: 0.12;
      }

      html {
        --sum-mobile-content-h: 72px;
        /* Travado: env(safe-area) crescia no scroll do Safari e esticava a faixa. */
        --sum-mobile-safe: 0px;
        --sum-mobile-bar-h: var(--sum-mobile-content-h);
        scroll-padding-bottom: var(--sum-mobile-bar-h);
      }

      .wrap {
        flex: 0 1 auto;
        position: relative;
        z-index: 2;
        padding-bottom: 0 !important;
      }

      #orc-form.layout-shell {
        padding-bottom: 0;
        margin-bottom: 0;
        gap: 0;
      }

      /* Wrapper fora do fluxo; o dock (.summary-mobile-dock) é o fixed na base do aparelho */
      #orc-form.layout-shell > .layout-summary,
      .layout-summary {
        order: 3;
        position: static !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        top: auto !important;
        flex: none !important;
        width: 100% !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        pointer-events: none;
        z-index: auto;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
      }

      body > #layout-summary {
        position: static !important;
        z-index: 200;
        height: 0 !important;
        overflow: visible !important;
        pointer-events: none;
      }

      #orc-form.layout-shell > .layout-summary .summary-mobile-dock,
      body > #layout-summary .summary-mobile-dock,
      .layout-summary .summary-mobile-dock {
        pointer-events: auto;
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        top: auto !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin: 0 !important;
        z-index: 200 !important;
        box-sizing: border-box !important;
      }

      .wizard-inline-footer {
        margin-top: 0.5rem;
        margin-bottom: 0;
      }

      .wizard-sticky {
        position: relative;
        bottom: auto;
        z-index: 1;
      }

      .pl-orc-sitefoot__trust {
        display: none !important;
      }

      .pl-orc-sitefoot {
        position: relative;
        z-index: 1;
        /* Mesmo respiro entre cards do wizard (.grid gap: 1rem) */
        margin-top: 1rem !important;
        /* Espaço para o dock fixo não cobrir o conteúdo do rodapé ao rolar até o fim */
        padding-bottom: var(--sum-mobile-bar-h);
      }

      .layout-shell {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        overflow: visible;
        min-height: 0;
      }

      .layout-page-head {
        width: 100%;
        flex: 0 0 auto;
      }

      .layout-main {
        padding-bottom: 0;
        margin-bottom: 0;
      }

      /* sticky-summary-mobile — altura fixa (não acompanha safe-area no scroll) */
      .summary-mobile-dock {
        --sum-mobile-content-h: 72px;
        --sum-mobile-safe: 0px;
        --sum-mobile-bar-h: var(--sum-mobile-content-h);
        --sum-mobile-radius: 20px;
        --sum-mobile-pad-block: 11px;
        --sum-mobile-pad-inline: 12px;
        --sum-mobile-pad-left: 16px;
        --sum-mobile-slope: 12px;
        --sum-mobile-label: 11px;
        --sum-mobile-value: 16px;
        --sum-mobile-total: 18px;
        --sum-mobile-stack: 2px;
        display: flex;
        flex-direction: column;
        background: var(--pl-sum-paper-bg);
        border: none;
        border-top-left-radius: var(--sum-mobile-radius);
        border-top-right-radius: var(--sum-mobile-radius);
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        padding-bottom: 0;
        box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.08);
        max-height: calc(100dvh - 0.5rem);
        overflow: hidden;
      }

      .btn-summary-mobile-toggle {
        display: flex;
        align-items: stretch;
        width: 100%;
        min-height: var(--sum-mobile-bar-h);
        padding: 0;
        border: none;
        background: #fff;
        cursor: pointer;
        text-align: left;
        font: inherit;
        border-radius: var(--sum-mobile-radius) var(--sum-mobile-radius) 0 0;
        flex-shrink: 0;
        overflow: hidden;
        position: relative;
        box-sizing: border-box;
      }

      .sum-mobile-dock-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(max-content, 1fr);
        align-items: stretch;
        width: 100%;
        min-width: 0;
        flex: 1 1 auto;
        height: var(--sum-mobile-bar-h);
        min-height: var(--sum-mobile-bar-h);
        box-sizing: border-box;
      }

      @media (max-width: 380px) {
        .summary-mobile-dock {
          --sum-mobile-pad-block: 10px;
          --sum-mobile-pad-inline: 10px;
          --sum-mobile-pad-left: 14px;
          --sum-mobile-slope: 10px;
          --sum-mobile-value: 15px;
          --sum-mobile-total: 17px;
        }
      }

      .btn-summary-mobile-toggle:focus-visible {
        outline: 2px solid #2563eb;
        outline-offset: -2px;
      }

      .sum-mobile-left {
        grid-column: 1;
        align-self: stretch;
        min-width: 0;
        max-width: 100%;
        display: flex;
        align-items: center;
        padding: 0 10px 0 var(--sum-mobile-pad-left);
        box-sizing: border-box;
      }

      .sum-mobile-text {
        min-width: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: var(--sum-mobile-stack);
        text-align: left;
      }

      .sum-mobile-left-label,
      .sum-mobile-mid-label {
        display: block;
        font-size: var(--sum-mobile-label);
        font-weight: 500;
        line-height: 1.1;
        color: #6b7280;
      }

      .sum-mobile-badge,
      .sum-mobile-unit {
        display: block;
        font-size: var(--sum-mobile-value);
        font-weight: 700;
        line-height: 1.2;
        color: #111827;
        white-space: nowrap;
      }

      .sum-mobile-badge {
        min-width: 0;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .sum-mobile-mid {
        grid-column: 2;
        align-self: stretch;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: var(--sum-mobile-stack);
        padding: 0 var(--sum-mobile-pad-inline);
        border-left: 1px solid #e5e7eb;
        box-sizing: border-box;
        white-space: nowrap;
      }

      .sum-mobile-right {
        grid-column: 3;
        align-self: stretch;
        position: relative;
        z-index: 0;
        min-width: 0;
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 0 max(12px, env(safe-area-inset-right, 0px)) 0 calc(10px + var(--sum-mobile-slope));
        color: #fff;
        box-sizing: border-box;
        white-space: nowrap;
      }

      .sum-mobile-right::before {
        content: '';
        position: absolute;
        inset: 0;
        z-index: -1;
        background: #5b21b6;
        clip-path: polygon(var(--sum-mobile-slope) 0, 100% 0, 100% 100%, 0 100%);
        border-top-right-radius: var(--sum-mobile-radius);
        pointer-events: none;
      }

      .sum-mobile-total-label {
        display: block;
        font-size: var(--sum-mobile-label);
        font-weight: 500;
        line-height: 1.1;
        color: rgba(255, 255, 255, 0.92);
      }

      .sum-mobile-total-block {
        flex: 0 0 auto;
        flex-shrink: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: var(--sum-mobile-stack);
      }

      .sum-mobile-total {
        flex-shrink: 0;
        font-size: var(--sum-mobile-total);
        font-weight: 800;
        color: #fff;
        letter-spacing: -0.02em;
        line-height: 1.15;
        white-space: nowrap;
      }

      .sum-mobile-chevron {
        flex: 0 0 30px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        margin: 0;
        border-radius: 50%;
        background: #fff;
        color: #5b21b6;
        transform: rotate(180deg);
        transition: transform 0.28s ease, color 0.2s ease, filter 0.2s ease;
      }

      .sum-mobile-chevron-svg {
        width: 13px;
        height: 13px;
      }

      @keyframes sumMobileChevronLiftUp {
        0%,
        100% {
          transform: rotate(180deg) translateY(0);
          filter: drop-shadow(0 0 0 rgba(91, 33, 182, 0));
        }
        50% {
          transform: rotate(180deg) translateY(-3.2px);
          filter: drop-shadow(0 0 6px rgba(91, 33, 182, 0.35));
        }
      }

      @keyframes sumMobileChevronDropDown {
        0%,
        100% {
          transform: rotate(0deg) translateY(0);
          filter: drop-shadow(0 0 0 rgba(91, 33, 182, 0));
        }
        50% {
          transform: rotate(0deg) translateY(3.2px);
          filter: drop-shadow(0 0 6px rgba(91, 33, 182, 0.3));
        }
      }

      .layout-summary:not(.is-expanded) .sum-mobile-chevron {
        animation: sumMobileChevronLiftUp 1.2s ease-in-out infinite;
      }

      .layout-summary.is-expanded .sum-mobile-chevron {
        transform: rotate(0deg);
        color: #5b21b6;
        animation: sumMobileChevronDropDown 1.2s ease-in-out infinite;
      }

      @media (prefers-reduced-motion: reduce) {
        .layout-summary:not(.is-expanded) .sum-mobile-chevron,
        .layout-summary.is-expanded .sum-mobile-chevron {
          animation: none;
          filter: none;
        }
      }

      /* Mobile — resumo fechado: altura um pouco menor (só a faixa do toggle) */
      html:has(#layout-summary:not(.is-expanded)) {
        --sum-mobile-content-h: 64px;
        --sum-mobile-bar-h: var(--sum-mobile-content-h);
      }

      .layout-summary:not(.is-expanded) .summary-mobile-dock {
        --sum-mobile-content-h: 64px;
        --sum-mobile-bar-h: var(--sum-mobile-content-h);
      }

      /* Resumo aberto: esconder total/unitário duplicados do hero (Prazo fica no sum-block--prazo) */
      .layout-summary.is-expanded .selection-summary .sum-block--hero .sum-hero-total,
      .layout-summary.is-expanded .selection-summary .sum-block--hero .sum-hero-unit {
        display: none !important;
      }

      /* body:has(...) — dock mobile é portaled para document.body, fora de #orc-form */
      body:has(#orc-form[data-wizard-step="5"]) #layout-summary {
        display: none !important;
      }

      .selection-summary-shell {
        overflow: hidden;
        max-height: 0;
        transition: max-height 0.3s ease;
      }

      .layout-summary.is-expanded .selection-summary-shell {
        max-height: min(72vh, calc(100dvh - var(--sum-mobile-bar-h, 76px)));
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        border-top: 1px solid var(--border);
      }

      .selection-summary-shell .selection-summary.card {
        flex: 0 1 auto;
        display: flex;
        flex-direction: column;
        min-height: min-content;
        background: var(--pl-sum-paper-bg);
        border: none;
        box-shadow: none;
        padding: 0.55rem 0.6rem 0.85rem;
        position: static;
        max-height: none;
        margin: 0;
      }

      /* Mobile: resumo do pedido na frente; Chat Ajuda atrás quando o dock abre */
      body > #layout-summary,
      body > #layout-summary.is-expanded,
      body > #layout-summary .summary-mobile-dock {
        z-index: 240 !important;
      }

      #pl-budget-chat-root {
        z-index: 90 !important;
      }

      #printlivros-chat,
      #printlivros-chat.pl-eduardo-calc {
        z-index: 480 !important;
      }

      #pl-budget-chat-root .pl-chat-fab {
        z-index: 91 !important;
      }

      #pl-budget-chat-root .pl-chat-backdrop {
        z-index: 92 !important;
      }

      #pl-budget-chat-root .pl-chat-panel {
        z-index: 93 !important;
      }

      #printlivros-chat.pl-eduardo-calc.pl-eduardo-open {
        z-index: 250 !important;
      }

      /* Aba lateral WhatsApp — um pouco menor; texto igual ao print (3 linhas) */
      @media (max-width: 860px) {
        #pl-budget-chat-root .pl-chat-fab {
          min-width: 3.35rem !important;
          max-width: 3.7rem !important;
          padding: 7px 6px 8px 5px !important;
          gap: 4px !important;
        }

        #pl-budget-chat-root .pl-chat-fab__ico {
          width: 22px !important;
          height: 22px !important;
        }

        #pl-budget-chat-root .pl-chat-fab__ico-svg {
          width: 22px !important;
          height: 22px !important;
        }

        #pl-budget-chat-root .pl-chat-fab__txt--desk {
          display: none !important;
        }

        #pl-budget-chat-root .pl-chat-fab__txt--mob {
          display: flex !important;
          flex-direction: column !important;
          align-items: center !important;
          justify-content: center !important;
          gap: 1px !important;
          text-align: center !important;
        }

        #pl-budget-chat-root .pl-chat-fab__mob-line {
          display: block !important;
          font-size: 8px !important;
          font-weight: 600 !important;
          line-height: 1.15 !important;
          letter-spacing: -0.02em !important;
          color: #334155 !important;
          text-align: center !important;
        }

        #pl-budget-chat-root .pl-chat-fab__mob-line--emph {
          color: #15803d !important;
          font-weight: 700 !important;
          font-size: 8px !important;
        }
      }
    }

    #pl-sum-desk-more {
      display: none !important;
    }

    .pl-arq-how,
    #pl-arq-how-modal {
      display: none !important;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      body {
        min-height: 100dvh;
      }

      .wrap {
        flex: 1 1 auto;
        min-height: 0;
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: var(--wrap-max);
        margin: 0 auto;
        padding: 0.75rem var(--wrap-pad-x) 1rem;
        overflow: visible;
      }

      .calc-page-head {
        margin-bottom: 0.65rem;
      }

      .calc-page-head__status {
        margin-bottom: 0;
      }

      .calc-page-head .calc-page-lead {
        font-size: clamp(0.95rem, 1.75vw, 1.08rem);
      }

      .calc-page-head__intro h1 {
        font-size: clamp(1.06rem, 2vw, 1.32rem);
      }

      .layout-shell {
        flex: 1;
        min-height: 0;
        max-height: none;
        display: grid;
        grid-template-columns: minmax(0, 2.08fr) minmax(300px, 1fr);
        grid-template-rows: auto auto;
        gap: 1.25rem;
        align-items: flex-start;
        overflow: visible;
      }

      /* Altura da linha da grelha em auto evita “prender” o sticky do resumo lateral. */
      .layout-shell > .layout-main {
        min-height: min-content;
      }

      .layout-shell > .layout-summary {
        align-self: start;
      }

      .layout-page-head {
        grid-column: 1 / -1;
        grid-row: 1;
        width: 100%;
        min-width: 0;
      }

      .layout-main {
        grid-column: 1;
        grid-row: 2;
        min-width: 0;
        min-height: 0;
        overflow: visible;
        padding-right: 0.15rem;
        display: flex;
        flex-direction: column;
      }

      .layout-summary {
        grid-column: 2;
        grid-row: 2;
        position: -webkit-sticky;
        position: sticky;
        top: 20px;
        height: fit-content;
        max-height: none;
        align-self: flex-start;
        align-items: stretch;
        justify-content: flex-start;
        min-width: 0;
        width: 100%;
        max-height: none;
        overflow: visible;
        display: flex;
        flex-direction: column;
        background: var(--pl-sum-paper-bg);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        padding: 0;
        box-sizing: border-box;
      }

      .layout-summary .selection-summary.card {
        flex: 0 0 auto;
        display: flex;
        flex-direction: column;
        width: 100%;
        min-height: min-content;
        box-sizing: border-box;
        padding: 0.55rem 0.6rem 0.65rem;
        margin: 0;
        font-size: 0.84rem;
        background: var(--pl-sum-paper-bg);
        border: none;
        box-shadow: none;
        position: static;
        max-height: none;
        overflow: visible;
      }

      .layout-summary .summary-mobile-dock {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-height: 0;
        position: relative !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        top: auto !important;
        z-index: auto !important;
        max-width: none !important;
        padding-bottom: 0;
        border-radius: 0;
        box-shadow: none;
      }

      .layout-summary .btn-summary-mobile-toggle {
        display: none !important;
      }

      .layout-summary .selection-summary-shell {
        max-height: none !important;
        overflow: visible !important;
        flex: 1 1 auto;
        min-height: 0;
      }

      #layout-summary.pl-sum-desk-clip:not(.pl-sum-desk-open) {
        height: var(--pl-sum-desk-h);
        max-height: var(--pl-sum-desk-h);
        overflow: hidden;
        overflow-anchor: none;
      }

      #orc-form[data-wizard-step="2"] #layout-summary .sum-head-actions,
      #orc-form[data-wizard-step="3"] #layout-summary .sum-head-actions,
      #orc-form[data-wizard-step="4"] #layout-summary .sum-head-actions {
        display: none !important;
      }

      #layout-summary.pl-sum-desk-clip:not(.pl-sum-desk-open) .summary-mobile-dock {
        flex: 1 1 auto;
        min-height: 0;
        overflow: hidden;
      }

      #layout-summary.pl-sum-desk-clip:not(.pl-sum-desk-open) .selection-summary-shell {
        flex: 1 1 auto;
        min-height: 0;
        max-height: none !important;
        overflow: hidden !important;
      }

      #layout-summary.pl-sum-desk-clip:not(.pl-sum-desk-open) .selection-summary.card {
        min-height: 0;
        overflow: hidden;
      }

      #layout-summary.pl-sum-desk-open {
        height: fit-content;
        max-height: none;
        overflow: visible;
      }

      #layout-summary.pl-sum-desk-clip #pl-sum-desk-more,
      #layout-summary.pl-sum-desk-open #pl-sum-desk-more {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 0.4rem;
        flex: 0 0 auto;
        width: calc(100% - 1.2rem);
        margin: 0 auto 0.55rem;
        padding: 0.55rem 0.75rem;
        border: 1px solid var(--border);
        border-radius: 12px;
        background: #fff;
        color: #4c1d95;
        font-size: 0.82rem;
        font-weight: 700;
        line-height: 1.2;
        cursor: pointer;
        box-sizing: border-box;
      }

      #layout-summary.pl-sum-desk-clip #pl-sum-desk-more:hover,
      #layout-summary.pl-sum-desk-open #pl-sum-desk-more:hover {
        background: #f5f3ff;
      }

      #layout-summary #pl-sum-desk-more .pl-sum-desk-more__chev {
        display: inline-flex;
        width: 14px;
        height: 14px;
        flex-shrink: 0;
      }

      #layout-summary.pl-sum-desk-open #pl-sum-desk-more .pl-sum-desk-more__chev {
        transform: rotate(180deg);
      }

      .selection-summary .sum-head {
        margin-bottom: 0.55rem;
        padding: 0.45rem 0.65rem;
        font-size: 0.68rem;
      }

      .selection-summary .sum-row {
        padding: 0.12rem 0;
        font-size: clamp(0.55rem, 2.35vw, 0.72rem);
      }

      .selection-summary .sum-block:not(.sum-block--hero) .sum-section-title {
        margin-bottom: 0.5rem;
      }

      .selection-summary .sum-block:not(.sum-block--hero) .sum-section-title.spaced {
        margin-top: 0.65rem;
      }

      .selection-summary .sum-hero-amount {
        font-size: 1.42rem;
      }

      .layout-main > .grid {
        gap: 0.85rem;
      }

      .layout-main .card {
        padding: 1rem 1.15rem 1.1rem;
      }

      .layout-main .wizard-step .grid > .card > h2,
      .layout-main .wizard-step > .card > h2 {
        margin: -1rem -1.15rem 0.75rem -1.15rem;
        padding: 0.48rem 0.95rem;
      }

      .layout-main .card h2 {
        margin-bottom: 0.65rem;
      }

      .layout-main input[type="text"],
      .layout-main input[type="number"],
      .layout-main input[type="email"],
      .layout-main input[type="tel"],
      .layout-main select {
        padding: 0.62rem 0.8rem;
        font-size: 1rem;
      }

      .layout-main .field {
        margin-bottom: 0.9rem;
      }
    }

    .layout-main {
      min-width: 0;
    }

    .layout-main > .grid {
      display: grid;
      gap: 1rem;
    }

    header {
      margin-bottom: 0.00rem;
    }

    header h1 {
      margin: 0 0 0.35rem;
      font-size: 1.5rem;
      font-weight: 700;
      letter-spacing: -0.02em;
    }

    header p {
      margin: 0;
      color: var(--muted);
      font-size: 0.95rem;
    }

    .grid {
      display: grid;
      gap: 1rem;
    }

    @media (min-width: 720px) {
      .grid-2 { grid-template-columns: 1fr 1fr; }
    }

    /* Passo 1 do wizard: estava por engano só em @media (min-width: 1024px), o que deixava mobile sem layout.
       Desktop ≥1024px permanece igual (mesmos seletores e valores). */
    #wizard-step-1 > .grid {
      --step1-spec-cell-min-h: 224px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      align-items: stretch;
    }

    #wizard-step-1 > .grid > .card {
        grid-column: 1 / -1;
      }

      #wizard-step-1 > .grid > .step1-extras-frete-column {
        grid-column: 1 / -1;
      }

      #wizard-step-1 > .grid > #card-modelo {
        grid-column: 1 / -1;
        min-height: 0;
        height: auto;
        display: flex;
        flex-direction: column;
      }

      #wizard-step-1 > .grid > #card-modelo .calc-flow-campo {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
      }

      #wizard-step-1 > .grid > #card-modelo .field {
        flex: 1 1 auto;
      }

      #wizard-step-1 > .grid > #card-modelo .calc-flow-msg {
        min-height: 0;
      }

      #wizard-step-1 > .grid > #card-modelo .calc-flow-msg[hidden] {
        display: none !important;
        visibility: visible;
      }

      #wizard-step-1 > .grid > #card-modelo.card--modelo-focus {
        outline: none;
      }

      /* —— Bloco unificado: Tipo de livro e quantidade (referência visual) —— */
      #card-modelo.card--modelo-qtd {
        margin: 0;
        padding: 0;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: var(--pl-bloco-paper-bg);
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06), 0 4px 20px rgba(15, 23, 42, 0.04);
        overflow: hidden;
        display: flex;
        flex-direction: column;
        min-width: 0;
      }

      #card-modelo.card--modelo-qtd .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      #card-modelo.card--modelo-qtd .mq-hero {
        display: flex;
        align-items: flex-start;
        gap: 14px;
        margin: 0 0 0.85rem;
        padding: 0;
        border-bottom: none;
      }

      #card-modelo.card--modelo-qtd .mq-hero__mark {
        flex: 0 0 auto;
        width: 60px;
        height: 60px;
        border-radius: 16px;
        background: linear-gradient(180deg, #faf7ff 0%, #ede9fe 100%);
        border: 1px solid #ddd6fe;
        box-sizing: border-box;
        color: #6d28d9;
        display: inline-flex;
        align-items: center;
        justify-content: center;
      }

      #card-modelo.card--modelo-qtd .mq-hero__mark svg {
        width: 46px;
        height: 46px;
        display: block;
      }

      #card-modelo.card--modelo-qtd .mq-hero__titles {
        flex: 1 1 auto;
        min-width: 0;
        min-height: 60px;
        display: flex;
        flex-direction: column;
        gap: 0.35rem;
        justify-content: center;
      }

      #card-modelo.card--modelo-qtd .mq-hero__title-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        flex-wrap: wrap;
      }

      #card-modelo.card--modelo-qtd .mq-hero__title {
        margin: 0;
        font-family: var(--font-primary);
        font-size: 24px;
        line-height: 1.15;
        font-weight: 700;
        color: #333333;
        letter-spacing: -0.02em;
      }

      #card-modelo.card--modelo-qtd .mq-hero__sub {
        margin: 0;
        font-family: var(--font-primary);
        font-size: 16px;
        line-height: 1.25;
        font-weight: 500;
        color: #7d7d7d;
        max-width: 52rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      /* Botão Ajuda (? + texto) — padrão único nos heróis do passo 1 */
      #wizard-step-1 .capa-hero__help {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-height: 40px;
        padding: 0 10px;
        border: 1px solid #e5e7eb;
        border-radius: 7px;
        background: #ffffff;
        color: #7d7d7d;
        font-size: 1rem;
        font-weight: 700;
        cursor: pointer;
      }

      #wizard-step-1 .capa-hero__help:hover {
        color: #7d7d7d;
      }

      #wizard-step-1 .capa-hero__help-q {
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: #8b5cf6;
        color: #ffffff;
        font-size: 16px;
        font-weight: 700;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
      }

      /* Desktop: esconder botões Ajuda (? + texto) dos heróis — mobile mantém */
      @media (min-width: 1024px) {
        #wizard-step-1 .capa-hero__help,
        #orc-form.layout-shell #wizard-step-1 .capa-hero__help,
        #orc-form.layout-shell #wizard-step-1 .fa-hero .capa-hero__help,
        #orc-form.layout-shell #wizard-step-1 .miolo-hero .capa-hero__help,
        #orc-form.layout-shell #wizard-step-1 .capa-hero .capa-hero__help,
        #card-modelo.card--modelo-qtd .mq-hero .capa-hero__help,
        #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero .capa-hero__help {
          display: none !important;
        }
      }

      /* Trilho de sessão (número do passo): padrão único — duas metades tracejadas + pill (foto ref.) */
      #wizard-step-1 .pl-sessao-rail {
        display: flex;
        flex-direction: row;
        align-items: center;
        width: 100%;
        box-sizing: border-box;
        margin: 0;
        padding: 0 0 12px;
        gap: 10px;
      }

      #card-modelo.card--modelo-qtd > .pl-sessao-rail {
        padding-left: 22px;
        padding-right: 22px;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail {
        padding-left: 0;
        padding-right: 0;
      }

      #wizard-step-1 .pl-sessao-rail__line {
        flex: 1 1 0;
        min-width: 8px;
        height: 0;
        border: 0;
        border-top: 1px dashed #c4c0d8;
        align-self: center;
      }

      #wizard-step-1 .pl-sessao-rail__badge {
        flex: 0 0 auto;
        padding: 4px 20px;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.02em;
        line-height: 1.25;
        color: #33334d;
        background: #f0f0ff;
        border: 1px solid #d1d1f0;
        box-sizing: border-box;
      }

      #card-modelo.card--modelo-qtd .mq-panels {
        display: grid;
        grid-template-columns: minmax(0, 1.45fr) minmax(0, 0.72fr);
        gap: 0;
        align-items: stretch;
        flex: 1 1 auto;
        min-height: 0;
      }

      @media (min-width: 1024px) {
        #card-modelo.card--modelo-qtd .mq-panels {
          border-top: 1px solid #eef0f4;
        }
      }

      #card-modelo.card--modelo-qtd .mq-panel {
        padding: 14px 18px 16px;
        min-width: 0;
        display: flex;
        flex-direction: column;
      }

      /* Desktop: wrapper invisível — mobile recebe borda só na superfície (trilho fora da caixa). */
      #card-modelo.card--modelo-qtd .mq-panel__surface {
        display: contents;
      }

      @media (min-width: 1024px) {
        #card-modelo.card--modelo-qtd .mq-panel--tipo {
          border-right: 1px solid #eef0f4;
        }
      }

      #card-modelo.card--modelo-qtd .mq-panel--qtd {
        padding: 12px 14px 14px;
      }

      #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead {
        margin-bottom: 8px;
      }

      #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__lead {
        font-size: 13px;
        line-height: 1.35;
      }

      #card-modelo.card--modelo-qtd .mq-subhead {
        margin-bottom: 10px;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__title-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        margin-bottom: 4px;
      }

      #card-modelo.card--modelo-qtd .mq-btn-recomecar {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
        margin: 0;
        padding: 6px 10px 6px 8px;
        border: none;
        border-radius: 0 12px 0 8px;
        background: #f46f6f;
        color: #ffffff;
        font-family: var(--font-primary, inherit);
        font-size: 11px;
        font-weight: 600;
        line-height: 1.15;
        letter-spacing: 0.01em;
        cursor: pointer;
        white-space: nowrap;
        box-shadow: none;
        width: auto;
        max-width: none;
        min-height: 0;
        -webkit-tap-highlight-color: transparent;
      }

      #card-modelo.card--modelo-qtd .mq-btn-recomecar::before {
        content: "";
        display: block;
        flex: 0 0 auto;
        width: 12px;
        height: 12px;
        background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20 12a8 8 0 1 1-2.34-5.66' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M20 4v5h-5' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
      }

      /* Desktop ≥1024: só aumenta o Recomeçar (sem mudar posição) */
      @media (min-width: 1024px) {
        #card-modelo.card--modelo-qtd .mq-btn-recomecar,
        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar,
        html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar {
          padding: 8px 13px 8px 11px !important;
          font-size: 12.5px !important;
          gap: 6px !important;
          line-height: 1.15 !important;
        }

        #card-modelo.card--modelo-qtd .mq-btn-recomecar::before,
        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar::before,
        html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar::before {
          width: 14px !important;
          height: 14px !important;
        }
      }

      #card-modelo.card--modelo-qtd .mq-btn-recomecar:hover {
        background: #ef5c5c;
        color: #ffffff;
        border: none;
      }

      #card-modelo.card--modelo-qtd .mq-btn-recomecar:active {
        background: #e64f4f;
        color: #ffffff;
      }

      #card-modelo.card--modelo-qtd .mq-btn-recomecar:focus-visible {
        outline: 2px solid #ffffff;
        outline-offset: -2px;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__title {
        margin: 0;
        font-size: 16px;
        font-weight: 700;
        color: #111827;
        letter-spacing: -0.01em;
      }

      /* Quantidade (#calc-bloc-tiragem): estilos “novos” apenas desktop — mobile mantém o padrão antigo do card. */
      @media (min-width: 1024px) {
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead__title-row {
          justify-content: center;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead__title {
          flex: 1 1 auto;
          width: 100%;
          margin: 0;
          font-family: var(--font-primary);
          font-size: 24px;
          font-weight: 700;
          line-height: 1.15;
          letter-spacing: -0.02em;
          text-align: center;
          color: #333333;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-visible-label {
          text-align: center;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout {
          display: flex;
          flex-direction: column;
          gap: 0;
          width: 100%;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__main {
          display: flex;
          flex-direction: column;
          align-items: center;
          width: 100%;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__aside {
          width: 100%;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-sublead {
          margin: 6px 0 18px;
          font-family: var(--font-primary);
          font-size: 16px;
          line-height: 1.25;
          font-weight: 500;
          color: #7d7d7d;
          text-align: center;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid {
          flex: 1 1 auto;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          min-width: 0;
          padding: 10px 8px 12px;
          background: #ffffff;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__unit {
          margin: 2px 0 0;
          font-size: 13px;
          font-weight: 500;
          color: var(--muted);
          line-height: 1.2;
          letter-spacing: 0.01em;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid .mq-qtd-stepper__input {
          border: none;
          border-left: none;
          border-right: none;
          width: 100%;
          padding: 2px 6px 0;
          -moz-appearance: textfield;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__input::-webkit-outer-spin-button,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__input::-webkit-inner-spin-button {
          -webkit-appearance: none;
          margin: 0;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo {
          margin: 0;
          width: 100%;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__aside {
          margin-top: 0;
          padding-top: 0;
          border-top: none;
        }
      }

      /* Mobile: sem título H3 “Quantidade exemplares” (o passo já é identificado noutros sinais do fluxo). */
      @media (max-width: 1023px) {
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__main > .mq-subhead {
          display: none !important;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-visible-label {
          display: block;
          width: 100%;
          margin: 0 0 0.75rem;
          padding: 0;
          font-family: var(--font-primary);
          font-size: 1.3125rem;
          font-weight: 600;
          line-height: 1.15;
          letter-spacing: -0.03em;
          text-align: center;
          color: #0f172a;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__main > .mq-qtd-sublead {
          display: none;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__main {
          align-items: stretch;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo {
          margin: 0;
          width: 100%;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__aside {
          margin-top: 0;
          padding-top: 0;
          border-top: none;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"].campo-ativo {
          margin-top: 32px !important;
          border: none !important;
          box-shadow: none !important;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"] .calc-flow-msg:not([hidden]) {
          position: absolute !important;
          top: -1.65rem !important;
          left: 50% !important;
          right: auto !important;
          width: auto !important;
          max-width: calc(100% - 12px) !important;
          margin: 0 !important;
          padding: 0 !important;
          justify-content: center !important;
          text-align: center !important;
          white-space: nowrap !important;
          transform: translateX(-50%) !important;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"] .calc-flow-msg.pl-msg-on:not([hidden]) {
          transform: translateX(-50%) translateY(0) scale(1) !important;
        }
      }

      #card-modelo.card--modelo-qtd .mq-subhead__help {
        width: 22px;
        height: 22px;
        padding: 0;
        border-radius: 999px;
        border: 1px solid #e5e7eb;
        background: #f9fafb;
        color: #9ca3af;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        cursor: pointer;
        flex: 0 0 auto;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__help:hover {
        border-color: #c4b5fd;
        color: #7c3aed;
        background: #faf5ff;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__lead {
        margin: 0;
        font-size: 14px;
        line-height: 1.45;
        color: #6b7280;
      }

      #card-modelo.card--modelo-qtd .calc-flow-campo[data-flow-key="modelo"],
      #card-modelo.card--modelo-qtd .calc-flow-campo[data-flow-key="quantidade"] {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        min-height: 0;
      }

      #card-modelo.card--modelo-qtd .modelo-pick--cards {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        width: 100%;
        margin: 0;
      }

      /* Mobile: NUNCA 2 colunas — os 3 cards empilham (Brochura / Dura / Grampo) */
      @media (max-width: 1023px) {
        #card-modelo.card--modelo-qtd .modelo-pick--cards {
          display: flex !important;
          flex-direction: column !important;
          flex-wrap: nowrap !important;
          grid-template-columns: none !important;
          gap: 12px !important;
          overflow: visible !important;
        }
      }

      /* book_preview_card — oculto (desktop e mobile) */
      #wizard-step-1 .book-preview-card-mobile,
      #book-preview-card-mobile.book-preview-card-mobile {
        display: none !important;
        width: 100%;
        max-width: 420px;
        margin: 0 auto;
        box-sizing: border-box;
        border-radius: 22px;
        background: linear-gradient(180deg, #06101f 0%, #091427 100%);
        border: 1.5px solid rgba(255, 180, 40, 0.45);
        box-shadow: none;
        padding: 18px;
        position: relative;
        overflow: hidden;
        flex-direction: column;
        gap: 18px;
      }

      html.is-mobile-ref #wizard-step-1 .book-preview-card-mobile,
      html.is-mobile-ref #book-preview-card-mobile.book-preview-card-mobile {
        display: none !important;
        align-items: stretch;
        margin-top: 10px;
        padding: 14px 18px 13px;
        gap: 12px;
        border-radius: 16px;
        border-width: 1px;
        border-color: rgba(255, 180, 40, 0.3);
        box-shadow: none;
      }

      .book-preview-card-mobile__glow {
        position: absolute;
        top: -60px;
        right: -20px;
        width: 180px;
        height: 180px;
        background: radial-gradient(circle, rgba(255, 180, 40, 0.14) 0%, rgba(255, 180, 40, 0) 70%);
        pointer-events: none;
      }

      html.is-mobile-ref .book-preview-card-mobile__glow {
        top: -40px;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        width: 160px;
        height: 120px;
        background: radial-gradient(circle, rgba(255, 180, 40, 0.08) 0%, rgba(255, 180, 40, 0) 72%);
      }

      .book-preview-card-mobile__body {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 6px;
        position: relative;
        z-index: 1;
        width: 100%;
        padding: 0 4px;
      }

      .book-preview-card-mobile__title {
        margin: 0;
        font-size: 30px;
        font-weight: 600;
        line-height: 1.05;
        color: #ffffff;
        letter-spacing: -0.5px;
      }

      html.is-mobile-ref .book-preview-card-mobile__title {
        margin: 0;
        max-width: 22em;
        font-size: clamp(13px, 3.7vw, 15px);
        font-weight: 600;
        line-height: 1.35;
        letter-spacing: -0.1px;
        color: rgba(255, 255, 255, 0.96);
      }

      .book-preview-card-mobile__list {
        margin: 0;
        padding: 0;
        list-style: none;
        font-size: 16px;
        font-weight: 500;
        line-height: 1.5;
        color: rgba(255, 255, 255, 0.72);
      }

      html.is-mobile-ref .book-preview-card-mobile__list {
        display: inline-block;
        max-width: 26em;
        text-align: left;
        font-size: clamp(11.5px, 3.1vw, 12.5px);
        font-weight: 400;
        line-height: 1.4;
        color: rgba(255, 255, 255, 0.62);
      }

      .book-preview-card-mobile__list li {
        position: relative;
        padding-left: 1.1em;
      }

      html.is-mobile-ref .book-preview-card-mobile__list li {
        padding-left: 0.95em;
      }

      .book-preview-card-mobile__list li::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0.55em;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #ffb323;
      }

      html.is-mobile-ref .book-preview-card-mobile__list li::before {
        top: 0.5em;
        width: 4px;
        height: 4px;
        background: rgba(255, 179, 35, 0.8);
      }

      .book-preview-card-mobile__btn {
        width: 100%;
        height: 64px;
        border-radius: 18px;
        background: #07111f;
        border: 2px solid #d9981e;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        font-family: inherit;
        font-size: 28px;
        font-weight: 700;
        color: #ffffff;
        cursor: pointer;
        box-shadow:
          0 0 0 1px rgba(255, 180, 40, 0.1),
          0 8px 24px rgba(0, 0, 0, 0.35);
        position: relative;
        z-index: 1;
        transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
      }

      html.is-mobile-ref .book-preview-card-mobile__btn {
        height: 40px;
        border-radius: 11px;
        gap: 7px;
        font-size: clamp(12px, 3.4vw, 13.5px);
        font-weight: 500;
        border-width: 1px;
        border-color: rgba(217, 152, 30, 0.6);
        box-shadow:
          0 0 0 1px rgba(255, 180, 40, 0.05),
          0 4px 12px rgba(0, 0, 0, 0.2);
      }

      .book-preview-card-mobile__btn:hover {
        background: #0b1728;
        transform: translateY(-1px);
        box-shadow: 0 12px 28px rgba(255, 180, 40, 0.12);
      }

      .book-preview-card-mobile__btn:focus-visible {
        outline: 2px solid #ffb323;
        outline-offset: 2px;
      }

      .book-preview-card-mobile__btn-ico {
        flex: 0 0 auto;
        color: #ffb323;
      }

      html.is-mobile-ref .book-preview-card-mobile__btn-ico {
        width: 15px;
        height: 15px;
        color: rgba(255, 179, 35, 0.88);
      }

      @media (max-width: 380px) {
        html.is-mobile-ref #wizard-step-1 .book-preview-card-mobile {
          padding: 14px 16px 12px;
          gap: 12px;
        }
        html.is-mobile-ref .book-preview-card-mobile__body {
          gap: 5px;
          padding: 0 2px;
        }
        html.is-mobile-ref .book-preview-card-mobile__title {
          font-size: 12.5px;
        }
        html.is-mobile-ref .book-preview-card-mobile__desc {
          font-size: 11px;
        }
        html.is-mobile-ref .book-preview-card-mobile__btn {
          height: 38px;
          font-size: 12px;
        }
        html.is-mobile-ref .book-preview-card-mobile__btn-ico {
          width: 14px;
          height: 14px;
        }
      }

      /* DesktopBookPreviewBanner — desabilitado (desktop e mobile) */
      #wizard-step-1 .book-preview-banner-desktop {
        display: none !important;
      }

      @media (min-width: 1100px) {
        #card-modelo.card--modelo-qtd .mq-panel--tipo .book-preview-banner-desktop {
          display: none !important;
          flex-direction: row;
          align-items: center;
          justify-content: center;
          gap: 20px;
          position: relative;
          overflow: hidden;
          box-sizing: border-box;
          width: 100%;
          min-height: 0;
          margin: 14px 0 2px;
          padding: 12px 20px;
          border-radius: 16px;
          background: linear-gradient(180deg, #07101f 0%, #020817 100%);
          border: 1px solid rgba(255, 255, 255, 0.08);
          box-shadow:
            0 0 0 1px rgba(255, 184, 0, 0.04) inset,
            0 8px 24px rgba(0, 0, 0, 0.28);
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__glow {
          position: absolute;
          pointer-events: none;
          border-radius: 999px;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__glow--center {
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 220px;
          height: 72px;
          background: radial-gradient(circle, rgba(255, 184, 0, 0.08) 0%, rgba(255, 184, 0, 0.02) 35%, transparent 75%);
          filter: blur(14px);
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__glow--left {
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          width: 140px;
          height: 72px;
          background: radial-gradient(circle, rgba(35, 80, 180, 0.1) 0%, transparent 70%);
          filter: blur(16px);
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__left {
          display: flex;
          align-items: center;
          gap: 10px;
          flex: 0 0 auto;
          height: 36px;
          position: relative;
          z-index: 1;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__icon-box {
          flex: 0 0 auto;
          display: flex;
          align-items: center;
          justify-content: center;
          width: 36px;
          height: 36px;
          border-radius: 999px;
          border: 1px solid rgba(255, 184, 0, 0.38);
          background: rgba(255, 255, 255, 0.01);
          box-shadow:
            0 0 12px rgba(255, 184, 0, 0.08),
            inset 0 0 8px rgba(255, 184, 0, 0.03);
          color: #ffb400;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__icon-box svg {
          width: 17px;
          height: 17px;
          display: block;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__headline {
          margin: 0;
          padding-top: 1px;
          font-family: var(--font-primary);
          font-weight: 600;
          font-size: 16px;
          line-height: 1;
          letter-spacing: -0.015em;
          color: #ffffff;
          white-space: nowrap;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__hl {
          color: #ffb400;
          font-weight: 600;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__divider {
          flex: 0 0 1px;
          width: 1px;
          height: 28px;
          background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.14), transparent);
          position: relative;
          z-index: 1;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__right {
          display: flex;
          align-items: center;
          justify-content: center;
          flex: 0 0 auto;
          height: 36px;
          position: relative;
          z-index: 1;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__btn {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 6px;
          box-sizing: border-box;
          width: auto;
          height: 34px;
          margin: 0;
          padding: 0 14px;
          border-radius: 999px;
          border: 1px solid rgba(255, 255, 255, 0.12);
          background: linear-gradient(180deg, #ffd05a 0%, #ffb400 100%);
          box-shadow:
            0 4px 16px rgba(255, 180, 0, 0.2),
            inset 0 1px 0 rgba(255, 255, 255, 0.28);
          font-family: var(--font-primary);
          font-weight: 600;
          font-size: 10px;
          letter-spacing: 0.04em;
          line-height: 1;
          text-transform: uppercase;
          color: #111111;
          white-space: nowrap;
          cursor: pointer;
          transition: transform 0.18s ease, box-shadow 0.18s ease;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__btn:hover {
          transform: translateY(-1px);
          box-shadow:
            0 6px 20px rgba(255, 180, 0, 0.26),
            inset 0 1px 0 rgba(255, 255, 255, 0.34);
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__btn:focus-visible {
          outline: 2px solid #ffb400;
          outline-offset: 2px;
        }

        #card-modelo.card--modelo-qtd .book-preview-banner-desktop__btn-ico {
          flex: 0 0 auto;
          width: 13px;
          height: 13px;
          color: #111111;
        }
      }

      /* Overlay fullscreen: só iframe do livrosmockup real (sem UI duplicada) */
      .pl-mockup-overlay {
        display: none;
        position: fixed;
        inset: 0;
        z-index: 2100;
        width: 100vw;
        height: 100vh;
        height: 100dvh;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: #000;
        overflow: hidden;
      }

      .pl-mockup-overlay.is-open {
        display: flex;
        flex-direction: column;
      }

      .pl-mockup-overlay__bar {
        flex: 0 0 auto;
        position: relative;
        z-index: 2150;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        min-height: 48px;
        padding: max(8px, env(safe-area-inset-top, 0px)) 12px 8px;
        box-sizing: border-box;
        background: linear-gradient(180deg, rgba(6, 10, 20, 0.98) 0%, rgba(4, 8, 18, 0.94) 100%);
        border-bottom: 1px solid rgba(255, 196, 61, 0.22);
        box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
        font-family: var(--font-primary);
      }

      .pl-mockup-overlay__back {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 8px 12px;
        border: 0;
        border-radius: var(--radius);
        background: transparent;
        color: #ffc43d;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: -0.01em;
        cursor: pointer;
        font-family: inherit;
        line-height: 1.2;
        text-align: left;
      }

      .pl-mockup-overlay__back:hover {
        background: rgba(255, 196, 61, 0.1);
      }

      .pl-mockup-overlay__back-icon {
        font-size: 18px;
        line-height: 1;
        opacity: 0.9;
      }

      .pl-mockup-overlay__close {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-height: 40px;
        padding: 8px 14px;
        border-radius: var(--radius);
        border: 1px solid rgba(255, 255, 255, 0.18);
        background: rgba(255, 255, 255, 0.06);
        color: #fff;
        font-size: 14px;
        font-weight: 600;
        line-height: 1;
        cursor: pointer;
        font-family: inherit;
        white-space: nowrap;
      }

      .pl-mockup-overlay__close:hover {
        background: rgba(248, 113, 113, 0.22);
        border-color: rgba(248, 113, 113, 0.45);
      }

      .pl-mockup-overlay__frame {
        flex: 1 1 auto;
        position: relative;
        min-height: 0;
        width: 100%;
      }

      .pl-mockup-overlay iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
        margin: 0;
        padding: 0;
        display: block;
        background: #000;
      }

      #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        align-items: center;
        gap: 6px 10px;
        min-width: 0;
        width: 100%;
        margin: 0;
        padding: 7px 9px 7px 10px;
        text-align: left;
        border-radius: var(--radius);
        border: 1px solid #e5e7eb;
        background: #ffffff;
        cursor: pointer;
        transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
        font: inherit;
        color: #111827;
        box-shadow: none;
      }

      #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card:hover:not(:disabled) {
        border-color: #7dd3c0;
        background: #f6fffb;
      }

      #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card[aria-pressed="true"] {
        border-color: #2563eb;
        background: #f0f5ff;
        box-shadow: none;
      }

      #card-modelo.card--modelo-qtd .modelo-card__ico {
        color: var(--muted);
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        width: 28px;
      }

      #card-modelo.card--modelo-qtd .modelo-card__ico svg {
        width: 28px;
        height: 28px;
        display: block;
      }

      #card-modelo.card--modelo-qtd .modelo-card__ico img {
        width: 28px;
        height: 28px;
        display: block;
      }

      #card-modelo.card--modelo-qtd .modelo-card__ico-img--mob {
        display: none !important;
      }

      #card-modelo.card--modelo-qtd .modelo-card__ico-img--desk {
        display: block;
      }

      /*
       * Mobile fotos PNG: forçar em (1) viewport ≤1023 e (2) html.is-mobile-ref
       * (touch pode ativar is-mobile-ref mesmo com largura >1023).
       */
      @media (max-width: 1023px) {
        #card-modelo.card--modelo-qtd .modelo-card__ico-img--desk,
        #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-card__ico .modelo-card__ico-img--desk,
        html.is-mobile-ref #card-modelo.card--modelo-qtd .modelo-card__ico-img--desk {
          display: none !important;
          visibility: hidden !important;
          position: absolute !important;
          width: 0 !important;
          height: 0 !important;
          overflow: hidden !important;
        }

        #card-modelo.card--modelo-qtd .modelo-card__ico-img--mob,
        #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-card__ico .modelo-card__ico-img--mob,
        html.is-mobile-ref #card-modelo.card--modelo-qtd .modelo-card__ico-img--mob,
        #card-modelo.card--modelo-qtd .modelo-card__ico img.modelo-card__ico-img--mob {
          display: block !important;
          visibility: visible !important;
          opacity: 1 !important;
          position: relative !important;
          width: 88px !important;
          height: 120px !important;
          max-width: 88px !important;
          max-height: 120px !important;
          object-fit: contain !important;
          object-position: center center !important;
        }
      }

      html.is-mobile-ref #card-modelo.card--modelo-qtd .modelo-card__ico-img--desk,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-card__ico .modelo-card__ico-img--desk {
        display: none !important;
        visibility: hidden !important;
        position: absolute !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
      }

      html.is-mobile-ref #card-modelo.card--modelo-qtd .modelo-card__ico-img--mob,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-card__ico .modelo-card__ico-img--mob,
      html.is-mobile-ref #card-modelo.card--modelo-qtd .modelo-card__ico img.modelo-card__ico-img--mob {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        width: 88px !important;
        height: 120px !important;
        max-width: 88px !important;
        max-height: 120px !important;
        object-fit: contain !important;
        object-position: center center !important;
      }

      #card-modelo.card--modelo-qtd .modelo-card[aria-pressed="true"] .modelo-card__ico {
        color: #2563eb;
      }

      #card-modelo.card--modelo-qtd .modelo-card[aria-pressed="true"] .modelo-card__name {
        color: #333333;
      }

      #card-modelo.card--modelo-qtd .modelo-card__body {
        display: flex;
        flex-direction: column;
        gap: 2px;
        min-width: 0;
      }

      #card-modelo.card--modelo-qtd .modelo-card__name {
        font-size: clamp(11.5px, 2.35vw, 14px);
        font-weight: 700;
        color: #111827;
        line-height: 1.1;
        white-space: nowrap;
      }

      .modelo-card__perks {
        display: none;
      }

      .modelo-card__badge,
      .modelo-card__head,
      .modelo-card__titles {
        display: none;
      }

      #card-modelo.card--modelo-qtd .modelo-card__desc {
        display: block;
        font-size: 11.5px;
        line-height: 1.32;
        color: #6b7280;
        word-break: normal;
        overflow-wrap: normal;
        hyphens: none;
      }

      #card-modelo.card--modelo-qtd .modelo-card__radio {
        width: 18px;
        height: 18px;
        border-radius: 999px;
        border: 2px solid #cbd5e1;
        flex: 0 0 auto;
        position: relative;
        box-sizing: border-box;
      }

      #card-modelo.card--modelo-qtd .modelo-card[aria-pressed="true"] .modelo-card__radio {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

      #card-modelo.card--modelo-qtd .modelo-card:disabled,
      #card-modelo.card--modelo-qtd .modelo-card.modelo-card--disabled {
        opacity: 0.55;
        cursor: not-allowed;
        background: #f9fafb !important;
        border-color: #e5e7eb !important;
        box-shadow: none !important;
      }

      #card-modelo.card--modelo-qtd .modelo-card:disabled .modelo-card__ico,
      #card-modelo.card--modelo-qtd .modelo-card.modelo-card--disabled .modelo-card__ico {
        color: #9ca3af;
      }

      /* Desktop ≥1024px: hero “Escolha seu livro” (ref. visual) + cards em 3 colunas. Mobile intacto. */
      @media (min-width: 1024px) {
        #card-modelo.card--modelo-qtd > .mq-hero {
          display: none !important;
        }

        /* Quantidade (“2 de 6”) abaixo da área dos livros — uma coluna no desktop. */
        #card-modelo.card--modelo-qtd .mq-panels {
          grid-template-columns: minmax(0, 1fr);
          gap: 0;
          /* Sem borda no topo: o jornal do “Escolha seu livro” vai até a borda do card. */
          border-top: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo {
          position: relative;
          display: flex;
          flex-direction: column;
          border-right: none;
          border-bottom: 1px solid #eef0f4;
          padding-top: 0 !important;
          padding-left: 22px;
          padding-right: 22px;
          background: var(--pl-bloco-paper-bg);
          overflow: hidden;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo::before {
          content: "";
          position: absolute;
          left: -6%;
          top: 0;
          width: min(36%, 260px);
          height: 100%;
          background: radial-gradient(ellipse at center, rgba(237, 233, 254, 0.22) 0%, rgba(237, 233, 254, 0) 72%);
          pointer-events: none;
          z-index: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo::after {
          content: "";
          position: absolute;
          right: -4%;
          top: 0;
          width: min(32%, 240px);
          height: 100%;
          background: radial-gradient(ellipse at center, rgba(224, 231, 255, 0.18) 0%, rgba(224, 231, 255, 0) 70%);
          pointer-events: none;
          z-index: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail {
          order: 2;
          display: flex;
          width: 100%;
          margin: 0;
          padding: clamp(18px, 1vw, 12px) 0 18px;
          gap: 12px;
          box-sizing: border-box;
          position: relative;
          z-index: 1;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-panel__surface {
          display: contents;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead {
          order: 1;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: clamp(8px, 1vw, 12px);
          position: relative;
          overflow: visible;
          z-index: 1;
          width: calc(100% + 44px);
          max-width: none;
          margin: 0 -22px;
          padding: clamp(22px, 2.4vw, 32px) clamp(12px, 2vw, 24px) clamp(28px, 3vw, 40px);
          text-align: center;
          box-sizing: border-box;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"] {
          order: 3;
          position: relative;
          z-index: 1;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .book-preview-banner-desktop {
          order: 4;
          position: relative;
          z-index: 1;
        }

        /* Desktop — efeito jornal em “Escolha seu livro” (mesmo padrão Formato / Capa) */
        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead::before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 0;
          pointer-events: none;
          background:
            linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
            url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8;
          -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%);
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead::after {
          content: none;
          display: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title-row {
          display: block;
          position: static;
          z-index: 1;
          width: 100%;
          max-width: 100%;
          margin: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar {
          position: absolute;
          top: 14px;
          right: 18px;
          left: auto;
          bottom: auto;
          transform: none;
          z-index: 5;
          width: auto;
          max-width: none;
          min-height: 0;
          padding: 9px 16px 9px 12px;
          font-size: 13px;
          font-weight: 700;
          gap: 6px;
          border-radius: 999px;
          background: #f47c7c;
          color: #ffffff;
          box-shadow: 0 2px 8px rgba(244, 124, 124, 0.28);
          line-height: 1.1;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar::before {
          width: 11px;
          height: 11px;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar:hover {
          background: #ef5c5c;
          color: #ffffff;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title-row::after {
          content: none;
          display: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title {
          display: block;
          position: relative;
          z-index: 1;
          width: 100%;
          max-width: 100%;
          margin: 0;
          padding: 0;
          box-sizing: border-box;
          font-family: var(--font-primary);
          font-size: clamp(1.75rem, 3.2vw, 2.75rem);
          font-weight: 600;
          line-height: 1.05;
          letter-spacing: 0.03em;
          text-transform: uppercase;
          text-align: center;
          color: #09142e;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__lead {
          display: block;
          position: relative;
          z-index: 1;
          width: 100%;
          max-width: 100%;
          margin: 0;
          font-family: var(--font-primary);
          font-size: clamp(1.0625rem, 1.65vw, 1.5rem);
          line-height: 1.25;
          font-weight: 500;
          color: #4b5563;
          text-align: center;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          -webkit-line-clamp: unset;
          line-clamp: unset;
        }

        /* Mesma base horizontal do hero + trilho “2 de 6” organizado (ref. foto). */
        #card-modelo.card--modelo-qtd .mq-panel--qtd {
          padding: 22px 22px 20px;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .pl-sessao-rail {
          width: 100%;
          margin: 0;
          padding: 6px 0 20px;
          gap: 12px;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead {
          margin-bottom: 12px;
          text-align: center;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__title-row,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead__title-row {
          display: block;
          width: 100%;
          margin: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__title,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead__title {
          display: block;
          width: 100%;
          margin: 0;
          font-family: var(--font-primary);
          font-size: 24px;
          font-weight: 700;
          line-height: 1.15;
          letter-spacing: -0.02em;
          text-align: center;
          color: #333333;
        }

        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-sublead {
          display: block;
          width: 100%;
          margin: 0;
          font-family: var(--font-primary);
          font-size: 16px;
          line-height: 1.25;
          font-weight: 500;
          color: #7d7d7d;
          text-align: center;
        }

        /* ~55–58% da largura útil; alinhado à esquerda com o texto acima. */
        #card-modelo.card--modelo-qtd .mq-panel--qtd .field--mq-qtd {
          width: 100%;
          max-width: min(520px, 58%);
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards {
          display: grid;
          grid-template-columns: repeat(3, minmax(0, 1fr));
          gap: 04px;
          align-items: stretch;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card {
          display: flex;
          flex-direction: column;
          align-items: stretch;
          box-sizing: border-box;
          width: 100%;
          min-width: 0;
          padding: 3px;
          margin: 0;
          border-radius: var(--radius);
          border: 1px solid #e5e7eb;
          background: #ffffff;
          position: relative;
          overflow: hidden;
          text-align: center;
          box-shadow: none;
          transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card:hover:not(:disabled):not([aria-pressed="true"]) {
          border-color: #d8dce3;
          box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06);
          background: #ffffff;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card[aria-pressed="true"] {
          border: 2px solid #2563eb;
          background: #fafbff;
          box-shadow: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico {
          display: flex;
          align-items: center;
          justify-content: center;
          flex: 0 0 auto;
          width: 100%;
          height: 240px;
          margin: 0;
          padding: 0;
          background: #eef1f4;
          border-radius: 8px;
          overflow: hidden;
          box-sizing: border-box;
        }

        html:not(.is-mobile-ref) #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--mob {
          display: none !important;
        }

        html:not(.is-mobile-ref) #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--desk {
          display: block !important;
          width: 100%;
          height: 100%;
          max-height: 100%;
          object-fit: cover;
          object-position: center;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body {
          flex: 1 1 auto;
          min-height: 0;
          margin: 10px 0 0;
          padding: 0 12px 34px;
          display: flex;
          flex-direction: column;
          justify-content: flex-start;
          align-items: center;
          text-align: center;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name {
          width: 100%;
          font-size: 22px;
          font-weight: 700;
          line-height: 1.2;
          color: #111827;
          letter-spacing: -0.01em;
          text-align: center;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc {
          display: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__select-hint {
          position: absolute;
          bottom: 12px;
          left: 50%;
          right: auto;
          top: auto;
          transform: translateX(-50%);
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 7px;
          z-index: 2;
          pointer-events: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__select-lbl {
          display: inline-block;
          font-size: 0.9375rem;
          font-weight: 600;
          line-height: 1;
          letter-spacing: 0.01em;
          color: #475569;
          white-space: nowrap;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__select-lbl {
          color: #1d4ed8;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__radio {
          position: relative;
          bottom: auto;
          right: auto;
          left: auto;
          top: auto;
          width: 15px;
          height: 15px;
          margin: 0;
          flex: 0 0 auto;
          border-radius: 999px;
          border: 2px solid #94a3b8;
          background: #ffffff;
          box-sizing: border-box;
          transform: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio {
          border: 2px solid #2563eb;
          background: #ffffff;
          background-image: none;
          width: 15px;
          height: 15px;
          bottom: auto;
          right: auto;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio::after {
          content: "";
          position: absolute;
          left: 50%;
          top: 50%;
          width: 7px;
          height: 7px;
          border-radius: 50%;
          background: #2563eb;
          transform: translate(-50%, -50%);
          border: none;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="false"] .modelo-card__radio::after {
          content: none;
          display: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card:disabled,
        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--disabled {
          opacity: 0.55;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks {
          display: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__badge {
          display: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__head {
          display: block !important;
          margin: 0 !important;
          padding: 0 !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles {
          display: block !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
          position: absolute !important;
          bottom: 12px !important;
          left: 50% !important;
          right: auto !important;
          top: auto !important;
          margin: 0 !important;
          transform: translateX(-50%) !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint .modelo-card__radio {
          position: relative !important;
          bottom: auto !important;
          right: auto !important;
          top: auto !important;
          left: auto !important;
          margin: 0 !important;
          transform: none !important;
        }
      }

      #card-modelo.card--modelo-qtd .field--mq-qtd {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 0;
        flex: 1 1 auto;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-stepper {
        display: flex;
        align-items: stretch;
        width: 100%;
        max-width: 100%;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        overflow: hidden;
        background: #fafafa;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn {
        flex: 0 0 34px;
        border: none;
        background: #fff;
        font-size: 17px;
        font-weight: 600;
        color: #7c3aed;
        cursor: pointer;
        line-height: 1;
        padding: 0;
        transition: background 0.12s ease;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn:hover {
        background: #f5f3ff;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn--plus {
        font-weight: 700;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-stepper__input {
        flex: 1 1 auto;
        min-width: 0;
        border: none;
        border-left: 1px solid #e5e7eb;
        border-right: 1px solid #e5e7eb;
        background: #fff;
        text-align: center;
        font-size: 16px;
        font-weight: 700;
        color: #111827;
        padding: 7px 6px;
        border-radius: 0;
        margin: 0;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-stepper__input:focus {
        outline: none;
        background: #fafafa;
      }

      #card-modelo.card--modelo-qtd .mq-btn-confirm {
        width: 100%;
        margin: 0;
        padding: 8px 12px;
        border: 1px solid #bbf7d0;
        border-radius: 8px;
        background: linear-gradient(180deg, #ecfdf5 0%, #d1fae5 55%, #ecfdf5 100%);
        color: #166534;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
        transition: filter 0.12s ease, box-shadow 0.12s ease;
      }

      #card-modelo.card--modelo-qtd .mq-btn-confirm:hover {
        filter: brightness(0.98);
        box-shadow: 0 2px 8px rgba(22, 101, 52, 0.12);
      }

      /* Painel economia progressiva (código — espelha arte de referência) */
      .mq-qtd-promo {
        --mq-promo-purple: #7c3aed;
        --mq-promo-purple-soft: #8b5cf6;
        --mq-promo-purple-bg: #f5f3ff;
        --mq-promo-border: #ebe7f5;
        --mq-promo-muted: #a3a3a3;
        --mq-promo-text: #333333;
        margin: 0;
        width: 100%;
        max-width: 100%;
        font-family: var(--font-primary);
        color: var(--mq-promo-text);
        box-sizing: border-box;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo .mq-subhead__title em {
        font-style: normal;
        color: var(--mq-promo-purple);
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo__table {
        border: 1px solid var(--mq-promo-border);
        border-radius: 8px;
        background: #ffffff;
        overflow: hidden;
      }

      .mq-qtd-promo__table-head,
      .mq-qtd-promo__row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        align-items: center;
        column-gap: 10px;
      }

      .mq-qtd-promo__table-head {
        padding: 5px 10px 4px;
        border-bottom: 1px solid var(--mq-promo-border);
      }

      .mq-qtd-promo__table-head span {
        font-size: 9px;
        line-height: 1.2;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: var(--mq-promo-purple-soft);
      }

      .mq-qtd-promo__table-head span:last-child {
        text-align: right;
      }

      .mq-qtd-promo__row {
        padding: 5px 10px;
        border-bottom: 1px solid #f1f1f4;
      }

      .mq-qtd-promo__row:last-child {
        border-bottom: none;
      }

      .mq-qtd-promo__qty {
        margin: 0;
        font-size: 11px;
        line-height: 1.2;
        color: #666666;
      }

      .mq-qtd-promo__qty strong {
        font-size: 12px;
        font-weight: 700;
        color: var(--mq-promo-text);
      }

      .mq-qtd-promo__price {
        margin: 0;
        text-align: right;
        font-size: 10px;
        line-height: 1.2;
        color: var(--mq-promo-muted);
        white-space: nowrap;
      }

      .mq-qtd-promo__price strong {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: -0.01em;
        color: var(--mq-promo-purple);
      }

      #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-qtd-promo {
        margin: 0;
        width: 100%;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-hint-legacy {
        display: none !important;
      }

      #card-modelo.card--modelo-qtd .mq-tip {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 7px 16px 8px;
        margin: 0;
        background: #f3f0ff;
        border-top: 1px solid #ede9fe;
      }

      #card-modelo.card--modelo-qtd .mq-tip__ico {
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        border-radius: 999px;
        background: #8b5cf6;
        color: #fff;
        font-size: 10px;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        margin-top: 0;
      }

      #card-modelo.card--modelo-qtd .mq-tip__txt {
        margin: 0;
        font-size: 12px;
        line-height: 1.35;
        color: #5b21b6;
      }

      @media (max-width: 1023px) {
        #card-modelo.card--modelo-qtd > .mq-hero,
        #card-modelo.card--modelo-qtd > .pl-sessao-rail {
          display: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panels {
          grid-template-columns: 1fr;
          border-top: none;
          gap: 0;
          padding: 0;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel {
          border: none;
          border-radius: 0;
          padding: 0;
          background: transparent;
          box-shadow: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo,
        #card-modelo.card--modelo-qtd .mq-panel--qtd {
          border: none;
          border-top: none;
          border-bottom: none;
          border-right: none;
          padding: 0;
          background: transparent;
          gap: 10px;
          box-shadow: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-panel__surface,
        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-panel__surface {
          display: flex;
          flex-direction: column;
          flex: 1 1 auto;
          min-height: 0;
          border: none;
          border-radius: 0;
          background: transparent;
        }

        /* Mobile — hero “Escolha seu livro”: sem caixa interna; só a borda do #card-modelo. */
        #card-modelo.card--modelo-qtd .mq-panel--tipo {
          display: flex;
          flex-direction: column;
          position: relative;
          border: none;
          border-radius: 0;
          padding: 0;
          background: transparent;
          overflow: hidden;
          gap: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-panel__surface {
          display: contents;
          border: none;
          border-radius: 0;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead {
          order: 1;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: 0;
          width: 100%;
          align-self: stretch;
          position: relative;
          overflow: visible;
          z-index: 1;
          margin: 0;
          padding: calc(12px + clamp(18px, 4.5vw, 24px)) 0 clamp(14px, 3.5vw, 22px);
          text-align: center;
          box-sizing: border-box;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead::before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          width: 100%;
          z-index: 0;
          pointer-events: none;
          border-radius: 12px 12px 0 0;
          background:
            linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
            url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8;
          -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%);
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title-row {
          display: block;
          width: 100%;
          margin: 0;
          padding: 0 14px;
          position: static;
          z-index: 2;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar {
          position: absolute;
          top: 0;
          right: 0;
          left: auto;
          bottom: auto;
          z-index: 20;
          margin: 0;
          width: auto;
          max-width: none;
          min-height: 0;
          padding: 5px 10px 5px 8px;
          font-size: 11px;
          font-weight: 600;
          gap: 4px;
          border-radius: 0 10px 0 5px;
          background: #f46f6f;
          color: #ffffff;
          box-shadow: none;
          transform: none;
          line-height: 1.1;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar::before {
          width: 11px;
          height: 11px;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title {
          margin: 0;
          padding: 0;
          box-sizing: border-box;
          font-family: var(--font-primary);
          font-size: clamp(1.25rem, 5.2vw, 1.625rem);
          font-weight: 700;
          line-height: 1.08;
          letter-spacing: 0.08em;
          text-transform: uppercase;
          text-align: center;
          color: #09142e;
          -webkit-text-fill-color: #09142e;
          -webkit-text-stroke: 1.15px #09142e;
          paint-order: stroke fill;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title::before {
          content: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__lead {
          display: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail {
          order: 2;
          display: flex;
          width: 100%;
          position: relative;
          z-index: 2;
          margin: 0;
          padding: 0 14px 12px;
          gap: 10px;
          box-sizing: border-box;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail::before {
          content: none;
          display: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"] {
          order: 3;
          border: none;
          border-radius: 0;
          background: transparent;
          padding: 0 12px 12px;
          margin: 0;
          box-sizing: border-box;
          box-shadow: none;
          outline: none;
        }

        /* Mobile — quantidade: tracejado no .calc-flow-campo ativo (guiado). */
        #card-modelo.card--modelo-qtd .mq-panel--qtd {
          border: none;
          border-top: none;
          border-radius: 0;
          padding: 0;
          background: transparent;
          gap: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .pl-sessao-rail {
          width: 100%;
          margin: 0;
          padding: 12px 14px 12px;
          gap: 10px;
          box-sizing: border-box;
          background: transparent;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-panel__surface {
          padding: 0 12px 12px;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead {
          margin: 0;
          padding: 0;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .calc-flow-campo[data-flow-key="quantidade"] {
          border: none;
          border-radius: 0;
          background: transparent;
          padding: 0;
          margin: 0;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"].campo-ativo {
          margin-top: 0 !important;
          border: none !important;
          box-shadow: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .calc-flow-campo[data-flow-key="quantidade"].campo-ativo {
          margin-top: 2rem !important;
          padding: 0.72rem 0.55rem 0.68rem !important;
          border: 2px dashed #ff3b30 !important;
          border-radius: 16px !important;
          box-shadow: none !important;
          overflow: visible !important;
          position: relative !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"].campo-ativo::before,
        #card-modelo.card--modelo-qtd .mq-panel--qtd .calc-flow-campo[data-flow-key="quantidade"].campo-ativo::before {
          content: none !important;
        }

        #card-modelo.card--modelo-qtd .mq-tip {
          display: none !important;
          visibility: hidden !important;
          height: 0 !important;
          max-height: 0 !important;
          margin: 0 !important;
          padding: 0 !important;
          border: none !important;
          overflow: hidden !important;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__lead {
          display: none;
        }

        #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__title::before {
          content: "2. ";
        }

        #card-modelo.card--modelo-qtd .mq-title-inline {
          display: grid;
          grid-template-columns: minmax(0, 1fr) auto;
          gap: 8px;
          align-items: center;
        }

        #card-modelo.card--modelo-qtd .mq-title-input {
          width: 100%;
          height: 42px;
          padding: 0 12px;
          border: 1px solid #d1d5db;
          border-radius: var(--radius);
          font: inherit;
          color: #111827;
          background: #ffffff;
        }

        #card-modelo.card--modelo-qtd .mq-btn-ok {
          height: 42px;
          min-width: 86px;
          padding: 0 14px;
          border-radius: var(--radius);
          border: 1px solid #bde3ca;
          background: #f3fbf5;
          color: #2f9e58;
          font-size: 13px;
          font-weight: 700;
          line-height: 1;
          cursor: pointer;
          display: inline-flex;
          align-items: center;
          justify-content: center;
        }

        #card-modelo.card--modelo-qtd .mq-btn-ok::before {
          content: "✓";
          font-size: 20px;
          margin-right: 6px;
          line-height: 1;
        }

        #card-modelo.card--modelo-qtd .mq-title-note {
          margin: 10px 0 0;
          color: #4b5563;
          font-size: 13px;
          line-height: 1.35;
        }

        #card-modelo.card--modelo-qtd .field--mq-qtd {
          position: relative;
          padding-right: 96px;
        }

        #card-modelo.card--modelo-qtd .mq-qtd-visible-label {
          display: block;
          width: 100%;
          margin: 0 0 0.75rem;
          padding: 0;
          font-family: var(--font-primary);
          font-size: 1.3125rem;
          font-weight: 600;
          line-height: 1.15;
          letter-spacing: -0.03em;
          text-align: center;
          color: #0f172a;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          box-sizing: border-box;
        }

        #card-modelo.card--modelo-qtd .mq-qtd-stepper {
          display: block;
        }

        #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn {
          display: none;
        }

        #card-modelo.card--modelo-qtd .mq-qtd-stepper__input {
          width: 100%;
          height: 42px;
          border: 1px solid #d1d5db;
          border-radius: var(--radius);
          padding: 0 12px;
          font-size: 24px;
        }

        #card-modelo.card--modelo-qtd .mq-btn-confirm {
          position: absolute;
          right: 0;
          top: 30px;
          height: 42px;
          min-width: 86px;
          padding: 0 14px;
          border-radius: var(--radius);
          border: 1px solid #bde3ca;
          background: #f3fbf5;
          color: #2f9e58;
          font-size: 13px;
          font-weight: 700;
          line-height: 1;
        }

        #card-modelo.card--modelo-qtd .mq-btn-confirm::before {
          content: "✓";
          font-size: 20px;
          margin-right: 6px;
          line-height: 1;
        }

        #card-modelo.card--modelo-qtd .mq-qtd-promo {
          display: none;
        }
      }

      #card-modelo.card--modelo-qtd .mq-panel--titulo {
        display: none;
      }

      #card-modelo.card--modelo-qtd .mq-qtd-visible-label,
      #card-modelo.card--modelo-qtd .mq-title-note {
        display: none;
      }

      /* Mobile-only (forcado por classe no <html>): manter desktop intacto */
      html.is-mobile-ref .calc-page-head__status {
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd > .mq-hero,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd > .pl-sessao-rail {
        display: none !important;
      }

      /* Mobile-only: remover distância Título ↔ Sub em todos os HERO (exceto Capa) */
      html.is-mobile-ref #wizard-step-1 .fa-hero__sub,
      html.is-mobile-ref #wizard-step-1 #calc-bloc-extras .extras-hero__sub,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__sub,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-hero__sub {
        margin-top: 0 !important;
      }

      /* “Tipo de livro” (lista mobile): ver @media (max-width: 1023px), painel .mq-panel--tipo */

      /* Mobile-only: botões de ajuda compactos (mesmo padrão capa-hero__help) */
      html.is-mobile-ref #wizard-step-1 .capa-hero__help {
        flex-shrink: 0 !important;
        min-height: 1.9rem !important;
        padding: 0.2rem 0.45rem !important;
        font-size: 0.68rem !important;
        font-weight: 600 !important;
        gap: 0.3rem !important;
        border-radius: 8px !important;
      }

      html.is-mobile-ref #wizard-step-1 .capa-hero__help-q {
        width: 16px !important;
        height: 16px !important;
        font-size: 0.65rem !important;
        line-height: 1 !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panels {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0 !important;
        border-top: none !important;
        padding: 0 !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel {
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        padding: 0 !important;
        box-shadow: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd {
        display: flex !important;
        flex-direction: column !important;
        border: none !important;
        border-top: none !important;
        border-bottom: none !important;
        border-right: none !important;
        background: transparent !important;
        padding: 0 !important;
        gap: 10px !important;
        box-shadow: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-panel__surface {
        display: contents !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        overflow: visible !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-panel__surface {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        overflow: visible !important;
        padding: 0 12px 12px !important;
        box-sizing: border-box !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd {
        border: none !important;
        border-top: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        padding: 0 !important;
        gap: 0 !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .pl-sessao-rail {
        padding: 12px 14px 12px !important;
        margin: 0 !important;
        background: transparent !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-tip {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        min-height: 0 !important;
        overflow: hidden !important;
        background: transparent !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo {
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        overflow: visible !important;
        gap: 0 !important;
      }

      /* Mobile-only: hero “Escolha seu livro” — textura até a borda externa do card */
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead {
        order: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 1 !important;
        width: 100% !important;
        align-self: stretch !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 0 clamp(14px, 3.5vw, 22px) !important;
        margin: 0 !important;
        text-align: center !important;
        background: transparent !important;
        box-sizing: border-box !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        z-index: 0 !important;
        pointer-events: none !important;
        border-radius: 12px 12px 0 0 !important;
        background:
          linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
          url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title-row {
        display: block !important;
        justify-content: center !important;
        position: static !important;
        z-index: 2 !important;
        padding: 0 14px !important;
        width: 100% !important;
        box-sizing: border-box !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        left: auto !important;
        bottom: auto !important;
        z-index: 20 !important;
        margin: 0 !important;
        width: auto !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 5px 10px 5px 8px !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        gap: 4px !important;
        border: none !important;
        border-radius: 0 10px 0 5px !important;
        background: #f46f6f !important;
        color: #ffffff !important;
        box-shadow: none !important;
        transform: none !important;
        line-height: 1.1 !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar::before {
        width: 11px !important;
        height: 11px !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title {
        font-family: var(--font-primary) !important;
        font-size: clamp(1.25rem, 5.2vw, 1.625rem) !important;
        font-weight: 700 !important;
        line-height: 1.08 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        text-align: center !important;
        width: 100% !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        color: #09142e !important;
        -webkit-text-fill-color: #09142e !important;
        -webkit-text-stroke: 1.15px #09142e !important;
        paint-order: stroke fill !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__lead {
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail {
        order: 2 !important;
        display: flex !important;
        width: 100% !important;
        position: relative !important;
        z-index: 2 !important;
        margin: 0 !important;
        padding: 0 14px 12px !important;
        gap: 10px !important;
        background: transparent !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"] {
        order: 3 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        padding: 0 12px 12px !important;
        margin: 0 !important;
        box-shadow: none !important;
        outline: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards {
        margin: 0 !important;
        border: none !important;
        box-shadow: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title::before {
        content: none !important;
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail::before {
        content: none !important;
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--titulo {
        display: flex !important;
        flex-direction: column;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--titulo .mq-subhead__title::before {
        content: "2. ";
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__title::before {
        content: "3. ";
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__lead {
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-title-inline {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px;
        align-items: center;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-title-input {
        width: 100%;
        height: 42px;
        border: 1px solid #d1d5db;
        border-radius: var(--radius);
        padding: 0 12px;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-ok,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm {
        height: 42px;
        min-width: 86px;
        padding: 0 14px;
        border-radius: var(--radius);
        border: 1px solid #bde3ca;
        background: #f3fbf5;
        color: #2f9e58;
        font-size: 13px;
        font-weight: 700;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-ok::before,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm::before {
        content: "✓";
        font-size: 18px;
        margin-right: 6px;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-title-note {
        display: block !important;
        margin: 10px 0 0;
        font-size: 13px;
        line-height: 1.35;
        color: #4b5563;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-visible-label {
        display: block !important;
        width: 100% !important;
        margin: 0 0 0.75rem !important;
        padding: 0 !important;
        font-family: var(--font-primary) !important;
        font-size: 1.3125rem !important;
        font-weight: 600 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.03em !important;
        text-align: center !important;
        color: #0f172a !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        box-sizing: border-box !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-promo {
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .field--mq-qtd {
        position: relative;
        padding-right: 96px;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-stepper__input {
        width: 100%;
        height: 42px;
        border-radius: var(--radius);
        border: 1px solid #d1d5db;
        padding: 0 12px;
        font-size: 24px;
      }

      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm {
        position: absolute;
        right: 0;
        top: 30px;
      }

      @media (max-width: 599px) {
        #card-modelo.card--modelo-qtd .modelo-pick--cards {
          grid-template-columns: 1fr;
        }
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 15px;
        align-items: stretch;
        padding: 1.1rem 1.25rem 1.2rem;
        border: 1px solid #e6e6e6;
        border-radius: 12px;
        background: var(--pl-bloco-paper-bg);
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip {
        grid-column: 1 / -1;
      }

      #wizard-step-1 .fa-hero {
        display: flex;
        align-items: flex-start;
        gap: 14px;
        margin: 0 0 0.85rem;
        padding: 0;
      }

      /* Passo 1 — ícones de coluna: quadro arredondado (padrão Tamanho). */
      #wizard-step-1 .fa-col-head__ico,
      #wizard-step-1 .capa-col-head__ico,
      #wizard-step-1 .capa-row-head__ico {
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 12px;
        padding: 0;
        overflow: hidden;
        background: transparent;
        border: 1px solid #ddd6fe;
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
      }

      #wizard-step-1 .fa-col-head__ico svg,
      #wizard-step-1 .capa-col-head__ico svg,
      #wizard-step-1 .capa-row-head__ico svg {
        width: 100%;
        height: 100%;
        display: block;
        border-radius: inherit;
      }

      /* Passo 1 — ícones de hero (cards principais): tamanho maior. */
      #wizard-step-1 .fa-hero__mark,
      #wizard-step-1 .capa-hero__mark,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__mark,
      #wizard-step-1 #calc-bloc-extras .extras-hero__mark {
        width: 60px;
        height: 60px;
        border-radius: 16px;
        padding: 0;
        overflow: hidden;
        background: transparent;
        border: 1px solid #ddd6fe;
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
      }

      #wizard-step-1 .fa-hero__mark svg,
      #wizard-step-1 .capa-hero__mark svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__mark svg,
      #wizard-step-1 #calc-bloc-extras .extras-hero__mark svg {
        width: 100%;
        height: 100%;
        display: block;
        border-radius: inherit;
      }

      #wizard-step-1 .fa-hero__mark {
        color: #6d28d9;
      }

      #wizard-step-1 .fa-hero__titles {
        min-width: 0;
        flex: 1 1 auto;
        min-height: 60px;
        display: flex;
        flex-direction: column;
        gap: 0.35rem;
        justify-content: center;
        padding-top: 0;
        position: static;
        top: auto;
      }

      #wizard-step-1 .fa-hero__title-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem;
        margin-top: 0;
        margin-bottom: 0;
        min-height: 0;
      }

      #wizard-step-1 .fa-hero__title {
        margin: 0;
        font-family: var(--font-primary);
        font-size: 24px;
        line-height: 1.15;
        font-weight: 700;
        color: #333333;
        letter-spacing: -0.02em;
      }

      #wizard-step-1 .fa-hero__sub {
        margin: 0;
        font-family: var(--font-primary);
        font-size: 16px;
        line-height: 1.25;
        font-weight: 500;
        color: #7d7d7d;
        text-align: left;
      }

      /* Desktop — heróis Formato / Capa / Miolo / Serviços: título + fundo jornal (ref. mobile, sem alterar mobile) */
      @media (min-width: 1024px) {
        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head {
          position: relative;
          overflow: visible;
          background: transparent;
        }

        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec,
        #wizard-step-1 #calc-bloc-extras.card {
          overflow: visible;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero,
        #wizard-step-1 #calc-bloc-extras > .extras-hero {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: 0;
          position: relative;
          overflow: visible;
          z-index: 1;
          margin: -1.1rem -1.25rem 0.85rem;
          padding: 1.75rem 1.25rem 1.55rem;
          text-align: center;
          background: transparent;
          box-sizing: border-box;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero {
          margin-bottom: 0;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::before,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::before,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::before,
        #wizard-step-1 #calc-bloc-extras > .extras-hero::before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 0;
          pointer-events: none;
          background:
            linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
            url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8;
          -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%);
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::after,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::after,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::after,
        #wizard-step-1 #calc-bloc-extras > .extras-hero::after {
          content: none;
          display: none;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__mark,
        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__sub,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__mark,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__sub,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__mark,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__sub,
        #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__mark,
        #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__sub {
          display: none !important;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__titles,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__titles,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__titles,
        #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__titles {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          width: 100%;
          min-height: 0;
          text-align: center;
          position: relative;
          z-index: 2;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__title,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__title,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__title,
        #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__title {
          width: 100%;
          text-align: center;
          font-size: 2rem;
          line-height: 1.15;
          letter-spacing: -0.02em;
          position: relative;
          z-index: 2;
        }

        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
        #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
          position: relative;
          z-index: 2;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head {
          position: relative !important;
          overflow: visible !important;
          background: transparent !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras.card {
          overflow: visible !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero {
          display: flex !important;
          flex-direction: column !important;
          align-items: center !important;
          justify-content: center !important;
          gap: 0 !important;
          position: relative !important;
          overflow: visible !important;
          z-index: 1 !important;
          margin: -1.1rem -1.25rem 0.85rem !important;
          padding: 1.75rem 1.25rem 1.55rem !important;
          text-align: center !important;
          background: transparent !important;
          box-sizing: border-box !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero {
          margin-bottom: 0 !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::before,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::before,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::before,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero::before {
          content: "" !important;
          display: block !important;
          position: absolute !important;
          top: 0 !important;
          left: 0 !important;
          right: 0 !important;
          bottom: 0 !important;
          z-index: 0 !important;
          pointer-events: none !important;
          background:
            linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
            url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
          -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
          clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::after,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::after,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::after,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero::after {
          content: none !important;
          display: none !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__mark,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__sub,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__mark,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__sub,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__mark,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__sub,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__mark,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__sub {
          display: none !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__titles,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__titles,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__titles,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__titles {
          display: flex !important;
          flex-direction: column !important;
          align-items: center !important;
          justify-content: center !important;
          width: 100% !important;
          min-height: 0 !important;
          text-align: center !important;
          position: relative !important;
          z-index: 2 !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__title,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__title,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__title,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__title {
          width: 100% !important;
          text-align: center !important;
          font-size: 2rem !important;
          line-height: 1.15 !important;
          letter-spacing: -0.02em !important;
          position: relative !important;
          z-index: 2 !important;
        }

        #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
        #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
        #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
          position: relative !important;
          z-index: 2 !important;
        }
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo {
        margin-bottom: 0;
        padding: 12px;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        background: #ffffff;
        min-height: var(--step1-spec-cell-min-h);
        min-width: 0;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.campo-ativo {
        background: #ffffff;
      }

      /* Tamanho, Orientação e Acabamento (piloto): cabeçalho e opções em boxes separados */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab {
        padding: 0;
        border: none;
        background: transparent;
        box-shadow: none;
        gap: 0.3rem;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size.campo-ativo,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient.campo-ativo,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab.campo-ativo {
        background: transparent;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .pl-calc-flow-help,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .pl-calc-flow-help,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .pl-calc-flow-help {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0;
        padding: 0.55rem 0.55rem;
        border-radius: 12px;
        box-sizing: border-box;
        position: relative;
        overflow: visible;
        isolation: isolate;
        background-color: #f5f3ff;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat;
        border: 1px solid #e9d5ff;
        box-shadow: none;
        gap: 0.45rem;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__ico,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__ico,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__ico {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head > div,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head > div,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head > div {
        width: 100%;
        min-width: 0;
        padding: 0;
        text-align: center;
        position: relative;
        z-index: 1;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__title {
        margin: 0;
        width: auto;
        max-width: none;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem);
        font-weight: 700;
        letter-spacing: -0.02em;
        line-height: 1.2;
        text-align: left;
        color: #6d28d9;
        text-shadow: none;
        white-space: nowrap;
        overflow: visible;
        text-overflow: clip;
        flex-shrink: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .tamanho-size-layout,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient-options-layout,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-options-layout {
        padding: 0.75rem;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #ffffff;
        box-sizing: border-box;
        flex: 1 1 auto;
        min-width: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient-options-layout .field,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-options-layout .field {
        margin: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size #tamanho-custom-wrap:not([hidden]) {
        padding: 0.75rem;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #ffffff;
        box-sizing: border-box;
      }

      /* Papel da capa, Laminação e Impressão da capa (piloto): cabeçalho e opções em boxes separados */
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] {
        padding: 0;
        border: none;
        background: transparent;
        box-shadow: none;
        gap: 0.3rem;
        min-height: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"].campo-ativo {
        background: transparent;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .pl-calc-flow-help,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .pl-calc-flow-help,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .pl-calc-flow-help {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0;
        padding: 0.55rem 0.55rem;
        border-radius: 12px;
        box-sizing: border-box;
        position: relative;
        overflow: visible;
        isolation: isolate;
        background-color: #f5f3ff;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat;
        border: 1px solid #e9d5ff;
        box-shadow: none;
        grid-template-columns: unset;
        gap: 0.45rem;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__ico {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head > div {
        width: 100%;
        min-width: 0;
        padding: 0;
        text-align: center;
        position: relative;
        z-index: 1;
        grid-column: unset;
        grid-row: unset;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__tit {
        margin: 0;
        width: auto;
        max-width: none;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem);
        font-weight: 700;
        letter-spacing: -0.02em;
        line-height: 1.2;
        text-align: left;
        color: #6d28d9;
        text-shadow: none;
        white-space: nowrap;
        overflow: visible;
        text-overflow: clip;
        flex-shrink: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout {
        padding: 0.75rem;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #ffffff;
        box-sizing: border-box;
        flex: 1 1 auto;
        min-width: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout .field {
        margin: 0;
      }

      /* Orelha, Guardas e Acabamentos especiais: mesmo piloto roxo/chapisco */
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        padding: 0;
        border: none;
        background: transparent;
        box-shadow: none;
        gap: 0.3rem;
        min-height: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"].campo-ativo {
        background: transparent;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .pl-calc-flow-help,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .pl-calc-flow-help,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .pl-calc-flow-help {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0;
        padding: 0.55rem 0.55rem;
        border-radius: 12px;
        box-sizing: border-box;
        position: relative;
        overflow: visible;
        isolation: isolate;
        background-color: #f5f3ff;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat;
        border: 1px solid #e9d5ff;
        box-shadow: none;
        grid-template-columns: unset;
        gap: 0.45rem;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head > div {
        width: 100%;
        min-width: 0;
        padding: 0;
        text-align: center;
        position: relative;
        z-index: 1;
        grid-column: unset;
        grid-row: unset;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        margin: 0;
        width: auto;
        max-width: none;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem);
        font-weight: 700;
        letter-spacing: -0.02em;
        line-height: 1.2;
        text-align: left;
        color: #6d28d9;
        text-shadow: none;
        white-space: nowrap;
        overflow: visible;
        text-overflow: clip;
        flex-shrink: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        white-space: nowrap;
        width: auto;
        max-width: none;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout {
        width: 100%;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout {
        padding: 0.55rem;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #ffffff;
        box-sizing: border-box;
        flex: 0 0 auto;
        height: auto;
        max-height: none;
        overflow: visible;
        min-width: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout .field {
        margin: 0;
      }

      #wizard-step-1 .fa-col-head {
        display: grid;
        grid-template-columns: 2.5rem minmax(0, 1fr);
        gap: 0.55rem;
        align-items: start;
        margin-bottom: 0.8rem;
      }

      #wizard-step-1 .fa-col-head > div {
        min-width: 0;
      }

      #wizard-step-1 .capa-col-head > div {
        min-width: 0;
      }

      html.is-help-mode #wizard-step-1 #card-formato-acabamento .fa-col-head > div {
        padding-right: 2.2rem;
      }

      html.is-help-mode #wizard-step-1 #card-capa.card--capa-espec .capa-col-head > div {
        padding-right: 2.2rem;
      }

      #wizard-step-1 .fa-col-head__ico {
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 12px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
      }

      #wizard-step-1 .fa-col-head__title {
        margin: 0;
        font-size: 16px;
        font-weight: 600;
        color: #333333;
        line-height: 1.2;
        white-space: normal !important;
        word-break: keep-all;
        overflow-wrap: anywhere;
        hyphens: none;
        overflow: visible !important;
        text-overflow: clip !important;
      }

      #wizard-step-1 .fa-col-head__sub {
        margin: 0.25rem 0 0;
        font-size: 12px;
        line-height: 1.42;
        color: #a6a6a6;
        white-space: normal !important;
        word-break: keep-all;
        overflow-wrap: anywhere;
        hyphens: none;
        overflow: visible !important;
        text-overflow: clip !important;
      }

      #wizard-step-1 .fa-col-head__help {
        width: 24px;
        height: 24px;
        border-radius: 50%;
        border: 1px solid #e0e0e0;
        background: #ffffff;
        color: #7d7d7d;
        font-size: 12px;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento > .calc-flow-campo .calc-flow-msg {
        min-height: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento > .calc-flow-campo .field {
        flex: 1 1 auto;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento > .calc-flow-campo .calc-flow-msg[hidden] {
        display: none !important;
        visibility: visible;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento > .calc-flow-campo .hint {
        display: none;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px;
        width: 100%;
        align-items: stretch;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button {
        flex: none;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        text-align: center;
        min-height: 82px;
        height: auto;
        border-radius: 10px;
        border: 1px solid #e5e5e5;
        background: #ffffff;
        font-size: 21px;
        font-weight: 700;
        color: #3a3a3a;
        letter-spacing: -0.03em;
        line-height: 1.1;
        position: relative;
        padding: 0.65rem 0.45rem 0.5rem;
        gap: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book {
        display: none;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button::after {
        content: "";
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0;
        margin-top: auto;
        width: 16px;
        height: 16px;
        border-radius: 50%;
        border: 2px solid #d1d5db;
        background: #ffffff;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__body {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0.15rem;
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 0 0 0.35rem;
        text-align: center;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__title {
        display: block;
        font-size: 21px;
        font-weight: 700;
        line-height: 1.1;
        color: #3a3a3a;
        letter-spacing: -0.03em;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__hint {
        display: block;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.1;
        color: #a6a6a6;
        letter-spacing: -0.01em;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"] {
        background: #f0f5ff;
        border-color: #2563eb;
        box-shadow: none;
        color: #333333;
        font-weight: 700;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"]::after {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__list {
        gap: 10px;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__opt {
        min-height: 45px;
        border-radius: 8px;
        border: 1px solid #e0e0e0;
        background: #ffffff;
        justify-content: flex-start;
        text-align: left;
        padding: 0.8rem 2.45rem 0.8rem 0.85rem;
        color: #333333;
        position: relative;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__opt:not(.acab-tile) .calc-dd__title {
        font-size: 14px;
        font-weight: 700;
        color: #333333;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__opt:not(.acab-tile) .calc-dd__sub {
        display: block;
        font-size: 12px;
        color: #a6a6a6;
        margin-top: 0.2rem;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__opt::after {
        content: "";
        position: absolute;
        right: 0.75rem;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        border: 2px solid #cbd5e1;
        background: #ffffff;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-flow-campo.fa-col--size .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border-color: #2563eb;
        background: #f0f5ff;
        box-shadow: none;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-flow-campo.fa-col--size .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-flow-campo.fa-col--acab .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border-color: #2563eb;
        background: #f0f5ff;
        color: #333333;
        box-shadow: none;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .calc-flow-campo.fa-col--acab .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

      .tamanho-modo {
        display: flex;
        flex-wrap: wrap;
        gap: 0.75rem 1.25rem;
        margin: 0 0 0.85rem;
      }
      .tamanho-modo__opt {
        display: inline-flex;
        align-items: center;
        gap: 0.4rem;
        font-size: 0.92rem;
        cursor: pointer;
      }
      .tamanho-custom {
        display: grid;
        gap: 0.5rem;
        margin-top: 0.2rem;
      }
      /* Wrappers/ícones do redesign mobile — neutros no desktop (≥1024px) */
      .tamanho-custom__header {
        display: contents;
      }
      .tamanho-custom__header-ico,
      .tamanho-custom__lbl-ico,
      .tamanho-custom__input-ico,
      .tamanho-custom__times,
      .tamanho-custom__btn-ico {
        display: none;
      }
      .tamanho-custom__input-wrap {
        display: contents;
      }
      .tamanho-custom__field label {
        display: block;
        font-size: 0.75rem;
        margin-bottom: 0.2rem;
        color: #6b7280;
      }
      .tamanho-custom__input {
        width: 100%;
        max-width: 9rem;
        padding: 0.35rem 0.45rem;
        border: 1px solid #cfd8e3;
        border-radius: 6px;
        font-size: 0.92rem;
      }
      .tamanho-custom__formato {
        margin: 0;
        font-size: 0.82rem;
        font-weight: 600;
        color: #1a365d;
      }
      .tamanho-custom__heading {
        margin: 0;
        font-size: 12px;
        font-weight: 700;
        color: #333333;
      }
      .tamanho-custom__dims-label {
        display: none;
      }
      .tamanho-custom__dims {
        display: grid;
        gap: 0.45rem;
      }

      /* Brochura (355), Capa dura (330) e Capa grampo (259): tamanhos em grelha 2×2 no desktop */
      @media (min-width: 1024px) {
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-layout,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-grid,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-padrao-wrap,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel {
        width: 100%;
        min-width: 0;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel {
        display: block !important;
        padding: 0;
        margin: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px;
        padding: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-grid__custom-li {
        min-width: 0;
        box-sizing: border-box;
        list-style: none;
        margin: 0;
        display: flex;
      }

      /* Desktop — Tamanhos: cards com foto (padrão visual do mobile, só ≥1024px) */
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile .pl-fa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile .pl-fa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .pl-fa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
        position: relative !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .pl-fa-opt-media--outro {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background-image: none !important;
        background-color: #f5f3ff !important;
        border-color: #ede9fe !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .pl-fa-opt-media--outro svg {
        width: 44px !important;
        height: 44px !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile .pl-fa-measure,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile .pl-fa-measure {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
        padding: 12px 12px 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        color: #333333;
        position: relative;
        gap: 8px !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 10px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__dims {
        display: inline !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__unit {
        display: inline !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.2 !important;
        color: #94a3b8 !important;
        letter-spacing: -0.01em !important;
        margin-left: 0.15em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__sub {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        color: #94a3b8 !important;
        line-height: 1.25 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .tamanho-tile__body {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        padding: 0 0 10px !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .tamanho-tile__dims {
        display: block !important;
        width: 100% !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        text-align: center !important;
        white-space: normal !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile:focus-visible {
        background: #ffffff !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list .calc-dd__sub {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked) {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active .tamanho-tile__body,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked) .tamanho-tile__body {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked)::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo--sr {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        height: 100%;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 0;
        padding: 12px 12px 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        position: relative;
        cursor: pointer;
        box-sizing: border-box;
        text-align: center;
        gap: 8px !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile input[type="radio"] {
        position: absolute;
        opacity: 0;
        width: 1px;
        height: 1px;
        margin: 0;
        padding: 0;
        border: 0;
        clip: rect(0, 0, 0, 0);
        overflow: hidden;
        white-space: nowrap;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom {
        margin-top: 0.55rem;
        padding: 0.85rem 0.9rem 0.9rem;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #ffffff;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        gap: 0.65rem;
        border-top: 1px solid #e5e7eb;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom[hidden] {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__header {
        display: flex;
        align-items: center;
        gap: 0.45rem;
        margin: 0;
        padding: 0;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__header-ico,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__lbl-ico,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input-ico,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__times,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__dims-label {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__heading {
        margin: 0;
        padding: 0;
        font-size: 0.9375rem;
        font-weight: 700;
        line-height: 1.25;
        letter-spacing: -0.01em;
        color: #0f172a;
        text-align: left;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__dims {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0.75rem 1rem;
        margin: 0;
        align-items: start;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__field {
        display: flex;
        flex-direction: column;
        gap: 0.35rem;
        margin: 0;
        min-width: 0;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__field label {
        display: block;
        margin: 0;
        padding: 0;
        font-size: 0.75rem;
        font-weight: 600;
        line-height: 1.2;
        color: #334155;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input-wrap {
        display: block;
        width: 100%;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input {
        max-width: none;
        width: 100%;
        box-sizing: border-box;
        padding: 0.5rem 0.65rem;
        font-size: 0.875rem;
        line-height: 1.25;
        border: 1px solid #e2e8f0;
        border-radius: 8px;
        background: #ffffff;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input::placeholder {
        color: #94a3b8;
        opacity: 1;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #btn-confirm-tamanho-custom {
        width: 100%;
        margin-top: 0.15rem;
        padding: 0.55rem 0.75rem;
        font-size: 0.875rem;
        box-sizing: border-box;
      }

      /* Evita caixa duplicada do wrap + custom */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size #tamanho-custom-wrap:not([hidden]) {
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
      }

      /* Desktop — Orientação: cards com foto (padrão Tamanhos, só ≥1024px) */
      #wizard-step-1 > .grid > #card-formato-acabamento .orient button,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        box-sizing: border-box !important;
        padding: 12px 12px 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        color: #333333;
        position: relative;
        gap: 8px !important;
        overflow: hidden !important;
        font-size: inherit;
        font-weight: inherit;
        letter-spacing: normal;
        line-height: inherit;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        margin: 0 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book::before,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book::before {
        display: none !important;
        content: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book--portrait,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book--portrait {
        background-image: url('/assets/img/mobile/orientacao/vertical.webp') !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book--landscape,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book--landscape {
        background-image: url('/assets/img/mobile/orientacao/horizontal.webp') !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__body,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-tile__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 10px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-tile__title {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__hint,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-tile__hint {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button::after,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        align-self: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"],
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button[aria-pressed="true"] {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
        color: #333333 !important;
        font-weight: inherit !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"] .orient-tile__body,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button[aria-pressed="true"] .orient-tile__body {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"]::after,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button[aria-pressed="true"]::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      /* Desktop — Tipo de acabamento: cards com foto (padrão Tamanhos, só ≥1024px) */
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-panel {
        width: 100%;
        min-width: 0;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-panel {
        display: block !important;
        padding: 0;
        margin: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px;
        padding: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
      }
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list:has(> li:only-child) {
        grid-template-columns: minmax(0, 1fr);
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li {
        min-width: 0;
        box-sizing: border-box;
        list-style: none;
        margin: 0;
        display: flex;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile .pl-fa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.acab-tile .pl-fa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .pl-fa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
        position: relative !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.acab-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
        padding: 12px 12px 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        color: #333333;
        position: relative;
        gap: 8px !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile__body,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .acab-tile__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 10px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-tile .calc-dd__title.acab-tile__title,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile__title,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-tile .calc-dd__sub.acab-tile__hint,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile__hint,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
        letter-spacing: -0.01em !important;
        margin-top: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.acab-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        align-self: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.acab-tile.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.is-active .acab-tile__body,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.acab-tile.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile:focus-visible,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt:focus-visible {
        background: #ffffff !important;
      }

      /* Desktop — Papel / Laminação / Impressão da capa: cards com foto (padrão Tamanhos) */
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-panel {
        width: 100%;
        min-width: 0;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-panel {
        display: block !important;
        padding: 0;
        margin: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px;
        padding: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li {
        min-width: 0;
        box-sizing: border-box;
        list-style: none;
        margin: 0;
        display: flex;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        max-height: 100px !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
        position: relative !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd-swatch,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd-swatch,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd-swatch {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
        padding: 12px 12px 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        color: #333333;
        position: relative;
        gap: 8px !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 10px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__title,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__title,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__sub,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__sub,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
        letter-spacing: -0.01em !important;
        margin-top: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        align-self: center !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
        color: #333333 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt:focus-visible,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt:focus-visible,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt:focus-visible {
        background: #ffffff !important;
      }

      /* Fixed cards (papel / impressão) — mesmo visual com foto */
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]),
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo #papel-capa-fixed-note,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]),
      html.pl-livro-capa-dura #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 12px 12px 14px !important;
        border: 1.5px solid #2563eb !important;
        border-radius: 14px !important;
        background: #f0f5ff !important;
        box-sizing: border-box !important;
        text-align: center !important;
        position: relative !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-opt-media--fixed,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-opt-media--fixed,
      html.pl-livro-capa-dura #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-opt-media--fixed {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        max-height: 100px !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #dbeafe !important;
        background-color: #eff6ff !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__body,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 10px !important;
        text-align: center !important;
        border-bottom: 1px solid #93c5fd !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__tipo,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card__tipo,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__tipo {
        width: 100% !important;
        text-align: center !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__info,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card__info,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__info {
        margin: 0 !important;
        max-width: none !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-fixed-check,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-fixed-check {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: center !important;
        flex: 0 0 auto !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-fixed-check::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-fixed-check::after {
        content: "(selecionado)";
      }

      /* Desktop — Orelha: cards com foto (Com / Sem), sem select */
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-btn {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-panel[hidden],
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root.calc-dd--choice .calc-dd__panel {
        display: block !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        display: block !important;
        order: 0 !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: 72px !important;
        max-height: 72px !important;
        aspect-ratio: auto !important;
        border-radius: 8px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd-swatch {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 8px 8px 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        color: #333333 !important;
        position: relative !important;
        gap: 6px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 6px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.875rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        align-self: center !important;
        flex: 0 0 auto !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 18px !important;
        margin: 4px auto 0 !important;
        padding: 0 0 0 20px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 8px 50%, transparent 0 5.5px, #cbd5e1 6px 7.5px, transparent 8px)
          left center / 16px 16px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
        color: #333333 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 8px 50%, #ffffff 0 2px, #2563eb 2.5px 7px, transparent 7.5px)
          left center / 16px 16px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt:focus-visible {
        background: #ffffff !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active:focus-visible {
        background: #f0f5ff !important;
      }

      /* Desktop — Guardas (capa dura): 3 cards Branco / Preto / Personalizado (padrão Especiais/Orelha) */
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-btn {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-panel[hidden],
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root.calc-dd--choice .calc-dd__panel {
        display: block !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        display: block !important;
        order: 0 !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: 72px !important;
        max-height: 72px !important;
        aspect-ratio: auto !important;
        border-radius: 8px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      /* Fotos: assets/img/mobile/guardas/{branca,preto,personalizada}.webp */
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/branco"] {
        background-image: url('/assets/img/mobile/guardas/branca.webp') !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/preto"] {
        background-image: url('/assets/img/mobile/guardas/preto.webp') !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/personalizado"] {
        background-image: url('/assets/img/mobile/guardas/personalizada.webp') !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd-swatch {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 8px 8px 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        color: #333333 !important;
        position: relative !important;
        gap: 6px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 6px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.875rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        align-self: center !important;
        flex: 0 0 auto !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 18px !important;
        margin: 4px auto 0 !important;
        padding: 0 0 0 20px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 8px 50%, transparent 0 5.5px, #cbd5e1 6px 7.5px, transparent 8px)
          left center / 16px 16px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
        color: #333333 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 8px 50%, #ffffff 0 2px, #2563eb 2.5px 7px, transparent 7.5px)
          left center / 16px 16px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt:focus-visible {
        background: #ffffff !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active:focus-visible {
        background: #f0f5ff !important;
      }

      /* Desktop — Orelha + Acabamentos especiais: encaixe compacto (sem scroll) */
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row {
        align-items: flex-start !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        align-self: flex-start !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout {
        flex: 0 0 auto !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 0.55rem !important;
      }

      /* Desktop — Acabamentos especiais: grelha compacta (sem scroll) */
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-btn {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel[hidden],
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-root.calc-dd--choice .calc-dd__panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-root.is-open #capa-especiais-dd-panel {
        display: block !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__multi-body {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check > li:has(#capa-ext-none) {
        grid-column: 1 / -1 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 6px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 8px 8px 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
        position: relative !important;
        overflow: visible !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--tile:has(input:checked),
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(#capa-ext-verniz:checked),
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(#capa-ext-hotstamp:checked),
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none:has(#capa-ext-none:checked) {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row input {
        position: absolute !important;
        opacity: 0 !important;
        width: 1px !important;
        height: 1px !important;
        margin: -1px !important;
        pointer-events: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row .pl-capa-opt-media--check {
        display: block !important;
        order: 0 !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: 72px !important;
        max-height: 72px !important;
        aspect-ratio: auto !important;
        border-radius: 8px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row > span:not(.pl-capa-opt-media) {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.875rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        padding: 0 0 6px !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: center !important;
        flex: 0 0 auto !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 18px !important;
        margin: 4px auto 0 !important;
        padding: 0 0 0 20px !important;
        border: none !important;
        background:
          radial-gradient(circle at 8px 50%, transparent 0 5.5px, #cbd5e1 6px 7.5px, transparent 8px)
          left center / 16px 16px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked) {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked) > span:not(.pl-capa-opt-media) {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked)::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 8px 50%, #ffffff 0 2px, #2563eb 2.5px 7px, transparent 7.5px)
          left center / 16px 16px no-repeat !important;
        color: #2563eb !important;
      }

      /* “Não quero nenhum” — faixa compacta */
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        padding: 8px 10px !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none .pl-capa-opt-media--none-x {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 40px !important;
        width: 40px !important;
        height: 40px !important;
        max-height: 40px !important;
        aspect-ratio: auto !important;
        border-radius: 8px !important;
        border: 1px solid #ede9fe !important;
        background: #f5f3ff !important;
        background-image: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none .pl-capa-opt-media--none-x svg {
        display: block !important;
        width: 22px !important;
        height: 22px !important;
        max-width: 22px !important;
        max-height: 22px !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none > span:not(.pl-capa-opt-media) {
        width: auto !important;
        flex: 1 1 auto !important;
        text-align: left !important;
        padding: 0 !important;
        border-bottom: 0 !important;
        font-size: 0.875rem !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none::after {
        margin: 0 0 0 auto !important;
        align-self: center !important;
      }

      /* Reforço: “Não quero” selecionado = mesma borda azul dos outros */
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none:has(#capa-ext-none:checked) {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-esp-none-label__desk {
        display: inline !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-esp-none-label__mob {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #btn-confirm-capa-especiais:not([hidden]) {
        width: 100% !important;
        margin-top: 0.25rem !important;
      }

      /*
       * Desktop — zoom no hover das fotos DESLIGADO (tamanho, orientação, etc.).
       */
      #wizard-step-1 {
        --pl-photo-zoom-w: 88px;
        --pl-photo-zoom-h: 66px;
        --pl-photo-zoom-scale: 1;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt,
      #wizard-step-1 > .grid > #card-formato-acabamento .orient button,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--tile {
        overflow: visible !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check > li {
        overflow: visible !important;
        position: relative !important;
        z-index: 1 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .pl-fa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .pl-fa-opt-media,
      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] .pl-capa-opt-media,
      #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--tile .pl-capa-opt-media--check {
        transition:
          transform 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          box-shadow 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          filter 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          width 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          height 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          max-height 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          min-width 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          min-height 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          max-width 1.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        transform-origin: center center !important;
        position: relative !important;
        z-index: 1 !important;
        filter: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__sub,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__sub,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__sub {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--size #tamanho-lbl,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .formato-acab-sr-only,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab #acabamento-label,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-lbl,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] #laminacao-lbl,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-lbl,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] #orelha-lbl,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-lbl,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-lbl {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }
      }

      /* Livro Grampo (259): mobile — lista compacta; desktop usa cards tamanho-tile (igual brochura/capa dura) */
      @media (max-width: 1023px) {
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0.4rem;
        padding: 0.25rem 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
      }
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li,
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-grid__custom-li {
        margin: 0;
        min-width: 0;
      }
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel:not([hidden]) {
        position: static !important;
        max-width: 100%;
        overflow-x: hidden;
        overflow-y: visible;
        box-sizing: border-box;
      }
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel .calc-dd.calc-dd--choice .calc-dd__opt,
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile {
        padding: 0.42rem 0.5rem 0.42rem 0.55rem;
        align-items: center;
        min-width: 0;
      }
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__title,
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .tamanho-tile__dims {
        font-size: 13px;
        line-height: 1.2;
      }
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__sub {
        font-size: 10px;
        margin-top: 0.08rem;
        line-height: 1.15;
      }
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel .calc-dd.calc-dd--choice .calc-dd__opt::after,
      html.pl-livro-grampo #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile::after {
        right: 0.45rem;
        width: 15px;
        height: 15px;
      }
      }

      /* Livro Grampo (259): acabamento — visual igual à orientação (cartão fixo) */
      html.pl-livro-grampo #wizard-step-1 .fa-col--acab .fa-col-head__sub {
        visibility: hidden;
      }

      html.pl-livro-grampo #field-acabamento-wrap.field--acab-grampo-fixed #acabamento-label {
        display: none !important;
      }

      html.pl-livro-grampo #field-orient-wrap.field--orient-grampo-sem #orient-grampo-fixed,
      html.pl-livro-grampo #field-acabamento-wrap.field--acab-grampo-fixed #acabamento-grampo-fixed {
        width: 100%;
        margin-top: 0;
        padding: 0.65rem 0.85rem;
        min-height: 3.25rem;
        box-sizing: border-box;
        justify-content: flex-start;
        border: 1px solid var(--border);
        border-radius: var(--radius);
        background: #fff;
      }

      /* Desktop — capa grampo: foto do livro no card fixo de acabamento */
      @media (min-width: 1024px) {
        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed {
          display: flex !important;
          flex-direction: row !important;
          align-items: center !important;
          justify-content: flex-start !important;
          gap: 0.85rem !important;
          padding: 0.75rem 0.9rem !important;
          text-align: left !important;
          min-height: 0 !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .pl-fa-opt-media--grampo-fixed {
          display: block !important;
          flex: 0 0 auto !important;
          width: 72px !important;
          height: 72px !important;
          border-radius: 10px !important;
          border: 1px solid #eef2f7 !important;
          background-color: #f8fafc !important;
          background-image: url('/assets/img/mobile/capa/grampo.webp?v=20260801') !important;
          background-repeat: no-repeat !important;
          background-position: center !important;
          background-size: contain !important;
          box-sizing: border-box !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .papel-capa-fixed-card__body {
          display: flex !important;
          flex-direction: column !important;
          align-items: flex-start !important;
          justify-content: center !important;
          gap: 0.2rem !important;
          flex: 1 1 auto !important;
          min-width: 0 !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .papel-capa-fixed-card__tipo {
          width: auto !important;
          max-width: 100% !important;
          margin: 0 !important;
          text-align: left !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .papel-capa-fixed-card__info {
          margin: 0 !important;
          max-width: none !important;
          text-align: left !important;
        }
      }

      /* Mobile — capa grampo: foto + “Grampo canoa (cavalete)” (sem subtítulo) */
      @media (max-width: 1023px) {
        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed {
          display: flex !important;
          flex-direction: row !important;
          align-items: center !important;
          justify-content: flex-start !important;
          gap: 12px !important;
          padding: 12px !important;
          text-align: left !important;
          min-height: 0 !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .pl-fa-opt-media--grampo-fixed {
          display: block !important;
          flex: 0 0 auto !important;
          width: 72px !important;
          height: 72px !important;
          border-radius: 10px !important;
          border: 1px solid #eef2f7 !important;
          background-color: #f8fafc !important;
          background-image: url('/assets/img/mobile/capa/grampo.webp?v=20260801') !important;
          background-repeat: no-repeat !important;
          background-position: center !important;
          background-size: contain !important;
          box-sizing: border-box !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .papel-capa-fixed-card__body {
          display: flex !important;
          flex-direction: column !important;
          align-items: flex-start !important;
          justify-content: center !important;
          gap: 0 !important;
          flex: 1 1 auto !important;
          min-width: 0 !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .papel-capa-fixed-card__tipo {
          width: auto !important;
          max-width: 100% !important;
          margin: 0 !important;
          text-align: left !important;
          font-size: 0.9375rem !important;
          font-weight: 800 !important;
          line-height: 1.25 !important;
          color: #0f172a !important;
          letter-spacing: -0.01em !important;
        }

        html.pl-livro-grampo #wizard-step-1 #card-formato-acabamento .calc-flow-campo.fa-col--acab #acabamento-grampo-fixed .papel-capa-fixed-card__info {
          display: none !important;
        }
      }

      html.pl-livro-grampo #field-orient-wrap.field--orient-grampo-sem,
      html.pl-livro-grampo #field-acabamento-wrap.field--acab-grampo-fixed {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
        width: 100%;
        min-height: 0;
      }

      #wizard-step-1 #acabamento-col-foot {
        display: none;
      }

      /* Livro Grampo (259): ocultar opções não aplicáveis (acabamentos especiais da capa permanecem) */
      html.pl-livro-grampo #wizard-step-1 #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      html.pl-livro-grampo #wizard-step-1 #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      html.pl-livro-grampo #field-orelha-wrap {
        display: none !important;
      }
      #wizard-step-1 .fa-col-foot {
        margin: auto 0 0;
        font-size: 12px;
        color: #a6a6a6;
        line-height: 1.4;
        display: inline-flex;
        align-items: center;
        gap: 0.42rem;
      }

      #wizard-step-1 .fa-col-foot__dot,
      #wizard-step-1 .fa-col-foot__info,
      #wizard-step-1 .fa-col-foot__check {
        width: 0.95rem;
        height: 0.95rem;
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 0.7rem;
        font-weight: 600;
      }

      #wizard-step-1 .fa-col-foot__dot {
        background: #a78bfa;
      }

      #wizard-step-1 .fa-col-foot__info {
        color: #2563eb;
        border: 1px solid rgba(37, 99, 235, 0.14);
      }

      #wizard-step-1 .fa-col-foot__check {
        color: #16a34a;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 7px 16px 8px;
        background: #f3f0ff;
        border-top: 1px solid #ede9fe;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip {
        margin: 12px -1.25rem -0.95rem;
        border-radius: 0 0 12px 12px;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip {
        position: relative;
        z-index: 0;
      }

      /* Dropdowns no rodapé da capa: não cortar pelo card nem pela dica */
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        overflow: visible;
        z-index: 1;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"]:has(.calc-dd.is-open),
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"]:has(.calc-dd.is-open),
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"]:has(.calc-dd.is-open) {
        z-index: 30;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd.is-open .calc-dd__panel {
        z-index: 60;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab .mq-tip__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec .mq-tip__ico {
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        border-radius: 999px;
        background: #8b5cf6;
        color: #fff;
        font-size: 10px;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        margin-top: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab .mq-tip__txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec .mq-tip__txt {
        margin: 0;
        font-size: 12px;
        line-height: 1.35;
        color: #5b21b6;
      }

      @media (max-width: 1023px) {
        #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
          grid-template-columns: 1fr;
        }
      }

      #wizard-step-1 > .grid > #calc-bloc-tiragem .calc-flow-msg {
        justify-content: flex-start;
        text-align: left;
        font-size: 0.9rem;
        font-weight: 700;
        padding: 0.5rem 0 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.95rem 1rem;
        align-items: stretch;
        padding: 1.1rem 1.25rem 1.2rem;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: var(--pl-bloco-paper-bg);
      }

      /* Brochura / capa dura: 6 colunas — par do rodapé centralizado com mesma largura do topo */
      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec,
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec {
        grid-template-columns: repeat(6, minmax(0, 1fr));
      }

      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] {
        grid-column: 1 / 3;
      }

      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] {
        grid-column: 3 / 5;
      }

      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"],
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] {
        grid-column: 5 / 7;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > h2 {
        display: none;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip {
        grid-column: 1 / -1;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo {
        grid-column: 1 / -1;
        margin-bottom: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 1rem;
        width: 100%;
        min-width: 0;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo {
        grid-column: auto;
        margin-bottom: 0;
        min-width: 0;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-self: flex-start;
      }

      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        max-width: none;
      }

      html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"][hidden] ~ .calc-flow-campo[data-flow-key="capaEspeciais"] {
        flex: 1 1 0;
        min-width: 0;
        max-width: 100%;
      }

      html.pl-livro-grampo #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row {
        display: block;
      }

      html.pl-livro-grampo #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        width: 100%;
        max-width: 100%;
        min-width: 0;
      }

      @media (max-width: 1023px) {
        html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec,
        html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec {
          grid-template-columns: 1fr;
        }

        html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
        html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
        html.pl-livro-brochura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"],
        html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
        html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
        html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] {
          grid-column: 1 / -1;
        }

        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row {
          flex-direction: column;
          align-items: stretch;
        }

        #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo {
          flex: 1 1 auto !important;
          width: 100% !important;
          max-width: 100% !important;
          min-width: 0 !important;
        }
      }

      #wizard-step-1 .capa-hero {
        display: flex;
        align-items: flex-start;
        gap: 14px;
        margin: 0 0 0.85rem;
        padding: 0;
      }

      #wizard-step-1 .capa-hero__titles {
        flex: 1 1 auto;
        min-width: 0;
        min-height: 60px;
        display: flex;
        flex-direction: column;
        gap: 0.35rem;
        justify-content: center;
        padding-top: 0;
        position: static;
        top: auto;
      }

      #wizard-step-1 .capa-hero__title {
        margin: 0;
        font-family: var(--font-primary);
        font-size: 24px;
        line-height: 1.15;
        font-weight: 700;
        color: #333333;
        letter-spacing: -0.02em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      #wizard-step-1 .capa-hero__sub {
        margin: 0;
        font-family: var(--font-primary);
        font-size: 16px;
        line-height: 1.25;
        font-weight: 500;
        color: #7d7d7d;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail {
        padding-left: 0;
        padding-right: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] {
        grid-column: auto;
        min-width: 0;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"].campo-ativo {
        background: transparent;
      }

      @media (min-width: 1024px) {
      #wizard-step-1 .capa-col-head {
        display: grid;
        grid-template-columns: 2.5rem minmax(0, 1fr) 2rem;
        gap: 0.55rem;
        align-items: start;
        margin-bottom: 0.6rem;
      }

      #wizard-step-1 .capa-col-head__ico {
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 12px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
      }

      #wizard-step-1 .capa-col-head__tit {
        margin: 0;
        font-size: 16px;
        line-height: 1.2;
        font-weight: 600;
        color: #0f172a;
      }

      #wizard-step-1 .capa-col-head__help {
        width: 2rem;
        height: 2rem;
        border-radius: var(--radius);
        border: 1px solid #e2e8f0;
        background: #fff;
        color: var(--muted);
        font-size: 0.95rem;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
      }
      }

      /* Desktop — título + “veja o video” lado a lado (sem sobrepor) */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.45rem !important;
        position: relative !important;
        overflow: visible !important;
        padding: 0.55rem 0.55rem !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head > div,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head > div,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .card-miolo__step-label {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: min-content !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: left !important;
        position: relative !important;
        z-index: 1 !important;
        overflow: visible !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__title,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        width: auto !important;
        max-width: none !important;
        text-align: left !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        flex-shrink: 0 !important;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem) !important;
        color: #6d28d9 !important;
        opacity: 1 !important;
      }

      /* Desktop: restaurar texto “veja o video” ao lado do ícone (não esconder) */
      @media (min-width: 1024px) {
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-txt {
        display: inline !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        min-width: 0 !important;
        max-width: none !important;
        color: #6d28d9 !important;
        font-size: inherit !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        opacity: 1 !important;
        visibility: visible !important;
      }
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja {
        display: inline-flex !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        flex-wrap: nowrap !important;
        align-self: center !important;
        gap: 0.3rem !important;
        z-index: 3 !important;
        margin: 0 !important;
        padding: 0.2rem 0.4rem 0.2rem 0.2rem !important;
        border: none !important;
        border-radius: 6px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08) !important;
        color: #6d28d9 !important;
        font: inherit !important;
        font-size: 0.5625rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.01em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 0 !important;
        justify-content: flex-start !important;
        opacity: 1 !important;
        filter: none !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        -webkit-tap-highlight-color: transparent !important;
      }

      /* Títulos Formato/Capa: bloqueado esmaece (foto 2); ativo/ok fica cheio */

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-play {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 18px !important;
        height: 14px !important;
        border-radius: 3px !important;
        background: #ff0000 !important;
        flex-shrink: 0 !important;
        animation: pl-capa-veja-pulse 1.6s ease-in-out infinite !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-play svg {
        display: block !important;
        width: 70% !important;
        height: 70% !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-txt {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        min-width: 0 !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja:active {
        transform: scale(0.97) !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja:focus-visible {
        outline: 2px solid #7c3aed !important;
        outline-offset: 2px !important;
      }

      /* Título curto dos passos do miolo no desktop */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-step-heading__full {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-step-heading__short {
        display: inline !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout .field {
        flex: 1 1 auto;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .calc-flow-msg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .calc-flow-msg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-flow-msg {
        min-height: 0;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .calc-flow-msg[hidden],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .calc-flow-msg[hidden],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-flow-msg[hidden] {
        display: none !important;
        visibility: visible;
      }

      #wizard-step-1 #card-capa.card--capa-espec > .calc-flow-campo:not([data-flow-key="papelCapa"]):not([data-flow-key="laminacao"]):not([data-flow-key="impressaoCapa"]) .calc-dd.calc-dd--choice .calc-dd__list {
        gap: 0.65rem;
      }

      #wizard-step-1 #card-capa.card--capa-espec > .calc-flow-campo:not([data-flow-key="papelCapa"]):not([data-flow-key="laminacao"]):not([data-flow-key="impressaoCapa"]) .calc-dd.calc-dd--choice .calc-dd__opt {
        min-height: 4.4rem;
        border-radius: 12px;
        border: 1px solid #e0e0e0;
        background: #ffffff;
        text-align: left;
        justify-content: flex-start;
        padding: 0.7rem 2.15rem 0.7rem 0.75rem;
        position: relative;
        box-shadow: none !important;
        outline: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec > .calc-flow-campo:not([data-flow-key="papelCapa"]):not([data-flow-key="laminacao"]):not([data-flow-key="impressaoCapa"]) .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__title {
        font-size: 14px;
        line-height: 1.3;
        font-weight: 700;
      }

      #wizard-step-1 #card-capa.card--capa-espec > .calc-flow-campo:not([data-flow-key="papelCapa"]):not([data-flow-key="laminacao"]):not([data-flow-key="impressaoCapa"]) .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__sub {
        display: block;
        font-size: 12px;
        line-height: 1.42;
      }

      #wizard-step-1 #card-capa.card--capa-espec #field-impressao-capa-wrap .papel-capa-fixed-card {
        min-height: 4.4rem;
        align-items: flex-start;
        justify-content: center;
        text-align: left;
      }

      #wizard-step-1 #card-capa.card--capa-espec #field-impressao-capa-wrap .papel-capa-fixed-card__tipo {
        font-size: 14px;
        line-height: 1.3;
        white-space: normal;
      }

      #wizard-step-1 #card-capa.card--capa-espec #field-impressao-capa-wrap .papel-capa-fixed-card__info {
        max-width: none;
        width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
      }

      #wizard-step-1 #card-capa.card--capa-espec #field-papel-capa-wrap #papel-capa-dd-root[hidden],
      #wizard-step-1 #card-capa.card--capa-espec #field-impressao-capa-wrap #impressao-capa-dd-root[hidden] {
        display: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec #field-papel-capa-wrap #papel-capa-fixed-note[hidden],
      #wizard-step-1 #card-capa.card--capa-espec #field-impressao-capa-wrap #impressao-capa-fixed-note[hidden] {
        display: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec > .calc-flow-campo:not([data-flow-key="papelCapa"]):not([data-flow-key="laminacao"]):not([data-flow-key="impressaoCapa"]) .calc-dd.calc-dd--choice .calc-dd__opt::after {
        content: "";
        position: absolute;
        right: 0.65rem;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        border: 2px solid #cbd5e1;
        background: #fff;
        box-sizing: border-box;
      }

      /* Capa dura (330): Guardas em cards — estilos em bloco desktop Orelha/Guardas */
      #wizard-step-1 #field-guardas-wrap.field--has-native .calc-dd.calc-dd--choice .calc-dd__list {
        gap: 8px;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff;
        color: #333333;
        box-shadow: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff;
        color: #333333;
        box-shadow: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff;
        color: #333333;
        box-shadow: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after {
        border-color: #0088cc;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%);
      }

    /* Mobile/tablet (≤1023px): sem alterar desktop. Overflow, coluna única, sem painel “Título do livro”. */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #orc-form.layout-shell,
      .layout-main,
      .layout-main > .wizard-step {
        max-width: 100%;
        min-width: 0;
        overflow-x: clip;
      }

      /* Remove “Título do livro” no telefone/tablet (sobrepõe html.is-mobile-ref … display:flex) */
      #mq-mobile-title-panel,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--titulo,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--titulo {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: 0 !important;
        clip: rect(0, 0, 0, 0) !important;
        clip-path: inset(50%) !important;
        position: absolute !important;
        width: 1px !important;
        opacity: 0 !important;
        pointer-events: none !important;
      }

      /* Renumerar passos no modelo sem o painel de título */
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-subhead__title::before {
        content: "2. " !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
        grid-template-columns: 1fr !important;
        padding: 12px 14px !important;
        gap: 12px !important;
        max-width: 100%;
        box-sizing: border-box;
        background: var(--pl-bloco-paper-bg) !important;
      }

      /* Mobile — Formato e acabamento: textura full-bleed + borda rasgada acima do “3 de 6” */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head {
        position: relative !important;
        overflow: visible !important;
        margin: -12px -14px 0 !important;
        padding: 12px 14px 0 !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail {
        position: relative !important;
        z-index: 2 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        background: transparent !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail::before {
        content: none !important;
        display: none !important;
      }

      /* Mobile — Formato e acabamento: hero limpo (igual “Escolha seu livro”) */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 1 !important;
        margin: -12px -14px 0 !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 14px clamp(14px, 3.5vw, 22px) !important;
        text-align: center !important;
        background: transparent !important;
      }

      /* Textura full-bleed com borda inferior rasgada/ondulada */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: -14px !important;
        right: -14px !important;
        bottom: 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background:
          linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
          url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::after {
        content: none !important;
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__mark,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__sub,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .capa-hero__help {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__titles {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        top: auto !important;
        position: relative !important;
        z-index: 2 !important;
        text-align: center !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__title {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        position: relative !important;
        z-index: 2 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        font-family: var(--font-primary) !important;
        font-size: clamp(1.25rem, 5.2vw, 1.625rem) !important;
        font-weight: 700 !important;
        line-height: 1.08 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        text-align: center !important;
        color: #09142e !important;
        -webkit-text-fill-color: #09142e !important;
        -webkit-text-stroke: 1.15px #09142e !important;
        paint-order: stroke fill !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      /* Mobile — Capa / Miolo / Serviços adicionais: mesmo hero jornal que Formato e acabamento */
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head {
        position: relative !important;
        overflow: visible !important;
        margin: -12px -14px 0 !important;
        padding: 12px 14px 0 !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
      #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
        position: relative !important;
        z-index: 2 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        background: transparent !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail::before,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail::before,
      #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail::before {
        content: none !important;
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec {
        padding: 12px 14px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #calc-bloc-extras.card {
        padding: 12px 14px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
        background: var(--pl-bloco-paper-bg) !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero,
      #wizard-step-1 #calc-bloc-extras > .extras-hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 1 !important;
        margin: -12px -14px 0 !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 14px clamp(14px, 3.5vw, 22px) !important;
        text-align: center !important;
        flex-wrap: nowrap !important;
        background: transparent !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::before,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::before,
      #wizard-step-1 #calc-bloc-extras > .extras-hero::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: -14px !important;
        right: -14px !important;
        bottom: 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background:
          linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
          url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::after,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::after,
      #wizard-step-1 #calc-bloc-extras > .extras-hero::after {
        content: none !important;
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__mark,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__sub,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__mark,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__sub,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .capa-hero__help,
      #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__mark,
      #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__sub {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__titles,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__titles,
      #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__titles {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        top: auto !important;
        position: relative !important;
        z-index: 2 !important;
        text-align: center !important;
        gap: 0 !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__title,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__title,
      #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__title {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        position: relative !important;
        z-index: 2 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        font-family: var(--font-primary) !important;
        font-size: clamp(1.25rem, 5.2vw, 1.625rem) !important;
        font-weight: 700 !important;
        line-height: 1.08 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        text-align: center !important;
        color: #09142e !important;
        -webkit-text-fill-color: #09142e !important;
        -webkit-text-stroke: 1.15px #09142e !important;
        paint-order: stroke fill !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip {
        margin: 8px -14px -12px;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        min-height: 0 !important;
      }

      /* Mobile: “Outro tamanho” (Largura/Altura) só após escolher Outro */
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-custom-wrap {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"]:has(#tamanho-modo-custom:checked) #tamanho-custom-wrap {
        display: grid !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        gap: 0.65rem !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__limit-msg:not([hidden]) {
        margin: 0.15rem 0 0;
        color: #b91c1c;
        font-size: 0.78rem;
        font-weight: 600;
        line-height: 1.35;
      }

      /* Mobile — Outro tamanho: header + Largura × Altura + CTA */
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__header {
        display: flex !important;
        align-items: center !important;
        gap: 0.4rem !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__header-ico {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        width: 1.35rem !important;
        height: 1.35rem !important;
        color: #7c3aed !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__header-ico svg {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__heading {
        margin: 0 !important;
        font-size: 0.9rem !important;
        font-weight: 700 !important;
        color: #3b3354 !important;
        line-height: 1.25 !important;
        min-width: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__dims {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        column-gap: 0.35rem !important;
        row-gap: 0 !important;
        align-items: end !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__field {
        min-width: 0 !important;
        max-width: 100% !important;
        margin-bottom: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__field:first-child {
        grid-column: 1;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__times {
        display: inline-flex !important;
        grid-column: 2;
        align-self: end !important;
        align-items: center !important;
        justify-content: center !important;
        padding-bottom: 0.55rem !important;
        font-size: 1.05rem !important;
        font-weight: 700 !important;
        color: #7c3aed !important;
        line-height: 1 !important;
        user-select: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__field:last-child {
        grid-column: 3;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__field label {
        display: flex !important;
        align-items: center !important;
        gap: 0.28rem !important;
        margin-bottom: 0.28rem !important;
        font-size: 0.72rem !important;
        font-weight: 600 !important;
        color: #4b4463 !important;
        line-height: 1.2 !important;
        min-width: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__lbl-ico {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        color: #7c3aed !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__lbl-ico svg {
        display: block !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input-wrap {
        display: flex !important;
        align-items: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        border: 1px solid #d8d6e5 !important;
        border-radius: 8px !important;
        background: #ffffff !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input-ico {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        width: 1.85rem !important;
        background: #f3eefe !important;
        color: #7c3aed !important;
        border-right: 1px solid #e4dff5 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input-ico svg {
        display: block !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input {
        max-width: none !important;
        width: 100% !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 0.45rem 0.5rem !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        font-size: 0.88rem !important;
        color: #333333 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input::placeholder {
        color: #9ca3af !important;
        opacity: 1 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input:focus {
        outline: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__input-wrap:focus-within {
        border-color: #7c3aed !important;
        box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.12) !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #btn-confirm-tamanho-custom {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.4rem !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        margin-top: 0.15rem !important;
        padding: 0.7rem 0.85rem !important;
        border: none !important;
        border-radius: 10px !important;
        background: #7c3aed !important;
        color: #ffffff !important;
        font-size: 0.9rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        box-shadow: 0 2px 10px rgba(124, 58, 237, 0.28) !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #btn-confirm-tamanho-custom[hidden] {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #btn-confirm-tamanho-custom:hover,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #btn-confirm-tamanho-custom:active {
        background: #6d28d9 !important;
        color: #ffffff !important;
        border-color: transparent !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__btn-ico {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        color: inherit !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-custom__btn-ico svg {
        display: block !important;
      }

      /* Mobile: radiogroup “Tamanho padrão” duplicado — manter só na grelha */
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-modo-wrap.tamanho-modo--sr {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        clip-path: inset(50%) !important;
        white-space: nowrap !important;
        border: 0 !important;
      }

      /* Mobile: ocultar labels redundantes (cabeçalho da coluna já identifica o campo) */
      #wizard-step-1 .calc-flow-campo.fa-col--size #tamanho-lbl,
      #wizard-step-1 .calc-flow-campo.fa-col--orient .formato-acab-sr-only,
      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-label,
      #wizard-step-1 #card-capa .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-lbl,
      #wizard-step-1 #card-capa .calc-flow-campo[data-flow-key="laminacao"] #laminacao-lbl,
      #wizard-step-1 #card-capa .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-lbl,
      #wizard-step-1 #card-capa .capa-rodape-row .calc-flow-campo[data-flow-key="orelha"] #orelha-lbl,
      #wizard-step-1 #card-capa .capa-rodape-row .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-lbl,
      #wizard-step-1 #card-capa .capa-rodape-row .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-lbl {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        clip-path: inset(50%) !important;
        white-space: nowrap !important;
        border: 0 !important;
      }

      /* Mobile — piloto roxo/chapisco: mesmo padrão Tamanho/Orientação em todos os títulos passo 1 */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        gap: 0.3rem !important;
        display: flex !important;
        flex-direction: column !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
      }

      /* Mobile — respeitar [hidden] (piloto roxo usa display:flex !important) */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[hidden],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[hidden],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[hidden],
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .calc-flow-campo[hidden],
      #wizard-step-1 #calc-bloc-extras > .calc-flow-campo[hidden],
      #wizard-step-1 #card-modelo.card--modelo-qtd .calc-flow-campo[hidden] {
        display: none !important;
      }

      /* Apostila / Agenda / Catálogo — mobile: sem orelha nem acabamentos especiais
         (o piloto roxo usa display:flex !important e vence o [hidden] do JS). */
      html.pl-tipo-novo #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      html.pl-tipo-novo #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      html.pl-tipo-novo #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-tipo-novo #field-orelha-wrap,
      html.pl-tipo-novo #field-guardas-wrap,
      html.pl-tipo-novo #field-capa-especiais {
        display: none !important;
      }

      /* Capa dura: sem Orelha */
      html.pl-livro-capa-dura #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      html.pl-livro-capa-dura #field-orelha-wrap {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size.campo-ativo,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient.campo-ativo,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab.campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"].campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"].campo-ativo {
        background: transparent !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding: 0.55rem 0.55rem !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        position: relative !important;
        overflow: visible !important;
        isolation: isolate !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
        grid-template-columns: unset !important;
        gap: 0.45rem !important;
        width: 100% !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__ico,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__ico,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo .capa-col-head__help,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo .capa-col-head__help {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head > div,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head > div,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head > div {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 0 !important;
        text-align: left !important;
        position: relative !important;
        z-index: 1 !important;
        grid-column: unset !important;
        grid-row: unset !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__title,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__title,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        margin: 0 !important;
        width: auto !important;
        max-width: 100% !important;
        font-size: 1.125rem !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.2 !important;
        text-align: left !important;
        color: #6d28d9 !important;
        opacity: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      /* Mobile — “veja o video” ao lado do título (sem absolute / sem sobrepor)
         Alvo ≥44px + touch-action:manipulation — senão iOS exige 2 toques. */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja {
        display: inline-flex !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        flex-wrap: nowrap !important;
        align-self: center !important;
        gap: 0.3rem !important;
        z-index: 5 !important;
        margin: 0 !important;
        padding: 0.45rem 0.6rem !important;
        min-height: 44px !important;
        min-width: 44px !important;
        box-sizing: border-box !important;
        border: none !important;
        border-radius: 6px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08) !important;
        color: #6d28d9 !important;
        font: inherit !important;
        font-size: clamp(0.5rem, 2.4vw, 0.625rem) !important;
        font-weight: 700 !important;
        letter-spacing: 0.01em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        max-width: none !important;
        opacity: 1 !important;
        filter: none !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-play {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: clamp(15px, 4.2vw, 18px) !important;
        height: clamp(12px, 3.4vw, 14px) !important;
        border-radius: 3px !important;
        background: #ff0000 !important;
        flex-shrink: 0 !important;
        animation: pl-capa-veja-pulse 1.6s ease-in-out infinite !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-play svg {
        display: block !important;
        width: 70% !important;
        height: 70% !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-txt {
        display: inline !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        min-width: 0 !important;
        max-width: none !important;
        color: #6d28d9 !important;
        font-size: inherit !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        opacity: 1 !important;
        visibility: visible !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja:active {
        transform: translateY(-50%) scale(0.97) !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja:focus-visible {
        outline: 2px solid #a78bfa !important;
        outline-offset: 2px !important;
      }

      @keyframes pl-capa-veja-pulse {
        0%, 100% { transform: scale(1); opacity: 1; }
        50% { transform: scale(1.08); opacity: 0.88; }
      }

      /*
        Mobile — Acabamentos especiais / Impressão da capa / Tipo de acabamento:
        paddings laterais iguais + título/botão maiores (clamp) aproveitando o contorno.
      */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: clamp(0.3rem, 1.6vw, 0.55rem) !important;
        padding-top: clamp(0.5rem, 2vw, 0.7rem) !important;
        padding-bottom: clamp(0.5rem, 2vw, 0.7rem) !important;
        padding-left: clamp(0.5rem, 2.2vw, 0.7rem) !important;
        padding-right: clamp(0.5rem, 2.2vw, 0.7rem) !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head > div,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head > div {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: 0 !important;
        text-align: left !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__sub,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__sub {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__title,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__tit,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__tit,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        font-size: clamp(1rem, 4.8vw, 1.375rem) !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        text-align: left !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja {
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        flex: 0 0 auto !important;
        max-width: none !important;
        align-self: center !important;
        gap: 0.3rem !important;
        padding: 0.45rem 0.6rem !important;
        min-height: 44px !important;
        min-width: 44px !important;
        box-sizing: border-box !important;
        touch-action: manipulation !important;
        border-radius: 6px !important;
        font-size: clamp(0.5rem, 2.4vw, 0.625rem) !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-play,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-play,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-play,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja-play {
        width: clamp(15px, 4.2vw, 18px) !important;
        height: clamp(12px, 3.4vw, 14px) !important;
        border-radius: 3px !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja:active,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja:active,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja:active,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__veja:active {
        transform: scale(0.97) !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .tamanho-size-layout,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient-options-layout,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size #tamanho-custom-wrap:not([hidden]) {
        padding: 0.75rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: 100% !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient-options-layout .field,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-options-layout .field,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout .field {
        margin: 0 !important;
      }

      /* Mobile — Tamanhos: grelha 2×2 e tiles iguais à Orientação (inclui “Outro”) */
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-root.calc-dd--choice .calc-dd__btn {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel[hidden] {
        display: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-panel:not([hidden]) {
        display: block !important;
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        z-index: auto !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-layout,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-grid,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-padrao-wrap,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-root {
        position: relative !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-size-grid__custom-li {
        position: relative !important;
        min-width: 0 !important;
        width: 100% !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
        align-self: stretch !important;
        grid-column: auto !important;
        grid-row: auto !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 82px !important;
        height: 100% !important;
        box-sizing: border-box !important;
        padding: 0.65rem 0.45rem 0.5rem !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        color: #3a3a3a !important;
        position: relative !important;
        gap: 0 !important;
        margin: 0 !important;
        cursor: pointer !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__body {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 0.35rem !important;
        text-align: center !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__dims {
        display: inline !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        color: #3a3a3a !important;
        letter-spacing: -0.03em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__unit {
        display: inline !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        color: #b8b8b8 !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .tamanho-tile__body {
        flex: 1 1 auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        padding-bottom: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile .tamanho-tile__dims {
        display: block !important;
        width: 100% !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        color: #3a3a3a !important;
        letter-spacing: -0.03em !important;
        text-align: center !important;
        white-space: normal !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile::after {
        content: "" !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        margin-top: auto !important;
        width: 16px !important;
        height: 16px !important;
        border-radius: 50% !important;
        border: 2px solid #d1d5db !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked) {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked)::after {
        border-color: #0088cc !important;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%) !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile input[type="radio"] {
        position: absolute !important;
        opacity: 0 !important;
        width: 1px !important;
        height: 1px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        clip: rect(0, 0, 0, 0) !important;
        overflow: hidden !important;
        white-space: nowrap !important;
      }

      /* Mobile — Acabamento: grelha 2×2 e tiles iguais à Orientação */
      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-panel {
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }
      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list:has(> li:only-child) {
        grid-template-columns: minmax(0, 1fr) !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 82px !important;
        height: 100% !important;
        box-sizing: border-box !important;
        padding: 0.65rem 0.45rem 0.5rem !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        color: #3a3a3a !important;
        position: relative !important;
        gap: 0 !important;
        margin: 0 !important;
        cursor: pointer !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.15rem !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 0.35rem !important;
        text-align: center !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        color: #3a3a3a !important;
        letter-spacing: -0.03em !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: block !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        color: #a6a6a6 !important;
        margin-top: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt::after {
        content: "" !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        margin-top: auto !important;
        width: 16px !important;
        height: 16px !important;
        border-radius: 50% !important;
        border: 2px solid #d1d5db !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt.is-active::after {
        border-color: #0088cc !important;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%) !important;
      }

      /*
       * MOBILE ONLY (≤1023px) — Interior visual Formato e Acabamento
       * (Tamanhos / Orientação / Tipo de acabamento). Sem alterar desktop.
       */
      #wizard-step-1 #card-formato-acabamento .pl-fa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: 88px !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
        position: relative !important;
      }

      #wizard-step-1 #card-formato-acabamento .pl-fa-opt-media--outro {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background-image: none !important;
        background-color: #f5f3ff !important;
        border-color: #ede9fe !important;
      }

      #wizard-step-1 #card-formato-acabamento .pl-fa-opt-media--outro svg {
        width: 40px !important;
        height: 40px !important;
      }

      /* Medidas sobre a foto (ex.: “21 cm” / “14 cm”) — removidas; dims ficam só no rodapé do card */
      #wizard-step-1 #card-formato-acabamento .pl-fa-measure {
        display: none !important;
      }

      /* Tamanhos — cards visuais */
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile {
        padding: 10px 10px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        gap: 8px !important;
        min-height: 0 !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__body {
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        padding: 0 0 8px !important;
        border-bottom: 1px solid #cbd5e1 !important;
        width: 100% !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__dims {
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__unit {
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        color: #94a3b8 !important;
        margin-left: 0.15em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile__sub {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        color: #94a3b8 !important;
        line-height: 1.25 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked) {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active .tamanho-tile__body,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked) .tamanho-tile__body {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt.tamanho-tile.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-modo__opt--custom.tamanho-tile:has(input:checked)::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      /* Orientação — cards visuais com foto */
      #wizard-step-1 > .grid > #card-formato-acabamento .orient button {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        padding: 10px 10px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        min-height: 0 !important;
        height: auto !important;
        box-sizing: border-box !important;
        position: relative !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book {
        display: block !important;
        width: 100% !important;
        height: 88px !important;
        margin: 0 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book::before {
        display: none !important;
        content: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book--portrait {
        background-image: url('/assets/img/mobile/orientacao/vertical.webp') !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-book--landscape {
        background-image: url('/assets/img/mobile/orientacao/horizontal.webp') !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__body {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 2px !important;
        padding: 0 0 8px !important;
        margin: 0 !important;
        width: 100% !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__title {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button .orient-tile__hint {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        color: #94a3b8 !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"] {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"] .orient-tile__body {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button[aria-pressed="true"]::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      /* Acabamento — Colado / Wire-O em 2 cols; Espiral full-width horizontal */
      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt {
        padding: 10px 10px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        gap: 8px !important;
        min-height: 0 !important;
        overflow: hidden !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        padding: 0 0 8px !important;
        border-bottom: 1px solid #cbd5e1 !important;
        gap: 2px !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__title {
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__sub {
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        color: #94a3b8 !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) {
        grid-column: 1 / -1 !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 12px !important;
        text-align: left !important;
        padding: 10px 12px !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt .pl-fa-opt-media {
        width: 72px !important;
        height: 72px !important;
        flex: 0 0 72px !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt .calc-dd__opt-text {
        flex: 1 1 auto !important;
        align-items: flex-start !important;
        text-align: left !important;
        border-bottom: none !important;
        padding: 0 !important;
        min-width: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt .calc-dd__title,
      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt .calc-dd__sub {
        text-align: left !important;
        width: auto !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt::after {
        margin: 0 0 0 auto !important;
        align-self: center !important;
      }

      #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list > li:nth-child(3) .calc-dd__opt.is-active::after {
        margin: 0 0 0 auto !important;
      }

      /* Mobile — Papel, Laminação e Impressão da capa: grelha 2×2 e tiles iguais à Orientação */
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-root,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-panel {
        width: 100% !important;
        min-width: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-panel,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-panel {
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 82px !important;
        height: 100% !important;
        box-sizing: border-box !important;
        padding: 0.65rem 0.45rem 0.5rem !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        color: #3a3a3a !important;
        position: relative !important;
        gap: 0 !important;
        margin: 0 !important;
        cursor: pointer !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.15rem !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 0.35rem !important;
        text-align: center !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__title,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__title,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        color: #3a3a3a !important;
        letter-spacing: -0.03em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__sub,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__sub,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: block !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        color: #a6a6a6 !important;
        margin-top: 0 !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt::after {
        content: "" !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        margin-top: auto !important;
        width: 16px !important;
        height: 16px !important;
        border-radius: 50% !important;
        border: 2px solid #d1d5db !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active::after,
      #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active::after {
        border-color: #0088cc !important;
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%) !important;
      }

      /* Mobile — Capa dura: Impressão fixa (4x0 / Somente externa) = mesmo tamanho que Brilho */
      html.pl-livro-capa-dura #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card {
        display: flex !important;
        min-height: 82px !important;
        margin-top: 0 !important;
        border-radius: 10px !important;
        border: 1px solid #e5e5e5 !important;
        background: #ffffff !important;
        text-align: center !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: column !important;
        gap: 0.15rem !important;
        padding: 0.65rem 0.45rem 0.5rem !important;
        box-sizing: border-box !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__tipo {
        width: 100% !important;
        text-align: center !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        color: #3a3a3a !important;
        letter-spacing: -0.03em !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__info {
        margin: 0 !important;
        max-width: none !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        color: #a6a6a6 !important;
        letter-spacing: -0.01em !important;
      }

      /* Mobile — Papel da capa (card fixo): mesmo tamanho/centralização que Brilho — 3 tipos de livro */
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]) .papel-capa-fixed-card,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card {
        display: flex !important;
        min-height: 82px !important;
        margin-top: 0 !important;
        border-radius: 10px !important;
        border: 1px solid #e5e5e5 !important;
        background: #ffffff !important;
        text-align: center !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: column !important;
        gap: 0.15rem !important;
        padding: 0.65rem 0.45rem 0.5rem !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__tipo,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card__tipo {
        width: 100% !important;
        text-align: center !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        color: #3a3a3a !important;
        letter-spacing: -0.03em !important;
      }

      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__info,
      #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card__info {
        margin: 0 !important;
        max-width: none !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        color: #a6a6a6 !important;
        letter-spacing: -0.01em !important;
      }

      /* Mobile — Orelha (brochura): cards Com/Sem, mesmo estilo dos Acabamentos especiais */
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-btn {
        display: none !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root,
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-panel,
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-panel[hidden],
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root.calc-dd--choice .calc-dd__panel,
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root.calc-dd--choice:not(.is-open) .calc-dd__panel,
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root.is-open #orelha-dd-panel {
        display: block !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 10px 10px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        text-align: left !important;
        position: relative !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        width: 100% !important;
        height: 88px !important;
        max-height: none !important;
        flex: 0 0 auto !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="orelha/com"] {
        background-image: url('/assets/img/mobile/orelha/com.webp') !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="orelha/sem"] {
        background-image: url('/assets/img/mobile/orelha/sem.webp') !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd-swatch {
        display: none !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt::before {
        content: none !important;
        display: none !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 0 0 10px !important;
        margin: 0 !important;
        gap: 2px !important;
        width: 100% !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__title {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: none !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        order: 50 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        transform: none !important;
        align-self: center !important;
        width: auto !important;
        min-width: 0 !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        z-index: 1 !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
      }

      /* Mobile — Guardas (capa dura): cards Branco/Preto/Personalizado, estilo especiais */
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-btn {
        display: none !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root,
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-panel,
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-panel[hidden],
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root.calc-dd--choice .calc-dd__panel,
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root.calc-dd--choice:not(.is-open) .calc-dd__panel,
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root.is-open #tipo-guardas-dd-panel {
        display: block !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        display: flex !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 10px 8px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        text-align: left !important;
        position: relative !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        width: 100% !important;
        height: 88px !important;
        max-height: none !important;
        flex: 0 0 auto !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/branco"] {
        background-image: url('/assets/img/mobile/guardas/branca.webp') !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/preto"] {
        background-image: url('/assets/img/mobile/guardas/preto.webp') !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/personalizado"] {
        background-image: url('/assets/img/mobile/guardas/personalizada.webp') !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd-swatch {
        display: none !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt::before {
        content: none !important;
        display: none !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 0 0 10px !important;
        margin: 0 !important;
        gap: 2px !important;
        width: 100% !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__title {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.8125rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: none !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        order: 50 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        transform: none !important;
        align-self: center !important;
        width: auto !important;
        min-width: 0 !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        z-index: 1 !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
      }

      /*
       * MOBILE ONLY (≤1023px) — Interior visual das Especificações da Capa.
       * Não altera largura do container externo nem desktop.
       */
      #wizard-step-1 #card-capa.card--capa-espec .pl-capa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .pl-capa-fixed-check {
        display: inline-flex !important;
      }

      /* Papel fixo — card horizontal (mesmo azul da Laminação) */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]),
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo #papel-capa-fixed-note {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 12px !important;
        border: 1.5px solid #2563eb !important;
        border-radius: 14px !important;
        background: #f0f5ff !important;
        box-sizing: border-box !important;
        text-align: left !important;
        position: relative !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: 4px !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-opt-media--fixed {
        width: 72px !important;
        height: 72px !important;
        border-radius: 10px !important;
        border: 1px solid #dbeafe !important;
        background-color: #eff6ff !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__tipo {
        width: auto !important;
        max-width: 100% !important;
        text-align: left !important;
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__info {
        width: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
        text-align: left !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.35 !important;
        color: #64748b !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .pl-capa-fixed-check {
        flex: 0 0 18px !important;
        width: 18px !important;
        height: 18px !important;
        border-radius: 50% !important;
        border: none !important;
        background:
          radial-gradient(circle at 50% 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          center / 18px 18px no-repeat !important;
        box-shadow: none !important;
      }

      /* Laminação / Impressão / Papel (lista) — tiles com foto + check no canto */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 10px 10px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        text-align: left !important;
        position: relative !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .pl-capa-opt-media,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .pl-capa-opt-media,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        width: 100% !important;
        height: 88px !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
      }

      /* Bolinha + selecionar/(selecionado) embaixo do título/subtítulo */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt::before,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt::before,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt::before {
        content: none !important;
        display: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 0 0 10px !important;
        margin: 0 !important;
        gap: 2px !important;
        width: 100% !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__title,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__title,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__title {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__sub,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__sub,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__sub {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt::after,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt::after,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        order: 50 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        transform: none !important;
        align-self: center !important;
        width: auto !important;
        min-width: 0 !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        z-index: 1 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active::after,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active::after,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
      }

      /* Impressão fixa (capa dura) — mesmo padrão horizontal */
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 12px !important;
        border: 1.5px solid #2563eb !important;
        border-radius: 14px !important;
        background: #f0f5ff !important;
        box-sizing: border-box !important;
        text-align: left !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 4px !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-opt-media--fixed {
        width: 72px !important;
        height: 72px !important;
        border-radius: 10px !important;
      }

      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__tipo,
      html.pl-livro-capa-dura #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__info {
        text-align: left !important;
        width: auto !important;
      }

      /* Orelha mobile: cards inline (regras em html.pl-livro-brochura acima); sem select compacto */

      /* Acabamentos especiais — select compacto + rows com miniatura */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-btn {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 56px !important;
        padding: 8px 12px !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-btn .pl-capa-opt-media--btn {
        width: 40px !important;
        height: 40px !important;
        border-radius: 10px !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-btn .calc-dd__main {
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 8px 6px !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .pl-capa-opt-media--check {
        width: 36px !important;
        height: 36px !important;
        border-radius: 8px !important;
        order: -1 !important;
      }

      /* Mobile — Acabamentos especiais: “Não quero” (X) + 2 cards (Verniz / Hot stamp) */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-btn {
        display: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-root,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel[hidden],
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-root.calc-dd--choice .calc-dd__panel,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-root.is-open #capa-especiais-dd-panel {
        display: block !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__multi-body {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        -webkit-overflow-scrolling: auto !important;
        padding: 0 !important;
      }

      /* Mobile — Acabamentos especiais: sem scroll; Confirmar sempre visível */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel.calc-dd__panel--multi,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__panel--multi {
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] #btn-confirm-capa-especiais:not([hidden]) {
        display: block !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        position: relative !important;
        z-index: 2 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check > li {
        min-width: 0 !important;
        margin: 0 !important;
        list-style: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check > li:has(#capa-ext-none) {
        grid-column: 1 / -1 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 10px 10px 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row input {
        position: absolute !important;
        opacity: 0 !important;
        width: 1px !important;
        height: 1px !important;
        margin: -1px !important;
        pointer-events: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row .pl-capa-opt-media--check {
        display: block !important;
        order: 0 !important;
        width: 100% !important;
        height: 88px !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row > span:not(.pl-capa-opt-media) {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.9375rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        padding: 0 0 8px !important;
        border-bottom: 1px solid #cbd5e1 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked) {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked) > span:not(.pl-capa-opt-media) {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked)::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
      }

      /* “Não quero” — faixa com SVG X */
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 12px !important;
        padding: 10px 12px !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none .pl-capa-opt-media--none-x {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 10px !important;
        border: 1px solid #ede9fe !important;
        background: #f5f3ff !important;
        background-image: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none .pl-capa-opt-media--none-x svg {
        display: block !important;
        width: 26px !important;
        height: 26px !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none > span:not(.pl-capa-opt-media) {
        width: auto !important;
        flex: 1 1 auto !important;
        text-align: left !important;
        padding: 0 !important;
        border-bottom: 0 !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-esp-none-label__desk {
        display: none !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-esp-none-label__mob {
        display: inline !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none::after {
        margin: 0 0 0 auto !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none:has(#capa-ext-none:checked) {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      /* Orelha mobile: sem overlay — cards inline (html.pl-livro-brochura) */

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"],
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"],
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"],
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"],
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"],
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"] .capa-options-layout,
      #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
      }

      /* Brochura (355): sem Guardas — só capa dura (330) */
      html.pl-livro-brochura #wizard-step-1 #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      html.pl-livro-brochura #wizard-step-1 #field-guardas-wrap {
        display: none !important;
      }

      #wizard-step-1 #card-formato-acabamento .calc-dd,
      #wizard-step-1 #card-formato-acabamento .calc-dd.calc-dd--choice {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
      }

      #wizard-step-1 #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__list {
        width: 100% !important;
        min-width: 0 !important;
      }

      #wizard-step-1 #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__opt {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-formato-acabamento .calc-dd__btn {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-formato-acabamento .calc-dd__main {
        min-width: 0 !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: stretch !important;
        width: 100% !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento .orient button {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec {
        grid-template-columns: 1fr;
        gap: 0.85rem;
        padding: 12px 14px !important;
        max-width: 100%;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] {
        grid-column: 1 / -1;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-dd,
      #wizard-step-1 #card-capa.card--capa-espec .calc-dd.calc-dd--choice .calc-dd__opt {
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-capa.card--capa-espec .calc-dd__btn {
        max-width: 100% !important;
        min-width: 0 !important;
      }

      /* Tipo de Guardas: borda igual ao Acabamentos especiais */
      #wizard-step-1 #field-guardas-wrap.field--has-native .calc-dd__btn {
        border: 1px solid #e5e7eb !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec {
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel {
        min-width: 0 !important;
        max-width: 100% !important;
      }

      #wizard-step-1 > .grid > .card {
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards {
        min-width: 0 !important;
        max-width: 100% !important;
      }

      /* MOBILE — lista compacta: 3 cards empilhados, sem stretch de altura */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards,
      #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards,
      #card-modelo.card--modelo-qtd .modelo-pick--cards {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        align-content: flex-start !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        grid-template-columns: none !important;
        grid-auto-flow: row !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        flex: 0 0 auto !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot,
      #card-modelo.card--modelo-qtd .modelo-card-slot,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card-slot,
      #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card-slot {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: 0 0 auto !important;
        overflow: visible !important;
      }

      @media (max-width: 1023px) {
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper,
        #wizard-step-1 #card-modelo.card--modelo-qtd .mq-qtd-stepper,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm,
        #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm,
        #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-ok,
        #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-ok {
          border-radius: 12px !important;
        }

        #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo,
        #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-panel__surface,
        #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"] {
          overflow: visible !important;
          max-height: none !important;
          height: auto !important;
          min-height: 0 !important;
          max-width: none !important;
          width: 100% !important;
          padding-left: 0 !important;
          padding-right: 0 !important;
          flex: 0 0 auto !important;
        }
      }

      /* Card: foto 88px | conteúdo — interno minimalista */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card,
      #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card,
      #card-modelo.card--modelo-qtd .modelo-card-slot .modelo-card {
        display: grid !important;
        grid-template-columns: 88px minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
        grid-template-areas: "book content" "book select" !important;
        align-items: start !important;
        column-gap: 10px !important;
        row-gap: 6px !important;
        position: relative !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 16px 10px 10px !important;
        border-radius: 14px !important;
        border: 1.5px solid #A77BFF !important;
        background: #ffffff !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
        text-align: left !important;
        overflow: visible !important;
        flex: 0 0 auto !important;
        align-self: stretch !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura {
        border-color: #A77BFF !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura {
        border-color: #E3B05F !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo {
        border-color: #75C47E !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura[aria-pressed="true"] {
        border-color: #6E35F4 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura[aria-pressed="true"] {
        border-color: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo[aria-pressed="true"] {
        border-color: #3EA34D !important;
      }

      /* Badge compacto */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__badge {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.15rem !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        z-index: 4 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 0.18rem 0.45rem !important;
        margin: 0 !important;
        border-radius: 0.7rem 0 0.65rem 0 !important;
        font-size: 0.5rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.03em !important;
        line-height: 1.1 !important;
        text-transform: uppercase !important;
        color: #fff !important;
        pointer-events: none !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__badge::before {
        display: inline-block !important;
        font-size: 0.7em !important;
        line-height: 1 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__badge {
        background: #6E35F4 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__badge::before {
        content: "★" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__badge {
        background: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__badge::before {
        content: "♛" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__badge {
        background: #3EA34D !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__badge::before {
        content: "🏷" !important;
      }

      /* Foto do livro — mesmo tamanho nos 3 cards (caixa fixa) */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__ico,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__ico,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__ico {
        grid-area: book !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: start !important;
        box-sizing: border-box !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 120px !important;
        min-height: 120px !important;
        max-height: 120px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: hidden !important;
        position: relative !important;
        aspect-ratio: unset !important;
        flex: 0 0 88px !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--desk,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--desk {
        display: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--mob,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--mob {
        display: block !important;
        position: relative !important;
        box-sizing: border-box !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 120px !important;
        min-height: 120px !important;
        max-height: 120px !important;
        object-fit: contain !important;
        object-position: center center !important;
        transform: none !important;
        margin: 0 auto !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        flex: none !important;
      }

      /* Coluna de conteúdo — tipografia e ritmo alinhados */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body {
        grid-area: content !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 4px !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__head {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
      }

      /* Título + link visual na MESMA linha (texto no ::after do titles) */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        justify-content: space-between !important;
        gap: 4px !important;
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name {
        display: block !important;
        order: 1 !important;
        flex: 1 1 auto !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 1.125rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.15 !important;
        color: #0f172a !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        min-width: 0 !important;
      }

      /* Texto do link colado ao título (mesma linha) */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::after {
        content: "Veja o que é esse modelo" !important;
        display: inline-block !important;
        order: 2 !important;
        flex: 0 0 auto !important;
        max-width: 40% !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0.4375rem !important;
        font-weight: 500 !important;
        letter-spacing: 0 !important;
        line-height: 1.15 !important;
        color: #6E35F4 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        pointer-events: none !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::before {
        content: "?" !important;
        display: inline-flex !important;
        order: 3 !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 8px !important;
        width: 8px !important;
        height: 8px !important;
        margin: 0 !important;
        border-radius: 50% !important;
        border: 1px solid currentColor !important;
        font-size: 5px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        color: #6E35F4 !important;
        box-sizing: border-box !important;
        pointer-events: none !important;
        position: relative !important;
        top: 0.5px !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__titles::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__titles::before {
        color: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__titles::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__titles::before {
        color: #3EA34D !important;
      }

      /* Subtexto do modelo removido no mobile */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc::after {
        display: none !important;
        content: none !important;
        font-size: 0 !important;
        line-height: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__desc::before {
        content: none !important;
        display: none !important;
      }

      /* Hit-area invisível sobre o texto do link (mantém clique) */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link {
        position: absolute !important;
        top: 14px !important;
        right: 8px !important;
        left: auto !important;
        bottom: auto !important;
        z-index: 6 !important;
        display: block !important;
        width: 42% !important;
        max-width: 9.5rem !important;
        height: 22px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        flex: none !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
        cursor: pointer !important;
        overflow: hidden !important;
        pointer-events: auto !important;
        transform: none !important;
        text-indent: 0 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::before,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::after {
        content: none !important;
        display: none !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:has(.modelo-card--ref-brochura) .modelo-info-link,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:has(.modelo-card--ref-dura) .modelo-info-link,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:has(.modelo-card--ref-grampo) .modelo-info-link {
        color: transparent !important;
      }

      /* Benefícios — faixa baixa e tipografia mínima */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        align-items: center !important;
        gap: 2px !important;
        width: 100% !important;
        height: 36px !important;
        max-height: 36px !important;
        min-height: 36px !important;
        margin: 0 !important;
        padding: 2px 1px !important;
        border-radius: 7px !important;
        background: #F7F4FF !important;
        box-sizing: border-box !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__perks {
        background: #FBF6EC !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__perks {
        background: #F1F8F2 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perk {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 1px !important;
        min-width: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        text-align: center !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perk-ico {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 11px !important;
        height: 11px !important;
        min-width: 11px !important;
        min-height: 11px !important;
        flex: 0 0 11px !important;
        background: transparent !important;
        border-radius: 0 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perk-ico svg {
        width: 11px !important;
        height: 11px !important;
        display: block !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__perk-ico {
        color: #6E35F4 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__perk-ico {
        color: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__perk-ico {
        color: #3EA34D !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perk-lbl,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perk-lbl {
        display: block !important;
        width: 100% !important;
        font-size: 0 !important;
        line-height: 0 !important;
        text-align: center !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perk-lbl::before {
        display: block !important;
        font-size: 0.4375rem !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        color: #64748b !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__perk:nth-child(1) .modelo-card__perk-lbl::before {
        content: "Leve e fácil" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__perk:nth-child(2) .modelo-card__perk-lbl::before {
        content: "Custo-benefício" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__perk:nth-child(3) .modelo-card__perk-lbl::before {
        content: "Grande tiragem" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__perk:nth-child(1) .modelo-card__perk-lbl::before {
        content: "Mais durável" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__perk:nth-child(2) .modelo-card__perk-lbl::before {
        content: "Acabamento premium" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__perk:nth-child(3) .modelo-card__perk-lbl::before {
        content: "Colecionável" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__perk:nth-child(1) .modelo-card__perk-lbl::before {
        content: "Versátil" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__perk:nth-child(2) .modelo-card__perk-lbl::before {
        content: "Econômica" !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__perk:nth-child(3) .modelo-card__perk-lbl::before {
        content: "Apostilas e livros" !important;
      }

      /* Botão de seleção — alinhado e compacto */
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
        grid-area: select !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 6px !important;
        width: 100% !important;
        height: 34px !important;
        min-height: 34px !important;
        max-height: 34px !important;
        margin: 0 !important;
        padding: 0 8px !important;
        border-radius: 8px !important;
        border: 1.5px solid #6E35F4 !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        transform: none !important;
        overflow: hidden !important;
        pointer-events: none !important;
        color: #6E35F4 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint {
        border-color: #D69218 !important;
        color: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint {
        border-color: #3EA34D !important;
        color: #3EA34D !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint::after {
        content: "" !important;
        display: block !important;
        width: 5px !important;
        height: 5px !important;
        flex: 0 0 auto !important;
        margin-left: auto !important;
        border-right: 1.5px solid currentColor !important;
        border-bottom: 1.5px solid currentColor !important;
        transform: rotate(-45deg) !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl {
        display: block !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        overflow: hidden !important;
        color: inherit !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::before {
        content: "Selecionar este modelo" !important;
        display: block !important;
        font-size: 0.6875rem !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        color: inherit !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        flex: 0 0 16px !important;
        width: 16px !important;
        height: 16px !important;
        margin: 0 !important;
        border-radius: 4px !important;
        border: 1.5px solid currentColor !important;
        background: #fff !important;
        background-image: none !important;
        box-sizing: border-box !important;
        transform: none !important;
        font-size: inherit !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__radio {
        color: #6E35F4 !important;
        border-color: #6E35F4 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__radio {
        color: #D69218 !important;
        border-color: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__radio {
        color: #3EA34D !important;
        border-color: #3EA34D !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura[aria-pressed="true"] .modelo-card__radio {
        background: #6E35F4 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura[aria-pressed="true"] .modelo-card__radio {
        background: #D69218 !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo[aria-pressed="true"] .modelo-card__radio {
        background: #3EA34D !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio::after {
        content: "" !important;
        position: absolute !important;
        left: 50% !important;
        top: 46% !important;
        width: 28% !important;
        height: 52% !important;
        background: none !important;
        border: solid #fff !important;
        border-width: 0 2px 2px 0 !important;
        transform: translate(-50%, -50%) rotate(45deg) !important;
      }
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="false"] .modelo-card__radio::after {
        content: none !important;
        display: none !important;
      }

      @media (min-width: 1024px) {
        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
          top: auto !important;
          right: auto !important;
          bottom: 12px !important;
          left: 50% !important;
          gap: 7px !important;
          transform: translateX(-50%) !important;
        }

        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__desc {
          display: none !important;
        }

        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl {
          display: inline-block !important;
          font-size: 0.9375rem !important;
          font-weight: 600 !important;
          line-height: 1 !important;
          color: #475569 !important;
          white-space: nowrap !important;
        }

        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__select-lbl {
          color: #1d4ed8 !important;
        }

        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio {
          position: relative !important;
          top: auto !important;
          right: auto !important;
          left: auto !important;
          bottom: auto !important;
          width: 15px !important;
          height: 15px !important;
          border: 2px solid #94a3b8 !important;
          transform: none !important;
          background: #ffffff !important;
        }

        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio {
          border: 2px solid #2563eb !important;
          background: #ffffff !important;
          width: 15px !important;
          height: 15px !important;
        }

        html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio::after {
          width: 7px !important;
          height: 7px !important;
          border-radius: 50% !important;
          background: #2563eb !important;
          border: none !important;
          transform: translate(-50%, -50%) !important;
          top: 50% !important;
          left: 50% !important;
        }
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura[aria-pressed="true"] .modelo-card__name {
        color: #0f172a !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura[aria-pressed="true"] .modelo-card__name {
        color: #0f172a !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo[aria-pressed="true"] .modelo-card__name {
        color: #0f172a !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__ico {
        border: none !important;
        box-shadow: none !important;
      }

      /* Fundo do ícone alinhado ao card (mobile); sem filtro nas fotos mobile */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: hidden !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 120px !important;
        min-height: 120px !important;
        max-height: 120px !important;
        flex: 0 0 88px !important;
      }

      #wizard-step-1 #calc-bloc-extras,
      .step1-extras-frete-column {
        min-width: 0 !important;
        max-width: 100% !important;
      }

      #wizard-step-1 #calc-bloc-extras.card {
        padding-left: 14px !important;
        padding-right: 14px !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #calc-bloc-extras .toggle-row {
        min-width: 0;
      }

      /* Heróis dos passos: tipografia compacta (≤1023px; desktop ≥1024 inalterado). */
      #wizard-step-1 .fa-hero,
      #wizard-step-1 .capa-hero,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero,
      #wizard-step-1 #calc-bloc-extras .extras-hero,
      #card-modelo.card--modelo-qtd .mq-hero {
        gap: 0.5rem 0.6rem;
        align-items: flex-start;
      }

      #wizard-step-1 .fa-hero__titles,
      #wizard-step-1 .capa-hero__titles,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__titles,
      #wizard-step-1 #calc-bloc-extras .extras-hero__titles,
      #card-modelo.card--modelo-qtd .mq-hero__titles {
        min-width: 0;
        flex: 1 1 auto;
        min-height: 0;
        top: 0;
        position: relative;
      }

      #wizard-step-1 .fa-hero__title-row,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title-row,
      #card-modelo.card--modelo-qtd .mq-hero__title-row {
        flex-wrap: nowrap;
        align-items: center;
        gap: 0.35rem;
        min-width: 0;
      }

      #wizard-step-1 .fa-hero__title,
      #wizard-step-1 .capa-hero__title,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title,
      #wizard-step-1 #calc-bloc-extras .extras-hero__title,
      #card-modelo.card--modelo-qtd .mq-hero__title {
        font-size: clamp(0.88rem, 2.1vw, 1.02rem);
        line-height: 1.2;
        font-weight: 700;
        letter-spacing: -0.03em;
        margin: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        min-width: 0;
        flex: 1 1 auto;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero {
        flex-wrap: nowrap;
        min-width: 0;
      }

      #wizard-step-1 .fa-hero__sub,
      #wizard-step-1 .capa-hero__sub,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__sub,
      #wizard-step-1 #calc-bloc-extras .extras-hero__sub,
      #card-modelo.card--modelo-qtd .mq-hero__sub {
        font-size: clamp(0.65rem, 1.65vw, 0.76rem);
        line-height: 1.32;
        font-weight: 500;
        margin: 0.2rem 0 0;
        color: #6b7280;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        overflow: hidden;
        white-space: normal;
        word-break: normal;
        overflow-wrap: anywhere;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero__title {
        flex: 0 1 auto !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero__titles {
        min-height: 0 !important;
      }

      /* Miolo mobile: hero jornal com bleed lateral (igual Capa) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero {
        margin: -12px -14px 0 !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 14px clamp(14px, 3.5vw, 22px) !important;
        box-sizing: border-box !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: column !important;
        gap: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title {
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title-row {
        justify-content: center !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
      #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
        margin: 0 !important;
        padding: 0 0 12px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps {
        padding: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-head {
        align-items: center !important;
        gap: 0.4rem !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-head .card-miolo__step-label {
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-help {
        width: auto !important;
        min-width: 2.75rem !important;
        height: 1.9rem !important;
        padding: 0 0.45rem !important;
        border-radius: 8px !important;
        margin: 0 !important;
        font-size: 0.68rem !important;
        font-weight: 600 !important;
        color: var(--muted) !important;
        background: #fff !important;
      }

      #wizard-step-1 .capa-hero {
        flex-wrap: nowrap;
        min-width: 0;
      }

      #wizard-step-1 .capa-hero__help {
        flex-shrink: 0;
        min-height: 1.9rem;
        padding: 0.2rem 0.45rem;
        font-size: 0.68rem;
        font-weight: 600;
        gap: 0.3rem;
        border-radius: 8px;
      }

      #wizard-step-1 .capa-hero__help-q {
        width: 16px;
        height: 16px;
        font-size: 0.65rem;
        line-height: 1;
      }

      /* Bloco “Quantidade” (mobile): mesmo padrão Passo 3 miolo — stepper + botão na mesma linha */
      #wizard-step-1 #card-modelo.card--modelo-qtd .field--mq-qtd,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .field--mq-qtd {
        position: static !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 0.4rem !important;
        row-gap: 0.65rem !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-qtd-visible-label,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-visible-label,
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-visible-label {
        display: block !important;
        grid-column: 1 / -1 !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        font-family: var(--font-primary) !important;
        font-size: 1.3125rem !important;
        font-weight: 600 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.03em !important;
        text-align: center !important;
        color: #0f172a !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-qtd-stepper,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-stepper {
        display: flex !important;
        flex-direction: row !important;
        align-items: stretch !important;
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 2.75rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-stepper__btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 2.5rem !important;
        width: 2.5rem !important;
        min-height: 0 !important;
        height: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-qtd-stepper__input,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-qtd-stepper__input {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        height: 100% !important;
        border: none !important;
        border-left: 1px solid #e5e7eb !important;
        border-right: 1px solid #e5e7eb !important;
        border-radius: 0 !important;
        font-size: 1.0625rem !important;
        font-weight: 700 !important;
        box-sizing: border-box !important;
      }

      @media (min-width: 1024px) {
        #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid {
          display: flex !important;
          flex-direction: column !important;
          align-items: center !important;
          justify-content: center !important;
          flex: 1 1 auto !important;
          min-width: 0 !important;
          background: #ffffff !important;
          padding: 12px 10px 14px !important;
          box-sizing: border-box !important;
        }

        #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__unit {
          margin-top: 4px !important;
          font-size: 0.8125rem !important;
          font-weight: 500 !important;
          color: var(--muted) !important;
          line-height: 1.25 !important;
        }

        #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid .mq-qtd-stepper__input {
          flex: 0 0 auto !important;
          width: 100% !important;
          height: auto !important;
          min-height: 44px !important;
          border-left: none !important;
          border-right: none !important;
          padding: 4px 8px 2px !important;
          font-size: 2rem !important;
          letter-spacing: -0.03em !important;
        }
      }

      /* Mobile: stepper linear (− | valor | +), sem coluna “exemplar” — como antes */
      @media (max-width: 1023px) {
        #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__unit {
          display: none !important;
        }

        #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid {
          display: contents !important;
        }

        #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid .mq-qtd-stepper__input {
          flex: 1 1 auto !important;
          width: auto !important;
          min-width: 0 !important;
          height: 100% !important;
          min-height: 0 !important;
          border: none !important;
          border-left: 1px solid #e5e7eb !important;
          border-right: 1px solid #e5e7eb !important;
          border-radius: 0 !important;
          padding: 0 6px !important;
          font-size: 1.0625rem !important;
          font-weight: 700 !important;
          box-sizing: border-box !important;
        }
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm {
        position: static !important;
        inset: auto !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        grid-column: 2 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.22rem !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        height: 2.35rem !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0.28rem 0.48rem !important;
        align-self: center !important;
        border: none !important;
        border-radius: 9px !important;
        background: #7c3aed !important;
        color: #ffffff !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        font-size: 0 !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm::before,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm::before {
        content: "Continuar" !important;
        display: inline !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        color: #ffffff !important;
        margin: 0 !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm::after,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm::after {
        content: '' !important;
        flex: 0 0 12px !important;
        width: 12px !important;
        height: 12px !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M13 6l6 6-6 6' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:hover,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:active,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:hover,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:active {
        background: #6d28d9 !important;
        color: #ffffff !important;
        border-color: transparent !important;
        box-shadow: none !important;
        filter: none !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled:hover,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled:active,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled:hover,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled:active {
        background: #e5e7eb !important;
        color: #9ca3af !important;
        border: none !important;
        box-shadow: none !important;
        filter: none !important;
        cursor: not-allowed !important;
        opacity: 1 !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled::before,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled::before {
        color: #9ca3af !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled::after,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-btn-confirm:disabled::after {
        opacity: 0.45 !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14' stroke='%239ca3af' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M13 6l6 6-6 6' stroke='%239ca3af' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd .field--mq-qtd > .hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .field--mq-qtd > .warn,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .field--mq-qtd > .hint,
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .field--mq-qtd > .warn {
        grid-column: 1 / -1 !important;
      }

      /* Painéis modelo (tipo / quantidade): mesmo peso visual dos heróis — título, lead, “?” como Ajuda compacta */
      #card-modelo.card--modelo-qtd .mq-subhead__title-row {
        align-items: center !important;
        gap: 0.35rem !important;
        min-width: 0 !important;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__title {
        font-size: clamp(0.88rem, 2.1vw, 1.02rem) !important;
        line-height: 1.2 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__lead {
        font-size: clamp(0.65rem, 1.65vw, 0.76rem) !important;
        line-height: 1.32 !important;
        color: #6b7280 !important;
        margin: 0.25rem 0 0 !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
        line-clamp: 3 !important;
        overflow: hidden !important;
      }

      #card-modelo.card--modelo-qtd .mq-subhead__help {
        width: auto !important;
        min-width: 2.75rem !important;
        height: 1.9rem !important;
        padding: 0 0.45rem !important;
        border-radius: 8px !important;
        border: 1px solid #e5e7eb !important;
        background: #fff !important;
        font-size: 0.68rem !important;
        font-weight: 600 !important;
        color: var(--muted) !important;
        flex-shrink: 0 !important;
      }

      /* Colunas capa (Orelha, Guardas…): títulos em 22px — regra geral acima; sem reduzir no desktop estreito */

      #wizard-step-1 .fa-col-head__sub {
        font-size: clamp(0.62rem, 1.55vw, 0.72rem) !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-label {
        font-size: clamp(0.82rem, 2vw, 0.95rem) !important;
        line-height: 1.28 !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__sub,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__sub,
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__sub {
        display: none !important;
      }
    }

    /* Telefone estreito: respiro lateral e blocos menos “esticados”; só max-width 768px. */
    @media (max-width: 768px) {
      .wrap {
        padding-left: max(1.1rem, env(safe-area-inset-left, 0px) + 0.65rem);
        padding-right: max(1.1rem, env(safe-area-inset-right, 0px) + 0.65rem);
      }

      #wizard-step-1 > .grid {
        gap: 0.9rem;
        --step1-spec-cell-min-h: min(200px, 52vw);
      }

      #wizard-step-1 .fa-hero__mark,
      #wizard-step-1 .capa-hero__mark,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__mark,
      #wizard-step-1 #calc-bloc-extras .extras-hero__mark {
        width: 48px;
        height: 48px;
        border-radius: 12px;
      }

      #wizard-step-1 .fa-hero__mark svg,
      #wizard-step-1 .capa-hero__mark svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__mark svg,
      #wizard-step-1 #calc-bloc-extras .extras-hero__mark svg {
        width: 100%;
        height: 100%;
      }

      .hero-top-step-label {
        font-size: clamp(0.78rem, 3.1vw, 0.95rem);
      }

      .hero-top-step-num {
        font-size: clamp(1.28rem, 4.5vw, 1.65rem);
      }
    }

    /* Formato/Capa em grid: herói + trilho no mesmo bloco flex (igual ao Miolo, sem row-gap duplicado) */
    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head,
    #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head {
      grid-column: 1 / -1;
      display: flex;
      flex-direction: column;
      min-width: 0;
    }

    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
    #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero {
      margin: 0 0 0.85rem;
    }

    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
    #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail {
      margin: 0;
      padding: 0 0 12px;
      padding-left: 0;
      padding-right: 0;
    }

    /* —— Especificações do Miolo (hero + trilho + passos + dica; todas as larguras) —— */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec {
      margin: 0;
      padding: 1.1rem 1.25rem 1.2rem;
      border: 1px solid #e5e7eb;
      border-radius: 12px;
      background: var(--pl-bloco-paper-bg);
      box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06), 0 4px 20px rgba(15, 23, 42, 0.04);
      overflow: hidden;
      display: flex;
      flex-direction: column;
      min-width: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      margin: 0 0 0.85rem;
      padding: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__titles {
      flex: 1 1 auto;
      min-width: 0;
      min-height: 60px;
      display: flex;
      flex-direction: column;
      gap: 0.35rem;
      justify-content: center;
      position: static;
      top: auto;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      flex-wrap: nowrap;
      margin: 0;
      min-width: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title {
      margin: 0;
      font-family: var(--font-primary);
      font-size: 24px;
      line-height: 1.15;
      font-weight: 700;
      color: #333333;
      letter-spacing: -0.02em;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__sub {
      margin: 0;
      font-family: var(--font-primary);
      font-size: 16px;
      line-height: 1.25;
      font-weight: 500;
      color: #7d7d7d;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail {
      padding-left: 0;
      padding-right: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps {
      padding: 0 0 0.5rem;
      gap: 1rem;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel {
      border: 1px solid #e5e7eb;
      border-radius: var(--radius);
      padding: 1rem 1.05rem;
      background: var(--pl-bloco-paper-bg);
      box-shadow: none;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.5rem;
      margin: 0 0 0.65rem;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-head .card-miolo__step-label {
      margin: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-help {
      flex: 0 0 auto;
      width: 26px;
      height: 26px;
      padding: 0;
      margin: -2px 0 0;
      border: 1px solid #e5e7eb;
      border-radius: 999px;
      background: #f9fafb;
      color: var(--muted);
      font-size: 13px;
      font-weight: 700;
      line-height: 1;
      cursor: pointer;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-help:hover {
      border-color: var(--border);
      color: #64748b;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-tip.mq-tip {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 7px 16px 8px;
      margin: 0;
      background: #f3f0ff;
      border-top: 1px solid #ede9fe;
    }

    /* Ajuda, textos de apoio e dica do rodapé: só ≥1024px (mobile = antes das alterações) */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-only-desktop {
      display: none !important;
    }

    /* Blocos só ≤1024px (mockup mobile); desktop não usa estes nós visíveis */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-only-mobile {
      display: none !important;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tip .mq-tip__ico {
      flex: 0 0 18px;
      width: 18px;
      height: 18px;
      border-radius: 999px;
      background: #8b5cf6;
      color: #fff;
      font-size: 10px;
      font-weight: 600;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      line-height: 1;
      margin-top: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tip .mq-tip__txt {
      margin: 0;
      font-size: 12px;
      line-height: 1.35;
      color: #5b21b6;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel--pages .field {
      margin-bottom: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel .calc-flow-campo {
      padding: 0;
      margin-bottom: 0;
    }

    /* Passo 1 — tipo de miolo: ≤1023 compacto; ≥1024 ilustração + lista (mockup desktop) */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__figure,
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets {
      display: none;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt {
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 0.45rem 0.55rem;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__stack {
      grid-column: 1 / span 2;
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 0.45rem;
      min-width: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__title-line {
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 0.45rem;
      flex: 1;
      min-width: 0;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__radio {
      grid-column: 3;
      grid-row: 1;
      align-self: center;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .input-confirm-wrap {
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 0.6rem;
    }

    /* Contador −/+ só no mobile; desktop mantém input simples */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-pages-stepper__btn {
      display: none;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .input-confirm-wrap input[type="number"] {
      flex: 1 1 auto;
      min-width: 0;
      padding-right: 0.75rem;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .btn-guided-confirm.btn-guided-confirm--inline {
      position: static;
      top: auto;
      right: auto;
      transform: none;
      flex-shrink: 0;
      align-self: center;
    }

    @media (max-width: 420px) {
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .input-confirm-wrap:not(:has(.miolo-pages-stepper)) {
        flex-wrap: wrap;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .input-confirm-wrap:not(:has(.miolo-pages-stepper)) .btn-guided-confirm.btn-guided-confirm--inline {
        flex: 1 1 auto;
        width: 100%;
        text-align: center;
      }
    }

    /* Especificações do Miolo — layout mobile (mockup ref.); não altera ≥1024px */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-only-mobile:not(.miolo-pass1-mobile-preview) {
        display: block !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow:not(:has(input[name="miolo-print-mode"]:checked)) .miolo-pass1-mobile-preview.miolo-only-mobile {
        display: none !important;
      }

      /* Mobile: Passo 1 — 2 cards visuais P&B / Colorido (só interior) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-pass1-mobile-preview.miolo-only-mobile,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow:has(input[name="miolo-print-mode"]:checked) .miolo-pass1-mobile-preview.miolo-only-mobile {
        display: none !important;
      }

      /*
        Pré-visível (antes de chegar no miolo): só textos apagados.
        Passo 1 bloqueado → sem tiles/imagens P&B e Colorido.
        Passo 2 → incluir no mesmo estilo (só título/desc).
        Passo 3 → também apagado (não mais “forte” que o passo 1).
      */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-bloqueado .miolo-print-mode-seg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-bloqueado #miolo-print-mode-wrap,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-bloqueado .miolo-pass1-mobile-preview,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-bloqueado .card-miolo__step-help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-bloqueado .calc-flow-msg {
        display: none !important;
      }

      /* Passo 2 no pré-visível: só quando Passo 1 ainda está bloqueado.
         NÃO usar pe:none no pai — filho pe:auto exige 2 toques no iOS.
         Conteúdo já está display:none; só o título/veja ficam clicáveis. */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec:has(#miolo-print-mode-flow.campo-bloqueado) #miolo-papel-flow[hidden] {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        margin: 0 !important;
        opacity: 0.55 !important;
        pointer-events: auto !important;
        filter: grayscale(15%) !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec:has(#miolo-print-mode-flow.campo-bloqueado) #miolo-papel-flow[hidden] .miolo-papel-seg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec:has(#miolo-print-mode-flow.campo-bloqueado) #miolo-papel-flow[hidden] .miolo-papel-dd-hidden,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec:has(#miolo-print-mode-flow.campo-bloqueado) #miolo-papel-flow[hidden] .calc-flow-msg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec:has(#miolo-print-mode-flow.campo-bloqueado) #miolo-papel-flow[hidden] .card-miolo__step-help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec:has(#miolo-print-mode-flow.campo-bloqueado) #miolo-papel-flow[hidden] .miolo-only-desktop {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:not(:has(.calc-flow-campo.campo-ativo)):not(:has(.calc-flow-campo.campo-ok)) {
        opacity: 0.55 !important;
        filter: grayscale(15%) !important;
        pointer-events: auto !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:not(:has(.calc-flow-campo.campo-ativo)):not(:has(.calc-flow-campo.campo-ok)) .miolo-pages-stepper,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:not(:has(.calc-flow-campo.campo-ativo)):not(:has(.calc-flow-campo.campo-ok)) .calc-flow-campo .field,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:not(:has(.calc-flow-campo.campo-ativo)):not(:has(.calc-flow-campo.campo-ok)) .calc-flow-msg {
        pointer-events: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:not(:has(.calc-flow-campo.campo-ativo)):not(:has(.calc-flow-campo.campo-ok)) .card-miolo__step-help {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__figure {
        display: block !important;
        width: 100% !important;
        height: 110px !important;
        margin: 0 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__figure img {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-mode-pb + .miolo-tile__figure,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-pb) .miolo-tile__figure {
        background-image: url('/assets/img/mobile/miolo/pb.webp') !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__figure {
        background-image: url('/assets/img/mobile/miolo/color.webp') !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        position: relative !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__ico {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__stack,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__title-line {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
      }

      /* Conteúdo + divisor (mesmo padrão tamanho/capa) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__stack {
        padding: 0 0 8px !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__text {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.8125rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.02em !important;
        text-transform: none !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__sub {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
      }

      /* PeB: nome em preto (não uppercase / não roxo) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-pb) .miolo-tile__text,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-pb:checked) .miolo-tile__text {
        color: #0f172a !important;
      }

      /* Colorido: cada letra — azul, vermelho, amarelo, verde, roxo */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__text,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl:checked) .miolo-tile__text {
        color: inherit !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__text--colorido > span:nth-child(5n+1) {
        color: #2563eb !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__text--colorido > span:nth-child(5n+2) {
        color: #dc2626 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__text--colorido > span:nth-child(5n+3) {
        color: #eab308 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__text--colorido > span:nth-child(5n+4) {
        color: #16a34a !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl) .miolo-tile__text--colorido > span:nth-child(5n+5) {
        color: #7c3aed !important;
      }

      /* Esconde bolinha solta — usa rodapé selecionar/(selecionado) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt .miolo-tile__radio {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        order: 50 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        transform: none !important;
        align-self: center !important;
        width: auto !important;
        min-width: 0 !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        z-index: 1 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt:has(input:checked),
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-pb:checked),
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec label:has(#miolo-mode-cl:checked) {
        box-shadow: none !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt:has(input:checked) .miolo-tile__stack {
        border-bottom-color: #93c5fd !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt:has(input:checked)::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt:has(input:checked) .miolo-tile__ico {
        color: inherit;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__step-head .card-miolo__step-help {
        display: none !important;
      }

      /* Passos 1–3 miolo — título + borda no padrão Acabamentos especiais (só mobile) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: clamp(0.3rem, 1.6vw, 0.55rem) !important;
        margin: 0 0 0.75rem !important;
        padding-top: clamp(0.5rem, 2vw, 0.7rem) !important;
        padding-bottom: clamp(0.5rem, 2vw, 0.7rem) !important;
        padding-left: clamp(0.5rem, 2.2vw, 0.7rem) !important;
        padding-right: clamp(0.5rem, 2.2vw, 0.7rem) !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        position: relative !important;
        overflow: hidden !important;
        isolation: isolate !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
        width: 100% !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-step-heading__full {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-step-heading__short {
        display: inline !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .card-miolo__step-label {
        display: block !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        font-size: clamp(1rem, 4.8vw, 1.375rem) !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        text-align: left !important;
        color: #6d28d9 !important;
        text-shadow: none !important;
        text-transform: none !important;
      }

      /* “veja o video” — mesmo padrão de Acabamentos especiais (alvo ≥44px no mobile) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja {
        display: inline-flex !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        flex-wrap: nowrap !important;
        align-self: center !important;
        gap: 0.3rem !important;
        z-index: 5 !important;
        margin: 0 !important;
        padding: 0.45rem 0.6rem !important;
        min-height: 44px !important;
        min-width: 44px !important;
        box-sizing: border-box !important;
        border: none !important;
        border-radius: 6px !important;
        background: rgba(255, 255, 255, 0.78) !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08) !important;
        color: #6d28d9 !important;
        font: inherit !important;
        font-size: clamp(0.5rem, 2.4vw, 0.625rem) !important;
        font-weight: 700 !important;
        letter-spacing: 0.01em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        max-width: none !important;
        opacity: 1 !important;
        filter: none !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-play,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-play {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: clamp(15px, 4.2vw, 18px) !important;
        height: clamp(12px, 3.4vw, 14px) !important;
        border-radius: 3px !important;
        background: #ff0000 !important;
        flex-shrink: 0 !important;
        animation: pl-capa-veja-pulse 1.6s ease-in-out infinite !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-play svg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-play svg {
        display: block !important;
        width: 70% !important;
        height: 70% !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja-txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja-txt {
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        min-width: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja:active,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja:active {
        transform: scale(0.97) !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .capa-col-head__veja:focus-visible,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .capa-col-head__veja:focus-visible {
        outline: 2px solid #a78bfa !important;
        outline-offset: 2px !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > p.card-miolo__step-desc.miolo-print-mode-seg__lead.miolo-only-mobile,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > p.card-miolo__step-desc.miolo-papel-seg__lead.miolo-only-mobile,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > p.card-miolo__step-desc.miolo-pages-stack__lead.miolo-only-mobile {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec p.card-miolo__step-desc.miolo-only-mobile {
        margin: 0 0 0.65rem;
        font-size: 0.875rem;
        line-height: 1.45;
        color: #4b5563;
        font-weight: 500;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 0.55rem;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 0.5rem 0.55rem !important;
        flex: 1 1 auto;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0.55rem 0.6rem !important;
        box-sizing: border-box !important;
        overflow: hidden;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn .miolo-tile__ico {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__figure {
        display: block !important;
        grid-column: 1;
        grid-row: 1;
        width: 72px !important;
        min-width: 72px !important;
        max-width: 72px !important;
        height: 56px !important;
        min-height: 56px !important;
        margin: 0;
        border-radius: 8px;
        overflow: hidden;
        background: #f8fafc;
        box-sizing: border-box;
        flex-shrink: 0;
        align-self: center;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__photo {
        display: block !important;
        width: 72px !important;
        height: 56px !important;
        max-width: 72px !important;
        max-height: 56px !important;
        object-fit: contain !important;
        object-position: center !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body--mob {
        display: flex !important;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.18rem;
        min-width: 0;
        max-width: 100%;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body--mob > .miolo-tile__name {
        display: block;
        font-size: 0.9rem;
        font-weight: 700;
        line-height: 1.2;
        color: #111827;
        min-width: 0;
        max-width: 100%;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body--mob .miolo-papel-seg__sub {
        display: block;
        margin: 0;
        font-size: 0.7rem;
        font-weight: 400;
        line-height: 1.3;
        letter-spacing: 0.01em;
        color: #9ca3af;
        min-width: 0;
        max-width: 100%;
      }

      html.pl-livro-grampo #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body--mob .miolo-papel-seg__sub {
        font-size: 0.65rem;
        line-height: 1.28;
        letter-spacing: 0.015em;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__badge {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__badge-ico {
        flex: 0 0 auto;
        display: block;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__badge--75g {
        background: #f3e8ff;
        color: #7c3aed;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__badge--80g {
        background: #ffedd5;
        color: #c2410c;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__badge--90g {
        background: #dcfce7;
        color: #15803d;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn > .miolo-tile__radio {
        grid-column: 3;
        grid-row: 1;
        align-self: center;
        flex-shrink: 0;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn[aria-pressed="true"] {
        background: #f0f5ff;
        border-color: #2563eb;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn[aria-pressed="true"] .miolo-tile__radio {
        border-color: #2563eb;
        background: radial-gradient(circle at center, #2563eb 45%, #ffffff 48%);
      }

      html.pl-livro-grampo #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn[aria-pressed="true"] .miolo-tile__radio {
        border-color: #2563eb;
        background: radial-gradient(circle at center, #2563eb 45%, #ffffff 48%);
      }
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero,
      #wizard-step-1 #calc-bloc-extras .extras-hero {
        display: flex !important;
        align-items: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 14px !important;
        margin: 0 0 0.85rem !important;
        padding: 0 !important;
      }

      #wizard-step-1 .fa-hero__titles,
      #wizard-step-1 .capa-hero__titles,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__titles,
      #wizard-step-1 #calc-bloc-extras .extras-hero__titles {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.35rem !important;
        justify-content: center !important;
        min-height: 60px !important;
        position: static !important;
        top: auto !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
      #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
        margin: 0 !important;
        padding: 0 0 12px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps {
        padding: 0 0 0.5rem;
      }

      /* Desktop only: Papel do miolo acima de Impressão do miolo (ordem visual) */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps > #miolo-papel-flow {
        order: 1;
      }
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps > #miolo-print-mode-flow {
        order: 2;
      }
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps > #miolo-pages-stack {
        order: 3;
      }

      /* Miolo passos 1–3 — título no padrão Orelha/Laminação + “veja o video” */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        margin: 0 0 0.75rem !important;
        padding: 0.55rem 0.55rem !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        position: relative !important;
        overflow: visible !important;
        isolation: isolate !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
        width: 100% !important;
        gap: 0.45rem !important;
        justify-content: space-between !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .card-miolo__step-label {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 22px !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.2 !important;
        text-align: center !important;
        color: #8b5cf6 !important;
        text-shadow: none !important;
        white-space: normal !important;
        opacity: 1 !important;
        filter: none !important;
      }

      /* Miolo: título apagado por padrão; roxo Orelha quando ativo OU já selecionado */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-bloqueado,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow.campo-bloqueado,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] {
        opacity: 1 !important;
        filter: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head {
        opacity: 0.55 !important;
        filter: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .card-miolo__step-label {
        color: #8b5cf6 !important;
      }

      /* Ativo (aguardando) OU já selecionado/ok → igual Orelha e demais títulos */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-ativo > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow:has(input[name="miolo-print-mode"]:checked) > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-ok > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow.campo-ativo > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow:has(.miolo-papel-seg__btn[aria-pressed="true"]) > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow.campo-ok > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:has(.calc-flow-campo.campo-ativo) > .card-miolo__step-head,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:has(.calc-flow-campo.campo-ok) > .card-miolo__step-head {
        opacity: 1 !important;
        filter: none !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-ativo > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow:has(input[name="miolo-print-mode"]:checked) > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow.campo-ok > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow.campo-ativo > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow:has(.miolo-papel-seg__btn[aria-pressed="true"]) > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow.campo-ok > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:has(.calc-flow-campo.campo-ativo) > .card-miolo__step-head .card-miolo__step-label,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack:has(.calc-flow-campo.campo-ok) > .card-miolo__step-head .card-miolo__step-label {
        color: #6d28d9 !important;
        opacity: 1 !important;
        filter: none !important;
        text-shadow: none !important;
      }

      /* Passo 2 sempre visível (só título enquanto [hidden]) — sequência 1 → 2 → 3.
         pe:auto no pai p/ “veja o video” abrir no 1º toque (conteúdo já display:none). */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        margin: 0 0 0.85rem !important;
        pointer-events: auto !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] .miolo-papel-seg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] .miolo-papel-dd-hidden,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] .calc-flow-msg,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] .card-miolo__step-help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] .miolo-only-desktop,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow[hidden] .card-miolo__step-desc {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-print-mode-flow > .card-miolo__step-head .card-miolo__step-help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-papel-flow > .card-miolo__step-head .card-miolo__step-help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .card-miolo__step-head .card-miolo__step-help,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec button.card-miolo__step-help.miolo-only-desktop {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec p.card-miolo__step-desc.miolo-only-desktop,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__lead.miolo-only-desktop,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__lead.miolo-only-desktop,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-pages-stack__lead.miolo-only-desktop {
        display: none !important;
      }

      /* Mobile — dica de rodapé: uma linha, altura mínima */
      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-tip.mq-tip {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 4px !important;
        padding: 2px 8px 3px !important;
        margin: 6px -14px -12px !important;
        min-height: 0 !important;
        border-radius: 0 0 10px 10px;
        background: #faf9ff !important;
        border-top: 1px solid #f0ebff !important;
        box-sizing: border-box;
        overflow: hidden;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-tip.mq-tip {
        margin: 6px -14px -12px !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip .mq-tip__ico,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip .mq-tip__ico,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .mq-tip .mq-tip__ico {
        flex: 0 0 11px;
        width: 11px;
        height: 11px;
        border-radius: 999px;
        background: #c4b5fd;
        color: #fff;
        font-size: 7px;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        margin-top: 0;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip .mq-tip__txt,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip .mq-tip__txt,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .mq-tip .mq-tip__txt {
        margin: 0;
        flex: 1 1 auto;
        min-width: 0;
        font-size: clamp(0.5rem, 2.15vw, 0.625rem);
        line-height: 1;
        font-weight: 400;
        color: #8b5cf6;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip .mq-tip__txt strong,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip .mq-tip__txt strong,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .mq-tip .mq-tip__txt strong {
        font-weight: 600;
        color: #7c3aed;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-tip.mq-tip.miolo-only-desktop {
        display: flex !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__figure,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets {
        display: block;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets {
        list-style: none;
        margin: 0;
        padding: 0;
        width: 100%;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets li {
        position: relative;
        margin: 0.28rem 0 0;
        padding-left: 1.15rem;
        font-size: 0.8rem;
        font-weight: 500;
        line-height: 1.38;
        color: #4b5563;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets li:first-child {
        margin-top: 0;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets li::before {
        content: '\2713';
        position: absolute;
        left: 0;
        top: 0.06em;
        font-size: 0.72rem;
        font-weight: 600;
        line-height: 1;
        color: #16a34a;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-print-mode-seg__opt {
        grid-template-columns: 1fr auto;
        grid-template-rows: auto auto auto;
        align-items: start;
        gap: 0.55rem 0.85rem;
        padding: 0.75rem 0.9rem;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__stack {
        display: contents;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__title-line {
        grid-column: 1 / -1;
        grid-row: 1;
        justify-content: center;
        text-align: center;
        width: 100%;
        gap: 0;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__ico {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__text {
        font-size: 1.22rem;
        font-weight: 700;
        letter-spacing: -0.015em;
        line-height: 1.2;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__figure {
        grid-column: 1 / -1;
        grid-row: 2;
        border-radius: var(--radius);
        overflow: hidden;
        background: #f1f5f9;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__figure img {
        width: 100%;
        height: auto;
        display: block;
        max-height: min(168px, 20vw);
        object-fit: contain;
        object-position: center;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__bullets {
        grid-column: 1;
        grid-row: 3;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-tile__radio {
        grid-column: 2;
        grid-row: 3;
        align-self: center;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__sub {
        display: block;
        margin: 0;
        font-size: 0.625rem;
        font-weight: 400;
        line-height: 1.3;
        letter-spacing: 0.01em;
        color: #a3a3a3;
      }

      html.pl-livro-grampo #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__sub {
        font-size: 0.6rem;
        line-height: 1.28;
        letter-spacing: 0.015em;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        min-height: 2.56em;
        max-width: 100%;
        text-wrap: balance;
      }

      html.pl-livro-grampo #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body {
        gap: 0.12rem;
      }

      /* Passo 2 papel desktop: foto em cima, título + descrição em baixo, rádio à direita */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn {
        grid-template-columns: 1fr auto;
        grid-template-rows: auto auto;
        align-items: start;
        gap: 0.55rem 0.65rem;
        padding: 0.65rem 0.8rem;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__badge {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__figure {
        grid-column: 1 / -1;
        grid-row: 1;
        display: block;
        border-radius: var(--radius);
        overflow: hidden;
        background: #f1f5f9;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__photo {
        width: 100%;
        height: auto;
        display: block;
        max-height: min(104px, 18vw);
        object-fit: cover;
        object-position: center;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body {
        grid-column: 1;
        grid-row: 2;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        align-self: start;
        gap: 0.28rem;
        min-width: 0;
        padding-right: 0.15rem;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__body > .miolo-tile__name {
        display: block;
        font-size: 0.92rem;
        font-weight: 700;
        line-height: 1.25;
        color: #111827;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-papel-seg__btn > .miolo-tile__radio {
        grid-column: 2;
        grid-row: 2;
        align-self: center;
      }

      /* Passo 3 páginas (desktop): input + Confirmar lado a lado — botão grande e visível */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 0.65rem;
        position: static;
        margin-top: 0.35rem;
      }

      /* Desktop: −/+ ocultos; input no fluxo flex como antes */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper {
        display: contents;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__btn {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap input[type="number"],
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__input {
        flex: 1 1 auto;
        min-width: 5.5rem;
        max-width: 11rem;
        width: auto;
        padding: 0.65rem 0.75rem;
        padding-right: 0.75rem;
        font-size: 1.0625rem;
        font-weight: 700;
        box-sizing: border-box;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline {
        position: static;
        top: auto;
        right: auto;
        transform: none;
        flex: 0 0 auto;
        align-self: stretch;
        width: auto;
        min-width: 10.75rem;
        min-height: 48px;
        margin: 0;
        padding: 12px 1.35rem;
        border: none;
        border-radius: var(--radius);
        font-size: 1rem;
        font-weight: 700;
        letter-spacing: 0.01em;
        line-height: 1.2;
        text-align: center;
        color: #ffffff;
        background: #3b713f;
        box-shadow: 0 2px 10px rgba(59, 113, 63, 0.28);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        z-index: 2;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline::before {
        content: '';
        flex: 0 0 22px;
        width: 22px;
        height: 22px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9.75' stroke='%23ffffff' stroke-width='1.35'/%3E%3Cpath d='M7.5%2012.15%20L10%2014.65%20L16.5%208.15' stroke='%23ffffff' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:hover {
        background: #346838;
        color: #ffffff;
        border-color: transparent;
        box-shadow: 0 3px 12px rgba(59, 113, 63, 0.32);
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled:hover,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline[aria-disabled="true"],
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline[aria-disabled="true"]:hover {
        background: #e5e7eb !important;
        color: #9ca3af !important;
        border: none !important;
        box-shadow: none !important;
        cursor: not-allowed !important;
        opacity: 1 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled::before,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline[aria-disabled="true"]::before {
        opacity: 0.55;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9.75' stroke='%239ca3af' stroke-width='1.35'/%3E%3Cpath d='M7.5%2012.15%20L10%2014.65%20L16.5%208.15' stroke='%239ca3af' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .field {
        padding-bottom: 0.15rem;
      }
    }

    .card {
      background: var(--pl-bloco-paper-bg);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 1.1rem 1.25rem 1.2rem;
      box-shadow: var(--shadow);
    }

    .card h2 {
      margin: 0 0 0.9rem;
      font-size: 0.95rem;
      font-weight: 700;
      text-transform: none;
      letter-spacing: -0.02em;
      color: var(--text);
    }

    .layout-main .wizard-step .grid > .card > h2,
    .layout-main .wizard-step > .card > h2 {
      margin: -1.1rem -1.25rem 0.85rem -1.25rem;
      padding: 0.55rem 1rem;
      font-size: clamp(0.88rem, 1.65vw, 1.05rem);
      font-weight: 800;
      letter-spacing: -0.02em;
      text-transform: none;
      color: #1e40af;
      background: linear-gradient(90deg, #dbeafe 0%, #eff6ff 45%, #e8eefc 100%);
      border-bottom: 1px solid rgba(37, 99, 235, 0.14);
      border-radius: var(--radius) var(--radius) 0 0;
    }

    .calc-native-select {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
      opacity: 0;
      pointer-events: none;
    }

    .fa-col-foot__txt--grampo {
      display: none;
    }

    /* Grampo: acabamento fixo — mesma estrutura interna da orientação 20×20 */
    html.pl-livro-grampo #field-acabamento-wrap.field--acab-grampo-fixed #acabamento-grampo-choice {
      display: none !important;
    }

    #field-acabamento-wrap #acabamento-grampo-fixed {
      display: none !important;
    }

    #field-acabamento-wrap.field--acab-grampo-fixed #acabamento-grampo-fixed {
      display: flex !important;
    }

    /* Grampo + 20×20: orientação fixa (sem retrato/paisagem) */
    #field-orient-wrap #orient-grampo-fixed {
      display: none !important;
    }

    #field-orient-wrap.field--orient-grampo-sem #orient-grampo-choice {
      display: none !important;
    }

    #field-orient-wrap.field--orient-grampo-sem #orient-grampo-fixed {
      display: flex !important;
    }

    .field--has-native {
      position: relative;
    }

    /*
      Overlay fica DENTRO de .layout-main: escurece só a coluna da calculadora.
      A coluna do resumo (.layout-summary) fica com z-index maior no body.frete-spotlight-dim,
      assim o bloco de frete permanece claro e legível por cima do véu.
    */
    .layout-main > .overlay-focus {
      position: fixed;
      inset: 0;
      width: 100%;
      height: 100%;
      z-index: 1;
      pointer-events: none;
      background: rgba(2, 6, 23, 0.78);
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.35s ease, visibility 0.35s ease;
    }

    .layout-main > .overlay-focus.is-on {
      opacity: 1;
      visibility: visible;
    }

    @media (max-width: 640px) {
      .layout-main > .overlay-focus.is-on {
        background: rgba(2, 6, 23, 0.72);
      }
    }

    body.frete-spotlight-dim #orc-form.layout-shell > .layout-main {
      position: relative;
      z-index: 0;
    }

    .calc-flow-campo {
      position: relative;
      display: flex;
      flex-direction: column;
      margin: 0 0 0.55rem;
      padding: 0.5rem 0.55rem;
      border-radius: 12px;
      border: 1.5px solid transparent;
      background: transparent;
      transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, opacity 0.2s ease, filter 0.2s ease;
    }

    .calc-flow-campo[hidden] {
      display: none !important;
    }

    .calc-flow-campo:last-child {
      margin-bottom: 0;
    }

    .calc-flow-campo.campo-ativo {
      position: relative;
      /* espaço para o alerta ficar fora (acima) sem sobrepor o conteúdo anterior */
      margin-top: 32px;
      border-color: transparent;
      background: transparent;
      border-radius: 16px;
      box-shadow: none;
      transition: opacity 0.2s ease, filter 0.2s ease;
    }

    /* Borda tracejada vermelha SOMENTE no campo ativo (estilo da foto) */
    .calc-flow-campo.campo-ativo::before {
      content: '';
      position: absolute;
      inset: -2px;
      border: 2px dashed #FF3B30;
      border-radius: 16px;
      pointer-events: none;
    }

    .calc-flow-campo.campo-bloqueado {
      opacity: 0.55;
      pointer-events: none;
      filter: grayscale(15%);
    }

    /* Mobile: NÃO usar pointer-events:none no pai do “veja o video”.
       Filho com pe:auto dentro de pai pe:none exige 2 toques no iOS/Android.
       Conteúdo bloqueado já está display:none + disabled via JS. */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #wizard-step-1 .calc-flow-campo.campo-bloqueado,
      html.is-mobile-ref #wizard-step-1 .calc-flow-campo.campo-bloqueado,
      html.pl-mvw #wizard-step-1 .calc-flow-campo.campo-bloqueado {
        pointer-events: auto !important;
      }

      #wizard-step-1 .calc-flow-campo.campo-bloqueado .tamanho-size-layout,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .orient-options-layout,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .acab-options-layout,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .capa-options-layout,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .field,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .fa-col-foot,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .miolo-papel-seg,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .miolo-print-mode-seg,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado #miolo-print-mode-wrap,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado #tamanho-custom-wrap {
        pointer-events: none !important;
      }
    }

    /* Formato/Capa: título NÃO selecionado = esmaecido (regra foto 2 / Acabamentos).
       Selecionado (campo-ok) ou passo atual (campo-ativo) = cheio/ativo.
       Não forçar opacity:1 no bloqueado — isso fazia Tamanhos etc. parecerem ativos. */

    /* Sim/Não dos opcionais precisam permanecer clicáveis mesmo com extras ainda “bloqueado”
       pelo fluxo guiado — senão o Próximo nunca libera (clique não marca o radio). */
    #wizard-step-1 .calc-flow-campo[data-flow-key="extras"].campo-bloqueado .extras-mob-board__skip-wrap,
    #wizard-step-1 .calc-flow-campo[data-flow-key="extras"].campo-bloqueado .extras-mob-board__skip-prompt,
    #wizard-step-1 .calc-flow-campo[data-flow-key="extras"].campo-bloqueado .extras-mob-board__skip-opts,
    #wizard-step-1 .calc-flow-campo[data-flow-key="extras"].campo-bloqueado .extras-mob-board__skip-opt,
    #wizard-step-1 .calc-flow-campo[data-flow-key="extras"].campo-bloqueado .extras-mob-board__skip--desktop {
      pointer-events: auto !important;
      opacity: 1 !important;
      filter: none !important;
    }

    /* Mobile — “veja o video”: alvo de toque ≥44px + sempre clicável.
       touch-action:manipulation remove atraso de 300ms do double-tap-zoom. */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #wizard-step-1 .calc-flow-campo .capa-col-head__veja,
      #wizard-step-1 .calc-flow-campo.campo-bloqueado .capa-col-head__veja,
      #wizard-step-1 .card-miolo__step-head .capa-col-head__veja,
      #wizard-step-1 .fa-col-head .capa-col-head__veja,
      html.is-mobile-ref #wizard-step-1 .capa-col-head__veja,
      html.pl-mvw #wizard-step-1 .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 .fa-col-head .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 .card-miolo__step-head .capa-col-head__veja {
        pointer-events: auto !important;
        opacity: 1 !important;
        filter: none !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
        min-height: 44px !important;
        min-width: 44px !important;
        padding: 0.45rem 0.6rem !important;
        box-sizing: border-box !important;
        position: relative !important;
        z-index: 5 !important;
      }
    }

    /* Passo 1 guiado: etapas futuras só mostram o título; concluídas e ativa mantêm opções editáveis */
    #wizard-step-1 .calc-flow-campo .pl-flow-resumo {
      display: none !important;
    }

    /* Antes de chegar na opção: só título (sem caixa branca vazia embaixo) */
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .fa-col-head__sub,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .fa-col-foot,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .hint,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .mq-qtd-sublead,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .mq-title-note,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .btn-guided-confirm,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .field,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .papel-capa-fixed-card,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .modelo-wizard-hint,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .miolo-papel-seg,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .miolo-print-mode-seg,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado #miolo-print-mode-wrap,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .tamanho-size-layout,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .orient-options-layout,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .acab-options-layout,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado .capa-options-layout,
    #wizard-step-1 .calc-flow-campo.campo-bloqueado #tamanho-custom-wrap {
      display: none !important;
    }

    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.campo-bloqueado,
    #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo.campo-bloqueado,
    #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo.campo-bloqueado {
      min-height: 0;
      align-self: start;
    }

    @keyframes sumFreteFocusIn {
      from {
        opacity: 0.9;
        transform: scale(0.985);
        box-shadow: 0 0 0 rgba(56, 189, 248, 0);
      }
      55% {
        transform: scale(1.028);
      }
      to {
        opacity: 1;
        transform: scale(1.018);
      }
    }

    @keyframes sumFreteGlowPulse {
      0%,
      100% {
        box-shadow:
          0 0 0 2px rgba(255, 255, 255, 0.85),
          0 0 32px 8px rgba(255, 255, 255, 0.55),
          0 0 64px rgba(56, 189, 248, 0.65),
          0 0 120px rgba(125, 211, 252, 0.4),
          0 20px 48px rgba(15, 23, 42, 0.18);
      }
      50% {
        box-shadow:
          0 0 0 2px rgba(255, 255, 255, 0.95),
          0 0 40px 12px rgba(255, 255, 255, 0.65),
          0 0 80px rgba(14, 165, 233, 0.75),
          0 0 140px rgba(186, 230, 253, 0.5),
          0 22px 52px rgba(15, 23, 42, 0.14);
      }
    }

    .sum-frete-focus-wrap {
      position: relative;
      margin: 0.2rem 0 0;
      padding: 0.45rem 0.55rem 0.55rem;
      border-radius: 12px;
      border: 1.5px solid transparent;
      background: transparent;
      transition: border-color 0.2s ease, background 0.2s ease;
      min-width: 0;
      width: 100%;
      box-sizing: border-box;
      overflow: visible;
    }

    /* Frete guiado: tracejado na própria caixa (alinha com o painel; evita ::before deslocado) */
    .sum-frete-focus-wrap.campo-ativo {
      position: relative;
      z-index: 1;
      margin-top: 2rem;
      margin-left: 0;
      margin-right: 0;
      padding: 0.45rem 0.55rem 0.55rem;
      border: 2px dashed #ff3b30;
      border-radius: 12px;
      background: transparent;
      box-shadow: none;
      transform: none;
      animation: none;
      overflow: visible;
    }

    .sum-frete-focus-wrap.campo-ativo::before {
      content: none;
      display: none;
    }

    .selection-summary .sum-block--frete-cta:has(.sum-frete-focus-wrap.campo-ativo),
    .sum-frete-mobile-slot:has(.sum-frete-focus-wrap.campo-ativo) {
      overflow: visible;
    }

    .sum-frete-focus-wrap.campo-ativo .calc-flow-msg.sum-frete-guided-msg:not([hidden]) {
      top: -28px;
      left: 0;
      z-index: 2;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .sum-frete-focus-wrap.campo-ativo .calc-flow-msg.sum-frete-guided-msg.pl-msg-on:not([hidden]) {
        left: 50%;
        transform: translateX(-50%) translateY(0) scale(1);
        white-space: nowrap;
      }
    }

    .step2-seq-box[hidden] {
      display: none !important;
    }

    /* Etapa 3 (identificação): guia de progresso nos campos — só visual */
    #wizard-step-2 .step2-inline-forms .step2-seq-box.is-complete:not(.is-focus-error):not(:has(.field-invalid)) > label::before {
      content: '✓ ';
      color: #15803d;
      font-weight: 700;
    }

    #wizard-step-2 .step2-inline-forms .step2-seq-box.is-complete input:not(.field-invalid):not(.step2-focus-error) {
      border-color: #16a34a !important;
      background: #f0fdf4 !important;
      box-shadow: none !important;
    }

    #wizard-step-2 .step2-inline-forms .step2-seq-box.is-next:not(.is-focus-error) input:not(.field-invalid):not(.step2-focus-error) {
      border-color: #2563eb !important;
      background: #fff !important;
      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.22) !important;
      animation: pl-step2-next-glow 1.8s ease-in-out infinite;
    }

    #wizard-step-2 .step2-inline-forms .step2-seq-box.is-focus-error input,
    #wizard-step-2 .step2-inline-forms input.step2-focus-error,
    #wizard-step-2 .step2-inline-forms input.field-invalid.step2-focus-error {
      border-color: #dc2626 !important;
      background: #fff5f5 !important;
      box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.28) !important;
      animation: pl-step2-err-pulse 0.5s ease 4;
    }

    @keyframes pl-step2-next-glow {
      0%, 100% { box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18) !important; }
      50% { box-shadow: 0 0 0 5px rgba(37, 99, 235, 0.32) !important; }
    }

    @keyframes pl-step2-err-pulse {
      0%, 100% { box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.22) !important; }
      50% { box-shadow: 0 0 0 5px rgba(220, 38, 38, 0.4) !important; }
    }

    .reg-field-hint {
      margin: 0.38rem 0 0;
      font-size: 0.82rem;
      font-weight: 600;
      line-height: 1.35;
    }

    .reg-field-hint--warn {
      color: #b45309;
    }

    .reg-field-hint--err {
      color: #b91c1c;
    }

    .calc-flow-msg {
      /* Alerta fora do box (acima da borda tracejada) */
      position: absolute;
      top: -30px;
      left: 0;
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      margin: 0;
      padding: 0;
      font-size: 16px;
      font-weight: 600;
      color: #dc2626;
      line-height: 1.2;
      background: transparent;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      width: auto;
      z-index: 1;
      opacity: 0;
      transform: translateY(10px) scale(0.985);
      filter: blur(0.4px);
      transition:
        opacity 520ms cubic-bezier(.16,1,.3,1),
        transform 520ms cubic-bezier(.16,1,.3,1),
        filter 520ms cubic-bezier(.16,1,.3,1);
      transition-delay: 70ms;
      will-change: opacity, transform;
    }

    .calc-flow-msg::before {
      content: none;
    }

    .calc-flow-msg__ico {
      flex-shrink: 0;
      font-size: 18px;
      line-height: 1;
    }

    .calc-flow-msg__type {
      color: #dc2626;
      font-weight: 700;
      white-space: nowrap;
    }

    .calc-flow-msg__type.is-typing::after {
      content: '';
      display: inline-block;
      width: 2px;
      height: 0.95em;
      margin-left: 1px;
      vertical-align: -0.08em;
      background: #dc2626;
      animation: pl-flow-msg-caret 1.15s step-end infinite;
    }

    @keyframes pl-flow-msg-caret {
      0%, 100% { opacity: 1; }
      50% { opacity: 0; }
    }

    .calc-flow-msg.pl-msg-on {
      opacity: 1;
      transform: translateY(0) scale(1);
      filter: blur(0);
    }

    /* Desktop: centralizar o “Preencha para continuar” no card */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .calc-flow-campo.campo-ativo .calc-flow-msg:not([hidden]) {
        left: 50% !important;
        transform: translateX(-50%) !important;
        white-space: nowrap;
      }

      /*
        Passo 3 — Quantidade de páginas: o card #card-miolo usa overflow:hidden (cantos).
        O tracejado desktop (::before com inset:-2px) fica FORA da caixa e é cortado — aparece só o “topo” do retângulo.
        Desenhar o tracejado na própria borda do .calc-flow-campo (como em ≤1023px) evita o corte.
      */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo {
        border: 2px dashed #ff3b30;
        border-radius: 16px;
        padding: 0.5rem 0.55rem;
        box-sizing: border-box;
        overflow: visible;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo::before {
        content: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .calc-flow-msg:not([hidden]) {
        margin-bottom: 0.35rem;
      }
    }

    @media (max-width: 520px) {
      .calc-flow-campo.campo-ativo {
        margin-top: 28px;
        /* Em mobile, desenhar o tracejado no próprio container evita “falhas” */
        border: 2px dashed #FF3B30;
        border-radius: 16px;
        overflow: visible;
      }

      #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"].campo-ativo {
        margin-top: 0 !important;
        border: none !important;
        border-radius: 0 !important;
      }

      #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .calc-flow-campo[data-flow-key="quantidade"].campo-ativo {
        margin-top: 2rem !important;
        padding: 0.72rem 0.55rem 0.68rem !important;
        border: 2px dashed #ff3b30 !important;
        border-radius: 16px !important;
        overflow: visible !important;
      }

      .calc-flow-campo.campo-ativo::before {
        content: none;
      }
      .calc-flow-msg {
        top: -26px;
        font-size: 14px;
      }
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      /* Mobile — “Preencha para continuar” centralizado em cada campo ativo */
      #wizard-step-1 .calc-flow-campo.campo-ativo .calc-flow-msg:not([hidden]) {
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        white-space: nowrap !important;
        justify-content: center !important;
        text-align: center !important;
      }

      #wizard-step-1 .calc-flow-campo.campo-ativo .calc-flow-msg.pl-msg-on:not([hidden]) {
        transform: translateX(-50%) translateY(0) scale(1) !important;
      }

      .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo .calc-flow-msg.sum-frete-guided-msg:not([hidden]) {
        left: 50% !important;
        right: auto !important;
        top: -1.65rem !important;
        transform: translateX(-50%) !important;
        white-space: nowrap !important;
        justify-content: center !important;
        text-align: center !important;
      }

      .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo .calc-flow-msg.sum-frete-guided-msg.pl-msg-on:not([hidden]) {
        transform: translateX(-50%) translateY(0) scale(1) !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo.campo-ativo,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo.campo-ativo,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps .calc-flow-campo.campo-ativo,
      #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"].campo-ativo,
      #wizard-step-1 #calc-bloc-extras > .calc-flow-campo.campo-ativo:not(.extras-mob-guided-step) {
        border: 2px dashed #ff3b30 !important;
        border-radius: 16px;
        overflow: visible;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"].campo-ativo {
        margin-top: 2rem !important;
        padding: 0.72rem 0.55rem 0.68rem !important;
        border: 2px dashed #ff3b30 !important;
        border-radius: 16px !important;
        overflow: visible !important;
        position: relative !important;
      }

      /* Serviços adicionais (mobile): tracejado só em “Deseja serviços opcionais?” — não no bloco inteiro */
      #wizard-step-1 #calc-bloc-extras > .calc-flow-campo.extras-mob-guided-step.campo-ativo {
        border: none !important;
        box-shadow: none !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-mob-board__skip-prompt.extras-mob-prompt-ativo {
        margin-top: 2rem !important;
        padding: 0.72rem 0.55rem 0.68rem !important;
        border: 2px dashed #ff3b30 !important;
        border-radius: 16px !important;
        overflow: visible !important;
        position: relative !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-mob-board__skip-guided-msg:not([hidden]) {
        position: absolute !important;
        top: -1.65rem !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        white-space: nowrap !important;
        font-size: 0.8125rem !important;
        z-index: 2 !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-mob-board__skip-guided-msg.pl-msg-on:not([hidden]) {
        transform: translateX(-50%) translateY(0) scale(1) !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-mob-board.extras-mob-board--services-hidden .extras-mob-board__sect,
      #wizard-step-1 #calc-bloc-extras .extras-mob-board.extras-mob-board--services-hidden .extras-mob-board__slot,
      #wizard-step-1 #calc-bloc-extras .extras-mob-board.extras-mob-board--services-hidden .extras-mob-board__trad {
        display: none !important;
      }

      /* Frete após “Sim” nos extras: sem tracejado vermelho (continua obrigatório no botão Continuar) */
      body.pl-extras-want-yes-mob .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo {
        border: none !important;
        margin-top: 0 !important;
        box-shadow: none !important;
      }

      body.pl-extras-want-yes-mob .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo .calc-flow-msg.sum-frete-guided-msg {
        display: none !important;
      }

      /* Enquanto Sim/Não dos opcionais não foi respondido: frete sem guiado */
      body.pl-extras-mob-pending .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo {
        border: none !important;
        margin-top: 0 !important;
        box-shadow: none !important;
      }

      body.pl-extras-mob-pending .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo .calc-flow-msg.sum-frete-guided-msg {
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.campo-ativo::before,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo.campo-ativo::before,
      #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo.campo-ativo::before,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__steps .calc-flow-campo.campo-ativo::before,
      #wizard-step-1 #calc-bloc-extras > .calc-flow-campo.campo-ativo:not(.extras-mob-guided-step)::before {
        content: none !important;
      }

      /*
        Passo 3 miolo (mobile): contador − valor + + Confirmar roxo.
        Só interior; largura do container intacta.
      */
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo {
        margin-top: 2rem !important;
        padding: 0.75rem 0.85rem 0.85rem !important;
        box-sizing: border-box !important;
        border-radius: 12px !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .field {
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 0.5rem !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .field > label {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0.875rem !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        color: #334155 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 0.4rem !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        position: static !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper {
        display: grid !important;
        grid-template-columns: 2.5rem minmax(0, 1fr) 2.5rem !important;
        align-items: stretch !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 2.75rem !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: #f8fafc !important;
        color: #0f172a !important;
        font-size: 1.25rem !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__btn:active {
        background: #eef2ff !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper:has(input:disabled) .miolo-pages-stepper__btn {
        opacity: 0.4 !important;
        pointer-events: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__btn--plus {
        border-left: 1px solid #e2e8f0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__btn:not(.miolo-pages-stepper__btn--plus) {
        border-right: 1px solid #e2e8f0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__input,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap input[type="number"] {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 0.35rem !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: center !important;
        font-size: 1.125rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        -moz-appearance: textfield !important;
        appearance: textfield !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__input::-webkit-outer-spin-button,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper__input::-webkit-inner-spin-button,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap input[type="number"]::-webkit-outer-spin-button,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap input[type="number"]::-webkit-inner-spin-button {
        -webkit-appearance: none !important;
        margin: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline {
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.22rem !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        height: 2.35rem !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0.28rem 0.48rem !important;
        border: none !important;
        border-radius: 9px !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        color: #ffffff !important;
        background: #7c3aed !important;
        box-shadow: none !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline::before {
        content: none !important;
        display: none !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline::after {
        content: '' !important;
        flex: 0 0 12px !important;
        width: 12px !important;
        height: 12px !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M13 6l6 6-6 6' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:hover,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:active {
        background: #6d28d9 !important;
        color: #ffffff !important;
        border-color: transparent !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled:hover,
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled:active {
        background: #e5e7eb !important;
        color: #9ca3af !important;
        border: none !important;
        box-shadow: none !important;
        cursor: not-allowed !important;
        opacity: 1 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline:disabled::after {
        opacity: 0.45 !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14' stroke='%239ca3af' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M13 6l6 6-6 6' stroke='%239ca3af' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .input-confirm-wrap {
        gap: 0.5rem !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .calc-flow-msg:not([hidden]) {
        top: -1.65rem !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        font-size: 0.8125rem !important;
        white-space: nowrap !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .calc-flow-campo.campo-ativo .calc-flow-msg.pl-msg-on:not([hidden]) {
        transform: translateX(-50%) translateY(0) scale(1) !important;
      }

      @media (max-width: 360px) {
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .input-confirm-wrap {
          flex-wrap: wrap !important;
        }
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .miolo-pages-stepper {
          flex: 1 1 100% !important;
          width: 100% !important;
        }
        #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack .btn-guided-confirm.btn-guided-confirm--inline {
          flex: 1 1 100% !important;
          width: 100% !important;
          min-width: 0 !important;
        }
      }
    }

    /* display:flex acima vence o [hidden] padrão do UA — forçar sumir quando não é o passo ativo */
    .calc-flow-msg[hidden] {
      display: none !important;
    }

    /* (removido) badge externo do fluxo */

    .grid.grid-2 > .calc-flow-campo {
      margin-bottom: 0;
    }

    #wizard-step-1 .modelo-wizard-hint {
      display: none;
    }

    .field--capa-dura-locked .calc-dd__btn {
      pointer-events: none;
      cursor: default;
      opacity: 0.78;
    }

    .field--capa-dura-locked .calc-dd__chev {
      opacity: 0.35;
    }

    /* Papel da capa fixo (Triplex): tipo em destaque + texto auxiliar abaixo */
    .papel-capa-fixed-card[hidden] {
      display: none !important;
    }

    /* Brochura / Grampo / Capa dura: papel da capa = Triplex fixo (sem select) */
    #field-papel-capa-wrap:not(.field--papel-capa-triplex-fixo) #papel-capa-fixed-note {
      display: none !important;
    }

    #field-papel-capa-wrap.field--papel-capa-triplex-fixo #papel-capa-dd-root {
      display: none !important;
    }

    #field-papel-capa-wrap.field--papel-capa-triplex-fixo #papel-capa-fixed-note {
      display: flex !important;
    }

    .papel-capa-fixed-card {
      width: 100%;
      margin-top: 0.35rem;
      padding: 0.65rem 0.85rem;
      min-height: 3.25rem;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: #fff;
    }

    /* Miniaturas visuais da capa / formato: só no mobile (≤1023). Desktop permanece igual. */
    .pl-capa-opt-media,
    .pl-capa-fixed-check,
    .pl-fa-opt-media,
    .pl-fa-measure,
    .tamanho-tile__sub,
    .capa-esp-none-label__mob {
      display: none !important;
    }

    .papel-capa-fixed-card__body {
      display: contents;
    }

    .papel-capa-fixed-card__tipo {
      font-size: 0.98rem;
      font-weight: 700;
      color: var(--text);
      line-height: 1.3;
      letter-spacing: -0.01em;
    }

    .papel-capa-fixed-card__info {
      margin: 0.35rem 0 0;
      padding: 0;
      max-width: 22rem;
      font-size: 0.72rem;
      font-weight: 400;
      color: var(--muted);
      line-height: 1.4;
    }

    #field-guardas-wrap label {
      display: block;
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--text);
      margin-bottom: 0.35rem;
    }

    .guardas-select {
      width: 100%;
      max-width: 100%;
      padding: 0.62rem 0.8rem;
      font-size: 1rem;
      border-radius: var(--radius);
      border: 1px solid var(--border);
      background: var(--card);
      color: var(--text);
      font-family: inherit;
    }

    .label-like {
      display: block;
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--text);
      margin-bottom: 0.35rem;
    }

    .calc-dd {
      position: relative;
      width: 100%;
    }

    .calc-dd__btn {
      display: flex;
      align-items: center;
      gap: 0.65rem;
      width: 100%;
      padding: 0.55rem 0.75rem;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: var(--card);
      font: inherit;
      text-align: left;
      cursor: pointer;
      transition: border-color 0.15s, box-shadow 0.15s;
    }

    .calc-dd__btn:hover {
      border-color: var(--border);
    }

    .calc-dd__btn:disabled {
      opacity: 0.55;
      cursor: not-allowed;
    }

    .calc-dd.is-open .calc-dd__btn {
      border-color: #2563eb;
      box-shadow: 0 0 0 3px #f0f5ff;
    }

    .calc-dd__icon {
      flex: 0 0 auto;
      width: 2.25rem;
      height: 2.25rem;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 8px;
      background: #e8eefc;
      color: #2563eb;
    }

    .calc-dd__icon svg {
      width: 1.35rem;
      height: 1.35rem;
      display: block;
    }

    .calc-dd__main {
      flex: 1 1 auto;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.1rem;
    }

    .calc-dd__title {
      font-size: 0.95rem;
      font-weight: 700;
      color: var(--text);
      line-height: 1.25;
    }

    .calc-dd__sub {
      font-size: 0.78rem;
      color: var(--muted);
      line-height: 1.3;
    }

    .calc-dd__chev {
      flex: 0 0 auto;
      width: 0.5rem;
      height: 0.5rem;
      border-right: 2px solid var(--muted);
      border-bottom: 2px solid var(--muted);
      transform: rotate(45deg);
      margin-top: -0.25rem;
      transition: transform 0.2s;
    }

    .calc-dd.is-open .calc-dd__chev {
      transform: rotate(-135deg);
      margin-top: 0.15rem;
    }

    .calc-dd__panel {
      position: absolute;
      left: 0;
      right: 0;
      top: calc(100% + 4px);
      z-index: 50;
      max-height: min(70vh, 22rem);
      overflow-y: auto;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: var(--card);
      box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
    }

    .calc-dd__list {
      list-style: none;
      margin: 0;
      padding: 0.35rem;
    }

    .calc-dd__opt {
      display: flex;
      align-items: center;
      gap: 0.65rem;
      width: 100%;
      padding: 0.55rem 0.6rem;
      border: none;
      border-radius: 8px;
      background: transparent;
      font: inherit;
      text-align: left;
      cursor: pointer;
      color: var(--text);
    }

    .calc-dd__opt:hover,
    .calc-dd__opt:focus-visible {
      background: #f0f5ff;
      outline: none;
    }

    .calc-dd__opt.is-active {
      background: #e0e7ff;
    }

    .calc-dd.calc-dd--choice .calc-dd__btn {
      display: none;
    }

    .calc-dd.calc-dd--choice .calc-dd__panel {
      position: static;
      left: auto;
      right: auto;
      top: auto;
      z-index: auto;
      max-height: none;
      overflow: visible;
      border: none;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      display: block !important;
      padding: 0;
      margin-top: 0.2rem;
    }

    .calc-dd.calc-dd--choice .calc-dd__list {
      display: grid;
      gap: 0.45rem;
      padding: 0;
    }

    .calc-dd.calc-dd--choice .calc-dd__opt {
      min-height: 42px;
      justify-content: center;
      text-align: center;
      border: 1px solid var(--border);
      background: #fff;
      border-radius: var(--radius);
      font-weight: 600;
    }

    .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__sub {
      display: none;
    }

    .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
      border: 1px solid #2563eb;
      background: #f0f5ff;
      box-shadow: none;
      color: #333333;
    }

    .calc-dd.calc-dd--choice .calc-dd__opt.is-active .calc-dd__title {
      color: #000000;
      font-weight: 700;
    }

    .calc-dd__opt .calc-dd__icon {
      width: 2rem;
      height: 2rem;
    }

    .calc-dd__opt .calc-dd__opt-text {
      flex: 1;
      min-width: 0;
    }

    /* Evita título e frase “colados” (ex.: Brochura + descrição) */
    .calc-dd__opt-text > .calc-dd__title + .calc-dd__sub::before,
    .calc-dd__main > .calc-dd__title + .calc-dd__sub::before {
      content: ' ';
    }

    .calc-dd__opt .calc-dd__title {
      font-size: 0.9rem;
    }

    .calc-dd__opt .calc-dd__sub {
      font-size: 0.75rem;
    }

    .calc-dd__list--check {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .calc-dd__list--check > li {
      margin: 0;
      padding: 0;
    }

    .calc-dd__check-row {
      display: flex;
      align-items: center;
      gap: 0.55rem;
      width: 100%;
      margin: 0;
      padding: 0.55rem 0.6rem;
      border-radius: 8px;
      cursor: pointer;
      font-size: 0.88rem;
      font-weight: 500;
      color: var(--text);
      border: 1px solid transparent;
      box-sizing: border-box;
      transition: background 0.15s ease, border-color 0.15s ease;
    }

    .calc-dd__check-row:hover {
      background: #f1f5f9;
    }

    .calc-dd__check-row input[type="checkbox"] {
      flex-shrink: 0;
      width: 1rem;
      height: 1rem;
      margin: 0;
      accent-color: #4f8cff;
    }

    .calc-dd__panel--multi {
      padding: 0;
      max-height: min(75vh, 26rem);
    }

    .calc-dd__multi-body {
      padding: 0.5rem 0.65rem 0.35rem;
      max-height: 18rem;
      overflow-y: auto;
    }

    .calc-dd__multi-foot {
      padding: 0.5rem 0.65rem 0.65rem;
      border-top: 1px solid var(--border);
      background: var(--card);
      border-radius: 0 0 10px 10px;
    }

    .calc-dd__multi-foot .btn-primary {
      width: 100%;
    }

    .calc-dd-swatch {
      flex: 0 0 auto;
      width: 1.75rem;
      height: 2.25rem;
      border-radius: 6px;
      border: 1px solid rgba(15, 23, 42, 0.12);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
      align-self: center;
    }

    .calc-dd__btn .calc-dd-swatch {
      width: 1.65rem;
      height: 1.65rem;
    }

    .calc-dd-swatch--neutral {
      background: linear-gradient(145deg, #f1f5f9, #e2e8f0);
    }

    .calc-dd-swatch--paper75 {
      background: linear-gradient(145deg, #ffffff, #f8fafc);
      border-color: var(--border);
    }

    .calc-dd-swatch--paper80 {
      background: linear-gradient(145deg, #faf6ed, #f0e6d2);
      border-color: #d6c4a8;
    }

    .calc-dd-swatch--paper90 {
      background: linear-gradient(145deg, #f5f2ea, #e8dfd0);
      border-color: #c9b89a;
    }

    .calc-dd-swatch--couch {
      background: linear-gradient(145deg, #f8fafc, #e2e8f0 40%, #dbeafe);
      border-color: #94a3b8;
    }

    label {
      display: block;
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--text);
      margin-bottom: 0.35rem;
    }

    .field { margin-bottom: 0.85rem; }
    .field:last-child { margin-bottom: 0; }

    input[type="text"],
    input[type="number"],
    input[type="password"],
    select {
      width: 100%;
      padding: 0.55rem 0.65rem;
      border: 1px solid var(--border);
      border-radius: 8px;
      font-size: 0.95rem;
      background: var(--card);
      color: var(--text);
    }

    /* Remove setas (spinner) dos campos numéricos */
    input[type="number"]::-webkit-outer-spin-button,
    input[type="number"]::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }

    input[type="number"] {
      -moz-appearance: textfield;
      appearance: textfield;
    }

    input:focus, select:focus {
      outline: none;
      border-color: #2563eb;
      box-shadow: 0 0 0 2px #f0f5ff;
      background: var(--card);
    }

    .orient {
      display: flex;
      gap: 0.5rem;
      flex-wrap: wrap;
    }

    .orient button {
      flex: 1;
      min-width: 120px;
      padding: 0.55rem 0.75rem;
      border-radius: var(--radius);
      border: 1px solid var(--border);
      background: #fff;
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--text);
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.55rem;
      transition: background 0.15s, border-color 0.15s, color 0.15s;
    }

    .orient button:hover:not([aria-pressed="true"]),
    .orient button:focus-visible:not([aria-pressed="true"]) {
      background: #f0f5ff;
      outline: none;
    }

    .orient button[aria-pressed="true"] {
      background: #e0ffed;
      border: 1px solid #0088cc;
      color: #333333;
      font-weight: 700;
      box-shadow: none;
    }

    .orient.modelo-pick button:disabled,
    .orient.modelo-pick button[aria-disabled="true"] {
      opacity: 0.58;
      cursor: not-allowed;
      background: #f1f5f9;
      color: var(--muted);
      border-color: #e2e8f0;
      box-shadow: none;
    }

    /* Layout legado do picker simples (sem cards). */
    #card-modelo .orient.modelo-pick:not(.modelo-pick--cards) {
      margin-bottom: 0;
      width: 100%;
      box-sizing: border-box;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.5rem;
    }

    #card-modelo .orient.modelo-pick:not(.modelo-pick--cards) button {
      flex: none;
      min-width: 0;
      width: 100%;
    }

    .orient-book {
      position: relative;
      flex: 0 0 auto;
      display: inline-block;
      border: 1.5px solid #94a3b8;
      border-radius: 3px;
      background: linear-gradient(180deg, #fff, #f8fafc);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.75);
    }

    .orient-book::before {
      content: '';
      position: absolute;
      left: 3px;
      top: 2px;
      bottom: 2px;
      width: 1px;
      background: #cbd5e1;
    }

    .orient-book--portrait {
      width: 16px;
      height: 22px;
    }

    .orient-book--landscape {
      width: 22px;
      height: 16px;
    }

    .orient button[aria-pressed="true"] .orient-book {
      border-color: #0088cc;
      background: linear-gradient(180deg, #ecfdf3, #d1fae5);
    }

    .toggles {
      display: flex;
      flex-direction: column;
      gap: 0.6rem;
    }

    .toggle-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      padding: 0.45rem 0;
      border-bottom: 1px solid var(--border);
      font-size: 0.9rem;
    }

    .toggle-row:last-child { border-bottom: none; }

    .toggle-label-stack {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 0.1rem;
      min-width: 0;
      flex: 1 1 auto;
    }

    .toggle-label-stack__tit {
      font-weight: 600;
      color: var(--text);
      line-height: 1.25;
    }

    .toggle-label-stack__sub {
      font-size: 0.72rem;
      font-weight: 500;
      color: var(--muted);
      line-height: 1.3;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .toggle-row--extra-stack .toggle-label-stack {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: baseline;
        gap: 0.25rem;
      }

      .toggle-row--extra-stack .toggle-label-stack__tit,
      .toggle-row--extra-stack .toggle-label-stack__sub {
        white-space: nowrap;
      }
    }

    .switch {
      position: relative;
      width: 46px;
      height: 26px;
      flex-shrink: 0;
    }

    .switch input {
      opacity: 0;
      width: 0;
      height: 0;
    }

    .slider {
      position: absolute;
      inset: 0;
      background: #cbd5e1;
      border-radius: 999px;
      transition: background 0.2s;
      cursor: pointer;
    }

    .slider::before {
      content: "";
      position: absolute;
      height: 20px;
      width: 20px;
      left: 3px;
      bottom: 3px;
      background: #fff;
      border-radius: 50%;
      transition: transform 0.2s;
      box-shadow: 0 1px 2px rgba(0,0,0,.15);
    }

    .switch input:checked + .slider { background: #2563eb; }
    .switch input:checked + .slider::before { transform: translateX(20px); }

    .hint {
      font-size: 0.8rem;
      color: var(--muted);
      margin-top: 0.3rem;
    }

    .warn {
      font-size: 0.8rem;
      color: var(--danger);
      margin-top: 0.35rem;
      font-weight: 500;
    }

    .muted { opacity: 0.75; }

    /* CTA “ATIVE O SOM” nos vídeos “Veja o vídeo” (mesmo visual do hero) */
    .pl-video-sound-wrap {
      position: relative;
      display: block;
      width: 100%;
      max-width: 100%;
      line-height: 0;
      isolation: isolate;
    }

    .pl-video-sound-wrap[hidden] {
      display: none !important;
    }

    .pl-video-sound-wrap > video {
      display: block;
      width: 100%;
      max-width: 100%;
    }

    .pl-video-sound-cta.pl-hero-player__sound-cta {
      position: absolute;
      top: 10px;
      right: 10px;
      z-index: 6;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      max-width: calc(100% - 20px);
      margin: 0;
      padding: 9px 14px 9px 10px;
      border: 1px solid rgba(255, 255, 255, 0.55);
      border-radius: 999px;
      background:
        linear-gradient(135deg, rgba(255, 60, 60, 0.95) 0%, rgba(220, 0, 0, 0.92) 55%, rgba(180, 0, 0, 0.94) 100%);
      box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.28) inset,
        0 0 0 2px rgba(255, 0, 0, 0.25),
        0 10px 28px rgba(185, 0, 0, 0.45),
        0 0 22px rgba(255, 40, 40, 0.55);
      color: #fff;
      font: 750 12.5px/1.2 var(--font-primary), system-ui, sans-serif;
      letter-spacing: 0.01em;
      cursor: pointer;
      pointer-events: auto;
      animation: pl-hero-sound-cta-glow 1.8s ease-in-out infinite;
    }

    .pl-video-sound-cta.pl-hero-player__sound-cta[hidden] {
      display: none !important;
    }

    .pl-video-sound-cta .pl-hero-player__sound-cta-ico {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.95);
      border: 1px solid rgba(255, 255, 255, 0.9);
      color: #e10600;
      animation: pl-hero-sound-pulse 1.4s ease-in-out infinite;
    }

    .pl-video-sound-cta .pl-hero-player__sound-cta-ico svg {
      display: block;
    }

    .pl-video-sound-cta .pl-hero-player__sound-wave--1 {
      animation: pl-hero-sound-wave 1.1s ease-in-out infinite;
    }

    .pl-video-sound-cta .pl-hero-player__sound-wave--2 {
      animation: pl-hero-sound-wave 1.1s ease-in-out infinite 0.18s;
    }

    .pl-video-sound-cta .pl-hero-player__sound-cta-txt {
      white-space: nowrap;
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    }

    @media (max-width: 900px) {
      .pl-video-sound-cta.pl-hero-player__sound-cta {
        top: 8px;
        right: 8px;
        padding: 7px 10px 7px 8px;
        gap: 6px;
        font-size: 11px;
      }
      .pl-video-sound-cta .pl-hero-player__sound-cta-ico {
        width: 24px;
        height: 24px;
      }
    }

    @keyframes pl-hero-sound-cta-glow {
      0%, 100% {
        box-shadow:
          0 0 0 1px rgba(255, 255, 255, 0.28) inset,
          0 0 0 2px rgba(255, 0, 0, 0.25),
          0 10px 28px rgba(185, 0, 0, 0.45),
          0 0 14px rgba(255, 40, 40, 0.4);
      }
      50% {
        box-shadow:
          0 0 0 1px rgba(255, 255, 255, 0.4) inset,
          0 0 0 2px rgba(255, 80, 80, 0.45),
          0 12px 32px rgba(185, 0, 0, 0.55),
          0 0 26px rgba(255, 50, 50, 0.7);
      }
    }

    @keyframes pl-hero-sound-pulse {
      0%, 100% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
        transform: scale(1);
      }
      50% {
        box-shadow: 0 0 0 9px rgba(255, 255, 255, 0);
        transform: scale(1.08);
      }
    }

    @keyframes pl-hero-sound-wave {
      0%, 100% { opacity: 0.3; }
      50% { opacity: 1; }
    }

    .selection-summary .muted {
      opacity: 0.85;
    }

    .modal-backdrop {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 1000;
      align-items: center;
      justify-content: center;
      padding: 1.25rem;
      background: rgba(15, 23, 42, 0.45);
      backdrop-filter: blur(4px);
    }

    .modal-backdrop.is-open {
      display: flex;
    }

    /* Desktop: link “o que é…” sob cada modelo + popup da imagem */
    .modelo-card-slot {
      display: flex;
      flex-direction: column;
      min-width: 0;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      html:not(.is-mobile-ref) .modelo-card-slot {
        height: 100%;
      }

      html:not(.is-mobile-ref) .modelo-card-slot .modelo-card {
        flex: 1 1 auto;
      }
    }

    .modelo-info-link {
      display: none;
    }

    /* Mobile: slot relativo — NÃO usar height:100% (estica cada card e some os outros). */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      html.is-mobile-ref .modelo-pick--cards .modelo-card-slot,
      .modelo-pick--cards .modelo-card-slot,
      html.is-mobile-ref #wizard-step-1 .modelo-card-slot,
      #wizard-step-1 .modelo-card-slot,
      #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card-slot {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        flex: 0 0 auto !important;
      }

      html.is-mobile-ref .modelo-pick--cards .modelo-card-slot .modelo-card,
      .modelo-pick--cards .modelo-card-slot .modelo-card,
      #card-modelo.card--modelo-qtd .modelo-card-slot .modelo-card {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #card-modelo.card--modelo-qtd .orient.modelo-pick--cards,
      #card-modelo.card--modelo-qtd .orient.modelo-pick.modelo-pick--cards {
        height: auto !important;
        min-height: 0 !important;
        align-content: flex-start !important;
      }

      #card-modelo.card--modelo-qtd .orient.modelo-pick--cards > .modelo-card-slot > .modelo-card,
      #card-modelo.card--modelo-qtd .orient.modelo-pick--cards button.modelo-card {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
      }
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      html:not(.is-mobile-ref) .modelo-info-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.45rem;
        align-self: center;
        width: auto;
        max-width: 100%;
        margin: 12px auto 4px;
        padding: 0.55rem 0.95rem;
        border: 2px solid #2563eb;
        border-radius: 10px;
        background: #eff6ff;
        box-shadow: 0 1px 2px rgba(37, 99, 235, 0.12);
        font-family: inherit;
        font-size: 0.8125rem;
        font-weight: 700;
        letter-spacing: 0.01em;
        line-height: 1.2;
        color: #1e40af;
        text-decoration: none;
        cursor: pointer;
        text-align: center;
        white-space: nowrap;
        transition:
          color 0.15s ease,
          background 0.15s ease,
          border-color 0.15s ease,
          box-shadow 0.15s ease,
          transform 0.15s ease;
      }

      html:not(.is-mobile-ref) .modelo-info-link::before {
        content: '?';
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 1.2rem;
        height: 1.2rem;
        border-radius: 999px;
        border: 0;
        background: #2563eb;
        color: #fff;
        font-size: 0.72rem;
        font-weight: 800;
        line-height: 1;
        flex: 0 0 auto;
      }

      html:not(.is-mobile-ref) .modelo-info-link:hover {
        color: #fff;
        background: #2563eb;
        border-color: #1d4ed8;
        box-shadow: 0 4px 14px rgba(37, 99, 235, 0.28);
        transform: translateY(-1px);
      }

      html:not(.is-mobile-ref) .modelo-info-link:hover::before {
        background: #fff;
        color: #2563eb;
      }

      html:not(.is-mobile-ref) .modelo-info-link:active {
        transform: translateY(0);
        box-shadow: 0 1px 3px rgba(37, 99, 235, 0.2);
      }

      html:not(.is-mobile-ref) .modelo-info-link:focus-visible {
        outline: 2px solid #1d4ed8;
        outline-offset: 3px;
      }
    }

    /* ============================================================
       DESKTOP — Cards de tipo de capa (redesign minimalista, CSS only)
       Slot vira o card branco: imagem grande + título + descrição +
       botão "Selecionar" (gradiente) + botão "Veja o vídeo".
       ============================================================ */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 22px !important;
        align-items: stretch !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
        background: #ffffff !important;
        border: 1px solid #e2e2e7 !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
        transition: box-shadow 0.35s ease, border-color 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
        will-change: transform;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:hover {
        transform: translateY(-4px) scale(1.025) !important;
        box-shadow: 0 14px 32px rgba(15, 23, 42, 0.12) !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:has(.modelo-card[aria-pressed="true"]) {
        border-color: #22C55E !important;
        background: #ECFDF5 !important;
        box-shadow: 0 0 0 1px #22C55E, 0 8px 24px rgba(34, 197, 94, 0.12) !important;
      }

      /* Card interno vira transparente: o slot é o card visual */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
        text-align: center !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card:hover:not(:disabled),
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card[aria-pressed="true"] {
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__badge,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks {
        display: none !important;
      }

      /* Área da imagem — mesma altura nos 3 cards, sem corte estranho */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        aspect-ratio: 1.08 / 1 !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: hidden !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--desk {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        object-fit: contain !important;
        object-position: center !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico .modelo-card__ico-img--mob {
        display: none !important;
      }

      /* Conteúdo */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        margin: 0 !important;
        padding: 20px 24px 0 !important;
        text-align: center !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name {
        width: 100% !important;
        font-size: clamp(21px, 2vw, 28px) !important;
        font-weight: 800 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.01em !important;
        color: #080a14 !important;
        margin: 0 0 12px !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: unset !important;
      }

      /* Descrição — texto novo via pseudo-elemento (CSS only) */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__desc {
        display: block !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
        margin: 0 auto 16px !important;
        max-width: 330px !important;
        min-height: 48px !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__desc::before {
        display: block !important;
        font-size: clamp(14px, 1.12vw, 16px) !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        color: #686a78 !important;
        text-align: center !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__desc::before {
        content: 'Leve, econômica e ideal para maioria dos projetos.' !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__desc::before {
        content: 'Mais resistência e durabilidade para obras especiais.' !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__desc::before {
        content: 'Perfeita para materiais com menos páginas.' !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila .modelo-card__desc::before {
        content: 'Ideal para escolas, cursos e treinamentos.' !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda .modelo-card__desc::before {
        content: 'Organize ideias, planos e conquiste seus objetivos.' !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo .modelo-card__desc::before {
        content: 'Destaque seus produtos e serviços com qualidade.' !important;
      }

      /* Botão "Selecionar" — gradiente roxo, largura total */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
        position: static !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: auto 24px 12px !important;
        height: 46px !important;
        border-radius: 7px !important;
        background: linear-gradient(90deg, #5520cc 0%, #6920d5 100%) !important;
        box-shadow: 0 6px 16px rgba(85, 32, 204, 0.22) !important;
        pointer-events: none !important;
        z-index: 1 !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio::after {
        display: none !important;
        content: none !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__select-lbl {
        font-size: 0 !important;
        color: transparent !important;
        line-height: 0 !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::after {
        content: 'Selecionar este modelo' !important;
        display: inline-block !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        color: #ffffff !important;
        letter-spacing: 0.01em !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__select-lbl::after {
        content: 'Selecionado ✓' !important;
        color: #ffffff !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] > .modelo-card__select-hint {
        background: #22C55E !important;
        box-shadow: 0 6px 16px rgba(34, 197, 94, 0.22) !important;
      }

      /* Botão "Veja o vídeo" — texto novo via pseudo-elementos (CSS only) */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        align-self: stretch !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 24px 16px !important;
        padding: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        font-size: 0 !important;
        color: transparent !important;
        white-space: nowrap !important;
        transform: none !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link::before {
        content: '▶' !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 26px !important;
        height: 26px !important;
        padding-left: 2px !important;
        box-sizing: border-box !important;
        border: none !important;
        border-radius: 50% !important;
        background: #5520cc !important;
        color: #ffffff !important;
        font-size: 10px !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        flex: 0 0 auto !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link::after {
        content: 'Veja o vídeo' !important;
        display: inline-block !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        color: #5520cc !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link:hover {
        background: transparent !important;
        color: transparent !important;
        border: none !important;
        box-shadow: none !important;
        transform: none !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link:hover::before {
        background: #4a1bb5 !important;
        color: #ffffff !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link:hover::after {
        color: #4a1bb5 !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link:active {
        transform: none !important;
        box-shadow: none !important;
      }

      /* ------------------------------------------------------------
         Escala proporcional à largura do card (referência: 336px)
         Mantém exatamente as proporções da foto em qualquer largura.
         ------------------------------------------------------------ */
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot {
        container-type: inline-size;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body {
        padding: 5.6cqw 7cqw 0 !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name {
        font-size: 8.3cqw !important;
        margin: 0 0 3.6cqw !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__desc {
        margin: 0 auto 5cqw !important;
        max-width: 90cqw !important;
        min-height: 14.2cqw !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__desc::before {
        font-size: 4.9cqw !important;
        line-height: 1.45 !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
        height: 13cqw !important;
        margin: auto 7cqw 3.8cqw !important;
        border-radius: 8px !important;
        box-shadow: 0 4px 12px rgba(85, 32, 204, 0.18) !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] > .modelo-card__select-hint {
        box-shadow: 0 4px 12px rgba(34, 197, 94, 0.18) !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::after {
        font-size: 4.8cqw !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link {
        height: auto !important;
        min-height: 0 !important;
        margin: 0 7cqw 5.4cqw !important;
        border-radius: 0 !important;
        gap: 2.4cqw !important;
        background: transparent !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link::before {
        width: 7.7cqw !important;
        height: 7.7cqw !important;
        font-size: 3cqw !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot .modelo-info-link::after {
        font-size: 4.5cqw !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__ico .modelo-card__ico-img--desk,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__ico .modelo-card__ico-img--desk,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__ico .modelo-card__ico-img--desk,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila .modelo-card__ico .modelo-card__ico-img--desk,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda .modelo-card__ico .modelo-card__ico-img--desk,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo .modelo-card__ico .modelo-card__ico-img--desk {
        object-fit: contain !important;
      }
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-brochura .modelo-card__ico,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-dura .modelo-card__ico,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-grampo .modelo-card__ico,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-apostila .modelo-card__ico,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-agenda .modelo-card__ico,
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-catalogo .modelo-card__ico {
        background: #ffffff !important;
        background-color: #ffffff !important;
      }

      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:has(.modelo-card[aria-pressed="true"]),
      html:not(.is-mobile-ref) #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot:has(.modelo-card[aria-pressed="true"]):hover {
        border-color: #22C55E !important;
        background: #ECFDF5 !important;
        box-shadow: 0 0 0 2px #22C55E, 0 8px 24px rgba(34, 197, 94, 0.12) !important;
      }
    }

    /* Apostila / Agenda / Catálogo: chrome extra só com html.pl-tipo-novo (livros 355/330/259 intactos). */
    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"][hidden],
    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"][hidden] {
      display: none !important;
    }
    @media (min-width: 1024px) {
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-wrap:not([hidden]),
      html.pl-tipo-agenda:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-bloqueado) .pl-agenda-capa-wrap:not([hidden]) {
        display: block;
        margin: 10px 0 0;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-agenda-capa-wrap[hidden],
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-wrap[hidden],
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-shrink-tipo-wrap[hidden] {
        display: none !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-wrap__lbl,
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-agenda-capa-wrap__lbl {
        margin: 0 0 8px;
        font-size: 0.82rem;
        font-weight: 700;
        color: #334155;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-wrap__opts {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-chip {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 6px 10px 6px 6px;
        border: 1px solid #d8d8e2;
        border-radius: 999px;
        background: #fff;
        cursor: pointer;
        font-size: 0.78rem;
        font-weight: 650;
        color: #334155;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-chip.is-on {
        border-color: #5520cc;
        box-shadow: 0 0 0 1px #5520cc;
        color: #5520cc;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-chip__dot {
        width: 16px;
        height: 16px;
        border-radius: 50%;
        border: 1px solid rgba(15, 23, 42, 0.18);
        display: inline-block;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-chip__dot[data-cor="preto"] { background: #111827; }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-chip__dot[data-cor="branco"] { background: #f8fafc; }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-acab-cor-chip__dot[data-cor="cristal"] { background: linear-gradient(135deg, #e2e8f0, #94a3b8); }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-shrink-tipo-wrap {
        display: flex;
        flex-wrap: wrap;
        gap: 12px 18px;
        margin: 8px 0 0 2px;
        font-size: 0.8rem;
        color: #334155;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .pl-shrink-tipo-wrap__opt {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        cursor: pointer;
      }
      html:not(.pl-tipo-novo) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind,
      html:not(.pl-tipo-novo) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col {
        display: none !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot:not(.extras-mob-board__slot--shrink-ind):not(.extras-mob-board__slot--shrink-col),
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .pl-shrink-tipo-wrap,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip--desktop {
        display: none !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col {
        display: contents !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind > label.toggle-row {
        order: 10 !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col > label.toggle-row {
        order: 11 !important;
        border-bottom: none !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board--services-hidden .extras-mob-board__slot--shrink-ind,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board--services-hidden .extras-mob-board__slot--shrink-col {
        display: contents !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .pl-extras-shrink-price {
        display: block !important;
        margin-top: 2px;
        font-weight: 700 !important;
        color: #5b21b6 !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind > label.toggle-row .toggle-label-stack,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col > label.toggle-row .toggle-label-stack {
        flex-direction: column !important;
        align-items: flex-start !important;
        flex-wrap: wrap !important;
        gap: 0.12rem !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="orient"],
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="orelha"],
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="guardas"],
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="tipoCapa"][hidden],
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="acabCor"][hidden],
      html.pl-tipo-novo:not(.is-mobile-ref) .tamanho-modo__opt--custom,
      html.pl-tipo-novo:not(.is-mobile-ref) #tamanho-custom-wrap {
        display: none !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab,
      html.pl-tipo-novo:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      }
      html.pl-tipo-catalogo:not(.is-mobile-ref) #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list,
      html.pl-tipo-catalogo:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list,
      html:not(.is-mobile-ref) #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list:has(> li:only-child),
      html:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list:has(> li:only-child) {
        grid-template-columns: minmax(0, 1fr) !important;
      }
      /* Colado 1-col: foto ~310px. O zoom global (88×66 × 3.2) colapsa a caixa no hover e o mouse perde :hover → pisca. */
      html.pl-tipo-catalogo:not(.is-mobile-ref) #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .pl-fa-opt-media,
      html.pl-tipo-catalogo:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .pl-fa-opt-media {
        transition:
          transform 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          box-shadow 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          filter 1.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
      }
      html.pl-tipo-catalogo:not(.is-mobile-ref) #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile .pl-fa-opt-media:hover,
      html.pl-tipo-catalogo:not(.is-mobile-ref) #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .pl-fa-opt-media:hover,
      html.pl-tipo-catalogo:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile .pl-fa-opt-media:hover,
      html.pl-tipo-catalogo:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt .pl-fa-opt-media:hover {
        transform: none !important;
      }
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab,
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      }
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"],
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] {
        align-self: start;
        min-height: 0;
        height: auto;
      }
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .fa-col-head__sub,
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .fa-col-head__sub,
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__lbl,
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__lbl {
        display: none !important;
      }
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__opts,
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__opts {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 8px;
        width: 100%;
      }
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-chip,
      html.pl-tipo-apostila.pl-acab-cor-on:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-chip {
        width: 100%;
        justify-content: flex-start;
        box-sizing: border-box;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap:not([hidden]) {
        margin-top: 0;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-bloqueado) .pl-agenda-capa-wrap:not([hidden]) {
        margin-top: 0;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) .pl-agenda-capa-media--flexivel {
        background-image: url('/assets/img/mobile/capas/agenda-capa-flexivel.webp?v=20260923') !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) .pl-agenda-capa-media--dura {
        background-image: url('/assets/img/mobile/capas/agenda-capa-dura.webp?v=20260923') !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .orient-options-layout,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .orient-options-layout,
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .pl-agenda-capa-wrap,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .pl-agenda-capa-wrap,
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .orient,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .orient,
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .fa-col-head__sub,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-ativo):not(.campo-ok) .fa-col-head__sub {
        display: none !important;
      }
      /* Agenda: cores embaixo das opções do card de acabamento, sem nova seção. */
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"],
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] {
        display: flex;
        flex-direction: column;
        margin: 10px 0 0;
        padding: 10px 2px 0;
        border: 0;
        border-top: 1px solid #e8e8ef;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        min-height: 0;
        gap: 8px;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"].campo-ativo > .calc-flow-campo[data-flow-key="acabCor"],
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"].campo-ativo > .calc-flow-campo[data-flow-key="acabCor"] {
        pointer-events: auto !important;
        opacity: 1 !important;
        filter: none !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .fa-col-head,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .fa-col-head {
        display: none !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__lbl,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__lbl {
        margin: 0 0 6px;
        font-size: 0.72rem;
        font-weight: 650;
        letter-spacing: 0.01em;
        color: #64748b;
        text-align: center;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__opts,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__opts {
        display: flex;
        flex-wrap: nowrap;
        justify-content: stretch;
        gap: 8px;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-chip,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-chip {
        flex: 1 1 0;
        justify-content: center;
        min-width: 0;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"]:has(> .calc-flow-campo[data-flow-key="acabCor"].campo-ativo),
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"]:has(> .calc-flow-campo[data-flow-key="acabCor"].campo-ativo) {
        overflow: visible !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"]:has(> .calc-flow-campo[data-flow-key="acabCor"].campo-ativo) > .calc-flow-msg,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"]:has(> .calc-flow-campo[data-flow-key="acabCor"].campo-ativo) > .calc-flow-msg {
        display: none !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"].campo-ativo,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"].campo-ativo {
        margin-top: 8px !important;
        margin-bottom: 40px !important;
        padding-bottom: 0 !important;
        overflow: visible !important;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"].campo-ativo::before,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"].campo-ativo::before {
        inset: -6px -2px;
        border-radius: 12px;
      }
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .calc-flow-msg,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .calc-flow-msg,
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"].campo-ativo .calc-flow-msg:not([hidden]),
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"].campo-ativo .calc-flow-msg:not([hidden]),
      html.pl-tipo-agenda:not(.is-mobile-ref) #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .calc-flow-msg.pl-msg-on,
      html.pl-tipo-agenda:not(.is-mobile-ref) #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo[data-flow-key="acabamento"] > .calc-flow-campo[data-flow-key="acabCor"] .calc-flow-msg.pl-msg-on {
        position: absolute !important;
        top: auto !important;
        bottom: -28px !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        white-space: nowrap;
        font-size: 14px;
        z-index: 3;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm:disabled,
      html.pl-tipo-novo:not(.is-mobile-ref) #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm:disabled:hover,
      html.pl-tipo-novo:not(.is-mobile-ref) #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm:disabled:active {
        background: #c4c4c4 !important;
        color: #ffffff !important;
        cursor: not-allowed !important;
        box-shadow: none !important;
        filter: none !important;
      }
      html.pl-tipo-novo:not(.is-mobile-ref) #card-modelo.card--modelo-qtd #calc-bloc-tiragem #qtd-aviso:not([hidden]) {
        display: block !important;
        margin: 0 !important;
        font-size: 0.82rem !important;
        font-weight: 600 !important;
        color: #b42318 !important;
      }
    }

    @media (max-width: 1023px) {
      html:not(.pl-tipo-novo) #calc-bloc-extras .extras-mob-board__slot--shrink-ind,
      html:not(.pl-tipo-novo) #calc-bloc-extras .extras-mob-board__slot--shrink-col {
        display: none !important;
      }
      html.pl-tipo-novo #calc-bloc-extras .extras-mob-board__slot:not(.extras-mob-board__slot--shrink-ind):not(.extras-mob-board__slot--shrink-col),
      html.pl-tipo-novo #calc-bloc-extras .extras-mob-board__trad,
      html.pl-tipo-novo #calc-bloc-extras .pl-shrink-tipo-wrap {
        display: none !important;
      }
      html.pl-tipo-novo #calc-bloc-extras .pl-extras-shrink-price {
        display: block;
        font-weight: 700;
        color: #5b21b6;
      }
      html.pl-tipo-novo #wizard-step-1 #calc-bloc-extras .extras-mob-board.extras-mob-board--services-hidden .extras-mob-board__slot--shrink-ind,
      html.pl-tipo-novo #wizard-step-1 #calc-bloc-extras .extras-mob-board.extras-mob-board--services-hidden .extras-mob-board__slot--shrink-col {
        display: flex !important;
      }

      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .toggles.extras-mob-board {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-wrap {
        margin: 0 0 1.15rem !important;
        padding: 0 0 0.35rem !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-prompt,
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-prompt.extras-mob-prompt-ativo {
        gap: 0.75rem !important;
        margin-bottom: 0.35rem !important;
        padding-bottom: 0.95rem !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opts {
        justify-content: center !important;
        align-items: center !important;
        gap: 1.75rem !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind,
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col {
        display: flex !important;
        grid-row: 2 !important;
        aspect-ratio: auto !important;
        min-height: 9.5rem !important;
        height: auto !important;
        align-self: stretch !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind {
        grid-column: 1 !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col {
        grid-column: 2 !important;
        border-right: none !important;
      }
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-ind > label.toggle-row,
      html.pl-tipo-novo #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--shrink-col > label.toggle-row {
        justify-content: flex-start !important;
        gap: 0.45rem !important;
        padding: 0.7rem 0.45rem 0.55rem !important;
      }
      html.pl-tipo-catalogo #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list,
      html.pl-tipo-catalogo #orc-form.layout-shell #wizard-step-1 .calc-flow-campo.fa-col--acab #acabamento-dd-list {
        grid-template-columns: minmax(0, 1fr) !important;
      }
      html.pl-tipo-novo .calc-flow-campo[data-flow-key="orient"],
      html.pl-tipo-novo .calc-flow-campo[data-flow-key="orelha"],
      html.pl-tipo-novo .calc-flow-campo[data-flow-key="guardas"],
      html.pl-tipo-novo .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-tipo-novo #wizard-step-1 .calc-flow-campo[data-flow-key="orient"],
      html.pl-tipo-novo #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"],
      html.pl-tipo-novo #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"],
      html.pl-tipo-novo #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-tipo-novo #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="orelha"],
      html.pl-tipo-novo #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="guardas"],
      html.pl-tipo-novo #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-tipo-novo .tamanho-modo__opt--custom,
      html.pl-tipo-novo #tamanho-custom-wrap {
        display: none !important;
      }
      html.pl-tipo-novo .calc-flow-campo[data-flow-key="tipoCapa"][hidden],
      html.pl-tipo-novo .calc-flow-campo[data-flow-key="acabCor"][hidden],
      html.pl-tipo-novo .pl-agenda-capa-wrap[hidden],
      html.pl-tipo-novo .pl-acab-cor-wrap[hidden] {
        display: none !important;
      }
      html.pl-tipo-novo .pl-acab-cor-wrap:not([hidden]),
      html.pl-tipo-agenda .calc-flow-campo[data-flow-key="tipoCapa"]:not(.campo-bloqueado) .pl-agenda-capa-wrap:not([hidden]) {
        display: block;
        margin: 8px 0 0;
      }
      html.pl-tipo-agenda .pl-agenda-capa-media--flexivel {
        background-image: url('/assets/img/mobile/capas/agenda-capa-flexivel.webp?v=20260923') !important;
      }
      html.pl-tipo-agenda .pl-agenda-capa-media--dura {
        background-image: url('/assets/img/mobile/capas/agenda-capa-dura.webp?v=20260923') !important;
      }
      html.pl-tipo-apostila .calc-flow-campo[data-flow-key="acabCor"] .pl-acab-cor-wrap__lbl,
      html.pl-tipo-apostila .calc-flow-campo[data-flow-key="acabCor"] .fa-col-head__sub {
        display: none !important;
      }
      html.pl-tipo-novo .pl-acab-cor-wrap__lbl {
        margin: 0 0 8px;
        font-size: 0.9rem;
        font-weight: 700;
        color: #334155;
      }
      html.pl-tipo-novo .pl-acab-cor-wrap__opts {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
      }
      html.pl-tipo-novo .pl-acab-cor-chip {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 8px 12px 8px 8px;
        border: 1px solid #d8d8e2;
        border-radius: 999px;
        background: #fff;
        cursor: pointer;
        font-size: 0.85rem;
        font-weight: 650;
        color: #334155;
      }
      html.pl-tipo-novo .pl-acab-cor-chip.is-on {
        border-color: #5520cc;
        box-shadow: 0 0 0 1px #5520cc;
        color: #5520cc;
      }
      html.pl-tipo-novo .pl-acab-cor-chip__dot {
        width: 16px;
        height: 16px;
        border-radius: 50%;
        border: 1px solid rgba(15, 23, 42, 0.18);
        display: inline-block;
      }
      html.pl-tipo-novo .pl-acab-cor-chip__dot[data-cor="preto"] { background: #111827; }
      html.pl-tipo-novo .pl-acab-cor-chip__dot[data-cor="branco"] { background: #f8fafc; }
      html.pl-tipo-novo .pl-acab-cor-chip__dot[data-cor="cristal"] { background: linear-gradient(135deg, #e2e8f0, #94a3b8); }
    }

    /* Extras (Apostila / Agenda / Catálogo): visíveis só em ≤1023px.
       Desktop ≥1024 congelado — se html.is-mobile-ref vazar no desktop, extras continuam ocultos. */
    @media (min-width: 1024px) {
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot--extra,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card-slot--extra {
        display: none !important;
      }
    }

    /* ============================================================
       MOBILE (≤767px) — redesign interno dos 3 cards de modelo
       Livro grande à esquerda com play "Veja o vídeo";
       à direita: título grande, linha de cor, descrição e botão
       preenchido na cor do modelo. Somente apresentação interna.
       ============================================================ */
    @media (max-width: 767px) {
      /* Card: livro à esquerda (coluna maior), conteúdo + botão à direita */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card {
        grid-template-columns: 92px minmax(0, 1fr) !important;
        grid-template-rows: minmax(0, 1fr) auto !important;
        grid-template-areas: "book content" "book select" !important;
        align-items: stretch !important;
        column-gap: 12px !important;
        row-gap: 10px !important;
        padding: 18px 12px 12px 10px !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura {
        background: #FFFBF3 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo {
        background: #FAFDF9 !important;
      }

      /* Fotos dos 3 livros no mesmo tamanho visual (grampo como referência) */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__ico .modelo-card__ico-img--mob,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__ico .modelo-card__ico-img--mob {
        transform: none !important;
        object-fit: contain !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__ico {
        overflow: hidden !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__ico .modelo-card__ico-img--mob,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__ico .modelo-card__ico-img--mob {
        transform: none !important;
        transform-origin: center center !important;
        object-fit: contain !important;
      }

      /* Área do livro — caixa um pouco mais alta, imagem nativa 88x120 */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__ico {
        width: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
        height: 132px !important;
        min-height: 132px !important;
        max-height: 132px !important;
        align-self: center !important;
        overflow: visible !important;
        flex: 0 0 92px !important;
      }

      /* Overlay "Veja o vídeo" sobre o livro (mesmo botão, mesmo clique) */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link {
        top: 50% !important;
        left: 10px !important;
        right: auto !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
        width: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
        height: 124px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        overflow: visible !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::before {
        content: "▶" !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        flex: 0 0 32px !important;
        margin: 0 auto !important;
        border-radius: 50% !important;
        border: 1px solid rgba(255, 255, 255, 0.65) !important;
        background: rgba(255, 255, 255, 0.22) !important;
        -webkit-backdrop-filter: blur(6px) !important;
        backdrop-filter: blur(6px) !important;
        color: #ffffff !important;
        font-size: 10px !important;
        line-height: 1 !important;
        padding-left: 2px !important;
        box-sizing: border-box !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22) !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::after {
        content: "Veja o vídeo" !important;
        display: block !important;
        margin: 0 auto !important;
        padding: 3px 8px !important;
        border-radius: 999px !important;
        border: 1px solid rgba(255, 255, 255, 0.45) !important;
        background: rgba(255, 255, 255, 0.2) !important;
        -webkit-backdrop-filter: blur(6px) !important;
        backdrop-filter: blur(6px) !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        color: #ffffff !important;
        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55) !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
      }

      /* Conteúdo à direita */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body {
        justify-content: center !important;
        gap: 0 !important;
      }

      /* Título grande + linha decorativa */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles {
        display: block !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::before,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::after {
        content: none !important;
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name {
        font-size: 1.375rem !important;
        font-weight: 800 !important;
        line-height: 1.05 !important;
        color: #0B1630 !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name::after {
        content: "" !important;
        display: block !important;
        width: 26px !important;
        height: 3px !important;
        margin: 6px 0 9px !important;
        border-radius: 999px !important;
        background: #6C2BFF !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__name::after {
        background: #E58A00 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__name::after {
        background: #2FA846 !important;
      }

      /* Descrição por modelo */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc {
        display: block !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
        overflow: visible !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc::before {
        display: block !important;
        height: auto !important;
        font-size: 0.6875rem !important;
        font-weight: 500 !important;
        line-height: 1.35 !important;
        color: #465064 !important;
        overflow: visible !important;
        white-space: normal !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__desc::before {
        content: "Leve, prática e econômica. Ideal para tiragens médias e grandes." !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__desc::before {
        content: "Mais resistência e durabilidade. Acabamento premium." !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__desc::before {
        content: "Versátil e econômica. Ideal para apostilas, livretos e materiais pedagógicos." !important;
      }

      /* Remove o bloco antigo de benefícios */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks {
        display: none !important;
      }

      /* Botão preenchido na cor do modelo */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
        height: 38px !important;
        min-height: 38px !important;
        max-height: 38px !important;
        gap: 6px !important;
        padding: 0 6px 0 10px !important;
        border-radius: 12px !important;
        border: none !important;
        background: linear-gradient(180deg, #7A3BFF 0%, #6C2BFF 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 6px 14px rgba(108, 43, 255, 0.28) !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint {
        background: linear-gradient(180deg, #F09A0A 0%, #E58A00 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 6px 14px rgba(229, 138, 0, 0.28) !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint {
        background: linear-gradient(180deg, #37B551 0%, #2FA846 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 6px 14px rgba(47, 168, 70, 0.28) !important;
      }

      /* Texto do botão */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::before {
        content: "Selecionar este modelo" !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        color: #ffffff !important;
      }

      /* Checkbox branco à esquerda */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio {
        flex: 0 0 15px !important;
        width: 15px !important;
        height: 15px !important;
        border-radius: 4px !important;
        border: 2px solid #ffffff !important;
        background: transparent !important;
        color: #ffffff !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio {
        background: rgba(255, 255, 255, 0.25) !important;
        border-color: #ffffff !important;
      }

      /* Círculo branco com seta à direita */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint::after {
        content: "❯" !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 22px !important;
        height: 22px !important;
        flex: 0 0 22px !important;
        margin-left: auto !important;
        border: none !important;
        border-right: none !important;
        border-bottom: none !important;
        border-radius: 50% !important;
        background: #ffffff !important;
        color: #6C2BFF !important;
        font-size: 10px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        transform: none !important;
        box-sizing: border-box !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint::after {
        color: #E58A00 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint::after {
        color: #2FA846 !important;
      }

      /* Badges com as cores dos modelos */
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__badge,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__badge {
        background: #6C2BFF !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__badge,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__badge {
        background: #E58A00 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__badge,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__badge {
        background: #2FA846 !important;
      }
    }

    /* ============================================================
       MOBILE (≤1023px) — Apostila / Agenda / Catálogo visíveis.
       O visual dos 6 cards fica no bloco unificado abaixo.
       Desktop ≥1024px não entra neste bloco.
       ============================================================ */
    @media (max-width: 1023px) {
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot--extra,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot--extra,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card-slot--extra,
      #wizard-step-1 #card-modelo.card--modelo-qtd .modelo-pick--cards .modelo-card-slot--extra {
        display: block !important;
      }
    }

    /* ============================================================
       MOBILE (≤1023px) — 6 cards iguais à imagem:
       foto + play | título + linha | Selecionar modelo (outline).
       Desktop ≥1024px não entra neste bloco.
       ============================================================ */
    @media (max-width: 1023px) {
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
        gap: 10px !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot {
        overflow: hidden !important;
        border-radius: 16px !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card {
        display: grid !important;
        grid-template-columns: 86px minmax(0, 1fr) max-content !important;
        grid-template-rows: auto !important;
        grid-template-areas: "book content select" !important;
        align-items: center !important;
        column-gap: 8px !important;
        row-gap: 0 !important;
        padding: 6px 10px 6px 6px !important;
        min-height: 96px !important;
        height: auto !important;
        border-radius: 16px !important;
        border-width: 1.5px !important;
        background: #ffffff !important;
        overflow: hidden !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura {
        border-color: #A78BFA !important;
        background: #ffffff !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura {
        border-color: #F5B942 !important;
        background: #ffffff !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo {
        border-color: #4ADE80 !important;
        background: #ffffff !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__badge,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__badge,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__perks,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__desc::before {
        display: none !important;
        content: none !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-brochura .modelo-card__ico,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-dura .modelo-card__ico,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-grampo .modelo-card__ico {
        grid-area: book !important;
        width: 86px !important;
        min-width: 86px !important;
        max-width: 86px !important;
        height: 84px !important;
        min-height: 84px !important;
        max-height: 84px !important;
        flex: 0 0 86px !important;
        background: transparent !important;
        overflow: hidden !important;
        align-self: center !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico .modelo-card__ico-img--mob,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card .modelo-card__ico .modelo-card__ico-img--mob {
        width: 86px !important;
        min-width: 86px !important;
        max-width: 86px !important;
        height: 84px !important;
        min-height: 84px !important;
        max-height: 84px !important;
        object-fit: contain !important;
        object-position: center center !important;
        transform: none !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot--extra .modelo-info-link,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card-slot--extra .modelo-info-link {
        display: none !important;
        pointer-events: none !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::before,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-info-link::after {
        content: none !important;
        display: none !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__body {
        grid-area: content !important;
        justify-content: center !important;
        min-width: 0 !important;
        overflow: visible !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles {
        display: block !important;
        flex-wrap: wrap !important;
        width: auto !important;
        min-width: 0 !important;
        overflow: visible !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::before,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__titles::after {
        content: none !important;
        display: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name {
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        max-width: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name::before {
        display: block !important;
        font-size: 1.12rem !important;
        font-weight: 800 !important;
        line-height: 1.12 !important;
        color: #0B1630 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura .modelo-card__name::before {
        content: "Capa Brochura" !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__name::before {
        content: "Capa Dura" !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__name::before {
        content: "Capa Grampo" !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila .modelo-card__name::before {
        content: "Apostila" !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda .modelo-card__name::before {
        content: "Agenda" !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo .modelo-card__name::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo .modelo-card__name::before {
        content: "Catálogo" !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card__name::after {
        content: "" !important;
        display: block !important;
        width: 32px !important;
        height: 4px !important;
        margin: 5px 0 0 !important;
        border-radius: 999px !important;
        background: #6C2BFF !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura .modelo-card__name::after {
        background: #E58A00 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo .modelo-card__name::after {
        background: #22C55E !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila .modelo-card__name::after {
        background: #3B82F6 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda .modelo-card__name::after {
        background: #EC4899 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo .modelo-card__name::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo .modelo-card__name::after {
        background: #22D3EE !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint {
        grid-area: select !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 3px !important;
        width: max-content !important;
        max-width: none !important;
        min-width: 0 !important;
        height: 24px !important;
        min-height: 24px !important;
        max-height: 24px !important;
        margin: 0 0 0 auto !important;
        padding: 0 6px 0 5px !important;
        flex-shrink: 0 !important;
        border-radius: 999px !important;
        border: 1.5px solid #7C3AED !important;
        background: #ffffff !important;
        color: #7C3AED !important;
        box-shadow: none !important;
        overflow: visible !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura > .modelo-card__select-hint {
        border-color: #E58A00 !important;
        color: #E58A00 !important;
        background: #ffffff !important;
        box-shadow: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo > .modelo-card__select-hint {
        border-color: #22C55E !important;
        color: #16A34A !important;
        background: #ffffff !important;
        box-shadow: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-apostila > .modelo-card__select-hint {
        border-color: #3B82F6 !important;
        color: #3B82F6 !important;
        background: #ffffff !important;
        box-shadow: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-agenda > .modelo-card__select-hint {
        border-color: #EC4899 !important;
        color: #EC4899 !important;
        background: #ffffff !important;
        box-shadow: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo > .modelo-card__select-hint,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-catalogo > .modelo-card__select-hint {
        border-color: #22D3EE !important;
        color: #0891B2 !important;
        background: #ffffff !important;
        box-shadow: none !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl {
        display: block !important;
        flex: 0 1 auto !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: inherit !important;
        overflow: visible !important;
        min-width: 0 !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__select-lbl::before {
        content: "Selecionar modelo" !important;
        font-size: 0.42rem !important;
        font-weight: 700 !important;
        letter-spacing: 0 !important;
        color: inherit !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__radio {
        display: block !important;
        flex: 0 0 10px !important;
        width: 10px !important;
        height: 10px !important;
        color: inherit !important;
        border: 2px solid currentColor !important;
        background: transparent !important;
        border-radius: 4px !important;
        box-sizing: border-box !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__radio,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-brochura[aria-pressed="true"] .modelo-card__radio,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-dura[aria-pressed="true"] .modelo-card__radio,
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card--ref-grampo[aria-pressed="true"] .modelo-card__radio {
        background: #22C55E !important;
        border-color: #22C55E !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint::after,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card > .modelo-card__select-hint::after {
        content: "" !important;
        display: block !important;
        width: 5px !important;
        height: 5px !important;
        flex: 0 0 5px !important;
        margin-left: 1px !important;
        border: none !important;
        border-right: 2px solid currentColor !important;
        border-bottom: 2px solid currentColor !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: inherit !important;
        font-size: 0 !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        transform: rotate(-45deg) !important;
        box-shadow: none !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card[aria-pressed="true"],
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-brochura[aria-pressed="true"],
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-dura[aria-pressed="true"],
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-grampo[aria-pressed="true"],
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-apostila[aria-pressed="true"],
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-agenda[aria-pressed="true"],
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-catalogo[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-brochura[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-dura[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-grampo[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-apostila[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-agenda[aria-pressed="true"],
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards .modelo-card.modelo-card--ref-catalogo[aria-pressed="true"] {
        border: 3px solid #22C55E !important;
        background: #ECFDF5 !important;
        background-color: #ECFDF5 !important;
        background-image: none !important;
      }
      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__select-lbl::before,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card[aria-pressed="true"] .modelo-card__select-lbl::before {
        content: "Modelo selecionado" !important;
      }

      html.is-mobile-ref #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__ico,
      #wizard-step-1 #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-card .modelo-card__ico {
        cursor: zoom-in !important;
        pointer-events: auto !important;
        position: relative !important;
        z-index: 2 !important;
      }

      #pl-modelo-zoom {
        display: none;
        position: fixed;
        inset: 0;
        z-index: 12050;
        align-items: center;
        justify-content: center;
        padding: 56px 16px 20px;
        background: rgba(8, 12, 24, 0.88);
        box-sizing: border-box;
      }
      #pl-modelo-zoom.is-open {
        display: flex !important;
      }
      html.pl-modelo-zoom-lock,
      html.pl-modelo-zoom-lock body {
        overflow: hidden !important;
      }
      #pl-modelo-zoom__close {
        position: absolute;
        top: 12px;
        right: 12px;
        width: 40px;
        height: 40px;
        margin: 0;
        padding: 0;
        border: none;
        border-radius: 50%;
        background: #ffffff;
        color: #0B1630;
        font-size: 28px;
        font-weight: 400;
        line-height: 1;
        cursor: pointer;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
        z-index: 2;
      }
      #pl-modelo-zoom__img {
        display: block;
        max-width: 100%;
        max-height: calc(100dvh - 88px);
        width: auto;
        height: auto;
        object-fit: contain;
        background: #ffffff;
        border-radius: 14px;
        box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
      }
    }

    @media (min-width: 1024px) {
      #pl-modelo-zoom {
        display: none !important;
      }
    }

    #modal-modelo-info.modal-backdrop {
      z-index: 1100;
    }

    /* Wrappers neutros no mobile/tablet: layout permanece idêntico ao anterior */
    #modal-modelo-info .modelo-info-modal__cols,
    #modal-modelo-info .modelo-info-modal__media,
    #modal-modelo-info .modelo-info-modal__side {
      display: contents;
    }

    #modal-modelo-info .modelo-info-modal__badge,
    #modal-modelo-info .modelo-info-modal__side-content {
      display: none;
    }

    /* ============================================================
       Popup "O que é este tipo de livro" — DESKTOP (redesign premium)
       ============================================================ */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      html:not(.is-mobile-ref) #modal-modelo-info.modal-backdrop {
        background: rgba(10, 14, 26, 0.55);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal-card {
        position: relative;
        width: min(1360px, 94vw);
        max-width: 1440px;
        height: min(90vh, 880px);
        max-height: min(90vh, 880px);
        display: flex;
        flex-direction: column;
        overflow: hidden;
        background: #fff;
        border-radius: 24px;
        border: 1px solid rgba(15, 23, 42, 0.06);
        box-shadow:
          0 40px 90px rgba(15, 23, 42, 0.28),
          0 6px 20px rgba(15, 23, 42, 0.10);
        animation: plModeloInfoIn 0.32s cubic-bezier(0.22, 1, 0.36, 1) both;
      }

      @keyframes plModeloInfoIn {
        from {
          opacity: 0;
          transform: translateY(14px) scale(0.985);
        }
        to {
          opacity: 1;
          transform: translateY(0) scale(1);
        }
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__close {
        position: absolute;
        top: 18px;
        right: 18px;
        z-index: 3;
        width: 38px;
        height: 38px;
        border: 1px solid rgba(15, 23, 42, 0.08);
        border-radius: 999px;
        background: #fff;
        color: #0f172a;
        font-size: 1.35rem;
        line-height: 1;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 14px rgba(15, 23, 42, 0.12);
        transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__close:hover {
        background: #f8fafc;
        transform: scale(1.06);
        box-shadow: 0 6px 18px rgba(15, 23, 42, 0.16);
      }

      /* Duas colunas */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__cols {
        display: flex;
        flex: 1 1 auto;
        min-height: 0;
      }

      /* Coluna esquerda — vídeo horizontal 16:9, sem corte, fundo escuro */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__media {
        position: relative;
        display: flex;
        flex: 0 0 56%;
        max-width: 56%;
        min-height: 0;
        align-items: center;
        justify-content: center;
        background: #0F1117;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__badge {
        position: absolute;
        top: 20px;
        left: 20px;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
        padding: 0.5rem 0.95rem;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.10);
        border: 1px solid rgba(255, 255, 255, 0.16);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        color: #fff;
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        pointer-events: none;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__badge svg {
        width: 16px;
        height: 16px;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__body {
        flex: 1 1 auto;
        min-height: 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        padding: 1.25rem 1.35rem;
        background: transparent;
        box-sizing: border-box;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__body .pl-video-sound-wrap {
        width: 100%;
        max-width: 100%;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__video {
        display: block;
        width: 100%;
        height: auto;
        max-width: 100%;
        max-height: 100%;
        aspect-ratio: 16 / 9;
        margin: 0 auto;
        border-radius: 12px;
        background: #0F1117;
        object-fit: contain;
        object-position: center center;
        filter: none;
        -webkit-filter: none;
        opacity: 1;
        mix-blend-mode: normal;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__video[hidden] {
        display: none !important;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__img {
        display: block;
        width: auto;
        max-width: 100%;
        max-height: 100%;
        height: auto;
        margin: 0 auto;
        object-fit: contain;
        image-rendering: -webkit-optimize-contrast;
        image-rendering: high-quality;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__img[hidden] {
        display: none !important;
      }

      /* Coluna direita — conteúdo (sem scroll: tudo visível) */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__side {
        display: flex;
        flex-direction: column;
        flex: 1 1 46%;
        min-width: 0;
        min-height: 0;
        overflow: hidden;
        background: linear-gradient(180deg, #fdfdfe 0%, #f7f8fb 100%);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__side:has(.modelo-info-modal__visual:not([hidden])) {
        overflow: visible;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__side-content {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        min-height: 0;
        overflow: hidden;
        justify-content: center;
        padding: 0 clamp(1.75rem, 2.6vw, 3rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__side-content[hidden] {
        display: none !important;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__head {
        flex: 0 0 auto;
        margin: 0 0 clamp(0.8rem, 1.8vh, 1.5rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__eyebrow {
        margin: 0 0 clamp(0.45rem, 1vh, 0.8rem);
        font-size: 0.7rem;
        font-weight: 800;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: #6d28d9;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__title {
        margin: 0 0 clamp(0.4rem, 1vh, 0.7rem);
        font-size: clamp(1.15rem, 2.4vh, 1.6rem);
        font-weight: 800;
        line-height: 1.22;
        letter-spacing: -0.02em;
        color: #0f172a;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__desc {
        margin: 0;
        max-width: 52ch;
        font-size: clamp(0.8rem, 1.5vh, 0.92rem);
        line-height: 1.55;
        color: #475569;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__section-label {
        flex: 0 0 auto;
        margin: 0 0 clamp(0.5rem, 1.2vh, 0.85rem);
        font-size: 0.66rem;
        font-weight: 800;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: #94a3b8;
      }

      /* Especificações — grid 2 colunas, compacto */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__specs {
        flex: 0 0 auto;
        min-height: 0;
        margin: 0 0 clamp(0.9rem, 2vh, 1.6rem);
        padding: 0;
        list-style: none;
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 1.25rem;
        row-gap: clamp(0.5rem, 1.3vh, 0.95rem);
        align-content: start;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec {
        display: flex;
        align-items: flex-start;
        gap: 0.6rem;
        min-width: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec--full {
        grid-column: 1 / -1;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec-ico {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: clamp(26px, 3.6vh, 32px);
        height: clamp(26px, 3.6vh, 32px);
        border-radius: 9px;
        background: #f1f5f9;
        font-size: clamp(0.8rem, 1.7vh, 1rem);
        line-height: 1;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec-txt {
        display: flex;
        flex-direction: column;
        gap: 0.05rem;
        min-width: 0;
        font-size: clamp(0.7rem, 1.35vh, 0.8rem);
        line-height: 1.4;
        color: #64748b;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec-txt strong {
        font-size: clamp(0.74rem, 1.45vh, 0.84rem);
        font-weight: 700;
        color: #0f172a;
      }

      /* Acabamentos premium — dois cards lado a lado */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__cards {
        flex: 0 0 auto;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.85rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card {
        display: flex;
        align-items: flex-start;
        gap: 0.65rem;
        padding: clamp(0.65rem, 1.6vh, 0.95rem) clamp(0.75rem, 1.6vh, 1rem);
        border-radius: 16px;
        background: #fff;
        border: 1px solid rgba(15, 23, 42, 0.07);
        box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
        transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card:hover {
        transform: translateY(-2px);
        box-shadow: 0 10px 24px rgba(15, 23, 42, 0.10);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card--gold:hover {
        border-color: rgba(202, 138, 4, 0.35);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card--violet:hover {
        border-color: rgba(109, 40, 217, 0.35);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-ico {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: clamp(28px, 3.8vh, 34px);
        height: clamp(28px, 3.8vh, 34px);
        border-radius: 999px;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card--gold .modelo-info-modal__mini-ico {
        background: #fef3c7;
        color: #a16207;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card--violet .modelo-info-modal__mini-ico {
        background: #ede9fe;
        color: #6d28d9;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-ico svg {
        width: clamp(14px, 1.9vh, 17px);
        height: clamp(14px, 1.9vh, 17px);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-txt {
        display: flex;
        flex-direction: column;
        gap: 0.15rem;
        min-width: 0;
        font-size: clamp(0.68rem, 1.3vh, 0.78rem);
        line-height: 1.45;
        color: #64748b;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-txt strong {
        font-size: clamp(0.74rem, 1.45vh, 0.84rem);
        font-weight: 700;
        color: #0f172a;
      }

      /* Canoa: Ideal para / Diferenciais */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__chips,
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__checks {
        flex: 0 0 auto;
        margin: 0 0 clamp(0.7rem, 1.6vh, 1.2rem);
        padding: 0;
        list-style: none;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: clamp(0.35rem, 0.9vh, 0.55rem) 0.75rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__chips li,
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__checks li {
        margin: 0;
        padding: 0.35rem 0.55rem;
        border-radius: 10px;
        background: #f8fafc;
        border: 1px solid rgba(15, 23, 42, 0.06);
        font-size: clamp(0.66rem, 1.25vh, 0.76rem);
        line-height: 1.35;
        color: #475569;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__checks li {
        position: relative;
        padding-left: 1.35rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__checks li::before {
        content: '✓';
        position: absolute;
        left: 0.45rem;
        top: 0.35rem;
        color: #6d28d9;
        font-weight: 800;
      }

      /* Canoa: versão compacta para nunca cortar */
      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__head {
        margin-bottom: clamp(0.5rem, 1.2vh, 1rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__eyebrow {
        margin-bottom: clamp(0.3rem, 0.7vh, 0.55rem);
        font-size: clamp(0.6rem, 1.15vh, 0.68rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__title {
        margin-bottom: clamp(0.3rem, 0.7vh, 0.5rem);
        font-size: clamp(1rem, 2vh, 1.35rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__desc {
        max-width: none;
        font-size: clamp(0.7rem, 1.3vh, 0.82rem);
        line-height: 1.45;
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__section-label {
        margin-bottom: clamp(0.35rem, 0.9vh, 0.6rem);
        font-size: clamp(0.56rem, 1.05vh, 0.64rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__specs {
        margin-bottom: clamp(0.55rem, 1.4vh, 1.1rem);
        row-gap: clamp(0.35rem, 1vh, 0.7rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__spec-ico {
        width: clamp(22px, 3vh, 28px);
        height: clamp(22px, 3vh, 28px);
        font-size: clamp(0.7rem, 1.4vh, 0.85rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__spec-txt {
        font-size: clamp(0.62rem, 1.2vh, 0.74rem);
        line-height: 1.35;
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__spec-txt strong {
        font-size: clamp(0.66rem, 1.3vh, 0.78rem);
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__chips,
      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__checks {
        margin-bottom: clamp(0.5rem, 1.2vh, 0.9rem);
        gap: clamp(0.25rem, 0.7vh, 0.45rem) 0.65rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__chips li,
      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__checks li {
        padding: clamp(0.22rem, 0.6vh, 0.32rem) 0.5rem;
        font-size: clamp(0.58rem, 1.1vh, 0.7rem);
        line-height: 1.3;
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__checks li {
        padding-left: 1.25rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info [data-modelo-panel="canoa"] .modelo-info-modal__checks li::before {
        top: clamp(0.22rem, 0.6vh, 0.32rem);
        left: 0.42rem;
      }

      /* ============================================================
         Popup visual — brochura / capa dura / grampo (painel direito)
         Não altera coluna do vídeo / mídia.
         ============================================================ */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual {
        container-type: inline-size;
        container-name: modelo-visual-side;
        justify-content: flex-start;
        gap: clamp(0.7rem, 1.7vh, 1.1rem);
        padding:
          clamp(1.85rem, 4.2vh, 2.85rem)
          clamp(1.85rem, 2.4vw, 2.35rem)
          clamp(0.35rem, 0.8vh, 0.55rem)
          clamp(1rem, 1.6vw, 1.45rem);
        overflow: visible;
        background: #fff;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__head--cd {
        flex: 0 0 auto;
        margin: 0 0 clamp(0.15rem, 0.5vh, 0.35rem);
        text-align: center;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__title {
        margin: 0 0 clamp(0.4rem, 0.9vh, 0.6rem);
        max-width: 100%;
        font-size: clamp(0.92rem, 4.2cqi, 1.45rem);
        font-weight: 800;
        line-height: 1.15;
        letter-spacing: -0.02em;
        text-transform: uppercase;
        color: #0f172a;
        white-space: normal;
        text-wrap: balance;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__desc {
        margin: 0 auto;
        max-width: 100%;
        font-size: clamp(0.62rem, 1.7cqi + 0.35rem, 0.86rem);
        line-height: 1.4;
        color: #64748b;
        white-space: normal;
        overflow: visible;
        text-wrap: pretty;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-divider {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        gap: 0.65rem;
        margin: 0;
        font-size: clamp(0.54rem, 1vh, 0.64rem);
        font-weight: 800;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #6d28d9;
        text-align: center;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-divider::before,
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-divider::after {
        content: '';
        flex: 1 1 auto;
        height: 1px;
        background: rgba(15, 23, 42, 0.12);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-divider span {
        flex: 0 1 auto;
        white-space: nowrap;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-gallery {
        flex: 0 0 auto;
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: clamp(0.4rem, 0.9vw, 0.65rem);
        margin: 0;
        padding: 0;
        list-style: none;
        overflow: visible;
        isolation: isolate;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-gallery--3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: min(100%, 72%);
        margin-inline: auto;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-gallery-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.28rem;
        min-width: 0;
        padding: 0.3rem;
        border: 1px solid rgba(15, 23, 42, 0.1);
        border-radius: 10px;
        background: #fff;
        box-sizing: border-box;
        overflow: visible;
        position: relative;
        z-index: 1;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-gallery-item:has(.is-zooming) {
        z-index: 40;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-zoom {
        position: relative;
        display: block;
        width: 100%;
        overflow: visible;
        border-radius: 7px;
        cursor: crosshair;
        -webkit-user-select: none;
        user-select: none;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-zoom img {
        display: block;
        width: 100%;
        aspect-ratio: 4 / 3;
        height: auto;
        object-fit: cover;
        border-radius: 7px;
        background: #f1f5f9;
        pointer-events: none;
        transform: scale(1);
        transform-origin: center center;
        transition: transform 0.18s ease, box-shadow 0.18s ease;
        will-change: transform;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-zoom.is-zooming img {
        transform: scale(1.55);
        box-shadow: 0 14px 36px rgba(15, 23, 42, 0.28);
        position: relative;
        z-index: 1;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-lens {
        position: absolute;
        left: 0;
        top: 0;
        width: clamp(110px, 15vh, 150px);
        height: clamp(110px, 15vh, 150px);
        border-radius: 50%;
        border: 2.5px solid #fff;
        box-shadow:
          0 10px 28px rgba(15, 23, 42, 0.4),
          inset 0 0 0 1px rgba(109, 40, 217, 0.35);
        background-repeat: no-repeat;
        background-color: #fff;
        pointer-events: none;
        opacity: 0;
        visibility: hidden;
        z-index: 5;
        transform: translateZ(0);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-zoom.is-zooming .modelo-info-modal__cd-lens {
        opacity: 1;
        visibility: visible;
      }

      @media (hover: none) {
        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-zoom {
          cursor: default;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-lens {
          display: none !important;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-zoom.is-zooming img {
          transform: none;
          box-shadow: none;
        }
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-gallery-label {
        display: block;
        width: 100%;
        padding: 0 0.1rem 0.1rem;
        font-size: clamp(0.54rem, 1vh, 0.66rem);
        font-weight: 700;
        line-height: 1.2;
        text-align: center;
        color: #0f172a;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-bottom {
        flex: 1 1 auto;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: clamp(0.75rem, 1.4vw, 1.1rem);
        align-items: stretch;
        min-width: 0;
        min-height: 0;
        margin-top: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps,
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv {
        min-width: 0;
        min-height: 0;
        height: 100%;
        display: flex;
        flex-direction: column;
        padding: clamp(0.65rem, 1.4vh, 0.95rem) clamp(0.7rem, 1.1vw, 1rem);
        border-radius: 12px;
        background: #f8fafc;
        border: 1px solid rgba(15, 23, 42, 0.06);
        box-sizing: border-box;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-sec-title {
        flex: 0 0 auto;
        margin: 0 0 clamp(0.4rem, 0.9vh, 0.55rem);
        font-size: clamp(0.52rem, 0.98vh, 0.62rem);
        font-weight: 800;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #6d28d9;
        line-height: 1.25;
        hyphens: none;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps-grid {
        flex: 1 1 auto;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(4, minmax(0, 1fr));
        gap: 0;
        align-content: stretch;
        margin: 0;
        padding: 0;
        list-style: none;
        min-height: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps-grid li {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 0.5rem;
        min-width: 0;
        min-height: 0;
        padding: 0 0.35rem;
        box-sizing: border-box;
        text-align: left;
        border-bottom: 1px solid rgba(15, 23, 42, 0.06);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps-grid li:nth-child(odd) {
        padding-right: 0.55rem;
        border-right: 1px solid rgba(15, 23, 42, 0.06);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps-grid li:nth-child(even) {
        padding-left: 0.55rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps-grid li:nth-last-child(-n+2) {
        border-bottom: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-app-ico {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: clamp(20px, 2.6vh, 26px);
        height: clamp(20px, 2.6vh, 26px);
        color: #6d28d9;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-app-ico svg {
        width: 100%;
        height: 100%;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-apps-grid span:not(.modelo-info-modal__cd-app-ico) {
        flex: 1 1 auto;
        min-width: 0;
        font-size: clamp(0.54rem, 1.1vh, 0.7rem);
        font-weight: 700;
        line-height: 1.2;
        color: #334155;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv-list {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 0;
        margin: 0;
        padding: 0;
        list-style: none;
        min-height: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv-list li {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        min-width: 0;
        flex: 1 1 auto;
        padding: 0.15rem 0;
        border-bottom: 1px solid rgba(15, 23, 42, 0.06);
        box-sizing: border-box;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv-list li:last-child {
        border-bottom: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-check {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 18px;
        height: 18px;
        margin-top: 0;
        border-radius: 999px;
        background: #6d28d9;
        color: #fff;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-check svg {
        width: 10px;
        height: 10px;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv-txt {
        flex: 1 1 auto;
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 0.1rem;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv-txt strong {
        font-size: clamp(0.62rem, 1.15vh, 0.76rem);
        font-weight: 800;
        line-height: 1.2;
        color: #0f172a;
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-adv-txt em {
        font-style: normal;
        font-size: clamp(0.52rem, 0.98vh, 0.64rem);
        font-weight: 500;
        line-height: 1.3;
        color: #64748b;
      }

      @media (max-height: 680px) {
        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual {
          gap: 0.45rem;
          padding-top: 1.35rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__title {
          font-size: clamp(0.92rem, 4.2cqi, 1.28rem);
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__desc {
          font-size: clamp(0.56rem, 1.5cqi + 0.3rem, 0.72rem);
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__visual .modelo-info-modal__cd-gallery-label {
          font-size: 0.5rem;
        }
      }

      /* Rodapé / botão */
      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__foot {
        flex: 0 0 auto;
        padding: clamp(0.8rem, 1.9vh, 1.25rem) clamp(1.75rem, 2.6vw, 3rem) clamp(1.1rem, 2.6vh, 2rem);
        display: flex;
        justify-content: stretch;
        background: transparent;
        border-top: 0;
      }

      html:not(.is-mobile-ref) #modal-modelo-info #btn-modelo-info-entendi {
        width: 100%;
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: clamp(0.75rem, 1.9vh, 1rem) 1.5rem;
        border-radius: 16px;
        background: #4c1d95;
        color: #fff;
        box-shadow: 0 12px 28px rgba(76, 29, 149, 0.30);
        transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
      }

      html:not(.is-mobile-ref) #modal-modelo-info #btn-modelo-info-entendi:hover {
        background: #5b21b6;
        transform: translateY(-1px);
        box-shadow: 0 16px 34px rgba(76, 29, 149, 0.36);
        filter: none;
      }

      html:not(.is-mobile-ref) #modal-modelo-info #btn-modelo-info-entendi:active {
        transform: translateY(0);
      }

      html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__btn-main {
        font-size: clamp(0.84rem, 1.7vh, 0.95rem);
        font-weight: 800;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }

      /* Desktops de altura reduzida: modo ultra-compacto, tudo visível sem scroll */
      @media (max-height: 680px) {
        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__side-content {
          padding: 0 1.6rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__head {
          margin-bottom: 0.55rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__eyebrow {
          margin-bottom: 0.35rem;
          font-size: 0.62rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__title {
          margin-bottom: 0.3rem;
          font-size: 1rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__desc {
          font-size: 0.72rem;
          line-height: 1.4;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__section-label {
          margin-bottom: 0.4rem;
          font-size: 0.6rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__specs {
          margin-bottom: 0.6rem;
          row-gap: 0.35rem;
          column-gap: 1rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec {
          gap: 0.45rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec-ico {
          width: 22px;
          height: 22px;
          font-size: 0.7rem;
          border-radius: 7px;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec-txt {
          font-size: 0.64rem;
          line-height: 1.35;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__spec-txt strong {
          font-size: 0.68rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__cards {
          gap: 0.6rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-card {
          gap: 0.5rem;
          padding: 0.5rem 0.6rem;
          border-radius: 12px;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-ico {
          width: 24px;
          height: 24px;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-ico svg {
          width: 12px;
          height: 12px;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-txt {
          font-size: 0.6rem;
          line-height: 1.35;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__mini-txt strong {
          font-size: 0.66rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info .modelo-info-modal__foot {
          padding: 0.6rem 1.6rem 0.9rem;
        }

        html:not(.is-mobile-ref) #modal-modelo-info #btn-modelo-info-entendi {
          padding: 0.6rem 1.25rem;
          border-radius: 12px;
        }
      }
    }

    /* Desktop only — popup guia de tamanhos (compacto, ref. mock) */
    #modal-flow-video {
      display: none;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      html:not(.is-mobile-ref) #modal-flow-video.modal-backdrop {
        background: rgba(10, 14, 26, 0.55);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        padding: 1rem;
      }

      html:not(.is-mobile-ref) #modal-flow-video.modal-backdrop.is-open {
        display: flex;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal-card--size-guide {
        position: relative;
        width: min(1040px, 92vw);
        max-width: 92vw;
        height: auto;
        max-height: min(720px, 88vh);
        display: flex;
        flex-direction: column;
        overflow: hidden;
        background: #fff;
        border-radius: 24px;
        border: 0;
        box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22);
        animation: plFlowVideoIn 0.32s cubic-bezier(0.22, 1, 0.36, 1) both;
        padding: 1.5rem 1.6rem 1.15rem;
        box-sizing: border-box;
      }

      @keyframes plFlowVideoIn {
        from {
          opacity: 0;
          transform: translateY(12px) scale(0.985);
        }
        to {
          opacity: 1;
          transform: translateY(0) scale(1);
        }
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__close {
        position: absolute;
        top: 14px;
        right: 14px;
        z-index: 3;
        width: 36px;
        height: 36px;
        border: 0;
        border-radius: 999px;
        background: #fff;
        color: #0f172a;
        font-size: 1.25rem;
        line-height: 1;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.10);
        transition: transform 0.15s ease, box-shadow 0.15s ease;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__close:hover {
        transform: translateY(-1px);
        box-shadow: 0 10px 26px rgba(0, 0, 0, 0.14);
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__head--guide {
        flex: 0 0 auto;
        padding: 0 2.25rem 0.55rem 0;
        text-align: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__eyebrow {
        margin: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.7rem;
        color: #6D28D9;
        font-size: 0.7rem;
        font-weight: 700;
        letter-spacing: 0.22em;
        text-transform: uppercase;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__eyebrow::before,
      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__eyebrow::after {
        content: '';
        width: 36px;
        height: 1px;
        background: rgba(109, 40, 217, 0.28);
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__title {
        margin: 0.55rem auto 0;
        max-width: 720px;
        font-size: clamp(1.35rem, 2.4vw, 1.75rem);
        font-weight: 800;
        line-height: 1.2;
        color: #0F172A;
        letter-spacing: -0.02em;
        text-align: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__sub {
        margin: 0.4rem auto 0;
        max-width: 640px;
        font-size: 0.9rem;
        font-weight: 500;
        line-height: 1.4;
        color: #64748B;
        text-align: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__body {
        flex: 1 1 auto;
        min-height: 0;
        display: grid;
        grid-template-columns: 280px minmax(0, 1fr);
        gap: 1rem;
        align-items: stretch;
        margin-top: 0.85rem;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__sizes {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        min-height: 0;
        overflow: auto;
        padding-right: 0.1rem;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card {
        position: relative;
        display: grid;
        grid-template-columns: 28px minmax(0, 1fr) 14px;
        align-items: center;
        gap: 0.65rem;
        width: 100%;
        margin: 0;
        padding: 0.55rem 0.7rem;
        border: 1.5px solid rgba(15, 23, 42, 0.10);
        border-radius: 14px;
        background: #fff;
        text-align: left;
        cursor: pointer;
        color: inherit;
        font: inherit;
        box-sizing: border-box;
        transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card:hover {
        border-color: rgba(109, 40, 217, 0.35);
        box-shadow: 0 6px 16px rgba(109, 40, 217, 0.08);
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card.is-selected {
        border-color: #6D28D9;
        background: #fff;
        box-shadow: 0 0 0 1px rgba(109, 40, 217, 0.12);
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__check {
        position: absolute;
        top: 6px;
        right: 6px;
        width: 18px;
        height: 18px;
        border-radius: 999px;
        background: #6D28D9;
        color: #fff;
        display: none;
        align-items: center;
        justify-content: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card.is-selected .flow-size-card__check {
        display: inline-flex;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__check svg {
        width: 11px;
        height: 11px;
      }

      /* Ícone proporcional do livro (como no mock) */
      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__img {
        width: 22px;
        height: 32px;
        border-radius: 3px;
        background: #6D28D9 !important;
        background-image: none !important;
        box-shadow: none;
        flex-shrink: 0;
        justify-self: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="14x21"] .flow-size-card__img {
        width: 18px;
        height: 28px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="16x23"] .flow-size-card__img {
        width: 20px;
        height: 30px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="21x29.7"] .flow-size-card__img {
        width: 22px;
        height: 32px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="20x20"] .flow-size-card__img,
      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__img--square {
        width: 26px;
        height: 26px;
        border-radius: 4px;
        display: block;
        background: #6D28D9 !important;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="retrato"] .flow-size-card__img {
        width: 18px;
        height: 28px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="paisagem"] .flow-size-card__img {
        width: 28px;
        height: 18px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="colado"] .flow-size-card__img,
      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="pur"] .flow-size-card__img {
        width: 20px;
        height: 28px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="wire-o"] .flow-size-card__img {
        width: 22px;
        height: 26px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="espiral"] .flow-size-card__img {
        width: 22px;
        height: 26px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card[data-size-id="grampo"] .flow-size-card__img {
        width: 24px;
        height: 20px;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__img--square svg {
        display: none;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__content {
        display: flex;
        flex-direction: column;
        gap: 0.12rem;
        min-width: 0;
        padding-right: 0.65rem;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.3rem 0.4rem;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__title {
        font-size: 0.88rem;
        font-weight: 800;
        color: #0F172A;
        letter-spacing: -0.01em;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__badge {
        display: inline-flex;
        align-items: center;
        padding: 0.12rem 0.42rem;
        border-radius: 999px;
        background: rgba(109, 40, 217, 0.10);
        color: #6D28D9;
        font-size: 0.62rem;
        font-weight: 700;
        letter-spacing: 0.01em;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card.is-selected .flow-size-card__badge {
        background: rgba(109, 40, 217, 0.12);
        color: #6D28D9;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__desc {
        font-size: 0.7rem;
        line-height: 1.3;
        color: #64748B;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__footer {
        display: inline-flex;
        align-items: center;
        gap: 0.25rem;
        margin-top: 0.1rem;
        font-size: 0.65rem;
        font-weight: 600;
        color: #94a3b8;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card.is-selected .flow-size-card__footer {
        color: #6D28D9;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__footer svg {
        width: 11px;
        height: 11px;
        flex-shrink: 0;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card__chev {
        font-size: 1.15rem;
        font-weight: 400;
        color: #cbd5e1;
        line-height: 1;
        text-align: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-size-card.is-selected .flow-size-card__chev {
        opacity: 0;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__media {
        min-height: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #0F1117;
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 12px 36px rgba(15, 23, 42, 0.16);
        aspect-ratio: 16 / 9;
        align-self: center;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__media .pl-video-sound-wrap {
        width: 100%;
        height: 100%;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__video {
        display: block;
        width: 100%;
        height: 100%;
        max-width: 100%;
        margin: 0;
        background: #0F1117;
        object-fit: contain;
        object-position: center center;
        border: 0;
        aspect-ratio: auto;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__foot {
        flex: 0 0 auto;
        padding: 0.85rem 0 0;
      }

      html:not(.is-mobile-ref) #modal-flow-video #btn-flow-video-ok {
        width: 100%;
        min-height: 52px;
        height: 52px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        padding: 0.7rem 1.25rem;
        border-radius: 14px;
        background: #5B21B6;
        color: #fff;
        box-shadow: 0 10px 24px rgba(91, 33, 182, 0.28);
        transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
        border: 0;
        cursor: pointer;
      }

      html:not(.is-mobile-ref) #modal-flow-video #btn-flow-video-ok:hover {
        background: #6D28D9;
        transform: translateY(-1px);
        box-shadow: 0 14px 30px rgba(109, 40, 217, 0.34);
        filter: none;
      }

      html:not(.is-mobile-ref) #modal-flow-video #btn-flow-video-ok:active {
        transform: translateY(0);
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__btn-main {
        font-size: 0.88rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
      }

      html:not(.is-mobile-ref) #modal-flow-video .flow-video-modal__btn-arrow {
        font-size: 1.15em;
        font-weight: 400;
        line-height: 1;
      }
    }

    /* Mobile — “veja o video”: popup SÓ VÍDEO (≠ desktop size-guide; ≤1023px) */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      html.is-mobile-ref #modal-flow-video.modal-backdrop,
      #modal-flow-video.modal-backdrop {
        display: none;
        align-items: center;
        justify-content: center;
        padding:
          max(0.75rem, env(safe-area-inset-top))
          max(0.75rem, env(safe-area-inset-right))
          max(0.75rem, env(safe-area-inset-bottom))
          max(0.75rem, env(safe-area-inset-left));
        background: rgba(10, 14, 26, 0.6);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        z-index: 1100;
        overflow: hidden;
      }

      html.is-mobile-ref #modal-flow-video.modal-backdrop.is-open,
      #modal-flow-video.modal-backdrop.is-open {
        display: flex;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal-card--size-guide,
      #modal-flow-video .flow-video-modal-card--size-guide {
        position: relative;
        display: flex;
        flex-direction: column;
        width: min(86vw, 360px);
        max-width: min(86vw, 360px);
        max-height: calc(100dvh - 4rem);
        margin: auto;
        overflow: hidden;
        background: #fff;
        border-radius: 24px;
        border: 0;
        box-shadow: 0 24px 80px rgba(0, 0, 0, 0.18);
        padding: 0.85rem 0.9rem 0;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__close,
      #modal-flow-video .flow-video-modal__close {
        position: absolute;
        top: 0.6rem;
        right: 0.6rem;
        z-index: 3;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        margin: 0;
        padding: 0;
        border: 1px solid rgba(15, 23, 42, 0.06);
        border-radius: 999px;
        background: #fff;
        color: #0f172a;
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1;
        cursor: pointer;
        box-shadow: 0 6px 18px rgba(15, 23, 42, 0.16);
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__close:active,
      #modal-flow-video .flow-video-modal__close:active {
        background: #f1f5f9;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__head--guide,
      #modal-flow-video .flow-video-modal__head--guide {
        flex: 0 0 auto;
        padding: 0.35rem 2.4rem 0.35rem 0.15rem;
        text-align: center;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__eyebrow,
      #modal-flow-video .flow-video-modal__eyebrow {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.35rem;
        margin: 0.15rem auto 0.45rem;
        padding: 0.32rem 0.75rem;
        border-radius: 999px;
        background: #ede9fe;
        color: #6d28d9;
        font-size: 0.6rem;
        font-weight: 800;
        letter-spacing: 0.14em;
        text-transform: uppercase;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__eyebrow::before,
      html.is-mobile-ref #modal-flow-video .flow-video-modal__eyebrow::after,
      #modal-flow-video .flow-video-modal__eyebrow::before,
      #modal-flow-video .flow-video-modal__eyebrow::after {
        display: none;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__title,
      #modal-flow-video .flow-video-modal__title {
        margin: 0 0.35rem 0.35rem;
        font-size: clamp(1.05rem, 3vh, 1.25rem);
        font-weight: 800;
        line-height: 1.2;
        letter-spacing: -0.02em;
        color: #0f172a;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__sub,
      #modal-flow-video .flow-video-modal__sub {
        margin: 0 0.55rem 0.55rem;
        font-size: clamp(0.72rem, 1.7vh, 0.8rem);
        line-height: 1.45;
        color: #64748b;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__body,
      #modal-flow-video .flow-video-modal__body {
        display: flex;
        flex-direction: column;
        flex: 0 1 auto;
        min-height: 0;
        gap: 0;
        overflow: hidden;
        padding: 0;
      }

      /* Esconde cards do guia desktop — mobile é só vídeo */
      html.is-mobile-ref #modal-flow-video .flow-video-modal__sizes,
      #modal-flow-video .flow-video-modal__sizes {
        display: none !important;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__media,
      #modal-flow-video .flow-video-modal__media {
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 0 1 auto;
        min-height: 0;
        padding: 0;
        background: transparent;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__video,
      #modal-flow-video .flow-video-modal__video {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        max-height: min(42vh, calc(100dvh - 20rem));
        margin: 0 auto;
        border-radius: 14px;
        background: #111318;
        object-fit: contain;
        object-position: center center;
        box-shadow: 0 10px 26px rgba(15, 23, 42, 0.2);
        -webkit-touch-callout: default;
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__foot,
      #modal-flow-video .flow-video-modal__foot {
        flex: 0 0 auto;
        padding: 0.6rem 0 0.8rem;
        background: transparent;
        border-top: 0;
      }

      html.is-mobile-ref #modal-flow-video #btn-flow-video-ok,
      #modal-flow-video #btn-flow-video-ok {
        width: 100%;
        min-height: 46px;
        margin: 0;
        padding: 0.65rem 1rem;
        border: 0;
        border-radius: 14px;
        background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%);
        color: #fff;
        font-size: 0.78rem;
        font-weight: 800;
        letter-spacing: 0.07em;
        text-transform: uppercase;
        box-shadow: 0 10px 22px rgba(91, 33, 182, 0.3);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.35rem;
      }

      html.is-mobile-ref #modal-flow-video #btn-flow-video-ok:active,
      #modal-flow-video #btn-flow-video-ok:active {
        filter: brightness(0.95);
        transform: translateY(1px);
      }

      html.is-mobile-ref #modal-flow-video .flow-video-modal__btn-arrow,
      #modal-flow-video .flow-video-modal__btn-arrow {
        display: none;
      }
    }

    /* Mobile — popup “Veja o que é esse modelo”: redesign premium (somente CSS) */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      html.is-mobile-ref #modal-modelo-info.modal-backdrop,
      #modal-modelo-info.modal-backdrop {
        display: none;
        align-items: center;
        justify-content: center;
        padding:
          max(0.75rem, env(safe-area-inset-top))
          max(0.75rem, env(safe-area-inset-right))
          max(0.75rem, env(safe-area-inset-bottom))
          max(0.75rem, env(safe-area-inset-left));
        background: rgba(10, 14, 26, 0.6);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        z-index: 1100;
        overflow: hidden;
      }

      html.is-mobile-ref #modal-modelo-info.modal-backdrop.is-open,
      #modal-modelo-info.modal-backdrop.is-open {
        display: flex;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal-card,
      #modal-modelo-info .modelo-info-modal-card {
        position: relative;
        display: flex;
        flex-direction: column;
        width: min(86vw, 360px);
        max-width: min(86vw, 360px);
        max-height: calc(100dvh - 4rem);
        margin: auto;
        overflow: hidden;
        background: #fff;
        border-radius: 24px;
        border: 0;
        box-shadow: 0 24px 80px rgba(0, 0, 0, 0.18);
        padding: 0.85rem 0.9rem 0;
      }

      /* Fechar — botão flutuante branco */
      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__close,
      #modal-modelo-info .modelo-info-modal__close {
        position: absolute;
        top: 0.6rem;
        right: 0.6rem;
        z-index: 3;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        margin: 0;
        padding: 0;
        border: 1px solid rgba(15, 23, 42, 0.06);
        border-radius: 999px;
        background: #fff;
        color: #0f172a;
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1;
        cursor: pointer;
        box-shadow: 0 6px 18px rgba(15, 23, 42, 0.16);
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__close:active,
      #modal-modelo-info .modelo-info-modal__close:active {
        background: #f1f5f9;
      }

      /* Badge pill "Vídeo explicativo" centralizado */
      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__badge,
      #modal-modelo-info .modelo-info-modal__badge {
        order: 1;
        align-self: center;
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        margin: 0.2rem 0 0;
        padding: 0.32rem 0.75rem;
        border-radius: 999px;
        background: #ede9fe;
        color: #6d28d9;
        font-size: 0.6rem;
        font-weight: 800;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        pointer-events: none;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__badge svg,
      #modal-modelo-info .modelo-info-modal__badge svg {
        width: 15px;
        height: 15px;
      }

      /* Título mobile por tipo (pseudo-elemento — sem alterar HTML) */
      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__media::before,
      #modal-modelo-info .modelo-info-modal__media::before {
        content: 'Detalhes do livro brochura';
        order: 2;
        display: block;
        margin: 0.55rem 0.75rem 0;
        padding-bottom: 0.6rem;
        font-size: clamp(1.05rem, 3vh, 1.25rem);
        font-weight: 800;
        line-height: 1.2;
        letter-spacing: -0.02em;
        text-align: center;
        color: #0f172a;
        background: linear-gradient(#7c3aed, #7c3aed) bottom center / 38px 3px no-repeat;
      }

      html.is-mobile-ref #modal-modelo-info[data-modelo-info="brochura"] .modelo-info-modal__media::before,
      #modal-modelo-info[data-modelo-info="brochura"] .modelo-info-modal__media::before {
        content: 'Detalhes do livro brochura';
      }

      html.is-mobile-ref #modal-modelo-info[data-modelo-info="capa-dura"] .modelo-info-modal__media::before,
      #modal-modelo-info[data-modelo-info="capa-dura"] .modelo-info-modal__media::before {
        content: 'Detalhes do livro Capa dura';
      }

      html.is-mobile-ref #modal-modelo-info[data-modelo-info="canoa"] .modelo-info-modal__media::before,
      #modal-modelo-info[data-modelo-info="canoa"] .modelo-info-modal__media::before {
        content: 'Detalhes do livro Grampo / Canoa';
      }

      /* Descrição (pseudo-elemento) */
      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__media::after,
      #modal-modelo-info .modelo-info-modal__media::after {
        content: 'Assista ao vídeo e conheça todos os detalhes antes da impressão.';
        order: 3;
        display: block;
        margin: 0.5rem 1.1rem 0.6rem;
        font-size: clamp(0.72rem, 1.7vh, 0.8rem);
        line-height: 1.45;
        text-align: center;
        color: #64748b;
      }

      /* Vídeo — protagonista, caixa escura arredondada */
      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__body,
      #modal-modelo-info .modelo-info-modal__body {
        order: 4;
        flex: 0 1 auto;
        min-height: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        padding: 0;
        background: transparent;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__img,
      #modal-modelo-info .modelo-info-modal__img {
        display: block;
        width: auto;
        max-width: 100%;
        height: auto;
        max-height: min(44vh, calc(100dvh - 19rem));
        margin: 0 auto;
        border-radius: 18px;
        background: #fff;
        object-fit: contain;
        object-position: center center;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__img[hidden],
      #modal-modelo-info .modelo-info-modal__img[hidden] {
        display: none !important;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__video,
      #modal-modelo-info .modelo-info-modal__video {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        max-height: min(42vh, calc(100dvh - 20rem));
        margin: 0 auto;
        border-radius: 14px;
        background: #111318;
        object-fit: contain;
        object-position: center center;
        box-shadow: 0 10px 26px rgba(15, 23, 42, 0.2);
        -webkit-touch-callout: default;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__video[hidden],
      #modal-modelo-info .modelo-info-modal__video[hidden] {
        display: none !important;
      }

      /* Rodapé: destaques + botão gradiente */
      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__foot,
      #modal-modelo-info .modelo-info-modal__foot {
        order: 5;
        flex: 0 0 auto;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        padding: 0.6rem 0 0.8rem;
        background: transparent;
        border-top: 0;
      }

      html.is-mobile-ref #modal-modelo-info .modelo-info-modal__foot::before,
      #modal-modelo-info .modelo-info-modal__foot::before {
        content: '📖 Acabamentos   ·   🧱 Materiais   ·   🚚 Entrega Brasil';
        display: block;
        white-space: pre;
        text-align: center;
        font-size: 0.62rem;
        font-weight: 600;
        letter-spacing: 0.01em;
        color: #475569;
      }

      html.is-mobile-ref #modal-modelo-info #btn-modelo-info-entendi,
      #modal-modelo-info #btn-modelo-info-entendi {
        width: 100%;
        min-height: 46px;
        margin: 0;
        padding: 0.65rem 1rem;
        border: 0;
        border-radius: 14px;
        background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%);
        color: #fff;
        font-size: 0.78rem;
        font-weight: 800;
        letter-spacing: 0.07em;
        text-transform: uppercase;
        box-shadow: 0 10px 22px rgba(91, 33, 182, 0.3);
      }

      html.is-mobile-ref #modal-modelo-info #btn-modelo-info-entendi:active,
      #modal-modelo-info #btn-modelo-info-entendi:active {
        filter: brightness(0.95);
        transform: translateY(1px);
      }
    }

    #login-modal.modal-backdrop {
      background: rgba(8, 14, 35, 0.58);
      backdrop-filter: blur(6px);
    }

    .modal-card {
      width: 100%;
      max-width: 420px;
      background: var(--card);
      border-radius: var(--radius);
      border: 1px solid var(--border);
      box-shadow: 0 25px 50px rgba(15, 23, 42, 0.2);
      overflow: hidden;
    }

    .modal-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      padding: 1rem 1.15rem;
      border-bottom: 1px solid var(--border);
      background: var(--card);
    }

    .modal-head h3 {
      margin: 0;
      font-size: 1rem;
      font-weight: 700;
    }

    .modal-close {
      border: none;
      background: transparent;
      font-size: 1.35rem;
      line-height: 1;
      cursor: pointer;
      color: var(--muted);
      padding: 0.15rem;
      border-radius: 6px;
    }

    .modal-close:hover {
      color: var(--text);
      background: var(--border);
    }

    .modal-body {
      padding: 1.15rem 1.15rem 1.25rem;
    }

    .modal-feedback {
      margin-top: 0.65rem;
      font-size: 0.85rem;
      font-weight: 600;
      color: #475569;
      min-height: 1.25rem;
    }

    .modal-feedback.modal-feedback--success {
      color: #15803d;
    }

    .modal-feedback.modal-feedback--error {
      color: var(--danger);
      font-weight: 600;
    }

    .modal-feedback.modal-feedback--progress {
      color: #2563eb;
    }

    .modal-actions {
      margin-top: 1rem;
      display: flex;
      gap: 0.65rem;
      flex-wrap: wrap;
    }

    .reg-exists-modal__msg {
      margin: 0;
      line-height: 1.55;
      font-size: 0.98rem;
      color: var(--text);
    }

    .reg-exists-modal__actions {
      margin-top: 1.1rem;
      justify-content: stretch;
    }

    .reg-exists-modal__actions .btn-secondary,
    .reg-exists-modal__actions .btn-primary {
      flex: 1;
      min-width: 0;
    }

    @media (max-width: 420px) {
      .reg-exists-modal__actions {
        flex-direction: column;
      }
    }

    .login-modal-shell {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 0.5rem;
      width: min(96vw, 26rem);
    }

    #login-modal .login-modal-shell {
      width: min(92vw, 31rem);
      gap: 0;
      border-radius: 22px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 26px 60px rgba(15, 23, 42, 0.32);
      transform: scale(0.82);
      transform-origin: center center;
    }

    .login-modal-shell__close {
      position: absolute;
      right: -0.15rem;
      top: -0.35rem;
      z-index: 2;
      border: none;
      background: transparent;
      font-size: 1.45rem;
      line-height: 1;
      cursor: pointer;
      color: var(--muted);
      padding: 0.2rem 0.35rem;
      border-radius: 8px;
    }

    .login-modal-shell__close:hover {
      color: #0f172a;
      background: rgba(148, 163, 184, 0.2);
    }

    .login-modal-hero {
      text-align: center;
      padding: 1.15rem 1.5rem 1.05rem;
      margin: 0;
      border-radius: 12px;
      background: linear-gradient(145deg, #0c2747 0%, #143c66 45%, #0f3060 100%);
      box-shadow:
        0 10px 28px rgba(15, 23, 42, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
    }

    .login-modal-hero__title {
      margin: 0;
      font-size: 1.55rem;
      font-weight: 600;
      color: #fff;
      letter-spacing: -0.02em;
      line-height: 1.2;
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    }

    .login-modal-hero__sub {
      margin: 0.4rem 0 0;
      font-size: 0.95rem;
      color: rgba(226, 232, 240, 0.95);
      font-weight: 500;
      line-height: 1.35;
    }

    .login-modal-shell > .login-modal-shell__close {
      color: rgba(255, 255, 255, 0.82);
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    }

    .login-modal-shell > .login-modal-shell__close:hover {
      color: #fff;
      background: rgba(255, 255, 255, 0.15);
    }

    #login-modal .login-modal-shell__close {
      right: 1.15rem;
      top: 1rem;
      color: #b3b6bf;
      text-shadow: none;
      font-size: 2rem;
      padding: 0;
      width: 1.8rem;
      height: 1.8rem;
      background: transparent;
    }

    #login-modal .login-modal-shell__close:hover {
      color: #8f94a0;
      background: transparent;
    }

    .login-modal-card {
      max-width: min(96vw, 26rem);
      width: 100%;
      border-radius: 12px;
      border: 1px solid rgba(148, 163, 184, 0.35);
      box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12);
      --login-coral: #D34E44;
      --login-coral-hover: #b83f36;
    }

    #login-modal .login-modal-card {
      max-width: 100%;
      border-radius: 0;
      border: 0;
      box-shadow: none;
      background: #fcfcff;
      --login-coral: #5548f0;
      --login-coral-hover: #4b3fe0;
    }

    .login-modal-body {
      padding: 1.1rem 1.2rem 1.2rem;
    }

    #login-modal .login-modal-body {
      padding: 0.9rem 2.35rem 1.45rem;
    }

    .login-switch {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.35rem;
      padding: 0.25rem;
      border-radius: 12px;
      background: #f1f5f9;
      margin: 0.6rem 0 0.9rem;
    }

    #login-modal .login-switch {
      margin: 0.2rem 0 1.15rem;
      border-radius: 12px;
      background: #f1f2f7;
      padding: 0;
      gap: 0;
      border: 1px solid #eceef5;
    }

    .login-switch__btn {
      border: none;
      border-radius: var(--radius);
      padding: 0.72rem 0.75rem;
      background: transparent;
      color: var(--muted);
      font-size: 1.02rem;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    #login-modal .login-switch__btn {
      min-height: 3.05rem;
      font-size: 1.03rem;
      font-weight: 600;
      color: #6f7380;
      border-radius: 13px;
      border-bottom: 3px solid transparent;
      gap: 0.6rem;
    }

    .login-switch__btn.is-active {
      background: #fff;
      color: #0f172a;
      box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
    }

    #login-modal .login-switch__btn.is-active {
      color: #5a46d9;
      background: #fff;
      box-shadow: none;
      border-bottom-color: #5a46d9;
    }

    .login-modal-card .login-switch__btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      font-size: 0.92rem;
    }

    #login-modal .login-switch__btn .login-icon {
      width: 1.18rem;
      height: 1.18rem;
      display: inline-flex;
      color: currentColor;
      opacity: 0.95;
    }

    #login-modal .login-switch__btn .login-icon svg {
      width: 100%;
      height: 100%;
      stroke: currentColor;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .login-input-wrap {
      position: relative;
      display: flex;
      align-items: center;
    }

    .login-input-wrap__glyph {
      position: absolute;
      left: 0.72rem;
      z-index: 1;
      font-size: 1rem;
      line-height: 1;
      color: #94a3b8;
      pointer-events: none;
    }

    #login-modal .login-input-wrap__glyph {
      left: 0.95rem;
      width: 1.18rem;
      height: 1.18rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: #7f63de;
    }

    #login-modal .login-input-wrap__glyph svg {
      width: 100%;
      height: 100%;
      stroke: currentColor;
      fill: none;
      stroke-width: 1.9;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .login-input-wrap input {
      width: 100%;
      padding-left: 2.35rem;
      padding-right: 0.75rem;
    }

    #login-modal .login-input-wrap input {
      padding-left: 2.95rem;
      border-radius: 12px;
      border-color: #e5e7ee;
      background: #fff;
      height: 3rem;
      font-size: 0.98rem;
      color: #374151;
    }

    #login-modal .field label {
      font-size: 0.95rem;
      font-weight: 600;
      margin-bottom: 0.6rem;
      color: #1f2937;
    }

    #login-modal .field {
      margin-bottom: 1.05rem;
    }

    .login-input-wrap--password input {
      padding-right: 2.5rem;
    }

    .login-input-wrap__toggle {
      position: absolute;
      right: 0.35rem;
      border: none;
      background: transparent;
      padding: 0.35rem 0.5rem;
      cursor: pointer;
      color: #94a3b8;
      font-size: 1rem;
      line-height: 1;
    }

    #login-modal .login-input-wrap__toggle {
      color: #9aa1b0;
      right: 0.55rem;
    }

    #login-modal .login-input-wrap__toggle svg {
      width: 1.24rem;
      height: 1.24rem;
      stroke: currentColor;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .login-modal-card .modal-actions {
      margin-top: 1.1rem;
    }

    .login-modal-card .modal-actions .btn-primary {
      width: 100%;
      justify-content: center;
      text-align: center;
      background: var(--login-coral);
      border-color: var(--login-coral);
      font-weight: 700;
      border-radius: 8px;
      padding: 0.82rem 1rem;
    }

    #login-modal .login-modal-card .modal-actions {
      margin-top: 0.9rem;
    }

    #login-modal .login-modal-card .modal-actions .btn-primary {
      border-radius: 12px;
      min-height: 3.2rem;
      font-size: 1.1rem;
      font-weight: 700;
      background: linear-gradient(90deg, #4f46e5 0%, #5b4ef0 48%, #5f4ef2 100%);
      border: 0;
      color: #fff;
    }

    #login-modal .btn-login-arrow {
      font-size: 1.3rem;
      margin-left: 0.5rem;
      line-height: 1;
    }

    .login-modal-card .modal-actions .btn-primary:hover {
      background: var(--login-coral-hover);
      border-color: var(--login-coral-hover);
    }

    .login-modal-card .login-otp-actions .btn-secondary--full {
      width: 100%;
      justify-content: center;
      border-radius: 8px;
      padding: 0.72rem 1rem;
      font-weight: 600;
    }

    .login-modal-card .login-otp-actions .btn-primary {
      width: 100%;
      justify-content: center;
      border-radius: 8px;
      padding: 0.72rem 1rem;
      font-weight: 600;
    }

    .pl-login-inline-wrap {
      margin-top: 0.35rem;
    }

    .pl-login-inline-wrap .login-modal-card {
      box-shadow: none;
    }

    .pl-auth-hub {
      border: 1px dashed var(--border);
      border-radius: 12px;
      padding: 0.85rem 0.9rem 1rem;
      background: var(--card);
      margin-bottom: 0.85rem;
    }

    .pl-auth-hub__tabs {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.5rem;
      margin-bottom: 0.75rem;
    }

    .pl-auth-mrow,
    .pl-pay-confirm-m {
      display: none;
    }

    .pl-auth-hub__tab {
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 0.65rem 0.5rem;
      font-size: 0.9rem;
      font-weight: 700;
      cursor: pointer;
      background: #fff;
      color: #475569;
      transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    }

    .pl-auth-hub__tab:hover {
      border-color: #94a3b8;
      color: #0f172a;
    }

    .pl-auth-hub__tab.is-active {
      border-color: #2563eb;
      color: #1d4ed8;
      background: #f0f5ff;
      box-shadow: 0 1px 0 rgba(37, 99, 235, 0.12);
    }

    .pl-auth-hub__panel[hidden] {
      display: none !important;
    }

    .pl-auth-choice-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.65rem;
      margin: 0.2rem 0 0.8rem;
    }

    .pl-auth-choice-btn {
      border: 1px solid var(--border);
      background: #fff;
      border-radius: 12px;
      padding: 0.8rem 0.75rem;
      text-align: left;
      cursor: pointer;
      transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }

    .pl-auth-choice-btn:hover {
      border-color: rgba(37, 99, 235, 0.14);
      box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
    }

    .pl-auth-choice-btn.is-active {
      border-color: #2563eb;
      background: #f0f5ff;
      box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12);
    }

    .pl-auth-choice-btn__title {
      margin: 0;
      font-size: 0.93rem;
      font-weight: 600;
      color: #0f172a;
    }

    .pl-auth-choice-btn__sub {
      margin: 0.2rem 0 0;
      color: var(--muted);
      font-size: 0.82rem;
      line-height: 1.35;
    }

    .reg-frete-summary {
      margin: 0 0 0.55rem;
      padding: 0.48rem 0.62rem;
      border-radius: var(--radius);
      background: #f8fafc;
      border: 1px solid #e2e8f0;
      color: #64748b;
      font-size: 0.82rem;
      line-height: 1.38;
      font-weight: 600;
    }

    .login-modal-card .login-forgot {
      margin: 0.35rem 0 0;
      font-size: 0.88rem;
    }

    .login-modal-card .login-forgot a {
      color: #2563eb;
      font-weight: 600;
      text-decoration: none;
    }

    .login-modal-card .login-forgot a:hover {
      text-decoration: underline;
    }

    .login-modal-card .login-aux-links {
      margin: 0.5rem 0 0;
      font-size: 0.88rem;
      color: var(--muted);
      text-align: center;
      line-height: 1.5;
    }

    #login-modal .login-modal-card .login-aux-links {
      margin: 0.3rem 0 0;
      font-size: 0.94rem;
    }

    .login-modal-card .login-aux-links__btn {
      background: none;
      border: 0;
      padding: 0;
      margin: 0;
      font: inherit;
      color: #2563eb;
      font-weight: 600;
      cursor: pointer;
      text-decoration: none;
    }

    #login-modal .login-modal-card .login-aux-links__btn {
      color: #5a46d9;
      font-weight: 700;
    }

    .login-modal-card .login-aux-links__btn:hover {
      text-decoration: underline;
    }

    .login-modal-card .login-aux-links__sep {
      margin: 0 0.35rem;
      color: #94a3b8;
      user-select: none;
    }

    #login-modal .login-modal-card .login-aux-links__sep {
      margin: 0 0.6rem;
      color: #b0b5c2;
    }

    #login-modal .login-modal-hero {
      text-align: center;
      padding: 1.5rem 3rem 0.65rem;
      border-radius: 0;
      background: #fff;
      box-shadow: none;
    }

    #login-modal .login-modal-hero__title {
      color: #111827;
      text-shadow: none;
      font-size: 2.25rem;
      margin-top: 0.8rem;
      letter-spacing: -0.015em;
    }

    #login-modal .login-modal-hero__sub {
      color: #6b7280;
      font-size: 0.95rem;
      margin-top: 0.38rem;
      font-weight: 500;
    }

    #login-modal .login-modal-hero__icon {
      width: 3.65rem;
      height: 3.65rem;
      margin: 0 auto;
      border-radius: 999px;
      background: #f0edf9;
      color: #7e63da;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    #login-modal .login-modal-hero__icon svg {
      width: 1.6rem;
      height: 1.6rem;
      stroke: currentColor;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    #login-modal .login-modal-trust {
      background: #f4f3f8;
      border-top: 1px solid #ecebf2;
      padding: 0.95rem 1.2rem 1.05rem;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.65rem;
    }

    #login-modal .login-modal-trust__item {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.45rem;
      color: #5f6472;
      font-size: 0.82rem;
      font-weight: 500;
      text-align: center;
      line-height: 1.2;
    }

    #login-modal .login-modal-trust__item svg {
      width: 1.24rem;
      height: 1.24rem;
      stroke: #5f4bd5;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      flex: 0 0 auto;
    }

    .login-pane-cadastro .hint {
      margin-top: 0;
      margin-bottom: 0.65rem;
    }

    .step2-inline-forms[hidden] {
      display: none !important;
    }

    /* Identificação (#wizard-step-2) mobile: estilos finais no fim do &lt;style&gt; (cascata sobre .layout-main .wizard-step &gt; .card &gt; h2) */

    .step2-auth-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.75rem;
      margin-bottom: 0.9rem;
    }

    .step2-auth-card {
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 0.8rem;
      background: #fff;
    }

    @media (max-width: 760px) {
      .step2-auth-grid {
        grid-template-columns: 1fr;
      }
    }

    /* Modal — tecnologia de impressão (referência jato de tinta) */
    #modal-color-tech.modal-backdrop {
      padding: max(0.5rem, env(safe-area-inset-top)) max(0.5rem, env(safe-area-inset-right)) max(0.5rem, env(safe-area-inset-bottom)) max(0.5rem, env(safe-area-inset-left));
      align-items: center;
      justify-content: center;
    }

    #modal-color-tech .color-tech-modal-card {
      position: relative;
      display: flex;
      flex-direction: column;
      width: min(94vw, 680px);
      max-width: 680px;
      max-height: calc(100dvh - 1.5rem);
      overflow: hidden;
      padding: 0;
      border: 1px solid #dbe7fb;
      border-radius: 22px;
      background: #fff;
      box-shadow: 0 24px 64px rgba(15, 23, 42, 0.18), 0 0 0 3px rgba(59, 130, 246, 0.28);
    }

    #modal-color-tech .color-tech-modal-card::before {
      content: '';
      display: block;
      height: 4px;
      flex-shrink: 0;
      background: linear-gradient(90deg, #2563eb 0%, #3b82f6 50%, #60a5fa 100%);
      border-radius: 22px 22px 0 0;
    }

    #modal-color-tech .color-tech-modal-card .modal-head {
      display: block;
      flex-shrink: 0;
      padding: 1.15rem 1.35rem 0.35rem;
      border-bottom: none;
      background: #fff;
    }

    #modal-color-tech .color-tech-modal-card .modal-body {
      flex: 1;
      min-height: 0;
      overflow-x: hidden;
      overflow-y: auto;
      padding: 0.35rem 1.35rem 1.2rem;
      border: none;
      background: transparent;
    }

    #modal-color-tech .print-tech-modal__close {
      position: absolute;
      top: 0.85rem;
      right: 0.85rem;
      z-index: 6;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 34px;
      height: 34px;
      margin: 0;
      padding: 0;
      border: 1px solid #e2e8f0;
      border-radius: 50%;
      background: #fff;
      color: #94a3b8;
      font-size: 1rem;
      line-height: 1;
      cursor: pointer;
      box-shadow: none;
    }

    #modal-color-tech .print-tech-modal__close svg {
      width: 14px;
      height: 14px;
    }

    #modal-color-tech .print-tech-modal__close:hover {
      background: #f8fafc;
      color: #334155;
    }

    #modal-color-tech .print-tech-modal__header {
      display: flex;
      align-items: center;
      gap: 0.85rem;
      margin: 0;
      padding-right: 2.2rem;
    }

    #modal-color-tech .print-tech-modal__icon {
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 52px;
      height: 52px;
      border-radius: 16px;
      background: #eef4ff;
      color: #2563eb;
    }

    #modal-color-tech .print-tech-modal__icon svg {
      width: 26px;
      height: 26px;
    }

    #modal-color-tech .print-tech-modal__title-wrap {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 0.2rem;
      min-width: 0;
    }

    #modal-color-tech #modal-color-tech-title {
      margin: 0;
      font-size: 1.25rem;
      font-weight: 800;
      line-height: 1.2;
      letter-spacing: -0.02em;
      color: #0f172a;
      text-transform: none;
    }

    #modal-color-tech .print-tech-modal__subtitle {
      margin: 0;
      font-size: 0.875rem;
      font-weight: 500;
      line-height: 1.4;
      color: #94a3b8;
    }

    #modal-color-tech .print-tech-modal__body {
      display: flex;
      flex-direction: column;
      gap: 0.95rem;
      min-height: 0;
    }

    #modal-color-tech .print-tech-modal__benefits {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0;
      margin: 0.35rem 0 0.15rem;
      padding: 0.15rem 0 0.35rem;
      list-style: none;
    }

    #modal-color-tech .print-tech-modal__benefits li {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      gap: 0.45rem;
      padding: 0.15rem 0.55rem;
      text-align: center;
      border-right: 1px solid #e8eef7;
    }

    #modal-color-tech .print-tech-modal__benefits li:last-child {
      border-right: none;
    }

    #modal-color-tech .print-tech-modal__benefit-ico {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 28px;
      height: 28px;
      color: #2563eb;
    }

    #modal-color-tech .print-tech-modal__benefit-ico svg {
      width: 26px;
      height: 26px;
    }

    #modal-color-tech .print-tech-modal__benefits li span:last-child {
      font-size: 0.72rem;
      font-weight: 600;
      line-height: 1.28;
      color: #334155;
    }

    #modal-color-tech .print-tech-modal__warn {
      display: flex;
      align-items: flex-start;
      gap: 0.7rem;
      margin: 0;
      padding: 0.95rem 1rem;
      border: none;
      border-radius: 14px;
      background: #fff6e8;
    }

    #modal-color-tech .print-tech-modal__warn-ico {
      flex-shrink: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.35rem;
      height: 1.35rem;
      margin-top: 0.05rem;
      border-radius: 50%;
      background: #f59e0b;
      color: #fff;
      font-size: 0.8rem;
      font-weight: 800;
      line-height: 1;
    }

    #modal-color-tech .print-tech-modal__warn .print-tech-modal__warn-title {
      margin: 0 0 0.28rem;
      font-size: 0.9375rem;
      font-weight: 800;
      line-height: 1.25;
      color: #0f172a;
    }

    #modal-color-tech .print-tech-modal__warn p:not(.print-tech-modal__warn-title) {
      margin: 0;
      font-size: 0.8125rem;
      line-height: 1.5;
      color: #475569;
    }

    #modal-color-tech .print-tech-modal__ack {
      position: relative;
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
      margin: 0;
      padding: 0.95rem 1rem;
      border-radius: 14px;
      background: #f3f8ff;
      cursor: pointer;
    }

    #modal-color-tech .print-tech-modal__ack input {
      position: absolute;
      width: 1px;
      height: 1px;
      opacity: 0;
      pointer-events: none;
    }

    #modal-color-tech .print-tech-modal__ack-box {
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 22px;
      height: 22px;
      margin-top: 0.12rem;
      border: 2px solid #cbd5e1;
      border-radius: 6px;
      background: #fff;
      color: transparent;
    }

    #modal-color-tech .print-tech-modal__ack-box svg {
      width: 14px;
      height: 14px;
    }

    #modal-color-tech .print-tech-modal__ack input:checked + .print-tech-modal__ack-box {
      border-color: #2563eb;
      background: #2563eb;
      color: #fff;
    }

    #modal-color-tech .print-tech-modal__ack input:focus-visible + .print-tech-modal__ack-box {
      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.25);
    }

    #modal-color-tech .print-tech-modal__ack-copy {
      display: flex;
      flex-direction: column;
      gap: 0.15rem;
      min-width: 0;
    }

    #modal-color-tech .print-tech-modal__ack-copy strong {
      font-size: 0.875rem;
      font-weight: 800;
      line-height: 1.35;
      color: #0f172a;
    }

    #modal-color-tech .print-tech-modal__ack-copy span {
      font-size: 0.8125rem;
      font-weight: 500;
      line-height: 1.4;
      color: #64748b;
    }

    #modal-color-tech .print-tech-modal__actions {
      display: grid;
      grid-template-columns: 1fr 1.45fr;
      gap: 0.75rem;
      margin: 0.15rem 0 0;
    }

    #modal-color-tech .print-tech-modal__btn-back,
    #modal-color-tech #btn-color-tech-accept {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      width: 100%;
      min-height: 48px;
      height: 48px;
      padding: 0 1rem;
      border-radius: 14px;
      font-size: 0.9375rem;
      font-weight: 700;
      letter-spacing: 0;
      cursor: pointer;
      transition: background 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
    }

    #modal-color-tech .print-tech-modal__btn-back {
      border: 1px solid #e2e8f0;
      background: #fff;
      color: #0f172a;
      box-shadow: none;
    }

    #modal-color-tech .print-tech-modal__btn-back:hover,
    #modal-color-tech .print-tech-modal__btn-back:focus-visible {
      background: #f8fafc;
      border-color: #cbd5e1;
    }

    #modal-color-tech #btn-color-tech-accept {
      border: none;
      background: #2563eb;
      color: #fff;
      box-shadow: none;
    }

    #modal-color-tech #btn-color-tech-accept svg {
      width: 16px;
      height: 16px;
    }

    #modal-color-tech #btn-color-tech-accept:hover,
    #modal-color-tech #btn-color-tech-accept:focus-visible {
      background: #1d4ed8;
    }

    #modal-color-tech #btn-color-tech-accept:disabled {
      opacity: 0.45;
      cursor: not-allowed;
      background: #2563eb;
    }

    #modal-color-tech .print-tech-modal__footer {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      margin: 0.1rem 0 0;
      font-size: 0.75rem;
      line-height: 1.35;
      color: #94a3b8;
      text-align: center;
    }

    #modal-color-tech .print-tech-modal__footer svg {
      flex-shrink: 0;
      width: 0.95rem;
      height: 0.95rem;
      color: #22c55e;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #modal-color-tech .color-tech-modal-card {
        width: min(92vw, 680px);
        max-width: 680px;
      }

      #modal-color-tech .color-tech-modal-card .modal-head {
        padding: 1.2rem 1.5rem 0.4rem;
      }

      #modal-color-tech .color-tech-modal-card .modal-body {
        padding: 0.25rem 1.5rem 1.25rem;
      }
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #modal-color-tech.modal-backdrop {
        align-items: center;
        justify-content: center;
        padding: max(0.5rem, env(safe-area-inset-top)) 0.7rem max(0.5rem, env(safe-area-inset-bottom));
      }

      #modal-color-tech .color-tech-modal-card {
        width: min(94vw, 430px);
        max-width: min(94vw, 430px);
        max-height: calc(100dvh - 1rem);
        height: auto;
        margin: auto;
        border-radius: 18px;
      }

      #modal-color-tech .color-tech-modal-card .modal-head {
        padding: 0.9rem 0.95rem 0.25rem;
      }

      #modal-color-tech .print-tech-modal__header {
        gap: 0.65rem;
        padding-right: 1.85rem;
      }

      #modal-color-tech .print-tech-modal__icon {
        width: 42px;
        height: 42px;
        border-radius: 12px;
      }

      #modal-color-tech .print-tech-modal__icon svg {
        width: 22px;
        height: 22px;
      }

      #modal-color-tech #modal-color-tech-title {
        font-size: 1.05rem;
      }

      #modal-color-tech .print-tech-modal__subtitle {
        font-size: 0.78rem;
      }

      #modal-color-tech .print-tech-modal__close {
        top: 0.65rem;
        right: 0.65rem;
        width: 32px;
        height: 32px;
      }

      #modal-color-tech .color-tech-modal-card .modal-body {
        padding: 0.25rem 0.95rem 0.95rem;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
      }

      #modal-color-tech .print-tech-modal__body {
        gap: 0.75rem;
      }

      #modal-color-tech .print-tech-modal__benefits {
        grid-template-columns: 1fr 1fr;
        gap: 0.55rem 0.35rem;
        margin: 0.15rem 0 0;
        padding: 0.1rem 0;
      }

      #modal-color-tech .print-tech-modal__benefits li {
        border-right: none;
        padding: 0.35rem 0.2rem;
      }

      #modal-color-tech .print-tech-modal__benefits li span:last-child {
        font-size: 0.7rem;
      }

      #modal-color-tech .print-tech-modal__warn {
        padding: 0.8rem 0.8rem;
        border-radius: 12px;
      }

      #modal-color-tech .print-tech-modal__warn .print-tech-modal__warn-title {
        font-size: 0.875rem;
      }

      #modal-color-tech .print-tech-modal__warn p:not(.print-tech-modal__warn-title) {
        font-size: 0.75rem;
        line-height: 1.45;
      }

      #modal-color-tech .print-tech-modal__ack {
        padding: 0.8rem;
        border-radius: 12px;
      }

      #modal-color-tech .print-tech-modal__ack-copy strong {
        font-size: 0.8125rem;
      }

      #modal-color-tech .print-tech-modal__ack-copy span {
        font-size: 0.75rem;
      }

      #modal-color-tech .print-tech-modal__actions {
        grid-template-columns: 1fr;
        gap: 0.55rem;
      }

      #modal-color-tech .print-tech-modal__btn-back,
      #modal-color-tech #btn-color-tech-accept {
        min-height: 46px;
        height: 46px;
        border-radius: 12px;
        font-size: 0.9rem;
      }

      #modal-color-tech #btn-color-tech-accept {
        order: -1;
      }

      #modal-color-tech .print-tech-modal__footer {
        font-size: 0.7rem;
      }
    }

    @media (max-width: 380px) {
      #modal-color-tech .print-tech-modal__benefits {
        grid-template-columns: 1fr 1fr;
      }

      #modal-color-tech #modal-color-tech-title {
        font-size: 0.98rem;
      }
    }

    .card-miolo__steps {
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }

    .card-miolo__panel {
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 0.85rem 1rem;
      background: #fafcff;
      box-shadow: var(--shadow);
    }

    .card-miolo__panel .calc-flow-campo {
      margin-bottom: 0.35rem;
      padding: 0.35rem 0.4rem;
    }

    .card-miolo__panel .calc-flow-campo:last-child {
      margin-bottom: 0;
    }

    .card-miolo__step-label {
      font-size: 0.72rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--muted);
      margin: 0 0 0.55rem;
    }

    /* Passo 1 miolo: mesmo padrão visual que Tamanho / Orientação / Acabamento (#card-formato-acabamento) */
    .miolo-print-mode-seg {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .miolo-print-mode-seg__opt {
      position: relative;
      flex: 1 1 0;
      min-width: 0;
      margin: 0;
      padding: 0.6rem 0.65rem;
      border-radius: var(--radius);
      border: 1px solid #e5e7eb;
      background: #fff;
      cursor: pointer;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 0.45rem 0.55rem;
      text-align: left;
      font-size: 0.88rem;
      font-weight: 600;
      color: var(--text);
      transition: background 0.15s, border-color 0.15s, color 0.15s, box-shadow 0.15s;
    }

    .miolo-tile__ico {
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--muted);
    }

    .miolo-tile__ico svg {
      display: block;
    }

    .miolo-tile__text {
      min-width: 0;
      line-height: 1.25;
    }

    .miolo-tile__radio {
      position: relative;
      z-index: 1;
      width: 18px;
      height: 18px;
      border-radius: 999px;
      border: 2px solid #cbd5e1;
      box-sizing: border-box;
      flex-shrink: 0;
      pointer-events: none;
    }

    .miolo-print-mode-seg__opt input[type="radio"] {
      position: absolute;
      inset: 0;
      margin: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      cursor: pointer;
      z-index: 2;
    }

    .miolo-tile__sub {
      display: none !important;
    }

    .miolo-print-mode-seg__opt .miolo-tile__text,
    .miolo-print-mode-seg__opt .miolo-tile__sub,
    .miolo-print-mode-seg__opt .miolo-tile__ico,
    .miolo-print-mode-seg__opt .miolo-tile__radio,
    .miolo-print-mode-seg__opt .miolo-tile__figure,
    .miolo-print-mode-seg__opt .miolo-tile__figure img,
    .miolo-print-mode-seg__opt .miolo-tile__stack,
    .miolo-print-mode-seg__opt .miolo-tile__title-line,
    .miolo-print-mode-seg__opt .miolo-tile__bullets,
    .miolo-print-mode-seg__opt .miolo-tile__bullets li {
      position: relative;
      z-index: 1;
      pointer-events: none;
    }

    .miolo-print-mode-seg__opt:hover:not(:has(input:checked)) {
      background: #f0f5ff;
    }

    .miolo-print-mode-seg__opt:has(input:checked) {
      background: #f0f5ff;
      border-color: #2563eb;
      color: #333333;
      box-shadow: none;
    }

    .miolo-print-mode-seg__opt:has(input:checked) .miolo-tile__text {
      font-weight: 700;
      color: #333333;
    }

    .miolo-print-mode-seg__opt:has(input:checked) .miolo-tile__ico {
      color: #2563eb;
    }

    .miolo-print-mode-seg__opt:has(input:checked) .miolo-tile__radio {
      border-color: #2563eb;
      background: radial-gradient(circle at center, #2563eb 45%, #ffffff 48%);
    }

    .miolo-print-mode-seg__opt:has(input:focus-visible) {
      outline: 2px solid #2563eb;
      outline-offset: 2px;
    }

    #miolo-papel-flow.card-miolo__panel {
      position: relative;
    }

    .miolo-papel-seg {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .miolo-papel-seg__btn {
      flex: 1 1 0;
      min-width: 0;
      margin: 0;
      padding: 0.6rem 0.55rem;
      border-radius: var(--radius);
      border: 1px solid #e5e7eb;
      background: #fff;
      cursor: pointer;
      font-family: inherit;
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--text);
      text-align: left;
      line-height: 1.25;
      transition: background 0.15s, border-color 0.15s, color 0.15s, box-shadow 0.15s;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 0.45rem 0.5rem;
    }

    .miolo-papel-seg__btn .miolo-tile__name {
      min-width: 0;
      font-weight: inherit;
    }

    .miolo-papel-seg__sub {
      display: block;
      margin: 0;
      font-size: 0.625rem;
      font-weight: 400;
      line-height: 1.3;
      letter-spacing: 0.01em;
      color: #a3a3a3;
    }

    html.pl-livro-grampo .miolo-papel-seg__sub {
      font-size: 0.6rem;
      line-height: 1.28;
      letter-spacing: 0.015em;
    }

    .miolo-papel-seg__btn .miolo-tile__ico {
      color: var(--muted);
    }

    .miolo-papel-seg__btn[aria-pressed="true"] .miolo-tile__ico {
      color: #2563eb;
    }

    .miolo-papel-seg__btn .miolo-tile__radio {
      position: relative;
      z-index: 0;
      width: 18px;
      height: 18px;
      border-radius: 999px;
      border: 2px solid #cbd5e1;
      box-sizing: border-box;
      pointer-events: none;
    }

    .miolo-papel-seg__btn[aria-pressed="true"] .miolo-tile__radio {
      border-color: #2563eb;
      background: radial-gradient(circle at center, #2563eb 45%, #ffffff 48%);
    }

    .miolo-papel-seg__btn:hover:not([aria-pressed="true"]):not(:disabled) {
      background: #f0f5ff;
    }

    .miolo-papel-seg__btn[aria-pressed="true"] {
      background: #f0f5ff;
      border: 1px solid #2563eb;
      color: #333333;
      font-weight: 700;
      box-shadow: none;
    }

    .miolo-papel-seg__btn[aria-pressed="true"] .miolo-tile__name {
      color: #333333;
    }

    .miolo-papel-seg__btn:disabled {
      opacity: 0.55;
      cursor: not-allowed;
    }

    .miolo-papel-seg__btn:focus-visible {
      outline: 2px solid #2563eb;
      outline-offset: 2px;
    }

    /* Mobile: evita “esmagar” o texto dos papéis (3 opções na mesma linha) */
    @media (max-width: 480px) {
      .miolo-papel-seg__btn {
        flex: 1 1 calc(50% - 0.25rem);
        padding: 0.7rem 0.6rem;
      }

      .miolo-papel-seg__btn .miolo-tile__name {
        line-height: 1.2;
        overflow-wrap: anywhere;
      }
    }

    @media (max-width: 340px) {
      .miolo-papel-seg__btn {
        flex-basis: 100%;
      }
    }

    .miolo-papel-dd-hidden {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .card-miolo__panel--pages .calc-flow-campo {
      margin-bottom: 0.65rem;
    }

    .card-miolo__color-gate-actions {
      margin: 0 0 0.55rem;
    }

    .btn-soft--compact {
      padding: 0.45rem 0.7rem;
      font-size: 0.875rem;
    }

    .btn-soft {
      border: 1px solid var(--border);
      background: #f8fafc;
      color: #64748b;
      border-radius: var(--radius);
      padding: 0.6rem 0.9rem;
      font-weight: 700;
      cursor: pointer;
    }

    .btn-soft:hover {
      background: #f1f5f9;
    }

    #btn-color-tech-switch {
      border-color: rgba(37, 99, 235, 0.14);
      background: #f0f5ff;
      color: #1d4ed8;
    }

    .calc-flow-campo[data-flow-key="pagCl"].color-tech-unlocked.campo-bloqueado {
      opacity: 1;
      pointer-events: auto;
      filter: none;
    }

    .btn-primary {
      padding: 0.55rem 1rem;
      border-radius: 8px;
      border: none;
      font-weight: 600;
      font-size: 0.9rem;
      cursor: pointer;
      background: var(--accent);
      color: #fff;
    }

    .btn-primary:hover {
      filter: brightness(1.05);
    }

    .selection-summary .sum-head {
      margin: 0 0 0.65rem;
      padding: 0.5rem 0.75rem;
      font-size: 0.72rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: var(--text);
      background: #f8fafc;
      border: 1px solid rgba(37, 99, 235, 0.14);
      border-radius: var(--radius);
    }

    .sum-section-title {
      margin: 0 0 0.45rem;
      font-size: 0.68rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      color: var(--muted);
    }

    .sum-section-title.spaced {
      margin-top: 0.85rem;
      padding-top: 0.65rem;
      border-top: 1px solid var(--border);
    }

    .sum-rows {
      display: flex;
      flex-direction: column;
      gap: 0.1rem;
    }

    /* Blocos do resumo: textura de papel; borda leve para separar seções */
    .selection-summary .sum-block {
      margin-bottom: 0.65rem;
      padding: 0.6rem 0.7rem 0.65rem;
      border-radius: var(--radius);
      background: var(--pl-sum-paper-bg);
      border: 1px solid var(--border);
    }

    .selection-summary .sum-block:last-of-type {
      margin-bottom: 0;
    }

    .selection-summary .sum-block--hero {
      position: relative;
      z-index: 0;
      margin-top: 0.45rem;
      background: var(--pl-sum-paper-bg);
      border-color: var(--border);
      box-shadow: none;
    }

    /* A faixa .sum-section-title usa margem negativa e sobrepõe o bloco anterior;
       sem isto o fundo branco do hero pinta por cima da metade superior do título. */
    .selection-summary .sum-block:not(.sum-block--hero):not(.sum-block--frete-cta) {
      position: relative;
      z-index: 1;
    }

    /* Frete como bloco irmão do hero: sobe no stacking para ficar acima do véu do resumo */
    .selection-summary .sum-block--frete-cta {
      position: relative;
      z-index: 1;
      margin-top: -0.55rem;
      padding-top: 0.5rem;
      border-top: none;
      border-top-left-radius: 0;
      border-top-right-radius: 0;
    }

    .selection-summary .sum-block--hero--pre-frete {
      margin-bottom: 0;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }

    body.frete-spotlight-dim #selection-summary {
      position: relative;
    }

    body.frete-spotlight-dim #selection-summary::before {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 4;
      border-radius: inherit;
      background: rgba(2, 6, 23, 0.68);
      pointer-events: auto;
      transition: opacity 0.3s ease;
    }

    body.frete-spotlight-dim #selection-summary .sum-block--frete-cta {
      z-index: 12;
    }

    /* Mobile: frete sai do resumo e vai para #sum-frete-mobile-slot (após o card Serviços adicionais) — não escurecer o card do resumo */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      body.frete-spotlight-dim #orc-form.layout-shell > .layout-main {
        z-index: auto;
      }

      .layout-main > .overlay-focus.is-on {
        display: none !important;
      }

      body.frete-spotlight-dim #selection-summary::before {
        display: none;
      }

      .selection-summary .sum-block--hero--pre-frete {
        margin-bottom: 0.65rem;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
      }

      .sum-frete-mobile-slot {
        position: relative;
        z-index: 4;
        margin-top: 0.45rem;
      }

      #sum-frete-mobile-slot:not(:empty) {
        display: block !important;
      }

      body.frete-spotlight-dim .sum-frete-mobile-slot {
        z-index: 6;
      }

      /* Card como os demais blocos da calculadora (chapisco, borda, sombra, cantos) */
      .sum-frete-mobile-slot .sum-block--frete-cta--mobile-slot {
        margin-top: 0;
        background: var(--pl-bloco-paper-bg);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        padding: 0;
        overflow: hidden;
      }

      .sum-frete-mobile-slot .sum-frete-panel--mobile-slot {
        margin-top: 0;
        padding: 0;
        border-top: none;
        container-type: inline-size;
      }

      /* Faixa do título — chapisco roxo como nos demais blocos */
      .sum-frete-mobile-slot .sum-frete-card-title {
        margin: 0;
        width: 100%;
        max-width: none;
        box-sizing: border-box;
        padding: 0.72rem 1rem;
        font-size: clamp(0.8rem, 3.9cqi, 1.02rem);
        font-weight: 600;
        letter-spacing: -0.015em;
        line-height: 1.25;
        text-transform: none;
        color: var(--text);
        background-color: #f5f3ff;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat;
        border-bottom: 1px solid #e9d5ff;
        border-radius: var(--radius) var(--radius) 0 0;
        white-space: normal;
        overflow-wrap: anywhere;
      }

      .sum-frete-mobile-slot .sum-frete-focus-wrap {
        padding: 0.8rem 0.88rem 1rem;
      }

      .sum-frete-mobile-slot .sum-frete-field label {
        font-size: clamp(0.66rem, 3.3cqi, 0.86rem);
        line-height: 1.25;
        font-weight: 600;
      }

      .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo {
        margin-top: 2rem;
        margin-left: 0;
        margin-right: 0;
        border: 2px dashed #ff3b30;
        border-radius: 12px;
        background: transparent;
        box-shadow: none;
        transform: none;
        animation: none;
        overflow: visible;
      }

      .sum-frete-mobile-slot .sum-frete-focus-wrap.campo-ativo::before {
        content: none;
        display: none;
      }
    }

    /* Desktop (≥1024px): se o slot mobile estiver presente/visível, manter padrão visual (card) */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .sum-frete-mobile-slot {
        margin-top: 0.65rem;
      }

      /* Card como os demais blocos da calculadora (chapisco, borda, sombra, cantos) */
      .sum-frete-mobile-slot .sum-block--frete-cta--mobile-slot {
        margin-top: 0;
        background: var(--pl-bloco-paper-bg);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        padding: 0;
        overflow: hidden;
      }

      .sum-frete-mobile-slot .sum-frete-panel--mobile-slot {
        margin-top: 0;
        padding: 0;
        border-top: none;
        container-type: inline-size;
      }

      /* Faixa do título — chapisco roxo como nos demais blocos */
      .sum-frete-mobile-slot .sum-frete-card-title {
        margin: 0;
        width: 100%;
        max-width: none;
        box-sizing: border-box;
        padding: 0.72rem 1rem;
        font-size: 1rem;
        font-weight: 600;
        letter-spacing: -0.015em;
        line-height: 1.25;
        text-transform: none;
        color: var(--text);
        background-color: #f5f3ff;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat;
        border-bottom: 1px solid #e9d5ff;
        border-radius: var(--radius) var(--radius) 0 0;
        white-space: normal;
        overflow-wrap: anywhere;
      }

      .sum-frete-mobile-slot .sum-frete-focus-wrap {
        padding: 0.8rem 0.88rem 1rem;
      }
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .sum-frete-mobile-slot,
      #sum-frete-mobile-slot:not(:empty) {
        display: block !important;
        margin-top: 0.65rem;
      }

      /* Frete no resumo desktop: sem margem negativa que “vaza” da coluna */
      .selection-summary .sum-frete-focus-wrap {
        margin-left: 0;
        margin-right: 0;
      }

      .selection-summary .sum-block--frete-cta {
        margin-top: 0;
        padding-top: 0.65rem;
        border-top: 1px solid rgba(148, 163, 184, 0.35);
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
      }
    }

    .selection-summary.card {
      display: flex;
      flex-direction: column;
    }

    .selection-summary .sum-block--action {
      margin-top: auto;
      padding: 0.65rem 0.7rem;
      text-align: center;
      border-top: 1px solid var(--border);
      background: var(--pl-sum-paper-bg);
    }

    .btn-enviar-orc {
      width: 100%;
      padding: 0.55rem 1rem;
      border: none;
      border-radius: var(--radius);
      font-size: 0.9rem;
      font-weight: 700;
      cursor: pointer;
      background: #7c3aed;
      color: #fff;
      box-shadow: 0 2px 8px rgba(124, 58, 237, 0.28);
    }

    .btn-enviar-orc:hover {
      filter: brightness(1.06);
    }

    .sum-head-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.55rem;
      margin-bottom: 0.45rem;
    }

    .sum-head-row .sum-head {
      margin: 0;
      flex: 1 1 auto;
    }

    .btn-enviar-orc.btn-enviar-orc--top {
      width: auto;
      min-width: 5.2rem;
      padding: 0.38rem 0.75rem;
      border-radius: 999px;
      font-size: 0.78rem;
      font-weight: 600;
      background: #f5f3ff;
      color: #5b21b6;
      border: 1px solid rgba(91, 33, 182, 0.22);
      box-shadow: none;
    }

    .btn-enviar-orc.btn-enviar-orc--top:hover {
      background: #ede9fe;
      color: #5b21b6;
      filter: none;
    }

    .sum-head-actions {
      display: flex;
      align-items: center;
      gap: 0.35rem;
      flex-shrink: 0;
      position: relative;
      z-index: 8;
    }

    .btn-salvar-orc {
      width: 2rem;
      height: 2rem;
      padding: 0;
      border-radius: 999px;
      border: 1px solid rgba(91, 33, 182, 0.28);
      background: #fff;
      color: #7c3aed;
      font-size: 1.15rem;
      font-weight: 700;
      line-height: 1;
      cursor: pointer;
      flex-shrink: 0;
    }

    .btn-salvar-orc:hover {
      background: #f5f3ff;
      border-color: #7c3aed;
      color: #5b21b6;
    }

    .sum-orcamentos-salvos {
      margin: 0 0 0.55rem;
      padding: 0.5rem 0.55rem;
      border-radius: var(--radius);
      border: 1px dashed rgba(37, 99, 235, 0.22);
      background: #f8fafc;
    }

    .sum-orcamentos-salvos-title {
      margin: 0 0 0.35rem;
      font-size: 0.72rem;
      font-weight: 600;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: 0.03em;
    }

    .sum-orcamentos-salvos-list {
      margin: 0;
      padding: 0;
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 0.3rem;
    }

    .sum-orcamento-salvo-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.4rem;
      font-size: 0.78rem;
      line-height: 1.3;
    }

    .sum-orcamento-salvo-label {
      flex: 1 1 auto;
      min-width: 0;
      color: var(--text);
    }

    .sum-orcamento-salvo-remove {
      flex-shrink: 0;
      width: 1.35rem;
      height: 1.35rem;
      padding: 0;
      border: none;
      border-radius: 4px;
      background: transparent;
      color: #94a3b8;
      font-size: 1rem;
      line-height: 1;
      cursor: pointer;
    }

    .sum-orcamento-salvo-remove:hover {
      color: #dc2626;
      background: #fef2f2;
    }

    #modal-enviar-orc.modal-backdrop {
      z-index: 2600;
    }

    /* Chat fecha e este popup precisa ficar acima do widget (z-index ~99990). */
    #modal-enviar-orc.is-from-chat.modal-backdrop {
      z-index: 100010;
    }

    .enviar-orc-choice {
      display: flex;
      flex-direction: column;
      gap: 0.65rem;
    }

    .btn-enviar-opt {
      width: 100%;
      padding: 0.65rem 1rem;
      border-radius: var(--radius);
      border: 1px solid var(--border);
      font-size: 0.9rem;
      font-weight: 600;
      cursor: pointer;
      background: var(--card);
      color: var(--text);
      text-align: center;
    }

    .btn-enviar-opt:hover {
      border-color: #7c3aed;
      background: #f5f3ff;
      color: #5b21b6;
    }

    .btn-enviar-opt--primary {
      background: #7c3aed;
      border-color: #7c3aed;
      color: #fff;
    }

    .btn-enviar-opt--primary:hover,
    .btn-enviar-opt--primary:focus-visible {
      filter: none;
      background: #6d28d9;
      border-color: #6d28d9;
      color: #fff;
    }

    .enviar-orc-back {
      margin-top: 0.5rem;
      font-size: 0.85rem;
      font-weight: 600;
      background: none;
      border: none;
      color: #7c3aed;
      cursor: pointer;
      text-decoration: underline;
      padding: 0;
    }

    #enviar-orc-panel-wa .enviar-wa-lead,
    #enviar-orc-panel-wa .enviar-wa-copy {
      margin: 0 0 0.75rem;
      font-size: 0.9rem;
      line-height: 1.45;
      color: #64748b;
    }

    #enviar-orc-panel-wa .enviar-wa-q {
      margin: 0 0 0.85rem;
      font-size: 1.05rem;
      font-weight: 700;
      color: #0f172a;
      line-height: 1.3;
    }

    #enviar-orc-panel-wa .enviar-wa-motives {
      display: flex;
      flex-direction: column;
      gap: 0.55rem;
    }

    #enviar-orc-panel-wa .enviar-wa-motive {
      display: flex;
      align-items: flex-start;
      gap: 0.7rem;
      width: 100%;
      text-align: left;
      padding: 0.85rem 0.9rem;
      border-radius: 12px;
      border: 1px solid #e2e8f0;
      background: #fff;
      cursor: pointer;
      color: #0f172a;
    }

    #enviar-orc-panel-wa .enviar-wa-motive:hover {
      border-color: #cbd5e1;
      background: #f8fafc;
    }

    #enviar-orc-panel-wa .enviar-wa-motive__dot {
      flex: 0 0 12px;
      width: 12px;
      height: 12px;
      margin-top: 0.3rem;
      border-radius: 50%;
    }

    #enviar-orc-panel-wa .enviar-wa-motive--close .enviar-wa-motive__dot {
      background: #22c55e;
    }

    #enviar-orc-panel-wa .enviar-wa-motive--doubt .enviar-wa-motive__dot {
      background: #eab308;
    }

    #enviar-orc-panel-wa {
      position: relative;
    }

    #enviar-orc-panel-wa a.enviar-wa-motive {
      text-decoration: none;
      color: inherit;
      box-sizing: border-box;
    }

    #enviar-orc-panel-wa .enviar-wa-motive--guia .enviar-wa-motive__dot {
      background: #7c3aed;
    }

    #enviar-orc-panel-wa .enviar-wa-motive--email .enviar-wa-motive__dot {
      background: #2563eb;
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup {
      position: absolute;
      inset: 0;
      z-index: 4;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 0.85rem;
      background: rgba(15, 23, 42, 0.45);
      border-radius: inherit;
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup:not([hidden]) {
      display: flex;
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup__card {
      width: 100%;
      max-width: 22rem;
      background: #fff;
      border-radius: 14px;
      padding: 1rem 1.05rem 0.9rem;
      box-shadow: 0 16px 40px rgba(15, 23, 42, 0.18);
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup__card .field {
      display: block;
      margin: 0 0 0.75rem;
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup__card .field span {
      display: block;
      margin-bottom: 0.3rem;
      font-size: 0.8rem;
      font-weight: 600;
      color: #334155;
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup__card input[type="email"] {
      width: 100%;
      box-sizing: border-box;
    }

    #enviar-orc-panel-wa .enviar-wa-email-popup__err {
      color: #b91c1c;
    }

    #enviar-orc-panel-wa .enviar-wa-motive__body strong {
      display: block;
      font-size: 0.9rem;
      font-weight: 700;
      line-height: 1.35;
    }

    #enviar-orc-panel-wa .enviar-wa-confirm-links {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem 0.85rem;
      margin: 0 0 1rem;
    }

    #enviar-orc-panel-wa .enviar-wa-confirm-link {
      margin: 0;
      padding: 0;
      border: none;
      background: none;
      font-size: 0.85rem;
      font-weight: 600;
      color: #7c3aed;
      cursor: pointer;
      text-decoration: none;
      text-align: left;
    }

    #enviar-orc-panel-wa .enviar-wa-confirm-link:hover {
      text-decoration: underline;
    }

    #enviar-orc-panel-wa .enviar-wa-confirm-actions {
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      gap: 0.55rem;
    }

    #enviar-orc-panel-wa .enviar-wa-confirm-actions .btn-enviar-opt {
      flex: 1 1 9rem;
      width: auto;
    }

    /* Popup “Confirmar envio” — visual do modelo (somente esta etapa) */
    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) {
      background: rgba(15, 23, 42, 0.48);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      padding: 1.25rem;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-card--enviar-orc {
      width: min(720px, 92vw);
      max-width: min(720px, 92vw);
      max-height: min(90vh, 720px);
      display: flex;
      flex-direction: column;
      border-radius: 20px;
      background: #fff;
      border: 1px solid #e2e8f0;
      box-shadow: 0 25px 80px rgba(15, 23, 42, 0.25);
      overflow: hidden;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) #enviar-orc-step-choice,
    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) #enviar-wa-step-form,
    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) #enviar-wa-step-motive {
      display: none !important;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head {
      min-height: 64px;
      height: auto;
      padding: 14px 22px;
      align-items: center;
      border-bottom: 1px solid #e2e8f0;
      background: #fff;
      flex: 0 0 auto;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head h3 {
      display: grid;
      grid-template-columns: 40px 1fr;
      grid-template-rows: auto auto;
      column-gap: 10px;
      row-gap: 1px;
      align-items: center;
      flex: 1;
      font-size: 1.05rem;
      font-weight: 700;
      line-height: 1.2;
      color: #17233b;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head h3::before {
      content: '';
      grid-row: 1 / 3;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background-color: #ede9fe;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D28D9' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='M8 13h8M8 17h6M8 9h4'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: center;
      background-size: 18px;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head h3::after {
      content: 'Último passo para enviar sua proposta';
      grid-column: 2;
      font-size: 0.75rem;
      font-weight: 400;
      line-height: 1.3;
      color: #64748b;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-close {
      font-size: 1.5rem;
      color: #64748b;
      padding: 0.1rem 0.35rem;
      line-height: 1;
      flex: 0 0 auto;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-close:hover {
      color: #17233b;
      background: #f1f5f9;
    }

    #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-body {
      padding: 0;
      overflow: auto;
      flex: 1 1 auto;
    }

    #enviar-wa-step-confirm:not([hidden]) {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(150px, 210px);
      grid-template-rows: auto auto auto auto auto;
      column-gap: 18px;
      row-gap: 0.45rem;
      padding: 18px 24px 12px;
      position: relative;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-q {
      grid-column: 1;
      grid-row: 1;
      margin: 0 0 0.2rem;
      font-size: clamp(1.35rem, 2vw, 1.7rem);
      font-weight: 700;
      line-height: 1.18;
      color: #17233b;
      max-width: 11.4em;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-copy {
      grid-column: 1;
      margin: 0;
      font-size: clamp(0.82rem, 1vw, 0.9rem);
      font-weight: 400;
      line-height: 1.5;
      color: #64748b;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-copy:nth-of-type(2) {
      grid-row: 2;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-copy:nth-of-type(3) {
      grid-row: 3;
      margin-bottom: 0.55rem;
    }

    #enviar-wa-step-confirm:not([hidden])::after {
      content: '';
      grid-column: 2;
      grid-row: 1 / 4;
      min-height: 150px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 390 320' fill='none'%3E%3Cpath d='M62 198c28-86 238-128 286-22 24 52-42 118-148 128-116 12-166-28-138-106Z' fill='%23EDE9FE'/%3E%3Crect x='118' y='52' width='168' height='214' rx='22' fill='%23fff' stroke='%23DDD6FE' stroke-width='3'/%3E%3Crect x='148' y='96' width='108' height='11' rx='5.5' fill='%23DDD6FE'/%3E%3Crect x='148' y='124' width='108' height='11' rx='5.5' fill='%23EDE9FE'/%3E%3Crect x='148' y='152' width='86' height='11' rx='5.5' fill='%23EDE9FE'/%3E%3Crect x='148' y='180' width='98' height='11' rx='5.5' fill='%23EDE9FE'/%3E%3Ccircle cx='258' cy='82' r='26' fill='%237C3AED'/%3E%3Cpath d='M247 82.5l7.2 7.2 15.2-16' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M236 214l98-42-42 98-18-38-38-18z' fill='%237C3AED'/%3E%3Cpath d='M236 214l40 40' stroke='%23A78BFA' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M210 252c30-6 56 8 76 30' stroke='%23A78BFA' stroke-width='3' stroke-linecap='round' stroke-dasharray='5 8' fill='none'/%3E%3Cpath d='M304 58l5 12 13 1.5-10 7.5 3.5 12-11.5-7-11.5 7 3.5-12-10-7.5 13-1.5z' fill='%23C4B5FD'/%3E%3Cpath d='M328 108l3.5 8.5 9 1-7 5.5 2.5 8.5-8-5-8 5 2.5-8.5-7-5.5 9-1z' fill='%23DDD6FE'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-links {
      grid-column: 1 / -1;
      grid-row: 4;
      display: flex;
      flex-wrap: nowrap;
      align-items: stretch;
      justify-content: stretch;
      gap: 0;
      margin: 0.7rem 0 0.2rem;
      padding: 6px;
      background: #f8f7ff;
      border: 1px solid #ede9fe;
      border-radius: 16px;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-link {
      flex: 1 1 0;
      display: grid;
      grid-template-columns: 40px 1fr;
      grid-template-rows: auto auto;
      column-gap: 10px;
      row-gap: 2px;
      align-items: start;
      margin: 0;
      padding: 10px 12px;
      border: none;
      border-radius: 12px;
      background: transparent;
      font-size: 0.88rem;
      font-weight: 700;
      line-height: 1.3;
      color: #6d28d9;
      text-align: left;
      text-decoration: none;
      cursor: pointer;
      box-sizing: border-box;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-link:hover {
      background: rgba(255, 255, 255, 0.72);
      text-decoration: none;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-link::before {
      content: '';
      grid-row: 1 / 3;
      width: 38px;
      height: 38px;
      border-radius: 50%;
      background-color: #ede9fe;
      background-repeat: no-repeat;
      background-position: center;
      background-size: 18px;
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-guia::before {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D28D9' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.09 9a3 3 0 0 1 5.83 1c0 2-3 2.5-3 4'/%3E%3Ccircle cx='12' cy='17' r='0.7' fill='%236D28D9' stroke='none'/%3E%3C/svg%3E");
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-confirm-email::before {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D28D9' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-link::after {
      grid-column: 2;
      font-size: 0.74rem;
      font-weight: 400;
      line-height: 1.4;
      color: #64748b;
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-guia::after {
      content: 'Acesse nosso guia com as principais informações.';
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-confirm-email::after {
      content: 'Enviaremos os detalhes da proposta no seu e-mail.';
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions {
      grid-column: 1 / -1;
      grid-row: 5;
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      gap: 10px 12px;
      margin: 8px 0 0;
      padding: 14px 0 4px;
      border-top: 1px solid #e2e8f0;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions .btn-enviar-opt {
      flex: 1 1 calc(50% - 6px);
      width: auto;
      min-height: 48px;
      height: 48px;
      padding: 0 1rem;
      border-radius: 16px;
      border: 2px solid #e2e8f0;
      background: #fff;
      color: #17233b;
      font-size: 0.95rem;
      font-weight: 700;
      box-shadow: none;
      filter: none;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions .btn-enviar-opt:hover {
      background: #f8fafc;
      border-color: #cbd5e1;
      color: #17233b;
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-confirm-send.btn-enviar-opt--primary,
    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions .btn-enviar-opt--primary {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      border: none;
      background: linear-gradient(100deg, #7c3aed, #9333ea);
      color: #fff;
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-confirm-send.btn-enviar-opt--primary:hover,
    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions .btn-enviar-opt--primary:hover,
    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-confirm-send.btn-enviar-opt--primary:focus-visible {
      filter: none;
      background: linear-gradient(100deg, #6d28d9, #7e22ce);
      border: none;
      color: #fff;
    }

    #enviar-wa-step-confirm:not([hidden]) #enviar-wa-confirm-send::after {
      content: '';
      width: 16px;
      height: 16px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='M22 2 15 22l-4-9-9-4 20-7z'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
    }

    #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions::after {
      content: 'Enviar para um de nossos vendedores';
      flex: 1 1 100%;
      margin: -4px 0 0;
      font-size: 0.72rem;
      font-weight: 400;
      color: #64748b;
      text-align: right;
    }

    @media (max-width: 860px) {
      #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-card--enviar-orc {
        width: 94vw;
        max-width: 94vw;
        max-height: 90vh;
        border-radius: 16px;
      }

      #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head {
        min-height: 0;
        padding: 12px 14px;
      }

      #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head h3 {
        grid-template-columns: 36px 1fr;
        font-size: 0.95rem;
      }

      #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head h3::before {
        width: 36px;
        height: 36px;
        background-size: 16px;
      }

      #modal-enviar-orc:has(#enviar-wa-step-confirm:not([hidden])) .modal-head h3::after {
        font-size: 0.7rem;
      }

      #enviar-wa-step-confirm:not([hidden]) {
        grid-template-columns: 1fr;
        padding: 14px 14px 12px;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-q {
        max-width: none;
        font-size: 1.25rem;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-copy {
        font-size: 0.82rem;
      }

      #enviar-wa-step-confirm:not([hidden])::after {
        display: none;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-links {
        flex-direction: column;
        padding: 4px;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-link {
        font-size: 0.88rem;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions {
        flex-direction: column;
        gap: 8px;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions .btn-enviar-opt {
        flex: 1 1 auto;
        width: 100%;
        height: 48px;
        min-height: 48px;
        font-size: 0.92rem;
      }

      #enviar-wa-step-confirm:not([hidden]) .enviar-wa-confirm-actions::after {
        text-align: center;
        width: 100%;
        flex: 0 0 auto;
      }
    }

    .modal-card--enviar-orc {
      max-width: 440px;
    }

    .enviar-email-endereco-preview {
      margin-top: 0.4rem;
      padding: 0.45rem 0.6rem;
      font-size: 0.78rem;
      line-height: 1.45;
      color: #64748b;
      background: #f8fafc;
      border: 1px solid #e2e8f0;
      border-radius: 8px;
    }

    #modal-enviar-orc.is-email-preview .modal-card--enviar-orc {
      max-width: 900px;
    }

    .enviar-pdf-preview-scroll {
      margin-top: 0.55rem;
      max-height: min(42vh, 380px);
      overflow: auto;
      -webkit-overflow-scrolling: touch;
    }

    #modal-enviar-orc.is-email-preview .enviar-pdf-preview-scroll {
      max-height: min(38vh, 340px);
    }

    .enviar-pdf-preview-card {
      border: 1px solid var(--border);
      border-radius: 12px;
      background: #e2e8f0;
      padding: 0.65rem;
      overflow: visible;
    }

    .enviar-email-preview-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.65rem;
      margin-top: 0.75rem;
      flex-shrink: 0;
      padding-top: 0.5rem;
      position: sticky;
      bottom: 0;
      z-index: 2;
      background: linear-gradient(to top, #fff 70%, rgba(255, 255, 255, 0.96) 100%);
      padding-bottom: 0.15rem;
    }

    #modal-enviar-orc.is-email-preview .modal-card--enviar-orc {
      max-height: min(94vh, 920px);
      display: flex;
      flex-direction: column;
    }

    #modal-enviar-orc.is-email-preview .modal-body {
      flex: 1 1 auto;
      min-height: 0;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
    }

    #modal-enviar-orc.is-email-preview #enviar-orc-panel-email {
      display: flex;
      flex-direction: column;
      flex: 1 1 auto;
      min-height: 0;
    }

    .enviar-email-preview-actions .btn-enviar-opt {
      flex: 1 1 140px;
    }

    #calc-bloc-extras .btn-guided-confirm {
      margin-top: 0.75rem;
      width: 100%;
      max-width: 16rem;
    }

    .enviar-pdf-page {
      margin: 0 auto;
      background: #fff;
      border: 1px solid #e2e8f0;
      border-radius: 2px;
      box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12);
      overflow: hidden;
    }

    .enviar-pdf-page--a4 {
      position: relative;
      width: 210mm;
      max-width: 100%;
      box-sizing: border-box;
      isolation: isolate;
      /* manter transparente: o fundo está no container .enviar-pdf-page */
      background: transparent;
    }

    /* Staging off-screen só para medição — sem visibility:hidden (html2canvas não pinta) */
    .pl-pdf-capture-staging {
      position: fixed;
      left: -12000px;
      top: 0;
      width: 210mm;
      pointer-events: none;
      overflow: visible;
    }

    /* Holder visível no viewport durante html2canvas (evita PDF em branco) */
    .pl-pdf-capture-holder {
      position: fixed;
      left: 0;
      top: 0;
      width: 210mm;
      background: #fff;
      z-index: 2147483646;
      pointer-events: none;
      overflow: hidden;
    }

    .enviar-pdf-page--capture {
      width: 210mm !important;
      max-width: none !important;
      margin: 0;
      box-shadow: none;
      overflow: visible;
      background: #fff !important;
    }

    .enviar-pdf-page--capture .enviar-pdf-body {
      background: #fff;
    }

    .enviar-pdf-watermark {
      position: absolute;
      inset: 0;
      z-index: 50;
      display: flex;
      align-items: center;
      justify-content: center;
      pointer-events: none;
      overflow: hidden;
    }

    .enviar-pdf-watermark img {
      width: min(44%, 320px);
      max-width: 320px;
      height: auto;
      opacity: 0.042;
      transform: rotate(-10deg);
      object-fit: contain;
      user-select: none;
    }

    .enviar-pdf-head {
      position: relative;
      z-index: 1;
      padding: 0;
      background: #ffffff;
      color: #0f172a;
      border-bottom: none;
    }

    .enviar-pdf-head-top {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1.22fr) minmax(9.5rem, 11rem);
      gap: 1rem 1.35rem;
      align-items: center;
      padding: 1.05rem 1.2rem 1.15rem;
      background: #ffffff;
      border-bottom: 1px solid #e8ecf2;
    }

    .enviar-pdf-head-col--brand {
      min-width: 0;
      display: flex;
      align-items: center;
      justify-content: flex-start;
    }

    .enviar-pdf-head-brand-inner {
      display: flex;
      align-items: center;
      gap: 0.65rem;
      min-width: 0;
      width: 100%;
    }

    .enviar-pdf-logo-ring {
      flex-shrink: 0;
      padding: 3px;
      border-radius: 7px;
      background: linear-gradient(135deg, #dc2626 0%, #eab308 45%, #2563eb 100%);
      box-sizing: border-box;
    }

    .enviar-pdf-head-vrule {
      width: 1px;
      align-self: stretch;
      min-height: 3.35rem;
      background: #d8dee9;
      flex-shrink: 0;
    }

    .enviar-pdf-head-brand-txt {
      display: flex;
      flex-direction: column;
      gap: 0.12rem;
      justify-content: center;
      min-width: 0;
      flex: 1;
    }

    .enviar-pdf-marca-l1,
    .enviar-pdf-marca-l2 {
      font-size: 0.92rem;
      font-weight: 600;
      letter-spacing: 0.02em;
      color: #0c2461;
      line-height: 1.18;
    }

    .enviar-pdf-marca-l2 {
      font-size: 0.82rem;
    }

    .enviar-pdf-marca-rule {
      width: 2.35rem;
      height: 3px;
      margin: 0.4rem 0 0.28rem;
      border-radius: 2px;
      background: #2563eb;
    }

    .enviar-pdf-subtitulo {
      font-size: 0.66rem;
      color: var(--muted);
      line-height: 1.42;
      max-width: 16rem;
      font-style: normal;
    }

    .enviar-pdf-head-col--contact {
      min-width: 0;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .enviar-pdf-contact-rows {
      display: flex;
      flex-direction: column;
      gap: 0.42rem;
      width: 100%;
      max-width: 22rem;
      margin: 0 auto;
      font-size: 0.65rem;
      line-height: 1.42;
      color: #64748b;
    }

    .enviar-pdf-crow {
      display: flex;
      align-items: flex-start;
      gap: 0.45rem;
      min-width: 0;
    }

    .enviar-pdf-crow--split {
      flex-wrap: wrap;
      align-items: center;
      gap: 0.35rem 0.45rem;
    }

    .enviar-pdf-crow--split .enviar-pdf-crow-txt {
      flex: 0 1 auto;
    }

    .enviar-pdf-csep {
      width: 1px;
      height: 0.85rem;
      margin: 0 0.35rem;
      background: #94a3b8;
      flex-shrink: 0;
      align-self: center;
    }

    .enviar-pdf-crow-txt {
      min-width: 0;
      flex: 1;
    }

    .enviar-pdf-crow-muted {
      color: #475569;
      font-weight: 400;
    }

    .enviar-pdf-ico {
      flex-shrink: 0;
      width: 15px;
      height: 15px;
      margin-top: 0.1rem;
      color: #2563eb;
    }

    .enviar-pdf-head-col--orc {
      min-width: 0;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .enviar-pdf-orc-card {
      width: 100%;
      max-width: 10.75rem;
      box-sizing: border-box;
      padding: 0.65rem 0.75rem 0.72rem;
      border-radius: var(--radius);
      background: linear-gradient(180deg, #e8eef6 0%, #dce6f2 100%);
      border: 1px solid #c5d0e0;
      text-align: center;
    }

    .enviar-pdf-orc-badge {
      width: 2rem;
      height: 2rem;
      margin: 0 auto 0.48rem;
      border-radius: 50%;
      background: #2563eb;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
    }

    .enviar-pdf-orc-badge svg {
      width: 1rem;
      height: 1rem;
      display: block;
    }

    .enviar-pdf-orc-k {
      font-size: 0.52rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 0.22rem;
    }

    .enviar-pdf-orc-num {
      font-size: 1.05rem;
      font-weight: 600;
      color: var(--text);
      letter-spacing: 0.03em;
      line-height: 1.15;
    }

    .enviar-pdf-orc-hr {
      height: 1px;
      margin: 0.5rem 0 0.45rem;
      background: #94a3b8;
      opacity: 0.55;
    }

    .enviar-pdf-orc-dh {
      display: flex;
      align-items: flex-start;
      justify-content: center;
      gap: 0.42rem;
      text-align: left;
    }

    .enviar-pdf-orc-dh .enviar-pdf-ico {
      margin-top: 0.1rem;
      flex-shrink: 0;
    }

    .enviar-pdf-orc-dh-l {
      display: block;
      font-size: 0.52rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
    }

    .enviar-pdf-orc-dh-v {
      font-size: 0.58rem;
      color: #475569;
      font-weight: 600;
    }

    .enviar-pdf-head-bar {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem;
      flex-wrap: wrap;
      padding: 0.62rem 1rem;
      background: #0c2461;
      color: #fff;
      font-size: 0.68rem;
      line-height: 1.5;
      text-align: center;
    }

    .enviar-pdf-head-bar .enviar-pdf-ico {
      color: #fff;
      margin-top: 0;
      opacity: 0.95;
    }

    .enviar-pdf-head-bar-sep {
      opacity: 0.85;
      margin: 0 0.15rem;
    }

    .enviar-pdf-head-bar strong {
      font-weight: 600;
      color: #fff;
    }

    .enviar-pdf-logo-img {
      display: block;
      max-height: 46px;
      width: auto;
      height: auto;
      border-radius: 4px;
      background: #fff;
    }

    .enviar-pdf-body {
      position: relative;
      z-index: 1;
      padding: 0.75rem 1rem 1rem;
      background: #fff;
    }

    .enviar-pdf-lead {
      margin: 0 0 0.35rem;
      font-size: 0.78rem;
      line-height: 1.4;
      color: #0f172a;
    }

    .enviar-pdf-lead-text {
      margin: 0.35rem 0 0.65rem;
      font-size: 0.78rem;
      line-height: 1.45;
      color: #64748b;
    }

    .enviar-pdf-box--ref {
      border: 1px solid #d1d5db;
      border-radius: 8px;
      background: #fff;
      margin-bottom: 0.55rem;
      padding: 0.45rem 0.6rem 0.6rem;
    }

    .enviar-pdf-box-title {
      margin: 0 0 0.45rem;
      padding: 0;
      font-size: 0.72rem;
      font-weight: 600;
      color: var(--text);
      background: none;
      border: none;
      text-transform: none;
      letter-spacing: normal;
    }

    .enviar-pdf-box-list {
      margin: 0;
      padding: 0;
      list-style: none;
      font-size: 0.74rem;
      line-height: 1.45;
      color: var(--text);
    }

    .enviar-pdf-box-list li + li {
      margin-top: 0.25rem;
    }

    .enviar-pdf-box-list--plain li {
      font-weight: 400;
    }

    .enviar-pdf-bar-total {
      margin: 0.5rem -0.6rem -0.6rem;
      padding: 0.45rem 0.6rem;
      background: #fff8e6;
      border-top: 1px solid #e5e7eb;
      border-radius: 0 0 7px 7px;
      font-size: 0.72rem;
      font-weight: 600;
      color: #713f12;
    }

    .enviar-pdf-subhead {
      margin: 0.35rem 0 0.2rem;
      font-size: 0.72rem;
      font-weight: 700;
      color: #0f172a;
    }

    .enviar-pdf-p {
      margin: 0 0 0.35rem;
      font-size: 0.72rem;
      line-height: 1.45;
      color: #64748b;
    }

    .enviar-pdf-bullets {
      margin: 0 0 0.35rem;
      padding: 0 0 0 1rem;
      font-size: 0.72rem;
      line-height: 1.45;
      color: #64748b;
    }

    .enviar-pdf-tech {
      margin: 0;
      padding: 0 0 0 1rem;
      font-size: 0.66rem;
      line-height: 1.45;
      color: var(--muted);
    }

    .enviar-pdf-tech li + li {
      margin-top: 0.25rem;
    }

    .enviar-pdf-foot {
      margin-top: 0.85rem;
      padding-top: 0.5rem;
      border-top: 1px solid #e2e8f0;
    }

    .enviar-pdf-foot-row {
      display: flex;
      justify-content: space-between;
      font-size: 0.68rem;
      color: var(--muted);
      margin-bottom: 0.75rem;
    }

    .enviar-pdf-sigs {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.5rem 0.75rem;
      font-size: 0.62rem;
      color: var(--muted);
      text-align: center;
    }

    .enviar-pdf-sig {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0.25rem;
    }

    .enviar-pdf-sig--center .enviar-pdf-sig-name {
      font-size: 0.68rem;
      font-weight: 600;
      color: #0f172a;
      min-height: 1.1rem;
    }

    .enviar-pdf-sig-line {
      width: 100%;
      max-width: 7rem;
      height: 1px;
      background: #94a3b8;
    }

    .enviar-pdf-preview-note {
      margin: 0.5rem 0 0;
    }

    #enviar-orc-panel-email.enviar-orc-panel-active {
      padding-top: 0;
    }

    .modal-card--enviar-orc .modal-head {
      padding: 0.55rem 0.75rem;
    }

    .modal-card--enviar-orc .modal-head h3 {
      font-size: 0.95rem;
    }

    .modal-card--enviar-orc #enviar-orc-panel-email > .enviar-form-compact {
      padding: 0 0.15rem;
    }

    .enviar-form-compact-lead {
      margin: 0 0 0.35rem;
      font-size: 0.65rem;
      line-height: 1.3;
      color: #94a3b8;
    }

    .enviar-form-compact .field {
      margin-bottom: 0;
    }

    .enviar-form-compact .field label {
      font-size: 0.62rem;
      font-weight: 600;
      margin-bottom: 0.12rem;
      color: #94a3b8;
      text-transform: uppercase;
      letter-spacing: 0.02em;
    }

    .enviar-form-compact .field input {
      padding: 0.28rem 0.42rem;
      font-size: 0.78rem;
      min-height: 1.65rem;
      border-radius: 6px;
    }

    .enviar-form-grid {
      display: grid;
      grid-template-columns: 2.2fr 1.2fr 1.4fr 2fr;
      gap: 0.3rem 0.4rem;
      margin-bottom: 0.35rem;
      align-items: end;
    }

    .enviar-field--end {
      grid-column: span 2;
    }

    .enviar-field--orc {
      grid-column: 1 / -1;
    }

    .enviar-qty-cenarios-wrap {
      max-width: none;
      margin-left: 0;
      margin-right: 0;
    }

    .enviar-pdf-preview-scroll {
      max-width: 820px;
      margin-left: auto;
      margin-right: auto;
    }

    .enviar-form-compact .hint {
      font-size: 0.62rem;
      margin-top: 0.12rem;
    }

    .enviar-email-endereco-preview {
      margin-top: 0;
      padding: 0.28rem 0.42rem;
      font-size: 0.78rem;
      min-height: 1.65rem;
      border-radius: 6px;
      border: 1px solid #cbd5e1;
      background: #fff;
      display: flex;
      align-items: center;
      color: #334155;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .enviar-form-actions {
      margin-top: 0.25rem;
    }

    .enviar-form-actions .btn-enviar-opt--primary {
      font-size: 0.78rem;
      padding: 0.38rem 0.7rem;
      width: 100%;
    }

    #enviar-wapdf-err {
      margin: 0.35rem 0 0;
      font-size: 0.78rem;
      color: #b91c1c;
    }

    .enviar-qty-cenarios-wrap {
      margin-top: 0.5rem;
      padding: 0.45rem 0.55rem;
      border-radius: 10px;
      background: #ffffff;
      border: 1px solid rgba(148, 163, 184, 0.35);
    }

    .enviar-qty-intro {
      margin: 0 0 0.4rem;
      font-size: 0.64rem;
      line-height: 1.25;
      color: #64748b;
    }

    .enviar-qty-base-hint,
    #enviar-qty-add.enviar-qty-add--global {
      display: none !important;
    }

    .enviar-qty-modelo-list {
      display: flex;
      flex-direction: column;
      gap: 0.45rem;
    }

    .enviar-qty-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
      margin: 0 0 0.45rem;
    }

    .enviar-qty-tab {
      padding: 0.22rem 0.5rem;
      border-radius: 999px;
      border: 1px solid rgba(148, 163, 184, 0.35);
      background: #fff;
      color: #334155;
      font-size: 0.72rem;
      font-weight: 700;
      cursor: pointer;
      line-height: 1.2;
    }

    .enviar-qty-tab.is-active {
      border-color: rgba(124, 58, 237, 0.35);
      background: #f5f3ff;
      color: #5b21b6;
    }

    .enviar-qty-panel[hidden] {
      display: none !important;
    }

    .enviar-qty-modelo-line {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(5.4rem, 6.2rem) 1.6rem;
      align-items: center;
      gap: 0.35rem;
      padding: 0.35rem 0.4rem;
      border-radius: 10px;
      background: #fff;
      border: 1px solid rgba(148, 163, 184, 0.24);
    }

    .enviar-qty-modelo-line-title {
      font-size: 0.72rem;
      font-weight: 700;
      color: #0f172a;
      line-height: 1.15;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .enviar-qty-modelo-block {
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: none;
    }

    .enviar-qty-modelo-head {
      display: none;
    }

    .enviar-qty-modelo-title {
      display: none;
    }

    .enviar-qty-modelo-add {
      flex-shrink: 0;
      width: 1.6rem;
      height: 1.6rem;
      padding: 0;
      border-radius: 8px;
      border: 1px solid rgba(91, 33, 182, 0.28);
      background: #ffffff;
      color: #7c3aed;
      font-size: 1rem;
      font-weight: 700;
      line-height: 1;
      cursor: pointer;
    }

    .enviar-qty-modelo-add:hover {
      background: #f5f3ff;
    }

    .enviar-qty-modelo-row {
      display: contents;
    }

    .enviar-qty-modelo-row-label {
      display: none;
    }

    .enviar-qty-extras-wrap {
      display: flex;
      flex-direction: column;
      gap: 0.3rem;
      margin-top: 0.25rem;
    }

    .enviar-qty-extras-wrap[data-has-extras='0'] {
      display: none;
    }

    .enviar-qty-extra-row {
      display: flex;
      align-items: center;
      gap: 0.3rem;
      padding-left: 0.15rem;
    }

    .enviar-qty-extra-row .enviar-qty-modelo-input {
      flex: 1;
    }

    .enviar-qty-extra-remove {
      flex-shrink: 0;
      width: 1.45rem;
      height: 1.45rem;
      padding: 0;
      border: none;
      border-radius: 4px;
      background: transparent;
      color: #94a3b8;
      font-size: 0.95rem;
      line-height: 1;
      cursor: pointer;
    }

    .enviar-qty-extra-remove:hover {
      color: #dc2626;
      background: #fef2f2;
    }

    .enviar-qty-modelo-input {
      width: 100%;
      padding: 0.26rem 0.35rem;
      font-size: 0.78rem;
      min-height: 1.6rem;
      border: 1px solid #cbd5e1;
      border-radius: 6px;
      background: #fff;
    }

    .enviar-qty-modelo-input:focus {
      outline: none;
      border-color: #2563eb;
      box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
    }

    .enviar-qty-addform {
      display: flex;
      gap: 0.35rem;
      align-items: center;
      margin-top: 0.3rem;
      padding-left: 0.15rem;
    }

    .enviar-qty-addform input {
      flex: 1;
    }

    .enviar-qty-addform-btn {
      flex-shrink: 0;
      padding: 0.26rem 0.5rem;
      font-size: 0.7rem;
      font-weight: 700;
      border-radius: 6px;
      border: 1px solid rgba(124, 58, 237, 0.35);
      background: #7c3aed;
      color: #fff;
      cursor: pointer;
      min-height: 1.6rem;
    }

    .enviar-qty-addform-btn:hover {
      filter: brightness(1.05);
    }

    @media (max-width: 520px) {
      .enviar-form-grid {
        grid-template-columns: 1fr 1fr;
      }
      .enviar-field--cep {
        grid-column: 1 / -1;
      }
      .enviar-field--num {
        grid-column: 1 / -1;
      }
    }

    @media (max-width: 520px) {
      .enviar-pdf-sigs {
        grid-template-columns: 1fr;
      }
      .enviar-pdf-head-top {
        grid-template-columns: 1fr;
        padding: 0.95rem 0.85rem 1.05rem;
        gap: 0.9rem;
        align-items: stretch;
      }
      .enviar-pdf-head-col--contact {
        justify-content: flex-start;
      }
      .enviar-pdf-contact-rows {
        margin: 0;
        max-width: none;
      }
      .enviar-pdf-head-col--orc {
        justify-content: stretch;
      }
      .enviar-pdf-orc-card {
        max-width: none;
      }
    }

    .selection-summary .sum-block:not(.sum-block--hero) .sum-section-title {
      margin: -0.6rem -0.7rem 0.55rem -0.7rem;
      padding: 0.5rem 0.75rem;
      background: linear-gradient(90deg, #ddd6fe 0%, #ede9fe 45%, #f5f3ff 100%);
      color: #5b21b6;
      border: 1px solid rgba(91, 33, 182, 0.22);
      border-bottom: 1px solid rgba(91, 33, 182, 0.28);
      font-size: 0.62rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      border-radius: 9px 9px 0 0;
    }

    /* Desktop — títulos do resumo: maior, legível, sem quebra de linha */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .layout-summary .selection-summary .sum-block:not(.sum-block--hero):not(.sum-block--frete-cta) .sum-section-title {
        font-size: clamp(0.8rem, 0.72rem + 0.22vw, 0.95rem);
        font-weight: 700;
        letter-spacing: 0.04em;
        line-height: 1.2;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0.55rem 0.8rem;
      }
    }

    .selection-summary .sum-block:not(.sum-block--hero) .sum-section-title.spaced {
      margin-top: 0.4rem;
      border-radius: 8px;
      border-top: 1px solid var(--border);
    }

    /* Título do frete: não herdar faixa com margem negativa do bloco genérico (alinha no desktop) */
    .selection-summary .sum-block--frete-cta .sum-section-title.sum-frete-panel__tit {
      margin: 0 0 0.45rem;
      padding: 0;
      background: none;
      border: none;
      border-radius: 0;
      color: var(--muted);
      font-size: 0.62rem;
      font-weight: 600;
      letter-spacing: 0.07em;
      text-transform: uppercase;
    }

    .selection-summary .sum-block .sum-rows {
      gap: 0.28rem;
    }

    /* Resumo lateral: uma única linha por item (rótulo | valor), sem sobreposição. */
    .selection-summary .sum-row {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      align-items: center;
      gap: 0.35rem;
      min-width: 0;
      font-size: clamp(0.58rem, 0.9vw + 0.42rem, 0.78rem);
      padding: 0.16rem 0;
      line-height: 1.2;
    }

    .selection-summary .sum-row--stacked {
      align-items: flex-start;
    }

    .selection-summary .sum-row--stacked .sum-label {
      padding-top: 0.12em;
    }

    .selection-summary .sum-value-wrap {
      display: flex;
      flex: 1 1 0;
      flex-direction: column;
      align-items: flex-end;
      min-width: 0;
      gap: 0.1rem;
      text-align: right;
    }

    .selection-summary .sum-value-wrap .sum-value {
      flex: 0 0 auto;
      width: 100%;
    }

    .selection-summary .sum-value-sub {
      margin: 0;
      max-width: 100%;
      font-size: 0.78em;
      font-weight: 450;
      line-height: 1.18;
      color: var(--muted);
      white-space: normal;
      word-break: normal;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .selection-summary .sum-row {
        font-size: clamp(0.58rem, 0.45vw + 0.5rem, 0.76rem);
      }
    }

    .sum-label {
      color: var(--muted);
      font-weight: 600;
      line-height: 1.2;
      white-space: nowrap;
    }

    .sum-value {
      margin: 0;
      text-align: right;
      font-weight: 500;
      line-height: 1.2;
      word-break: normal;
    }

    .selection-summary .sum-label {
      flex: 1 1 0;
      min-width: 0;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      letter-spacing: -0.02em;
    }

    .selection-summary .sum-value {
      flex: 1 1 0;
      min-width: 0;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      text-align: right;
      word-break: normal;
    }

    .sum-warn-inline {
      flex: 1 1 100%;
      min-width: 100%;
      font-size: 0.78rem;
      font-weight: 600;
      color: var(--danger);
      padding: 0.15rem 0 0.25rem;
    }

    .selection-empty {
      margin: 0;
      font-size: 0.88rem;
      color: var(--muted);
      line-height: 1.45;
    }

    .sum-hero {
      margin: 0;
      padding: 0;
      border: none;
    }

    .sum-block--hero .sum-hero {
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
    }

    .sum-hero-total {
      display: flex;
      flex-direction: column;
      gap: 0.2rem;
      margin: 0;
    }

    .sum-block--hero .sum-hero-total {
      padding: 0.55rem 0.65rem;
      background: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 100%);
      border: 1px solid var(--border);
      border-radius: var(--radius);
    }

    .sum-hero-label {
      font-size: 0.68rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.07em;
      color: var(--muted);
    }

    .sum-hero-amount {
      margin: 0;
      font-size: 1.45rem;
      font-weight: 600;
      letter-spacing: -0.03em;
      color: #2563eb;
      line-height: 1.15;
      max-width: 100%;
      min-width: 0;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    .sum-hero-pay-note {
      margin: 0;
      font-size: 0.72rem;
      font-weight: 500;
      line-height: 1.2;
      color: var(--muted);
    }

    .sum-hero-total-grid {
      display: flex;
      flex-direction: column;
      gap: 0.45rem;
    }

    .sum-hero-install {
      display: none;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .sum-block--hero .sum-hero-total-grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.35rem 1.35rem;
        align-items: stretch;
      }

      .sum-hero-total-main {
        display: flex;
        flex-direction: column;
        gap: 0.2rem;
        min-height: 100%;
        align-items: flex-start;
        justify-content: flex-start;
      }

      .sum-hero-install {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-end;
        min-height: 100%;
        min-width: 8.75rem;
        text-align: right;
      }

      .sum-hero-install-inner {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 0.2rem;
        width: 100%;
      }

      .sum-hero-install-label {
        font-size: 0.68rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.07em;
        color: var(--muted);
        line-height: 1.1;
        white-space: nowrap;
      }

      .sum-hero-install-amount {
        margin: 0;
        font-size: 1.12rem;
        font-weight: 700;
        letter-spacing: -0.02em;
        color: #5b21b6;
        line-height: 1.15;
        white-space: nowrap;
      }

      .sum-hero-install-amount[data-sum-hero-loading='1'] {
        font-size: 0.82rem;
        font-weight: 600;
        color: var(--muted);
      }
    }

    .sum-hero-unit {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 0.35rem 0.75rem;
      margin: 0;
      padding: 0.48rem 0.65rem;
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius);
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .selection-summary .sum-block--hero .sum-hero-unit {
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        gap: 0.5rem;
      }

      .selection-summary .sum-hero-unit-value {
        flex: 0 0 auto;
        text-align: left;
      }

      .selection-summary .sum-hero-unit-label {
        flex: 1 1 auto;
        min-width: 0;
        text-align: left;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }
    }

    .sum-hero-unit-label {
      flex: 1 1 9rem;
      font-size: 0.66rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.065em;
      color: var(--muted);
      line-height: 1.35;
    }

    .sum-hero-unit-value {
      font-size: 1.06rem;
      font-weight: 600;
      letter-spacing: -0.02em;
      color: var(--text);
      text-align: right;
    }

    .sum-prazo-block {
      margin: 0;
      font-size: 0.74rem;
      line-height: 1.45;
      color: var(--text);
    }

    .sum-block--hero .sum-prazo-block {
      padding: 0.55rem 0.65rem;
      background: #fffbeb;
      border: 1px solid #fde68a;
      border-radius: var(--radius);
    }

    .sum-prazo-block p {
      margin: 0.35rem 0 0;
    }

    .sum-prazo-block p:first-child {
      margin-top: 0;
    }

    .sum-error {
      position: relative;
      z-index: 1;
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--danger);
      margin-bottom: 0.85rem;
      padding: 0.6rem 0.65rem;
      border-radius: 8px;
      background: #fef2f2;
      border: 1px solid #fecaca;
    }

    .field-msg--err {
      margin: 0.35rem 0 0;
      font-size: 0.78rem;
      line-height: 1.35;
      color: #b91c1c;
      font-weight: 500;
    }

    /* Informativo fixo min/max páginas — FORA do .calc-flow-campo (não fica sob o tracejado vermelho) */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .miolo-pages-range-hint {
      display: flex;
      align-items: flex-start;
      gap: 0.4rem;
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
      margin: 0.65rem 0 0;
      padding: 0.45rem 0.55rem;
      border-radius: 10px;
      background: #fff8e8;
      border: 1px solid rgba(245, 188, 51, 0.45);
      color: #6b4e00;
      font-size: 0.82rem;
      font-weight: 600;
      line-height: 1.35;
      position: relative;
      z-index: 2;
      pointer-events: none;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .miolo-pages-range-hint[hidden] {
      display: none !important;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .miolo-pages-range-hint .miolo-pages-range-hint__ico {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.15rem;
      height: 1.15rem;
      margin-top: 0.05rem;
      border-radius: 999px;
      background: #f5bc33;
      color: #1a1300;
      font-size: 0.72rem;
      font-weight: 800;
      line-height: 1;
    }

    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .miolo-pages-range-hint .miolo-pages-range-hint__txt {
      flex: 1 1 auto;
      min-width: 0;
    }

    /* Espaço sob o tracejado do Passo 3 para o hint não colidir com a borda */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec #miolo-pages-stack > .calc-flow-campo.campo-ativo {
      margin-bottom: 0.15rem;
    }

    .wizard-inline-footer {
      width: 100%;
      margin-top: 1rem;
      flex-shrink: 0;
    }

    .wizard-sticky {
      position: relative;
      width: 100%;
      background: var(--pl-bloco-paper-bg);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 0.55rem 0.75rem 0.65rem;
    }

    .wizard-sticky-inner {
      max-width: none;
      margin: 0;
      padding-left: 0;
      padding-right: 0;
    }

    .wizard-comfort-head {
      margin-bottom: 0.35rem;
      text-align: center;
    }

    .wizard-comfort-kicker {
      margin: 0 0 0.35rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.02em;
      text-transform: none;
      color: var(--muted);
      text-align: center;
    }

    .wizard-stepper {
      --wiz-line-on: #2563eb;
      --wiz-disc-size: clamp(2.1rem, 5.2vw, 2.5rem);
      --wiz-disc-r: calc(var(--wiz-disc-size) / 2);
      list-style: none;
      margin: 0 auto 0.45rem;
      padding: 0;
      display: flex;
      align-items: flex-start;
      justify-content: stretch;
      width: 100%;
      max-width: none;
      gap: 0;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .wizard-stepper {
        --wiz-disc-size: clamp(1.85rem, 3.6vw, 2.45rem);
      }
    }

    .wizard-stepper__item {
      flex: 1 1 0;
      min-width: 0;
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      gap: 0.5rem;
      font-size: 0.65rem;
      color: var(--muted);
    }

    /* Linha horizontal entre círculos (trilho concluído em azul) */
    .wizard-stepper__item::before,
    .wizard-stepper__item::after {
      content: '';
      position: absolute;
      top: calc(var(--wiz-disc-r) - 0.5px);
      height: 1.5px;
      z-index: 0;
      background: #e5e7eb;
      pointer-events: none;
    }

    .wizard-stepper__item::before {
      left: 0;
      right: calc(50% + var(--wiz-disc-r));
    }

    .wizard-stepper__item::after {
      left: calc(50% + var(--wiz-disc-r));
      right: 0;
    }

    .wizard-stepper__item:first-child::before {
      display: none;
    }

    .wizard-stepper__item:last-child::after {
      display: none;
    }

    .wizard-stepper__item.is-done::after {
      background: var(--wiz-line-on);
    }

    .wizard-stepper__item.is-done + .wizard-stepper__item::before {
      background: var(--wiz-line-on);
    }

    .wizard-stepper__item.is-current::after {
      background: var(--wiz-line-on);
    }

    .wizard-stepper__disc {
      position: relative;
      z-index: 2;
      width: var(--wiz-disc-size);
      height: var(--wiz-disc-size);
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 0;
      font-weight: 600;
      line-height: 1;
      letter-spacing: -0.03em;
      border: 1px solid #e5e7eb;
      background: #fafafa;
      color: var(--muted);
      flex-shrink: 0;
    }

    .wizard-stepper__ico {
      width: 54%;
      height: 54%;
      max-width: 1.15rem;
      max-height: 1.15rem;
      flex-shrink: 0;
      display: block;
    }

    .wizard-stepper__item.is-upcoming .wizard-stepper__disc {
      border-color: #e5e7eb;
      background: #fafafa;
      color: var(--muted);
    }

    .wizard-stepper__item.is-done .wizard-stepper__ico {
      display: none;
    }

    .wizard-stepper__item.is-done .wizard-stepper__disc {
      border-color: #2563eb;
      background: #2563eb;
      color: #fff;
      font-size: 0;
    }

    .wizard-stepper__item.is-done .wizard-stepper__disc::before {
      content: '\2713';
      font-size: clamp(0.62rem, calc(var(--wiz-disc-size) * 0.42), 1rem);
      font-weight: 600;
      line-height: 1;
    }

    .wizard-stepper__item.is-current .wizard-stepper__disc {
      border-color: #2563eb;
      background: #2563eb;
      color: #fff;
      box-shadow: none;
      animation: none;
    }

    /* Desktop: pulso suave no disco da etapa atual */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      @keyframes wiz-current-disc-pulse {
        0% {
          box-shadow: 0 0 0 0 rgba(37, 99, 235, 0.5);
        }
        70% {
          box-shadow: 0 0 0 10px rgba(37, 99, 235, 0);
        }
        100% {
          box-shadow: 0 0 0 0 rgba(37, 99, 235, 0);
        }
      }

      .wizard-stepper__item.is-current .wizard-stepper__disc {
        animation: wiz-current-disc-pulse 1.7s ease-out infinite;
      }

      @media (prefers-reduced-motion: reduce) {
        .wizard-stepper__item.is-current .wizard-stepper__disc {
          animation: none;
          box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.28);
        }
      }
    }

    .wizard-stepper__name {
      display: block;
      font-weight: 500;
      font-size: 0.62rem;
      line-height: 1.2;
      max-width: 100%;
      padding: 0 0.15rem;
      overflow-wrap: break-word;
      color: var(--muted);
    }

    .wizard-stepper__item.is-upcoming .wizard-stepper__name {
      color: var(--muted);
      font-weight: 400;
    }

    .wizard-stepper__item.is-done .wizard-stepper__name,
    .wizard-stepper__item.is-current .wizard-stepper__name {
      color: #0f172a;
      font-weight: 700;
    }

    @media (min-width: 720px) {
      .wizard-stepper__name {
        font-size: 0.66rem;
      }
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .wizard-stepper__name {
        font-size: 0.7rem;
      }
    }

    @media (max-width: 559px) {
      .wizard-stepper {
        flex-wrap: nowrap;
        justify-content: stretch;
        row-gap: 0;
        --wiz-disc-size: clamp(1.55rem, 4.2vw, 2rem);
      }

      .wizard-stepper__item {
        flex: 1 1 0;
        min-width: 0;
        max-width: none;
        gap: 0.3rem;
      }

      .wizard-stepper__name {
        font-size: clamp(0.48rem, 2vw, 0.62rem);
        line-height: 1.12;
        padding: 0 0.05rem;
      }
    }

    .wizard-sticky-actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.5rem;
      margin-top: 0;
      padding-top: 0.65rem;
      border-top: 1px solid var(--border);
    }

    .wizard-sticky-actions .btn-secondary {
      flex: 1 1 120px;
      min-height: 40px;
      font-size: 0.875rem;
      padding: 0.45rem 0.85rem;
    }

    .btn-wiz-primary {
      flex: 2 1 200px;
      min-height: 42px;
      font-size: 0.9rem;
      font-weight: 600;
      padding: 0.45rem 1.1rem;
      box-shadow: 0 1px 3px rgba(37, 99, 235, 0.2);
      border-radius: 9px;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      /* Desktop: oculta linha do tempo do rodapé (HTML permanece). */
      #wizard-sticky .wizard-comfort-head {
        display: none !important;
      }

      #wizard-sticky.wizard-sticky {
        background: transparent;
        border: none;
        box-shadow: none;
        padding: 0;
      }

      .wizard-sticky-actions {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: stretch;
        align-items: stretch;
        gap: 0.55rem;
        padding-top: 0;
        border-top: none;
      }

      /* Voltar: compacto, casa com o banner — oculto na etapa 1 via [hidden] */
      .wizard-sticky-actions .btn-secondary,
      .wizard-sticky-actions .btn-wiz-back,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-secondary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back {
        flex: 0 0 auto;
        align-self: stretch;
        width: auto;
        min-width: 6.75rem;
        max-width: none;
        min-height: 0;
        height: auto;
        margin: 0;
        padding: 0 1.1rem;
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #fff;
        border: 1.5px solid rgba(124, 92, 255, 0.55);
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(98, 83, 255, 0.07);
        color: #1d1d3f;
        font-size: 0.875rem;
        font-weight: 650;
        letter-spacing: -0.01em;
        transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease;
      }

      .wizard-sticky-actions .btn-secondary[hidden],
      .wizard-sticky-actions .btn-wiz-back[hidden],
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-secondary[hidden],
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back[hidden] {
        display: none !important;
      }

      .wizard-sticky-actions .btn-secondary:hover:not(:disabled),
      .wizard-sticky-actions .btn-wiz-back:hover:not(:disabled),
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-secondary:hover:not(:disabled),
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back:hover:not(:disabled) {
        border-color: rgba(124, 92, 255, 0.85);
        box-shadow: 0 8px 20px rgba(98, 83, 255, 0.12);
        background: #faf8ff;
        transform: translateY(-1px);
      }

      .wiz-cta-banner {
        position: relative;
        flex: 1 1 auto;
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        min-height: 3.15rem;
        padding: 0.35rem 0.35rem 0.35rem 0.85rem;
        box-sizing: border-box;
        background: #fff;
        border: 1.5px solid rgba(124, 92, 255, 0.75);
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(98, 83, 255, 0.09);
        overflow: hidden;
        transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
      }

      /* Etapa 1 (sem Voltar): banner maior */
      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner {
        min-height: 4.15rem;
        padding: 0.5rem 0.45rem 0.5rem 1.1rem;
        border-radius: 16px;
        gap: 1rem;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__ico {
        width: 2.65rem;
        height: 2.65rem;
        border-radius: 0.7rem;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__ico svg {
        width: 1.3rem;
        height: 1.3rem;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__title {
        font-size: clamp(1rem, 1.2vw, 1.22rem);
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__sub {
        font-size: clamp(0.78rem, 0.9vw, 0.9rem);
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__dots {
        right: 13rem;
        height: 3.2rem;
      }

      /* Desabilitado: o card inteiro escurece (não só a seta) */
      .wiz-cta-banner:has(#btn-wiz-primary:disabled) {
        background: #e8e8ef;
        border-color: rgba(70, 72, 96, 0.38);
        box-shadow: none;
        filter: saturate(0.55) brightness(0.92);
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__ico {
        background: linear-gradient(180deg, #d8d8e4, #cbcbda);
        color: #6a6a82;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__title {
        color: #4a4a62;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__sub {
        color: #7a7f98;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__dots {
        opacity: 0.06;
      }

      .wiz-cta-banner__main {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        gap: 0.65rem;
        min-width: 0;
        flex: 1 1 auto;
      }

      .wiz-cta-banner__ico {
        flex: 0 0 auto;
        width: 2.15rem;
        height: 2.15rem;
        border-radius: 0.55rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(180deg, #f5f2ff, #ece7ff);
        color: #6a4bff;
      }

      .wiz-cta-banner__ico svg {
        width: 1.1rem;
        height: 1.1rem;
        display: block;
      }

      .wiz-cta-banner__copy {
        display: flex;
        flex-direction: column;
        gap: 0.08rem;
        min-width: 0;
      }

      .wiz-cta-banner__title {
        font-size: clamp(0.88rem, 1vw, 1.05rem);
        font-weight: 700;
        line-height: 1.2;
        color: #1d1d3f;
        letter-spacing: -0.01em;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .wiz-cta-banner__sub {
        display: none !important;
      }

      .wiz-cta-banner__dots {
        position: absolute;
        right: 11.5rem;
        top: 50%;
        transform: translateY(-50%);
        width: min(38%, 16rem);
        height: 2.6rem;
        opacity: 0.16;
        pointer-events: none;
        background-image: radial-gradient(circle, #a58cff 1px, transparent 1.15px);
        background-size: 10px 10px;
        background-position: center;
      }

      /* CTA: retângulo fino e comprido — texto Continuar.... */
      .wizard-sticky-actions .btn-wiz-primary,
      .wizard-sticky-actions .btn-primary.btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary {
        position: relative;
        z-index: 1;
        flex: 0 0 auto;
        align-self: stretch;
        width: auto;
        min-width: 9.75rem;
        max-width: none;
        height: auto;
        min-height: 0;
        padding: 0 1.15rem;
        border: none;
        border-radius: 10px;
        background: linear-gradient(135deg, #7a5bff, #5b36f5);
        box-shadow: 0 6px 16px rgba(93, 58, 255, 0.28);
        color: #fff;
        font-size: 0;
        letter-spacing: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.2s ease, opacity 0.18s ease;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-wiz-primary,
      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-primary.btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-primary.btn-wiz-primary {
        min-width: 11.25rem;
        border-radius: 12px;
        padding: 0 1.35rem;
      }

      .wizard-sticky-actions .btn-wiz-primary:hover:not(:disabled),
      .wizard-sticky-actions .btn-primary.btn-wiz-primary:hover:not(:disabled),
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary:hover:not(:disabled),
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary:hover:not(:disabled) {
        transform: scale(1.03);
        box-shadow: 0 8px 18px rgba(93, 58, 255, 0.38);
      }

      .wizard-sticky-actions .btn-wiz-primary:disabled,
      .wizard-sticky-actions .btn-primary.btn-wiz-primary:disabled,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary:disabled,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary:disabled {
        opacity: 1;
        transform: none;
        cursor: not-allowed;
        background: linear-gradient(135deg, #6e6e84, #55556c);
        box-shadow: none;
        color: rgba(255, 255, 255, 0.55);
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__text {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__arrow {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        line-height: 1;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__cta-label {
        display: inline-flex;
        align-items: baseline;
        justify-content: center;
        white-space: nowrap;
        font-size: 0.95rem;
        font-weight: 700;
        letter-spacing: 0.02em;
        color: #fff;
        line-height: 1.1;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-wiz-primary .btn-wiz-primary__cta-label {
        font-size: 1.05rem;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__cta-dots {
        display: inline-flex;
        margin-left: 0.05em;
        letter-spacing: 0.02em;
        min-width: 1.15em;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__cta-dots span {
        opacity: 0.28;
      }

      @keyframes wiz-cta-dot-pulse {
        0%,
        80%,
        100% {
          opacity: 0.28;
        }
        40% {
          opacity: 1;
        }
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span {
        animation: wiz-cta-dot-pulse 1.2s ease-in-out infinite;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(1) {
        animation-delay: 0s;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(2) {
        animation-delay: 0.15s;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(3) {
        animation-delay: 0.3s;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(4) {
        animation-delay: 0.45s;
      }

      .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__cta-dots span {
        animation: none;
        opacity: 0.4;
      }

      @media (prefers-reduced-motion: reduce) {
        .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span {
          animation: none;
          opacity: 0.95;
        }
      }

      /* Banner some se o primary estiver hidden (ex.: etapa 4 sem cobrança) */
      .wizard-sticky-actions:has(#btn-wiz-primary[hidden]) .wiz-cta-banner {
        display: none;
      }
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      /* Mobile: oculta "Sua obra…" + linha do tempo do rodapé (HTML permanece). */
      #wizard-sticky .wizard-comfort-head {
        display: none !important;
      }

      #wizard-sticky.wizard-sticky {
        background: transparent;
        border: none;
        box-shadow: none;
        padding: 0;
      }

      .wizard-sticky-actions {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: stretch;
        gap: 0.5rem;
        padding-top: 0;
        border-top: none;
        margin-top: 0;
      }

      /* Voltar mobile: mesmo padrão do banner */
      .wizard-sticky-actions .btn-secondary,
      .wizard-sticky-actions .btn-wiz-back,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-secondary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back {
        flex: 0 0 auto;
        align-self: stretch;
        order: 2;
        width: 100%;
        max-width: none;
        min-width: 0;
        min-height: 2.85rem;
        height: auto;
        margin: 0;
        padding: 0 1rem;
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #fff;
        border: 1.5px solid rgba(124, 92, 255, 0.55);
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(98, 83, 255, 0.07);
        color: #1d1d3f;
        font-size: 0.9rem;
        font-weight: 700;
        letter-spacing: -0.01em;
      }

      .wizard-sticky-actions .btn-secondary[hidden],
      .wizard-sticky-actions .btn-wiz-back[hidden],
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-secondary[hidden],
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back[hidden] {
        display: none !important;
      }

      .wiz-cta-banner {
        position: relative;
        order: 1;
        flex: 0 0 auto;
        width: 100%;
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.45rem;
        min-height: 0;
        padding: 0.45rem 0.4rem 0.45rem 0.65rem;
        box-sizing: border-box;
        background: #fff;
        border: 1.5px solid rgba(124, 92, 255, 0.75);
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(98, 83, 255, 0.09);
        overflow: hidden;
        transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
      }

      /* Etapa 1 (sem Voltar): banner um pouco maior */
      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner {
        padding: 0.5rem 0.4rem 0.5rem 0.7rem;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) {
        background: #e8e8ef;
        border-color: rgba(70, 72, 96, 0.38);
        box-shadow: none;
        filter: saturate(0.55) brightness(0.92);
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__ico {
        background: linear-gradient(180deg, #d8d8e4, #cbcbda);
        color: #6a6a82;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__title {
        color: #4a4a62;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__sub {
        color: #7a7f98;
      }

      .wiz-cta-banner:has(#btn-wiz-primary:disabled) .wiz-cta-banner__dots {
        opacity: 0.06;
      }

      .wiz-cta-banner__main {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        gap: 0.4rem;
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
      }

      @media (max-width: 379px) {
        .wiz-cta-banner__ico {
          display: none !important;
        }
      }

      .wiz-cta-banner__ico {
        flex: 0 0 auto;
        width: 1.9rem;
        height: 1.9rem;
        border-radius: 0.45rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(180deg, #f5f2ff, #ece7ff);
        color: #6a4bff;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__ico {
        width: 2.1rem;
        height: 2.1rem;
      }

      .wiz-cta-banner__ico svg {
        width: 1rem;
        height: 1rem;
        display: block;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__ico svg {
        width: 1.1rem;
        height: 1.1rem;
      }

      .wiz-cta-banner__copy {
        display: flex;
        flex-direction: column;
        gap: 0.08rem;
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
      }

      .wiz-cta-banner__title {
        display: block;
        font-size: clamp(0.62rem, 2.7vw, 0.9rem);
        font-weight: 700;
        line-height: 1.2;
        color: #1d1d3f;
        letter-spacing: -0.015em;
        white-space: nowrap;
        overflow: hidden;
        max-width: 100%;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .wiz-cta-banner__title {
        font-size: clamp(0.66rem, 2.9vw, 0.95rem);
      }

      .wiz-cta-banner__sub {
        display: none !important;
      }

      .wiz-cta-banner__dots {
        display: none;
      }

      /* Continuar.... — tamanho fixo, nunca encolhe */
      .wizard-sticky-actions .btn-wiz-primary,
      .wizard-sticky-actions .btn-primary.btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary {
        position: relative;
        z-index: 1;
        flex: 0 0 auto;
        align-self: stretch;
        width: auto;
        min-width: 9.75rem;
        max-width: none;
        height: auto;
        min-height: 0;
        margin: 0;
        padding: 0 1.1rem;
        border: none;
        border-radius: 10px;
        background: linear-gradient(135deg, #7a5bff, #5b36f5);
        box-shadow: 0 6px 16px rgba(93, 58, 255, 0.28);
        color: #fff;
        font-size: 0;
        letter-spacing: 0;
        text-align: center;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.2s ease, opacity 0.18s ease;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-wiz-primary,
      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-primary.btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-wiz-primary,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-primary.btn-wiz-primary {
        min-width: 10.5rem;
        padding: 0 1.2rem;
        border-radius: 11px;
      }

      .wizard-sticky-actions .btn-wiz-primary:disabled,
      .wizard-sticky-actions .btn-primary.btn-wiz-primary:disabled,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary:disabled,
      #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary:disabled {
        opacity: 1;
        transform: none;
        cursor: not-allowed;
        background: linear-gradient(135deg, #6e6e84, #55556c);
        box-shadow: none;
        color: rgba(255, 255, 255, 0.55);
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__text {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__arrow {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        line-height: 1;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__cta-label {
        display: inline-flex;
        align-items: baseline;
        justify-content: center;
        white-space: nowrap;
        font-size: 0.95rem;
        font-weight: 700;
        letter-spacing: 0.02em;
        color: #fff;
        line-height: 1.1;
      }

      .wizard-sticky-actions:has(#btn-wiz-prev[hidden]) .btn-wiz-primary .btn-wiz-primary__cta-label {
        font-size: 1.02rem;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__cta-dots {
        display: inline-flex;
        margin-left: 0.05em;
        letter-spacing: 0.02em;
        min-width: 1.15em;
      }

      .wizard-sticky-actions .btn-wiz-primary .btn-wiz-primary__cta-dots span {
        opacity: 0.28;
      }

      @keyframes wiz-cta-dot-pulse-m {
        0%,
        80%,
        100% {
          opacity: 0.28;
        }
        40% {
          opacity: 1;
        }
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span {
        animation: wiz-cta-dot-pulse-m 1.2s ease-in-out infinite;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(1) {
        animation-delay: 0s;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(2) {
        animation-delay: 0.15s;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(3) {
        animation-delay: 0.3s;
      }

      .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span:nth-child(4) {
        animation-delay: 0.45s;
      }

      .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__cta-dots span {
        animation: none;
        opacity: 0.4;
      }

      @media (prefers-reduced-motion: reduce) {
        .wizard-sticky-actions .btn-wiz-primary:not(:disabled) .btn-wiz-primary__cta-dots span {
          animation: none;
          opacity: 0.95;
        }
      }

      .wizard-sticky-actions:has(#btn-wiz-primary[hidden]) .wiz-cta-banner {
        display: none;
      }
    }

    .btn-wiz-primary:active:not(:disabled) {
      transform: scale(0.98);
    }

    .btn-wiz-primary.is-loading {
      cursor: wait;
      opacity: 0.88;
    }

    .btn-wiz-primary:disabled {
      opacity: 0.45;
      cursor: not-allowed;
      box-shadow: none;
    }

    .wizard-step {
      display: none;
    }

    .wizard-step.is-active {
      display: block;
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #orc-form .wizard-step {
        scroll-margin-top: 0.65rem;
      }
    }

    .wizard-nav-card {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: flex-end;
      gap: 0.65rem;
    }

    .btn-secondary {
      padding: 0.55rem 1rem;
      border-radius: 8px;
      border: 1px solid var(--border);
      font-weight: 600;
      font-size: 0.9rem;
      cursor: pointer;
      background: var(--card);
      color: var(--text);
    }

    .btn-secondary:hover {
      background: #f1f5f9;
    }

    .btn-guided-confirm {
      margin-top: 0.45rem;
      padding: 0.42rem 0.8rem;
      border-radius: 8px;
      border: 1px solid #86efac;
      background: #f0fdf4;
      color: #166534;
      font-size: 0.8rem;
      font-weight: 600;
      cursor: pointer;
      transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    }

    .btn-guided-confirm:hover {
      background: #dcfce7;
      border-color: #4ade80;
      color: #14532d;
    }

    .input-confirm-wrap {
      position: relative;
    }

    .input-confirm-wrap input[type="number"] {
      padding-right: 6rem;
    }

    #quantidade {
      max-width: none;
      width: 100%;
    }

    .btn-guided-confirm.btn-guided-confirm--inline {
      position: absolute;
      top: 50%;
      right: 0.2rem;
      transform: translateY(-50%);
      margin-top: 0;
      padding: 0.32rem 0.5rem;
      font-size: 0.73rem;
      line-height: 1.1;
      border-radius: 7px;
      z-index: 1;
    }

    .help-entry-card {
      border-color: rgba(37, 99, 235, 0.14);
      background: linear-gradient(165deg, #fafbfc 0%, #f1f5f9 100%);
    }

    .help-entry-title {
      margin: 0 0 0.4rem;
      font-size: 1.125rem;
      font-weight: 700;
      color: #0f172a;
      letter-spacing: -0.02em;
      line-height: 1.3;
    }

    .help-entry-lead {
      margin: 0 0 1rem;
      font-size: 0.875rem;
      line-height: 1.45;
      color: #475569;
    }

    .help-entry-rg {
      display: grid;
      gap: 0.85rem;
    }

    @media (min-width: 600px) {
      .help-entry-rg {
        grid-template-columns: 1fr 1fr;
        align-items: stretch;
      }
    }

    .help-entry-choice {
      display: block;
      width: 100%;
      margin: 0;
      padding: 1rem 1.05rem 1.05rem;
      text-align: left;
      font: inherit;
      color: inherit;
      cursor: pointer;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      background: #fff;
      box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
      transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    }

    .help-entry-choice:hover {
      border-color: var(--border);
      box-shadow: 0 4px 16px rgba(15, 23, 42, 0.07);
    }

    .help-entry-choice:focus-visible {
      outline: 2px solid #2563eb;
      outline-offset: 2px;
    }

    .help-entry-choice--assisted.is-active {
      border-color: #16a34a;
      border-width: 2px;
      padding: calc(1rem - 1px) calc(1.05rem - 1px) calc(1.05rem - 1px);
      box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.12), 0 6px 20px rgba(22, 163, 74, 0.08);
      background: linear-gradient(180deg, #f0fdf4 0%, #fff 52%);
    }

    .help-entry-choice--solo.is-active {
      border-color: var(--muted);
      border-width: 2px;
      padding: calc(1rem - 1px) calc(1.05rem - 1px) calc(1.05rem - 1px);
      box-shadow: 0 0 0 1px rgba(100, 116, 139, 0.12), 0 6px 20px rgba(15, 23, 42, 0.06);
      background: linear-gradient(180deg, #f8fafc 0%, #fff 52%);
    }

    .help-entry-choice__h {
      display: block;
      margin: 0 0 0.6rem;
      font-size: 1.02rem;
      font-weight: 700;
      color: #0f172a;
      letter-spacing: -0.015em;
      line-height: 1.35;
    }

    .help-entry-choice__ul {
      margin: 0;
      padding-left: 1.1rem;
      font-size: 0.8125rem;
      line-height: 1.45;
      color: var(--muted);
    }

    .help-entry-choice__ul li + li {
      margin-top: 0.28rem;
    }

    html.is-help-mode .calc-flow-campo {
      position: relative;
      padding-right: 0.5rem;
    }

    /* Mobile passo 1: ajuda com margem simétrica */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      html.is-help-mode #wizard-step-1 .calc-flow-campo[data-flow-key] {
        padding: 0.5rem 2.1rem;
      }

      #wizard-step-1 #card-formato-acabamento .calc-flow-campo[data-flow-key="tamanho"] .field,
      #wizard-step-1 #card-formato-acabamento .calc-flow-campo[data-flow-key="orient"] .field,
      #wizard-step-1 #card-formato-acabamento .calc-flow-campo[data-flow-key="acabamento"] .field,
      #wizard-step-1 #card-capa .calc-flow-campo[data-flow-key="papelCapa"] .field,
      #wizard-step-1 #card-capa .calc-flow-campo[data-flow-key="laminacao"] .field,
      #wizard-step-1 #card-capa .calc-flow-campo[data-flow-key="impressaoCapa"] .field {
        text-align: center;
      }

      #wizard-step-1 #card-formato-acabamento .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__opt-text,
      #wizard-step-1 #card-capa .calc-dd.calc-dd--choice .calc-dd__opt .calc-dd__opt-text {
        flex: 1 1 100%;
        width: 100%;
        min-width: 0;
        text-align: center;
      }

      #wizard-step-1 #card-formato-acabamento .calc-flow-campo[data-flow-key="orient"] .field > .hint {
        text-align: center;
      }
    }

    html.is-help-mode #wizard-step-2 > .card,
    html.is-help-mode #wizard-step-3 > .card,
    html.is-help-mode #wizard-step-4 > .card {
      position: relative;
      padding-right: 2.1rem;
    }

    html.is-help-mode .pl-did-toggle-host {
      position: relative;
      padding-right: 0;
      gap: 0.5rem;
    }

    html.is-help-mode .pl-did-toggle-host > .toggle-label-stack,
    html.is-help-mode .pl-did-toggle-host > span:not(.switch) {
      order: 1;
      flex: 1 1 auto;
      min-width: 0;
    }

    html.is-help-mode .pl-did-toggle-host .switch {
      order: 2;
      flex-shrink: 0;
      margin-left: auto;
    }

    html.is-help-mode .pl-did-toggle-host .pl-calc-flow-help {
      position: static;
      top: auto;
      right: auto;
      order: 3;
      flex-shrink: 0;
      align-self: center;
      margin-left: 0.4rem;
    }

    .pl-calc-flow-help {
      display: none;
      position: absolute;
      top: 0.15rem;
      right: 0.1rem;
      z-index: 3;
      width: 1.65rem;
      height: 1.65rem;
      padding: 0;
      margin: 0;
      border: 1px solid #e2e8f0;
      border-radius: 8px;
      background: #fff;
      color: var(--muted);
      font-size: 0.78rem;
      font-weight: 600;
      line-height: 1;
      cursor: pointer;
      align-items: center;
      justify-content: center;
      box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
    }

    .pl-calc-flow-help:hover {
      border-color: var(--border);
      color: #64748b;
      background: #f8fafc;
    }

    html.is-help-mode .pl-calc-flow-help {
      display: inline-flex;
    }

    .pl-did-backdrop {
      position: fixed;
      inset: 0;
      background: rgba(15, 23, 42, 0.72);
      backdrop-filter: blur(6px);
      display: none;
      align-items: center;
      justify-content: center;
      padding: 16px;
      z-index: 10050;
      animation: pl-did-fade 0.25s ease-out;
    }

    .pl-did-backdrop.pl-did-is-open {
      display: flex;
    }

    @keyframes pl-did-fade {
      from { opacity: 0; }
      to { opacity: 1; }
    }

    .pl-did-modal {
      background: #fff;
      border-radius: 18px;
      max-width: 700px;
      width: 100%;
      max-height: 86vh;
      box-shadow: 0 25px 50px rgba(0, 0, 0, 0.22);
      display: flex;
      flex-direction: column;
      overflow: hidden;
      animation: pl-did-slide 0.35s cubic-bezier(0.34, 1.2, 0.64, 1);
    }

    @keyframes pl-did-slide {
      from { opacity: 0; transform: translateY(16px) scale(0.98); }
      to { opacity: 1; transform: translateY(0) scale(1); }
    }

    .pl-did-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      padding: 0.65rem 1rem;
      border-bottom: 1px solid #e5e7eb;
      background: linear-gradient(135deg, #f8fafc, #f1f5f9);
    }

    .pl-did-title {
      margin: 0;
      font-size: 1rem;
      font-weight: 700;
      color: #1f2937;
      display: flex;
      align-items: center;
      gap: 0.35rem;
    }

    .pl-did-close {
      flex-shrink: 0;
      width: 32px;
      height: 32px;
      border-radius: 50%;
      border: none;
      background: #f3f4f6;
      cursor: pointer;
      font-size: 1.1rem;
      line-height: 1;
      color: #6b7280;
    }

    .pl-did-close:hover {
      background: #e5e7eb;
      color: #111827;
    }

    .pl-did-body {
      padding: 0.75rem 1rem 0.85rem;
      overflow-y: auto;
      flex: 1;
      -webkit-overflow-scrolling: touch;
    }

    .pl-did-hero-icon {
      width: 56px;
      height: 56px;
      margin: 0 auto 0.5rem;
      background: linear-gradient(135deg, #667eea, #764ba2);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.55rem;
      line-height: 1;
      box-shadow: 0 8px 22px rgba(102, 126, 234, 0.28);
    }

    .pl-did-description {
      font-size: 0.84rem;
      color: #4b5563;
      line-height: 1.45;
      margin: 0 0 0.65rem;
      text-align: center;
    }

    .pl-did-images-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
      gap: 0.45rem;
      margin: 0.5rem 0 0.65rem;
      padding: 0.5rem;
      background: #f8fafc;
      border-radius: var(--radius);
      border: 1px solid #e9ecef;
    }

    .pl-did-image-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0.25rem;
      padding: 0.35rem;
      background: #fff;
      border-radius: 8px;
      box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    }

    .pl-did-image-item span {
      font-size: 0.62rem;
      font-weight: 700;
      color: #495057;
      text-align: center;
      line-height: 1.2;
    }

    .pl-did-info-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.65rem 0.85rem;
      margin-bottom: 0.5rem;
    }

    .pl-did-info-section h4 {
      font-size: 0.78rem;
      font-weight: 700;
      color: #1f2937;
      margin: 0 0 0.28rem;
    }

    .pl-did-info-list {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .pl-did-info-list li {
      font-size: 0.76rem;
      color: #4b5563;
      margin-bottom: 0.28rem;
      padding-left: 0.85rem;
      position: relative;
      line-height: 1.35;
    }

    .pl-did-info-list li::before {
      content: "•";
      color: #667eea;
      font-weight: bold;
      position: absolute;
      left: 0;
    }

    .pl-did-tip-box {
      background: linear-gradient(135deg, #fef3c7, #fde68a);
      border-radius: var(--radius);
      border: 1px solid #f59e0b;
      padding: 0.35rem 0.5rem;
      display: flex;
      gap: 0.35rem;
      align-items: center;
      margin-top: 0.4rem;
    }

    .pl-did-tip-content {
      font-size: 0.72rem;
      color: #92400e;
      line-height: 1.3;
    }

    .pl-did-footer {
      padding: 0.5rem 1rem 0.65rem;
      border-top: 1px solid #e5e7eb;
      background: #f9fafb;
      text-align: right;
    }

    .pl-did-footer-btn {
      border-radius: 999px;
      padding: 0.45rem 1.1rem;
      border: none;
      background: linear-gradient(135deg, #667eea, #764ba2);
      color: #fff;
      font-weight: 700;
      font-size: 0.82rem;
      cursor: pointer;
    }

    .pl-did-footer-btn:hover {
      filter: brightness(1.05);
    }

    .pl-did-comparison-section {
      margin: 0.35rem 0 0.5rem;
    }

    .pl-did-comparison-title {
      font-size: 0.88rem;
      font-weight: 700;
      color: #1f2937;
      margin: 0 0 0.45rem;
      text-align: center;
    }

    .pl-did-comparison-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.5rem;
    }

    .pl-did-comparison-card {
      background: #f8fafc;
      border-radius: var(--radius);
      padding: 0.45rem 0.5rem;
      border: 1px solid #e9ecef;
    }

    .pl-did-comparison-card h3 {
      margin: 0 0 0.35rem;
      font-size: 0.78rem;
      font-weight: 700;
      color: #1f2937;
      text-align: center;
    }

    .pl-did-print-visual {
      width: 100%;
      height: 120px;
      border-radius: 6px;
      margin-bottom: 0.35rem;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .pl-did-print-side {
      flex: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      font-size: 0.58rem;
      position: relative;
      text-align: center;
      line-height: 1.25;
      padding: 0.2rem;
    }

    .pl-did-print-4x1 .pl-did-print-front {
      background: linear-gradient(135deg, #667eea, #764ba2);
      color: #fff;
    }

    .pl-did-print-4x1 .pl-did-print-back {
      background: #e9ecef;
      color: #6c757d;
    }

    .pl-did-print-4x4 .pl-did-print-front {
      background: linear-gradient(135deg, #667eea, #764ba2);
      color: #fff;
    }

    .pl-did-print-4x4 .pl-did-print-back-alt {
      background: linear-gradient(135deg, #f093fb, #f5576c);
      color: #fff;
    }

    .pl-did-color-badge {
      position: absolute;
      top: 4px;
      right: 4px;
      background: rgba(255, 255, 255, 0.92);
      color: #1f2937;
      padding: 2px 6px;
      border-radius: 8px;
      font-size: 0.5rem;
      font-weight: 700;
    }

    @media (max-width: 640px) {
      .pl-did-info-grid,
      .pl-did-comparison-grid {
        grid-template-columns: 1fr;
      }
      .pl-did-print-visual {
        height: 100px;
      }
    }

    /* Popup único dos (?) dos adicionais — não altera o wizard da calculadora. */
    .pl-did-modal.pl-did-modal--extra {
      max-width: 560px;
    }

    .pl-did-extra {
      display: flex;
      flex-direction: column;
      gap: 0.85rem;
    }

    .pl-did-extra__lead {
      margin: 0;
      font-size: 1.02rem;
      font-weight: 650;
      line-height: 1.4;
      color: #1e1b4b;
      text-align: left;
    }

    .pl-did-extra__block {
      margin: 0;
    }

    .pl-did-extra__h {
      margin: 0 0 0.28rem;
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: #6d28d9;
    }

    .pl-did-extra__p {
      margin: 0;
      font-size: 0.9rem;
      line-height: 1.45;
      color: #374151;
    }

    .pl-did-extra__split {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.65rem;
    }

    .pl-did-extra__card {
      border-radius: 12px;
      padding: 0.7rem 0.75rem;
      border: 1px solid #e9ecef;
    }

    .pl-did-extra__card--in {
      background: #f0fdf4;
      border-color: #bbf7d0;
    }

    .pl-did-extra__card--out {
      background: #fff7ed;
      border-color: #fed7aa;
    }

    .pl-did-extra__ul {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .pl-did-extra__ul li {
      position: relative;
      padding-left: 1.05rem;
      margin: 0 0 0.35rem;
      font-size: 0.82rem;
      line-height: 1.4;
      color: #374151;
    }

    .pl-did-extra__ul li:last-child {
      margin-bottom: 0;
    }

    .pl-did-extra__card--in .pl-did-extra__ul li::before {
      content: "✓";
      position: absolute;
      left: 0;
      color: #15803d;
      font-weight: 800;
    }

    .pl-did-extra__card--out .pl-did-extra__ul li::before {
      content: "×";
      position: absolute;
      left: 0;
      color: #c2410c;
      font-weight: 800;
    }

    .pl-did-extra__price {
      border-radius: 12px;
      padding: 0.7rem 0.8rem;
      background: #f5f3ff;
      border: 1px solid #ddd6fe;
    }

    .pl-did-extra__price-k {
      display: block;
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: #6d28d9;
      margin-bottom: 0.2rem;
    }

    .pl-did-extra__price-v {
      margin: 0;
      font-size: 0.95rem;
      font-weight: 700;
      line-height: 1.4;
      color: #1f2937;
    }

    .pl-did-extra__tip {
      margin-top: 0;
    }

    @media (max-width: 640px) {
      .pl-did-extra__split {
        grid-template-columns: 1fr;
      }
      .pl-did-extra__lead {
        font-size: 0.95rem;
      }
    }

    .choice-grid {
      display: grid;
      gap: 0.65rem;
    }

    @media (min-width: 640px) {
      .choice-grid.cols-2 {
        grid-template-columns: 1fr 1fr;
      }
    }

    .choice-card {
      border: 2px solid var(--border);
      border-radius: var(--radius);
      padding: 0.85rem 1rem;
      cursor: pointer;
      transition: border-color 0.15s, background 0.15s;
    }

    .choice-card:has(input:checked) {
      border-color: #2563eb;
      background: #f0f5ff;
    }

    .choice-card input {
      margin-right: 0.5rem;
    }

    /* Coluna estável: Serviços adicionais + slot de frete (mobile) — evita “pulo” de layout */
    .step1-extras-frete-column {
      display: flex;
      flex-direction: column;
      gap: 0.65rem;
      align-items: stretch;
      min-height: 12rem;
    }
    .step1-extras-frete-column #calc-bloc-extras {
      flex: 0 1 auto;
      min-height: 0;
    }

    /* Heróis passo 1 — padrão Miolo / Serviços adicionais (flex); Formato/Capa em grid sem margin duplicado */
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero,
    #card-modelo.card--modelo-qtd .mq-hero,
    #wizard-step-1 #calc-bloc-extras .extras-hero,
    #wizard-step-1 .fa-hero,
    #wizard-step-1 .capa-hero {
      display: flex;
      align-items: flex-start;
      flex-wrap: nowrap;
      gap: 14px;
      margin: 0 0 0.85rem;
      padding: 0;
      min-width: 0;
    }

    #wizard-step-1 .fa-hero .capa-hero__help,
    #wizard-step-1 .miolo-hero .capa-hero__help,
    #wizard-step-1 .capa-hero .capa-hero__help {
      flex: 0 0 auto;
      align-self: flex-start;
    }

    #wizard-step-1 .fa-hero__titles,
    #wizard-step-1 .capa-hero__titles,
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__titles,
    #card-modelo.card--modelo-qtd .mq-hero__titles,
    #wizard-step-1 #calc-bloc-extras .extras-hero__titles {
      flex: 1 1 auto;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.35rem;
      justify-content: center;
      min-height: 60px;
      position: static;
      top: auto;
    }

    #wizard-step-1 .fa-hero__mark,
    #wizard-step-1 .capa-hero__mark,
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__mark,
    #card-modelo.card--modelo-qtd .mq-hero__mark,
    #wizard-step-1 #calc-bloc-extras .extras-hero__mark {
      flex: 0 0 auto;
    }

    #wizard-step-1 .fa-hero__title,
    #wizard-step-1 .capa-hero__title,
    #wizard-step-1 .miolo-hero__title,
    #card-modelo.card--modelo-qtd .mq-hero__title,
    #wizard-step-1 #calc-bloc-extras .extras-hero__title {
      margin: 0;
      font-family: var(--font-primary);
      font-size: 24px;
      line-height: 1.15;
      font-weight: 700;
      color: #333333;
      letter-spacing: -0.02em;
    }

    #wizard-step-1 .fa-hero__sub,
    #wizard-step-1 .capa-hero__sub,
    #wizard-step-1 .miolo-hero__sub,
    #card-modelo.card--modelo-qtd .mq-hero__sub,
    #wizard-step-1 #calc-bloc-extras .extras-hero__sub {
      margin: 0;
      font-family: var(--font-primary);
      font-size: 16px;
      line-height: 1.25;
      font-weight: 500;
      color: #7d7d7d;
    }

    /* Subtítulo → trilho “X de 6”: mesmo espaçamento em todos (ref. Especificações do Miolo) */
    #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
    #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
    #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
      margin: 0;
      padding: 0 0 12px;
      padding-left: 0;
      padding-right: 0;
    }

    /* Mobile: miolo/extras — overrides depois do CSS base (cascata). Desktop ≥1024 inalterado. */

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero {
        padding: 0 !important;
        margin: 0 0 0.65rem !important;
        gap: 0.5rem !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__titles {
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 0 !important;
        gap: 0.22rem !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title-row {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.35rem !important;
        min-width: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__title {
        font-size: clamp(0.84rem, 2.5vw, 0.98rem) !important;
        line-height: 1.22 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
      }

      #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .miolo-hero__sub {
        margin: 0 !important;
        font-size: clamp(0.64rem, 1.65vw, 0.76rem) !important;
        line-height: 1.38 !important;
        font-weight: 500 !important;
        color: #6b7280 !important;
        display: block !important;
        overflow: visible !important;
        white-space: normal !important;
        text-overflow: clip !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
        -webkit-box-orient: initial !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero {
        margin: 0 0 0.65rem !important;
        gap: 0.5rem !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero__titles {
        min-height: 0 !important;
        gap: 0.22rem !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero__title {
        font-size: clamp(0.84rem, 2.5vw, 0.98rem) !important;
        line-height: 1.2 !important;
      }

      #wizard-step-1 #calc-bloc-extras .extras-hero__sub {
        font-size: clamp(0.64rem, 1.65vw, 0.76rem) !important;
        line-height: 1.38 !important;
        display: block !important;
        overflow: visible !important;
        white-space: normal !important;
        text-overflow: clip !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
        -webkit-box-orient: initial !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
      }
    }

    .step1-extras-frete-column .sum-frete-mobile-slot {
      flex: 0 0 auto;
      width: 100%;
    }

    /* Etapa 3 (Arquivos): organização e separação visual */
    .step3-card {
      display: grid;
      gap: 1rem;
      grid-template-columns: minmax(0, 1fr);
      align-content: start;
    }
    .step3-card .step3-block--uploads {
      min-height: 16rem;
      display: flex;
      flex-direction: column;
      gap: 0.65rem;
    }
    /* display:flex do bloco vencia [hidden] em alguns browsers — esconder uploads ao enviar depois */
    #wrap-uploads-pdf[hidden],
    .step3-block--uploads[hidden],
    #wizard-step-3 .step3-section.is-step3-locked,
    #wizard-step-3 .step3-section[hidden] {
      display: none !important;
      min-height: 0 !important;
      padding: 0 !important;
      margin: 0 !important;
      border: 0 !important;
      overflow: hidden;
    }
    .step3-upload-field {
      flex: 0 0 auto;
    }
    .step3-upload-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.45rem;
      align-items: center;
      margin-top: 0.15rem;
    }

    .step3-lead {
      margin: -0.15rem 0 0.2rem;
      max-width: 72ch;
    }

    .step3-block {
      border: 1px solid var(--border);
      border-radius: 12px;
      background: #fbfdff;
      padding: 0.85rem 0.9rem;
      margin: 0;
    }

    .step3-block + .step3-block {
      margin-top: 0.05rem;
    }

    .step3-block-title {
      display: block;
      font-size: 0.82rem;
      font-weight: 600;
      letter-spacing: 0.01em;
      margin-bottom: 0.55rem;
      color: #64748b;
      text-transform: uppercase;
    }

    .step3-choice {
      cursor: pointer;
      margin-bottom: 0.55rem;
      background: #fff;
    }

    .step3-choice:last-child {
      margin-bottom: 0;
    }

    .step3-upload-field + .step3-upload-field {
      margin-top: 0.65rem;
      padding-top: 0.65rem;
      border-top: 1px dashed #dbe4ef;
    }

    .step3-help {
      margin-top: 0;
      margin-bottom: 0.55rem;
    }

    #pdf-analysis-status {
      line-height: 1.35;
    }

    /* Feedback visual: PDF aceito (verde) / erro (vermelho) — mobile + desktop */
    #wrap-uploads-pdf .step3-upload-field.is-upload-ok {
      background: #ecfdf5 !important;
      border-color: #86efac !important;
      box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.1);
    }

    #wrap-uploads-pdf .step3-upload-field.is-upload-ok .step3-upload-drop {
      border-color: #86efac !important;
      background: #f0fdf4 !important;
    }

    #wrap-uploads-pdf .step3-upload-field.is-upload-err {
      background: #fef2f2 !important;
      border-color: #fca5a5 !important;
      box-shadow: 0 0 0 1px rgba(220, 38, 38, 0.1);
    }

    #wrap-uploads-pdf .step3-upload-field.is-upload-err .step3-upload-drop {
      border-color: #f87171 !important;
      background: #fff1f2 !important;
    }

    #wrap-uploads-pdf .step3-upload-feedback {
      margin: 0.4rem 0 0;
      padding: 0.4rem 0.55rem;
      border-radius: 8px;
      font-size: 0.78rem;
      line-height: 1.35;
      font-weight: 600;
    }

    #wrap-uploads-pdf .step3-upload-field.is-upload-ok .step3-upload-feedback {
      color: #166534;
      background: rgba(220, 252, 231, 0.85);
      border: 1px solid #86efac;
    }

    #wrap-uploads-pdf .step3-upload-field.is-upload-err .step3-upload-feedback {
      color: #991b1b;
      background: rgba(254, 226, 226, 0.9);
      border: 1px solid #fca5a5;
    }

    #modal-cobertura-backdrop {
      transition: background 0.22s ease, opacity 0.22s ease;
      opacity: 0;
      pointer-events: none;
    }
    #modal-cobertura-backdrop.cob-backdrop--open {
      display: flex !important;
      opacity: 1;
      pointer-events: auto;
    }
    #modal-cobertura-backdrop .cob-saas-card {
      max-height: min(90vh, 640px);
      display: flex;
      flex-direction: column;
      transform: translateY(8px) scale(0.98);
      opacity: 0;
      transition: transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1), opacity 0.28s ease;
    }
    #modal-cobertura-backdrop.cob-backdrop--open .cob-saas-card--ready {
      transform: translateY(0) scale(1);
      opacity: 1;
    }
    .cob-saas {
      font-size: 0.92rem;
      line-height: 1.5;
    }
    .cob-saas__header {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.75rem;
      margin-bottom: 1rem;
      padding-bottom: 0.85rem;
      border-bottom: 1px solid #e2e8f0;
    }
    .cob-saas__title {
      margin: 0;
      font-size: 1.05rem;
      font-weight: 600;
      color: #0f172a;
      line-height: 1.3;
    }
    .cob-saas__badge {
      display: inline-flex;
      align-items: center;
      padding: 0.2rem 0.55rem;
      border-radius: 999px;
      font-size: 0.68rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      white-space: nowrap;
    }
    .cob-saas__badge--ok {
      background: #d1fae5;
      color: #166534;
    }
    .cob-saas__badge--atencao {
      background: #fef3c7;
      color: #a16207;
    }
    .cob-saas__badge--erro {
      background: #fee2e2;
      color: #b91c1c;
    }
    .cob-saas__hero {
      text-align: center;
      margin: 0.25rem 0 1.1rem;
    }
    .cob-saas__hero-pct {
      display: block;
      font-size: 2.35rem;
      font-weight: 600;
      color: #0f172a;
      letter-spacing: -0.03em;
    }
    .cob-saas__hero-pct--muted {
      font-size: 1.15rem;
      font-weight: 700;
      color: var(--muted);
    }
    .cob-saas__pills {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 0.45rem;
      margin-bottom: 0.9rem;
    }
    .cob-saas__pill {
      padding: 0.3rem 0.65rem;
      border-radius: 8px;
      font-size: 0.78rem;
      font-weight: 700;
      background: #f1f5f9;
      color: #64748b;
    }
    .cob-saas__impact {
      margin: 0 0 0.9rem;
      padding: 0.75rem 0.8rem;
      border-radius: var(--radius);
      background: #fffbeb;
      border: 1px solid #fbbf24;
      color: #92400e;
      font-weight: 600;
    }
    .cob-saas__impact[hidden] {
      display: none !important;
    }
    .cob-saas__resumo {
      margin: 0 0 1.1rem;
      font-size: 0.86rem;
      line-height: 1.55;
      color: var(--muted);
    }
    .cob-saas__footer {
      margin-top: auto;
      padding-top: 1rem;
      padding-bottom: 1.15rem;
      border-top: 1px solid #e2e8f0;
    }
    .cob-saas__btn--pri {
      background: #16a34a;
      color: #fff;
      font-weight: 600;
      border: none;
      border-radius: 9px;
      padding: 0.55rem 0.9rem;
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    }
    .cob-saas__btn--pri:hover {
      filter: brightness(1.05);
    }
    .cob-saas__btn--sec {
      background: #f8fafc;
      color: #0f172a;
      font-weight: 700;
      border: 1px solid #e2e8f0;
      border-radius: 9px;
      padding: 0.55rem 0.9rem;
    }
    .cob-saas__btn--ter {
      background: transparent;
      color: var(--muted);
      font-weight: 600;
      border: none;
      padding: 0.45rem 0.5rem;
      text-decoration: underline;
      text-underline-offset: 0.2em;
      font-size: 0.86rem;
    }

    @media (max-width: 680px) {
      .step3-card {
        gap: 0.8rem;
      }
      .step3-block {
        padding: 0.75rem;
      }
    }

    /* Etapa arquivos (#wizard-step-3): layout numerado + cartões (todas as larguras) */
    #wizard-step-3 .step3-section-title {
      display: block;
      font-size: clamp(0.92rem, 1.05vw, 1.05rem);
      font-weight: 600;
      letter-spacing: -0.02em;
      text-transform: none;
      color: #1d4ed8;
      line-height: 1.28;
      margin: 0;
    }

    #wizard-step-3 span.step3-section-num {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      width: 1.6rem;
      height: 1.6rem;
      border-radius: 999px;
      background: #2563eb;
      color: #fff;
      font-size: 0.8rem;
      font-weight: 600;
      line-height: 1;
      margin-top: 0.08rem;
    }

    #wizard-step-3 .step3-section-num--green {
      background: #16a34a;
    }

    #wizard-step-3 .step3-section-head {
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      gap: 0.5rem;
      margin-bottom: 0.6rem;
    }

    #wizard-step-3 .step3-section-head--review {
      margin-bottom: 0.45rem;
    }

    #wizard-step-3 .step3-review-head-inner {
      flex: 1 1 auto;
      min-width: 0;
    }

    #wizard-step-3 .step3-block-title-wrap .step3-section-title {
      margin-bottom: 0;
    }

    #wizard-step-3 .step3-help {
      margin: 0.3rem 0 0.55rem;
      font-size: clamp(0.78rem, 0.85vw, 0.88rem);
      line-height: 1.42;
      color: var(--muted);
    }

    #wizard-step-3 .step3-section .step3-choice {
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      gap: 0.45rem;
      padding: 0.65rem 0.75rem !important;
      border-width: 2px;
      border-radius: 12px;
      margin-bottom: 0.5rem !important;
    }

    #wizard-step-3 .step3-section .step3-choice:last-child {
      margin-bottom: 0 !important;
    }

    #wizard-step-3 .step3-section--1 .step3-choice:has(input:checked) {
      border-color: #2563eb !important;
      background: #f0f5ff !important;
      box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12);
    }

    #wizard-step-3 .step3-section--3 .step3-choice:has(input:checked) {
      border-color: #16a34a !important;
      background: #ecfdf5 !important;
      box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.12);
    }

    #wizard-step-3 .step3-choice input[type="radio"] {
      margin: 0.22rem 0 0 !important;
      flex-shrink: 0;
    }

    #wizard-step-3 .step3-choice-body {
      display: flex;
      flex: 1 1 auto;
      min-width: 0;
      gap: 0.5rem;
      align-items: flex-start;
    }

    #wizard-step-3 .step3-choice-ico {
      flex: 0 0 auto;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 0.05rem;
      color: #2563eb;
    }

    #wizard-step-3 .step3-section--3 .step3-choice-ico {
      color: #16a34a;
    }

    #wizard-step-3 .step3-choice-text {
      display: flex;
      flex-direction: column;
      gap: 0.15rem;
      min-width: 0;
    }

    #wizard-step-3 .step3-choice-title {
      font-size: clamp(0.84rem, 0.95vw, 0.96rem);
      font-weight: 600;
      color: #0f172a;
      line-height: 1.28;
    }

    #wizard-step-3 .step3-choice-sub {
      font-size: clamp(0.72rem, 0.8vw, 0.8rem);
      font-weight: 500;
      color: var(--muted);
      line-height: 1.38;
    }

    #wizard-step-3 .step3-upload-left {
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      gap: 0.55rem;
      min-width: 0;
    }

    #wizard-step-3 .step3-upload-copy label {
      font-size: clamp(0.84rem, 0.9vw, 0.92rem);
      font-weight: 600;
      color: #0f172a;
      margin: 0 0 0.15rem;
    }

    #wizard-step-3 .step3-upload-hint {
      margin: 0 !important;
      font-size: clamp(0.72rem, 0.8vw, 0.8rem) !important;
      line-height: 1.38 !important;
      color: var(--muted) !important;
    }

    #wizard-step-3 .step3-upload-layout {
      display: flex;
      flex-direction: column;
      gap: 0.6rem;
      min-width: 0;
    }

    #wizard-step-3 .step3-upload-drop {
      width: 100%;
      box-sizing: border-box;
      padding: 0.55rem 0.7rem;
      border: 2px dashed #cbd5e1;
      border-radius: 12px;
      background: #fafafa;
    }

    #wizard-step-3 .step3-upload-drop input[type="file"] {
      width: 100%;
      font-size: clamp(0.78rem, 0.85vw, 0.9rem);
    }

    #wizard-step-3 .step3-panel-footer {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      margin: 0.4rem 0 0;
      padding: 0.65rem 0.85rem;
      border-radius: var(--radius);
      border: 1px solid rgba(37, 99, 235, 0.14);
      background: linear-gradient(180deg, #f0f5ff 0%, #f8fafc 100%);
      color: var(--text);
      font-size: clamp(0.78rem, 0.85vw, 0.88rem);
      line-height: 1.45;
      font-weight: 500;
    }

    #wizard-step-3 .step3-panel-footer__ico {
      flex: 0 0 auto;
      width: 1.4rem;
      height: 1.4rem;
      border-radius: 999px;
      background: #2563eb;
      color: #fff;
      font-size: 0.74rem;
      font-weight: 600;
      font-style: italic;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      line-height: 1;
    }

    #wizard-step-3 .step3-card .step3-block--uploads {
      min-height: 0;
    }

    @media (min-width: 768px) {
      #wizard-step-3 .step3-upload-layout {
        flex-direction: row;
        align-items: stretch;
        gap: 1rem;
      }

      #wizard-step-3 .step3-upload-left {
        flex: 0 1 38%;
        max-width: 22rem;
      }

      #wizard-step-3 .step3-upload-drop {
        flex: 1 1 auto;
        min-width: 0;
        display: flex;
        align-items: center;
      }
    }

    /*
     * DESKTOP ONLY (≥1024px) — Envio dos arquivos (#wizard-step-3)
     * Layout horizontal 50/50. Isolado: não altera mobile/tablet <1024px.
     */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #wizard-step-3 .step3-card {
        gap: 0.85rem;
      }

      #wizard-step-3 .step3-lead {
        display: none !important;
      }

      #wizard-step-3 .step3-block.step3-section {
        background: #fff;
        border: 1px solid #e8edf4;
        border-radius: 14px;
        padding: 0.9rem 1rem !important;
        margin: 0 !important;
      }

      #wizard-step-3 .step3-block.field.step3-section--1 {
        margin-bottom: 0 !important;
      }

      #wizard-step-3 .step3-section-num--green {
        background: #2563eb;
      }

      #wizard-step-3 .step3-section-title {
        color: #0f172a;
        font-size: 0.98rem;
      }

      #wizard-step-3 .step3-help {
        color: #64748b;
        font-size: 0.82rem;
        margin: 0.25rem 0 0;
      }

      /* —— Passo 1 e 3: 2 colunas —— */
      #wizard-step-3 .step3-section--1,
      #wizard-step-3 .step3-section--3 {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 1rem;
        row-gap: 0.65rem;
        align-items: stretch;
      }

      #wizard-step-3 .step3-section--1 > .step3-section-head,
      #wizard-step-3 .step3-section--1 > #arq-disp-hint-depois,
      #wizard-step-3 .step3-section--3 > .step3-section-head {
        grid-column: 1 / -1;
      }

      #wizard-step-3 .step3-section--1 .step3-choice,
      #wizard-step-3 .step3-section--3 .step3-choice {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        gap: 0.55rem;
        height: 100%;
        min-height: 4.75rem;
        margin: 0 !important;
        padding: 0.85rem 0.9rem !important;
        border-radius: 12px !important;
        border: 1.5px solid #e2e8f0 !important;
        background: #fff !important;
        box-shadow: none !important;
        box-sizing: border-box;
      }

      #wizard-step-3 .step3-section--1 .step3-choice input[type="radio"],
      #wizard-step-3 .step3-section--3 .step3-choice input[type="radio"] {
        margin: 0.28rem 0 0 !important;
        flex-shrink: 0;
        accent-color: #94a3b8;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-body,
      #wizard-step-3 .step3-section--3 .step3-choice-body {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 0.65rem;
        min-width: 0;
        flex: 1 1 auto;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-ico,
      #wizard-step-3 .step3-section--3 .step3-choice-ico {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2.35rem;
        height: 2.35rem;
        margin: 0;
        border-radius: 10px;
        background: #f1f5f9;
        color: #64748b;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-ico svg,
      #wizard-step-3 .step3-section--3 .step3-choice-ico svg {
        width: 20px;
        height: 20px;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-text,
      #wizard-step-3 .step3-section--3 .step3-choice-text {
        gap: 0.2rem;
        min-width: 0;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-title,
      #wizard-step-3 .step3-section--3 .step3-choice-title {
        font-size: 0.9rem;
        font-weight: 600;
        color: #0f172a;
        line-height: 1.3;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-sub,
      #wizard-step-3 .step3-section--3 .step3-choice-sub {
        font-size: 0.78rem;
        font-weight: 500;
        color: #64748b;
        line-height: 1.4;
      }

      /* Positivo / SIM → azul */
      #wizard-step-3 .step3-section--1 .step3-choice:has(#arq-disp-agora:checked),
      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.1) !important;
      }

      #wizard-step-3 .step3-section--1 .step3-choice:has(#arq-disp-agora:checked) input[type="radio"],
      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) input[type="radio"] {
        accent-color: #2563eb;
      }

      #wizard-step-3 .step3-section--1 .step3-choice:has(#arq-disp-agora:checked) .step3-choice-ico,
      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) .step3-choice-ico {
        background: #dbeafe;
        color: #2563eb;
      }

      /* Neutro / NÃO → cinza (sem verde) */
      #wizard-step-3 .step3-section--1 .step3-choice:has(#arq-disp-depois:checked),
      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-nao:checked) {
        border-color: #cbd5e1 !important;
        background: #f8fafc !important;
        box-shadow: none !important;
      }

      #wizard-step-3 .step3-section--1 .step3-choice:has(#arq-disp-depois:checked) input[type="radio"],
      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-nao:checked) input[type="radio"] {
        accent-color: #64748b;
      }

      #wizard-step-3 .step3-section--1 .step3-choice:has(#arq-disp-depois:checked) .step3-choice-ico,
      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-nao:checked) .step3-choice-ico {
        background: #e2e8f0;
        color: #64748b;
      }

      #wizard-step-3 .step3-section--3 .step3-choice-ico,
      #wizard-step-3 .step3-section--3 .step3-choice:has(input:checked) .step3-choice-ico {
        color: #64748b;
      }

      #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) .step3-choice-ico {
        color: #2563eb;
      }

      /* —— Passo 2: capa | miolo lado a lado —— */
      #wizard-step-3 #wrap-uploads-pdf.step3-block--uploads {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 1rem;
        row-gap: 0.65rem;
        align-items: stretch;
        min-height: 0;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-section-head,
      #wizard-step-3 #wrap-uploads-pdf > #wrap-valor-ajustado-miolo {
        grid-column: 1 / -1;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field.field {
        margin: 0 !important;
        min-width: 0;
        height: 100%;
        display: flex;
        flex-direction: column;
        gap: 0.65rem;
        padding: 0.85rem 0.9rem;
        border: 1px solid #e2e8f0;
        border-radius: 12px;
        background: #fff;
        box-sizing: border-box;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field + .step3-upload-field {
        margin-top: 0 !important;
        padding-top: 0.85rem !important;
        border-top: 1px solid #e2e8f0 !important;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-layout {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.75rem;
        flex: 1 1 auto;
        min-width: 0;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-left {
        flex: 0 0 auto;
        max-width: none;
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 0.65rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2.35rem;
        height: 2.35rem;
        border-radius: 10px;
        background: #f0f5ff;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico svg {
        width: 22px;
        height: 22px;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico--miolo svg rect {
        fill: #f0f5ff;
        stroke: #2563eb;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico--miolo svg path {
        stroke: #2563eb;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy {
        min-width: 0;
        flex: 1 1 auto;
        display: flex;
        flex-wrap: wrap;
        align-items: baseline;
        justify-content: space-between;
        gap: 0.2rem 0.7rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy label {
        font-size: 0.9rem;
        font-weight: 600;
        color: #0f172a;
      }

      html.is-help-mode #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .pl-calc-flow-help,
      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .pl-calc-flow-help {
        display: none !important;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .pl-arq-how {
        display: inline-flex !important;
        align-items: center;
        margin: 0;
        padding: 0;
        border: 0;
        background: none;
        color: #2563eb;
        font-size: 0.72rem;
        font-weight: 600;
        line-height: 1.25;
        letter-spacing: -0.01em;
        text-decoration: underline;
        text-underline-offset: 2px;
        cursor: pointer;
        white-space: nowrap;
        font-family: inherit;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .pl-arq-how:hover {
        color: #1d4ed8;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-hint {
        flex: 1 1 100%;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-hint {
        font-size: 0.78rem !important;
        color: #64748b !important;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop {
        flex: 1 1 auto;
        width: 100%;
        max-width: none;
        min-width: 0;
        display: flex;
        align-items: center;
        padding: 0.7rem 0.8rem;
        border: 1.5px dashed #93c5fd;
        border-radius: 12px;
        background: #f8fbff;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop input[type="file"] {
        width: 100%;
        font-size: 0.84rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field #pdf-analysis-status {
        margin-top: 0.25rem !important;
      }

      #wizard-step-3 .step3-panel-footer {
        margin-top: 0.15rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field.field {
        padding-right: 0.9rem !important;
      }
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #wizard-step-3 .step3-card {
        gap: 0.75rem;
      }
    }

    /* Etapa arquivos — mobile: 2 colunas horizontais, alinhado e minimalista */
    @media (max-width: 767px) {
      #wizard-step-3 .step3-card {
        gap: 0.65rem;
      }

      #wizard-step-3 .step3-card > h2 {
        font-size: 1.08rem;
        font-weight: 700;
        letter-spacing: -0.02em;
        margin: 0 0 0.2rem;
        color: #0f172a;
      }

      #wizard-step-3 .step3-lead {
        font-size: 0.8rem;
        line-height: 1.5;
        margin: 0 0 0.5rem;
        color: #64748b;
      }

      #wizard-step-3 .step3-block {
        background: #fff;
        border: 1px solid #e8edf4;
        border-radius: 14px;
        padding: 0.75rem !important;
        margin: 0 !important;
      }

      #wizard-step-3 .step3-block.field {
        margin-bottom: 0 !important;
      }

      #wizard-step-3 .step3-section-head {
        display: flex;
        align-items: flex-start;
        gap: 0.45rem;
        margin: 0 0 0.55rem;
      }

      #wizard-step-3 .step3-section-title {
        font-size: 0.84rem;
        font-weight: 600;
        line-height: 1.3;
        color: #1d4ed8;
      }

      #wizard-step-3 span.step3-section-num {
        width: 1.4rem;
        height: 1.4rem;
        font-size: 0.72rem;
        margin-top: 0.05rem;
        flex-shrink: 0;
      }

      /* —— Passo 1 e 3: grade 2 colunas —— */
      #wizard-step-3 .step3-section--1,
      #wizard-step-3 .step3-section--3 {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 0.5rem;
        row-gap: 0.5rem;
        align-items: stretch;
      }

      #wizard-step-3 .step3-section--1 > .step3-section-head,
      #wizard-step-3 .step3-section--1 > #arq-disp-hint-depois,
      #wizard-step-3 .step3-section--3 > .step3-section-head {
        grid-column: 1 / -1;
      }

      #wizard-step-3 .step3-section--3 .step3-help {
        font-size: 0.72rem;
        line-height: 1.4;
        margin: 0.25rem 0 0;
        color: #64748b;
      }

      #wizard-step-3 .step3-section--1 .step3-choice,
      #wizard-step-3 .step3-section--3 .step3-choice {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        position: relative;
        min-width: 0;
        min-height: 6.75rem;
        height: 100%;
        margin: 0 !important;
        padding: 1.65rem 0.45rem 0.55rem !important;
        border-radius: 12px !important;
        border-width: 1.5px !important;
        box-sizing: border-box;
        text-align: center;
      }

      #wizard-step-3 .step3-section--1 .step3-choice input[type="radio"],
      #wizard-step-3 .step3-section--3 .step3-choice input[type="radio"] {
        position: absolute;
        top: 0.5rem;
        left: 0.5rem;
        margin: 0 !important;
        width: 1rem;
        height: 1rem;
        flex-shrink: 0;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-body,
      #wizard-step-3 .step3-section--3 .step3-choice-body {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0.35rem;
        width: 100%;
        min-width: 0;
        flex: 1 1 auto;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-ico,
      #wizard-step-3 .step3-section--3 .step3-choice-ico {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2rem;
        height: 2rem;
        margin: 0;
        border-radius: 999px;
        background: #f1f5f9;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-ico svg,
      #wizard-step-3 .step3-section--3 .step3-choice-ico svg {
        width: 18px;
        height: 18px;
      }

      #wizard-step-3 .step3-section--1 .step3-choice:has(input:checked) .step3-choice-ico {
        background: #dbeafe;
      }

      #wizard-step-3 .step3-section--3 .step3-choice:has(input:checked) .step3-choice-ico {
        background: #dcfce7;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-text,
      #wizard-step-3 .step3-section--3 .step3-choice-text {
        align-items: center;
        width: 100%;
        gap: 0.2rem;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-title,
      #wizard-step-3 .step3-section--3 .step3-choice-title {
        font-size: 0.72rem;
        font-weight: 600;
        line-height: 1.3;
        color: #0f172a;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
      }

      #wizard-step-3 .step3-section--1 .step3-choice-sub,
      #wizard-step-3 .step3-section--3 .step3-choice-sub {
        font-size: 0.64rem;
        line-height: 1.35;
        color: #64748b;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
      }

      /* —— Passo 2: uploads lado a lado —— */
      #wizard-step-3 #wrap-uploads-pdf.step3-block--uploads {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 0.5rem;
        row-gap: 0.5rem;
        align-items: stretch;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-section-head,
      #wizard-step-3 #wrap-uploads-pdf > #wrap-valor-ajustado-miolo {
        grid-column: 1 / -1;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field.field {
        margin: 0 !important;
        min-width: 0;
        height: 100%;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field {
        position: relative;
        display: flex;
        flex-direction: column;
        box-sizing: border-box;
        padding: 0.55rem 0.45rem 0.5rem !important;
        padding-right: 0.45rem !important;
        border: 1px solid #e2e8f0;
        border-radius: 12px;
        background: #fff;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field + .step3-upload-field {
        margin-top: 0 !important;
        padding-top: 0.55rem !important;
        border-top: none !important;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .pl-calc-flow-help {
        top: 0.28rem;
        right: 0.28rem;
        width: 1.35rem;
        height: 1.35rem;
        font-size: 0.66rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-layout {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.4rem;
        flex: 1 1 auto;
        min-height: 0;
        height: 100%;
        padding-top: 0.15rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-left {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: 0.28rem;
        text-align: center;
        min-width: 0;
        padding: 0 0.1rem;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2rem;
        height: 2rem;
        border-radius: 999px;
        flex-shrink: 0;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:nth-child(2) .step3-upload-ico {
        background: #eff6ff;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:nth-child(3) .step3-upload-ico {
        background: #ecfdf5;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico svg {
        width: 20px;
        height: 20px;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy {
        width: 100%;
        min-width: 0;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy label {
        display: block;
        font-size: 0.7rem;
        font-weight: 600;
        line-height: 1.25;
        color: #0f172a;
        margin: 0;
        word-break: break-word;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-hint {
        display: none !important;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop {
        display: flex;
        flex: 1 1 auto;
        align-items: center;
        justify-content: center;
        min-height: 3.35rem;
        margin: 0;
        padding: 0.4rem 0.3rem;
        border: 1.5px dashed #cbd5e1;
        border-radius: 10px;
        background: #fafbfc;
        box-sizing: border-box;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:nth-child(2) .step3-upload-drop {
        border-color: #93c5fd;
        background: #f8fafc;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:nth-child(3) .step3-upload-drop {
        border-color: #86efac;
        background: #f0fdf4;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop input[type="file"] {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        font-size: 0;
        line-height: 0;
        color: transparent;
        text-align: center;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop input[type="file"]::file-selector-button {
        display: block;
        width: 100%;
        margin: 0;
        padding: 0.42rem 0.3rem;
        border: 0;
        border-radius: 8px;
        background: #2563eb;
        color: #fff;
        font-size: 0.64rem;
        font-weight: 600;
        font-family: inherit;
        cursor: pointer;
        line-height: 1.2;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop input[type="file"]::-webkit-file-upload-button {
        display: block;
        width: 100%;
        margin: 0;
        padding: 0.42rem 0.3rem;
        border: 0;
        border-radius: 8px;
        background: #2563eb;
        color: #fff;
        font-size: 0.64rem;
        font-weight: 600;
        font-family: inherit;
        cursor: pointer;
        line-height: 1.2;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:nth-child(3) .step3-upload-drop input[type="file"]::file-selector-button,
      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:nth-child(3) .step3-upload-drop input[type="file"]::-webkit-file-upload-button {
        background: #16a34a;
      }

      #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field #pdf-analysis-status {
        font-size: 0.6rem;
        line-height: 1.3;
        margin-top: 0.3rem !important;
        text-align: center;
      }

      #wizard-step-3 .step3-panel-footer {
        font-size: 0.74rem;
        line-height: 1.45;
        padding: 0.6rem 0.7rem;
        margin: 0.15rem 0 0;
        border-radius: 12px;
      }

      #wizard-step-3 .step3-panel-footer__ico {
        width: 1.25rem;
        height: 1.25rem;
        font-size: 0.68rem;
      }
    }

    .wizard-panel {
      margin-top: 1rem;
    }

    .wizard-panel[hidden] {
      display: none !important;
    }

    input[type="email"],
    input[type="tel"],
    input[type="file"],
    textarea {
      width: 100%;
      padding: 0.55rem 0.65rem;
      border: 1px solid var(--border);
      border-radius: 8px;
      font-size: 0.95rem;
      background: var(--card);
      color: var(--text);
    }

    textarea {
      min-height: 88px;
      resize: vertical;
    }

    .pay-option {
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 0.85rem 0.95rem;
      margin-bottom: 0.75rem;
      background: #fff;
      box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03);
    }

    .pay-option:has(input[name="payment"]:checked) {
      border-color: #2563eb;
      background: #f0f5ff;
    }

    .pay-cc-install-row {
      margin-top: 0.85rem;
      padding: 0.85rem;
      border: 1px dashed var(--border);
      border-radius: var(--radius);
      background: var(--card);
    }

    .pay-cc-install-row[hidden] {
      display: none !important;
    }

    .pay-cc-panel {
      margin-top: 1rem;
      padding: 1rem;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: #fff;
    }

    .pay-cc-panel[hidden] {
      display: none !important;
    }

    .pay-cc-panel h3 {
      margin: 0 0 0.65rem;
      font-size: 1rem;
    }

    .pay-cc-grid {
      display: grid;
      gap: 0.65rem;
      grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
    }

    .pay-cc-grid .field-span2 {
      grid-column: 1 / -1;
    }

    .pedido-pay-inline {
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 1rem;
      margin: 0 0 1rem;
      background: #f0f5ff;
    }

    .pedido-pay-inline[hidden] {
      display: none !important;
    }

    .pedido-pay-inline textarea {
      font-family: ui-monospace, monospace;
    }

    .pay-option:has(input[name="frete-opcao"]:checked) {
      border-color: #2563eb;
      background: #f0f5ff;
    }

    .pay-sub {
      margin: 0.5rem 0 0 1.75rem;
      font-size: 0.86rem;
      color: #475569;
      line-height: 1.38;
    }

    .pay-grid {
      display: grid;
      gap: 0.75rem;
      margin-top: 0.35rem;
    }

    /* Etapa 4 — cartões de método (layout como referência) */
    .wizard-step4-intro {
      margin: 0 0 1rem;
      font-size: 0.92rem;
      line-height: 1.45;
      color: var(--text);
      text-align: left;
    }

    .wizard-step4-section-title {
      margin: 0 0 0.65rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--muted);
      text-align: left;
    }

    .pay-methods-row {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0.65rem;
      margin: 0 0 1rem;
      align-items: stretch;
    }

    @media (max-width: 960px) {
      .pay-methods-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    .pay-combined-panel {
      margin: 0 0 1rem;
      padding: 0.85rem 0.95rem;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      background: #f8fafc;
      text-align: left;
    }

    .pay-combined-panel__title {
      margin: 0 0 0.35rem;
      font-size: 0.95rem;
      font-weight: 700;
      color: #0f172a;
    }

    .pay-combined-panel__total {
      margin: 0 0 0.75rem;
    }

    .pay-combined-grid {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 0.75rem;
      align-items: start;
    }

    @media (max-width: 720px) {
      .pay-combined-grid {
        grid-template-columns: 1fr;
      }
    }

    .pay-combined-block__label {
      margin: 0 0 0.35rem;
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: var(--muted);
    }

    .pay-combined-select {
      width: 100%;
      margin-bottom: 0.55rem;
      padding: 0.45rem 0.55rem;
      border: 1px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.88rem;
      background: #fff;
    }

    .pay-combined-split {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }

    .pay-combined-step {
      padding: 0.75rem 0.85rem;
      border: 1px solid #cbd5e1;
      border-radius: 12px;
      background: #fff;
    }

    .pay-combined-step--1 {
      border-color: rgba(37, 99, 235, 0.35);
      background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
    }

    .pay-combined-step--2 {
      border-color: rgba(22, 163, 74, 0.3);
      background: linear-gradient(180deg, #f0fdf4 0%, #fff 100%);
    }

    .pay-combined-step__badge {
      display: inline-block;
      margin: 0 0 0.35rem;
      padding: 0.15rem 0.45rem;
      border-radius: 6px;
      font-size: 0.65rem;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: #fff;
      background: #2563eb;
    }

    .pay-combined-step--2 .pay-combined-step__badge {
      background: #16a34a;
    }

    .pay-combined-amount-preview {
      margin: 0.55rem 0 0;
      padding: 0.55rem 0.65rem;
      border-radius: 10px;
      text-align: center;
      background: #fff;
      border: 1px dashed rgba(37, 99, 235, 0.45);
    }

    .pay-combined-amount-preview__label {
      margin: 0 0 0.15rem;
      font-size: 0.68rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      color: #64748b;
    }

    .pay-combined-amount-preview__value {
      margin: 0;
      font-size: 1.45rem;
      font-weight: 800;
      line-height: 1.15;
      color: #1d4ed8;
      font-variant-numeric: tabular-nums;
    }

    .pay-combined-saldo {
      margin: 0.1rem 0 0;
      font-size: 1.45rem;
      font-weight: 800;
      line-height: 1.15;
      color: #15803d;
      font-variant-numeric: tabular-nums;
    }

    .pay-combined-saldo-box {
      margin-top: 0.45rem;
      padding: 0.55rem 0.65rem;
      border-radius: 10px;
      text-align: center;
      background: #fff;
      border: 1px dashed rgba(22, 163, 74, 0.4);
    }

    .pay-combined-block--saldo {
      padding: 0;
    }

    .pay-combined-charge__valor {
      margin: 0 0 0.65rem;
      padding: 0.45rem 0.6rem;
      border-radius: 8px;
      background: #eff6ff;
      border: 1px solid rgba(37, 99, 235, 0.2);
      font-size: 0.88rem;
      line-height: 1.4;
      color: #0f172a;
    }

    .pay-combined-charge__valor strong {
      font-size: 1.15rem;
      font-weight: 800;
      color: #1d4ed8;
    }

    .pay-combined-summary-list {
      margin: 0 0 0.85rem;
      padding-left: 1.1rem;
      font-size: 0.88rem;
      line-height: 1.55;
      color: #334155;
    }

    .pay-combined-charge {
      margin: 0 0 1.15rem;
      padding: 0.75rem 0 0;
      border-top: 1px dashed #cbd5e1;
    }

    .pay-combined-charge:first-of-type {
      border-top: none;
      padding-top: 0;
    }

    .pay-combined-charge__title {
      margin: 0 0 0.45rem;
      font-size: 0.82rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: #475569;
    }

    .pay-method-card {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      min-height: 8.5rem;
      padding: 0.85rem 0.55rem 2rem;
      margin: 0;
      border: 2px solid #e2e8f0;
      border-radius: 12px;
      background: #fff;
      cursor: pointer;
      transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
      text-align: center;
      box-sizing: border-box;
    }

    .pay-method-card:has(input:focus-visible) {
      outline: 2px solid #2563eb;
      outline-offset: 2px;
    }

    .pay-method-card:has(input:checked) {
      border-color: #2563eb;
      background: #f8fafc;
      box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.15);
    }

    .pay-method-card input[type='radio'] {
      position: absolute;
      opacity: 0;
      width: 0;
      height: 0;
      pointer-events: none;
    }

    .pay-method-card__icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 3.25rem;
      height: 3.25rem;
      margin: 0 auto 0.45rem;
      font-size: 1.65rem;
      line-height: 1;
    }

    .pay-method-card__icon--pix {
      font-weight: 600;
      font-size: 0.95rem;
      letter-spacing: -0.02em;
      color: #32bcad;
      font-family: system-ui, sans-serif;
    }

    .pay-method-card__title {
      display: block;
      font-size: 1rem;
      font-weight: 600;
      color: #0f172a;
      margin-bottom: 0.2rem;
    }

    .pay-method-card__sub {
      display: block;
      font-size: 0.72rem;
      color: var(--muted);
      line-height: 1.3;
      max-width: 9rem;
      margin: 0 auto;
    }

    .pay-method-card__radio {
      position: absolute;
      right: 0.55rem;
      bottom: 0.55rem;
      width: 1.35rem;
      height: 1.35rem;
      border-radius: 50%;
      border: 2px solid #cbd5e1;
      background: #fff;
      box-sizing: border-box;
      pointer-events: none;
    }

    .pay-method-card:has(input:checked) .pay-method-card__radio {
      border-color: #2563eb;
      background: #2563eb;
    }

    .pay-method-card:has(input:checked) .pay-method-card__radio::after {
      content: '';
      position: absolute;
      left: 50%;
      top: 50%;
      width: 0.32rem;
      height: 0.55rem;
      border: solid #fff;
      border-width: 0 2px 2px 0;
      transform: translate(-50%, -55%) rotate(45deg);
      box-sizing: border-box;
    }

    .wizard-step4-resumo {
      margin: 0 0 0.85rem;
      padding: 0.75rem 0 0;
      border-top: 1px solid var(--border);
      text-align: left;
    }

    .wizard-step4-resumo__title {
      margin: 0 0 0.45rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
    }

    .wizard-step4-resumo__list {
      margin: 0;
      padding-left: 1rem;
      font-size: 0.82rem;
      line-height: 1.45;
      color: #64748b;
    }

    .wizard-step4-resumo__list li {
      margin-bottom: 0.35rem;
    }

    .wizard-step4-resumo__list li:last-child {
      margin-bottom: 0;
    }

    @media (max-width: 720px) {
      .pay-methods-row {
        grid-template-columns: 1fr;
      }

      .pay-method-card {
        min-height: 0;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        padding: 0.75rem 2.5rem 0.75rem 0.85rem;
        text-align: left;
      }

      .pay-method-card__icon {
        margin: 0 0.65rem 0 0;
        width: 2.5rem;
        height: 2.5rem;
      }

      .pay-method-card__title,
      .pay-method-card__sub {
        text-align: left;
        margin-left: 0;
        max-width: none;
      }

      .pay-method-card__sub {
        width: 100%;
        flex-basis: 100%;
        margin-left: 3.15rem;
        margin-top: -0.15rem;
      }
    }

    .pay-asaas-status.is-ok {
      padding: 0.55rem 0.7rem;
      border-radius: 8px;
      border: 1px solid #a7f3d0;
      background: #ecfdf5;
      color: #166534;
      font-size: 0.86rem;
    }

    .pay-asaas-status.is-warn {
      padding: 0.55rem 0.7rem;
      border-radius: 8px;
      border: 1px solid #fcd34d;
      background: #fffbeb;
      color: #92400e;
      font-size: 0.86rem;
    }

    .pay-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.65rem;
      flex-wrap: wrap;
    }

    .pay-chip {
      display: inline-flex;
      align-items: center;
      border: 1px solid #dbe7ff;
      background: #f0f6ff;
      color: var(--text);
      border-radius: 999px;
      padding: 0.2rem 0.55rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.01em;
    }

    .pay-card-modes {
      margin: 0.55rem 0 0 1.75rem;
      padding: 0.6rem 0.7rem;
      border: 1px dashed #d5deea;
      border-radius: var(--radius);
      background: #f8fafc;
    }

    .pay-card-modes label {
      display: block;
      margin: 0 0 0.4rem;
    }

    .pay-card-modes label:last-child {
      margin-bottom: 0;
    }

    .pl-pay-confirm-dialog {
      width: min(calc(100vw - 2rem), 26rem);
      max-width: 100%;
      padding: 0;
      border: none;
      border-radius: 12px;
      box-shadow: 0 24px 48px rgba(15, 23, 42, 0.35);
    }

    .pl-pay-confirm-dialog::backdrop {
      background: rgba(15, 23, 42, 0.5);
    }

    .pl-pay-confirm-dialog__card {
      padding: 1.15rem 1.2rem 1.2rem;
      text-align: left;
    }

    .pl-pay-confirm-dialog__card h3 {
      margin: 0 0 0.45rem;
      font-size: 1.05rem;
      font-weight: 600;
      color: #0f172a;
    }

    .pl-pay-confirm-dialog__card > .hint {
      margin: 0 0 0.85rem;
      font-size: 0.86rem;
    }

    .pl-pay-confirm-dialog__check {
      display: flex;
      gap: 0.55rem;
      align-items: flex-start;
      margin: 0 0 0.65rem;
      font-size: 0.88rem;
      line-height: 1.4;
      color: #64748b;
      cursor: pointer;
    }

    .pl-pay-confirm-dialog__check input {
      margin-top: 0.2rem;
      flex-shrink: 0;
      width: 1.05rem;
      height: 1.05rem;
      accent-color: #2563eb;
    }

    .pl-pay-confirm-dialog__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.55rem;
      justify-content: flex-end;
      margin-top: 1rem;
      padding-top: 0.85rem;
      border-top: 1px solid var(--border);
    }

    .wizard-step4-post-checkout-valores {
      margin: 0 0 0.75rem;
      padding: 0.65rem 0.75rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: #0f172a;
      background: #f8fafc;
      border: 1px solid #e2e8f0;
      border-radius: var(--radius);
    }

    input.field-invalid,
    textarea.field-invalid {
      border-color: var(--danger) !important;
      background: #fff5f5 !important;
    }

    .aside-panel[hidden] {
      display: none !important;
    }

    #wizard-recap-body {
      font-size: 0.78rem;
      line-height: 1.5;
      color: var(--text);
    }

    .recap-line {
      margin: 0.25rem 0;
    }

    .layout-shell.wizard-wide .layout-summary {
      display: none;
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      .layout-shell.wizard-wide {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
      }

      .layout-shell.wizard-wide .layout-page-head {
        grid-column: 1;
        grid-row: 1;
      }

      .layout-shell.wizard-wide .layout-main {
        grid-column: 1;
        grid-row: 2;
      }
    }

    .wizard-success {
      text-align: center;
      padding: 1.5rem 1rem;
    }

    .wizard-success h3 {
      margin: 0 0 0.5rem;
      color: #15803d;
    }

    /* Etapa final: cobrança em destaque antes do resumo do pedido */
    .pay-confirmation-shell {
      margin-bottom: 1.25rem;
    }

    .pay-confirmation-card {
      text-align: left;
      padding: 1.35rem 1.15rem;
      border: 2px solid #2563eb;
      border-radius: 12px;
      background: linear-gradient(180deg, #f8fafc 0%, #ffffff 48%);
      box-shadow: 0 10px 32px rgba(37, 99, 235, 0.1);
    }

    .pay-confirmation-kicker {
      margin: 0 0 0.35rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.09em;
      text-transform: uppercase;
      color: var(--muted);
    }

    .pay-confirmation-heading {
      margin: 0 0 0.5rem;
      font-size: clamp(1.12rem, 2.8vw, 1.42rem);
      font-weight: 600;
      color: #0f172a;
      line-height: 1.28;
    }

    .pay-confirmation-lead {
      margin: 0 0 1rem !important;
      max-width: 42rem;
      line-height: 1.45;
    }

    .pay-summary-box {
      margin: 0 0 1rem;
      padding: 0.75rem 0.85rem;
      background: #f0f5ff;
      border-radius: var(--radius);
      border: 1px solid rgba(37, 99, 235, 0.14);
      line-height: 1.5;
      text-align: left;
    }

    #pedido-pay-inline.pedido-pay-inline:not([hidden]) {
      display: block;
    }

    #pedido-pay-inline .pedido-pay-pix img,
    #pedido-pay-modal .pedido-pay-pix img {
      max-width: min(280px, 92vw) !important;
    }

    /* Modal: cobrança Asaas — janela ~quadrada, conteúdo visível sem scroll no painel */
    .pl-asaas-pay-dialog {
      --pay-modal-size: min(min(92vw, 92vh) - 1rem, 28rem);
      width: var(--pay-modal-size);
      height: var(--pay-modal-size);
      max-width: calc(100vw - 1rem);
      max-height: calc(100vh - 1rem);
      padding: 0;
      border: none;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 24px 48px rgba(15, 23, 42, 0.38);
      background: transparent;
      box-sizing: border-box;
    }

    .pl-asaas-pay-dialog::backdrop {
      background: rgba(15, 23, 42, 0.58);
    }

    .pl-asaas-pay-dialog__inner {
      margin: 0;
      height: 100%;
      max-height: none;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      padding: 0;
      box-sizing: border-box;
    }

    /* Sobrescreve .pay-confirmation-card / .card para caber no modal quadrado */
    .pl-asaas-pay-dialog .pl-asaas-pay-dialog__inner.pay-confirmation-card {
      padding: 0.58rem 0.72rem 0.62rem !important;
    }

    .pl-asaas-pay-dialog .pay-confirmation-kicker {
      font-size: 0.65rem;
      margin-bottom: 0.2rem;
    }

    .pl-asaas-pay-dialog .pay-confirmation-heading {
      font-size: clamp(0.92rem, 2.5vmin, 1.12rem);
      margin: 0 0 0.2rem;
      line-height: 1.2;
    }

    .pl-asaas-pay-dialog .pay-confirmation-lead {
      margin: 0 0 0.45rem !important;
      font-size: 0.74rem;
      line-height: 1.3;
      max-width: none;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal {
      flex: 1;
      min-height: 0;
      display: flex;
      flex-direction: column;
      overflow: hidden;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pay-summary-box {
      flex-shrink: 0;
      margin: 0 0 0.45rem !important;
      padding: 0.45rem 0.55rem !important;
      font-size: 0.72rem;
      line-height: 1.32 !important;
      border-radius: 8px;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--grid {
      flex: 1;
      min-height: 0;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.45rem 0.65rem;
      align-items: stretch;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__qr {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 0;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__qr img {
      max-width: 100% !important;
      width: auto;
      max-height: 100%;
      object-fit: contain;
      border-radius: 8px;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__side {
      display: flex;
      flex-direction: column;
      min-height: 0;
      gap: 0.25rem;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__side label {
      font-size: 0.72rem;
      margin: 0;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pix-copy-field {
      flex: 1;
      min-height: 2.5rem;
      max-height: 5.5rem;
      margin: 0 !important;
      padding: 0.35rem 0.45rem;
      font-size: 0.65rem !important;
      line-height: 1.25;
      resize: none;
      overflow-y: auto;
      border-radius: 6px;
      border: 1px solid var(--border);
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .btn-copy-pix {
      flex-shrink: 0;
      margin-top: 0 !important;
      padding: 0.4rem 0.65rem;
      font-size: 0.82rem;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-modal-footer {
      flex-shrink: 0;
      margin-top: 0.45rem !important;
      padding-top: 0.45rem !important;
      border-top: 1px solid var(--border);
      text-align: center;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-modal-footer .hint {
      font-size: 0.68rem;
      margin-bottom: 0.25rem !important;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-modal-footer .btn-secondary {
      padding: 0.35rem 0.65rem !important;
      font-size: 0.78rem !important;
    }

    /* Gate de suporte — overlay isolado (não altera wizard desktop) */
    #pl-suporte-gate {
      position: fixed;
      inset: 0;
      z-index: 12000;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 18px;
      background: rgba(62, 62, 62, 0.72);
      font-family: Inter, Nunito, system-ui, sans-serif;
      color: #171717;
      box-sizing: border-box;
    }
    #pl-suporte-gate.is-open {
      display: flex;
    }
    #pl-suporte-gate *,
    #pl-suporte-gate *::before,
    #pl-suporte-gate *::after {
      box-sizing: border-box;
    }
    #pl-suporte-gate .pl-suporte-gate__card {
      position: relative;
      width: min(880px, 100%);
      background: #fff;
      border-radius: 24px;
      box-shadow: 0 28px 70px rgba(0, 0, 0, 0.28);
      padding: 24px 24px 20px;
    }
    #pl-suporte-gate .pl-suporte-gate__close {
      position: absolute;
      top: 12px;
      right: 14px;
      width: 32px;
      height: 32px;
      border: 0;
      background: transparent;
      color: #c4c4c4;
      font-size: 28px;
      font-weight: 400;
      line-height: 1;
      cursor: pointer;
      z-index: 3;
    }
    #pl-suporte-gate .pl-suporte-gate__grid {
      display: grid;
      grid-template-columns: 318px 1fr;
      gap: 0 8px;
      align-items: stretch;
    }
    #pl-suporte-gate .pl-suporte-gate__illust {
      position: relative;
      min-height: 392px;
      margin: -8px 0 0 -10px;
      overflow: hidden;
      background:
        radial-gradient(ellipse 90% 70% at 28% 32%, rgba(255, 214, 221, 0.92) 0%, rgba(255, 247, 248, 0) 68%),
        linear-gradient(180deg, #fff4f6 0%, #fff 74%);
    }
    #pl-suporte-gate .pl-sg-heart {
      position: absolute;
      width: 54px;
      height: 48px;
      opacity: 0.38;
      pointer-events: none;
    }
    #pl-suporte-gate .pl-sg-heart svg {
      display: block;
      width: 100%;
      height: 100%;
    }
    #pl-suporte-gate .pl-sg-heart-a {
      top: 22px;
      left: 22px;
      width: 72px;
      height: 64px;
      transform: rotate(-18deg);
    }
    #pl-suporte-gate .pl-sg-heart-b {
      top: 128px;
      left: 210px;
      width: 86px;
      height: 76px;
      opacity: 0.3;
      transform: rotate(16deg);
    }
    #pl-suporte-gate .pl-sg-tablet {
      position: absolute;
      top: 78px;
      left: 42px;
      width: 242px;
      height: 172px;
      display: flex;
      background: #fff;
      border-radius: 18px;
      box-shadow:
        12px 22px 28px rgba(40, 16, 24, 0.16),
        6px 8px 0 0 #ececec,
        0 0 0 1px rgba(0, 0, 0, 0.04);
      overflow: hidden;
      transform: perspective(1200px) rotateY(-8deg) rotateX(4deg);
      z-index: 2;
    }
    #pl-suporte-gate .pl-sg-tablet::after {
      display: none;
    }
    #pl-suporte-gate .pl-sg-side {
      width: 78px;
      flex: 0 0 78px;
      background: #171b29;
      padding: 20px 8px 12px;
    }
    #pl-suporte-gate .pl-sg-tag {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 4px;
      height: 22px;
      padding: 0 6px;
      background: #e31b23;
      color: #fff;
      border-radius: 5px;
      font-size: 9.5px;
      font-weight: 800;
      letter-spacing: -0.02em;
      white-space: nowrap;
    }
    #pl-suporte-gate .pl-sg-tag svg {
      display: block;
      flex: 0 0 10px;
    }
    #pl-suporte-gate .pl-sg-bar {
      display: block;
      height: 5px;
      margin: 10px 4px 0;
      background: #3a4156;
      border-radius: 3px;
    }
    #pl-suporte-gate .pl-sg-bar:nth-child(3) { width: 78%; }
    #pl-suporte-gate .pl-sg-bar:nth-child(4) { width: 92%; }
    #pl-suporte-gate .pl-sg-bar:nth-child(5) { width: 64%; }
    #pl-suporte-gate .pl-sg-sheet {
      position: relative;
      flex: 1;
      padding: 18px 16px 14px 16px;
      background: #fff;
    }
    #pl-suporte-gate .pl-sg-ttl {
      margin: 0 0 12px;
      font-size: 15px;
      font-weight: 800;
      color: #3a3a3a;
    }
    #pl-suporte-gate .pl-sg-line {
      display: block;
      height: 6px;
      margin: 0 0 9px;
      background: #ececec;
      border-radius: 4px;
    }
    #pl-suporte-gate .pl-sg-line--s { width: 72%; }
    #pl-suporte-gate .pl-sg-line--m { width: 86%; }
    #pl-suporte-gate .pl-sg-btn {
      position: absolute;
      right: 16px;
      bottom: 16px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 8px 14px;
      background: #e31b23;
      color: #fff;
      border-radius: 9px;
      font-size: 11px;
      font-weight: 800;
      box-shadow: 0 5px 12px rgba(227, 27, 35, 0.3);
    }
    #pl-suporte-gate .pl-sg-arrow {
      position: absolute;
      top: 178px;
      left: 8px;
      width: 108px;
      height: 86px;
      z-index: 4;
      filter: drop-shadow(0 6px 8px rgba(180, 10, 20, 0.28));
      transform: rotate(-12deg);
    }
    #pl-suporte-gate .pl-sg-badge {
      position: absolute;
      top: 38px;
      left: 18px;
      width: 86px;
      height: 86px;
      border-radius: 50%;
      background: radial-gradient(circle at 32% 28%, #ff5a60 0%, #e31b23 48%, #c01018 100%);
      box-shadow:
        0 12px 22px rgba(170, 8, 20, 0.32),
        inset 0 -10px 14px rgba(0, 0, 0, 0.16),
        inset 0 8px 10px rgba(255, 255, 255, 0.28);
      color: #fff;
      font-family: Nunito, Inter, sans-serif;
      font-style: italic;
      font-weight: 900;
      font-size: 54px;
      line-height: 82px;
      text-align: center;
      z-index: 5;
    }
    #pl-suporte-gate .pl-sg-sparks {
      position: absolute;
      top: 18px;
      left: 4px;
      width: 120px;
      height: 120px;
      pointer-events: none;
      z-index: 6;
    }
    #pl-suporte-gate .pl-sg-sparks i {
      position: absolute;
      background: #ffd54a;
      clip-path: polygon(50% 0, 62% 38%, 100% 50%, 62% 62%, 50% 100%, 38% 62%, 0 50%, 38% 38%);
    }
    #pl-suporte-gate .pl-sg-sparks i:nth-child(1) {
      top: 6px; left: 58px; width: 10px; height: 18px; transform: rotate(18deg);
    }
    #pl-suporte-gate .pl-sg-sparks i:nth-child(2) {
      top: 38px; left: 96px; width: 8px; height: 14px; transform: rotate(70deg);
    }
    #pl-suporte-gate .pl-sg-sparks i:nth-child(3) {
      top: 2px; left: 28px; width: 7px; height: 12px; transform: rotate(-28deg);
    }
    #pl-suporte-gate .pl-sg-books {
      position: absolute;
      left: 18px;
      bottom: 6px;
      width: 220px;
      height: 108px;
      z-index: 3;
      perspective: 600px;
    }
    #pl-suporte-gate .pl-sg-iso {
      position: absolute;
      width: 176px;
      height: 46px;
    }
    #pl-suporte-gate .pl-sg-iso-cover {
      position: absolute;
      inset: 0 18px 9px 0;
      border-radius: 4px 3px 2px 4px;
    }
    #pl-suporte-gate .pl-sg-iso-pages {
      position: absolute;
      right: 2px;
      top: 1px;
      bottom: 9px;
      width: 18px;
      background: repeating-linear-gradient(#f7f4ee, #f7f4ee 2px, #e4dfd4 2px, #e4dfd4 3px);
      border-radius: 0 4px 4px 0;
      transform: skewY(-22deg);
      transform-origin: left center;
    }
    #pl-suporte-gate .pl-sg-iso-front {
      position: absolute;
      left: 12px;
      right: 18px;
      bottom: 0;
      height: 9px;
      background: repeating-linear-gradient(90deg, #f4f0e8, #f4f0e8 2px, #ddd6c8 2px, #ddd6c8 3px);
      transform: skewX(-38deg);
      transform-origin: top;
      border-radius: 0 0 4px 4px;
    }
    #pl-suporte-gate .pl-sg-iso-red {
      left: 22px;
      top: 6px;
      transform: rotate(-9deg) skewX(-10deg);
      z-index: 2;
      filter: drop-shadow(0 10px 10px rgba(80, 0, 0, 0.22));
    }
    #pl-suporte-gate .pl-sg-iso-red .pl-sg-iso-cover {
      background: linear-gradient(180deg, #f0444a 0%, #d3141c 100%);
      box-shadow: inset 14px 0 0 #b10f16;
    }
    #pl-suporte-gate .pl-sg-iso-blk {
      left: 10px;
      top: 42px;
      width: 196px;
      height: 52px;
      transform: rotate(5deg) skewX(-8deg);
      z-index: 1;
      filter: drop-shadow(0 12px 12px rgba(0, 0, 0, 0.28));
    }
    #pl-suporte-gate .pl-sg-iso-blk .pl-sg-iso-cover {
      background: linear-gradient(180deg, #2c2c2c 0%, #111 100%);
      box-shadow: inset 14px 0 0 #000;
    }
    #pl-suporte-gate .pl-suporte-gate__copy {
      padding: 2px 6px 0 8px;
    }
    #pl-suporte-gate .pl-suporte-gate__title {
      display: inline-block;
      margin: 0 0 14px;
      padding: 4px 18px 7px;
      background: #e31b23;
      color: #fff;
      border-radius: 10px;
      font-family: Nunito, Inter, sans-serif;
      font-style: italic;
      font-weight: 900;
      font-size: 46px;
      line-height: 1.05;
      letter-spacing: -0.045em;
    }
    #pl-suporte-gate .pl-suporte-gate__lead {
      margin: 0 0 14px;
      font-size: 18px;
      line-height: 1.38;
      font-weight: 700;
      color: #1c1c1c;
    }
    #pl-suporte-gate .pl-suporte-gate__mark {
      display: inline;
      background: #f3b6bf;
      padding: 1px 5px 2px;
      border-radius: 4px;
      font-weight: 800;
    }
    #pl-suporte-gate .pl-suporte-gate__list {
      list-style: none;
      margin: 0;
      padding: 0;
    }
    #pl-suporte-gate .pl-suporte-gate__item {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      padding: 11px 0 12px;
      border-bottom: 1px solid #ececec;
    }
    #pl-suporte-gate .pl-suporte-gate__item:last-child {
      border-bottom: 0;
      padding-bottom: 4px;
    }
    #pl-suporte-gate .pl-suporte-gate__ico {
      flex: 0 0 40px;
      width: 40px;
      height: 40px;
      margin-top: 1px;
    }
    #pl-suporte-gate .pl-suporte-gate__item strong {
      display: block;
      font-size: 16.5px;
      font-weight: 800;
      line-height: 1.2;
      color: #111;
    }
    #pl-suporte-gate .pl-suporte-gate__item span {
      display: block;
      margin-top: 2px;
      font-size: 14px;
      font-weight: 500;
      color: #6a6a6a;
      line-height: 1.3;
    }
    #pl-suporte-gate .pl-suporte-gate__ack {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 16px;
      margin: 12px 0 12px;
      padding: 18px 24px;
      background: #fde6ea;
      border-radius: 10px;
      cursor: pointer;
    }
    #pl-suporte-gate .pl-suporte-gate__ack input {
      appearance: none;
      -webkit-appearance: none;
      width: 26px;
      height: 26px;
      flex: 0 0 26px;
      margin: 0;
      border: 2px solid #cfcfcf;
      border-radius: 4px;
      background: #fff;
      cursor: pointer;
    }
    #pl-suporte-gate .pl-suporte-gate__ack input:checked {
      border-color: #e31b23;
      background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23e31b23' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M3 8.2l3.2 3.3L13 4.6'/%3E%3C/svg%3E") center / 16px no-repeat;
    }
    #pl-suporte-gate .pl-suporte-gate__ack b {
      font-size: 16px;
      font-weight: 800;
      line-height: 1.28;
      color: #111;
    }
    #pl-suporte-gate .pl-suporte-gate__ack i {
      color: #e31b23;
      font-style: normal;
      font-weight: 900;
    }
    #pl-suporte-gate .pl-suporte-gate__cta {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      width: 100%;
      height: 54px;
      border: 0;
      border-radius: 10px;
      background: #e31b23;
      color: #fff;
      font-family: Inter, Nunito, sans-serif;
      font-size: 22px;
      font-weight: 800;
      letter-spacing: -0.02em;
      cursor: pointer;
    }
    #pl-suporte-gate .pl-suporte-gate__cta span {
      font-size: 22px;
      font-weight: 400;
      line-height: 1;
    }
    #pl-suporte-gate .pl-suporte-gate__ack.is-warn {
      outline: 2px solid #e31b23;
    }
    @media (max-width: 720px) {
      #pl-suporte-gate .pl-suporte-gate__grid {
        grid-template-columns: 1fr;
      }
      #pl-suporte-gate .pl-suporte-gate__illust {
        min-height: 250px;
        margin: 0;
      }
      #pl-suporte-gate .pl-suporte-gate__title {
        font-size: 32px;
      }
      #pl-suporte-gate .pl-suporte-gate__lead {
        font-size: 16px;
      }
      #pl-suporte-gate .pl-sg-tablet {
        left: 50%;
        margin-left: -107px;
      }
      #pl-suporte-gate .pl-sg-badge {
        left: calc(50% - 130px);
      }
      #pl-suporte-gate .pl-sg-books {
        left: 50%;
        margin-left: -84px;
      }
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-other {
      flex: 1;
      min-height: 0;
      overflow: hidden;
      font-size: 0.78rem;
      line-height: 1.35;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-other .btn-primary {
      padding: 0.5rem 0.85rem !important;
      font-size: 0.88rem !important;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--soloqr {
      flex: 1;
      min-height: 0;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--soloqr img {
      max-width: 100%;
      max-height: min(38vmin, 200px);
      width: auto;
      object-fit: contain;
      border-radius: 8px;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--solocopy {
      flex: 1;
      min-height: 0;
      display: flex;
      flex-direction: column;
      gap: 0.3rem;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--solocopy label {
      font-size: 0.72rem;
      margin: 0;
    }

    .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--solocopy .pix-copy-field {
      max-height: 7rem;
    }

    @media (max-width: 520px) {
      .pl-asaas-pay-dialog {
        --pay-modal-size: min(min(96vw, 96vh) - 0.5rem, 24rem);
      }

      .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto 1fr;
      }

      .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__qr img {
        max-height: min(28vw, 120px);
      }
    }

    .pl-asaas-pay-dialog__toolbar {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.65rem;
      margin: 0 0 0.5rem;
    }

    .pl-asaas-pay-dialog__close {
      flex-shrink: 0;
      width: 2.25rem;
      height: 2.25rem;
      margin: 0;
      padding: 0;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: var(--card);
      font: inherit;
      font-size: 1.35rem;
      line-height: 1;
      cursor: pointer;
      color: var(--text);
    }

    .pl-asaas-pay-dialog__close:hover {
      background: #f1f5f9;
    }

    .wizard-step4-post-checkout-banner {
      margin: 0.75rem 0 1rem;
      padding: 0.85rem 1rem;
      border-radius: var(--radius);
      border: 1px solid #86efac;
      background: #f0fdf4;
      text-align: left;
    }

    .wizard-step4-post-checkout-banner__title {
      margin: 0;
      font-size: 1rem;
      font-weight: 700;
      color: #14532d;
    }

    .wizard-step4-pay-cta {
      margin-top: 0.75rem;
      padding-top: 0;
      border-top: none;
      text-align: center;
    }

    .wizard-step4-btn-pagar {
      min-width: min(100%, 18rem);
      width: 100%;
      max-width: 22rem;
      padding: 0.75rem 1.25rem;
      font-size: clamp(0.88rem, 2.2vw, 1rem);
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    /* Hierarquia: títulos dos blocos maiores que selects */
    .layout-main .card > h2 {
      font-size: clamp(1rem, 2.2vw, 1.19rem);
      font-weight: 700;
      letter-spacing: -0.02em;
    }

    /* Selects custom: valor escolhido sem bold */
    .calc-dd__title,
    .calc-dd__opt .calc-dd__title {
      font-weight: 400;
    }

    .calc-dd__btn .calc-dd__title {
      font-weight: 400;
    }

    /* Passo 1 — modelo em destaque até escolher */
    .card--modelo-focus {
      outline: 2px solid rgba(220, 38, 38, 0.42);
      outline-offset: 2px;
      border-radius: var(--radius);
    }

    .card--modelo-focus.is-done {
      outline: none;
    }

    .modelo-wizard-hint {
      margin: 0 0 0.65rem;
      font-size: 0.82rem;
      font-weight: 600;
      color: #b91c1c;
    }

    .tipos-livro-info {
      margin-top: 0.85rem;
      padding: 0.65rem 0.75rem;
      font-size: 0.78rem;
      line-height: 1.45;
      color: var(--muted);
      background: #f8fafc;
      border: 1px solid var(--border);
      border-radius: var(--radius);
    }

    .tipos-livro-info h3 {
      margin: 0 0 0.45rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--text);
    }

    .tipos-livro-info section + section {
      margin-top: 0.65rem;
      padding-top: 0.55rem;
      border-top: 1px dashed var(--border);
    }

    .tipos-livro-info ul {
      margin: 0.25rem 0 0;
      padding-left: 1.1rem;
    }

    /* Prazo interativo no resumo */
    .sum-prazo-escolha {
      margin: 0;
      padding: 0.55rem 0.65rem;
      background: #fffbeb;
      border: 1px solid #fde68a;
      border-radius: var(--radius);
      font-size: 0.74rem;
      line-height: 1.45;
    }

    /* Desktop: Prazo como bloco Tipo de livro / Capa (sem caixa amarela) */
    .selection-summary .sum-block--prazo .sum-prazo-escolha {
      margin: 0;
      padding: 0;
      background: transparent;
      border: none;
      border-radius: 0;
      font-size: inherit;
      line-height: inherit;
    }

    .selection-summary .sum-block--prazo .sum-prazo-opt {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      align-items: center;
      gap: 0.35rem;
      margin: 0;
      cursor: pointer;
      color: var(--text);
    }

    .selection-summary .sum-block--prazo.sum-block--prazo-locked .sum-prazo-opt,
    .sum-prazo-escolha.sum-prazo-escolha--locked .sum-prazo-opt {
      cursor: not-allowed;
      opacity: 0.72;
      pointer-events: none;
    }

    .selection-summary .sum-block--prazo .sum-prazo-opt .sum-label {
      display: inline-flex;
      align-items: center;
      gap: 0.4rem;
      min-width: 0;
    }

    .selection-summary .sum-block--prazo .sum-prazo-opt input {
      margin: 0;
      flex-shrink: 0;
    }

    .selection-summary .sum-block--prazo .sum-prazo-opt-tit {
      display: inline;
    }

    .selection-summary .sum-block--prazo .sum-prazo-opt-tit strong {
      display: inline;
      font-size: inherit;
      font-weight: 700;
    }

    .selection-summary .sum-block--prazo .sum-prazo-opt-sub {
      display: block;
      font-weight: 500;
      color: var(--text);
      font-size: inherit;
      margin: 0;
      text-align: right;
      white-space: normal;
      overflow: visible;
      text-overflow: unset;
    }

    .sum-prazo-help {
      display: inline;
      margin: 0 0 0 0.22em;
      padding: 0;
      border: 0;
      background: none;
      color: #2563eb;
      font: inherit;
      font-size: inherit;
      font-weight: 600;
      line-height: inherit;
      letter-spacing: inherit;
      text-decoration: underline;
      text-underline-offset: 2px;
      cursor: pointer;
      white-space: nowrap;
      font-family: inherit;
    }

    .sum-prazo-help:hover {
      color: #1d4ed8;
    }

    .selection-summary .sum-block--prazo.sum-block--prazo-locked .sum-prazo-help,
    .sum-prazo-escolha.sum-prazo-escolha--locked .sum-prazo-help {
      pointer-events: auto;
      cursor: pointer;
      opacity: 1;
    }

    /* Desktop: prazo + (Como funciona?) na mesma linha */
    @media (min-width: 1024px) {
      html:not(.is-mobile-ref) .selection-summary .sum-block--prazo .sum-prazo-opt .sum-label {
        flex: 0 0 auto;
      }
      html:not(.is-mobile-ref) .selection-summary .sum-block--prazo .sum-prazo-opt .sum-value-wrap {
        flex: 1 1 auto;
        min-width: 0;
      }
      html:not(.is-mobile-ref) .selection-summary .sum-block--prazo .sum-prazo-opt-sub {
        white-space: nowrap;
        overflow: visible;
        text-overflow: unset;
      }
    }

    .selection-summary .sum-block--prazo .sum-prazo-verify {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      align-items: center;
      gap: 0.35rem;
      margin: 0.28rem 0 0;
      padding-top: 0.4rem;
      border-top: 1px solid var(--border);
      cursor: default;
      color: var(--text);
    }

    .selection-summary .sum-block--prazo .sum-prazo-verify .sum-label {
      display: inline-flex;
      align-items: center;
      min-width: 0;
      white-space: nowrap;
    }

    .sum-prazo-opt {
      display: flex;
      align-items: flex-start;
      gap: 0.45rem;
      margin: 0.45rem 0 0;
      cursor: pointer;
      color: var(--text);
    }

    .sum-prazo-opt:first-of-type {
      margin-top: 0;
    }

    .sum-prazo-opt input {
      margin-top: 0.2rem;
      flex-shrink: 0;
    }

    .sum-prazo-opt-tit {
      display: inline;
    }

    .sum-prazo-opt-sub {
      display: inline;
      font-weight: 500;
      color: var(--muted);
      font-size: 0.72rem;
    }

    .sum-prazo-opt-tit strong {
      display: inline;
      font-size: 0.74rem;
      font-weight: 700;
    }

    /* Frete integrado ao resumo (logo após prazo de produção) */
    .sum-frete-panel {
      margin-top: 0.65rem;
      padding-top: 0.55rem;
      border-top: 1px solid rgba(148, 163, 184, 0.35);
      container-type: inline-size;
      container-name: sumfrete;
    }

    .sum-frete-cep-wrap {
      position: relative;
      display: flex;
      align-items: stretch;
      width: 100%;
    }

    .sum-frete-cep-wrap .sum-frete-cep-input {
      flex: 1 1 auto;
      width: 100%;
      min-width: 0;
      padding: 0.45rem 5.75rem 0.45rem 0.55rem;
      border-radius: 9px;
      border: 1px solid var(--border);
      font-size: 0.88rem;
      box-sizing: border-box;
    }

    .sum-frete-cep-wrap .sum-frete-calc-btn {
      position: absolute;
      top: 50%;
      right: 4px;
      transform: translateY(-50%);
      margin: 0;
      padding: 0.38rem 0.65rem;
      font-size: 0.78rem;
      font-weight: 700;
      border-radius: 7px;
      border: 1px solid var(--border);
      background: #f1f5f9;
      color: var(--text);
      cursor: pointer;
      white-space: nowrap;
      font-family: inherit;
    }

    .sum-frete-cep-wrap .sum-frete-calc-btn:hover {
      background: #e2e8f0;
    }

    .sum-frete-cep-row--integrated {
      min-width: 0;
      width: 100%;
    }

    .sum-frete-panel .sum-section-title.sum-frete-panel__tit {
      margin-bottom: 0.45rem;
      padding-left: 0;
      padding-right: 0;
      background: none;
      border: none;
      font-size: 0.62rem;
      letter-spacing: 0.07em;
      color: var(--muted);
      white-space: nowrap;
      overflow: hidden;
      max-width: 100%;
      line-height: 1.25;
    }

    .sum-frete-flow-msg {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      align-items: center;
      gap: 0.4rem;
      margin: 0 0 0.45rem;
      padding: 0.42rem 0.55rem 0.42rem 0.5rem;
      font-size: 0.76rem;
      font-weight: 600;
      color: #7f1d1d;
      line-height: 1.35;
      background: linear-gradient(90deg, #fee2e2 0%, #fff1f2 55%, #fef2f2 100%);
      border: 1px solid #fecaca;
      border-radius: 8px;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
      min-width: 0;
      width: 100%;
      max-width: 100%;
      white-space: nowrap;
      overflow: hidden;
      box-sizing: border-box;
    }

    .sum-frete-flow-msg::before {
      content: '';
      flex-shrink: 0;
      width: 0.45rem;
      height: 0.45rem;
      border-radius: 50%;
      background: #f87171;
      box-shadow: 0 0 0 2px rgba(248, 113, 113, 0.25);
    }

    .sum-frete-field {
      margin-bottom: 0;
      min-width: 0;
    }

    .sum-frete-field label {
      font-size: 0.72rem;
      font-weight: 600;
      color: var(--muted);
      display: block;
      margin-bottom: 0.28rem;
      min-width: 0;
      width: 100%;
      max-width: 100%;
      white-space: nowrap;
      overflow: hidden;
      box-sizing: border-box;
    }

    .sum-frete-field input {
      width: 100%;
      padding: 0.45rem 0.55rem;
      border-radius: 9px;
      border: 1px solid var(--border);
      font-size: 0.88rem;
      box-sizing: border-box;
    }

    .sum-frete-cep-row--integrated .sum-frete-field--grow {
      flex: 1 1 auto;
      min-width: 0;
    }

    .sum-frete-err {
      margin-top: 0.45rem;
      margin-bottom: 0;
      font-size: 0.78rem;
    }

    .sum-frete-opcoes {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.55rem;
      margin-top: 0.45rem;
    }

    .sum-frete-opcoes .sum-frete-line {
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: start;
      gap: 0.45rem;
      margin: 0;
      font-size: 0.8rem;
      line-height: 1.35;
      cursor: pointer;
      color: var(--text);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: #fff;
      padding: 0.5rem 0.55rem;
      min-height: 100%;
    }

    .sum-frete-opcoes .sum-frete-line input {
      margin-top: 0.2rem;
      flex-shrink: 0;
    }

    .sum-frete-opcoes .sum-frete-line > span {
      min-width: 0;
    }

    .sum-frete-opcoes .sum-frete-line-val {
      color: var(--muted);
      font-weight: 600;
      white-space: nowrap;
      align-self: start;
    }

    /* Destaque leve e harmonico do valor nos cards de Melhor Envio. */
    .sum-frete-me-line .sum-frete-line-val {
      grid-column: 2;
      justify-self: center;
      align-self: center;
      margin: 0.08rem 0 0.12rem;
      font-size: 0.94rem;
      font-weight: 700;
      color: #1f2937;
      background: rgba(255, 255, 255, 0.82);
      border: 1px solid rgba(148, 163, 184, 0.45);
      border-radius: 999px;
      padding: 0.14rem 0.52rem;
      line-height: 1.2;
      white-space: nowrap;
      max-width: 100%;
    }

    .sum-frete-me-line .sum-frete-me-tier-hint {
      display: block;
      font-size: 0.72rem;
      font-weight: 600;
      color: var(--muted);
      line-height: 1.3;
      white-space: normal;
    }

    .sum-frete-cep-stack {
      display: flex;
      flex-direction: column;
      gap: 0.55rem;
      width: 100%;
    }

    .sum-frete-loading {
      margin: 0.35rem 0 0;
      font-size: 0.82rem;
      color: var(--muted);
      font-weight: 600;
    }

    .sum-frete-me-line .sum-frete-me-body {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.2rem;
    }

    .sum-frete-ret-body {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.16rem;
    }

    .sum-frete-ret-title {
      font-weight: 700;
      line-height: 1.25;
    }

    .sum-frete-ret-note {
      font-size: 0.76rem;
      font-weight: 600;
      color: var(--muted);
      line-height: 1.3;
    }

    .sum-frete-me-line .sum-frete-me-tit {
      font-weight: 700;
      font-size: 0.92rem;
      line-height: 1.25;
    }

    .sum-frete-me-line .sum-frete-me-emp {
      font-size: 0.78rem;
      font-weight: 500;
      color: var(--muted);
    }

    .sum-frete-me-line .sum-frete-me-prazo {
      font-size: 0.78rem;
    }

    .sum-frete-badge-row {
      display: flex;
      flex-wrap: wrap;
      gap: 0.25rem;
    }

    .sum-frete-badge {
      display: inline-block;
      font-size: 0.62rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      padding: 0.12rem 0.35rem;
      border-radius: 4px;
      line-height: 1.2;
    }

    .sum-frete-badge--cheap {
      background: #dcfce7;
      color: #166534;
      border: 1px solid #86efac;
    }

    .sum-frete-badge--fast {
      background: #dbeafe;
      color: var(--text);
      border: 1px solid rgba(37, 99, 235, 0.14);
    }

    .sum-frete-me-line.sum-frete-me-line--highlight-cheap {
      border-radius: 8px;
      padding: 0.35rem 0.4rem;
      border: 1px solid rgba(34, 197, 94, 0.4);
      background: linear-gradient(90deg, rgba(220, 252, 231, 0.45) 0%, transparent 72%);
    }

    .sum-frete-me-line.sum-frete-me-line--highlight-fast {
      border-radius: 8px;
      padding: 0.35rem 0.4rem;
      border: 1px solid rgba(59, 130, 246, 0.4);
      background: linear-gradient(90deg, rgba(219, 234, 254, 0.45) 0%, transparent 72%);
    }

    .sum-frete-me-line.sum-frete-me-line--highlight-cheap.sum-frete-me-line--highlight-fast {
      background: linear-gradient(90deg, rgba(220, 252, 231, 0.35) 0%, rgba(219, 234, 254, 0.4) 100%);
    }

    @media (max-width: 980px) {
      .sum-frete-opcoes {
        grid-template-columns: 1fr;
      }
    }

    /* Admin = mesmo estilo dos links do menu */
    .site-topbar-admin {
      margin: 0;
      padding: 0.2rem 0.35rem;
      font-size: 0.8125rem;
      font-weight: 600;
      color: #fff;
      text-decoration: none;
      background: transparent;
      border: none;
      border-radius: 6px;
      cursor: pointer;
      font-family: inherit;
    }

    .site-topbar-admin:hover {
      text-decoration: underline;
      background: rgba(255, 255, 255, 0.08);
    }

    .admin-acab-list {
      margin-top: 0.75rem;
      padding-top: 0.75rem;
      border-top: 1px solid var(--border);
    }

    .admin-acab-row {
      display: grid;
      grid-template-columns: 1fr 6rem auto;
      gap: 0.35rem;
      align-items: center;
      margin-bottom: 0.35rem;
    }

    .admin-acab-row input[type="text"] {
      font-size: 0.85rem;
    }

    .admin-acab-row input[type="number"] {
      font-size: 0.85rem;
    }

    .btn-admin-acab-add {
      margin-top: 0.35rem;
      font-size: 0.82rem;
      padding: 0.35rem 0.6rem;
      border-radius: 8px;
      border: 1px solid var(--border);
      background: var(--card);
      cursor: pointer;
    }

    /*
     * Identificação do cliente (#wizard-step-2): todas as larguras (mock foto 2).
     * Último bloco: sobrepõe .layout-main .wizard-step > .card > h2 (gradiente).
     */
    #wizard-step-2.wizard-step > .card,
    .layout-main #wizard-step-2.wizard-step > .card {
      max-width: 100%;
      min-width: 0;
      overflow-x: clip;
      box-sizing: border-box;
      padding: 1rem 0.85rem 1.1rem !important;
    }

    #wizard-step-2.wizard-step > .card > h2,
    .layout-main #wizard-step-2.wizard-step > .card > h2 {
      margin: 0 0 0.55rem !important;
      padding: 0 2.35rem 0.5rem 0 !important;
      background: transparent !important;
      border: none !important;
      border-bottom: 1px solid #c7d2fe !important;
      border-radius: 0 !important;
      font-size: clamp(0.95rem, 1.1vw + 0.5rem, 1.12rem) !important;
      font-weight: 600 !important;
      letter-spacing: -0.02em !important;
      color: #1d4ed8 !important;
      display: flex !important;
      align-items: center !important;
      gap: 0.45rem !important;
    }

    #wizard-step-2.wizard-step > .card > h2::before,
    .layout-main #wizard-step-2.wizard-step > .card > h2::before {
      content: "";
      flex-shrink: 0;
      width: 1.45rem;
      height: 1.45rem;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M19 8v6M22 11h-6'/%3E%3C/svg%3E")
        center / contain no-repeat;
    }

    html.is-help-mode #wizard-step-2.wizard-step > .card > .pl-calc-flow-help,
    html.is-help-mode .layout-main #wizard-step-2.wizard-step > .card > .pl-calc-flow-help {
      top: 0.35rem !important;
      right: 0.35rem !important;
    }

    #wizard-step-2.wizard-step > .card > .hint,
    .layout-main #wizard-step-2.wizard-step > .card > .hint {
      font-size: 0.82rem !important;
      line-height: 1.48 !important;
      color: var(--muted) !important;
      margin: 0 0 0.85rem !important;
    }

    #wizard-step-2 .pl-auth-hub {
      border: 1px solid #e2e8f0 !important;
      border-style: solid !important;
      border-radius: 12px !important;
      background: #ffffff !important;
      padding: 0.85rem 0.75rem 1rem !important;
      margin: 0 0 0.85rem !important;
      box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06) !important;
    }

    #wizard-step-2 .pl-auth-hub__tabs {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 0.5rem !important;
      margin-bottom: 0.7rem !important;
    }

    #wizard-step-2 .pl-auth-hub__tab {
      min-width: 0 !important;
      padding: 0.58rem 0.45rem !important;
      font-size: 0.82rem !important;
      border-radius: var(--radius) !important;
      text-align: center !important;
    }

    #wizard-step-2 .pl-auth-choice-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 0.55rem !important;
      margin: 0 0 0.65rem !important;
    }

    #wizard-step-2 .pl-auth-choice-btn {
      min-width: 0 !important;
      padding: 0.65rem 0.55rem !important;
      border-radius: 12px !important;
      display: flex !important;
      flex-direction: column !important;
      align-items: flex-start !important;
      text-align: left !important;
    }

    #wizard-step-2 .pl-auth-choice-btn.is-active {
      border-color: #2563eb !important;
      background: #f0f5ff !important;
      box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12) !important;
    }

    #wizard-step-2 .pl-auth-choice-btn__title {
      font-size: 0.84rem !important;
      line-height: 1.25 !important;
    }

    #wizard-step-2 .pl-auth-choice-btn__sub {
      font-size: 0.72rem !important;
      line-height: 1.35 !important;
    }

    #wizard-step-2 .step2-inline-forms > .card {
      border: 1px solid #e2e8f0 !important;
      border-style: solid !important;
      background: #ffffff !important;
      box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06) !important;
      padding: 1rem 0.85rem !important;
      margin-bottom: 0.85rem !important;
      border-radius: 12px !important;
    }

    #wizard-step-2 .step2-inline-forms > .card > h2 {
      margin: 0 0 0.7rem !important;
      padding: 0 0 0.45rem !important;
      font-size: clamp(0.92rem, 0.85vw + 0.55rem, 1.05rem) !important;
      font-weight: 600 !important;
      letter-spacing: -0.02em !important;
      color: var(--text) !important;
      background: transparent !important;
      border: none !important;
      border-bottom: 1px solid #e0e7ff !important;
      border-radius: 0 !important;
      display: flex !important;
      align-items: center !important;
      gap: 0.45rem !important;
    }

    #wizard-step-2 .step2-inline-forms > .card:first-child > h2::before {
      content: "";
      flex-shrink: 0;
      width: 1.35rem;
      height: 1.35rem;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.7'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")
        center / contain no-repeat;
    }

    #wizard-step-2 .step2-inline-forms > .card:last-child > h2::before {
      content: "";
      flex-shrink: 0;
      width: 1.35rem;
      height: 1.35rem;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.7'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")
        center / contain no-repeat;
    }

    #wizard-step-2 .step2-inline-forms .grid.grid-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 0.65rem !important;
    }

    #wizard-step-2 .step2-inline-forms .field,
    #wizard-step-2 .step2-inline-forms .grid > .field {
      min-width: 0 !important;
    }

    #wizard-step-2 .reg-frete-summary {
      margin: 0 0 0.65rem !important;
      padding: 0.55rem 0.65rem !important;
      border-radius: var(--radius) !important;
      background: #f0f5ff !important;
      border: 1px solid rgba(37, 99, 235, 0.14) !important;
      color: #1d4ed8 !important;
      font-size: 0.78rem !important;
      line-height: 1.42 !important;
    }

    #wizard-step-2 #pl-auth-body-login .login-modal-hero__title {
      font-size: clamp(1.15rem, 1.5vw + 0.75rem, 1.65rem) !important;
    }

    #wizard-step-2 #pl-auth-body-login .login-modal-hero__sub {
      font-size: 0.88rem !important;
    }

    .pl-auth-login-trust {
      display: none;
    }

    #wizard-step-2 #pl-auth-body-login .login-aux-links__muted {
      color: var(--muted);
      font-weight: 400;
    }

    /* Identificação (etapa 3 no passo a passo): login "Já tenho conta" — layout alvo: mobile + desktop apenas */

    /* ///// CSS desktop //// */
    @media (max-width: 767.98px), (min-width: 1024px) {
      #wizard-step-2 #pl-auth-body-login.pl-auth-body-login {
        border: 1px solid #e2e8f0;
        border-radius: 12px;
        background: #fff;
        overflow: hidden;
        margin-top: 0.35rem;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-hero--wizard-login {
        background: none;
        box-shadow: none;
        border-radius: 0;
        padding: 1.1rem 1.05rem 0.25rem;
        margin: 0;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-hero--wizard-login .login-modal-hero__title {
        color: #0c2747;
        text-shadow: none;
        font-weight: 600;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-hero--wizard-login .login-modal-hero__sub {
        color: var(--muted) !important;
        font-weight: 500;
      }

      #wizard-step-2 #pl-auth-body-login .pl-login-inline-wrap {
        margin-top: 0;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-card {
        border: none;
        box-shadow: none;
        max-width: none;
        border-radius: 0;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-body {
        padding: 0.35rem 1.05rem 1rem;
      }

      #wizard-step-2 #pl-auth-body-login .login-switch {
        background: transparent;
        gap: 0.45rem;
        padding: 0;
        margin: 0.35rem 0 0.85rem;
      }

      #wizard-step-2 #pl-auth-body-login .login-switch__btn {
        border: 1px solid var(--border);
        border-radius: var(--radius);
        background: #fff;
        color: #475569;
        box-shadow: none;
      }

      #wizard-step-2 #pl-auth-body-login .login-switch__btn.is-active {
        border-color: #2563eb;
        color: #1d4ed8;
        background: #f0f5ff;
        box-shadow: 0 1px 0 rgba(37, 99, 235, 0.12);
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-card .modal-actions .btn-primary {
        background: #2563eb !important;
        border-color: #2563eb !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-card .modal-actions .btn-primary:hover {
        background: #1d4ed8 !important;
        border-color: #1d4ed8 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links--wizard-login {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 0.5rem 0.75rem;
        text-align: left;
        margin-top: 0.65rem;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links__register {
        text-align: right;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links__muted {
        color: var(--muted);
        margin-right: 0.28rem;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links__btn--register {
        font-weight: 700;
      }

      .pl-auth-login-trust {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.4rem;
        margin: 0.65rem 0.75rem 0.85rem;
        padding: 0;
        font-size: 0.8rem;
        color: var(--muted);
        line-height: 1.35;
      }

      .pl-auth-login-trust__ico {
        color: #94a3b8;
        display: flex;
        flex-shrink: 0;
      }
    }

    /* Tablet: cópias iguais; links centralizados com separador */
    @media (min-width: 768px) and (max-width: 1023.98px) {
      #wizard-step-2 #pl-auth-body-login .login-aux-links--wizard-login {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
        gap: 0.35rem 0.5rem;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links__register {
        text-align: center;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links__register::before {
        content: '|';
        color: #94a3b8;
        margin-right: 0.45rem;
        user-select: none;
      }
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #wizard-step-2.wizard-step > .card,
      .layout-main #wizard-step-2.wizard-step > .card {
        padding: 1rem 1.15rem 1.05rem !important;
      }

      #wizard-step-2.wizard-step > .card > .hint,
      .layout-main #wizard-step-2.wizard-step > .card > .hint {
        margin: 0 0 0.7rem !important;
      }

      #wizard-step-2 .pl-auth-hub {
        padding: 0.85rem 1rem 0.95rem !important;
        margin: 0 0 0.75rem !important;
      }

      #wizard-step-2 .pl-auth-hub__tabs {
        gap: 0.75rem !important;
        margin-bottom: 0.55rem !important;
      }

      #wizard-step-2 .pl-auth-hub__tab {
        font-size: 0.88rem !important;
        padding: 0.62rem 0.65rem !important;
      }

      #wizard-step-2 .pl-auth-choice-grid {
        gap: 0.75rem !important;
        margin: 0 0 0.55rem !important;
      }

      #wizard-step-2 .pl-auth-choice-btn {
        padding: 0.7rem 0.8rem !important;
        border: 1.5px solid #e2e8f0 !important;
        background: #fff !important;
        min-height: 100%;
      }

      #wizard-step-2 .pl-auth-choice-btn:hover {
        border-color: #93c5fd !important;
        background: #f8fbff !important;
      }

      #wizard-step-2 .pl-auth-choice-btn:focus-visible {
        outline: 2px solid #2563eb;
        outline-offset: 2px;
      }

      #wizard-step-2 .pl-auth-choice-btn__title {
        font-size: 0.9rem !important;
      }

      #wizard-step-2 .pl-auth-choice-btn__sub {
        font-size: 0.78rem !important;
      }

      #wizard-step-2 .step2-inline-forms {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
      }

      #wizard-step-2 .step2-inline-forms > .card {
        padding: 0.9rem 1rem !important;
        margin-bottom: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card > h2 {
        margin: 0 0 0.35rem !important;
        padding-bottom: 0.4rem !important;
      }

      /*
       * Dados do cliente — grade 2 colunas:
       * Nome|CPF, E-mail|WhatsApp, Senha|Repetir
       * (E-mail e WhatsApp são irmãos no DOM; junta via grid do card.)
       */
      #wizard-step-2 .step2-inline-forms > .card:first-child {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 1rem !important;
        row-gap: 0.65rem !important;
        align-items: start !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > h2 {
        grid-column: 1 / -1 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="nome"]) {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .field[data-step2-key="email"] {
        grid-column: 1 !important;
        margin: 0 !important;
        min-width: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="whats"]) {
        grid-column: 2 !important;
        display: block !important;
        margin: 0 !important;
        min-width: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="whats"]) > .field {
        margin: 0 !important;
        min-width: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="senha"]) {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child .field {
        min-width: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child .field label {
        margin-bottom: 0.28rem !important;
        font-size: 0.82rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child .field input {
        width: 100%;
        box-sizing: border-box;
      }

      /* Endereço — compacto + Logradouro|Número ~65/35, Bairro|Cidade 50/50 */
      #wizard-step-2 .step2-inline-forms > .card:last-child {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.65rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .hint {
        margin: 0 !important;
        font-size: 0.8rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .reg-frete-summary {
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .field {
        margin: 0 !important;
        min-width: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .field label {
        margin-bottom: 0.28rem !important;
        font-size: 0.82rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .grid.grid-2:has([data-step2-key="logradouro"]) {
        display: grid !important;
        grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr) !important;
        gap: 1rem !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .grid.grid-2:has([data-step2-key="bairro"]) {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .field[data-step2-key="uf"] {
        max-width: 5.75rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child .grid > .field {
        margin: 0 !important;
        min-width: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child .grid > .field label {
        margin-bottom: 0.28rem !important;
        font-size: 0.82rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child .field input {
        width: 100%;
        box-sizing: border-box;
      }
    }

    @media (max-width: 420px) {
      #wizard-step-2 .pl-auth-hub__tabs,
      #wizard-step-2 .pl-auth-choice-grid {
        grid-template-columns: 1fr !important;
      }

      #wizard-step-2 .step2-inline-forms .grid.grid-2 {
        grid-template-columns: 1fr !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links--wizard-login {
        flex-direction: column;
        align-items: stretch;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links__register {
        text-align: left;
      }
    }

    /*
      Desktop (#calc-bloc-tiragem): alinhado ao card (22px = hero), trilho full-width,
      conteúdo numa coluna estreita (substitui display:contents da superfície só aqui).
    */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #card-modelo.card--modelo-qtd .mq-panels {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 0 !important;
        border-top: none !important;
      }

      #card-modelo.card--modelo-qtd .mq-panel--tipo {
        border-right: none !important;
        border-bottom: 1px solid #eef0f4 !important;
        /* Sem padding-top: o jornal de “Escolha seu livro” cola na borda do card. */
        padding: 0 22px 16px !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem.mq-panel--qtd {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        box-sizing: border-box !important;
        padding: 18px 22px 22px !important;
        margin: 0 !important;
        min-width: 0 !important;
      }

      /* Trilho “2 de 6”: mesma largura útil do card, centrado como nos outros passos */
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .pl-sessao-rail {
        order: 0 !important;
        align-self: stretch !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 4px 0 18px !important;
        gap: 12px !important;
        box-sizing: border-box !important;
      }

      /*
        Desktop: grid 2 colunas (ref. foto), faixa central ampla; botão verde conforme pedido.
      */
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-panel__surface {
        order: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        align-self: center !important;
        width: 100% !important;
        max-width: min(920px, 96%) !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        gap: 0 !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 0 !important;
        align-items: start !important;
        width: 100% !important;
        box-sizing: border-box !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__main {
        padding-right: 28px !important;
        border-right: 1px solid #ebe7f5 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        min-width: 0 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-layout__aside {
        padding-left: 28px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        margin-top: 0 !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }

      #wizard-step-1 #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-visible-label,
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-visible-label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead {
        width: 100% !important;
        margin: 0 0 6px !important;
        box-sizing: border-box !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-sublead {
        margin: 4px 0 22px !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper {
        border-radius: 12px !important;
        overflow: hidden !important;
        border-color: #e2e8f0 !important;

      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__btn {
        flex: 0 0 48px !important;
        width: 48px !important;
        font-size: 22px !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid {
        padding: 18px 14px 16px !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__mid .mq-qtd-stepper__input {
        font-size: 32px !important;
        font-weight: 700 !important;
        letter-spacing: -0.03em !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-stepper__unit {
        font-size: 14px !important;
        margin-top: 6px !important;
      }

      /*
        Desktop — Confirmar (ref. foto): verde sólido, ✓ em círculo branco à esquerda, sem gradiente/sombra.
      */
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        border: none !important;
        padding: 16px 22px !important;
        border-radius: var(--radius) !important;
        font-size: 17px !important;
        font-weight: 700 !important;
        letter-spacing: 0.01em !important;
        color: #ffffff !important;
        background: #3b713f !important;
        box-shadow: none !important;
        filter: none !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm::before {
        content: '' !important;
        display: block !important;
        width: 24px !important;
        height: 24px !important;
        flex: 0 0 24px !important;
        margin-right: 12px !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9.75' stroke='%23ffffff' stroke-width='1.35'/%3E%3Cpath d='M7.5%2012.15%20L10%2014.65%20L16.5%208.15' stroke='%23ffffff' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-btn-confirm:hover {
        background: #346838 !important;
        filter: none !important;
        box-shadow: none !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead__lead {
        display: block !important;
        margin: 0 !important;
        font-family: var(--font-primary) !important;
        font-size: 14px !important;
        line-height: 1.45 !important;
        font-weight: 400 !important;
        color: #4b5563 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"] {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 320px !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
        gap: 0 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"].campo-ativo {
        gap: 0 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .field--mq-qtd {
        width: 100% !important;
        max-width: none !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
      }

      /*
        Tabela alinhada ao stepper + Confirmar: mesmo recuo do sublead (22px) e altura
        equivalente ao bloco de controles (~95px stepper + 18px gap + ~52px botão).
      */
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem {
        --mq-qtd-controls-block-h: 165px;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo__table {
        display: flex !important;
        flex-direction: column !important;
        flex: 0 0 auto !important;
        min-height: var(--mq-qtd-controls-block-h) !important;
        box-sizing: border-box !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo__table-head {
        flex: 0 0 auto !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-promo__row {
        flex: 1 1 0 !important;
        min-height: 0 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-msg {
        width: 100% !important;
        margin: 10px 0 0 !important;
        padding: 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        box-sizing: border-box !important;
      }

      /* Quantidade exemplares: aviso centralizado acima do stepper (não altera os demais passos). */
      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"] .calc-flow-msg:not([hidden]) {
        position: absolute !important;
        top: -30px !important;
        left: 50% !important;
        right: auto !important;
        width: auto !important;
        max-width: calc(100% - 12px) !important;
        margin: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
        justify-content: center !important;
        text-align: center !important;
        white-space: nowrap !important;
        transform: translateX(-50%) translateY(10px) scale(0.985) !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-campo[data-flow-key="quantidade"] .calc-flow-msg.pl-msg-on:not([hidden]) {
        transform: translateX(-50%) translateY(0) scale(1) !important;
        filter: blur(0) !important;
        opacity: 1 !important;
      }

      #card-modelo.card--modelo-qtd #calc-bloc-tiragem .calc-flow-msg[hidden] {
        display: none !important;
      }

      /* html.is-mobile-ref esconde .mq-subhead__lead — 3 IDs para vencer display:none */
      html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-subhead__lead {
        display: block !important;
        margin: 0 !important;
        font-family: var(--font-primary) !important;
        font-size: 14px !important;
        line-height: 1.45 !important;
        font-weight: 400 !important;
        color: #4b5563 !important;
        overflow: visible !important;
      }
    }

    /* —— Fundo papel: blocos principais do wizard (não cards/opções internos) —— */
    #card-modelo.card--modelo-qtd .mq-panel--tipo,
    #card-modelo.card--modelo-qtd .mq-panel--qtd,
    #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-panel__surface,
    #wizard-step-1 > .grid > .card,
    #wizard-step-1 #calc-bloc-extras,
    #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel,
    .layout-main .wizard-step > .card,
    #wizard-step-2 .step2-inline-forms > .card,
    .wizard-sticky,
    .sum-frete-mobile-slot .sum-block--frete-cta--mobile-slot {
      background: var(--pl-bloco-paper-bg);
    }

    html.is-mobile-ref #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-panel__surface,
    html.is-mobile-ref #wizard-step-1 > .grid > .card,
    html.is-mobile-ref #wizard-step-1 #calc-bloc-extras,
    html.is-mobile-ref #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel {
      background: var(--pl-bloco-paper-bg) !important;
    }

    /* ═══ PL UI — calculadora uniforme (minimalista / profissional) ═══
       Escopo: #orc-form — não altera hero, menu nem modais globais fora do wizard. */
    #orc-form.layout-shell {
      --pl-ui-space-xs: 0.35rem;
      --pl-ui-space-sm: 0.5rem;
      --pl-ui-space-md: 0.75rem;
      --pl-ui-space-lg: 1rem;
      --pl-ui-space-xl: 1.25rem;
      --pl-ui-control-h: 2.75rem;
      --pl-ui-radius: 10px;
      --pl-ui-border: #e2e8f0;
      --pl-ui-surface: #fff;
      --pl-ui-surface-muted: #f8fafc;
      --pl-ui-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
      --radius: var(--pl-ui-radius);
      --border: var(--pl-ui-border);
      --shadow: var(--pl-ui-shadow);
    }

    #orc-form.layout-shell .layout-main > .grid {
      gap: var(--pl-ui-space-lg);
    }

    #orc-form.layout-shell .layout-main .card:not(#calc-bloc-extras):not(#card-formato-acabamento):not(#card-capa):not(#card-miolo):not(#card-modelo) {
      padding: var(--pl-ui-space-xl) 1.2rem 1.15rem;
      border-color: var(--pl-ui-border);
      box-shadow: var(--pl-ui-shadow);
    }

    #orc-form.layout-shell .layout-main .wizard-step .grid > .card > h2,
    #orc-form.layout-shell .layout-main .wizard-step > .card > h2 {
      margin: calc(-1 * var(--pl-ui-space-xl)) -1.2rem var(--pl-ui-space-md) -1.2rem;
      padding: 0.6rem 1rem;
      font-size: 0.8125rem;
      font-weight: 600;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: #334155;
      background: var(--pl-ui-surface-muted);
      border-bottom: 1px solid var(--pl-ui-border);
      border-radius: var(--pl-ui-radius) var(--pl-ui-radius) 0 0;
    }

    #orc-form.layout-shell .layout-main .card h2:not(.extras-hero__title):not(.fa-hero__title):not(.capa-hero__title):not(.miolo-hero__title):not(.mq-hero__title) {
      margin-bottom: var(--pl-ui-space-md);
      font-size: 0.875rem;
      font-weight: 600;
      letter-spacing: -0.01em;
      text-transform: none;
      color: #0f172a;
    }

    #orc-form.layout-shell .layout-main label:not(.toggle-row):not(.pay-method-card),
    #orc-form.layout-shell .layout-main .label-like {
      display: block;
      margin-bottom: var(--pl-ui-space-xs);
      font-size: 0.8125rem;
      font-weight: 600;
      line-height: 1.35;
      color: #334155;
    }

    #orc-form.layout-shell .layout-main .field {
      margin-bottom: var(--pl-ui-space-md);
    }

    #orc-form.layout-shell .layout-main .field:last-child {
      margin-bottom: 0;
    }

    #orc-form.layout-shell .layout-main input[type="text"],
    #orc-form.layout-shell .layout-main input[type="number"],
    #orc-form.layout-shell .layout-main input[type="email"],
    #orc-form.layout-shell .layout-main input[type="tel"],
    #orc-form.layout-shell .layout-main input[type="password"],
    #orc-form.layout-shell .layout-main select,
    #orc-form.layout-shell .layout-main textarea {
      min-height: var(--pl-ui-control-h);
      padding: 0.5rem 0.75rem;
      border: 1px solid var(--pl-ui-border);
      border-radius: var(--pl-ui-radius);
      font-size: 0.9375rem;
      line-height: 1.35;
      background: var(--pl-ui-surface);
      box-shadow: none;
    }

    #orc-form.layout-shell .layout-main textarea {
      min-height: 5.5rem;
      padding-top: 0.65rem;
    }

    #orc-form.layout-shell .layout-main input:focus,
    #orc-form.layout-shell .layout-main select:focus,
    #orc-form.layout-shell .layout-main textarea:focus {
      border-color: #2563eb;
      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
    }

    /*
     * RESET + rebuild — somente #pl-pay-confirm-dialog ("Antes de pagar").
     * Não afeta #pl-pay-combined-dialog (mesma class base .pl-pay-confirm-dialog).
     *
     * Camadas: página → dialog::backdrop (viewport) → UM modal branco (#pl-pay-confirm-dialog).
     * O retângulo transparente vinha de background:transparent + box-shadow no <dialog>
     * enquanto .__card era um segundo painel branco.
     */
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog.pl-pay-confirm-dialog,
    #pl-pay-confirm-dialog.pl-pay-confirm-dialog {
      /* Chrome modal dialog usa inset-block:0; height:auto ESTICA o branco à viewport.
         height:fit-content restaura o sizing do UA e o modal abraça o conteúdo. */
      width: min(860px, calc(100vw - 48px));
      max-width: min(860px, calc(100vw - 48px));
      height: fit-content;
      min-height: 0;
      max-height: calc(100dvh - 48px);
      margin: auto;
      padding: 28px 30px;
      border: none;
      border-radius: 20px;
      background: #ffffff;
      opacity: 1;
      overflow-x: hidden;
      overflow-y: auto;
      box-sizing: border-box;
      box-shadow: 0 24px 70px rgba(15, 23, 42, 0.2);
      color: #0f172a;
      flex: none;
      flex-grow: 0;
      flex-shrink: 0;
      align-self: center;
    }

    #pl-pay-confirm-dialog::backdrop {
      background: rgba(15, 23, 42, 0.55);
    }

    /* __card = layout interno apenas (NÃO é segundo painel) */
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card,
    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      column-gap: 14px;
      row-gap: 0;
      align-items: stretch;
      align-content: start;
      height: fit-content;
      min-height: 0;
      margin: 0;
      padding: 0;
      background: transparent;
      border: none;
      border-radius: 0;
      box-shadow: none;
      box-sizing: border-box;
      text-align: left;
      flex: none;
      flex-grow: 0;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > h3,
    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > h3 {
      grid-column: 1 / -1;
      margin: 0 0 8px;
      padding: 0;
      font-size: 1.75rem;
      font-weight: 800;
      letter-spacing: -0.02em;
      line-height: 1.15;
      color: #0f172a;
      background: none;
      border: none;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > .hint,
    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > .hint {
      grid-column: 1 / -1;
      margin: 0 0 20px;
      padding: 0;
      max-width: 100%;
      font-size: 1.0625rem;
      font-weight: 500;
      line-height: 1.5;
      color: #475569;
      background: none;
      border: none;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > .hint strong {
      font-weight: 700;
      color: #0f172a;
    }

    /* Hierarquia interna dos cards — dimensões externas do label bloqueadas */
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      justify-content: flex-start;
      gap: 0.45rem;
      margin: 0;
      padding: 16px 18px;
      height: auto;
      min-height: 88px;
      border: 1.5px solid #d8e0ec;
      border-radius: 14px;
      background: #ffffff;
      box-shadow: none;
      outline: none;
      font-size: 0.9375rem;
      font-weight: 600;
      line-height: 1.4;
      color: #0f172a;
      cursor: pointer;
      box-sizing: border-box;
      transition: border-color 0.15s ease, background-color 0.15s ease;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:hover,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:hover {
      border-color: #c5d0e0;
      background: #fafbff;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:has(input:checked),
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:has(input:checked) {
      border-color: #2563eb;
      background: #f4f7ff;
      box-shadow: none;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:focus,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:focus-within,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:focus,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check:focus-within {
      outline: none;
      box-shadow: none;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-head {
      display: flex;
      align-items: flex-start;
      gap: 0.55rem;
      min-width: 0;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__step {
      flex: 0 0 24px;
      width: 24px;
      height: 24px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      background: #eff6ff;
      color: #2563eb;
      font-size: 0.75rem;
      font-weight: 800;
      line-height: 1;
      box-sizing: border-box;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-head-text {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      align-items: baseline;
      gap: 0.35rem;
      min-width: 0;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__eyebrow {
      display: inline;
      font-size: 0.8125rem;
      font-weight: 800;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      line-height: 1.2;
      color: #2563eb;
      white-space: nowrap;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-title {
      display: inline;
      font-size: 1.125rem;
      font-weight: 800;
      line-height: 1.2;
      color: #0f172a;
      white-space: nowrap;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-title::before {
      content: "- ";
      font-weight: 800;
      color: #0f172a;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-desc {
      display: block;
      margin: 0;
      font-size: 0.9375rem;
      font-weight: 500;
      line-height: 1.4;
      color: #334155;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__agree {
      display: flex;
      align-items: center;
      gap: 0.55rem;
      margin-top: 0.15rem;
      min-width: 0;
    }

    /* checkbox único — anula input:focus global (box-shadow halo) */
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"],
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:hover,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:focus,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:active,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:focus-visible,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"],
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:hover,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:focus,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:active,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:focus-visible {
      -webkit-appearance: none;
      appearance: none;
      flex: 0 0 22px;
      width: 22px;
      height: 22px;
      min-width: 22px;
      max-width: 22px;
      margin: 0;
      padding: 0;
      border: 2px solid #94a3b8;
      border-radius: 6px;
      background-color: #ffffff;
      background-image: none;
      box-shadow: none;
      outline: none;
      cursor: pointer;
      box-sizing: border-box;
      accent-color: transparent;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:hover,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:focus,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:active,
    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:focus-visible,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:hover,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:focus,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:active,
    #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"]:checked:focus-visible {
      border-color: #2563eb;
      background-color: #2563eb;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.2 6.4 11l6-6.5'/%3E%3C/svg%3E");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 12px 12px;
      box-shadow: none;
      outline: none;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__agree-text {
      flex: 1 1 auto;
      min-width: 0;
      margin: 0;
      font-size: 0.875rem;
      font-weight: 600;
      line-height: 1.3;
      color: #0f172a;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary:not(:disabled)::after {
      content: " →";
      font-weight: 700;
    }

    #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions,
    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions {
      grid-column: 1 / -1;
      display: flex;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center;
      gap: 10px;
      margin: 20px 0 0;
      padding: 18px 0 0;
      border: none;
      border-top: 1px solid #e8edf4;
      background: transparent;
      box-shadow: none;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-secondary,
    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary {
      height: 48px;
      min-height: 48px;
      border-radius: 11px;
      font-size: 0.9375rem;
      font-weight: 700;
      box-sizing: border-box;
      box-shadow: none;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-secondary {
      padding: 0 22px;
      background: #ffffff;
      border: 1px solid #e2e8f0;
      color: #334155;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary {
      padding: 0 26px;
      background: #2563eb;
      border: none;
      color: #ffffff;
    }

    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary:disabled,
    #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary[disabled] {
      background: #93c5fd;
      color: #ffffff;
      opacity: 0.7;
      cursor: not-allowed;
      box-shadow: none;
    }

    @media (max-width: 767px) {
      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog.pl-pay-confirm-dialog,
      #pl-pay-confirm-dialog.pl-pay-confirm-dialog {
        width: calc(100vw - 24px);
        max-width: calc(100vw - 24px);
        height: fit-content;
        min-height: 0;
        max-height: calc(100dvh - 24px);
        flex: none;
        flex-grow: 0;
        padding: 20px;
        border-radius: 18px;
      }

      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card,
      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card {
        grid-template-columns: minmax(0, 1fr);
        column-gap: 0;
        row-gap: 10px;
      }

      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > h3,
      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > h3 {
        margin: 0 0 8px;
        font-size: 1.5rem;
      }

      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > .hint,
      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__card > .hint {
        margin: 0 0 18px;
        font-size: 0.9375rem;
        line-height: 1.45;
        color: #475569;
      }

      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check,
      #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check {
        min-height: 0;
        padding: 14px;
        border-radius: 12px;
        gap: 0.4rem;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__eyebrow {
        font-size: 0.75rem;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-title {
        font-size: 1.0625rem;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__check-desc {
        font-size: 0.875rem;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__agree-text {
        font-size: 0.875rem;
      }

      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"],
      #pl-pay-confirm-dialog label.pl-pay-confirm-dialog__check input[type="checkbox"] {
        flex: 0 0 22px;
        width: 22px;
        height: 22px;
        margin: 0;
      }

      #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions,
      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions {
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin-top: 18px;
        padding-top: 16px;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-secondary,
      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary {
        width: auto;
        justify-content: center;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-primary {
        height: 50px;
        min-height: 50px;
      }

      #pl-pay-confirm-dialog .pl-pay-confirm-dialog__actions .btn-secondary {
        height: 48px;
        min-height: 48px;
      }
    }

    #orc-form.layout-shell .layout-main .hint {
      margin-top: var(--pl-ui-space-xs);
      font-size: 0.8125rem;
      line-height: 1.45;
      color: #64748b;
    }

    #orc-form.layout-shell .layout-main .calc-flow-campo {
      margin-bottom: var(--pl-ui-space-md);
    }

    #orc-form.layout-shell .layout-main .calc-flow-campo:last-child {
      margin-bottom: 0;
    }

    #orc-form.layout-shell .layout-main .calc-dd__btn {
      min-height: var(--pl-ui-control-h);
      padding: 0.5rem 0.75rem;
      border-radius: var(--pl-ui-radius);
      border-color: var(--pl-ui-border);
      background: var(--pl-ui-surface);
    }

    #orc-form.layout-shell .layout-main .calc-dd__btn:hover:not(:disabled) {
      border-color: #cbd5e1;
      background: var(--pl-ui-surface-muted);
    }

    #orc-form.layout-shell .layout-main .calc-dd.is-open .calc-dd__btn {
      border-color: #2563eb;
      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
    }

    #orc-form.layout-shell .layout-main .calc-dd__title {
      font-size: 0.9375rem;
      font-weight: 600;
    }

    #orc-form.layout-shell .layout-main .calc-dd__sub {
      font-size: 0.75rem;
    }

    #orc-form.layout-shell .layout-main .calc-dd__panel {
      border-radius: var(--pl-ui-radius);
      border-color: var(--pl-ui-border);
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    }

    #orc-form.layout-shell .layout-main .calc-dd__opt {
      min-height: 2.5rem;
      padding: 0.45rem 0.65rem;
      border-radius: var(--pl-ui-radius-sm, 8px);
    }

    #orc-form.layout-shell .layout-main .orient {
      gap: var(--pl-ui-space-sm);
    }

    #orc-form.layout-shell .layout-main .orient button {
      min-height: var(--pl-ui-control-h);
      padding: 0.5rem 0.75rem;
      border-radius: var(--pl-ui-radius);
      border-color: var(--pl-ui-border);
      font-size: 0.875rem;
      font-weight: 600;
    }

    #orc-form.layout-shell .layout-main .orient button[aria-pressed="true"] {
      background: #eff6ff;
      border-color: #2563eb;
      color: #1e40af;
      box-shadow: none;
    }

    #orc-form.layout-shell .layout-main .papel-capa-fixed-card {
      min-height: var(--pl-ui-control-h);
      padding: 0.5rem 0.75rem;
      border-radius: var(--pl-ui-radius);
      border-color: var(--pl-ui-border);
    }

    #orc-form.layout-shell .layout-main .guardas-select {
      min-height: var(--pl-ui-control-h);
      padding: 0.5rem 0.75rem;
      border-radius: var(--pl-ui-radius);
    }

    #orc-form.layout-shell #wizard-step-1 > .grid > .card:not(#card-modelo):not(#calc-bloc-extras),
    #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec .card-miolo__panel,
    #orc-form.layout-shell .layout-main .wizard-step > .card,
    #orc-form.layout-shell #wizard-step-2 .step2-inline-forms > .card,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-panel--tipo,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-panel--qtd,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-panel--qtd .mq-panel__surface {
      background: var(--pl-bloco-paper-bg);
    }

    #orc-form.layout-shell .wizard-step4-intro {
      margin-bottom: var(--pl-ui-space-lg);
      font-size: 0.9375rem;
      line-height: 1.5;
    }

    #orc-form.layout-shell .wizard-step4-section-title {
      margin-bottom: var(--pl-ui-space-sm);
      font-size: 0.6875rem;
      font-weight: 600;
      letter-spacing: 0.08em;
    }

    #orc-form.layout-shell .pay-methods-row {
      gap: var(--pl-ui-space-sm);
      margin-bottom: var(--pl-ui-space-lg);
    }

    #orc-form.layout-shell .pay-method-card {
      min-height: 7.25rem;
      padding: var(--pl-ui-space-md) var(--pl-ui-space-sm) 2.15rem;
      border-width: 1px;
      border-color: var(--pl-ui-border);
      border-radius: var(--pl-ui-radius);
      background: var(--pl-ui-surface);
      box-shadow: none;
    }

    #orc-form.layout-shell .pay-method-card:has(input:checked) {
      border-color: #2563eb;
      background: var(--pl-ui-surface-muted);
      box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12);
    }

    #orc-form.layout-shell .pay-method-card__icon {
      width: 2.75rem;
      height: 2.75rem;
      margin-bottom: var(--pl-ui-space-xs);
      font-size: 1.35rem;
    }

    #orc-form.layout-shell .pay-method-card__title {
      font-size: 0.875rem;
      font-weight: 600;
    }

    #orc-form.layout-shell .pay-method-card__sub {
      font-size: 0.6875rem;
      line-height: 1.35;
    }

    #orc-form.layout-shell .pay-combined-panel {
      padding: var(--pl-ui-space-lg);
      border: 1px solid var(--pl-ui-border);
      border-radius: var(--pl-ui-radius);
      background: var(--pl-ui-surface-muted);
    }

    #orc-form.layout-shell .pay-combined-step {
      padding: var(--pl-ui-space-md) var(--pl-ui-space-lg);
      border: 1px solid var(--pl-ui-border);
      border-radius: var(--pl-ui-radius);
      background: var(--pl-ui-surface);
    }

    #orc-form.layout-shell .pay-combined-step--1,
    #orc-form.layout-shell .pay-combined-step--2 {
      background: var(--pl-ui-surface);
      border-color: var(--pl-ui-border);
    }

    #orc-form.layout-shell .pay-combined-select {
      min-height: var(--pl-ui-control-h);
      padding: 0.5rem 0.75rem;
      border-radius: var(--pl-ui-radius);
      border-color: var(--pl-ui-border);
      font-size: 0.9375rem;
    }

    #orc-form.layout-shell .pay-cc-panel,
    #orc-form.layout-shell .pay-cc-install-row,
    #orc-form.layout-shell .wizard-step4-resumo {
      padding: var(--pl-ui-space-lg);
      border: 1px solid var(--pl-ui-border);
      border-radius: var(--pl-ui-radius);
      background: var(--pl-ui-surface);
    }

    #orc-form.layout-shell .pay-cc-grid {
      gap: var(--pl-ui-space-md);
    }

    #orc-form.layout-shell .wizard-step4-btn-pagar,
    #orc-form.layout-shell .layout-main .btn-primary,
    #orc-form.layout-shell .layout-main .btn-wiz-primary {
      min-height: var(--pl-ui-control-h);
      padding: 0.55rem 1.25rem;
      border-radius: var(--pl-ui-radius);
      font-size: 0.9375rem;
      font-weight: 600;
      letter-spacing: 0.01em;
    }

    #orc-form.layout-shell .layout-main .btn-secondary {
      min-height: var(--pl-ui-control-h);
      padding: 0.55rem 1rem;
      border-radius: var(--pl-ui-radius);
      font-size: 0.875rem;
      font-weight: 600;
    }

    #orc-form.layout-shell .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__name {
      font-size: 0.75rem;
      font-weight: 600;
    }

    @media (max-width: 640px) {
      #orc-form.layout-shell .layout-main .card:not(#calc-bloc-extras):not(#card-formato-acabamento):not(#card-capa):not(#card-miolo):not(#card-modelo) {
        padding: var(--pl-ui-space-lg) 1rem 1rem;
      }

      #orc-form.layout-shell .calc-page-head .wizard-stepper.calc-page-stepper,
      #orc-form.layout-shell #wizard-stepper {
        flex-wrap: nowrap;
        --wiz-disc-size: clamp(1.55rem, 4.2vw, 2rem);
      }

      #orc-form.layout-shell .calc-page-head .wizard-stepper.calc-page-stepper .wizard-stepper__name,
      #orc-form.layout-shell #wizard-stepper .wizard-stepper__name {
        font-size: clamp(0.48rem, 2vw, 0.62rem);
        line-height: 1.12;
      }

      #orc-form.layout-shell .layout-main .wizard-step .grid > .card > h2,
      #orc-form.layout-shell .layout-main .wizard-step > .card > h2 {
        margin-left: -1rem;
        margin-right: -1rem;
        padding-left: 0.85rem;
        padding-right: 0.85rem;
      }

      #orc-form.layout-shell .pay-method-card {
        min-height: 6.5rem;
      }
    }

    /* Serviços adicionais — layout próprio (não herdar reset global de label/card) */
    #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras {
      background: var(--pl-bloco-paper-bg);
    }

    #orc-form.layout-shell #calc-bloc-extras label.toggle-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      margin-bottom: 0;
      padding: 0.45rem 0;
      font-size: 0.9rem;
      font-weight: 400;
      line-height: inherit;
      color: var(--text);
      cursor: pointer;
    }

    html.is-help-mode #orc-form.layout-shell #calc-bloc-extras label.toggle-row.pl-did-toggle-host {
      padding-right: 0;
      gap: 0.5rem;
    }

    html.is-help-mode #orc-form.layout-shell #calc-bloc-extras label.toggle-row.pl-did-toggle-host > .toggle-label-stack,
    html.is-help-mode #orc-form.layout-shell #calc-bloc-extras label.toggle-row.pl-did-toggle-host > span:not(.switch) {
      order: 1;
      flex: 1 1 auto;
      min-width: 0;
    }

    html.is-help-mode #orc-form.layout-shell #calc-bloc-extras label.toggle-row.pl-did-toggle-host .switch {
      order: 2;
      flex-shrink: 0;
      margin-left: auto;
    }

    html.is-help-mode #orc-form.layout-shell #calc-bloc-extras label.toggle-row.pl-did-toggle-host .pl-calc-flow-help {
      position: static;
      top: auto;
      right: auto;
      order: 3;
      flex-shrink: 0;
      align-self: center;
      margin-left: 0.4rem;
    }

    #orc-form.layout-shell #calc-bloc-extras .toggle-row:last-child {
      border-bottom: none;
    }

    /* Passo 1 — heróis = Miolo / Serviços adicionais; Formato/Capa (grid) sem margin-bottom extra */
    #orc-form.layout-shell #wizard-step-1 #card-miolo > .miolo-hero,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero,
    #orc-form.layout-shell #calc-bloc-extras .extras-hero,
    #orc-form.layout-shell #wizard-step-1 .fa-hero,
    #orc-form.layout-shell #wizard-step-1 .capa-hero {
      display: flex;
      align-items: flex-start;
      flex-wrap: nowrap;
      gap: 14px;
      margin: 0 0 0.85rem;
      padding: 0;
      min-width: 0;
    }

    #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
    #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero {
      margin: 0 0 0.85rem;
    }

    #orc-form.layout-shell #wizard-step-1 .fa-hero .capa-hero__help,
    #orc-form.layout-shell #wizard-step-1 .miolo-hero .capa-hero__help,
    #orc-form.layout-shell #wizard-step-1 .capa-hero .capa-hero__help {
      flex: 0 0 auto;
      align-self: flex-start;
    }

    #orc-form.layout-shell #wizard-step-1 .fa-hero__titles,
    #orc-form.layout-shell #wizard-step-1 .capa-hero__titles,
    #orc-form.layout-shell #wizard-step-1 #card-miolo .miolo-hero__titles,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero__titles,
    #orc-form.layout-shell #calc-bloc-extras .extras-hero__titles {
      flex: 1 1 auto;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.35rem;
      justify-content: center;
      min-height: 60px;
      position: static;
      top: auto;
    }

    #orc-form.layout-shell #wizard-step-1 .fa-hero__title,
    #orc-form.layout-shell #wizard-step-1 .capa-hero__title,
    #orc-form.layout-shell #wizard-step-1 .miolo-hero__title,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero__title,
    #orc-form.layout-shell #calc-bloc-extras .extras-hero__title {
      margin: 0;
      font-family: var(--font-primary);
      font-size: 24px;
      line-height: 1.15;
      font-weight: 700;
      color: #333333;
      letter-spacing: -0.02em;
      text-transform: none;
    }

    #orc-form.layout-shell #wizard-step-1 .fa-hero__sub,
    #orc-form.layout-shell #wizard-step-1 .capa-hero__sub,
    #orc-form.layout-shell #wizard-step-1 .miolo-hero__sub,
    #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero__sub,
    #orc-form.layout-shell #calc-bloc-extras .extras-hero__sub {
      margin: 0;
      font-family: var(--font-primary);
      font-size: 16px;
      line-height: 1.25;
      font-weight: 500;
      color: #7d7d7d;
    }

    #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail,
    #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .pl-sessao-rail,
    #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .pl-sessao-rail,
    #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .pl-sessao-rail {
      margin: 0;
      padding: 0 0 12px;
      padding-left: 0;
      padding-right: 0;
    }

    #orc-form.layout-shell #calc-bloc-extras .toggles {
      display: flex;
      flex-direction: column;
      gap: 0.6rem;
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab {
        background: var(--pl-bloco-paper-bg) !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head {
        position: relative !important;
        overflow: visible !important;
        margin: -12px -14px 0 !important;
        padding: 12px 14px 0 !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail {
        position: relative !important;
        z-index: 2 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .pl-sessao-rail::before {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 1 !important;
        margin: -12px -14px 0 !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 14px clamp(14px, 3.5vw, 22px) !important;
        text-align: center !important;
        flex-wrap: nowrap !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: -14px !important;
        right: -14px !important;
        bottom: 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background:
          linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
          url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::after {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__mark,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__sub,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .capa-hero__help {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__titles {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        gap: 0 !important;
        position: relative !important;
        z-index: 2 !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__title {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        position: relative !important;
        z-index: 2 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        font-family: var(--font-primary) !important;
        font-size: clamp(1.25rem, 5.2vw, 1.625rem) !important;
        font-weight: 700 !important;
        line-height: 1.08 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        text-align: center !important;
        color: #09142e !important;
        -webkit-text-fill-color: #09142e !important;
        -webkit-text-stroke: 1.15px #09142e !important;
        paint-order: stroke fill !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      #orc-form.layout-shell #wizard-step-1 .fa-hero__title,
      #orc-form.layout-shell #wizard-step-1 .capa-hero__title,
      #orc-form.layout-shell #wizard-step-1 .miolo-hero__title,
      #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero__title,
      #orc-form.layout-shell #calc-bloc-extras .extras-hero__title {
        font-size: clamp(0.84rem, 2.5vw, 0.98rem);
        line-height: 1.2;
      }

      #orc-form.layout-shell #wizard-step-1 .fa-hero__sub,
      #orc-form.layout-shell #wizard-step-1 .capa-hero__sub,
      #orc-form.layout-shell #wizard-step-1 .miolo-hero__sub,
      #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero__sub,
      #orc-form.layout-shell #calc-bloc-extras .extras-hero__sub {
        font-size: clamp(0.64rem, 1.65vw, 0.76rem);
        line-height: 1.38;
        display: block;
        overflow: visible;
        white-space: normal;
      }

      #orc-form.layout-shell #wizard-step-1 .fa-hero,
      #orc-form.layout-shell #wizard-step-1 .capa-hero,
      #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero,
      #orc-form.layout-shell #calc-bloc-extras .extras-hero {
        margin: 0 0 0.65rem;
        gap: 0.5rem;
        flex-wrap: nowrap;
      }

      #orc-form.layout-shell #wizard-step-1 .fa-hero__titles,
      #orc-form.layout-shell #wizard-step-1 .capa-hero__titles,
      #orc-form.layout-shell #wizard-step-1 #card-miolo .miolo-hero__titles,
      #orc-form.layout-shell #card-modelo.card--modelo-qtd .mq-hero__titles,
      #orc-form.layout-shell #calc-bloc-extras .extras-hero__titles {
        min-height: 0;
        gap: 0.22rem;
        top: auto;
      }

      /* Passo 1 — heróis jornal mobile (Formato, Capa, Miolo, Serviços — override final) */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head {
        position: relative !important;
        overflow: visible !important;
        margin: -12px -14px 0 !important;
        padding: 12px 14px 0 !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec {
        padding: 12px 14px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras.card {
        padding: 12px 14px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
        background: var(--pl-bloco-paper-bg) !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo {
        overflow: hidden !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: var(--pl-bloco-paper-bg) !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail {
        order: 2 !important;
        position: relative !important;
        z-index: 2 !important;
        margin: 0 !important;
        padding: 0 14px 12px !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .pl-sessao-rail::before {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__lead {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 1 !important;
        margin: -12px -14px 0 !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 14px clamp(14px, 3.5vw, 22px) !important;
        text-align: center !important;
        flex-wrap: nowrap !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        order: 1 !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 1 !important;
        width: 100% !important;
        align-self: stretch !important;
        margin: 0 !important;
        padding: calc(12px + clamp(18px, 4.5vw, 24px)) 0 clamp(14px, 3.5vw, 22px) !important;
        text-align: center !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::before,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::before,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::before,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: -14px !important;
        right: -14px !important;
        bottom: 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background:
          linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
          url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        z-index: 0 !important;
        pointer-events: none !important;
        border-radius: 12px 12px 0 0 !important;
        background:
          linear-gradient(rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.66)),
          url('assets/img/textura-jornal-formato.png') center top / cover no-repeat #f0ebf8 !important;
        -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
        clip-path: polygon(0% 0%, 100% 0%, 100% 74%, 98.5% 84%, 97% 76%, 95.5% 88%, 94% 78%, 92.5% 90%, 91% 75%, 89.5% 86%, 88% 77%, 86.5% 91%, 85% 74%, 83.5% 85%, 82% 78%, 80.5% 89%, 79% 76%, 77.5% 87%, 76% 79%, 74.5% 92%, 73% 75%, 71.5% 86%, 70% 77%, 68.5% 90%, 67% 74%, 65.5% 84%, 64% 78%, 62.5% 89%, 61% 76%, 59.5% 87%, 58% 79%, 56.5% 91%, 55% 75%, 53.5% 85%, 52% 77%, 50.5% 88%, 49% 74%, 47.5% 86%, 46% 78%, 44.5% 90%, 43% 75%, 41.5% 84%, 40% 77%, 38.5% 89%, 37% 74%, 35.5% 85%, 34% 78%, 32.5% 91%, 31% 76%, 29.5% 87%, 28% 79%, 26.5% 90%, 25% 75%, 23.5% 86%, 22% 77%, 20.5% 88%, 19% 74%, 17.5% 85%, 16% 78%, 14.5% 89%, 13% 76%, 11.5% 87%, 10% 79%, 8.5% 91%, 7% 75%, 5.5% 84%, 4% 77%, 2.5% 88%, 1% 74%, 0% 82%) !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title-row {
        position: static !important;
        z-index: 2 !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 14px !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        left: auto !important;
        bottom: auto !important;
        z-index: 20 !important;
        margin: 0 !important;
        width: auto !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 5px 10px 5px 8px !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        gap: 4px !important;
        border: none !important;
        border-radius: 0 10px 0 5px !important;
        background: #f46f6f !important;
        color: #ffffff !important;
        box-shadow: none !important;
        transform: none !important;
        line-height: 1.1 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-btn-recomecar::before {
        width: 11px !important;
        height: 11px !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title::before {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero::after,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero::after,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero::after,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero::after {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__mark,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__sub,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__help,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__mark,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__sub,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .capa-hero__help,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__mark,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__sub {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__titles,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__titles,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__titles,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__titles {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        gap: 0 !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .pl-card-head > .fa-hero .fa-hero__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .pl-card-head > .capa-hero .capa-hero__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-hero .miolo-hero__title,
      #orc-form.layout-shell #wizard-step-1 #calc-bloc-extras > .extras-hero .extras-hero__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .mq-subhead__title {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        font-family: var(--font-primary) !important;
        font-size: clamp(1.25rem, 5.2vw, 1.625rem) !important;
        line-height: 1.08 !important;
        font-weight: 700 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        text-align: center !important;
        color: #09142e !important;
        -webkit-text-fill-color: #09142e !important;
        -webkit-text-stroke: 1.15px #09142e !important;
        paint-order: stroke fill !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      /* Mobile — label “Quantidade de exemplares” = tipografia “Capa Brochura” */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd #calc-bloc-tiragem .mq-qtd-visible-label {
        display: block !important;
        width: 100% !important;
        margin: 0 0 0.75rem !important;
        padding: 0 !important;
        font-family: var(--font-primary) !important;
        font-size: 1.3125rem !important;
        font-weight: 600 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.03em !important;
        text-align: center !important;
        color: #0f172a !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        box-sizing: border-box !important;
      }

      /* Mobile — dica de rodapé: uma linha, altura mínima (override final) */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .miolo-tip.mq-tip {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 4px !important;
        padding: 2px 8px 3px !important;
        margin: 6px -14px -12px !important;
        min-height: 0 !important;
        overflow: hidden !important;
        border-top-width: 1px !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd > .mq-tip {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        min-height: 0 !important;
        overflow: hidden !important;
        background: transparent !important;
      }

      /* Mobile — tipo/quantidade: só a borda externa do #card-modelo (igual aos outros cards). */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panels,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .calc-flow-campo[data-flow-key="modelo"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--qtd .calc-flow-campo[data-flow-key="quantidade"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-modelo.card--modelo-qtd .mq-panel--tipo .modelo-pick--cards {
        border: none !important;
        border-top: none !important;
        border-bottom: none !important;
        border-right: none !important;
        box-shadow: none !important;
        outline: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip .mq-tip__ico,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip .mq-tip__ico,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .mq-tip .mq-tip__ico {
        flex: 0 0 11px !important;
        width: 11px !important;
        height: 11px !important;
        font-size: 7px !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .mq-tip .mq-tip__txt,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .mq-tip .mq-tip__txt,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-miolo.card-miolo--spec > .mq-tip .mq-tip__txt {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        font-size: clamp(0.5rem, 2.15vw, 0.625rem) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      /* Serviços adicionais — grid mobile (referência visual; somente ≤1023px) */
      #orc-form.layout-shell #calc-bloc-extras .toggles.extras-mob-board {
        --extras-mob-line: #e2e5eb;
        --extras-mob-bolinha: clamp(1.125rem, 3.6vw, 1.3125rem);
        --extras-mob-bolinha-skip: clamp(1.3125rem, 4.4vw, 1.5rem);
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        flex-direction: unset !important;
        flex-wrap: unset !important;
        gap: 0 !important;
        margin: 0 -0.5rem !important;
        padding: 0.1rem 0 0.45rem !important;
        width: calc(100% + 1rem) !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-wrap {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: var(--pl-bloco-paper-bg) !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip--desktop {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-prompt {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.55rem !important;
        margin: 0 !important;
        padding: 0.62rem 0.4rem !important;
        box-sizing: border-box !important;
        background: var(--pl-bloco-paper-bg) !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-q {
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        font-family: var(--font-primary) !important;
        font-size: clamp(0.9rem, 4vw, 1.0625rem) !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
        color: #0f172a !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opts {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 1.15rem !important;
        width: 100% !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt {
        display: inline-flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.42rem !important;
        margin: 0 !important;
        padding: 0 !important;
        cursor: pointer !important;
        pointer-events: auto !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt-lbl {
        font-family: var(--font-primary) !important;
        font-size: clamp(0.8125rem, 3.2vw, 0.9375rem) !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        white-space: nowrap !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect {
        grid-column: 1 / -1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0.78rem 0.55rem 0.62rem !important;
        font-family: var(--font-primary) !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        text-align: center !important;
        border-top: none !important;
        border-right: none !important;
        border-bottom: 1px solid var(--extras-mob-line) !important;
        background: var(--pl-bloco-paper-bg) !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect--ed {
        grid-row: 2 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect--gr {
        grid-row: 6 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--isbn { grid-column: 1 !important; grid-row: 3 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ficha { grid-column: 2 !important; grid-row: 3 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--diagramacao { grid-column: 3 !important; grid-row: 3 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--capa { grid-column: 1 !important; grid-row: 4 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ortografia { grid-column: 2 !important; grid-row: 4 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ebook { grid-column: 3 !important; grid-row: 4 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad { grid-column: 1 / -1 !important; grid-row: 5 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--embalagem { grid-column: 1 !important; grid-row: 7 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--marcador { grid-column: 2 !important; grid-row: 7 !important; }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: stretch !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-right: 1px solid var(--extras-mob-line) !important;
        border-bottom: 1px solid var(--extras-mob-line) !important;
        background: var(--pl-bloco-paper-bg) !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--diagramacao,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ebook {
        border-right: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom {
        pointer-events: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.2rem !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0.38rem 0.14rem 0.32rem !important;
        border: none !important;
        border-radius: 0 !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        line-height: inherit !important;
        text-align: center !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        box-sizing: border-box !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom.extras-mob-board__slot {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.3rem !important;
        padding: 0.5rem 0.42rem !important;
        cursor: default !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__ico {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        width: clamp(2rem, 7vw, 2.55rem) !important;
        height: clamp(2rem, 7vw, 2.55rem) !important;
        margin: 0 !important;
        color: #7c3aed !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__ico svg {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .toggle-label-stack {
        flex: 0 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        min-width: 0 !important;
        width: 100% !important;
        padding: 0 0.12rem !important;
        margin: 0 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .toggle-label-stack__tit {
        font-size: clamp(0.62rem, 2.7vw, 0.75rem) !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        color: #0f172a !important;
        text-align: center !important;
        white-space: normal !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .toggle-label-stack__sub {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ortografia .toggle-label-stack__sub,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ebook .toggle-label-stack__sub,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__price-line,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad-price,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__desk-desc {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .extras-mob-board__ctl,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .extras-mob-board__ctl {
        display: block !important;
        flex: 0 0 auto !important;
        margin-top: 0.22rem !important;
        width: 100% !important;
        min-height: 1.1rem !important;
        position: static !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .extras-mob-board__ctl > .switch,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .extras-mob-board__ctl > .switch {
        display: inline-block !important;
        margin: 0 auto !important;
        flex: 0 0 auto !important;
        vertical-align: middle !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .extras-mob-board__ctl > .extras-mob-board__help,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .extras-mob-board__ctl > .extras-mob-board__help,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .extras-mob-board__ctl > .pl-calc-flow-help,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .extras-mob-board__ctl > .pl-calc-flow-help {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        margin: 0 !important;
        z-index: 2 !important;
      }

      /* Bolinha de seleção — igual Orientação/Tamanho */
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .switch,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .switch,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .switch {
        width: var(--extras-mob-bolinha) !important;
        height: var(--extras-mob-bolinha) !important;
        flex-shrink: 0 !important;
        pointer-events: auto !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .slider,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .slider,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .slider {
        position: absolute !important;
        inset: 0 !important;
        background: #ffffff !important;
        border: 2px solid #d1d5db !important;
        border-radius: 50% !important;
        box-sizing: border-box !important;
        transition: border-color 0.15s, background 0.15s !important;
        pointer-events: auto !important;
        cursor: pointer !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .slider::before,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .slider::before,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .slider::before {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .switch input:checked + .slider,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .switch input:checked + .slider,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .switch input:checked + .slider {
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%) !important;
        border-color: #0088cc !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot .switch input:checked + .slider::before,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .switch input:checked + .slider::before,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .switch input:checked + .slider::before {
        transform: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row .extras-mob-board__help,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom .extras-mob-board__help {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        width: 0.9rem !important;
        height: 0.9rem !important;
        margin: 0 !important;
        border: 1px solid #d1d5db !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #94a3b8 !important;
        font-size: 0.5rem !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        pointer-events: none !important;
        z-index: 2 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__skip--desktop.toggle-row {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.4rem !important;
        min-height: 0 !important;
        padding: 0.62rem 0.4rem !important;
        white-space: nowrap !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-txt {
        flex: 0 1 auto !important;
        min-width: 0 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        font-family: inherit !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        line-height: inherit !important;
        letter-spacing: inherit !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad {
        position: relative !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.55rem !important;
        min-height: 0 !important;
        padding: 0.78rem 0.55rem !important;
        border-right: none !important;
        border-bottom: 1px solid var(--extras-mob-line) !important;
        box-sizing: border-box !important;
        background: var(--pl-bloco-paper-bg) !important;
        pointer-events: auto !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .extras-mob-board__ctl {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 0.32rem !important;
        flex: 0 0 auto !important;
        margin-top: 0 !important;
        width: auto !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .extras-mob-board__help {
        position: static !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: var(--extras-mob-bolinha) !important;
        height: var(--extras-mob-bolinha) !important;
        min-width: var(--extras-mob-bolinha) !important;
        min-height: var(--extras-mob-bolinha) !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #d1d5db !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #94a3b8 !important;
        font-size: clamp(0.42rem, 1.4vw, 0.5rem) !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        box-shadow: none !important;
      }

      html.is-help-mode #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad.pl-did-toggle-host .pl-calc-flow-help,
      html.is-help-mode #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad .extras-mob-board__ctl .pl-calc-flow-help {
        position: static !important;
        top: auto !important;
        right: auto !important;
        order: 3 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: var(--extras-mob-bolinha) !important;
        height: var(--extras-mob-bolinha) !important;
        min-width: var(--extras-mob-bolinha) !important;
        min-height: var(--extras-mob-bolinha) !important;
        margin: 0 0 0 0.32rem !important;
        padding: 0 !important;
        border: 1px solid #d1d5db !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #94a3b8 !important;
        font-size: clamp(0.42rem, 1.4vw, 0.5rem) !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        box-shadow: none !important;
        flex-shrink: 0 !important;
        align-self: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--marcador {
        border-right: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad-text {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.12rem !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad-text .toggle-label-stack__tit {
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        line-height: 1.2 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad-sub {
        font-size: 0.625rem !important;
        font-weight: 500 !important;
        line-height: 1.2 !important;
        color: #64748b !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .switch,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip .switch {
        width: var(--extras-mob-bolinha-skip) !important;
        height: var(--extras-mob-bolinha-skip) !important;
        flex-shrink: 0 !important;
        position: relative !important;
        display: inline-block !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .slider,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip .slider {
        position: absolute !important;
        inset: 0 !important;
        background: #ffffff !important;
        border: 2px solid #d1d5db !important;
        border-radius: 50% !important;
        box-sizing: border-box !important;
        transition: border-color 0.15s, background 0.15s !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .slider::before,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip .slider::before {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .switch input:checked + .slider,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip .switch input:checked + .slider {
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%) !important;
        border-color: #0088cc !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .switch input:checked + .slider::before,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip .switch input:checked + .slider::before {
        transform: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras > .calc-flow-campo.campo-ativo .extras-mob-board label.toggle-row {
        pointer-events: auto !important;
      }

      #orc-form.layout-shell .step1-extras-frete-column {
        overflow: visible !important;
        min-height: 0 !important;
      }

      html.is-help-mode #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__help {
        display: none !important;
      }

      html.is-help-mode #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row.pl-did-toggle-host .pl-calc-flow-help {
        display: inline-flex !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: auto !important;
        transform: none !important;
        width: 0.9rem !important;
        height: 0.9rem !important;
        padding: 0 !important;
        border-radius: 999px !important;
        font-size: 0.5rem !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
        order: unset !important;
        z-index: 2 !important;
      }

    }

    /* Desktop: cabeçalhos passo 1 — reforço final (Tamanho, Orientação, Acabamento) */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__phantom,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__ico,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__help {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect {
        display: block !important;
        order: 2 !important;
        margin: 0.55rem 0 0.2rem !important;
        padding: 0.5rem 0.65rem 0.55rem !important;
        font-family: var(--font-primary) !important;
        font-size: 1.125rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: #5b21b6 !important;
        letter-spacing: -0.015em !important;
        text-align: center !important;
        border: none !important;
        border-bottom: 1px solid #e9d5ff !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect--ed {
        order: 2 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__sect--gr {
        order: 20 !important;
        margin-top: 0.65rem !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot {
        display: contents !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__ctl {
        display: contents !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .toggles.extras-mob-board {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        grid-template-columns: none !important;
        gap: 0 !important;
        padding: 0 !important;
        background: transparent !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-wrap {
        order: 1 !important;
        width: 100% !important;
        margin: 0 0 0.35rem !important;
        padding: 0 !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-prompt {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.38rem !important;
        margin: 0 !important;
        padding: 0.72rem 0.85rem 0.68rem !important;
        border: 1px solid #a78bfa !important;
        border-radius: 12px !important;
        background: linear-gradient(135deg, #f5f3ff 0%, #ede9fe 42%, #dbeafe 100%) !important;
        box-shadow: 0 1px 0 rgba(124, 58, 237, 0.08) !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-q {
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        min-width: 0 !important;
        font-family: var(--font-primary) !important;
        font-size: 1.0625rem !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        color: #5b21b6 !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opts {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.55rem !important;
        flex: 0 0 auto !important;
        width: 100% !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt {
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.42rem !important;
        cursor: pointer !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt-lbl {
        font-size: 0.9375rem !important;
        font-weight: 600 !important;
        color: #4c1d95 !important;
        white-space: nowrap !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .switch {
        width: 1.25rem !important;
        height: 1.25rem !important;
        flex-shrink: 0 !important;
        position: relative !important;
        display: inline-block !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .slider {
        position: absolute !important;
        inset: 0 !important;
        background: #ffffff !important;
        border: 2px solid #d1d5db !important;
        border-radius: 50% !important;
        box-sizing: border-box !important;
        transition: border-color 0.15s, background 0.15s !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .slider::before {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip-opt .switch input:checked + .slider {
        background: radial-gradient(circle at center, #0088cc 45%, #ffffff 48%) !important;
        border-color: #0088cc !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__skip--desktop {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--isbn > label.toggle-row { order: 10 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ficha > label.toggle-row { order: 11 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--diagramacao > label.toggle-row { order: 12 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ortografia > label.toggle-row { order: 13 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ebook > label.toggle-row { order: 14 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--capa > label.toggle-row { order: 15 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__trad { order: 16 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--embalagem > label.toggle-row { order: 21 !important; }
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--marcador > label.toggle-row { order: 22 !important; }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ortografia .extras-mob-board__price-line,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--ebook .extras-mob-board__price-line {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__desk-desc {
        display: inline !important;
      }

      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .extras-mob-board__trad-sub--mob {
        display: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board > label.toggle-row,
      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row,
      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row {
        grid-column: unset !important;
        grid-row: unset !important;
        flex: unset !important;
        width: auto !important;
        min-height: 0 !important;
        height: auto !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 1rem !important;
        padding: 0.45rem 0 !important;
        border: none !important;
        border-bottom: 1px solid var(--border) !important;
        border-radius: 0 !important;
        text-align: left !important;
        pointer-events: auto !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot--marcador > label.toggle-row {
        border-bottom: none !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row .toggle-label-stack__tit,
      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .toggle-label-stack__tit {
        font-size: 0.9rem !important;
        font-weight: 600 !important;
        line-height: 1.25 !important;
        color: var(--text) !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row .toggle-label-stack__sub,
      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .toggle-label-stack__sub {
        font-size: 0.72rem !important;
        font-weight: 500 !important;
        line-height: 1.3 !important;
        color: var(--muted) !important;
      }

      #orc-form.layout-shell #calc-bloc-extras .extras-mob-board__slot > label.toggle-row .toggle-label-stack,
      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .toggle-label-stack {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        gap: 0.25rem !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .extras-mob-board__ico,
      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .extras-mob-board__trad-sub--mob,
      #orc-form.layout-shell #calc-bloc-extras label.extras-mob-board__trad.toggle-row .extras-mob-board__trad-price {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__sub,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__sub,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__sub {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo.fa-col--size #tamanho-lbl,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .formato-acab-sr-only,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab #acabamento-label,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-lbl,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] #laminacao-lbl,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-lbl {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
      }

      /* Tamanho, Orientação e Acabamento (piloto): cabeçalho e grelha em boxes separados */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        gap: 0.3rem !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size.campo-ativo,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient.campo-ativo,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab.campo-ativo {
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .pl-calc-flow-help,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .pl-calc-flow-help,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .pl-calc-flow-help {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding: 0.55rem 0.55rem !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        position: relative !important;
        overflow: visible !important;
        isolation: isolate !important;
        gap: 0.45rem !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__ico,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__ico,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__ico {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head > div {
        grid-column: unset !important;
        grid-row: unset !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: min-content !important;
        max-width: none !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        text-align: left !important;
        position: relative !important;
        z-index: 1 !important;
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .fa-col-head__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .fa-col-head__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .fa-col-head__title {
        margin: 0 !important;
        width: auto !important;
        max-width: none !important;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem) !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.2 !important;
        text-align: left !important;
        color: #6d28d9 !important;
        opacity: 1 !important;
        text-shadow: none !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        flex-shrink: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size .tamanho-size-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient-options-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-options-layout {
        padding: 0.75rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient-options-layout .field,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-options-layout .field {
        margin: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        width: 100% !important;
        align-items: stretch !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button {
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        text-align: center !important;
        padding: 12px 12px 14px !important;
        border-radius: 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        background: #ffffff !important;
        color: #333333 !important;
        box-sizing: border-box !important;
        gap: 8px !important;
        overflow: hidden !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        margin: 0 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book::before {
        display: none !important;
        content: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book--portrait {
        background-image: url('/assets/img/mobile/orientacao/vertical.webp') !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book--landscape {
        background-image: url('/assets/img/mobile/orientacao/horizontal.webp') !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button::after {
        content: "selecionar" !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex-shrink: 0 !important;
        align-self: center !important;
        width: auto !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-tile__body {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 0 10px !important;
        text-align: center !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-tile__title {
        display: block !important;
        width: 100% !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-tile__hint {
        display: block !important;
        width: 100% !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #94a3b8 !important;
        letter-spacing: -0.01em !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button[aria-pressed="true"] {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
        color: #333333 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button[aria-pressed="true"] .orient-tile__body {
        border-bottom-color: #93c5fd !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button[aria-pressed="true"]::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-tile .pl-fa-opt-media,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .pl-fa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-tile .calc-dd__title.acab-tile__title,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__title {
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
        color: #0f172a !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab .acab-tile .calc-dd__sub.acab-tile__hint,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--acab #acabamento-dd-list > li .calc-dd__opt .calc-dd__sub {
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        letter-spacing: -0.01em !important;
        color: #94a3b8 !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--size #tamanho-custom-wrap:not([hidden]) {
        padding: 0.75rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
      }

      /* Papel da capa, Laminação e Impressão da capa (piloto): reforço final */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        gap: 0.3rem !important;
        min-height: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"].campo-ativo,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"].campo-ativo,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"].campo-ativo {
        background: transparent !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .pl-calc-flow-help,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .pl-calc-flow-help,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .pl-calc-flow-help {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding: 0.55rem 0.55rem !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        position: relative !important;
        overflow: visible !important;
        isolation: isolate !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
        grid-template-columns: unset !important;
        gap: 0.45rem !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__ico,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__ico,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__ico {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head > div,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head > div {
        grid-column: unset !important;
        grid-row: unset !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: min-content !important;
        max-width: none !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        text-align: left !important;
        position: relative !important;
        z-index: 1 !important;
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-col-head__tit,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-col-head__tit,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-col-head__tit {
        margin: 0 !important;
        width: auto !important;
        max-width: none !important;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem) !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.2 !important;
        text-align: left !important;
        color: #6d28d9 !important;
        opacity: 1 !important;
        text-shadow: none !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        flex-shrink: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout {
        padding: 0.75rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="papelCapa"] .capa-options-layout .field,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="laminacao"] .capa-options-layout .field,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .calc-flow-campo[data-flow-key="impressaoCapa"] .capa-options-layout .field {
        margin: 0 !important;
      }

      /* Papel, Laminação e Impressão da capa: cards com foto (reforço final) */
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        max-height: 100px !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt {
        min-height: 0 !important;
        padding: 12px 12px 14px !important;
        border-radius: 14px !important;
        border: 1.5px solid #e2e8f0 !important;
        text-align: center !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        overflow: hidden !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active,
      #orc-form.layout-shell #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active,
      #orc-form.layout-shell #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__opt-text,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        align-items: center !important;
        text-align: center !important;
        padding: 0 0 10px !important;
        border-bottom: 1px solid #cbd5e1 !important;
        gap: 2px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active .calc-dd__opt-text {
        border-bottom-color: #93c5fd !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__title,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__title,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__title {
        font-size: 1rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.01em !important;
        color: #0f172a !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt .calc-dd__sub,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt .calc-dd__sub,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: block !important;
        font-size: 0.75rem !important;
        color: #94a3b8 !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt::after,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt::after,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt::after,
      #orc-form.layout-shell #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .calc-dd.calc-dd--choice .calc-dd__opt::after,
      #orc-form.layout-shell #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-dd.calc-dd--choice .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        border-radius: 0 !important;
        background:
          radial-gradient(circle at 9px 50%, transparent 0 6.5px, #cbd5e1 7px 8.5px, transparent 9px)
          left center / 18px 18px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt.is-active::after,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt.is-active::after,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt.is-active::after,
      #orc-form.layout-shell #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="laminacao"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after,
      #orc-form.layout-shell #wizard-step-1 #card-capa.card--capa-espec .calc-flow-campo[data-flow-key="impressaoCapa"] .calc-dd.calc-dd--choice .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        border: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]),
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo #papel-capa-fixed-note,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]),
      html.pl-livro-capa-dura #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        min-height: 0 !important;
        margin-top: 0 !important;
        padding: 12px 12px 14px !important;
        border-radius: 14px !important;
        border: 1.5px solid #2563eb !important;
        background: #f0f5ff !important;
        box-sizing: border-box !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-opt-media--fixed,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-opt-media--fixed {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-height: 100px !important;
        aspect-ratio: 4 / 3 !important;
        border-radius: 10px !important;
        border: 1px solid #dbeafe !important;
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .papel-capa-fixed-card__body,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .papel-capa-fixed-card__body {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 0 0 10px !important;
        border-bottom: 1px solid #93c5fd !important;
        gap: 2px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__tipo,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card__tipo,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__tipo,
      html.pl-livro-capa-dura #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__tipo {
        width: 100% !important;
        text-align: center !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
        color: #0f172a !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__info,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #field-papel-capa-wrap.field--papel-capa-triplex-fixo .papel-capa-fixed-card__info,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__info,
      html.pl-livro-capa-dura #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note:not([hidden]) .papel-capa-fixed-card__info {
        margin: 0 !important;
        max-width: none !important;
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        letter-spacing: -0.01em !important;
        color: #94a3b8 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-fixed-check,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-fixed-check {
        display: inline-flex !important;
        align-self: center !important;
        flex: 0 0 auto !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 20px !important;
        margin: 8px auto 0 !important;
        padding: 0 0 0 22px !important;
        border: none !important;
        background:
          radial-gradient(circle at 9px 50%, #ffffff 0 2.5px, #2563eb 3px 8px, transparent 8.5px)
          left center / 18px 18px no-repeat !important;
        color: #2563eb !important;
        font-size: 0.6875rem !important;
        font-weight: 700 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note .pl-capa-fixed-check::after,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note .pl-capa-fixed-check::after {
        content: "(selecionado)";
      }

      /* Orelha — cards com foto Com/Sem (reforço final; não altera especiais) */
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-btn {
        display: none !important;
      }

      /* Guardas (capa dura) — mesmo layout de cards do Acabamentos especiais */
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-btn {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-panel,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-panel[hidden],
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-root.calc-dd--choice .calc-dd__panel {
        display: block !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li {
        min-width: 0 !important;
        display: flex !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
        width: 100% !important;
        padding: 8px 8px 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        overflow: visible !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        display: block !important;
        width: 100% !important;
        height: 72px !important;
        max-height: 72px !important;
        border-radius: 8px !important;
        border: 1px solid #eef2f7 !important;
        background-color: #f8fafc !important;
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/branco"] {
        background-image: url('/assets/img/mobile/guardas/branca.webp') !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/preto"] {
        background-image: url('/assets/img/mobile/guardas/preto.webp') !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .pl-capa-opt-media[data-pl-capa-visual="guardas/personalizado"] {
        background-image: url('/assets/img/mobile/guardas/personalizada.webp') !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        text-align: center !important;
        padding: 0 0 6px !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt .calc-dd__title {
        display: block !important;
        text-align: center !important;
        font-size: 0.875rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-self: center !important;
        height: 18px !important;
        margin: 4px auto 0 !important;
        padding: 0 0 0 20px !important;
        border: none !important;
        background:
          radial-gradient(circle at 8px 50%, transparent 0 5.5px, #cbd5e1 6px 7.5px, transparent 8px)
          left center / 16px 16px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 8px 50%, #ffffff 0 2px, #2563eb 2.5px 7px, transparent 7.5px)
          left center / 16px 16px no-repeat !important;
        color: #2563eb !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-panel,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-panel[hidden],
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-root.calc-dd--choice .calc-dd__panel {
        display: block !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 8px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li {
        min-width: 0 !important;
        display: flex !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .pl-capa-opt-media {
        display: block !important;
        width: 100% !important;
        height: 72px !important;
        max-height: 72px !important;
        aspect-ratio: auto !important;
        border-radius: 8px !important;
        border: 1px solid #eef2f7 !important;
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
        padding: 8px 8px 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__opt-text {
        align-items: center !important;
        justify-content: center !important;
        padding: 0 0 6px !important;
        border-bottom: 1px solid #cbd5e1 !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__title {
        text-align: center !important;
        font-size: 0.875rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt .calc-dd__sub {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-self: center !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 18px !important;
        margin: 4px auto 0 !important;
        padding: 0 0 0 20px !important;
        border: none !important;
        background:
          radial-gradient(circle at 8px 50%, transparent 0 5.5px, #cbd5e1 6px 7.5px, transparent 8px)
          left center / 16px 16px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active {
        border: 1.5px solid #2563eb !important;
        background: #f0f5ff !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt.is-active::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 8px 50%, #ffffff 0 2px, #2563eb 2.5px 7px, transparent 7.5px)
          left center / 16px 16px no-repeat !important;
        color: #2563eb !important;
      }

      /* Acabamentos especiais — compacto, sem scroll (reforço final) */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row {
        align-items: flex-start !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-livro-brochura #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      html.pl-livro-brochura #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"],
      html.pl-livro-capa-dura #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        align-self: flex-start !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout {
        flex: 0 0 auto !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 0.55rem !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-btn {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] #capa-especiais-dd-panel[hidden] {
        display: block !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__multi-body {
        max-height: none !important;
        overflow: visible !important;
        padding: 0 !important;
        gap: 8px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 8px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__list--check > li:has(#capa-ext-none) {
        grid-column: 1 / -1 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row .pl-capa-opt-media--check {
        display: block !important;
        width: 100% !important;
        height: 72px !important;
        max-height: 72px !important;
        aspect-ratio: auto !important;
        border-radius: 8px !important;
        border: 1px solid #eef2f7 !important;
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
        padding: 8px 8px 10px !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--tile:has(input:checked),
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(#capa-ext-verniz:checked),
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(#capa-ext-hotstamp:checked),
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked):not(.calc-dd__check-row--none),
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none:has(#capa-ext-none:checked) {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row > span:not(.pl-capa-opt-media) {
        text-align: center !important;
        font-size: 0.875rem !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        padding: 0 0 6px !important;
        border-bottom: 1px solid #cbd5e1 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row::after {
        content: "selecionar" !important;
        display: inline-flex !important;
        align-self: center !important;
        flex: 0 0 auto !important;
        width: fit-content !important;
        max-width: fit-content !important;
        height: 18px !important;
        margin: 4px auto 0 !important;
        padding: 0 0 0 20px !important;
        border: none !important;
        background:
          radial-gradient(circle at 8px 50%, transparent 0 5.5px, #cbd5e1 6px 7.5px, transparent 8px)
          left center / 16px 16px no-repeat !important;
        color: #94a3b8 !important;
        font-size: 0.625rem !important;
        font-weight: 700 !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row:has(input:checked)::after {
        content: "(selecionado)" !important;
        background:
          radial-gradient(circle at 8px 50%, #ffffff 0 2px, #2563eb 2.5px 7px, transparent 7.5px)
          left center / 16px 16px no-repeat !important;
        color: #2563eb !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none {
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 8px 10px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none .pl-capa-opt-media--none-x {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 40px !important;
        width: 40px !important;
        height: 40px !important;
        max-height: 40px !important;
        aspect-ratio: auto !important;
        background-image: none !important;
        background-color: #f5f3ff !important;
        border: 1px solid #ede9fe !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none .pl-capa-opt-media--none-x svg {
        width: 22px !important;
        height: 22px !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none > span:not(.pl-capa-opt-media) {
        width: auto !important;
        flex: 1 1 auto !important;
        text-align: left !important;
        padding: 0 !important;
        border-bottom: 0 !important;
        font-size: 0.875rem !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none::after {
        margin: 0 0 0 auto !important;
        align-self: center !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--none:has(#capa-ext-none:checked) {
        border: 1.5px solid #2563eb !important;
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: none !important;
      }

      /* Desktop layout-shell — zoom grande nas fotos dos cards (reforço final) */
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .tamanho-tile,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] #tamanho-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .acab-tile,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] #acabamento-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] #laminacao-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] #papel-capa-fixed-note,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] #impressao-capa-fixed-note,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] #orelha-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] #tipo-guardas-dd-list > li .calc-dd__opt,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--tile {
        overflow: visible !important;
      }

      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="tamanho"] .pl-fa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="acabamento"] .pl-fa-opt-media,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-formato-acabamento.card--formato-acab > .calc-flow-campo.fa-col--orient .orient button .orient-book,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="papelCapa"] .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="laminacao"] .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="impressaoCapa"] .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="orelha"] .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="guardas"] .pl-capa-opt-media,
      #orc-form.layout-shell #wizard-step-1 .calc-flow-campo[data-flow-key="capaEspeciais"] .calc-dd__check-row--tile .pl-capa-opt-media--check {
        transition:
          transform 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          box-shadow 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          filter 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          width 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          height 1.25s cubic-bezier(0.16, 1, 0.3, 1),
          max-height 1.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        transform-origin: center center !important;
        position: relative !important;
        z-index: 1 !important;
        filter: none !important;
      }

      /* Orelha, Guardas e Acabamentos especiais: reforço piloto roxo/chapisco */
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"],
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        gap: 0.3rem !important;
        min-height: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding: 0.55rem 0.55rem !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        position: relative !important;
        overflow: visible !important;
        isolation: isolate !important;
        background-color: #f5f3ff !important;
        background-image:
          linear-gradient(135deg, rgba(245, 243, 255, 0.78) 0%, rgba(237, 233, 254, 0.72) 52%, rgba(233, 213, 255, 0.75) 100%),
          var(--pl-bloco-paper) center / 384px auto repeat !important;
        border: 1px solid #e9d5ff !important;
        box-shadow: none !important;
        grid-template-columns: unset !important;
        gap: 0.45rem !important;
      }

      #orc-form.layout-shell #wizard-step-1 .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 .fa-col-head .capa-col-head__veja,
      #orc-form.layout-shell #wizard-step-1 .card-miolo__step-head .capa-col-head__veja {
        display: inline-flex !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        flex-wrap: nowrap !important;
        align-self: center !important;
        gap: 0.3rem !important;
        z-index: 3 !important;
        margin: 0 !important;
        padding: 0.2rem 0.4rem 0.2rem 0.2rem !important;
        border: none !important;
        border-radius: 6px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08) !important;
        color: #6d28d9 !important;
        font-size: 0.5625rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.01em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        max-width: none !important;
        opacity: 1 !important;
        filter: none !important;
        cursor: pointer !important;
        pointer-events: auto !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-col-head__tit,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-col-head__tit,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        margin: 0 !important;
        width: auto !important;
        max-width: none !important;
        font-size: clamp(0.9375rem, 0.78rem + 0.35vw, 1.125rem) !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.2 !important;
        text-align: left !important;
        color: #6d28d9 !important;
        opacity: 1 !important;
        text-shadow: none !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        flex-shrink: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-col-head__tit {
        white-space: nowrap !important;
        width: auto !important;
        max-width: none !important;
      }

      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="orelha"] .capa-options-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="guardas"] .capa-options-layout,
      #orc-form.layout-shell #wizard-step-1 > .grid > #card-capa.card--capa-espec > .capa-rodape-row > .calc-flow-campo[data-flow-key="capaEspeciais"] .capa-options-layout {
        padding: 0.55rem !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        flex: 0 0 auto !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        min-width: 0 !important;
      }
    }

    /* Etapa 4 — extras do mock mobile (ocultos no desktop) */
    #wizard-step-4 > .card > h2,
    #wizard-step-4 .wizard-step4-head-desc,
    #wizard-step-4 .wizard-step4-security-banner,
    #wizard-step-4 .wizard-step4-trust-grid,
    #wizard-step-4 .wizard-step4-footer-note,
    #wizard-step-4 .pay-method-card__pill {
      display: none;
    }

    .pl-pay-desk-head,
    .pl-pay-desk-split {
      display: contents;
    }

    .wizard-step4-footer-note__asaas,
    .wizard-step4-footer-note__sep {
      display: none;
    }

    /* ///// CSS desktop etapa 4 pagamento //// */
    @media (min-width: 1024px) {
      #orc-form.layout-shell #wizard-step-4 > .card {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.85rem;
        padding: 1.5rem 1.5rem 1.25rem;
        border-radius: 24px;
        background: #fff;
        box-shadow: 0 8px 32px rgba(15, 23, 42, 0.06);
        border: 1px solid #eef2f7;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-pay-desk-split {
        display: grid;
        grid-template-columns: minmax(0, 1.22fr) minmax(260px, 0.78fr);
        grid-template-areas:
          "head secure"
          "methods resumo";
        column-gap: 1.25rem;
        row-gap: 0.85rem;
        align-items: start;
      }

      #orc-form.layout-shell #wizard-step-4 > .card > h2,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-intro,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-trust-grid {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-pay-desk-head {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.2rem;
        grid-area: head;
        padding: 0.1rem 0 0.15rem 0;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-section-title {
        display: flex;
        align-items: center;
        gap: 0.7rem;
        margin: 0;
        padding: 0;
        font-size: 1.22rem;
        font-weight: 800;
        letter-spacing: -0.03em;
        text-transform: none;
        color: #0f172a;
        line-height: 1.2;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-section-title::before {
        content: "";
        flex: 0 0 36px;
        width: 36px;
        height: 36px;
        border-radius: 10px;
        background: #2563eb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E") center / 18px no-repeat;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-head-desc {
        display: block !important;
        margin: 0 0 0 2.9rem;
        padding: 0;
        font-size: 0;
        line-height: 0;
        color: transparent;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-head-desc::after {
        content: "Escolha a opção que melhor se adapta a você.";
        display: block;
        font-size: 0.86rem;
        font-weight: 500;
        line-height: 1.4;
        color: #64748b;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner {
        display: flex !important;
        grid-area: secure;
        align-items: flex-start;
        gap: 0.7rem;
        margin: 0;
        padding: 0.85rem 1rem;
        border: 0;
        border-radius: 14px;
        background: #ecfdf5;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__icon {
        flex: 0 0 32px;
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: #22c55e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2.2 2.2 4.3-4.4'/%3E%3C/svg%3E") center / 18px no-repeat;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__title {
        display: block;
        margin: 0 0 2px;
        font-size: 0.88rem;
        font-weight: 800;
        line-height: 1.25;
        color: #14532d;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__desc {
        display: block !important;
        font-size: 0.75rem !important;
        line-height: 1.35 !important;
        color: #3f6b52 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__desc::after {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__lock {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-methods-row {
        grid-area: methods;
        display: flex;
        flex-direction: column;
        gap: 0.65rem;
        margin: 0;
        align-items: stretch;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr) auto auto;
        grid-template-areas:
          "icon title pill radio"
          "icon sub sub radio";
        align-items: center;
        column-gap: 0.75rem;
        row-gap: 0.12rem;
        min-height: 0;
        margin: 0;
        padding: 0.85rem 1rem;
        border: 1.5px solid #e5e7eb;
        border-radius: 16px;
        background: #fff;
        box-shadow: none;
        text-align: left;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:not(:has(.pay-method-card__pill)) {
        grid-template-areas:
          "icon title title radio"
          "icon sub sub radio";
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked) {
        border-color: #93c5fd;
        background: #f4f9ff;
        box-shadow: none;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__icon {
        grid-area: icon;
        width: 40px;
        height: 40px;
        margin: 0;
        border-radius: 12px;
        font-size: 0;
        color: transparent;
        background-color: #f1f5f9;
        background-repeat: no-repeat;
        background-position: center;
        background-size: 22px;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-pix) .pay-method-card__icon,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card__icon--pix {
        background-color: #e8fbf6;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2332BCAD' d='M12.7 3.4c.4.4.4 1 0 1.4L8.8 8.7a3.5 3.5 0 0 1-2.5 1H4.2c-.7 0-1-.8-.6-1.3L7.8 4a4 4 0 0 1 2.8-1.1h.6c.6 0 1.1.2 1.5.5zm6.7 1.3L15.2 8.4c.4.4.4 1 0 1.4L11.5 13.5a1 1 0 0 1-1.4 0L6.7 10.1a1 1 0 0 1 0-1.4L10.1 5.3a1 1 0 0 1 1.4 0l8-6.2c.4.4.4 1-.1 1.6zM19.8 9.3c.4.5.1 1.3-.6 1.3h-2.1a3.5 3.5 0 0 0-2.5 1l-3.9 3.9a1 1 0 0 1-1.4 0 .9.9 0 0 1 0-1.4l3.9-3.9a3.5 3.5 0 0 1 2.5-1h.4L19.8 9.3zM4.2 13.4h2.1a3.5 3.5 0 0 1 2.5 1l3.9 3.8c.4.4.4 1 0 1.4l-4.2 4.2A4 4 0 0 1 5.7 24h-.6a2 2 0 0 1-1.5-.5L.7 20.7c-.4-.4-.4-1 0-1.4l3.5-3.5c.4-.4.9-.6 1.4-.6h.6c.7 0 1 .8.6 1.3l-2.1 2.1c.10.0.1.4.6 1.3zM15.2 15.3a1 1 0 0 1 1.4 0l3.9 3.9c.4.4.4 1 0 1.4L16.2 24a4 4 0 0 1-2.8 1.1h-.6a2 2 0 0 1-1.5-.5l-3.2-3.2c-.4-.4-.4-1 0-1.4.4-.4 1-.4 1.4 0l3.2 3.2h.6c.4 0 .7-.1 1-.4l3.5-3.5-3.6-3.6a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E");
        background-size: 22px;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__icon {
        background-color: #f1f5f9;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M4 7v10M7 7v10M9 7v10M13 7v10M16 7v10M20 7v10'/%3E%3C/svg%3E");
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__icon {
        background-color: #f1f5f9;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E");
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-combined) .pay-method-card__icon {
        background-color: #f1f5f9;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='6' width='13' height='10' rx='1.8'/%3E%3Crect x='9' y='9' width='13' height='10' rx='1.8'/%3E%3C/svg%3E");
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__title {
        grid-area: title;
        margin: 0;
        padding: 0;
        font-size: 0.98rem;
        font-weight: 800;
        line-height: 1.2;
        color: #0f172a;
        text-align: left;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__sub {
        grid-area: sub;
        margin: 0;
        padding: 0;
        max-width: none;
        width: auto;
        font-size: 0.78rem;
        line-height: 1.3;
        color: #64748b;
        text-align: left;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__pill {
        display: inline-flex !important;
        grid-area: pill;
        align-items: center;
        align-self: center;
        margin: 0;
        padding: 2px 8px;
        border-radius: 999px;
        background: #dcfce7;
        color: #16a34a;
        font-size: 0;
        font-weight: 700;
        line-height: 1.2;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__pill::after {
        content: "Mais rápido";
        font-size: 0.64rem;
        font-weight: 700;
        color: #16a34a;
        letter-spacing: 0.01em;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__radio {
        grid-area: radio;
        position: relative;
        width: 20px;
        height: 20px;
        margin: 0;
        border: 2px solid #cbd5e1;
        border-radius: 50%;
        background: #fff;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio {
        border-color: #2563eb;
        background: #fff;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: 10px;
        height: 10px;
        border: 0;
        border-radius: 50%;
        background: #2563eb;
        transform: translate(-50%, -50%);
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo {
        grid-area: resumo;
        margin: 0;
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-resumo__title {
        margin: 0 0 0.85rem;
        padding: 0;
        font-size: 1.05rem;
        font-weight: 800;
        letter-spacing: -0.02em;
        text-transform: none;
        color: #0f172a;
        line-height: 1.25;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-resumo__list {
        margin: 0;
        padding: 0;
        list-style: none;
        font-size: 0.9rem;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-line1 {
        display: block;
        margin: 0 0 0.75rem;
        padding: 0;
        list-style: none;
        color: #334155;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt {
        display: flex;
        flex-direction: column;
        gap: 0.45rem;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__row {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 0.75rem;
        font-size: 0.92rem;
        line-height: 1.35;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__lbl {
        color: #64748b;
        font-weight: 500;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__val {
        color: #0f172a;
        font-weight: 600;
        font-variant-numeric: tabular-nums;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__now {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        margin-top: 0.25rem;
        padding: 0.85rem 1rem;
        border-radius: 12px;
        background: #eef5ff;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__now-lbl {
        color: #2563eb;
        font-size: 0.92rem;
        font-weight: 700;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__now-val {
        color: #2563eb;
        font-size: 1.35rem;
        font-weight: 800;
        letter-spacing: -0.03em;
        font-variant-numeric: tabular-nums;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-popup-note {
        display: flex;
        align-items: flex-start;
        gap: 0.55rem;
        margin: 0;
        padding: 0.75rem 0.85rem;
        list-style: none;
        border: 0;
        border-radius: 12px;
        background: #f8fafc;
        color: #64748b;
        font-size: 0.78rem;
        line-height: 1.4;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-popup-note::before {
        content: "i";
        flex: 0 0 22px;
        width: 22px;
        height: 22px;
        margin-top: 1px;
        border-radius: 50%;
        background: #94a3b8;
        color: #fff;
        font-size: 0.72rem;
        font-weight: 800;
        font-style: italic;
        line-height: 22px;
        text-align: center;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-popup-note[hidden] {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-pay-cta {
        margin: 0.15rem 0 0;
        padding: 0;
        text-align: stretch;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar,
      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.65rem;
        width: 100%;
        max-width: none;
        min-height: 52px;
        padding: 0.85rem 1.25rem;
        border: 0;
        border-radius: 14px;
        background: #2563eb;
        color: #fff;
        font-size: 0.95rem;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        box-shadow: none;
      }

      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora::before {
        content: "";
        width: 16px;
        height: 16px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
      }

      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora::after {
        content: "";
        width: 16px;
        height: 16px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 0.7rem;
        margin: 0.15rem 0 0;
        padding: 0.15rem 0 0;
        color: #64748b;
        font-size: 0.78rem;
        line-height: 1.35;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note__asaas {
        display: block;
        width: 92px;
        height: auto;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note__sep {
        display: block;
        width: 1px;
        height: 18px;
        background: #cbd5e1;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note__icon {
        display: inline-block;
        width: 14px;
        height: 14px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
      }
    }

    /* Identificação do cliente (#wizard-step-2) — mobile (espaçamento ref. foto) */
    @media (max-width: 767px) {
      #orc-form.layout-shell #wizard-step-2.wizard-step > .card,
      .layout-main #wizard-step-2.wizard-step > .card {
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: clip !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 16px !important;
        border: none !important;
        border-radius: 0 !important;
        background: #f5f7fb !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-2.wizard-step > .card > h2,
      .layout-main #wizard-step-2.wizard-step > .card > h2 {
        margin: 0 !important;
        padding: 16px 2.5rem 0 16px !important;
        border: 1px solid #e8ecf5 !important;
        border-bottom: none !important;
        border-radius: 18px 18px 0 0 !important;
        background: #ffffff !important;
        font-size: 0.92rem !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        color: #4f46e5 !important;
        line-height: 1.3 !important;
      }

      #orc-form.layout-shell #wizard-step-2.wizard-step > .card > h2::before,
      .layout-main #wizard-step-2.wizard-step > .card > h2::before {
        width: 1.2rem !important;
        height: 1.2rem !important;
      }

      #orc-form.layout-shell #wizard-step-2.wizard-step > .card > .hint,
      .layout-main #wizard-step-2.wizard-step > .card > .hint {
        margin: 0 !important;
        padding: 8px 16px 16px !important;
        border: 1px solid #e8ecf5 !important;
        border-top: none !important;
        border-bottom: 1px solid #e8ecf5 !important;
        background: #ffffff !important;
        font-size: 0.75rem !important;
        line-height: 1.45 !important;
        color: #6b7280 !important;
      }

      #wizard-step-2 .pl-auth-hub {
        margin: 0 0 16px !important;
        padding: 16px !important;
        border: 1px solid #e8ecf5 !important;
        border-top: none !important;
        border-radius: 0 0 18px 18px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05) !important;
      }

      #wizard-step-2 .pl-auth-hub:has(#step2-inline-forms:not([hidden])) {
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        margin-bottom: 0 !important;
      }

      #wizard-step-2 .pl-auth-hub:has(#step2-inline-forms:not([hidden])) .pl-auth-hub__tabs {
        margin-bottom: 16px !important;
        padding: 12px !important;
        border: 1px solid #e8ecf5 !important;
        border-radius: 18px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05) !important;
      }

      #wizard-step-2 .pl-auth-hub__panel:not([hidden]) {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
      }

      #wizard-step-2 .pl-auth-hub__panel[hidden],
      #wizard-step-2 #step2-inline-forms[hidden],
      #wizard-step-2 #pl-auth-create-choice[hidden] {
        display: none !important;
      }

      #wizard-step-2 .pl-auth-hub__tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        margin-bottom: 16px !important;
      }

      #wizard-step-2 .pl-auth-hub__tab {
        min-width: 0 !important;
        min-height: 0 !important;
        height: 44px !important;
        padding: 0 0.5rem !important;
        border: 1px solid #e8ecf5 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        color: #6b7280 !important;
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        text-align: center !important;
        box-shadow: none !important;
      }

      #wizard-step-2 .pl-auth-hub__tab.is-active {
        border-color: #6366f1 !important;
        background: #eef2ff !important;
        color: #4f46e5 !important;
      }

      #wizard-step-2 .pl-auth-choice-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        margin: 0 !important;
        align-items: stretch !important;
      }

      #wizard-step-2 .pl-auth-choice-btn {
        position: relative !important;
        min-width: 0 !important;
        min-height: 2.75rem !important;
        height: auto !important;
        padding: 10px 8px !important;
        border: 1px solid #e8ecf5 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 0 !important;
        box-shadow: none !important;
      }

      #wizard-step-2 .pl-auth-choice-btn.is-active {
        border-color: #2563eb !important;
        background: #f0f5ff !important;
        box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12) !important;
      }

      #wizard-step-2 .pl-auth-choice-btn__title {
        margin: 0 !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #1f2937 !important;
      }

      #wizard-step-2 .pl-auth-choice-btn__sub {
        display: none !important;
      }

      #wizard-step-2 .step2-inline-forms:not([hidden]) {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card {
        min-width: 0 !important;
        margin: 0 !important;
        padding: 16px !important;
        border: 1px solid #e8ecf5 !important;
        border-style: solid !important;
        border-radius: 18px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05) !important;
        box-sizing: border-box !important;
      }

      #wizard-step-2 .step2-inline-forms > .card > h2 {
        margin: 0 0 14px !important;
        padding: 0 0 12px !important;
        border: none !important;
        border-bottom: 1px solid #ede9fe !important;
        border-radius: 0 !important;
        background: transparent !important;
        font-size: 0.85rem !important;
        font-weight: 700 !important;
        color: #4f46e5 !important;
        letter-spacing: -0.01em !important;
        gap: 0.4rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card > h2::before {
        width: 1.1rem !important;
        height: 1.1rem !important;
      }

      #wizard-step-2 .step2-inline-forms > .card > .hint {
        margin: 0 0 12px !important;
        font-size: 0.7rem !important;
        line-height: 1.4 !important;
        color: #6b7280 !important;
      }

      #wizard-step-2 .step2-inline-forms label {
        display: block !important;
        margin: 0 0 6px !important;
        font-size: 0.74rem !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        color: #374151 !important;
      }

      #wizard-step-2 .step2-inline-forms .field {
        min-width: 0 !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms input[type="text"],
      #wizard-step-2 .step2-inline-forms input[type="email"],
      #wizard-step-2 .step2-inline-forms input[type="tel"],
      #wizard-step-2 .step2-inline-forms input[type="password"] {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        min-height: 44px !important;
        padding: 0 12px !important;
        border: 1px solid #e8ecf5 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        color: #1f2937 !important;
        font-size: 0.8125rem !important;
        line-height: 1.3 !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
      }

      #wizard-step-2 .step2-inline-forms input::placeholder {
        color: #9ca3af !important;
        font-size: 0.75rem !important;
      }

      #wizard-step-2 .reg-field-hint {
        margin: 6px 0 0 !important;
        font-size: 0.68rem !important;
        line-height: 1.35 !important;
        word-break: break-word !important;
      }

      #wizard-step-2 .reg-field-hint--warn {
        color: #d97706 !important;
      }

      #wizard-step-2 .reg-frete-summary {
        margin: 0 0 4px !important;
        padding: 10px 12px !important;
        border-radius: 12px !important;
        border: 1px solid #ddd6fe !important;
        background: #f5f3ff !important;
        color: #4f46e5 !important;
        font-size: 0.7rem !important;
        font-weight: 600 !important;
        line-height: 1.4 !important;
      }

      /* Dados: Nome+CPF | E-mail | WhatsApp | Senhas */
      #wizard-step-2 .step2-inline-forms > .card:first-child {
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:first-of-type {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:nth-of-type(2) {
        display: block !important;
        margin: 0 !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:last-of-type {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        margin: 0 !important;
      }

      /* Endereço: coluna com linhas 50/50 */
      #wizard-step-2 .step2-inline-forms > .card:last-child {
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
      }

      #wizard-step-2 .step2-inline-forms > .card:last-child > .grid.grid-2 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        margin: 0 !important;
      }

      html.is-help-mode #wizard-step-2.wizard-step > .card > .pl-calc-flow-help,
      html.is-help-mode .layout-main #wizard-step-2.wizard-step > .card > .pl-calc-flow-help {
        top: 16px !important;
        right: 16px !important;
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 0.72rem !important;
      }

      /* Mantém grade 2 colunas em telas estreitas */
      #wizard-step-2 .pl-auth-hub__tabs,
      #wizard-step-2 .pl-auth-choice-grid,
      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:first-of-type,
      #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:last-of-type,
      #wizard-step-2 .step2-inline-forms > .card:last-child > .grid.grid-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      }

      #orc-form.layout-shell #wizard-step-2 .step2-inline-forms > .card {
        padding: 16px !important;
        margin-bottom: 0 !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05) !important;
      }

      /* Login "Já tenho conta" — mobile */
      #wizard-step-2 #pl-auth-body-login.pl-auth-body-login:not([hidden]) {
        gap: 10px !important;
        margin-top: 0 !important;
        padding-bottom: 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-hero--wizard-login {
        padding: 14px 16px 6px !important;
        margin: 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-hero--wizard-login .login-modal-hero__title {
        font-size: 0.92rem !important;
        line-height: 1.3 !important;
        margin: 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-hero--wizard-login .login-modal-hero__sub {
        font-size: 0.72rem !important;
        margin: 4px 0 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .pl-login-inline-wrap {
        margin: 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-body {
        padding: 0 16px !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-switch {
        margin: 0 0 12px !important;
        gap: 10px !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-switch__btn {
        min-height: 40px !important;
        padding: 0 0.4rem !important;
        font-size: 0.72rem !important;
      }

      #wizard-step-2 #pl-auth-body-login .field {
        margin: 0 0 12px !important;
      }

      #wizard-step-2 #pl-auth-body-login .field label {
        margin: 0 0 6px !important;
        font-size: 0.74rem !important;
        font-weight: 600 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-input-wrap {
        position: relative !important;
        display: block !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-input-wrap__glyph {
        position: absolute !important;
        left: 12px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 2 !important;
        width: 18px !important;
        height: 18px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 0.82rem !important;
        line-height: 1 !important;
        color: #94a3b8 !important;
        pointer-events: none !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-input-wrap input[type="email"],
      #wizard-step-2 #pl-auth-body-login .login-input-wrap input[type="password"],
      #wizard-step-2 #pl-auth-body-login .login-input-wrap input[type="text"] {
        width: 100% !important;
        height: 44px !important;
        min-height: 44px !important;
        padding: 0 12px 0 40px !important;
        border: 1px solid #e8ecf5 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        font-size: 0.8125rem !important;
        line-height: 1.3 !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-input-wrap--password input {
        padding-right: 40px !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-input-wrap__toggle {
        position: absolute !important;
        right: 8px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        padding: 4px !important;
        border: 0 !important;
        background: transparent !important;
        font-size: 0.9rem !important;
        line-height: 1 !important;
        color: #94a3b8 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-aux-links--wizard-login {
        margin: 4px 0 0 !important;
        gap: 8px 10px !important;
        font-size: 0.7rem !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-card .modal-actions {
        margin: 10px 0 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .login-modal-card .modal-actions .btn-primary {
        min-height: 44px !important;
        padding: 0.65rem 1rem !important;
        font-size: 0.85rem !important;
        border-radius: 12px !important;
      }

      #wizard-step-2 #pl-auth-body-login #wiz-login-feedback:empty {
        display: none !important;
        margin: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
      }

      #wizard-step-2 #pl-auth-body-login .pl-auth-login-trust {
        margin: 0 16px 12px !important;
        padding: 0 !important;
        font-size: 0.68rem !important;
        line-height: 1.35 !important;
        gap: 0.35rem !important;
      }

      /* Pagamento (#wizard-step-4) — mobile (ref. mock imagem 3) */
      #wizard-step-4.wizard-step {
        padding: 12px 16px !important;
        background: #f5f7fb !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-4.wizard-step > .card,
      .layout-main #wizard-step-4.wizard-step > .card {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        max-width: 420px !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 auto !important;
        padding: 18px 16px 16px !important;
        border: 1px solid #e8ecf5 !important;
        border-radius: 20px !important;
        background: #ffffff !important;
        box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06) !important;
        box-sizing: border-box !important;
        overflow-x: clip !important;
      }

      #wizard-step-4 > .card > h2 {
        order: 1 !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0 !important;
        padding: 0 2rem 0 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        font-size: 1.15rem !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.2 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 > .card > h2::before {
        content: "" !important;
        flex-shrink: 0 !important;
        width: 40px !important;
        height: 40px !important;
        border-radius: 50% !important;
        background: #eef2ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 7V4a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v3'/%3E%3Cpath d='M3 7h18v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7z'/%3E%3Cpath d='M16 11a2 2 0 1 1-4 0 2 2 0 0 1 4 0z'/%3E%3C/svg%3E") center / 20px no-repeat !important;
      }

      html.is-help-mode #wizard-step-4.wizard-step > .card > .pl-calc-flow-help,
      html.is-help-mode .layout-main #wizard-step-4.wizard-step > .card > .pl-calc-flow-help {
        top: 2px !important;
        right: 2px !important;
        width: 1.5rem !important;
        height: 1.5rem !important;
        border-radius: 50% !important;
        border-color: #e5eaf3 !important;
        color: #94a3b8 !important;
        font-size: 0.72rem !important;
      }

      #wizard-step-4 .wizard-step4-head-desc {
        order: 2 !important;
        display: block !important;
        margin: -4px 0 0 !important;
        padding: 0 2rem 0 50px !important;
        border: none !important;
        background: transparent !important;
        font-size: 0.74rem !important;
        line-height: 1.4 !important;
        color: #64748b !important;
      }

      #wizard-step-4 .wizard-step4-security-banner {
        order: 3 !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0 !important;
        padding: 12px 14px !important;
        border: 1px solid #e0e7ff !important;
        border-radius: 16px !important;
        background: #f8faff !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__icon {
        flex-shrink: 0 !important;
        width: 34px !important;
        height: 34px !important;
        border-radius: 50% !important;
        background: #eef2ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / 18px no-repeat !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__text {
        flex: 1 1 auto !important;
        min-width: 0 !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__title {
        display: block !important;
        margin: 0 0 1px !important;
        font-size: 0.78rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        color: #2f6bff !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__desc {
        display: block !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__desc::after {
        content: "Seus dados protegidos com criptografia avançada." !important;
        display: block !important;
        font-size: 0.68rem !important;
        line-height: 1.35 !important;
        color: #64748b !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__lock {
        flex-shrink: 0 !important;
        width: 18px !important;
        height: 18px !important;
        opacity: 0.85 !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      /* Oculta bloco de valores longos — reduz ruído visual no mobile */
      #wizard-step-4 .wizard-step4-intro {
        order: 4 !important;
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
      }

      #wizard-step-4 #pay-asaas-status,
      #wizard-step-4 #wizard-step4-loading-line,
      #wizard-step-4 #wizard-step4-post-checkout-banner {
        order: 4 !important;
        margin: 0 !important;
      }

      #wizard-step-4 .wizard-step4-section-title {
        order: 5 !important;
        margin: 4px 0 0 !important;
        font-size: 0.62rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.12em !important;
        text-transform: uppercase !important;
        color: #94a3b8 !important;
      }

      #wizard-step-4 .pay-methods-row {
        order: 6 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        margin: 0 !important;
        align-items: stretch !important;
      }

      #wizard-step-4 #pay-combined-panel {
        order: 7 !important;
      }

      #wizard-step-4 #pay-cc-install-row {
        order: 8 !important;
      }

      #wizard-step-4 #pay-cc-panel {
        order: 9 !important;
      }

      #wizard-step-4 .pay-method-card {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        min-height: 158px !important;
        height: auto !important;
        padding: 14px 14px 12px !important;
        margin: 0 !important;
        border: 1px solid #e5eaf3 !important;
        border-radius: 18px !important;
        background: #ffffff !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
        text-align: left !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 .pay-method-card:has(input:checked) {
        border: 2px solid #2f6bff !important;
        background: #f8fbff !important;
        box-shadow: 0 0 0 1px rgba(47, 107, 255, 0.1) !important;
      }

      #wizard-step-4 .pay-method-card__icon {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 34px !important;
        height: 34px !important;
        margin: 0 0 8px !important;
        font-size: 1.35rem !important;
        line-height: 1 !important;
      }

      #wizard-step-4 .pay-method-card__icon--pix {
        font-size: 0.82rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.03em !important;
        color: #32bcad !important;
      }

      #wizard-step-4 .pay-method-card__title {
        display: block !important;
        margin: 0 0 3px !important;
        padding-right: 1.25rem !important;
        font-size: 0.84rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: #1e293b !important;
        text-align: left !important;
        max-width: none !important;
      }

      #wizard-step-4 .pay-method-card__sub {
        display: block !important;
        margin: 0 !important;
        padding-right: 0.25rem !important;
        font-size: 0.66rem !important;
        line-height: 1.35 !important;
        color: #64748b !important;
        text-align: left !important;
        max-width: none !important;
        width: auto !important;
        flex-basis: auto !important;
      }

      #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__title {
        font-size: 0 !important;
      }

      #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__title::after {
        content: "Boleto bancário" !important;
        font-size: 0.84rem !important;
        font-weight: 700 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__sub {
        font-size: 0 !important;
      }

      #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__sub::after {
        content: "Compensação de 1 a 3 dias úteis" !important;
        font-size: 0.66rem !important;
        line-height: 1.35 !important;
        color: #64748b !important;
      }

      #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__sub {
        font-size: 0 !important;
        line-height: 1.35 !important;
      }

      #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__sub::after {
        content: "Até 12x no cartão\A 100% do total" !important;
        white-space: pre-line !important;
        font-size: 0.66rem !important;
        color: #64748b !important;
      }

      #wizard-step-4 .pay-method-card--combined .pay-method-card__title {
        font-size: 0.78rem !important;
        line-height: 1.2 !important;
      }

      #wizard-step-4 .pay-method-card--combined .pay-method-card__sub {
        font-size: 0 !important;
      }

      #wizard-step-4 .pay-method-card--combined .pay-method-card__sub::after {
        content: "Use duas formas de pagamento\A Divida o total do pedido" !important;
        white-space: pre-line !important;
        font-size: 0.64rem !important;
        line-height: 1.35 !important;
        color: #64748b !important;
      }

      #wizard-step-4 .pay-method-card__pill {
        display: inline-flex !important;
        align-items: center !important;
        align-self: flex-start !important;
        margin-top: auto !important;
        padding: 3px 7px !important;
        border-radius: 999px !important;
        background: #ecfdf5 !important;
        color: #12b981 !important;
        font-size: 0 !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        max-width: 100% !important;
      }

      #wizard-step-4 .pay-method-card__pill::after {
        content: "+ Rápido e aprovado na hora" !important;
        font-size: 0.58rem !important;
        font-weight: 700 !important;
        color: #12b981 !important;
      }

      #wizard-step-4 .pay-method-card__radio {
        position: absolute !important;
        top: 12px !important;
        right: 12px !important;
        bottom: auto !important;
        width: 1.1rem !important;
        height: 1.1rem !important;
        border: 2px solid #d1d9e6 !important;
        background: #ffffff !important;
      }

      #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio {
        border-color: #2f6bff !important;
        background: #2f6bff !important;
      }

      #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio::after {
        left: 50% !important;
        top: 50% !important;
        width: 0.24rem !important;
        height: 0.42rem !important;
        margin: 0 !important;
        transform: translate(-50%, -55%) rotate(45deg) !important;
      }

      #wizard-step-4 .wizard-step4-trust-grid {
        order: 10 !important;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 6px !important;
        margin: 0 !important;
        padding: 12px 8px !important;
        border-radius: 14px !important;
        background: #f5f7fb !important;
      }

      #wizard-step-4 .wizard-step4-trust-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 4px !important;
        padding: 0 !important;
        text-align: center !important;
        min-width: 0 !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__icon {
        width: 22px !important;
        height: 22px !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        background-size: 18px !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__icon--shield {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E") !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__icon--headphones {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 18v-6a9 9 0 0 1 18 0v6'/%3E%3Cpath d='M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3v5zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3v5z'/%3E%3C/svg%3E") !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__icon--badge {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l2.4 4.9 5.4.8-3.9 3.8.9 5.4L12 14.8 7.2 17l.9-5.4L4.2 7.7l5.4-.8L12 2z'/%3E%3C/svg%3E") !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__icon--lock {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__title {
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 .wizard-step4-trust-item:nth-child(1) .wizard-step4-trust-item__title::after {
        content: "Compra segura" !important;
      }

      #wizard-step-4 .wizard-step4-trust-item:nth-child(2) .wizard-step4-trust-item__title::after {
        content: "Suporte dedicado" !important;
      }

      #wizard-step-4 .wizard-step4-trust-item:nth-child(3) .wizard-step4-trust-item__title::after {
        content: "Transparência" !important;
      }

      #wizard-step-4 .wizard-step4-trust-item:nth-child(4) .wizard-step4-trust-item__title::after {
        content: "Privacidade garantida" !important;
      }

      #wizard-step-4 .wizard-step4-trust-item__title::after {
        display: block !important;
        font-size: 0.58rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 .pay-combined-panel {
        margin: 0 !important;
        padding: 14px !important;
        border: 1px solid #e5eaf3 !important;
        border-radius: 16px !important;
        background: #ffffff !important;
      }

      /*
       * MOBILE ONLY (≤767px) — Cartão de crédito (Etapa 4).
       * Raízes: #pay-cc-install-row + #pay-cc-panel.
       * Não altera desktop, tablet, PIX, Boleto ou Combinado.
       */
      #wizard-step-4 #pay-cc-install-row:not([hidden]) {
        order: 8 !important;
        display: block !important;
        margin: 0 0 14px !important;
        padding: 16px !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) .label-like {
        display: block !important;
        margin: 0 0 10px !important;
        padding: 0 !important;
        font-size: 0.9375rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        letter-spacing: 0 !important;
        color: #172033 !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) select#installments {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 52px !important;
        min-height: 52px !important;
        margin: 0 !important;
        padding: 0 14px 0 44px !important;
        border: 1px solid #d9e2ef !important;
        border-radius: 11px !important;
        background-color: #ffffff !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: 14px center !important;
        background-size: 20px !important;
        font-size: 0.9375rem !important;
        font-weight: 500 !important;
        color: #172033 !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) select#installments:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08) !important;
        outline: none !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) #pay-install-summary {
        margin: 8px 0 0 !important;
        font-size: 0.75rem !important;
        line-height: 1.35 !important;
        color: #64748b !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) #pay-install-summary:empty {
        display: none !important;
        margin: 0 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) {
        order: 9 !important;
        display: block !important;
        margin: 0 0 14px !important;
        padding: 16px !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
      }

      /* Cabeçalho "Dados do cartão" */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:first-of-type {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        font-size: 1.25rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:first-of-type::before {
        content: "" !important;
        flex: 0 0 38px !important;
        width: 38px !important;
        height: 38px !important;
        border-radius: 10px !important;
        background: #f1f5ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E") center / 20px no-repeat !important;
      }

      /* Grid 1 — Nome/Número full; Validade (MM / AAAA) + CVV na mesma linha */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type {
        display: grid !important;
        grid-template-columns:
          minmax(0, 1fr)
          0.75rem
          minmax(0, 1fr)
          minmax(110px, 0.85fr) !important;
        column-gap: 8px !important;
        row-gap: 14px !important;
        align-items: end !important;
        margin: 0 !important;
        width: 100% !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field,
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field-span2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-end !important;
        gap: 7px !important;
        margin: 0 !important;
        min-width: 0 !important;
        max-width: 100% !important;
        width: auto !important;
        position: relative !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-holderName) {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-number) {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryMonth) {
        grid-column: 1 / 2 !important;
        grid-row: 3 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryMonth)::before {
        content: "Validade" !important;
        display: block !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryMonth)::after {
        content: none !important;
        display: none !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryYear) {
        grid-column: 3 / 4 !important;
        grid-row: 3 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryYear)::before {
        content: "/" !important;
        position: absolute !important;
        left: calc(-0.75rem - 8px) !important;
        bottom: 0 !important;
        width: 0.75rem !important;
        height: 52px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 1rem !important;
        font-weight: 600 !important;
        line-height: 1 !important;
        color: #94a3b8 !important;
        pointer-events: none !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-ccv) {
        grid-column: 4 / 5 !important;
        grid-row: 3 !important;
      }

      /* Titular da cobrança */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:nth-of-type(2),
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3[style] {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 20px 0 16px !important;
        padding: 18px 0 0 !important;
        border: none !important;
        border-top: 1px solid #e8edf4 !important;
        background: transparent !important;
        font-size: 1.1875rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:nth-of-type(2)::before,
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3[style]::before {
        content: "" !important;
        flex: 0 0 38px !important;
        width: 38px !important;
        height: 38px !important;
        border-radius: 10px !important;
        background: #f1f5ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") center / 20px no-repeat !important;
      }

      /* Grid 2 — Nome|E-mail, CPF|CEP, Número|Telefone */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 12px !important;
        row-gap: 14px !important;
        margin: 0 !important;
        width: 100% !important;
        align-items: end !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-end !important;
        gap: 7px !important;
        margin: 0 !important;
        min-width: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-name),
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-addressNumber),
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-phone) {
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-name)::before {
        content: "Nome" !important;
        display: block !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-addressNumber)::before {
        content: "Número" !important;
        display: block !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-phone)::before {
        content: "Telefone (DDD)" !important;
        display: block !important;
        font-size: 0.8125rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-name) {
        grid-column: 1 / 2 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-email) {
        grid-column: 2 / 3 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-cpf) {
        grid-column: 1 / 2 !important;
        grid-row: 2 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-cep) {
        grid-column: 2 / 3 !important;
        grid-row: 2 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-addressNumber) {
        grid-column: 1 / 2 !important;
        grid-row: 3 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-phone) {
        grid-column: 2 / 3 !important;
        grid-row: 3 !important;
      }

      /* Inputs unificados (somente dentro do painel cartão) */
      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 52px !important;
        min-height: 52px !important;
        margin: 0 !important;
        padding: 0 14px !important;
        border: 1px solid #d9e2ef !important;
        border-radius: 11px !important;
        background: #ffffff !important;
        font-size: 0.9375rem !important;
        font-weight: 400 !important;
        line-height: 1.3 !important;
        color: #172033 !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input#cc-number {
        letter-spacing: 0.03em !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input::placeholder {
        color: #94a3b8 !important;
        opacity: 1 !important;
        font-size: 0.875rem !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08) !important;
        outline: none !important;
        background: #ffffff !important;
      }

      #wizard-step-4 .wizard-step4-resumo {
        order: 11 !important;
        display: none !important;
      }

      /* Resumo compacto — só com cartão ativo */
      #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        margin: 0 0 14px !important;
        padding: 0 14px !important;
        min-height: 56px !important;
        height: auto !important;
        border: 1px solid #dde7fb !important;
        border-radius: 10px !important;
        background: #f5f8ff !important;
        box-sizing: border-box !important;
        text-align: left !important;
      }

      #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo .wizard-step4-resumo__title {
        flex: 1 1 auto !important;
        margin: 0 !important;
        padding: 0 0 0 28px !important;
        border: none !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231554d1' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cline x1='16' y1='13' x2='8' y2='13'/%3E%3Cline x1='16' y1='17' x2='8' y2='17'/%3E%3Cpolyline points='10 9 9 9 8 9'/%3E%3C/svg%3E") left center / 18px no-repeat !important;
        font-size: 0.875rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        white-space: nowrap !important;
        color: #1554d1 !important;
      }

      #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo .wizard-step4-resumo__list {
        display: none !important;
      }

      #wizard-step-4 .wizard-step4-resumo::before,
      #wizard-step-4 .wizard-step4-resumo::after {
        content: none !important;
        display: none !important;
      }

      #wizard-step-4 .wizard-step4-pay-cta {
        order: 12 !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
      }

      #wizard-step-4 .wizard-step4-btn-pagar {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 58px !important;
        padding: 11px 16px 9px !important;
        border: none !important;
        border-radius: 16px !important;
        background: #2f6bff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") calc(50% - 3.8rem) 17px / 13px no-repeat !important;
        color: #ffffff !important;
        font-size: 0.84rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.05em !important;
        text-transform: uppercase !important;
        box-shadow: 0 8px 24px rgba(47, 107, 255, 0.28) !important;
      }

      #wizard-step-4 .wizard-step4-btn-pagar::after {
        content: "Você será redirecionado para um ambiente seguro." !important;
        display: block !important;
        font-size: 0.64rem !important;
        font-weight: 500 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        line-height: 1.25 !important;
        color: rgba(255, 255, 255, 0.9) !important;
      }

      #wizard-step-4 .wizard-step4-footer-note {
        order: 13 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 5px !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
        text-align: center !important;
      }

      #wizard-step-4 .wizard-step4-footer-note::after {
        content: "Seus dados protegidos com segurança" !important;
        font-size: 0.64rem !important;
        line-height: 1.3 !important;
        color: #94a3b8 !important;
      }

      #wizard-step-4 .wizard-step4-footer-note__icon {
        flex-shrink: 0 !important;
        width: 13px !important;
        height: 13px !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6BFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-4 #pay-asaas-status:not([hidden]),
      #wizard-step-4 #wizard-step4-loading-line:not([hidden]),
      #wizard-step-4 #wizard-step4-post-checkout-banner:not([hidden]) {
        margin: 0 !important;
        padding: 12px 14px !important;
        border-radius: 14px !important;
      }

      #wizard-step-4 #wizard-err-4 {
        order: 14 !important;
      }

      #wizard-step-4 #wizard-err-4:not([hidden]) {
        margin: 0 !important;
      }
    }

    /*
     * DESKTOP ONLY (≥1024px) — Etapa 4 Pagamento (#wizard-step-4)
     * Correção: alinhamento + colapso de alturas/vazios. Isolado do mobile.
     */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #wizard-step-4.wizard-step > .card,
      .layout-main #wizard-step-4.wizard-step > .card,
      #orc-form.layout-shell #wizard-step-4.wizard-step > .card {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(15rem, 17rem) !important;
        grid-auto-rows: min-content !important;
        align-items: start !important;
        justify-items: stretch !important;
        column-gap: 0.75rem !important;
        row-gap: 0.75rem !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 1rem 1.1rem !important;
        border: 1px solid #e8edf4 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
        box-sizing: border-box !important;
        min-height: 0 !important;
        height: auto !important;
      }

      #wizard-step-4 > .card > h2,
      .layout-main #wizard-step-4 > .card > h2 {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.55rem !important;
        margin: 0 !important;
        padding: 0 2.25rem 0 0 !important;
        border: none !important;
        background: transparent !important;
        font-size: 1.15rem !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
      }

      #wizard-step-4 > .card > h2::before {
        content: "4" !important;
        flex-shrink: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 1.85rem !important;
        height: 1.85rem !important;
        border-radius: 50% !important;
        background: #2563eb !important;
        color: #fff !important;
        font-size: 0.85rem !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        box-shadow: none !important;
      }

      #wizard-step-4 .wizard-step4-head-desc,
      #wizard-step-4 .wizard-step4-trust-grid {
        display: none !important;
      }

      #wizard-step-4 .pl-calc-flow-help,
      #wizard-step-4 > .card > .pl-calc-flow-help {
        grid-column: 1 / -1 !important;
        position: absolute !important;
      }

      /* Linha 2: mensagem/valores | segurança — mesma altura natural */
      #wizard-step-4 #wizard-step4-intro {
        grid-column: 1 !important;
        grid-row: 2 !important;
        display: block !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0.65rem 0.85rem !important;
        border: 1px solid #e8edf4 !important;
        border-radius: 10px !important;
        background: #f8fafc !important;
        box-shadow: none !important;
        font-size: 0.82rem !important;
        line-height: 1.4 !important;
        color: #475569 !important;
        min-height: 0 !important;
        height: auto !important;
        align-self: stretch !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #wizard-step4-intro strong {
        color: #2563eb !important;
        font-weight: 800 !important;
        font-variant-numeric: tabular-nums !important;
      }

      #wizard-step-4 #wizard-step4-intro:empty {
        display: none !important;
      }

      #wizard-step-4 .wizard-step4-security-banner {
        grid-column: 2 !important;
        grid-row: 2 !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.5rem !important;
        margin: 0 !important;
        padding: 0.65rem 0.75rem !important;
        border: 1px solid #e8edf4 !important;
        border-radius: 10px !important;
        background: #f8fafc !important;
        min-height: 0 !important;
        height: auto !important;
        max-width: none !important;
        width: auto !important;
        align-self: stretch !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 > .card:has(#wizard-step4-intro:empty) .wizard-step4-security-banner {
        grid-column: 1 / -1 !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__icon {
        flex-shrink: 0 !important;
        width: 1.35rem !important;
        height: 1.35rem !important;
        border-radius: 50% !important;
        background: #dcfce7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / 12px no-repeat !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__text {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.1rem !important;
        min-width: 0 !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__title {
        font-size: 0.78rem !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        line-height: 1.2 !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__desc {
        font-size: 0.72rem !important;
        line-height: 1.25 !important;
        color: #64748b !important;
      }

      #wizard-step-4 .wizard-step4-security-banner__lock {
        display: none !important;
      }

      #wizard-step-4 #pay-asaas-status,
      #wizard-step-4 #wizard-step4-loading-line,
      #wizard-step-4 #wizard-step4-post-checkout-banner,
      #wizard-step-4 .wizard-step4-section-title,
      #wizard-step-4 .pay-methods-row,
      #wizard-step-4 #pay-combined-panel,
      #wizard-step-4 #pay-cc-install-row,
      #wizard-step-4 #pay-cc-panel,
      #wizard-step-4 #wizard-step4-resumo,
      #wizard-step-4 #wizard-step4-pay-cta,
      #wizard-step-4 .wizard-step4-footer-note,
      #wizard-step-4 #wizard-err-4 {
        grid-column: 1 / -1 !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 .wizard-step4-section-title {
        display: block !important;
        margin: 0.15rem 0 0 !important;
        padding: 0 !important;
        font-size: 0.65rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.1em !important;
        text-transform: uppercase !important;
        color: #94a3b8 !important;
      }

      #wizard-step-4 .pay-methods-row,
      #orc-form.layout-shell #wizard-step-4 .pay-methods-row {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        margin: 0 !important;
        align-items: stretch !important;
      }

      #wizard-step-4 .pay-method-card,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.2rem !important;
        min-height: 10rem !important;
        height: auto !important;
        margin: 0 !important;
        padding: 1rem 0.65rem 0.9rem !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        text-align: center !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 .pay-method-card:has(input:checked),
      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked) {
        border-color: #2563eb !important;
        background: #f8fbff !important;
        box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12) !important;
      }

      #wizard-step-4 .pay-method-card__icon,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card__icon {
        width: 2.25rem !important;
        height: 2.25rem !important;
        margin: 0.15rem 0 0.35rem !important;
        font-size: 1.15rem !important;
        flex-shrink: 0 !important;
      }

      #wizard-step-4 .pay-method-card__title,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card__title {
        margin: 0 !important;
        min-height: 2.4em !important;
        font-size: 0.88rem !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        line-height: 1.2 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
      }

      #wizard-step-4 .pay-method-card__sub,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card__sub {
        margin: 0 !important;
        max-width: 11rem !important;
        font-size: 0.7rem !important;
        line-height: 1.3 !important;
        color: #64748b !important;
      }

      #wizard-step-4 .pay-method-card__pill {
        display: none !important;
      }

      #wizard-step-4 .pay-method-card__radio {
        position: absolute !important;
        top: 0.55rem !important;
        right: 0.55rem !important;
        width: 1rem !important;
        height: 1rem !important;
        border: 2px solid #cbd5e1 !important;
        border-radius: 50% !important;
        background: #fff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio {
        border-color: #2563eb !important;
        background: #2563eb !important;
      }

      #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        width: 0.22rem !important;
        height: 0.4rem !important;
        margin: 0 !important;
        border: solid #fff !important;
        border-width: 0 2px 2px 0 !important;
        transform: translate(-50%, -55%) rotate(45deg) !important;
        box-sizing: border-box !important;
      }

      /* RESUMO — block puro: altura = conteúdo. Sem flex-grow / colunas vazias. */
      #wizard-step-4 #wizard-step4-resumo,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-resumo,
      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo {
        display: block !important;
        flex: none !important;
        flex-grow: 0 !important;
        align-self: start !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0.85rem 1rem !important;
        border: 1px solid #e8edf4 !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
      }

      #wizard-step-4 .wizard-step4-resumo__title {
        display: block !important;
        margin: 0 0 0.55rem !important;
        padding: 0 !important;
        font-size: 0.65rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.1em !important;
        text-transform: uppercase !important;
        color: #94a3b8 !important;
      }

      #wizard-step-4 .wizard-step4-resumo__list {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        flex: none !important;
        min-height: 0 !important;
        height: auto !important;
      }

      #wizard-step-4 #wizard-step4-resumo-line1 {
        display: block !important;
        width: 100% !important;
        margin: 0 0 0.5rem !important;
        padding: 0 !important;
        list-style: none !important;
        font-size: 0.86rem !important;
        line-height: 1.4 !important;
        color: #334155 !important;
        font-variant-numeric: tabular-nums !important;
        flex: none !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #wizard-step-4 #wizard-step4-resumo-line1:empty {
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
        height: 0 !important;
      }

      /* Asaas = faixa horizontal full-width, altura natural do texto */
      #wizard-step-4 #wizard-step4-resumo-popup-note {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0.55rem 0.8rem !important;
        list-style: none !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 8px !important;
        background: #f8fafc !important;
        font-size: 0.78rem !important;
        line-height: 1.4 !important;
        color: #64748b !important;
        box-sizing: border-box !important;
        flex: none !important;
        flex-grow: 0 !important;
        align-self: auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
      }

      #wizard-step-4 #wizard-step4-resumo-popup-note[hidden] {
        display: none !important;
      }

      #wizard-step-4 #wizard-step4-pay-cta,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-pay-cta {
        margin: 0.35rem 0 0 !important;
        padding: 0 !important;
      }

      #wizard-step-4 .wizard-step4-btn-pagar,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.45rem !important;
        width: 100% !important;
        min-height: 60px !important;
        height: auto !important;
        max-height: none !important;
        padding: 0.75rem 1.15rem !important;
        border: none !important;
        border-radius: 12px !important;
        background: #2563eb !important;
        color: #fff !important;
        font-size: 0.95rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.03em !important;
        text-transform: uppercase !important;
        box-shadow: 0 6px 16px rgba(37, 99, 235, 0.22) !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 .wizard-step4-btn-pagar:hover {
        background: #1d4ed8 !important;
      }

      #wizard-step-4 .wizard-step4-btn-pagar::before {
        content: "" !important;
        display: inline-block !important;
        width: 0.95rem !important;
        height: 0.95rem !important;
        flex-shrink: 0 !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-4 .wizard-step4-btn-pagar::after {
        content: none !important;
        display: none !important;
      }

      #wizard-step-4 .wizard-step4-footer-note {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.35rem !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0.72rem !important;
        line-height: 1.3 !important;
        color: #94a3b8 !important;
      }

      #wizard-step-4 .wizard-step4-footer-note__icon {
        flex-shrink: 0 !important;
        width: 0.8rem !important;
        height: 0.8rem !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]),
      #wizard-step-4 #pay-cc-install-row:not([hidden]),
      #wizard-step-4 #pay-cc-panel:not([hidden]),
      #wizard-step-4 #pay-asaas-status:not([hidden]),
      #wizard-step-4 #wizard-step4-loading-line:not([hidden]),
      #wizard-step-4 #wizard-step4-post-checkout-banner:not([hidden]) {
        margin: 0 !important;
        height: auto !important;
        min-height: 0 !important;
      }
    }

    /* DESKTOP ONLY — etapa 4 pagamento (layout ref. Asaas). Vence o bloco desktop anterior. */
    @media (min-width: 1024px) {
      #orc-form.layout-shell #wizard-step-4.wizard-step > .card,
      .layout-main #wizard-step-4.wizard-step > .card,
      #orc-form.layout-shell #wizard-step-4 > .card {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: none !important;
        grid-auto-rows: auto !important;
        align-items: stretch !important;
        justify-items: stretch !important;
        gap: 0.9rem !important;
        column-gap: 0 !important;
        row-gap: 0.9rem !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 1.65rem 1.65rem 1.25rem !important;
        border: 1px solid #eef2f7 !important;
        border-radius: 24px !important;
        background: #ffffff !important;
        box-shadow: 0 8px 32px rgba(15, 23, 42, 0.06) !important;
        box-sizing: border-box !important;
        min-height: 0 !important;
        height: auto !important;
      }

      #orc-form.layout-shell #wizard-step-4.wizard-step > .card > h2,
      #orc-form.layout-shell #wizard-step-4 > .card > h2,
      .layout-main #wizard-step-4 > .card > h2 {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-calc-flow-help,
      #orc-form.layout-shell #wizard-step-4 > .card > .pl-calc-flow-help {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-intro,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-intro,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-trust-grid {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-pay-desk-split {
        display: grid !important;
        grid-template-columns: minmax(0, 1.22fr) minmax(268px, 0.78fr) !important;
        grid-template-areas:
          "head secure"
          "methods resumo" !important;
        column-gap: 1.35rem !important;
        row-gap: 0.85rem !important;
        align-items: start !important;
        width: 100% !important;
        max-width: 100% !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-pay-desk-head {
        display: grid !important;
        grid-template-columns: 40px minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
        column-gap: 12px !important;
        row-gap: 4px !important;
        align-items: start !important;
        align-self: start !important;
        grid-area: head !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        padding: 0 !important;
        margin: 0 !important;
        width: auto !important;
        min-height: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-pay-desk-head::before {
        content: "" !important;
        grid-column: 1 !important;
        grid-row: 1 / 3 !important;
        width: 40px !important;
        height: 40px !important;
        align-self: center !important;
        border-radius: 12px !important;
        background: #2563eb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E") center / 18px no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-section-title {
        display: block !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-items: unset !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 1.22rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.03em !important;
        text-transform: none !important;
        color: #0f172a !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-section-title::before {
        content: none !important;
        display: none !important;
        flex: none !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-head-desc {
        display: block !important;
        grid-column: 2 !important;
        grid-row: 2 !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        color: transparent !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-head-desc::after {
        content: "Escolha a opção que melhor se adapta a você." !important;
        display: block !important;
        font-size: 0.86rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        color: #64748b !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner {
        display: flex !important;
        flex-direction: row !important;
        grid-area: secure !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-items: center !important;
        align-self: start !important;
        gap: 0.65rem !important;
        margin: 0 !important;
        padding: 0.55rem 1rem !important;
        border: 0 !important;
        border-radius: 14px !important;
        background: #ecfdf5 !important;
        min-height: 0 !important;
        height: auto !important;
        max-width: none !important;
        width: auto !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__icon {
        flex: 0 0 32px !important;
        flex-shrink: 0 !important;
        width: 32px !important;
        height: 32px !important;
        border-radius: 50% !important;
        background: #22c55e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2.2 2.2 4.3-4.4'/%3E%3C/svg%3E") center / 18px no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__title {
        display: block !important;
        margin: 0 0 2px !important;
        font-size: 0.88rem !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
        color: #14532d !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__desc {
        display: block !important;
        font-size: 0.75rem !important;
        line-height: 1.35 !important;
        color: #3f6b52 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__desc::after {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-security-banner__lock {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-methods-row,
      #orc-form.layout-shell #wizard-step-4 #wizard-step-4 .pay-methods-row {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: none !important;
        grid-area: methods !important;
        grid-column: 1 !important;
        grid-row: 2 !important;
        gap: 0.65rem !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card.pay-method-card--combined {
        position: relative !important;
        display: grid !important;
        flex-direction: unset !important;
        grid-template-columns: 44px max-content max-content minmax(0, 1fr) 20px !important;
        grid-template-areas:
          "icon title pill . radio"
          "icon sub sub sub radio" !important;
        align-items: center !important;
        justify-content: stretch !important;
        column-gap: 0.75rem !important;
        row-gap: 0.12rem !important;
        gap: 0.12rem 0.75rem !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0.85rem 1rem !important;
        border: 1.5px solid #e5e7eb !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        text-align: left !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:not(:has(.pay-method-card__pill)) {
        grid-template-columns: 44px minmax(0, 1fr) 20px !important;
        grid-template-areas:
          "icon title radio"
          "icon sub radio" !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked),
      #orc-form.layout-shell #wizard-step-4 .pay-method-card.pay-method-card--combined:has(input:checked) {
        border-color: #93c5fd !important;
        background: #f4f9ff !important;
        box-shadow: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__icon {
        grid-area: icon !important;
        width: 40px !important;
        height: 40px !important;
        margin: 0 !important;
        border-radius: 12px !important;
        font-size: 0 !important;
        color: transparent !important;
        flex-shrink: 0 !important;
        background-color: #f1f5f9 !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 22px !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-pix) .pay-method-card__icon,
      #orc-form.layout-shell #wizard-step-4 .pay-method-card__icon--pix {
        background-color: #e8fbf6 !important;
        background-image: url("/assets/img/mobile/wizard/pix-logo.svg") !important;
        background-size: 22px 22px !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__icon {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M4 7v10M7 7v10M9 7v10M13 7v10M16 7v10M20 7v10'/%3E%3C/svg%3E") !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__icon {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E") !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(#pay-combined) .pay-method-card__icon {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='6' width='13' height='10' rx='1.8'/%3E%3Crect x='9' y='9' width='13' height='10' rx='1.8'/%3E%3C/svg%3E") !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__title {
        grid-area: title !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
        font-size: 0.98rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        text-align: left !important;
        align-items: center !important;
        justify-content: flex-start !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__sub {
        grid-area: sub !important;
        margin: 0 !important;
        padding: 0 !important;
        max-width: none !important;
        width: auto !important;
        font-size: 0.78rem !important;
        line-height: 1.3 !important;
        color: #64748b !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__title {
        justify-self: start !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__pill {
        display: inline-flex !important;
        grid-area: pill !important;
        align-items: center !important;
        align-self: center !important;
        justify-self: start !important;
        margin: 0 0 0 0.15rem !important;
        padding: 2px 8px !important;
        border-radius: 999px !important;
        background: #dcfce7 !important;
        color: #16a34a !important;
        font-size: 0 !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__pill::after {
        content: "Mais rápido" !important;
        font-size: 0.64rem !important;
        font-weight: 700 !important;
        color: #16a34a !important;
        letter-spacing: 0.01em !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card__radio {
        grid-area: radio !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        width: 20px !important;
        height: 20px !important;
        margin: 0 !important;
        border: 2px solid #cbd5e1 !important;
        border-radius: 50% !important;
        background: #fff !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio {
        border-color: #2563eb !important;
        background: #fff !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        width: 10px !important;
        height: 10px !important;
        margin: 0 !important;
        border: 0 !important;
        border-width: 0 !important;
        border-radius: 50% !important;
        background: #2563eb !important;
        transform: translate(-50%, -50%) !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-resumo {
        display: block !important;
        grid-area: resumo !important;
        grid-column: 2 !important;
        grid-row: 2 !important;
        flex: none !important;
        align-self: start !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0.15rem 0 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-resumo__title {
        display: block !important;
        margin: 0 0 0.9rem !important;
        padding: 0 !important;
        font-size: 1.05rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.02em !important;
        text-transform: none !important;
        color: #0f172a !important;
        line-height: 1.25 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-resumo__list {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.75rem !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-line1 {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        font-size: 0.92rem !important;
        line-height: 1.4 !important;
        color: #334155 !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.5rem !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__row {
        display: flex !important;
        align-items: baseline !important;
        justify-content: space-between !important;
        gap: 0.75rem !important;
        font-size: 0.92rem !important;
        line-height: 1.35 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__lbl {
        color: #64748b !important;
        font-weight: 500 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__val {
        color: #0f172a !important;
        font-weight: 600 !important;
        font-variant-numeric: tabular-nums !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__now {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.75rem !important;
        margin-top: 0.2rem !important;
        padding: 0.9rem 1rem !important;
        border-radius: 12px !important;
        background: #eef5ff !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__now-lbl {
        color: #2563eb !important;
        font-size: 0.92rem !important;
        font-weight: 700 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .pl-s4-desk-amt__now-val {
        color: #2563eb !important;
        font-size: 1.35rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.03em !important;
        font-variant-numeric: tabular-nums !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-popup-note {
        display: flex !important;
        align-items: flex-start !important;
        gap: 0.55rem !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0.75rem 0.85rem !important;
        list-style: none !important;
        border: 0 !important;
        border-radius: 12px !important;
        background: #f8fafc !important;
        color: #64748b !important;
        font-size: 0.78rem !important;
        line-height: 1.4 !important;
        box-sizing: border-box !important;
        height: auto !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-popup-note::before {
        content: "i" !important;
        flex: 0 0 22px !important;
        display: block !important;
        width: 22px !important;
        height: 22px !important;
        margin-top: 1px !important;
        border-radius: 50% !important;
        background: #94a3b8 !important;
        color: #fff !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        font-style: italic !important;
        font-family: Georgia, "Times New Roman", serif !important;
        line-height: 22px !important;
        text-align: center !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-resumo-popup-note[hidden] {
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 #wizard-step4-pay-cta,
      #orc-form.layout-shell #wizard-step-4 .wizard-step4-pay-cta {
        margin: 0.2rem 0 0 !important;
        padding: 0 !important;
        width: 100% !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar,
      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.65rem !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 52px !important;
        height: auto !important;
        padding: 0.9rem 1.25rem !important;
        border: 0 !important;
        border-radius: 14px !important;
        background: #2563eb !important;
        color: #fff !important;
        font-size: 0.95rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.04em !important;
        text-transform: uppercase !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar:hover,
      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora:hover {
        background: #1d4ed8 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar::before,
      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora::before {
        content: "" !important;
        display: block !important;
        width: 16px !important;
        height: 16px !important;
        flex-shrink: 0 !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar::after,
      #orc-form.layout-shell #wizard-step-4 #btn-step4-pagar-agora::after {
        content: "" !important;
        display: block !important;
        width: 16px !important;
        height: 16px !important;
        flex-shrink: 0 !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.7rem !important;
        margin: 0.1rem 0 0 !important;
        padding: 0.2rem 0 0 !important;
        color: #64748b !important;
        font-size: 0.78rem !important;
        line-height: 1.35 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note::after {
        content: none !important;
        display: none !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note__asaas {
        display: block !important;
        width: 96px !important;
        height: auto !important;
        flex-shrink: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note__sep {
        display: block !important;
        width: 1px !important;
        height: 18px !important;
        background: #cbd5e1 !important;
      }

      #orc-form.layout-shell #wizard-step-4 .wizard-step4-footer-note__icon {
        display: inline-block !important;
        flex-shrink: 0 !important;
        width: 14px !important;
        height: 14px !important;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat !important;
      }
    }

    /*
     * DESKTOP ONLY (≥1024px) — formulário CARTÃO DE CRÉDITO (Etapa 4).
     * Raiz: #wizard-step-4 #pay-cc-install-row + #wizard-step-4 #pay-cc-panel.
     * Não altera mobile, PIX, Boleto, Combinado, cards de método nem outros passos.
     */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      /* —— Parcelas (topo, largura total) —— */
      #wizard-step-4 #pay-cc-install-row:not([hidden]) {
        display: block !important;
        margin: 0 0 0 !important;
        padding: 26px 30px 18px !important;
        border: 1px solid #e3eaf4 !important;
        border-bottom: none !important;
        border-radius: 14px 14px 0 0 !important;
        background: #ffffff !important;
        box-shadow: 0 2px 10px rgba(15, 23, 42, 0.025) !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) .label-like {
        display: block !important;
        margin: 0 0 7px !important;
        padding: 0 !important;
        font-size: 0.875rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        color: #0f172a !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) select#installments {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 50px !important;
        min-height: 50px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 1px solid #d8e1ee !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        font-size: 0.9375rem !important;
        font-weight: 500 !important;
        color: #0f172a !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) select#installments:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08) !important;
        outline: none !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) #pay-install-summary {
        margin: 8px 0 0 !important;
        font-size: 0.8125rem !important;
        line-height: 1.4 !important;
        color: #64748b !important;
      }

      #wizard-step-4 #pay-cc-install-row:not([hidden]) #pay-install-summary:empty {
        display: none !important;
        margin: 0 !important;
      }

      /* —— Painel Dados do cartão + Titular —— */
      #wizard-step-4 #pay-cc-panel:not([hidden]) {
        display: block !important;
        margin: 0 0 0.75rem !important;
        padding: 10px 30px 26px !important;
        border: 1px solid #e3eaf4 !important;
        border-top: 1px solid #e7ecf3 !important;
        border-radius: 0 0 14px 14px !important;
        background: #ffffff !important;
        box-shadow: 0 2px 10px rgba(15, 23, 42, 0.025) !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #wizard-step-4:has(#pay-cc-install-row[hidden]) #pay-cc-panel:not([hidden]),
      #wizard-step-4:not(:has(#pay-cc-install-row:not([hidden]))) #pay-cc-panel:not([hidden]) {
        border-radius: 14px !important;
        padding-top: 26px !important;
        border-top: 1px solid #e3eaf4 !important;
      }

      /* Cabeçalho "Dados do cartão" */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:first-of-type {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        margin: 0 0 20px !important;
        padding: 8px 0 0 !important;
        border: none !important;
        background: transparent !important;
        font-size: 1.25rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:first-of-type::before {
        content: "" !important;
        flex: 0 0 48px !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 10px !important;
        background: #f1f5ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E") center / 22px no-repeat !important;
      }

      /* Grid 1 — dados do cartão (compacto horizontal)
         [ Nome no cartão ...... ] [ Número do cartão ...... ]
         [ MM ] / [ AAAA ]         [ CVV ...... ]              */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type {
        display: grid !important;
        grid-template-columns:
          minmax(7.25rem, 9rem)
          1.25rem
          minmax(8.5rem, 10.5rem)
          minmax(12rem, 16rem)
          minmax(0, 1fr) !important;
        column-gap: 0 !important;
        row-gap: 16px !important;
        align-items: end !important;
        margin: 0 0 8px !important;
        column-gap: 12px !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field,
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field-span2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-end !important;
        gap: 7px !important;
        margin: 0 !important;
        min-width: 0 !important;
        max-width: none !important;
        width: auto !important;
        position: relative !important;
        font-size: 0.875rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        color: #1e293b !important;
        overflow: visible !important;
        pointer-events: auto !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-holderName) {
        grid-column: 1 / 4 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-number) {
        grid-column: 4 / 6 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryMonth) {
        grid-column: 1 / 2 !important;
        grid-row: 2 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryMonth)::before {
        content: "Validade" !important;
        display: block !important;
        font-size: 0.875rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryMonth)::after {
        content: none !important;
        display: none !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryYear) {
        grid-column: 3 / 4 !important;
        grid-row: 2 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-expiryYear)::before {
        content: "/" !important;
        position: absolute !important;
        left: calc(-1.25rem - 12px) !important;
        bottom: 0 !important;
        width: 1.25rem !important;
        height: 50px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 1.05rem !important;
        font-weight: 600 !important;
        line-height: 1 !important;
        color: #94a3b8 !important;
        pointer-events: none !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:first-of-type label.field:has(#cc-ccv) {
        grid-column: 4 / 5 !important;
        grid-row: 2 !important;
      }

      /* Inputs / selects do painel */
      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input,
      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field select {
        width: 100% !important;
        height: 50px !important;
        min-height: 50px !important;
        margin: 0 !important;
        padding: 0 15px !important;
        border: 1px solid #d8e1ee !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        font-size: 0.9375rem !important;
        font-weight: 400 !important;
        line-height: 1.3 !important;
        color: #0f172a !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input#cc-number {
        letter-spacing: 0.04em !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input::placeholder {
        color: #7c8aa0 !important;
        opacity: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field input:focus,
      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field select:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08) !important;
        outline: none !important;
        background: #ffffff !important;
      }

      /* Separador + Titular */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:nth-of-type(2),
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3[style] {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        margin: 24px 0 16px !important;
        padding: 24px 0 0 !important;
        border: none !important;
        border-top: 1px solid #e7ecf3 !important;
        background: transparent !important;
        font-size: 1.125rem !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
        color: #0f172a !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3:nth-of-type(2)::before,
      #wizard-step-4 #pay-cc-panel:not([hidden]) > h3[style]::before {
        content: "" !important;
        flex: 0 0 48px !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 10px !important;
        background: #f1f5ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") center / 22px no-repeat !important;
      }

      /* Grid 2 — titular (4 + 2 compactos) */
      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type {
        display: grid !important;
        grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) !important;
        column-gap: 16px !important;
        row-gap: 16px !important;
        align-items: end !important;
        margin: 0 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field {
        display: flex !important;
        flex-direction: column !important;
        gap: 7px !important;
        margin: 0 !important;
        min-width: 0 !important;
        font-size: 0.875rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        color: #1e293b !important;
        overflow: visible !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-name) {
        grid-column: 1 / 2 !important;
        grid-row: 1 !important;
        font-size: 0.875rem !important;
        line-height: 1.3 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-email) {
        grid-column: 2 / 3 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-cpf) {
        grid-column: 3 / 4 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-cep) {
        grid-column: 4 / 5 !important;
        grid-row: 1 !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-addressNumber) {
        grid-column: 1 / 2 !important;
        grid-row: 2 !important;
        max-width: 12rem !important;
        font-size: 0.875rem !important;
        line-height: 1.3 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) > .pay-cc-grid:last-of-type label.field:has(#ch-phone) {
        grid-column: 2 / 4 !important;
        grid-row: 2 !important;
        max-width: 22rem !important;
        font-size: 0.875rem !important;
        line-height: 1.3 !important;
        color: #1e293b !important;
      }

      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field:has(#ch-name)::before,
      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field:has(#ch-addressNumber)::before,
      #wizard-step-4 #pay-cc-panel:not([hidden]) label.field:has(#ch-phone)::before {
        content: none !important;
        display: none !important;
      }

      /* Resumo com cartão ativo: mesmo layout da coluna (não barra compacta). */
      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo,
      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .wizard-step4-resumo {
        display: block !important;
        flex: none !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        grid-area: resumo !important;
        grid-column: 2 !important;
        grid-row: 2 !important;
        margin: 0 !important;
        padding: 0.15rem 0 0 !important;
        min-height: 0 !important;
        height: auto !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo .wizard-step4-resumo__title {
        display: block !important;
        flex: none !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 0 0.9rem !important;
        padding: 0 !important;
        border: none !important;
        background: none !important;
        font-size: 1.05rem !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
        letter-spacing: -0.02em !important;
        text-transform: none !important;
        white-space: normal !important;
        color: #0f172a !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo .wizard-step4-resumo__list {
        display: flex !important;
        flex-direction: column !important;
        flex: none !important;
        gap: 0.75rem !important;
        min-width: 0 !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        font-size: 0.92rem !important;
        line-height: 1.4 !important;
        color: #334155 !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo .wizard-step4-resumo__list li {
        margin: 0 !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .pl-s4-desk-amt__row {
        display: flex !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: 0.75rem !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .pl-s4-desk-amt__now {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.75rem !important;
        text-align: left !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .pl-s4-desk-amt__lbl {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        white-space: normal !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .pl-s4-desk-amt__now-lbl {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        white-space: nowrap !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .pl-s4-desk-amt__val {
        flex: 0 1 auto !important;
        max-width: 58% !important;
        white-space: normal !important;
        text-align: right !important;
      }

      #orc-form.layout-shell #wizard-step-4:has(#pay-cc-panel:not([hidden])) .pl-s4-desk-amt__now-val {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
      }
    }

    /*
     * DESKTOP ONLY (≥1024px) — Pagamento Combinado / Dividir pagamento.
     * Raiz exclusiva: #wizard-step-4 #pay-combined-panel
     * Azul = 1ª cobrança (agora). Verde = 2ª cobrança (depois).
     * Não altera PIX, Boleto, Cartão, mobile, HTML ou JS.
     */

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #wizard-step-4 #pay-combined-panel:not([hidden]) {
        display: block !important;
        margin: 0 0 0.75rem !important;
        padding: 24px !important;
        border: 1px solid #e1e8f2 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.02) !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
        text-align: left !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-panel__title {
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        font-size: 1.375rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        color: #111827 !important;
        letter-spacing: -0.01em !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-panel__total {
        margin: 6px 0 22px !important;
        padding: 0 !important;
        font-size: 0.9375rem !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        color: #64748b !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-panel__total strong {
        font-weight: 700 !important;
        color: #0f172a !important;
        font-variant-numeric: tabular-nums !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-split {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
        margin: 0 !important;
      }

      /* —— Cards 1ª / 2ª cobrança —— */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step {
        margin: 0 !important;
        padding: 24px !important;
        border: 1px solid #dce5f1 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        column-gap: 24px !important;
        row-gap: 12px !important;
        align-items: end !important;
        border-color: #dce5f1 !important;
        background: #ffffff !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
        border-color: #dce5f1 !important;
        background: #ffffff !important;
      }

      /* Badge */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step__badge {
        position: relative !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: fit-content !important;
        max-width: 100% !important;
        margin: 0 0 0 58px !important;
        padding: 6px 10px !important;
        border-radius: 7px !important;
        font-size: 0.75rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.02em !important;
        text-transform: uppercase !important;
        line-height: 1.2 !important;
        color: #ffffff !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-step__badge {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        justify-self: start !important;
        background: #2563eb !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 .pay-combined-step__badge {
        background: #16a34a !important;
      }

      /* Ícone decorativo ao lado do badge (quadrado) */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-step__badge::before,
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 .pay-combined-step__badge::before {
        content: "" !important;
        position: absolute !important;
        left: -58px !important;
        top: 50% !important;
        margin-top: -24px !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 10px !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-step__badge::before {
        background: #eff6ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E") center / 22px no-repeat !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 .pay-combined-step__badge::before {
        background: #f0fdf4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E") center / 22px no-repeat !important;
      }

      /* Subtítulo / label existente */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-block__label {
        margin: 2px 0 6px !important;
        padding: 0 !important;
        font-size: 0.875rem !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        line-height: 1.45 !important;
        color: #64748b !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-block__label {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
      }

      /* Select + valor lado a lado (1ª cobrança) */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 > .pay-combined-select {
        grid-column: 1 / 2 !important;
        grid-row: 3 !important;
        width: 100% !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 1px solid #d8e1ed !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        font-size: 0.9375rem !important;
        font-weight: 500 !important;
        color: #1e293b !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 > label.field {
        grid-column: 2 / 3 !important;
        grid-row: 3 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 7px !important;
        margin: 0 !important;
        padding: 0 !important;
        min-width: 0 !important;
        font-size: 0.875rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        color: #172033 !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 > label.field input {
        width: 100% !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 1px solid #d8e1ed !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        font-size: 0.9375rem !important;
        font-weight: 500 !important;
        color: #1e293b !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 > label.field input::placeholder {
        color: #7c8aa0 !important;
        opacity: 1 !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 > .pay-combined-select:focus,
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 > label.field input:focus,
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 > .pay-combined-select:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08) !important;
        outline: none !important;
      }

      /* Resumo valor 1ª cobrança (azul) */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-amount-preview {
        grid-column: 1 / -1 !important;
        grid-row: 4 !important;
        display: grid !important;
        grid-template-columns: 48px minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 14px !important;
        row-gap: 0 !important;
        margin: 6px 0 0 !important;
        padding: 16px 20px !important;
        min-height: 88px !important;
        border: 1px solid #e1eafe !important;
        border-radius: 12px !important;
        background: #f8faff !important;
        text-align: left !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-amount-preview::before {
        content: "" !important;
        grid-column: 1 !important;
        grid-row: 1 / 3 !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 10px !important;
        background: #eff6ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5c.6-1 1.7-1.5 2.5-1.5 1.2 0 2.2.7 2.2 1.8S13.2 12 12 12s-2.2.6-2.2 1.7c0 1.1 1 1.8 2.3 1.8.9 0 1.8-.4 2.4-1.3'/%3E%3C/svg%3E") center / 22px no-repeat !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-amount-preview__label {
        grid-column: 2 !important;
        grid-row: 1 !important;
        margin: 0 !important;
        font-size: 1rem !important;
        font-weight: 750 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        line-height: 1.3 !important;
        color: #0f172a !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--1 .pay-combined-amount-preview__value {
        grid-column: 3 !important;
        grid-row: 1 / 3 !important;
        align-self: center !important;
        margin: 0 !important;
        font-size: 1.75rem !important;
        font-weight: 800 !important;
        line-height: 1.1 !important;
        color: #2563eb !important;
        text-align: right !important;
        font-variant-numeric: tabular-nums !important;
      }

      /* Saldo 2ª cobrança (verde) */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-saldo-box,
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-block--saldo {
        display: grid !important;
        grid-template-columns: 48px minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 14px !important;
        margin: 6px 0 0 !important;
        padding: 16px 20px !important;
        min-height: 88px !important;
        border: 1px solid #ddefe2 !important;
        border-radius: 12px !important;
        background: #f8fdf9 !important;
        text-align: left !important;
        box-sizing: border-box !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-saldo-box::before {
        content: "" !important;
        grid-column: 1 !important;
        grid-row: 1 / 3 !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 10px !important;
        background: #f0fdf4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5c.6-1 1.7-1.5 2.5-1.5 1.2 0 2.2.7 2.2 1.8S13.2 12 12 12s-2.2.6-2.2 1.7c0 1.1 1 1.8 2.3 1.8.9 0 1.8-.4 2.4-1.3'/%3E%3C/svg%3E") center / 22px no-repeat !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-saldo-box .pay-combined-amount-preview__label {
        grid-column: 2 !important;
        grid-row: 1 !important;
        margin: 0 !important;
        font-size: 1rem !important;
        font-weight: 750 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        line-height: 1.3 !important;
        color: #0f172a !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-saldo {
        grid-column: 3 !important;
        grid-row: 1 / 3 !important;
        align-self: center !important;
        margin: 0 !important;
        font-size: 1.75rem !important;
        font-weight: 800 !important;
        line-height: 1.1 !important;
        color: #16a34a !important;
        text-align: right !important;
        font-variant-numeric: tabular-nums !important;
      }

      /* Forma de pagamento do saldo (largura total) */
      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 > .pay-combined-select {
        width: 100% !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 1px solid #d8e1ed !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        font-size: 0.9375rem !important;
        font-weight: 500 !important;
        color: #1e293b !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        order: 4 !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 .pay-combined-step__badge {
        order: 1 !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 .pay-combined-block__label {
        order: 2 !important;
        margin: 2px 0 0 !important;
      }

      #wizard-step-4 #pay-combined-panel:not([hidden]) .pay-combined-step--2 .pay-combined-saldo-box {
        order: 3 !important;
      }
    }

    /* Popup campanha livro colorido — overlay novo; não altera o layout da calculadora */
    #pl-promo-colorido {
      position: fixed;
      inset: 0;
      z-index: 10050;
      display: none;
      align-items: center;
      justify-content: center;
      padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));
      background: rgba(15, 23, 42, 0.55);
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
      box-sizing: border-box;
    }
    #pl-promo-colorido.is-open {
      display: flex;
    }
    #pl-promo-colorido .pl-promo-colorido__title {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }
    #pl-promo-colorido .pl-promo-colorido__card {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      justify-content: center;
      width: fit-content;
      max-width: min(100%, 520px);
      margin: 0 auto;
      text-align: center;
    }
    #pl-promo-colorido .pl-promo-colorido__visual {
      position: relative;
      display: inline-block;
      max-width: 100%;
      line-height: 0;
    }
    #pl-promo-colorido .pl-promo-colorido__img {
      display: block;
      width: auto;
      max-width: 100%;
      height: auto;
      max-height: min(70vh, 520px);
      object-fit: contain;
      border-radius: 16px;
      box-shadow: 0 18px 50px rgba(15, 23, 42, 0.28);
    }
    #pl-promo-colorido .pl-promo-colorido__close {
      position: absolute;
      top: -10px;
      right: -10px;
      z-index: 2;
      width: 36px;
      height: 36px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: #fff;
      color: #0f172a;
      font: 700 22px/1 system-ui, -apple-system, sans-serif;
      cursor: pointer;
      box-shadow: 0 4px 14px rgba(15, 23, 42, 0.28);
    }
    #pl-promo-colorido .pl-promo-colorido__close:hover,
    #pl-promo-colorido .pl-promo-colorido__close:focus-visible {
      background: #f1f5f9;
    }
    #pl-promo-colorido .pl-promo-colorido__btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      position: relative;
      overflow: hidden;
      width: 100%;
      box-sizing: border-box;
      margin-top: 12px;
      padding: 0.68rem 1rem;
      border: 0;
      border-radius: 999px;
      background: linear-gradient(90deg, #6d28d9 0%, #4f46e5 100%);
      color: #fff;
      font: 700 1.05rem/1.25 system-ui, -apple-system, sans-serif;
      letter-spacing: 0.01em;
      cursor: pointer;
      box-shadow: 0 6px 16px rgba(79, 70, 229, 0.32);
      transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
      animation: pl-promo-colorido-pulse 1.8s ease-in-out infinite;
    }
    #pl-promo-colorido .pl-promo-colorido__btn::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(105deg, transparent 40%, rgba(255, 255, 255, 0.38) 50%, transparent 60%);
      transform: translateX(-120%);
      animation: pl-promo-colorido-shine 2.4s ease-in-out infinite;
      pointer-events: none;
    }
    #pl-promo-colorido .pl-promo-colorido__btn:hover {
      filter: brightness(1.08);
      transform: translateY(-1px);
      box-shadow: 0 10px 22px rgba(79, 70, 229, 0.45);
    }
    @keyframes pl-promo-colorido-pulse {
      0%, 100% { box-shadow: 0 6px 16px rgba(79, 70, 229, 0.32); }
      50% { box-shadow: 0 8px 24px rgba(124, 58, 237, 0.55); }
    }
    @keyframes pl-promo-colorido-shine {
      0%, 55% { transform: translateX(-120%); }
      80%, 100% { transform: translateX(120%); }
    }

    /* ////// CSS mobile ///// */
    @media (max-width: 1023px) {
      #pl-promo-colorido .pl-promo-colorido__close {
        top: 8px;
        right: 8px;
      }
    }

    /* ///// CSS desktop //// */
    @media (min-width: 1024px) {
      #pl-promo-colorido .pl-promo-colorido__card {
        max-width: min(100%, 560px);
      }
      #pl-promo-colorido .pl-promo-colorido__img {
        max-height: min(72vh, 560px);
      }
    }

#pl-boneco-confirm { display: none; }

/* ////// CSS mobile ///// */
@media (max-width: 1023px) {
  #pl-boneco-confirm .pl-boneco-d { display: none !important; }
  #pl-pay-confirm-dialog .pl-pay-d { display: none !important; }
}

/* ///// CSS desktop //// */
@media (min-width: 1024px) {
  html.pl-boneco-open,
  html.pl-boneco-open body {
    overflow: hidden !important;
  }
  #pl-boneco-confirm .pl-boneco-confirm__sheet { display: none !important; }
  #pl-boneco-confirm {
    position: fixed;
    inset: 0;
    z-index: 10060;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, 0.5);
    box-sizing: border-box;
    overflow: hidden;
  }
  #pl-boneco-confirm.is-open { display: flex; }
  #pl-boneco-confirm .pl-boneco-d {
    position: relative;
    display: flex;
    flex-direction: column;
    width: min(1080px, calc(100vw - 48px));
    max-height: calc(100vh - 48px);
    overflow: hidden;
    padding: 28px 36px 24px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22);
    box-sizing: border-box;
    text-align: center;
  }
  #pl-boneco-confirm .pl-boneco-d__close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 36px;
    height: 36px;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #64748b;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
  }
  #pl-boneco-confirm .pl-boneco-d__att {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex: 0 0 auto;
    width: fit-content;
    margin: 0 auto 14px;
    padding: 5px 12px 5px 6px;
    border-radius: 99px;
    background: #ffe4e6;
    color: #e11d48;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.06em;
  }
  #pl-boneco-confirm .pl-boneco-d__att-ico {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fb7185;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
  }
  #pl-boneco-confirm .pl-boneco-d__title {
    flex: 0 0 auto;
    margin: 0 auto 8px;
    max-width: 820px;
    font-size: clamp(1.35rem, 2.1vw, 1.7rem);
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1.18;
    color: #0f172a;
  }
  #pl-boneco-confirm .pl-boneco-d__lead {
    flex: 0 0 auto;
    margin: 0 auto 22px;
    max-width: 720px;
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.45;
    color: #64748b;
  }
  #pl-boneco-confirm .pl-boneco-d__cols {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.18fr);
    gap: 16px;
    margin: 0 0 20px;
    text-align: left;
    flex: 1 1 auto;
    min-height: 0;
  }
  #pl-boneco-confirm .pl-boneco-d__col {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    padding: 22px 22px 18px;
    border-radius: 20px;
    box-sizing: border-box;
  }
  #pl-boneco-confirm .pl-boneco-d__col--off {
    background: #f8fafc;
    border: 1px solid #eef2f7;
  }
  #pl-boneco-confirm .pl-boneco-d__col--on {
    background: #f4edff;
    border: 1px solid #e4d7ff;
  }
  #pl-boneco-confirm .pl-boneco-d__badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0 0 12px;
    padding: 4px 10px;
    border-radius: 99px;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1.2;
    text-transform: uppercase;
    background: #e2e8f0;
    color: #475569;
  }
  #pl-boneco-confirm .pl-boneco-d__on-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: 0 0 10px;
  }
  #pl-boneco-confirm .pl-boneco-d__on-head .pl-boneco-d__badge {
    margin: 0;
    background: transparent;
    color: #7c3aed;
    padding: 0;
  }
  #pl-boneco-confirm .pl-boneco-d__star {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 99px;
    background: #6d28d9;
    color: #fff;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    white-space: nowrap;
  }
  #pl-boneco-confirm .pl-boneco-d__h {
    margin: 0 0 6px;
    font-size: 1.12rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.25;
    color: #0f172a;
  }
  #pl-boneco-confirm .pl-boneco-d__p {
    margin: 0 0 14px;
    font-size: 0.84rem;
    font-weight: 500;
    line-height: 1.45;
    color: #64748b;
  }
  #pl-boneco-confirm .pl-boneco-d__list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  #pl-boneco-confirm .pl-boneco-d__list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 8px;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.35;
    color: #334155;
  }
  #pl-boneco-confirm .pl-boneco-d__list li:last-child { margin-bottom: 0; }
  #pl-boneco-confirm .pl-boneco-d__ico {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    border-radius: 50%;
  }
  #pl-boneco-confirm .pl-boneco-d__ico--x {
    background: #e2e8f0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3.2 3.2l5.6 5.6M8.8 3.2L3.2 8.8' fill='none' stroke='%2364748b' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center / 9px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-d__ico--ok {
    background: #6d4aff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.4 6.2l2.4 2.4 4.8-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 10px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-d__photo--off {
    display: block;
    width: min(100%, 180px);
    height: auto;
    max-height: 180px;
    margin: auto auto 0;
    object-fit: contain;
  }
  #pl-boneco-confirm .pl-boneco-d__on-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(168px, 210px);
    grid-template-areas:
      "list photo";
    gap: 10px 14px;
    align-items: start;
    flex: 1 1 auto;
    min-height: 0;
  }
  #pl-boneco-confirm .pl-boneco-d__on-body .pl-boneco-d__list {
    grid-area: list;
    min-width: 0;
  }
  #pl-boneco-confirm .pl-boneco-d__photo--on {
    display: block;
    grid-area: photo;
    width: min(100%, 180px);
    height: auto;
    max-height: 180px;
    margin: 0 auto;
    object-fit: contain;
    align-self: center;
  }
  #pl-boneco-confirm .pl-boneco-d__price {
    display: none;
    grid-area: price;
    align-items: center;
    gap: 10px;
    width: fit-content;
    max-width: 100%;
    margin: 0;
    padding: 10px 14px;
    border-radius: 12px;
    background: #ece0ff;
    text-align: left;
    color: #5b4dff;
  }
  #pl-boneco-confirm .pl-boneco-d__price-ico {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.8'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center / 20px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-d__price-txt {
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.25;
  }
  #pl-boneco-confirm .pl-boneco-d__price-txt strong {
    display: block;
    margin-top: 1px;
    font-size: 0.95rem;
    font-weight: 800;
  }
  #pl-boneco-confirm .pl-boneco-d__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    flex: 0 0 auto;
  }
  #pl-boneco-confirm .pl-boneco-d__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 12px 16px;
    border-radius: 14px;
    font-size: 0.92rem;
    font-weight: 800;
    line-height: 1.2;
    cursor: pointer;
    box-sizing: border-box;
  }
  #pl-boneco-confirm .pl-boneco-d__btn--ghost {
    border: 1.5px solid #e2e8f0;
    background: #fff;
    color: #0f172a;
  }
  #pl-boneco-confirm .pl-boneco-d__btn--primary {
    border: none;
    background: #6d4aff;
    color: #fff;
    box-shadow: 0 8px 18px rgba(109, 74, 255, 0.28);
  }
  @media (max-height: 800px) {
    #pl-boneco-confirm .pl-boneco-d {
      padding: 18px 24px 16px;
    }
    #pl-boneco-confirm .pl-boneco-d__title { font-size: 1.28rem; }
    #pl-boneco-confirm .pl-boneco-d__lead { margin-bottom: 12px; font-size: 0.84rem; }
    #pl-boneco-confirm .pl-boneco-d__cols { margin-bottom: 12px; gap: 12px; }
    #pl-boneco-confirm .pl-boneco-d__col { padding: 14px 16px 12px; }
    #pl-boneco-confirm .pl-boneco-d__h { font-size: 1rem; }
    #pl-boneco-confirm .pl-boneco-d__p { margin-bottom: 8px; font-size: 0.76rem; }
    #pl-boneco-confirm .pl-boneco-d__list li { font-size: 0.74rem; margin-bottom: 6px; }
    #pl-boneco-confirm .pl-boneco-d__photo--off { max-height: 160px; margin-top: 10px; }
    #pl-boneco-confirm .pl-boneco-d__photo--on { max-height: 160px; }
    #pl-boneco-confirm .pl-boneco-d__price { padding: 8px 12px; }
    #pl-boneco-confirm .pl-boneco-d__btn { min-height: 44px; }
  }
}

/* ////// CSS mobile //// */
@media (max-width: 1023px) {
  html.pl-arq-how-open,
  html.pl-arq-how-open body {
    overflow: hidden !important;
  }
  #pl-arq-how-modal {
    position: fixed;
    inset: 0;
    z-index: 10070;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(15, 23, 42, 0.55);
    box-sizing: border-box;
    overflow: hidden;
  }
  #pl-arq-how-modal.is-open {
    display: flex !important;
  }
  #pl-arq-how-modal .pl-arq-how-modal__sheet {
    position: relative;
    display: flex;
    flex-direction: column;
    width: fit-content;
    max-width: min(420px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    overflow: hidden;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.28);
    box-sizing: border-box;
  }
  #pl-arq-how-modal .pl-arq-how-modal__close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 2;
    width: 32px;
    height: 32px;
    margin: 0;
    padding: 0;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #334155;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
  }
  #pl-arq-how-modal .pl-arq-how-modal__img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(420px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    margin: 0;
    object-fit: contain;
  }
}

/* ///// CSS desktop //// */
@media (min-width: 1024px) {
  html.pl-arq-how-open,
  html.pl-arq-how-open body {
    overflow: hidden !important;
  }
  #pl-arq-how-modal {
    position: fixed;
    inset: 0;
    z-index: 10070;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15, 23, 42, 0.55);
    box-sizing: border-box;
    overflow: hidden;
  }
  #pl-arq-how-modal.is-open {
    display: flex !important;
  }
  #pl-arq-how-modal .pl-arq-how-modal__sheet {
    position: relative;
    display: flex;
    flex-direction: column;
    width: fit-content;
    max-width: min(500px, calc(100vw - 48px));
    max-height: calc(100vh - 40px);
    overflow: hidden;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.28);
    box-sizing: border-box;
  }
  #pl-arq-how-modal .pl-arq-how-modal__close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 2;
    width: 32px;
    height: 32px;
    margin: 0;
    padding: 0;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #334155;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
  }
  #pl-arq-how-modal .pl-arq-how-modal__close:hover {
    background: #f8fafc;
    color: #0f172a;
  }
  #pl-arq-how-modal .pl-arq-how-modal__img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(500px, calc(100vw - 48px));
    max-height: calc(100vh - 40px);
    margin: 0;
    object-fit: contain;
    vertical-align: top;
  }
}

/* Popup Prazo de produção — (Como funciona?) — oculto até abrir */
#pl-prazo-how-modal {
  display: none;
}

/* Popup Prazo de produção — (Como funciona?) — mobile */
@media (max-width: 1023px) {
  html.pl-prazo-how-open,
  html.pl-prazo-how-open body {
    overflow: hidden !important;
  }
  #pl-prazo-how-modal {
    position: fixed;
    inset: 0;
    z-index: 10070;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(15, 23, 42, 0.55);
    box-sizing: border-box;
    overflow: hidden;
  }
  #pl-prazo-how-modal.is-open {
    display: flex !important;
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__sheet {
    position: relative;
    display: flex;
    flex-direction: column;
    width: fit-content;
    max-width: min(420px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    overflow: hidden;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.28);
    box-sizing: border-box;
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 2;
    width: 32px;
    height: 32px;
    margin: 0;
    padding: 0;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #334155;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(420px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    margin: 0;
    object-fit: contain;
  }
}

/* Popup Prazo de produção — (Como funciona?) — desktop */
@media (min-width: 1024px) {
  html.pl-prazo-how-open,
  html.pl-prazo-how-open body {
    overflow: hidden !important;
  }
  #pl-prazo-how-modal {
    position: fixed;
    inset: 0;
    z-index: 10070;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15, 23, 42, 0.55);
    box-sizing: border-box;
    overflow: hidden;
  }
  #pl-prazo-how-modal.is-open {
    display: flex !important;
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__sheet {
    position: relative;
    display: flex;
    flex-direction: column;
    width: fit-content;
    max-width: min(560px, calc(100vw - 48px));
    max-height: calc(100vh - 40px);
    overflow: hidden;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.28);
    box-sizing: border-box;
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 2;
    width: 32px;
    height: 32px;
    margin: 0;
    padding: 0;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #334155;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__close:hover {
    background: #f8fafc;
    color: #0f172a;
  }
  #pl-prazo-how-modal .pl-prazo-how-modal__img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(560px, calc(100vw - 48px));
    max-height: calc(100vh - 40px);
    margin: 0;
    object-fit: contain;
    vertical-align: top;
  }
}

/* ///// CSS desktop //// */
@media (min-width: 1024px) {
  html.pl-pay-confirm-lock,
  html.pl-pay-confirm-lock body {
    overflow: hidden !important;
    overscroll-behavior: none !important;
  }
  html.pl-pay-confirm-lock body {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }
  #pl-pay-confirm-dialog .pl-pay-d { display: none; }
  #pl-pay-confirm-dialog.is-pix-contract.pl-pay-confirm-dialog {
    width: min(1080px, calc(100vw - 48px)) !important;
    max-width: min(1080px, calc(100vw - 48px)) !important;
    height: fit-content !important;
    max-height: calc(100vh - 40px) !important;
    margin: auto !important;
    padding: 26px 32px 24px !important;
    border-radius: 22px !important;
    background: #fff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    position: relative !important;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__card {
    display: none !important;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d {
    display: flex;
    flex-direction: column;
    min-height: 0;
    max-height: calc(100vh - 84px);
    overflow: hidden;
    text-align: left;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf {
    position: relative !important;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf .pl-pay-d {
    pointer-events: none;
    opacity: 0.28;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 6;
    background: rgba(15, 23, 42, 0.42);
    border-radius: inherit;
  }
  #pl-pay-confirm-dialog.is-pix-contract #pl-pay-confirm-pdf {
    display: none;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf {
    display: flex !important;
    flex-direction: column;
    position: absolute;
    z-index: 8;
    inset: 20px;
    min-height: 0;
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.28);
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex: 0 0 auto;
    padding: 14px 18px;
    border-bottom: 1px solid #e6ebf5;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf__title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf-close {
    width: 34px;
    height: 34px;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #64748b;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf__body,
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf__scroll {
    flex: 1 1 auto;
    min-height: 0;
    background: #525659;
  }
  #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf #pl-pay-confirm-pdf-frame {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 420px;
    border: 0;
    background: #525659;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__head {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 36px;
    gap: 14px;
    align-items: center;
    flex: 0 0 auto;
    margin: 0 0 18px;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__ico {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #eff6ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E") center / 26px no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__titles {
    min-width: 0;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__title {
    margin: 0 0 4px;
    font-size: 1.55rem;
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__lead {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.4;
    color: #64748b;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__lead strong {
    font-weight: 800;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__close {
    width: 36px;
    height: 36px;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #64748b;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__steps {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 18px minmax(0, 1fr);
    gap: 12px;
    align-items: stretch;
    flex: 0 0 auto;
    margin: 0 0 20px;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 16px 16px;
    border: 1px solid #dbeafe;
    border-radius: 16px;
    background: #f8fbff;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step-ico {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #eff6ff center / 26px no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step-ico--card {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E");
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step-ico--cal {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15' rx='2'/%3E%3Cpath d='M8 3.5v4M16 3.5v4M3.5 10h17'/%3E%3C/svg%3E");
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step-k {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 4px;
    font-size: 0.92rem;
    font-weight: 800;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #2563eb;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step-k em {
    font-style: normal;
    color: #2563eb;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step p {
    margin: 0;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.4;
    color: #64748b;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #94a3b8;
    font-size: 1.1rem;
    font-weight: 700;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__terms-h {
    flex: 0 0 auto;
    margin: 0 0 2px;
    font-size: 1.05rem;
    font-weight: 800;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__terms-sub {
    flex: 0 0 auto;
    margin: 0 0 12px;
    font-size: 0.86rem;
    font-weight: 500;
    color: #64748b;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__terms {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1 1 auto;
    min-height: 0;
    margin: 0 0 12px;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term {
    display: grid !important;
    grid-template-columns: 22px 22px minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    gap: 0 12px !important;
    align-items: start !important;
    margin: 0;
    padding: 14px 16px;
    border: 1px solid #e6ebf5;
    border-radius: 14px;
    background: #fff;
    cursor: pointer;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term:has(input:checked) {
    border-color: #bfdbfe;
    background: #f8fbff;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term input {
    appearance: none;
    -webkit-appearance: none;
    grid-column: 1;
    grid-row: 1;
    width: 22px;
    height: 22px;
    margin: 2px 0 0;
    border: 1.5px solid #cbd5e1;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term input:checked {
    border-color: #2563eb;
    background: #2563eb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.4 6.2l2.4 2.4 4.8-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 10px no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term .pl-pay-d__num {
    grid-column: 2;
    grid-row: 1;
    margin-top: 2px;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term > span:last-of-type {
    grid-column: 3;
    grid-row: 1;
    min-width: 0;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term-title {
    display: block;
    margin: 0 0 3px;
    font-size: 0.95rem;
    font-weight: 800;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term-desc {
    margin: 0;
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1.4;
    color: #64748b;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__contract {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    margin-top: 2px;
    color: #2563eb;
    font-size: 0.8rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__contract::before {
    content: "";
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='1.8'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center / contain no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__contract::after {
    content: "";
    width: 11px;
    height: 11px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%232563eb' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M4 2h6v6M10 2L4 8'/%3E%3C/svg%3E") center / contain no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__contract:hover {
    text-decoration: underline;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__info {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    flex: 0 0 auto;
    margin: 0 0 16px;
    padding: 12px 14px;
    border-radius: 12px;
    background: #eff6ff;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.4;
    color: #1e3a8a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__info-ico {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 1px;
    border-radius: 50%;
    background: #2563eb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 5.2v4M6 3.2h.01' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / 11px no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex: 0 0 auto;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__right {
    display: flex;
    gap: 10px;
    margin-left: auto;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 18px;
    border-radius: 12px;
    font-size: 0.9rem;
    font-weight: 800;
    cursor: pointer;
    box-sizing: border-box;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--ghost {
    border: 1.5px solid #e2e8f0;
    background: #fff;
    color: #0f172a;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--go {
    min-width: 240px;
    border: none;
    background: #2563eb;
    color: #fff;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--go::before {
    content: "";
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--go:disabled,
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--go[disabled] {
    background: #d1d5db;
    color: #6b7280;
    box-shadow: none;
    cursor: not-allowed;
    opacity: 1;
  }
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--go:disabled::before,
  #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn--go[disabled]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
  }
  @media (max-height: 800px) {
    #pl-pay-confirm-dialog.is-pix-contract.pl-pay-confirm-dialog {
      padding: 18px 22px 16px !important;
    }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__title { font-size: 1.28rem; }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__head { margin-bottom: 12px; }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__steps { margin-bottom: 12px; }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__step { padding: 12px; }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__term { padding: 10px 12px; }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__info { margin-bottom: 10px; padding: 10px 12px; }
    #pl-pay-confirm-dialog.is-pix-contract .pl-pay-d__btn { min-height: 42px; }
  }
}

/* ////// CSS mobile ///// */
@media (max-width: 1023px) {
  html.pl-boneco-open,
  html.pl-boneco-open body {
    overflow: hidden !important;
    overscroll-behavior: none;
  }
  #pl-boneco-confirm {
    position: fixed;
    inset: 0;
    z-index: 10060;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 8px 8px max(8px, env(safe-area-inset-bottom, 0px));
    background: rgba(15, 23, 42, 0.55);
    box-sizing: border-box;
    overflow: hidden;
    overscroll-behavior: none;
  }
  #pl-boneco-confirm.is-open { display: flex; }
  #pl-boneco-confirm .pl-boneco-confirm__sheet {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 430px;
    max-height: 100%;
    overflow: hidden;
    padding: 6px 12px 10px;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.22);
    box-sizing: border-box;
    text-align: center;
  }
  #pl-boneco-confirm .pl-boneco-confirm__handle {
    display: block;
    flex: 0 0 auto;
    width: 36px;
    height: 4px;
    margin: 0 auto 4px;
    border-radius: 99px;
    background: #d8dee9;
  }
  #pl-boneco-confirm .pl-boneco-confirm__close {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 30px;
    height: 30px;
    border: 1px solid #e6ebf5;
    border-radius: 50%;
    background: #fff;
    color: #64748b;
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
  }
  #pl-boneco-confirm .pl-boneco-confirm__warn {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 2px auto 6px;
    border-radius: 50%;
    background: #ffe4e6;
    color: #e11d48;
    font-size: 1.05rem;
    font-weight: 800;
  }
  #pl-boneco-confirm .pl-boneco-confirm__title {
    flex: 0 0 auto;
    margin: 0 28px 4px;
    font-size: clamp(0.98rem, 3.4vw, 1.12rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.18;
    color: #0f172a;
  }
  #pl-boneco-confirm .pl-boneco-confirm__lead {
    flex: 0 0 auto;
    margin: 0 8px 8px;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1.3;
    color: #64748b;
  }
  #pl-boneco-confirm .pl-boneco-confirm__cols {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 6px;
    margin: 0 0 8px;
    text-align: left;
    flex: 1 1 auto;
    min-height: 0;
  }
  #pl-boneco-confirm .pl-boneco-confirm__col {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    padding: 8px 6px 8px;
    border-radius: 14px;
    box-sizing: border-box;
  }
  #pl-boneco-confirm .pl-boneco-confirm__col--off {
    background: #f8fafc;
    border: 1px solid #eef2f7;
  }
  #pl-boneco-confirm .pl-boneco-confirm__col--on {
    background: #f4edff;
    border: 1px solid #e4d7ff;
  }
  #pl-boneco-confirm .pl-boneco-confirm__badge {
    display: block;
    flex: 0 0 auto;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto 6px;
    padding: 3px 7px;
    border-radius: 99px;
    font-size: 0.5rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1.2;
    text-transform: uppercase;
    white-space: nowrap;
  }
  #pl-boneco-confirm .pl-boneco-confirm__col--off .pl-boneco-confirm__badge {
    background: #e2e8f0;
    color: #475569;
  }
  #pl-boneco-confirm .pl-boneco-confirm__col--on .pl-boneco-confirm__badge {
    background: #6d28d9;
    color: #fff;
  }
  #pl-boneco-confirm .pl-boneco-confirm__photo {
    display: block;
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    max-height: min(22dvh, 168px);
    margin: 0 0 6px;
    object-fit: contain;
    object-position: center;
  }
  #pl-boneco-confirm .pl-boneco-confirm__list {
    margin: 0;
    padding: 0;
    list-style: none;
    flex: 1 1 auto;
    min-height: 0;
  }
  #pl-boneco-confirm .pl-boneco-confirm__list li {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    margin: 0 0 5px;
    font-size: 0.62rem;
    font-weight: 600;
    line-height: 1.25;
    color: #334155;
  }
  #pl-boneco-confirm .pl-boneco-confirm__list li:last-child { margin-bottom: 0; }
  #pl-boneco-confirm .pl-boneco-confirm__ico {
    flex: 0 0 14px;
    width: 14px;
    height: 14px;
    margin-top: 1px;
    border-radius: 50%;
  }
  #pl-boneco-confirm .pl-boneco-confirm__ico--x {
    background: #e2e8f0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3.2 3.2l5.6 5.6M8.8 3.2L3.2 8.8' fill='none' stroke='%2364748b' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center / 8px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-confirm__ico--ok {
    background: #6d4aff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.4 6.2l2.4 2.4 4.8-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 8px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-confirm__price {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    flex: 0 0 auto;
    margin: 6px 0 0;
    padding: 6px;
    border-radius: 8px;
    background: #ece0ff;
    font-size: 0.6rem;
    font-weight: 700;
    line-height: 1.25;
    color: #5b4dff;
    text-align: left;
  }
  #pl-boneco-confirm .pl-boneco-confirm__price-txt {
    flex: 1;
    min-width: 0;
  }
  #pl-boneco-confirm .pl-boneco-confirm__price strong {
    font-weight: 800;
    color: #5b4dff;
  }
  #pl-boneco-confirm .pl-boneco-confirm__price-ico {
    flex: 0 0 14px;
    width: 14px;
    height: 14px;
    margin-top: 1px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.8'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center / 13px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-confirm__info {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex: 0 0 auto;
    margin: 0 0 8px;
    padding: 8px 10px;
    border-radius: 12px;
    background: #eef6ff;
    text-align: left;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.3;
    color: #1e3a8a;
  }
  #pl-boneco-confirm .pl-boneco-confirm__info-ico {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 1px;
    border-radius: 50%;
    background: #2563eb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 5.2v4M6 3.2h.01' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / 11px no-repeat;
  }
  #pl-boneco-confirm .pl-boneco-confirm__warn,
  #pl-boneco-confirm .pl-boneco-confirm__price,
  #pl-boneco-confirm .pl-boneco-confirm__info {
    display: none !important;
  }
  #pl-boneco-confirm .pl-boneco-confirm__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex: 0 0 auto;
    width: 100%;
    min-height: 42px;
    margin: 0 0 6px;
    padding: 8px 10px;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 800;
    line-height: 1.2;
    cursor: pointer;
    box-sizing: border-box;
  }
  #pl-boneco-confirm .pl-boneco-confirm__btn--ghost {
    border: 1.5px solid #e2e8f0;
    background: #fff;
    color: #0f172a;
  }
  #pl-boneco-confirm .pl-boneco-confirm__btn--primary {
    margin-bottom: 0;
    border: none;
    background: #6d4aff;
    color: #fff;
    box-shadow: 0 8px 18px rgba(109, 74, 255, 0.28);
  }
  #pl-boneco-confirm .pl-boneco-confirm__btn--primary::before {
    content: "";
    width: 15px;
    height: 15px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center / contain no-repeat;
  }
}

#btn-wiz-resumo {
  display: none !important;
}

/* MOBILE ONLY ≤1023px — etapas 2/3/4 do wizard. Desktop ≥1024px intocado. */

/* ////// CSS mobile ///// */
@media (max-width: 1023px) {
  /* —— Chrome do site: some nas etapas 2–4; o banner da etapa e Voltar/Avançar ficam —— */
  body:has(#orc-form[data-wizard-step="2"]) .site-head-fullbleed,
  body:has(#orc-form[data-wizard-step="3"]) .site-head-fullbleed,
  body:has(#orc-form[data-wizard-step="4"]) .site-head-fullbleed,
  body:has(#orc-form[data-wizard-step="2"]) .pl-orc-sitefoot,
  body:has(#orc-form[data-wizard-step="3"]) .pl-orc-sitefoot,
  body:has(#orc-form[data-wizard-step="4"]) .pl-orc-sitefoot,
  body:has(#orc-form[data-wizard-step="2"]) .calc-page-head,
  body:has(#orc-form[data-wizard-step="3"]) .calc-page-head,
  body:has(#orc-form[data-wizard-step="4"]) .calc-page-head,
  body:has(#orc-form[data-wizard-step="2"]) #layout-summary:not(.is-expanded),
  body:has(#orc-form[data-wizard-step="3"]) #layout-summary:not(.is-expanded),
  body:has(#orc-form[data-wizard-step="4"]) #layout-summary:not(.is-expanded),
  body:has(#orc-form[data-wizard-step="2"]) .hero-top-progress,
  body:has(#orc-form[data-wizard-step="3"]) .hero-top-progress,
  body:has(#orc-form[data-wizard-step="4"]) .hero-top-progress {
    display: none !important;
  }

  body:has(#orc-form[data-wizard-step="2"]) #layout-summary.is-expanded,
  body:has(#orc-form[data-wizard-step="3"]) #layout-summary.is-expanded,
  body:has(#orc-form[data-wizard-step="4"]) #layout-summary.is-expanded {
    display: block !important;
  }

  body:has(#orc-form[data-wizard-step="2"]),
  body:has(#orc-form[data-wizard-step="3"]),
  body:has(#orc-form[data-wizard-step="4"]) {
    background: #eef1f8 !important;
  }

  #orc-form[data-wizard-step="2"],
  #orc-form[data-wizard-step="3"],
  #orc-form[data-wizard-step="4"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    background: #eef1f8 !important;
  }

  body:has(#orc-form[data-wizard-step="2"]) .wrap,
  body:has(#orc-form[data-wizard-step="3"]) .wrap,
  body:has(#orc-form[data-wizard-step="4"]) .wrap {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  #orc-form[data-wizard-step="2"] .layout-main,
  #orc-form[data-wizard-step="3"] .layout-main,
  #orc-form[data-wizard-step="4"] .layout-main {
    width: 100% !important;
    max-width: 430px !important;
    margin: 0 auto !important;
    padding: 16px 16px 188px !important;
    box-sizing: border-box !important;
    background: transparent !important;
  }

  #orc-form[data-wizard-step="2"] #wizard-step-3,
  #orc-form[data-wizard-step="3"] #wizard-step-2,
  #orc-form[data-wizard-step="4"] #wizard-step-4,
  #orc-form[data-wizard-step="2"] #wizard-step-3 .step3-card,
  #orc-form[data-wizard-step="3"] #wizard-step-2 > .card,
  #orc-form[data-wizard-step="4"] #wizard-step-4 > .card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    align-self: stretch !important;
  }

  /* —— Rodapé Voltar / Avançar (etapas 2–4) —— */
  #orc-form[data-wizard-step="2"] .wizard-inline-footer,
  #orc-form[data-wizard-step="3"] .wizard-inline-footer,
  #orc-form[data-wizard-step="4"] .wizard-inline-footer {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    z-index: 40 !important;
    width: 100% !important;
    max-width: 430px !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    padding: 8px 12px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    background: #f4f6fb !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  #orc-form[data-wizard-step="2"] #wizard-sticky,
  #orc-form[data-wizard-step="3"] #wizard-sticky,
  #orc-form[data-wizard-step="4"] #wizard-sticky {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-inner,
  #orc-form[data-wizard-step="3"] .wizard-sticky-inner,
  #orc-form[data-wizard-step="4"] .wizard-sticky-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 32px rgba(15, 23, 42, 0.08) !important;
    box-sizing: border-box !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) auto !important;
    grid-template-areas: "ico title action" !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 0 !important;
    width: 100% !important;
    min-height: 48px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 6px 6px 6px 8px !important;
    border: none !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: #0f172a !important;
    font-family: inherit !important;
    text-align: left !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__ico,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__ico,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__ico {
    grid-area: ico !important;
    flex: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    background: #eee9ff !important;
    color: #5b4dff !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__ico svg,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__ico svg,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__ico svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__copy,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__copy,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__copy {
    display: contents !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__title,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__title,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__title {
    grid-area: title !important;
    display: block !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__sub,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__sub,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__sub {
    display: none !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__action,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__action,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__action {
    grid-area: action !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 7px 10px !important;
    border: 1.5px solid #5b4dff !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #5b4dff !important;
    box-sizing: border-box !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__action-label,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__action-label,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__action-label {
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__chevron,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__chevron,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__chevron {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #5b4dff !important;
  }

  #orc-form[data-wizard-step="2"] #btn-wiz-resumo .btn-wiz-resumo__chevron svg,
  #orc-form[data-wizard-step="3"] #btn-wiz-resumo .btn-wiz-resumo__chevron svg,
  #orc-form[data-wizard-step="4"] #btn-wiz-resumo .btn-wiz-resumo__chevron svg {
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    transform: rotate(180deg) !important;
  }

  body.pl-summary-mobile-open:has(#orc-form[data-wizard-step="2"]) .wizard-inline-footer,
  body.pl-summary-mobile-open:has(#orc-form[data-wizard-step="3"]) .wizard-inline-footer,
  body.pl-summary-mobile-open:has(#orc-form[data-wizard-step="4"]) .wizard-inline-footer {
    opacity: 0 !important;
    pointer-events: none !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-wiz-back,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-wiz-back,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-back,
  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-secondary,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-secondary,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-secondary {
    order: 1 !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    color: #64748b !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    white-space: nowrap !important;
    line-height: 1 !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-wiz-back::before,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-wiz-back::before,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-back::before {
    content: "" !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 0 0 1px !important;
    border-style: solid !important;
    border-color: currentColor !important;
    border-width: 0 0 2.2px 2.2px !important;
    transform: rotate(45deg) !important;
    flex: 0 0 auto !important;
  }

  #orc-form[data-wizard-step="2"] .wiz-cta-banner,
  #orc-form[data-wizard-step="3"] .wiz-cta-banner,
  #orc-form[data-wizard-step="4"] .wiz-cta-banner {
    order: 2 !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  #orc-form[data-wizard-step="2"] .wiz-cta-banner__main,
  #orc-form[data-wizard-step="3"] .wiz-cta-banner__main,
  #orc-form[data-wizard-step="4"] .wiz-cta-banner__main,
  #orc-form[data-wizard-step="2"] .wiz-cta-banner__dots,
  #orc-form[data-wizard-step="3"] .wiz-cta-banner__dots,
  #orc-form[data-wizard-step="4"] .wiz-cta-banner__dots {
    display: none !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-wiz-primary,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-wiz-primary,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-primary {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: none !important;
    border-radius: 10px !important;
    background: #5b4dff !important;
    box-shadow: 0 8px 16px rgba(91, 77, 255, 0.28) !important;
    box-sizing: border-box !important;
    color: #fff !important;
    white-space: nowrap !important;
  }

  #orc-form[data-wizard-step="4"] .wizard-sticky-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #orc-form[data-wizard-step="4"] .wiz-cta-banner,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-primary {
    display: none !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-wiz-primary:disabled,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-wiz-primary:disabled,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-primary:disabled {
    background: linear-gradient(135deg, #5a5a6e 0%, #45455a 100%) !important;
    box-shadow: none !important;
    color: rgba(255, 255, 255, 0.72) !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
    pointer-events: none !important;
    transform: none !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__text::after,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__text::after,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__text::after {
    color: rgba(255, 255, 255, 0.72) !important;
  }

  #orc-form[data-wizard-step="2"] .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__cta-label,
  #orc-form[data-wizard-step="3"] .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__cta-label,
  #orc-form[data-wizard-step="4"] .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__cta-label {
    border-color: rgba(255, 255, 255, 0.55) !important;
  }

  #orc-form[data-wizard-step="2"] .btn-wiz-primary__text,
  #orc-form[data-wizard-step="3"] .btn-wiz-primary__text,
  #orc-form[data-wizard-step="4"] .btn-wiz-primary__text {
    display: inline-flex !important;
    align-items: center !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    font-size: 0 !important;
    line-height: 1 !important;
    color: transparent !important;
    transform: none !important;
  }

  #orc-form[data-wizard-step="2"] .btn-wiz-primary__text::after,
  #orc-form[data-wizard-step="3"] .btn-wiz-primary__text::after,
  #orc-form[data-wizard-step="4"] .btn-wiz-primary__text::after {
    content: "Avançar" !important;
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: #fff !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  #orc-form[data-wizard-step="2"] .btn-wiz-primary__arrow,
  #orc-form[data-wizard-step="3"] .btn-wiz-primary__arrow,
  #orc-form[data-wizard-step="4"] .btn-wiz-primary__arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    line-height: 1 !important;
  }

  #orc-form[data-wizard-step="2"] .btn-wiz-primary__cta-label,
  #orc-form[data-wizard-step="3"] .btn-wiz-primary__cta-label,
  #orc-form[data-wizard-step="4"] .btn-wiz-primary__cta-label {
    display: block !important;
    font-size: 0 !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 1px 0 0 !important;
    border-style: solid !important;
    border-color: #fff !important;
    border-width: 2.2px 2.2px 0 0 !important;
    transform: rotate(45deg) !important;
    background: transparent !important;
  }

  #orc-form[data-wizard-step="2"] .btn-wiz-primary__cta-dots,
  #orc-form[data-wizard-step="3"] .btn-wiz-primary__cta-dots,
  #orc-form[data-wizard-step="4"] .btn-wiz-primary__cta-dots {
    display: none !important;
  }

  /* ================================================================== */
  /* ETAPA 2 (lógica) — arquivos = #wizard-step-3                        */
  /* ================================================================== */
  #wizard-step-3 .step3-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    align-content: start !important;
  }

  #wizard-step-3 .step3-card > h2 {
    grid-area: 1 / 1 !important;
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 20px 108px 108px 18px !important;
    border: none !important;
    border-radius: 22px !important;
    background: linear-gradient(165deg, #5b4dff 0%, #6d5efc 52%, #7c6aff 100%) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    box-shadow: 0 10px 24px rgba(91, 77, 255, 0.2) !important;
    overflow: hidden !important;
  }

  #wizard-step-3 .step3-card > h2::before {
    content: "Envie os arquivos do seu livro" !important;
    display: block !important;
    max-width: 16ch !important;
    font-size: clamp(1.18rem, 5.4vw, 1.42rem) !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em !important;
    color: #ffffff !important;
  }

  #wizard-step-3 .step3-card > h2::after {
    content: "" !important;
    position: absolute !important;
    right: 10px !important;
    top: 18px !important;
    width: 96px !important;
    height: 96px !important;
    z-index: 2 !important;
    pointer-events: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 108 96'%3E%3Crect x='18' y='18' width='52' height='62' rx='8' fill='%23fff' transform='rotate(-12 44 49)'/%3E%3Crect x='34' y='10' width='54' height='64' rx='8' fill='%23fff' stroke='%23e0e7ff' stroke-width='1'/%3E%3Ctext x='61' y='46' text-anchor='middle' font-size='13' font-weight='800' fill='%237c3aed' font-family='system-ui,sans-serif'%3EPDF%3C/text%3E%3Ccircle cx='86' cy='70' r='18' fill='%237c6aff'/%3E%3Cpath d='M86 62v12M80 70l6-7 6 7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: right top !important;
  }

  #wizard-step-3 .step3-card > .step3-lead {
    grid-area: 1 / 1 !important;
    position: relative !important;
    z-index: 3 !important;
    align-self: end !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 108px 18px 18px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-3 .step3-card > .step3-lead strong {
    display: none !important;
  }

  #wizard-step-3 .step3-card > .step3-lead::before {
    content: "O envio é feito em PDF. Você poderá substituir os arquivos depois pelo painel do cliente." !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    font-size: clamp(0.72rem, 3.15vw, 0.8rem) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
    color: rgba(255, 255, 255, 0.92) !important;
  }

  #wizard-step-3 .step3-card > .step3-lead::after {
    content: "Seus arquivos são seguros e confidenciais." !important;
    display: block !important;
    margin-top: 0.65rem !important;
    padding-left: 1.15rem !important;
    font-size: clamp(0.66rem, 2.9vw, 0.74rem) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: left 1px !important;
    background-size: 12px !important;
  }

  html.is-help-mode #wizard-step-3.wizard-step > .card > .pl-calc-flow-help,
  #wizard-step-3 .pl-calc-flow-help,
  #wizard-step-2 .pl-calc-flow-help,
  #wizard-step-4 .pl-calc-flow-help {
    display: none !important;
  }

  #wizard-step-3 .step3-choice-text,
  #wizard-step-3 .step3-choice-title,
  #wizard-step-3 .step3-choice-sub {
    overflow: visible !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    max-height: none !important;
    white-space: normal !important;
  }

  #wizard-step-3 .step3-block.step3-section {
    margin: 12px 0 0 !important;
    padding: 16px !important;
    border: 1px solid #e6ebf5 !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05) !important;
    box-sizing: border-box !important;
  }

  #wizard-step-3 .step3-section-head {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 0 0 12px !important;
  }

  #wizard-step-3 span.step3-section-num {
    width: 1.55rem !important;
    height: 1.55rem !important;
    margin: 0 !important;
    background: #5b4dff !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
  }

  #wizard-step-3 .step3-section--1 .step3-section-title {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-3 .step3-section--1 .step3-section-title::after {
    content: "Arquivos em PDF" !important;
    display: block !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    color: #1e293b !important;
  }

  #wizard-step-3 .step3-section--1 .step3-block-title-wrap::after {
    content: "Envie o PDF da capa e do miolo. Apenas arquivos em PDF." !important;
    display: block !important;
    margin-top: 4px !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    color: #64748b !important;
  }

  #wizard-step-3 .step3-section--1 .step3-block-title-wrap::after strong,
  #wizard-step-3 .step3-section--1 .step3-help {
    display: none !important;
  }

  #wizard-step-3 .step3-section--1 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  #wizard-step-3 .step3-section--1 > .step3-section-head {
    grid-column: 1 / -1 !important;
    order: 1 !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice {
    order: 2 !important;
  }

  #wizard-step-3 .step3-section--1::after {
    order: 3 !important;
  }

  #wizard-step-3 .step3-section--1 > .hint,
  #wizard-step-3 #arq-disp-hint-depois {
    order: 4 !important;
  }

  #wizard-step-3 .step3-section--1 > .hint,
  #wizard-step-3 #arq-disp-hint-depois {
    grid-column: 1 / -1 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 4px !important;
    border: none !important;
    background: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
  }

  #wizard-step-3 .step3-section--1 > .hint::after,
  #wizard-step-3 #arq-disp-hint-depois::after {
    content: "Você poderá substituir os arquivos a qualquer momento pelo painel do cliente." !important;
    display: block !important;
    font-size: 0.7rem !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    color: #94a3b8 !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice {
    overflow: visible !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice-sub::after,
  #wizard-step-3 .step3-section--1 .step3-choice-title::after {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  #wizard-step-3 .step3-section--3.is-step3-locked,
  #wizard-step-3 .step3-section--3[hidden] {
    display: grid !important;
    min-height: 0 !important;
    overflow: visible !important;
    margin: 12px 0 0 !important;
    padding: 16px 16px 10px !important;
    border: 1px solid #e6ebf5 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-radius: 20px 20px 0 0 !important;
    background: #ffffff !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05) !important;
    pointer-events: auto !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px 10px 12px !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    min-height: 158px !important;
    height: auto !important;
    align-self: stretch !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice:has(input:checked) {
    border-color: #7c6aff !important;
    background: #f4f2ff !important;
    box-shadow: 0 0 0 1px rgba(124, 106, 255, 0.18) !important;
  }

  #wizard-step-3 .step3-choice {
    margin-bottom: 0 !important;
  }

  #wizard-step-3 .step3-choice input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 1.05rem !important;
    height: 1.05rem !important;
    margin: 0 !important;
    border: 2px solid #c9d0e0 !important;
    border-radius: 50% !important;
    background: #fff !important;
    flex-shrink: 0 !important;
    display: block !important;
  }

  #wizard-step-3 .step3-choice:has(input:checked) input[type="radio"] {
    border-color: #5b4dff !important;
    background: radial-gradient(circle, #5b4dff 0 5px, #fff 6px 100%) !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice input[type="radio"] {
    position: absolute !important;
    top: 12px !important;
    left: 10px !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice {
    position: relative !important;
    padding-left: 12px !important;
    padding-top: 14px !important;
  }

  #wizard-step-3 .step3-choice-body {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    padding-top: 10px !important;
  }

  #wizard-step-3 .step3-choice-ico {
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    border-radius: 50% !important;
    background: #eef2ff !important;
    color: #5b4dff !important;
  }

  #wizard-step-3 .step3-section--1 .step3-choice:has(input:checked) .step3-choice-ico {
    background: #ece8ff !important;
  }

  #wizard-step-3 .step3-choice-text {
    width: 100% !important;
    min-width: 0 !important;
    gap: 4px !important;
  }

  #wizard-step-3 .step3-section--1 label:has(#arq-disp-agora) .step3-choice-title,
  #wizard-step-3 .step3-section--1 label:has(#arq-disp-depois) .step3-choice-title {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-3 .step3-section--1 label:has(#arq-disp-agora) .step3-choice-sub,
  #wizard-step-3 .step3-section--1 label:has(#arq-disp-depois) .step3-choice-sub {
    display: none !important;
  }

  #wizard-step-3 .step3-section--1 label:has(#arq-disp-agora) .step3-choice-title::after {
    content: "Enviar agora os\A arquivos." !important;
    display: block !important;
    font-size: clamp(0.72rem, 3.15vw, 0.84rem) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
    white-space: pre-line !important;
  }

  #wizard-step-3 .step3-section--1 label:has(#arq-disp-depois) .step3-choice-title::after {
    content: "Não,\A Enviar depois." !important;
    display: block !important;
    font-size: clamp(0.72rem, 3.15vw, 0.84rem) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
    white-space: pre-line !important;
  }

  #wizard-step-3 .step3-section--1::after {
    content: none !important;
    display: none !important;
  }

  #wizard-step-3:has(#arq-disp-agora:checked) #arq-disp-hint-depois {
    display: none !important;
  }

  #wizard-step-3:has(#arq-disp-agora:checked) .step3-section--1 {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom: none !important;
    padding-bottom: 8px !important;
    margin-bottom: 0 !important;
  }

  #wizard-step-3:not(:has(#arq-disp-agora:checked)) #wrap-uploads-pdf {
    display: none !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }

  #wizard-step-3:has(#arq-disp-agora:checked) #wrap-uploads-pdf,
  #wizard-step-3:has(#arq-disp-agora:checked) #wrap-uploads-pdf.step3-block--uploads,
  #wizard-step-3:has(#arq-disp-agora:checked) #wrap-uploads-pdf[hidden],
  #wizard-step-3:has(#arq-disp-agora:checked) #wrap-uploads-pdf.is-step3-locked {
    display: flex !important;
    visibility: visible !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 4px 14px 14px !important;
    min-height: 0 !important;
    height: auto !important;
    border: 1px solid #e6ebf5 !important;
    border-top: none !important;
    border-radius: 0 0 20px 20px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05) !important;
    overflow: visible !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-section-head {
    display: none !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field.field {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-top: 1.45rem !important;
    border: none !important;
    background: transparent !important;
    min-height: 0 !important;
    height: auto !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .pl-arq-how {
    display: inline-flex !important;
    position: absolute !important;
    top: -1.4rem !important;
    left: 2px !important;
    z-index: 6 !important;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    color: #5b4dff !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    font-family: inherit !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    white-space: nowrap !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-layout {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 54px !important;
    padding: 10px 14px !important;
    border: 1.5px solid #cfd6ea !important;
    border-radius: 16px !important;
    background: #f7f8ff !important;
    box-sizing: border-box !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:has(#file-miolo) .step3-upload-layout {
    background: #f4fbf7 !important;
    border-color: #c9e9d6 !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field.is-upload-ok .step3-upload-layout {
    background: #ecfdf5 !important;
    border-color: #86efac !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-left {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    pointer-events: none !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-ico {
    flex: 0 0 auto !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #ece8ff !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:has(#file-miolo) .step3-upload-ico {
    background: #dcfce7 !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy label,
  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy .step3-upload-hint {
    font-size: 0 !important;
    line-height: 0 !important;
    margin: 0 !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:has(#file-capa) .step3-upload-copy label::after {
    content: "Enviar capa em PDF" !important;
    display: block !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    color: #1e293b !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field:has(#file-miolo) .step3-upload-copy label::after {
    content: "Enviar seu miolo em PDF" !important;
    display: block !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    color: #1e293b !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-copy .step3-upload-hint::after {
    content: "Toque para selecionar o arquivo" !important;
    display: block !important;
    margin-top: 3px !important;
    font-size: 0.68rem !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    color: #64748b !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field.is-upload-ok .step3-upload-copy .step3-upload-hint::after {
    content: "PDF enviado" !important;
    color: #166534 !important;
    font-weight: 700 !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: 100% !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 16px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop::before {
    content: none !important;
    display: none !important;
  }

  #wizard-step-3 #wrap-uploads-pdf > .step3-upload-field .step3-upload-drop input[type="file"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    opacity: 0 !important;
    cursor: pointer !important;
    font-size: 16px !important;
  }

  #wizard-step-3 #wrap-uploads-pdf::after {
    content: "Você poderá substituir os arquivos depois pelo painel do cliente." !important;
    display: block !important;
    margin: 2px 8px 0 !important;
    font-size: 0.7rem !important;
    line-height: 1.4 !important;
    text-align: center !important;
    color: #94a3b8 !important;
  }

  #wizard-step-3 .step3-upload-feedback:not([hidden]) {
    margin: 6px 2px 0 !important;
    font-size: 0.72rem !important;
  }

  #wizard-step-3 .step3-section--3 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    padding-bottom: 10px !important;
  }

  #wizard-step-3 .step3-section--3 > .step3-section-head {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: start !important;
    column-gap: 10px !important;
    row-gap: 4px !important;
  }

  #wizard-step-3 .step3-section--3 .step3-section-num--green {
    background: #5b4dff !important;
    font-size: 0 !important;
  }

  #wizard-step-3 .step3-section--3 .step3-section-num--green::after {
    content: "2" !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    color: #fff !important;
  }

  #wizard-step-3 .step3-section--3 .step3-review-head-inner {
    min-width: 0 !important;
  }

  #wizard-step-3 .step3-section--3 .step3-section-title {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-3 .step3-section--3 .step3-section-title::after {
    content: "Montagem (boneco virtual)" !important;
    display: block !important;
    font-size: clamp(0.88rem, 3.6vw, 0.98rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    color: #1e293b !important;
    white-space: nowrap !important;
  }

  #wizard-step-3 .step3-section--3 .step3-help {
    margin: 4px 0 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-3 .step3-section--3 .step3-help::after {
    content: "Veja como seu livro ficará antes da impressão. Não inclui revisão ortográfica nem de texto." !important;
    display: block !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    color: #64748b !important;
  }

  #wizard-step-3 .step3-section--3 .step3-section-head--review::after {
    content: "Opcional" !important;
    align-self: start !important;
    margin-top: 2px !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    background: #eef2ff !important;
    color: #5b4dff !important;
    font-size: 0.62rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    padding: 14px 10px 14px !important;
    min-height: 176px !important;
    height: auto !important;
    align-self: stretch !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 16px !important;
    background: #fff !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) {
    border-color: #86efac !important;
    background: #ecfdf5 !important;
    box-shadow: none !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-nao:checked) {
    border-color: #c9d0e0 !important;
    background: #fff !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice input[type="radio"] {
    position: absolute !important;
    top: 12px !important;
    left: 10px !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) input[type="radio"] {
    border-color: #16a34a !important;
    background: radial-gradient(circle, #16a34a 0 5px, #fff 6px 100%) !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice-body {
    align-items: center !important;
    text-align: center !important;
    padding-top: 8px !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice-ico {
    background: #eef2ff !important;
    color: #5b4dff !important;
  }

  #wizard-step-3 .step3-section--3 .step3-choice:has(#revisao-sim:checked) .step3-choice-ico {
    background: #dcfce7 !important;
    color: #16a34a !important;
  }

  #wizard-step-3 .step3-section--3 label:has(#revisao-sim) .step3-choice-title,
  #wizard-step-3 .step3-section--3 label:has(#revisao-nao) .step3-choice-title,
  #wizard-step-3 .step3-section--3 label:has(#revisao-sim) .step3-choice-sub,
  #wizard-step-3 .step3-section--3 label:has(#revisao-nao) .step3-choice-sub {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-3 .step3-section--3 label:has(#revisao-sim) .step3-choice-title::after {
    content: "Sim, quero ver antes" !important;
    display: block !important;
    font-size: clamp(0.72rem, 3.1vw, 0.82rem) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
  }

  #wizard-step-3 .step3-section--3 label:has(#revisao-sim) .step3-choice-sub::before {
    content: "+ R$ 350,00" !important;
    display: block !important;
    margin: 2px 0 4px !important;
    font-size: clamp(0.78rem, 3.3vw, 0.9rem) !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: #16a34a !important;
    white-space: nowrap !important;
  }

  #wizard-step-3 .step3-section--3 label:has(#revisao-sim) .step3-choice-sub::after {
    content: "Enviaremos a montagem digital para sua aprovação." !important;
    display: block !important;
    font-size: clamp(0.6rem, 2.6vw, 0.68rem) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: #64748b !important;
  }

  #wizard-step-3 .step3-section--3 label:has(#revisao-nao) .step3-choice-title::after {
    content: "Não, não quero esse serviço" !important;
    display: block !important;
    font-size: clamp(0.72rem, 3.1vw, 0.82rem) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
  }

  #wizard-step-3 .step3-section--3 label:has(#revisao-nao) .step3-choice-sub::after {
    content: "Pode seguir direto para produção." !important;
    display: block !important;
    margin-top: 4px !important;
    font-size: clamp(0.6rem, 2.6vw, 0.68rem) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: #64748b !important;
  }

  #wizard-step-3 .step3-panel-footer,
  #wizard-step-3 .step3-panel-footer__ico,
  #wizard-step-3 .step3-panel-footer::after {
    display: none !important;
    content: none !important;
  }

  /* ================================================================== */
  /* ETAPA 3 (lógica) — dados = #wizard-step-2                           */
  /* ================================================================== */
  #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card,
  .layout-main #wizard-step-2.wizard-step > .card {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > .hint,
  .layout-main #wizard-step-2.wizard-step > .card > .hint {
    display: none !important;
  }

  #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2,
  .layout-main #wizard-step-2.wizard-step > .card > h2 {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 12px !important;
    padding: 20px 108px 18px 18px !important;
    min-height: 148px !important;
    border: none !important;
    border-bottom: none !important;
    border-radius: 22px !important;
    background-color: #5b4dff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 108 96'%3E%3Crect x='16' y='20' width='54' height='58' rx='8' fill='%23fff' transform='rotate(-10 43 49)'/%3E%3Crect x='34' y='12' width='54' height='60' rx='8' fill='%23fff' stroke='%23e0e7ff' stroke-width='1'/%3E%3Ccircle cx='61' cy='36' r='8' fill='%23eef2ff'/%3E%3Cpath d='M49 58c0-6.6 5.4-10 12-10s12 3.4 12 10' fill='none' stroke='%237c3aed' stroke-width='2'/%3E%3Ccircle cx='86' cy='70' r='18' fill='%237c6aff'/%3E%3Cpath d='M86 62v12M80 70l6-7 6 7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"), linear-gradient(165deg, #5b4dff 0%, #6d5efc 52%, #7c6aff 100%) !important;
    background-repeat: no-repeat !important;
    background-position: right 10px top 16px, 0 0 !important;
    background-size: 96px 96px, auto !important;
    box-shadow: 0 10px 24px rgba(91, 77, 255, 0.2) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    overflow: hidden !important;
  }

  #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2::before,
  .layout-main #wizard-step-2.wizard-step > .card > h2::before {
    content: "Complete seus dados" !important;
    display: block !important;
    width: auto !important;
    max-width: 16ch !important;
    height: auto !important;
    margin: 0 !important;
    background: none !important;
    font-size: clamp(1.18rem, 5.4vw, 1.42rem) !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em !important;
    color: #ffffff !important;
  }

  #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2::after,
  .layout-main #wizard-step-2.wizard-step > .card > h2::after {
    content: "Usaremos estes dados para contato, pedido e entrega." !important;
    display: block !important;
    margin: 10px 0 0 !important;
    max-width: 22ch !important;
    font-size: clamp(0.72rem, 3.15vw, 0.8rem) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
    color: rgba(255, 255, 255, 0.92) !important;
  }

  #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2 .pl-auth-hub:has(#step2-inline-forms:not([hidden])) > .pl-auth-hub__tabs {
    display: grid !important;
  }

  #wizard-step-2 .pl-auth-hub {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  #wizard-step-2 .pl-auth-hub:has(#step2-inline-forms:not([hidden])) > .pl-auth-hub__tabs {
    display: grid !important;
  }

  #wizard-step-2 .pl-auth-hub__tabs {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
  }

  #wizard-step-2 .pl-auth-hub__tab {
    min-width: 0 !important;
    min-height: 48px !important;
    height: 48px !important;
    padding: 0 8px !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 16px !important;
    background: #fff !important;
    color: #64748b !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  #wizard-step-2 .pl-auth-hub__tab.is-active {
    background: #5b4dff !important;
    border-color: #5b4dff !important;
    color: #fff !important;
  }

  #wizard-step-2 .pl-auth-choice-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
  }

  #wizard-step-2 #pl-auth-create-choice[hidden],
  #wizard-step-2 .pl-auth-choice-grid[hidden] {
    display: none !important;
  }

  #wizard-step-2 .pl-auth-choice-btn {
    min-width: 0 !important;
    min-height: 48px !important;
    height: 48px !important;
    padding: 0 8px !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 16px !important;
    background: #fff !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    box-shadow: none !important;
  }

  #wizard-step-2 .pl-auth-choice-btn.is-active {
    background: #5b4dff !important;
    border-color: #5b4dff !important;
    box-shadow: none !important;
  }

  #wizard-step-2 .pl-auth-choice-btn__title {
    margin: 0 !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: #334155 !important;
    white-space: nowrap !important;
  }

  #wizard-step-2 .pl-auth-choice-btn.is-active .pl-auth-choice-btn__title {
    color: #fff !important;
  }

  #wizard-step-2 .pl-auth-choice-btn__sub {
    display: none !important;
  }

  #wizard-step-2 .step2-inline-forms:not([hidden]) {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 0 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card {
    margin: 0 !important;
    padding: 16px !important;
    border: 1px solid #e6ebf5 !important;
    border-style: solid !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    min-width: 0 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card > h2 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 10px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    color: #1e293b !important;
    font-size: 1.02rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  #wizard-step-2 .step2-inline-forms > .card > h2::before {
    width: 1.7rem !important;
    height: 1.7rem !important;
    border-radius: 50% !important;
    background-color: #eef2ff !important;
    background-size: 16px !important;
    background-position: center !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child > h2::after,
  #wizard-step-2 .step2-inline-forms > .card:last-child > h2::after {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 6px 0 0 !important;
    padding: 0 2px 0 0 !important;
    box-sizing: border-box !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    color: #94a3b8 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child > h2::after {
    content: "Usadas para contato e emissão do pedido." !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child > h2::after {
    content: "Entrega no endereço ou retirada na gráfica." !important;
  }

  #wizard-step-2 .step2-inline-forms label {
    display: block !important;
    margin: 0 0 6px !important;
    font-size: clamp(0.68rem, 3vw, 0.76rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #334155 !important;
    white-space: nowrap !important;
  }

  #wizard-step-2 .step2-inline-forms .muted {
    color: #5b4dff !important;
  }

  #wizard-step-2 .step2-inline-forms .field {
    min-width: 0 !important;
    margin: 0 !important;
  }

  #wizard-step-2 .step2-inline-forms input[type="text"],
  #wizard-step-2 .step2-inline-forms input[type="email"],
  #wizard-step-2 .step2-inline-forms input[type="tel"],
  #wizard-step-2 .step2-inline-forms input[type="password"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 12px 0 40px !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 12px !important;
    background-color: #fff !important;
    background-repeat: no-repeat !important;
    background-position: 12px center !important;
    background-size: 16px !important;
    color: #1e293b !important;
    font-size: 0.84rem !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
  }

  #wizard-step-2 #reg-nome,
  #wizard-step-2 #reg-cpf,
  #wizard-step-2 #reg-email,
  #wizard-step-2 #reg-whats,
  #wizard-step-2 #reg-create-password,
  #wizard-step-2 #reg-create-password2,
  #wizard-step-2 #reg-cep,
  #wizard-step-2 #reg-logradouro,
  #wizard-step-2 #reg-numero,
  #wizard-step-2 #reg-complemento,
  #wizard-step-2 #reg-bairro,
  #wizard-step-2 #reg-cidade,
  #wizard-step-2 #reg-uf {
    background-repeat: no-repeat !important;
    background-position: 12px center !important;
    background-size: 16px !important;
    background-color: #fff !important;
  }

  #wizard-step-2 #reg-nome {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-cpf {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-email {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-whats {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2322c55e'%3E%3Cpath d='M12.04 2C6.58 2 2.15 6.43 2.15 11.89c0 1.75.46 3.45 1.32 4.95L2 22l5.3-1.39a9.86 9.86 0 0 0 4.74 1.21h.01c5.46 0 9.89-4.43 9.89-9.89C21.94 6.43 17.5 2 12.04 2zm5.76 14.08c-.24.68-1.4 1.26-1.94 1.34-.5.07-1.12.1-1.81-.11-.42-.13-.95-.31-1.64-.6-2.89-1.25-4.77-4.16-4.92-4.35-.14-.19-1.18-1.57-1.18-3 0-1.42.75-2.12 1.01-2.41.26-.29.57-.36.76-.36h.55c.17 0 .41-.07.64.49.24.58.82 2 .89 2.14.07.15.12.32.02.51-.1.19-.15.32-.3.49-.15.17-.31.37-.44.5-.15.15-.3.31-.13.6.17.3.76 1.25 1.63 2.03 1.12 1 2.07 1.31 2.36 1.46.3.15.47.12.64-.07.17-.19.74-.86.94-1.16.2-.29.4-.24.67-.15.27.1 1.71.81 2 .95.29.15.49.22.56.34.07.12.07.68-.17 1.36z'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-create-password,
  #wizard-step-2 #reg-create-password2 {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-cep {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-logradouro {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Cpath d='M3 11 12 3l9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-numero {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M8 7h.01M16 7h.01M8 17h.01M16 17h.01M10 7h4M10 17h4M8 12h8'/%3E%3C/svg%3E") !important;
    padding-left: 36px !important;
  }

  #wizard-step-2 #reg-complemento {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M9 21V9h6v12'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 #reg-bairro,
  #wizard-step-2 #reg-cidade {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.7'%3E%3Cpath d='M3 21h18M5 21V8l7-5 7 5v13'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-2 .step2-inline-forms input#reg-uf {
    background-image: none !important;
    padding: 0 6px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    font-size: 0.84rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    caret-color: #5b4dff !important;
    overflow: visible !important;
  }

  #wizard-step-2 .step2-inline-forms input::placeholder {
    color: #94a3b8 !important;
    font-size: 0.78rem !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="nome"]),
  #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="senha"]) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    margin: 0 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child > .field[data-step2-key="email"] {
    margin: 0 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="whats"]) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    margin: 0 !important;
    align-items: end !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:first-child > .grid.grid-2:has([data-step2-key="whats"])::after {
    content: "Usaremos seu WhatsApp para enviar atualizações do seu pedido." !important;
    display: flex !important;
    align-items: center !important;
    min-height: 46px !important;
    margin-bottom: 0 !important;
    padding: 8px 10px 8px 34px !important;
    border-radius: 12px !important;
    border: 1px solid #bbf7d0 !important;
    background-color: #f0fdf4 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='1.8'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: 10px center !important;
    background-size: 16px !important;
    color: #15803d !important;
    font-size: clamp(0.62rem, 2.7vw, 0.7rem) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
  }

  #wizard-step-2 .reg-frete-summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin: 0 0 2px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    border: 1px solid #ddd6fe !important;
    background: #f5f3ff !important;
    color: #5b4dff !important;
    font-size: clamp(0.68rem, 3vw, 0.76rem) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }

  #wizard-step-2 .reg-frete-summary::before {
    content: "" !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.7'%3E%3Crect x='1' y='7' width='15' height='10' rx='2'/%3E%3Cpath d='M16 9h3l3 3v5h-6V9z'/%3E%3Ccircle cx='6.5' cy='18.5' r='1.5'/%3E%3Ccircle cx='18.5' cy='18.5' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }

  #wizard-step-2 .reg-frete-summary::after {
    content: "Alterar ›" !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    color: #5b4dff !important;
  }

  #wizard-step-2 .field[data-step2-key="cep"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "label label" "input btn" "hint hint" !important;
    column-gap: 8px !important;
    align-items: center !important;
  }

  #wizard-step-2 .field[data-step2-key="cep"] > label {
    grid-area: label !important;
  }

  #wizard-step-2 .field[data-step2-key="cep"] > input {
    grid-area: input !important;
  }

  #wizard-step-2 .field[data-step2-key="cep"]::after {
    grid-area: btn !important;
    content: "Buscar" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 46px !important;
    padding: 0 14px !important;
    border-radius: 12px !important;
    background: #5b4dff !important;
    color: #fff !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    pointer-events: none !important;
  }

  #wizard-step-2 .field[data-step2-key="cep"] > .hint {
    grid-area: hint !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.2fr) minmax(3.8rem, 0.7fr) !important;
    gap: 12px 8px !important;
    align-items: start !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child > h2,
  #wizard-step-2 .step2-inline-forms > .card:last-child > .reg-frete-summary,
  #wizard-step-2 .step2-inline-forms > .card:last-child > .field[data-step2-key="cep"],
  #wizard-step-2 .step2-inline-forms > .card:last-child > .field:not(.step2-seq-box) {
    grid-column: 1 / -1 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child > .grid.grid-2:has([data-step2-key="logradouro"]),
  #wizard-step-2 .step2-inline-forms > .card:last-child > .grid.grid-2:has([data-step2-key="bairro"]) {
    display: contents !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child .field[data-step2-key="logradouro"] {
    grid-column: 1 / 3 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child .field[data-step2-key="numero"] {
    grid-column: 3 / 4 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child .field[data-step2-key="bairro"] {
    grid-column: 1 / 2 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child .field[data-step2-key="cidade"] {
    grid-column: 2 / 3 !important;
  }

  #wizard-step-2 .step2-inline-forms > .card:last-child .field[data-step2-key="uf"] {
    grid-column: 3 / 4 !important;
  }

  /* ================================================================== */
  /* ETAPA 4 — pagamento                                                */
  /* ================================================================== */
  #wizard-step-4.wizard-step {
    padding: 0 !important;
    background: transparent !important;
  }

  #orc-form.layout-shell #wizard-step-4.wizard-step > .card,
  .layout-main #wizard-step-4.wizard-step > .card {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    max-width: none !important;
  }

  #wizard-step-4 > .card > h2 {
    order: 0 !important;
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 20px 108px 18px 18px !important;
    min-height: 148px !important;
    border: none !important;
    border-radius: 22px !important;
    background-color: #5b4dff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 108 96'%3E%3Crect x='16' y='22' width='56' height='38' rx='8' fill='%23fff' transform='rotate(-12 44 41)'/%3E%3Crect x='32' y='16' width='56' height='38' rx='8' fill='%23fff' stroke='%23e0e7ff' stroke-width='1'/%3E%3Crect x='40' y='28' width='18' height='12' rx='2' fill='%23eef2ff'/%3E%3Ccircle cx='86' cy='70' r='18' fill='%237c6aff'/%3E%3Cpath d='M86 62v12M80 70l6-7 6 7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"), linear-gradient(165deg, #5b4dff 0%, #6d5efc 52%, #7c6aff 100%) !important;
    background-repeat: no-repeat !important;
    background-position: right 10px top 16px, 0 0 !important;
    background-size: 96px 96px, auto !important;
    box-shadow: 0 10px 24px rgba(91, 77, 255, 0.2) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  #wizard-step-4 > .card > h2::before {
    content: "Pagamento" !important;
    display: block !important;
    width: auto !important;
    max-width: 16ch !important;
    height: auto !important;
    margin: 0 !important;
    background: none !important;
    font-size: clamp(1.18rem, 5.4vw, 1.42rem) !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em !important;
    color: #ffffff !important;
  }

  #wizard-step-4 > .card > h2::after {
    content: "Ambiente seguro · escolha a forma de pagamento." !important;
    display: block !important;
    margin: 10px 0 0 !important;
    max-width: 22ch !important;
    font-size: clamp(0.72rem, 3.15vw, 0.8rem) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
    color: rgba(255, 255, 255, 0.92) !important;
  }

  #wizard-step-4 .wizard-step4-head-desc,
  #wizard-step-4 .wizard-step4-intro,
  #wizard-step-4 #wizard-step4-resumo-popup-note,
  #wizard-step-4 .wizard-step4-security-banner {
    display: none !important;
  }

  #wizard-step-4 .wizard-step4-section-title {
    order: 2 !important;
    margin: 4px 2px 0 !important;
    font-size: 0.62rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #94a3b8 !important;
    white-space: nowrap !important;
  }

  #wizard-step-4 .pay-methods-row {
    order: 3 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 8px !important;
    border: 1px solid #e6ebf5 !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05) !important;
    box-sizing: border-box !important;
  }

  #wizard-step-4 .pay-method-card {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) 22px !important;
    grid-template-rows: auto auto !important;
    column-gap: 10px !important;
    row-gap: 2px !important;
    align-items: center !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px 12px !important;
    border: 1.5px solid transparent !important;
    border-radius: 16px !important;
    background: #f7f8fc !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  #wizard-step-4 .pay-method-card > input {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
  }

  #wizard-step-4 .pay-method-card:has(input:checked) {
    border: 1.5px solid #5b4dff !important;
    background: #f4f2ff !important;
    box-shadow: none !important;
  }

  #wizard-step-4 .pay-method-card__icon {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    display: block !important;
    align-self: center !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    border-radius: 12px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
    background-color: #f8fafc !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 26px 26px !important;
  }

  #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__icon {
    background-color: #ffffff !important;
  }

  #wizard-step-4 .pay-method-card__icon--pix,
  #wizard-step-4 .pay-method-card:has(#pay-pix) .pay-method-card__icon {
    background-color: #e6fbf7 !important;
    background-image: url("assets/img/mobile/wizard/pix-logo.svg") !important;
    background-size: 28px 28px !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__icon {
    background-color: #eef2ff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect x='7' y='8' width='34' height='32' rx='4' fill='%23fff' stroke='%234f46e5' stroke-width='2'/%3E%3Cpath fill='%234f46e5' d='M11 28h2v8h-2zm4 0h1.2v8H15zm3.2 0h2.2v8h-2.2zm4 0h1v8h-1zm2.4 0h2.4v8h-2.4zm4 0h1.2v8H28.6zm2.6 0h2.2v8h-2.2zm3.6 0h2v8h-2z'/%3E%3Cpath stroke='%234f46e5' stroke-width='1.6' d='M12 14h24M12 18h16' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-size: 28px 28px !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__icon {
    background-color: #eef6ff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 40'%3E%3Crect x='1' y='4' width='54' height='32' rx='5' fill='%231A1F71'/%3E%3Crect x='1' y='12' width='54' height='6' fill='%23F7B600'/%3E%3Crect x='6' y='22' width='10' height='7' rx='1.2' fill='%23E0E7FF'/%3E%3Ccircle cx='37' cy='26' r='5.2' fill='%23EB001B'/%3E%3Ccircle cx='43' cy='26' r='5.2' fill='%23F79E1B'/%3E%3Cpath fill='%23FF5F00' d='M40 22.2a5.2 5.2 0 0 1 0 7.6 5.2 5.2 0 0 1 0-7.6z'/%3E%3C/svg%3E") !important;
    background-size: 30px 22px !important;
  }

  #wizard-step-4 .pay-method-card--combined .pay-method-card__icon,
  #wizard-step-4 .pay-method-card:has(#pay-combined) .pay-method-card__icon {
    background-color: #f3e8ff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect x='6' y='14' width='24' height='16' rx='3' fill='%2332BCAD'/%3E%3Crect x='18' y='20' width='24' height='16' rx='3' fill='%231A1F71'/%3E%3Crect x='18' y='24' width='24' height='3' fill='%23F7B600'/%3E%3C/svg%3E") !important;
    background-size: 28px 28px !important;
  }

  #wizard-step-4 .pay-method-card__title {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
  }

  #wizard-step-4 .pay-method-card__sub {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: block !important;
    margin: 0 !important;
    font-size: 0.7rem !important;
    line-height: 1.3 !important;
    color: #64748b !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__title {
    font-size: 0 !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__title::after {
    content: "Boleto bancário" !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__sub,
  #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__sub,
  #wizard-step-4 .pay-method-card--combined .pay-method-card__sub {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__sub::after {
    content: "Compensa em 1 a 3 dias úteis" !important;
    display: block !important;
    font-size: 0.7rem !important;
    line-height: 1.3 !important;
    color: #64748b !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-cartao) .pay-method-card__sub::after {
    content: "Até 12x · 100% do total" !important;
    display: block !important;
    white-space: nowrap !important;
    font-size: 0.7rem !important;
    line-height: 1.3 !important;
    color: #64748b !important;
  }

  #wizard-step-4 .pay-method-card--combined .pay-method-card__title {
    white-space: nowrap !important;
    font-size: 0.86rem !important;
    line-height: 1.2 !important;
  }

  #wizard-step-4 .pay-method-card--combined .pay-method-card__sub::after {
    content: "Divida em duas formas" !important;
    display: block !important;
    white-space: nowrap !important;
    font-size: 0.7rem !important;
    line-height: 1.3 !important;
    color: #64748b !important;
  }

  #wizard-step-4 .pay-method-card__pill {
    display: none !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-pix) .pay-method-card__sub {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-4 .pay-method-card:has(#pay-pix) .pay-method-card__sub::after {
    content: "Aprovado na hora" !important;
    display: block !important;
    font-size: 0.7rem !important;
    line-height: 1.3 !important;
    color: #0f9f6e !important;
    font-weight: 700 !important;
  }

  #wizard-step-4 .pay-method-card__radio {
    position: static !important;
    grid-column: 3 !important;
    grid-row: 1 / 3 !important;
    align-self: center !important;
    justify-self: end !important;
    width: 1.15rem !important;
    height: 1.15rem !important;
    border: 2px solid #d1d9e6 !important;
    border-radius: 50% !important;
    background: #fff !important;
  }

  #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio {
    border-color: #5b4dff !important;
    background: #5b4dff !important;
  }

  #wizard-step-4 .pay-method-card:has(input:checked) .pay-method-card__radio::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 0.26rem !important;
    height: 0.46rem !important;
    margin: 0 !important;
    border: solid #fff !important;
    border-width: 0 2px 2px 0 !important;
    transform: translate(-50%, -58%) rotate(45deg) !important;
  }

  #wizard-step-4 #pay-combined-panel { order: 4 !important; }
  #wizard-step-4 #pay-cc-install-row { order: 5 !important; }
  #wizard-step-4 #pay-cc-panel { order: 6 !important; }
  #wizard-step-4 #pay-asaas-status,
  #wizard-step-4 #wizard-step4-loading-line,
  #wizard-step-4 #wizard-step4-post-checkout-banner { order: 4 !important; }

  #wizard-step-4 #wizard-step4-resumo {
    order: 7 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 2px 0 0 !important;
    padding: 14px 16px !important;
    border: 1px solid #e6ebf5 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05) !important;
    box-sizing: border-box !important;
  }

  #wizard-step-4 .wizard-step4-resumo__title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-4 .wizard-step4-resumo__title::before {
    content: "" !important;
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 8px !important;
    background: #eef2ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.7'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center / 16px no-repeat !important;
  }

  #wizard-step-4 .wizard-step4-resumo__title::after {
    content: "Total do pedido" !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #64748b !important;
    white-space: nowrap !important;
  }

  #wizard-step-4 .wizard-step4-resumo__list {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
    list-style: none !important;
  }

  #wizard-step-4 #wizard-step4-resumo-line1 {
    margin: 0 !important;
    font-size: clamp(1.05rem, 4.6vw, 1.28rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.15 !important;
    color: #5b4dff !important;
  }

  #wizard-step-4 .wizard-step4-resumo__list::after {
    content: none !important;
  }

  #wizard-step-4 #wizard-step4-resumo::after {
    content: none !important;
    display: none !important;
  }

  #wizard-step-4 #wizard-step4-pay-cta {
    order: 8 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar,
  #wizard-step-4 .wizard-step4-btn-pagar {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 56px !important;
    height: 56px !important;
    padding: 0 16px !important;
    border: none !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #5b4dff 0%, #6d5efc 100%) !important;
    color: #fff !important;
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    text-transform: none !important;
    white-space: nowrap !important;
    box-shadow: 0 8px 18px rgba(91, 77, 255, 0.26) !important;
    box-sizing: border-box !important;
  }

  #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar::before,
  #wizard-step-4 .wizard-step4-btn-pagar::before {
    content: "" !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 16px !important;
    height: 16px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }

  #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar::after,
  #wizard-step-4 .wizard-step4-btn-pagar::after {
    content: none !important;
    display: none !important;
  }

  #wizard-step-4 .wizard-step4-footer-note {
    order: 9 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-4 .wizard-step4-footer-note__icon {
    display: none !important;
  }

  #wizard-step-4 .wizard-step4-footer-note::after {
    content: "Você será redirecionado para um ambiente seguro." !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: #94a3b8 !important;
  }

  #orc-form.layout-shell #wizard-step-4 .wizard-step4-trust-grid,
  #wizard-step-4 .wizard-step4-trust-grid {
    display: none !important;
  }

  #wizard-step-4 .wizard-step4-trust-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
    text-align: center !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__icon {
    width: 22px !important;
    height: 22px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 18px !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__icon--shield {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.75'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__icon--headphones {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.75'%3E%3Cpath d='M3 18v-6a9 9 0 0 1 18 0v6'/%3E%3Cpath d='M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3v5zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3v5z'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__icon--badge {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.75'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 2.5 2.5L16 9'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__icon--lock {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b4dff' stroke-width='1.75'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__title {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #wizard-step-4 .wizard-step4-trust-item__title::after {
    display: block !important;
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: #1e293b !important;
  }

  #wizard-step-4 .wizard-step4-trust-item:nth-child(1) .wizard-step4-trust-item__title::after { content: "Seguro" !important; white-space: nowrap !important; }
  #wizard-step-4 .wizard-step4-trust-item:nth-child(2) .wizard-step4-trust-item__title::after { content: "Suporte" !important; white-space: nowrap !important; }
  #wizard-step-4 .wizard-step4-trust-item:nth-child(3) .wizard-step4-trust-item__title::after { content: "Transparente" !important; white-space: nowrap !important; }
  #wizard-step-4 .wizard-step4-trust-item:nth-child(4) .wizard-step4-trust-item__title::after { content: "Privado" !important; white-space: nowrap !important; }

  /* Telas bem estreitas: evita estouro sem quebrar pills */
  @media (max-width: 359px) {
    #wizard-step-3 .step3-card > h2 {
      padding: 18px 86px 100px 16px !important;
    }

    #wizard-step-3 .step3-card > .step3-lead {
      padding: 0 86px 16px 16px !important;
    }

    #wizard-step-3 .step3-card > h2::after {
      width: 72px !important;
      height: 72px !important;
      right: 8px !important;
    }

    #wizard-step-3 .step3-section--3 .step3-section-title::after {
      white-space: normal !important;
    }

    #wizard-step-2 .pl-auth-choice-btn__title,
    #wizard-step-2 .pl-auth-hub__tab {
      font-size: 0.72rem !important;
    }

    #wizard-step-4 .pay-method-card--combined .pay-method-card__title,
    #wizard-step-4 .pay-method-card:has(#pay-boleto) .pay-method-card__title::after {
      font-size: 0.76rem !important;
    }
  }

  /* Rodapé app (Voltar / Avançar / Resumo): html.pl-wiz-footer-app vence o CTA antigo
     (#orc-form.layout-shell .layout-main …) nas etapas 2, 3 e 4. */
  html.pl-wiz-footer-app .wizard-inline-footer,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-inline-footer {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    z-index: 40 !important;
    width: 100% !important;
    max-width: 430px !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    padding: 8px 12px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    background: #f4f6fb !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app #wizard-sticky,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main #wizard-sticky.wizard-sticky {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    display: block !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-inner,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 32px rgba(15, 23, 42, 0.08) !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app .wizard-comfort-head,
  html.pl-wiz-footer-app #wizard-sticky .wizard-comfort-head {
    display: none !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 10px !important;
    width: 100% !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions .btn-wiz-back,
  html.pl-wiz-footer-app .wizard-sticky-actions .btn-secondary,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-secondary {
    order: 1 !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    gap: 8px !important;
    flex: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1.5px solid #e6ebf5 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    color: #64748b !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    white-space: nowrap !important;
    line-height: 1 !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions .btn-wiz-back::before,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-back::before {
    content: "" !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 0 0 1px !important;
    border-style: solid !important;
    border-color: currentColor !important;
    border-width: 0 0 2.2px 2.2px !important;
    transform: rotate(45deg) !important;
    flex: 0 0 auto !important;
  }

  html.pl-wiz-footer-app .wiz-cta-banner,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wiz-cta-banner {
    order: 2 !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    filter: none !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions:has(#btn-wiz-primary[hidden]) .wiz-cta-banner,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions:has(#btn-wiz-primary[hidden]) .wiz-cta-banner {
    display: none !important;
  }

  html.pl-wiz-footer-app .wiz-cta-banner__main,
  html.pl-wiz-footer-app .wiz-cta-banner__dots,
  html.pl-wiz-footer-app .wiz-cta-banner__ico,
  html.pl-wiz-footer-app .wiz-cta-banner__copy,
  html.pl-wiz-footer-app .wiz-cta-banner__title,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wiz-cta-banner__main,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wiz-cta-banner__dots {
    display: none !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions .btn-wiz-primary,
  html.pl-wiz-footer-app .wizard-sticky-actions .btn-primary.btn-wiz-primary,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary {
    position: relative !important;
    z-index: 1 !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    gap: 8px !important;
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: none !important;
    border-radius: 10px !important;
    background: #5b4dff !important;
    box-shadow: 0 8px 16px rgba(91, 77, 255, 0.28) !important;
    box-sizing: border-box !important;
    color: #fff !important;
    white-space: nowrap !important;
    font-size: 0 !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions .btn-wiz-primary:disabled,
  html.pl-wiz-footer-app .wizard-sticky-actions .btn-primary.btn-wiz-primary:disabled,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary:disabled,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-primary.btn-wiz-primary:disabled {
    background: linear-gradient(135deg, #5a5a6e 0%, #45455a 100%) !important;
    box-shadow: none !important;
    color: rgba(255, 255, 255, 0.72) !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
    pointer-events: none !important;
    transform: none !important;
    filter: none !important;
  }

  html.pl-wiz-footer-app .btn-wiz-primary__text,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .btn-wiz-primary__text {
    display: inline-flex !important;
    align-items: center !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    font-size: 0 !important;
    line-height: 1 !important;
    color: transparent !important;
  }

  html.pl-wiz-footer-app .btn-wiz-primary__text::after,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .btn-wiz-primary__text::after {
    content: "Avançar" !important;
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: #fff !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__text::after,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .wizard-sticky-actions .btn-wiz-primary:disabled .btn-wiz-primary__text::after {
    color: rgba(255, 255, 255, 0.72) !important;
  }

  html.pl-wiz-footer-app .btn-wiz-primary__arrow,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .btn-wiz-primary__arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    flex: 0 0 auto !important;
    line-height: 1 !important;
  }

  html.pl-wiz-footer-app .btn-wiz-primary__cta-label,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .btn-wiz-primary__cta-label {
    display: block !important;
    font-size: 0 !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 1px 0 0 !important;
    border-style: solid !important;
    border-color: #fff !important;
    border-width: 2.2px 2.2px 0 0 !important;
    transform: rotate(45deg) !important;
    background: transparent !important;
  }

  html.pl-wiz-footer-app .btn-wiz-primary__cta-dots,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main .btn-wiz-primary__cta-dots {
    display: none !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main #btn-wiz-resumo {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) auto !important;
    grid-template-areas: "ico title action" !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 0 !important;
    width: 100% !important;
    min-height: 48px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 6px 6px 6px 8px !important;
    border: none !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: #0f172a !important;
    font-family: inherit !important;
    text-align: left !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__ico {
    grid-area: ico !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    background: #eee9ff !important;
    color: #5b4dff !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__copy {
    display: contents !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__title {
    grid-area: title !important;
    display: block !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__sub {
    display: none !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__action {
    grid-area: action !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 7px 10px !important;
    border: 1.5px solid #5b4dff !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #5b4dff !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__action-label {
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__chevron {
    display: inline-flex !important;
    color: #5b4dff !important;
    background: transparent !important;
  }

  html.pl-wiz-footer-app #btn-wiz-resumo .btn-wiz-resumo__chevron svg {
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    transform: rotate(180deg) !important;
  }

  /* Painel aberto: some Resumo do pedido / + / Enviar só nas etapas 2–4 mobile */
  html.pl-wiz-footer-app #layout-summary.is-expanded .sum-head-row,
  html.pl-wiz-footer-app #layout-summary.is-expanded .sum-head-row .sum-head,
  html.pl-wiz-footer-app #layout-summary.is-expanded .sum-head-actions,
  html.pl-wiz-footer-app #layout-summary.is-expanded #btn-salvar-orcamento,
  html.pl-wiz-footer-app #layout-summary.is-expanded #btn-enviar-orcamento {
    display: none !important;
  }

  /* Cantos menos redondos: botões e caixas das etapas 2–4 */
  /* Topo etapas 2/3/4: full-bleed 100vw, sem sobra lateral/topo (somente mobile) */
  html.pl-wiz-footer-app #orc-form[data-wizard-step="2"] .layout-main,
  html.pl-wiz-footer-app #orc-form[data-wizard-step="3"] .layout-main,
  html.pl-wiz-footer-app #orc-form[data-wizard-step="4"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="2"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="4"] .layout-main,
  html.pl-wiz-footer-app #wizard-step-3,
  html.pl-wiz-footer-app #wizard-step-2,
  html.pl-wiz-footer-app #wizard-step-4,
  html.pl-wiz-footer-app #wizard-step-3 .step3-card,
  html.pl-wiz-footer-app #wizard-step-2.wizard-step > .card,
  html.pl-wiz-footer-app #wizard-step-4.wizard-step > .card {
    overflow: visible !important;
    overflow-x: visible !important;
  }

  html.pl-wiz-footer-app,
  html.pl-wiz-footer-app body {
    overscroll-behavior-y: none;
  }

  html.pl-wiz-footer-app .wizard-inline-footer::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: -1;
    width: 100vw;
    height: 40vh;
    transform: translate(-50%, 100%);
    background: #f4f6fb;
    pointer-events: none;
  }

  html.pl-wiz-footer-app #orc-form[data-wizard-step="2"] .layout-main,
  html.pl-wiz-footer-app #orc-form[data-wizard-step="3"] .layout-main,
  html.pl-wiz-footer-app #orc-form[data-wizard-step="4"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="2"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="4"] .layout-main {
    padding-top: 0 !important;
    padding-bottom: calc(152px + env(safe-area-inset-bottom, 0px)) !important;
  }

  html.pl-wiz-footer-app #wizard-step-3 .step3-card > h2,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-3 .step3-card > h2,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2,
  html.pl-wiz-footer-app .layout-main #wizard-step-2.wizard-step > .card > h2,
  html.pl-wiz-footer-app #wizard-step-2 > .card > h2,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-4.wizard-step > .card > h2,
  html.pl-wiz-footer-app .layout-main #wizard-step-4.wizard-step > .card > h2,
  html.pl-wiz-footer-app #wizard-step-4 > .card > h2 {
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    margin: 0 0 12px !important;
    margin-left: -50vw !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    background-repeat: no-repeat !important;
    background-position: center 44% !important;
    background-size: 109% 120% !important;
    overflow: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  html.pl-wiz-footer-app #wizard-step-3 .step3-card > h2,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-3 .step3-card > h2 {
    aspect-ratio: 1024 / 552 !important;
    background-image: url("/assets/img/mobile/wizard/topo-etapa-2-arquivos.webp") !important;
  }

  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2,
  html.pl-wiz-footer-app .layout-main #wizard-step-2.wizard-step > .card > h2,
  html.pl-wiz-footer-app #wizard-step-2 > .card > h2 {
    aspect-ratio: 1024 / 447 !important;
    background-image: url("/assets/img/mobile/wizard/topo-etapa-3-dados.webp") !important;
  }

  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-4.wizard-step > .card > h2,
  html.pl-wiz-footer-app .layout-main #wizard-step-4.wizard-step > .card > h2,
  html.pl-wiz-footer-app #wizard-step-4 > .card > h2 {
    aspect-ratio: 1024 / 448 !important;
    background-image: url("/assets/img/mobile/wizard/topo-etapa-4-pagamento.webp") !important;
  }

  html.pl-wiz-footer-app #wizard-step-3 .step3-card > h2::before,
  html.pl-wiz-footer-app #wizard-step-3 .step3-card > h2::after,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-3 .step3-card > h2::before,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-3 .step3-card > h2::after,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2::before,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2.wizard-step > .card > h2::after,
  html.pl-wiz-footer-app .layout-main #wizard-step-2.wizard-step > .card > h2::before,
  html.pl-wiz-footer-app .layout-main #wizard-step-2.wizard-step > .card > h2::after,
  html.pl-wiz-footer-app #wizard-step-2 > .card > h2::before,
  html.pl-wiz-footer-app #wizard-step-2 > .card > h2::after,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-4.wizard-step > .card > h2::before,
  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-4.wizard-step > .card > h2::after,
  html.pl-wiz-footer-app #wizard-step-4 > .card > h2::before,
  html.pl-wiz-footer-app #wizard-step-4 > .card > h2::after {
    content: none !important;
    display: none !important;
    background: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-3 .step3-card > .step3-lead,
  html.pl-wiz-footer-app #wizard-step-3 .step3-card > .step3-lead::before,
  html.pl-wiz-footer-app #wizard-step-3 .step3-card > .step3-lead::after {
    display: none !important;
    content: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-3 .step3-section,
  html.pl-wiz-footer-app #wizard-step-3 .step3-choice,
  html.pl-wiz-footer-app #wizard-step-3 .step3-upload-layout,
  html.pl-wiz-footer-app #wizard-step-3 .step3-upload-btn,
  html.pl-wiz-footer-app #wizard-step-3 label.file,
  html.pl-wiz-footer-app #wizard-step-3 .step3-file-btn,
  html.pl-wiz-footer-app #wizard-step-2 > .card,
  html.pl-wiz-footer-app #wizard-step-2 .card,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab,
  html.pl-wiz-footer-app #wizard-step-2 input:not([type="radio"]):not([type="checkbox"]):not([type="file"]),
  html.pl-wiz-footer-app #wizard-step-2 select,
  html.pl-wiz-footer-app #wizard-step-2 textarea,
  html.pl-wiz-footer-app #wizard-step-2 .btn-primary,
  html.pl-wiz-footer-app #wizard-step-2 .btn-secondary,
  html.pl-wiz-footer-app #wizard-step-4 > .card,
  html.pl-wiz-footer-app #wizard-step-4 .card,
  html.pl-wiz-footer-app #wizard-step-4 .pay-methods-row,
  html.pl-wiz-footer-app #wizard-step-4 .pay-method-card,
  html.pl-wiz-footer-app #wizard-step-4 .wizard-step4-btn-pagar,
  html.pl-wiz-footer-app #wizard-step-4 .btn-primary,
  html.pl-wiz-footer-app #wizard-step-4 .btn-secondary {
    border-radius: 10px !important;
  }

  /* Etapa 4: só Voltar no rodapé; PAGAR AGORA verde */
  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="4"]) .wizard-sticky-actions,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="4"] .layout-main .wizard-sticky-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="4"]) .wiz-cta-banner,
  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="4"]) .wizard-sticky-actions .btn-wiz-primary,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="4"] .layout-main .wiz-cta-banner,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="4"] .layout-main .wizard-sticky-actions .btn-wiz-primary {
    display: none !important;
  }

  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar,
  html.pl-wiz-footer-app #wizard-step-4 .wizard-step4-btn-pagar,
  html.pl-wiz-footer-app #btn-step4-pagar-agora {
    background: #16a34a !important;
    box-shadow: 0 8px 18px rgba(22, 163, 74, 0.28) !important;
  }

  /* Cartão: PAGAR AGORA depois do titular (painel), não depois das parcelas */
  html.pl-wiz-footer-app #wizard-step-4 #pay-combined-panel:not([hidden]) {
    order: 4 !important;
  }
  html.pl-wiz-footer-app #wizard-step-4 #pay-cc-install-row:not([hidden]) {
    order: 5 !important;
  }
  html.pl-wiz-footer-app #wizard-step-4 #pay-cc-panel:not([hidden]) {
    order: 6 !important;
  }
  html.pl-wiz-footer-app #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo {
    order: 7 !important;
  }

  html.pl-wiz-footer-app #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-resumo .wizard-step4-resumo__title {
    background-image: none !important;
    padding-left: 0 !important;
  }
  html.pl-wiz-footer-app #wizard-step-4:has(#pay-cc-panel:not([hidden])) #wizard-step4-pay-cta {
    order: 8 !important;
  }
  html.pl-wiz-footer-app #wizard-step-4:has(#pay-cc-panel:not([hidden])) .wizard-step4-footer-note {
    order: 9 !important;
  }

  html.pl-wiz-footer-app #orc-form.layout-shell #wizard-step-4 .wizard-step4-btn-pagar:disabled:not(.is-loading),
  html.pl-wiz-footer-app #wizard-step-4 .wizard-step4-btn-pagar:disabled:not(.is-loading),
  html.pl-wiz-footer-app #btn-step4-pagar-agora:disabled:not(.is-loading) {
    background: #94a3b8 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog:not(.has-contract-ack) .pl-pay-confirm-dialog__check--contract {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-cc-contract label.pl-pay-confirm-dialog__check {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack .pl-pay-confirm-dialog__check--contract {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.55rem !important;
    grid-column: 1 / -1 !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    min-height: 0 !important;
    height: auto !important;
    border: 1.5px solid #d8e0ec !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack .pl-pay-confirm-dialog__check--contract:has(#pl-pay-confirm-contract:checked) {
    border-color: #c7d2fe !important;
    background: #ffffff !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack .pl-pay-confirm-dialog__check--contract .pl-pay-confirm-dialog__agree {
    display: flex !important;
    flex: 0 1 auto !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0.55rem !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    cursor: pointer !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack #pl-pay-confirm-contract,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack #pl-pay-confirm-contract:hover,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack #pl-pay-confirm-contract:focus,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack #pl-pay-confirm-contract:checked {
    -webkit-appearance: none !important;
    appearance: none !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #94a3b8 !important;
    border-radius: 6px !important;
    background-color: #ffffff !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack #pl-pay-confirm-contract:checked {
    border-color: #2563eb !important;
    background-color: #2563eb !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.2 6.4 11l6-6.5'/%3E%3C/svg%3E") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 12px 12px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack .pl-pay-confirm-dialog__check--contract .pl-pay-confirm-dialog__agree-text {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.has-contract-ack .pl-pay-confirm-dialog__contract-link {
    flex: 0 0 auto !important;
    margin: 0 !important;
    color: #2563eb !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    white-space: nowrap !important;
    cursor: pointer !important;
  }

  /* PIX/boleto confirm — layout mobile igual à foto (não mexe no desktop) */
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.pl-pay-confirm-dialog,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog.is-pix-contract.pl-pay-confirm-dialog {
    position: relative !important;
    width: calc(100vw - 24px) !important;
    max-width: 380px !important;
    height: fit-content !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: auto !important;
    padding: 12px 14px 10px !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    overscroll-behavior: none !important;
    touch-action: none !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.22) !important;
  }

  html.pl-wiz-footer-app.pl-pay-confirm-lock,
  html.pl-wiz-footer-app.pl-pay-confirm-lock body {
    overflow: hidden !important;
    overscroll-behavior: none !important;
  }

  html.pl-wiz-footer-app.pl-pay-confirm-lock body {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mclose {
    display: flex !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    z-index: 4 !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 36px !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid #d8dee9 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #64748b !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf .pl-pay-confirm-mclose {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__card {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) 36px !important;
    column-gap: 10px !important;
    row-gap: 0 !important;
    align-items: start !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mico {
    display: flex !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #eef2ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236d5cff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.2'/%3E%3Cpath d='M2.5 9.5h19'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E") center / 18px no-repeat !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__card > h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1.05rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__card > .hint {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__card > .hint strong {
    font-weight: 800 !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check--contract,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions {
    grid-column: 1 / -1 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 4px !important;
    margin: 0 0 8px !important;
    padding: 9px 10px 9px 44px !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 14px !important;
    overflow: visible !important;
    box-shadow: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(1),
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(1):hover,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(1):has(input:checked) {
    margin-top: 12px !important;
    border: 0 !important;
    background: #eef2ff !important;
    box-shadow: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(2),
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(2):hover,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(2):has(input:checked) {
    border: 1.5px solid #e8edf4 !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__step {
    position: absolute !important;
    left: 10px !important;
    top: 10px !important;
    z-index: 2 !important;
    flex: 0 0 26px !important;
    width: 26px !important;
    height: 26px !important;
    font-size: 0.75rem !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(1) .pl-pay-confirm-dialog__step {
    background: #5b4ef5 !important;
    color: #ffffff !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(2) .pl-pay-confirm-dialog__step {
    background: #e8eaf2 !important;
    color: #64748b !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check:nth-of-type(1)::after {
    content: "" !important;
    position: absolute !important;
    left: 22px !important;
    top: 36px !important;
    z-index: 1 !important;
    width: 0 !important;
    height: calc(100% - 36px + 18px) !important;
    border-left: 2px dotted #c4b5fd !important;
    pointer-events: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 8px !important;
    min-width: 0 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check-head-text {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 1px !important;
    min-width: 0 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__eyebrow {
    display: block !important;
    font-size: 0.6875rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    color: #6d5cff !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check-title {
    display: block !important;
    font-size: 0.9375rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check-title::before {
    content: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mtag {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mtag::before {
    content: "" !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 14px 14px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mtag--now {
    color: #6d5cff !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mtag--now::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%236d5cff'%3E%3Cpath d='M13 2 4 14h7l-1 8 9-12h-7l1-8z'/%3E%3C/svg%3E") !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mtag--later {
    color: #64748b !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mtag--later::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check-desc {
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: #64748b !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-desc-desk {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check-desc .pl-pay-confirm-m {
    display: inline !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check .pl-pay-confirm-dialog__agree {
    margin-top: 2px !important;
    gap: 8px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__check .pl-pay-confirm-dialog__agree-text {
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract label.pl-pay-confirm-dialog__check input[type="checkbox"] {
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack .pl-pay-confirm-dialog__check--contract {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
    position: relative !important;
    margin: 0 !important;
    padding: 10px 12px 10px 12px !important;
    min-height: 0 !important;
    height: auto !important;
    border: 1.5px solid #bbf7d0 !important;
    border-radius: 14px !important;
    background: #ecfdf5 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack .pl-pay-confirm-dialog__check--contract:has(#pl-pay-confirm-contract:checked) {
    border-color: #86efac !important;
    background: #ecfdf5 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack .pl-pay-confirm-dialog__check--contract .pl-pay-confirm-dialog__agree {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 8px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    min-width: 0 !important;
    cursor: pointer !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack #pl-pay-confirm-contract,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack #pl-pay-confirm-contract:hover,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack #pl-pay-confirm-contract:focus,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack #pl-pay-confirm-contract:checked {
    position: static !important;
    display: inline-block !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    border: 2px solid #94a3b8 !important;
    border-radius: 5px !important;
    background-color: #ffffff !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack #pl-pay-confirm-contract:checked {
    border-color: #2563eb !important;
    background-color: #2563eb !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.2 6.4 11l6-6.5'/%3E%3C/svg%3E") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 11px 11px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack .pl-pay-confirm-dialog__check--contract .pl-pay-confirm-dialog__agree-text {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mshield {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mcontract-copy {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    gap: 2px !important;
    min-width: 0 !important;
    padding: 0 78px 0 0 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mcontract-title {
    display: block !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-mcontract-sub {
    display: block !important;
    font-size: 0.68rem !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    color: #4b5563 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack .pl-pay-confirm-dialog__contract-link {
    position: absolute !important;
    top: 10px !important;
    right: 12px !important;
    grid-column: auto !important;
    grid-row: auto !important;
    align-self: auto !important;
    margin: 0 !important;
    color: #2563eb !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-decoration: underline !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.has-contract-ack .pl-pay-confirm-dialog__contract-link::after {
    content: "" !important;
    display: inline-block !important;
    width: 11px !important;
    height: 11px !important;
    margin-left: 4px !important;
    vertical-align: -1px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 5h5v5M19 5 10 14'/%3E%3Cpath d='M19 13v5a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h5'/%3E%3C/svg%3E") center / 11px no-repeat !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__lock {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding-left: 26px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236d5cff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") left center / 16px no-repeat !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__lock strong {
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__lock span {
    font-size: 0.58rem !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #94a3b8 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__badges {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__ssl,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__conf {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding-left: 22px !important;
    font-size: 0.5rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.15 !important;
    color: #334155 !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__ssl b,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__conf b {
    font-size: 0.5625rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__ssl {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2322c55e'%3E%3Cpath d='M12 2 4 5.5v6.2c0 5 3.4 9.6 8 10.8 4.6-1.2 8-5.8 8-10.8V5.5L12 2z'/%3E%3Cpath fill='%23fff' d='m10.1 12.6-1.8-1.8-1.2 1.2 3 3 5.4-5.4-1.2-1.2z'/%3E%3C/svg%3E") left center / 16px no-repeat !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-msec__conf {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") left center / 15px no-repeat !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: stretch !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 8px 0 0 !important;
    padding: 10px 0 0 !important;
    border: none !important;
    border-top: 1px solid #e8edf4 !important;
    background: transparent !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-secondary,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-primary {
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    border-radius: 999px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-secondary {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    padding: 0 16px !important;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #334155 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-primary {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 0 12px !important;
    background: #6d5cff !important;
    border: none !important;
    color: #ffffff !important;
    opacity: 1 !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-primary:disabled,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-primary[disabled] {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 0 12px !important;
    background: #d1d5db !important;
    border: none !important;
    color: #6b7280 !important;
    opacity: 1 !important;
    cursor: not-allowed !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract .pl-pay-confirm-dialog__actions .btn-primary::after {
    content: " →" !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf {
    display: flex !important;
    flex-direction: column !important;
    width: calc(100vw - 24px) !important;
    max-width: 430px !important;
    height: min(86dvh, 720px) !important;
    max-height: calc(100dvh - 24px) !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf .pl-pay-confirm-dialog__card {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf #pl-pay-confirm-pdf {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    background: #ffffff !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf__head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex: 0 0 auto !important;
    padding: 12px 14px !important;
    border-bottom: 1px solid #e2e8f0 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf__title {
    margin: 0 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf-close {
    width: 34px !important;
    height: 34px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f1f5f9 !important;
    color: #334155 !important;
    font-size: 1.25rem !important;
    line-height: 1 !important;
    cursor: pointer !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf__body {
    position: relative !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    background: #525659 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf-frame {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: #525659 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf.pl-pay-confirm-dialog,
  html.pl-wiz-footer-app #orc-form.layout-shell .layout-main #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf.pl-pay-confirm-dialog {
    display: flex !important;
    flex-direction: column !important;
    width: calc(100vw - 16px) !important;
    max-width: 430px !important;
    height: min(88dvh, 740px) !important;
    max-height: calc(100dvh - 12px) !important;
    padding: 0 !important;
    overflow: hidden !important;
    touch-action: pan-y !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf .pl-pay-confirm-dialog__card,
  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-pix-contract.is-showing-pdf .pl-pay-confirm-mclose {
    display: none !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf #pl-pay-confirm-pdf__body {
    overflow: hidden !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    touch-action: pan-y !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf #pl-pay-confirm-pdf__scroll {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: scroll !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    touch-action: pan-y !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf #pl-pay-confirm-pdf-frame {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    pointer-events: auto !important;
    touch-action: pan-y !important;
    background: #ffffff !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf.is-ios-pdf #pl-pay-confirm-pdf-frame {
    height: 2400px !important;
    min-height: 2400px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf.is-pdf-pages #pl-pay-confirm-pdf-frame {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-pdf__pages {
    display: none;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf.is-pdf-pages #pl-pay-confirm-pdf__pages {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 10px 8px 16px !important;
    box-sizing: border-box !important;
    background: #525659 !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf.is-pdf-pages .pl-pay-confirm-pdf__page {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    background: #fff !important;
    border-radius: 4px !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf.is-pdf-pages .pl-pay-confirm-pdf__status {
    margin: 28px 12px !important;
    color: #fff !important;
    font-size: 0.9rem !important;
    line-height: 1.45 !important;
    text-align: center !important;
  }

  html.pl-wiz-footer-app #pl-pay-confirm-dialog.is-showing-pdf.is-pdf-pages .pl-pay-confirm-pdf__status a {
    color: #93c5fd !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog {
    width: calc(100vw - 20px) !important;
    max-width: 420px !important;
    height: auto !important;
    max-height: calc(100dvh - 16px) !important;
    overflow: hidden !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog__inner {
    height: auto !important;
    max-height: calc(100dvh - 16px) !important;
    overflow: auto !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal {
    overflow: visible !important;
    flex: 0 1 auto !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix--grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    flex: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__qr {
    overflow: hidden !important;
    flex: 0 0 auto !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix img,
  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__qr img {
    display: block !important;
    width: 168px !important;
    max-width: 168px !important;
    height: auto !important;
    max-height: 168px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-pix__side {
    position: relative !important;
    z-index: 1 !important;
    overflow: visible !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pix-copy-field {
    flex: none !important;
    min-height: 4.8rem !important;
    max-height: 7.5rem !important;
  }

  html.pl-wiz-footer-app .pl-asaas-pay-dialog #pedido-pay-modal .pedido-pay-modal-footer {
    position: relative !important;
    z-index: 2 !important;
    margin-top: 12px !important;
  }

  /* Etapa 3 mobile: fileiras iguais à foto (Criar conta / Já tenho conta + PF / PJ) */
  html.pl-wiz-footer-app #orc-form[data-wizard-step="3"] #wizard-step-2 .pl-auth-hub__tabs,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2 .pl-auth-hub__tabs,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2 .pl-auth-hub:has(#step2-inline-forms:not([hidden])) > .pl-auth-hub__tabs,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub:has(#step2-inline-forms:not([hidden])) > .pl-auth-hub__tabs,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tabs,
  html.pl-wiz-footer-app #wizard-step-2 #pl-auth-create-choice:not([hidden]),
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-grid:not([hidden]) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 6px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 8px !important;
    border: none !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05) !important;
    visibility: visible !important;
    height: auto !important;
    min-height: 0 !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab-label,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-desk {
    display: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    min-width: 0 !important;
    min-height: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 6px 0 8px !important;
    border: 1px solid #e9eef6 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: #1e293b !important;
    text-align: left !important;
    white-space: normal !important;
    cursor: pointer !important;
    overflow: hidden !important;
    pointer-events: auto !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab.is-active,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn.is-active {
    border-color: transparent !important;
    background: linear-gradient(90deg, #5546f6 0%, #6d5eff 100%) !important;
    color: #ffffff !important;
    box-shadow: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__ico {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
    color: #64748b !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab.is-active .pl-auth-mrow__ico,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn.is-active .pl-auth-mrow__ico {
    color: #ffffff !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__ico svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0 !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__title {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: clamp(0.72rem, 3.05vw, 0.84rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
    color: #1e293b !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__sub {
    display: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab.is-active .pl-auth-mrow__title,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn.is-active .pl-auth-mrow__title {
    color: #ffffff !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab.is-active .pl-auth-mrow__sub,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn.is-active .pl-auth-mrow__sub {
    color: rgba(255, 255, 255, 0.86) !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__chev {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    margin-left: auto !important;
    border-radius: 999px !important;
    background: transparent !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab.is-active .pl-auth-mrow__chev,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn.is-active .pl-auth-mrow__chev {
    background: rgba(255, 255, 255, 0.18) !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-mrow__chev::after {
    content: "" !important;
    display: block !important;
    width: 6px !important;
    height: 6px !important;
    margin-left: -1px !important;
    border-right: 2px solid #94a3b8 !important;
    border-top: 2px solid #94a3b8 !important;
    transform: rotate(45deg) !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-hub__tab.is-active .pl-auth-mrow__chev::after,
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-btn.is-active .pl-auth-mrow__chev::after {
    border-color: #ffffff !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 #pl-auth-create-choice[hidden],
  html.pl-wiz-footer-app #wizard-step-2 .pl-auth-choice-grid[hidden],
  html.pl-wiz-footer-app #wizard-step-2 #pl-auth-body-create[hidden],
  html.pl-wiz-footer-app #wizard-step-2 #pl-auth-body-login[hidden],
  html.pl-wiz-footer-app #wizard-step-2 #step2-inline-forms[hidden] {
    display: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-2 #pl-auth-body-login:not([hidden]) {
    display: flex !important;
    flex-direction: column !important;
  }

  html.pl-wiz-footer-app.pl-summary-mobile-open .wizard-inline-footer,
  html.pl-wiz-footer-app body.pl-summary-mobile-open .wizard-inline-footer {
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Etapa 4 mobile: Valor total / Entrada em 2 linhas alinhadas */
  html.pl-wiz-footer-app #wizard-step-4 #wizard-step4-resumo {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 0 !important;
    justify-content: stretch !important;
    padding: 12px 14px !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 .wizard-step4-resumo__title {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    margin: 0 !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 .wizard-step4-resumo__title::after {
    content: none !important;
    display: none !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 .wizard-step4-resumo__list {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    align-items: stretch !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 #wizard-step4-resumo-line1 {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    color: inherit !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 .pl-s4-amt-row {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 .pl-s4-amt-row__lbl {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    color: #64748b !important;
    white-space: nowrap !important;
  }

  html.pl-wiz-footer-app #wizard-step-4 .pl-s4-amt-row__val {
    flex: 0 0 auto !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.2 !important;
    color: #5b4dff !important;
    white-space: nowrap !important;
    font-variant-numeric: tabular-nums !important;
  }

  /* Etapa 3: rodapé colado na base; só o cadastro rola — sem vazio embaixo */
  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]),
  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]) body {
    height: 100dvh !important;
    max-height: 100dvh !important;
    min-height: 0 !important;
    overflow: hidden !important;
    overscroll-behavior: none !important;
  }

  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]) .wrap,
  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]) #orc-form,
  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]) #orc-form.layout-shell {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.pl-wiz-footer-app #orc-form[data-wizard-step="3"] .layout-main,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] .layout-main {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 auto !important;
  }

  html.pl-wiz-footer-app #orc-form[data-wizard-step="3"] #wizard-step-2,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] #wizard-step-2 {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-y: contain !important;
    padding: 0 16px 12px !important;
    margin: 0 !important;
  }

  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]) .wizard-inline-footer,
  html.pl-wiz-footer-app #orc-form[data-wizard-step="3"] .wizard-inline-footer,
  html.pl-wiz-footer-app #orc-form.layout-shell[data-wizard-step="3"] .layout-main .wizard-inline-footer {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    z-index: 40 !important;
  }

  html.pl-wiz-footer-app:has(#orc-form[data-wizard-step="3"]) .wizard-inline-footer::after {
    content: none !important;
    display: none !important;
    height: 0 !important;
  }
}

/* ===== PL-20261109: pop-ups de pagamento aprovados (sem foto, 3 termos em Pix, boleto, cartão e combinado) ===== */
#pl-pay-d-extra[hidden] { display: none !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3:not(.is-showing-pdf).pl-pay-confirm-dialog {
  padding: 0 !important; width: calc(100vw - 32px) !important; max-width: 343px !important;
  height: fit-content !important; max-height: none !important; overflow: hidden !important;
  border-radius: 16px !important; background: #fff !important; box-sizing: border-box !important;
  box-shadow: 0 20px 50px rgba(15, 5, 35, .4) !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3:not(.is-showing-pdf)::before { display: none !important; content: none !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-confirm-dialog__card { display: none !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d {
  display: flex !important; flex-direction: column !important; gap: 7px !important;
  padding: 0 !important; margin: 0 !important; width: auto !important; max-width: none !important;
  max-height: min(560px, calc(100dvh - 120px)) !important; overflow-x: hidden !important; overflow-y: auto !important;
  -webkit-overflow-scrolling: touch; overscroll-behavior: contain; text-align: left !important; color: #1d1530 !important;
}
@media (max-width: 1023px) {
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3.is-showing-pdf .pl-pay-d { display: none !important; }
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__head {
  position: sticky !important; top: 0 !important; z-index: 3 !important;
  display: grid !important; grid-template-columns: minmax(0, 1fr) 28px !important; gap: 8px !important; align-items: center !important;
  margin: 0 !important; padding: 12px 12px 11px 14px !important; background: #fff !important;
  border: 0 !important; border-bottom: 1px solid #eeeaf6 !important; border-radius: 0 !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__ico,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__steps,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms-sub,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__info,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term .pl-pay-d__num,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-back { display: none !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__titles { min-width: 0 !important; margin: 0 !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__title {
  color: #1d1530 !important; font: 800 13.5px/1.25 Inter, system-ui, sans-serif !important; margin: 0 !important; letter-spacing: 0 !important;
  text-align: left !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__lead {
  color: #6b6380 !important; font: 500 11px/1.35 Inter, system-ui, sans-serif !important; margin: 2px 0 0 !important;
  text-align: left !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-close {
  position: static !important; width: 28px !important; height: 28px !important; min-height: 0 !important; margin: 0 !important;
  background: #fff !important; border: 1px solid #e6e1f2 !important; color: #4c1d95 !important; box-shadow: none !important;
  font: 400 15px/26px Inter, system-ui, sans-serif !important; border-radius: 50% !important; padding: 0 !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-extra,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms-h,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms { margin: 0 12px !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-extra { margin-top: 3px !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips > span {
  display: block; border: 1px solid #ece8f6; border-radius: 9px; padding: 7px 9px; background: #fff;
  font: 500 10.5px/1.35 Inter, system-ui, sans-serif; color: #6b6380; white-space: nowrap;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips b { display: block; font: 700 11.5px/1.3 Inter, system-ui, sans-serif; color: #6d28d9; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips em { font-style: normal; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-line {
  display: flex; justify-content: center; align-items: center; border: 1px solid #ece8f6; border-radius: 9px;
  padding: 9px 10px; background: #fff; white-space: nowrap; font: 500 11.5px/1.3 Inter, system-ui, sans-serif; color: #6b6380;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-line b { color: #6d28d9; font-size: 14px; font-weight: 800; margin-right: 3px; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-sum { border: 1px solid #ece8f6; border-radius: 9px; padding: 0 10px; background: #fff; text-align: left; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-row {
  display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px solid #f2eff8;
  font: 500 11.5px/1.3 Inter, system-ui, sans-serif; color: #6b6380; white-space: nowrap; font-variant-numeric: tabular-nums;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-row:last-child { border-bottom: 0; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-row b { color: #1d1530; font-weight: 800; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-row.is-total span, html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-row.is-total b { color: #6d28d9; font-weight: 800; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms-h {
  font: 700 10px/1.3 Inter, system-ui, sans-serif !important; letter-spacing: .08em !important; text-transform: uppercase !important;
  color: #9a93ad !important; padding: 0 !important; margin-top: 4px !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms { display: flex !important; flex-direction: column !important; gap: 7px !important; max-height: none !important; overflow: visible !important; padding: 0 !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term {
  display: grid !important; grid-template-columns: 16px minmax(0, 1fr) !important; gap: 9px !important;
  align-items: start !important; padding: 8px 10px !important; margin: 0 !important; cursor: pointer;
  background: #fff !important; border: 1px solid #ece8f6 !important; border-radius: 9px !important; box-shadow: none !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term:has(input:checked) { border-color: #c4b5fd !important; background: #fcfbff !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term input {
  width: 16px !important; height: 16px !important; margin: 1px 0 0 !important; position: static !important; opacity: 1 !important;
  accent-color: #7c3aed !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term > span:last-of-type { display: flex !important; flex-direction: column !important; min-width: 0 !important; grid-column: 2 !important; grid-row: 1 !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term input { grid-column: 1 !important; grid-row: 1 !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term-top { display: contents !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term-title {
  order: 1; display: block !important; font: 700 12px/1.3 Inter, system-ui, sans-serif !important; color: #1d1530 !important;
  white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term-desc { order: 2; display: block !important; font: 500 10.5px/1.4 Inter, system-ui, sans-serif !important; color: #6b6380 !important; margin: 2px 0 0 !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__contract {
  order: 3; display: inline-block !important; align-self: flex-start; margin: 3px 0 0 !important; padding: 0 !important;
  font: 700 10.5px/1.3 Inter, system-ui, sans-serif !important; color: #6d28d9 !important; position: static !important; background: none !important; text-decoration: none !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__contract::before,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__contract::after { display: none !important; content: none !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__actions {
  position: sticky !important; bottom: 0 !important; z-index: 3 !important;
  display: block !important; margin: 3px 0 0 !important; padding: 9px 12px 11px !important;
  background: #fff !important; border: 0 !important; border-top: 1px solid #eeeaf6 !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__right { display: grid !important; grid-template-columns: 1fr 1.7fr !important; gap: 8px !important; width: 100% !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-cancel,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-ok {
  width: 100% !important; height: 38px !important; min-height: 38px !important; padding: 0 6px !important; margin: 0 !important;
  font: 700 12.5px/1 Inter, system-ui, sans-serif !important; border-radius: 9px !important; white-space: nowrap !important; box-shadow: none !important;
}
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-cancel { background: #fff !important; border: 1px solid #e2dcf0 !important; color: #1d1530 !important; }
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-ok::before,
html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-ok::after { display: none !important; content: none !important; }

/* Computador: mesma janela, mais larga (720px), sem foto, termos em uma linha, botões à direita. */
@media (min-width: 1024px) {
  /* Contrato aberto: só o véu escuro por trás (sem foto). */
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3.is-showing-pdf::before {
    content: "" !important; display: block !important; position: absolute !important; inset: 0 !important; width: auto !important; height: auto !important;
    background: rgba(15, 23, 42, .42) !important; border-radius: inherit !important; z-index: 6 !important;
  }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3.pl-t3.pl-pay-confirm-dialog {
    padding: 0 !important; height: fit-content !important; max-height: none !important; overflow: hidden !important; background: #fff !important; box-sizing: border-box !important;
    width: calc(100vw - 64px) !important; max-width: 720px !important; border-radius: 18px !important;
  }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d { gap: 9px !important; max-height: calc(100vh - 80px) !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__head { grid-template-columns: minmax(0, 1fr) 32px !important; gap: 12px !important; padding: 18px 20px 16px 24px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__title { font-size: 17px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__lead { font-size: 12.5px !important; margin-top: 3px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-close { width: 32px !important; height: 32px !important; font-size: 16px !important; line-height: 30px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-extra,
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms-h,
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms { margin: 0 24px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-extra { margin-top: 7px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms-h { font-size: 10.5px !important; margin-top: 6px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__terms { gap: 9px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips { gap: 10px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips > span { display: flex; justify-content: space-between; align-items: center; padding: 10px 14px; font-size: 12px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-chips b { display: inline; font-size: 13px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-line { padding: 12px 14px; font-size: 13px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-line b { font-size: 16px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-sum { padding: 0 14px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__x-row { padding: 9px 0; font-size: 13px; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term { grid-template-columns: 18px minmax(0, 1fr) !important; gap: 12px !important; padding: 11px 14px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term input { width: 18px !important; height: 18px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term-top { display: flex !important; justify-content: space-between !important; align-items: baseline !important; gap: 12px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term-title { font-size: 13px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__term-desc { font-size: 12px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; margin-top: 2px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__contract { margin: 0 !important; font-size: 12px !important; white-space: nowrap !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__actions { padding: 14px 24px 18px !important; margin-top: 7px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 .pl-pay-d__right { display: flex !important; justify-content: flex-end !important; gap: 10px !important; }
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-cancel,
  html #pl-pay-confirm-dialog#pl-pay-confirm-dialog.pl-t3 #pl-pay-d-ok { width: auto !important; height: 42px !important; min-height: 42px !important; padding: 0 22px !important; font-size: 13.5px !important; }
}

/* ===== PL-20261109: etapa 3 no celular com o layout novo (nova-home) — a regra antiga
   («Etapa 3: rodapé colado na base», feita para o layout antigo) travava a rolagem da página.
   Aqui a página volta a rolar normalmente; o layout antigo (sem data-nl) não muda. ===== */
@media (max-width: 1023px) {
  html[data-nl]:has(#orc-form[data-wizard-step="3"]) {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: clip auto !important;
    overscroll-behavior: auto !important;
  }
  html[data-nl]:has(#orc-form[data-wizard-step="3"]) body {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: clip visible !important;
    overscroll-behavior: auto !important;
  }
}
