/* ===================================================================
   SOURCE: style-07.css
   =================================================================== */

:root, :host { --fa-font-solid: normal 900 1em/1 'Font Awesome 7 Free'; --fa-font-regular: normal 400 1em/1 'Font Awesome 7 Free'; --fa-font-light: normal 300 1em/1 'Font Awesome 7 Pro'; --fa-font-thin: normal 100 1em/1 'Font Awesome 7 Pro'; --fa-font-duotone: normal 900 1em/1 'Font Awesome 7 Duotone'; --fa-font-duotone-regular: normal 400 1em/1 'Font Awesome 7 Duotone'; --fa-font-duotone-light: normal 300 1em/1 'Font Awesome 7 Duotone'; --fa-font-duotone-thin: normal 100 1em/1 'Font Awesome 7 Duotone'; --fa-font-brands: normal 400 1em/1 'Font Awesome 7 Brands'; --fa-font-sharp-solid: normal 900 1em/1 'Font Awesome 7 Sharp'; --fa-font-sharp-regular: normal 400 1em/1 'Font Awesome 7 Sharp'; --fa-font-sharp-light: normal 300 1em/1 'Font Awesome 7 Sharp'; --fa-font-sharp-thin: normal 100 1em/1 'Font Awesome 7 Sharp'; --fa-font-sharp-duotone-solid: normal 900 1em/1 'Font Awesome 7 Sharp Duotone'; --fa-font-sharp-duotone-regular: normal 400 1em/1 'Font Awesome 7 Sharp Duotone'; --fa-font-sharp-duotone-light: normal 300 1em/1 'Font Awesome 7 Sharp Duotone'; --fa-font-sharp-duotone-thin: normal 100 1em/1 'Font Awesome 7 Sharp Duotone'; --fa-font-slab-regular: normal 400 1em/1 'Font Awesome 7 Slab'; --fa-font-slab-press-regular: normal 400 1em/1 'Font Awesome 7 Slab Press'; --fa-font-whiteboard-semibold: normal 600 1em/1 'Font Awesome 7 Whiteboard'; --fa-font-thumbprint-light: normal 300 1em/1 'Font Awesome 7 Thumbprint'; --fa-font-notdog-solid: normal 900 1em/1 'Font Awesome 7 Notdog'; --fa-font-notdog-duo-solid: normal 900 1em/1 'Font Awesome 7 Notdog Duo'; --fa-font-etch-solid: normal 900 1em/1 'Font Awesome 7 Etch'; --fa-font-graphite-thin: normal 100 1em/1 'Font Awesome 7 Graphite'; --fa-font-jelly-regular: normal 400 1em/1 'Font Awesome 7 Jelly'; --fa-font-jelly-fill-regular: normal 400 1em/1 'Font Awesome 7 Jelly Fill'; --fa-font-jelly-duo-regular: normal 400 1em/1 'Font Awesome 7 Jelly Duo'; --fa-font-chisel-regular: normal 400 1em/1 'Font Awesome 7 Chisel'; --fa-font-utility-semibold: normal 600 1em/1 'Font Awesome 7 Utility'; --fa-font-utility-duo-semibold: normal 600 1em/1 'Font Awesome 7 Utility Duo'; --fa-font-utility-fill-semibold: normal 600 1em/1 'Font Awesome 7 Utility Fill'; }

.svg-inline--fa { box-sizing: content-box; display: var(--fa-display, inline-block); height: 1em; overflow: visible; vertical-align: -0.125em; width: var(--fa-width, 1.25em); }

.svg-inline--fa.fa-2xs { vertical-align: 0.1em; }

.svg-inline--fa.fa-xs { vertical-align: 0em; }

.svg-inline--fa.fa-sm { vertical-align: -0.0714286em; }

.svg-inline--fa.fa-lg { vertical-align: -0.2em; }

.svg-inline--fa.fa-xl { vertical-align: -0.25em; }

.svg-inline--fa.fa-2xl { vertical-align: -0.3125em; }

.svg-inline--fa.fa-pull-left, .svg-inline--fa .fa-pull-start { float: inline-start; margin-inline-end: var(--fa-pull-margin, 0.3em); }

.svg-inline--fa.fa-pull-right, .svg-inline--fa .fa-pull-end { float: inline-end; margin-inline-start: var(--fa-pull-margin, 0.3em); }

.svg-inline--fa.fa-li { width: var(--fa-li-width, 2em); inset-inline-start: calc(-1 * var(--fa-li-width, 2em)); inset-block-start: 0.25em; }

.fa-layers-counter, .fa-layers-text { display: inline-block; position: absolute; text-align: center; }

.fa-layers { display: inline-block; height: 1em; position: relative; text-align: center; vertical-align: -0.125em; width: var(--fa-width, 1.25em); }

.fa-layers .svg-inline--fa { inset: 0px; margin: auto; position: absolute; transform-origin: center center; }

.fa-layers-text { left: 50%; top: 50%; transform: translate(-50%, -50%); transform-origin: center center; }

.fa-layers-counter { background-color: var(--fa-counter-background-color, #ff253a); border-radius: var(--fa-counter-border-radius, 1em); box-sizing: border-box; color: var(--fa-inverse, #fff); line-height: var(--fa-counter-line-height, 1); max-width: var(--fa-counter-max-width, 5em); min-width: var(--fa-counter-min-width, 1.5em); overflow: hidden; padding: var(--fa-counter-padding, 0.25em 0.5em); right: var(--fa-right, 0); text-overflow: ellipsis; top: var(--fa-top, 0); transform: scale(var(--fa-counter-scale, 0.25)); transform-origin: right top; }

.fa-layers-bottom-right { bottom: var(--fa-bottom, 0); right: var(--fa-right, 0); top: auto; transform: scale(var(--fa-layers-scale, 0.25)); transform-origin: right bottom; }

.fa-layers-bottom-left { bottom: var(--fa-bottom, 0); left: var(--fa-left, 0); right: auto; top: auto; transform: scale(var(--fa-layers-scale, 0.25)); transform-origin: left bottom; }

.fa-layers-top-right { top: var(--fa-top, 0); right: var(--fa-right, 0); transform: scale(var(--fa-layers-scale, 0.25)); transform-origin: right top; }

.fa-layers-top-left { left: var(--fa-left, 0); right: auto; top: var(--fa-top, 0); transform: scale(var(--fa-layers-scale, 0.25)); transform-origin: left top; }

.fa-1x { font-size: 1em; }

.fa-2x { font-size: 2em; }

.fa-3x { font-size: 3em; }

.fa-4x { font-size: 4em; }

.fa-5x { font-size: 5em; }

.fa-6x { font-size: 6em; }

.fa-7x { font-size: 7em; }

.fa-8x { font-size: 8em; }

.fa-9x { font-size: 9em; }

.fa-10x { font-size: 10em; }

.fa-2xs { font-size: calc(0.625em); line-height: calc(0.1em); vertical-align: calc(0.225em); }

.fa-xs { font-size: calc(0.75em); line-height: calc(0.0833333em); vertical-align: calc(0.125em); }

.fa-sm { font-size: calc(0.875em); line-height: calc(0.0714286em); vertical-align: calc(0.0535714em); }

.fa-lg { font-size: calc(1.25em); line-height: calc(0.05em); vertical-align: calc(-0.075em); }

.fa-xl { font-size: calc(1.5em); line-height: calc(0.0416667em); vertical-align: calc(-0.125em); }

.fa-2xl { font-size: calc(2em); line-height: calc(0.03125em); vertical-align: calc(-0.1875em); }

.fa-width-auto { --fa-width: auto; }

.fa-fw, .fa-width-fixed { --fa-width: 1.25em; }

.fa-ul { list-style-type: none; margin-inline-start: var(--fa-li-margin, 2.5em); padding-inline-start: 0px; }

.fa-ul > li { position: relative; }

.fa-li { inset-inline-start: calc(-1 * var(--fa-li-width, 2em)); position: absolute; text-align: center; width: var(--fa-li-width, 2em); line-height: inherit; }

.fa-border { border-color: var(--fa-border-color, #eee); border-radius: var(--fa-border-radius, 0.1em); border-style: var(--fa-border-style, solid); border-width: var(--fa-border-width, 0.0625em); box-sizing: var(--fa-border-box-sizing, content-box); padding: var(--fa-border-padding, 0.1875em 0.25em); }

.fa-pull-left, .fa-pull-start { float: inline-start; margin-inline-end: var(--fa-pull-margin, 0.3em); }

.fa-pull-right, .fa-pull-end { float: inline-end; margin-inline-start: var(--fa-pull-margin, 0.3em); }

.fa-beat { animation-name: fa-beat; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, ease-in-out); }

.fa-bounce { animation-name: fa-bounce; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); }

.fa-fade { animation-name: fa-fade; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }

.fa-beat-fade { animation-name: fa-beat-fade; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }

.fa-flip { animation-name: fa-flip; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, ease-in-out); }

.fa-shake { animation-name: fa-shake; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, linear); }

.fa-spin { animation-name: fa-spin; animation-delay: var(--fa-animation-delay, 0s); animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 2s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, linear); }

.fa-spin-reverse { --fa-animation-direction: reverse; }

.fa-pulse, .fa-spin-pulse { animation-name: fa-spin; animation-direction: var(--fa-animation-direction, normal); animation-duration: var(--fa-animation-duration, 1s); animation-iteration-count: var(--fa-animation-iteration-count, infinite); animation-timing-function: var(--fa-animation-timing, steps(8)); }

@media (prefers-reduced-motion: reduce) {
  .fa-beat, .fa-bounce, .fa-fade, .fa-beat-fade, .fa-flip, .fa-pulse, .fa-shake, .fa-spin, .fa-spin-pulse { animation: auto ease 0s 1 normal none running none !important; transition: none !important; }
}

@keyframes fa-beat { 
  0%, 90% { transform: scale(1); }
  45% { transform: scale(var(--fa-beat-scale, 1.25)); }
}

@keyframes fa-bounce { 
  0% { transform: scale(1, 1) translateY(0px); }
  10% { transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); }
  30% { transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); }
  50% { transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); }
  57% { transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); }
  64% { transform: scale(1, 1) translateY(0px); }
  100% { transform: scale(1, 1) translateY(0px); }
}

@keyframes fa-fade { 
  50% { opacity: var(--fa-fade-opacity, 0.4); }
}

@keyframes fa-beat-fade { 
  0%, 100% { opacity: var(--fa-beat-fade-opacity, 0.4); transform: scale(1); }
  50% { opacity: 1; transform: scale(var(--fa-beat-fade-scale, 1.125)); }
}

@keyframes fa-flip { 
  50% { transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); }
}

@keyframes fa-shake { 
  0% { transform: rotate(-15deg); }
  4% { transform: rotate(15deg); }
  8%, 24% { transform: rotate(-18deg); }
  12%, 28% { transform: rotate(18deg); }
  16% { transform: rotate(-22deg); }
  20% { transform: rotate(22deg); }
  32% { transform: rotate(-12deg); }
  36% { transform: rotate(12deg); }
  40%, 100% { transform: rotate(0deg); }
}

@keyframes fa-spin { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.fa-rotate-90 { transform: rotate(90deg); }

.fa-rotate-180 { transform: rotate(180deg); }

.fa-rotate-270 { transform: rotate(270deg); }

.fa-flip-horizontal { transform: scale(-1, 1); }

.fa-flip-vertical { transform: scale(1, -1); }

.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { transform: scale(-1, -1); }

.fa-rotate-by { transform: rotate(var(--fa-rotate-angle, 0)); }

.svg-inline--fa .fa-primary { fill: var(--fa-primary-color, currentColor); opacity: var(--fa-primary-opacity, 1); }

.svg-inline--fa .fa-secondary { fill: var(--fa-secondary-color, currentColor); opacity: var(--fa-secondary-opacity, 0.4); }

.svg-inline--fa.fa-swap-opacity .fa-primary { opacity: var(--fa-secondary-opacity, 0.4); }

.svg-inline--fa.fa-swap-opacity .fa-secondary { opacity: var(--fa-primary-opacity, 1); }

.svg-inline--fa mask .fa-primary, .svg-inline--fa mask .fa-secondary { fill: black; }

.svg-inline--fa.fa-inverse { fill: var(--fa-inverse, #fff); }

.fa-stack { display: inline-block; height: 2em; line-height: 2em; position: relative; vertical-align: middle; width: 2.5em; }

.fa-inverse { color: var(--fa-inverse, #fff); }

.svg-inline--fa.fa-stack-1x { --fa-width: 1.25em; height: 1em; width: var(--fa-width); }

.svg-inline--fa.fa-stack-2x { --fa-width: 2.5em; height: 2em; width: var(--fa-width); }

.fa-stack-1x, .fa-stack-2x { inset: 0px; margin: auto; position: absolute; z-index: var(--fa-stack-z-index, auto); }

/* ===================================================================
   SOURCE: style-06.css
   =================================================================== */

:where(html[dir="ltr"]), :where([data-sonner-toaster][dir="ltr"]) { --toast-icon-margin-start: -3px; --toast-icon-margin-end: 4px; --toast-svg-margin-start: -1px; --toast-svg-margin-end: 0px; --toast-button-margin-start: auto; --toast-button-margin-end: 0; --toast-close-button-start: 0; --toast-close-button-end: unset; --toast-close-button-transform: translate(-35%, -35%); }

:where(html[dir="rtl"]), :where([data-sonner-toaster][dir="rtl"]) { --toast-icon-margin-start: 4px; --toast-icon-margin-end: -3px; --toast-svg-margin-start: 0px; --toast-svg-margin-end: -1px; --toast-button-margin-start: 0; --toast-button-margin-end: auto; --toast-close-button-start: unset; --toast-close-button-end: 0; --toast-close-button-transform: translate(35%, -35%); }

:where([data-sonner-toaster]) { position: fixed; width: var(--width); font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --gray1: hsl(0, 0%, 99%); --gray2: hsl(0, 0%, 97.3%); --gray3: hsl(0, 0%, 95.1%); --gray4: hsl(0, 0%, 93%); --gray5: hsl(0, 0%, 90.9%); --gray6: hsl(0, 0%, 88.7%); --gray7: hsl(0, 0%, 85.8%); --gray8: hsl(0, 0%, 78%); --gray9: hsl(0, 0%, 56.1%); --gray10: hsl(0, 0%, 52.3%); --gray11: hsl(0, 0%, 43.5%); --gray12: hsl(0, 0%, 9%); --border-radius: 8px; box-sizing: border-box; padding: 0px; margin: 0px; list-style: none; outline: none; z-index: 999999999; transition: transform 0.4s; }

:where([data-sonner-toaster][data-lifted="true"]) { transform: translateY(-10px); }

@media (hover: none) and (pointer: coarse) {
  :where([data-sonner-toaster][data-lifted="true"]) { transform: none; }
}

:where([data-sonner-toaster][data-x-position="right"]) { right: var(--offset-right); }

:where([data-sonner-toaster][data-x-position="left"]) { left: var(--offset-left); }

:where([data-sonner-toaster][data-x-position="center"]) { left: 50%; transform: translate(-50%); }

:where([data-sonner-toaster][data-y-position="top"]) { top: var(--offset-top); }

:where([data-sonner-toaster][data-y-position="bottom"]) { bottom: var(--offset-bottom); }

:where([data-sonner-toast]) { --y: translateY(100%); --lift-amount: calc(var(--lift) * var(--gap)); z-index: var(--z-index); position: absolute; opacity: 0; transform: var(--y); filter: blur(0px); touch-action: none; transition: transform 0.4s, opacity 0.4s, height 0.4s, box-shadow 0.2s; box-sizing: border-box; outline: none; overflow-wrap: anywhere; }

:where([data-sonner-toast][data-styled="true"]) { padding: 16px; background: var(--normal-bg); border: 1px solid var(--normal-border); color: var(--normal-text); border-radius: var(--border-radius); box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; width: var(--width); font-size: 13px; display: flex; align-items: center; gap: 6px; }

:where([data-sonner-toast]:focus-visible) { box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px, rgba(0, 0, 0, 0.2) 0px 0px 0px 2px; }

:where([data-sonner-toast][data-y-position="top"]) { top: 0px; --y: translateY(-100%); --lift: 1; --lift-amount: calc(1 * var(--gap)); }

:where([data-sonner-toast][data-y-position="bottom"]) { bottom: 0px; --y: translateY(100%); --lift: -1; --lift-amount: calc(var(--lift) * var(--gap)); }

:where([data-sonner-toast]) :where([data-description]) { font-weight: 400; line-height: 1.4; color: inherit; }

:where([data-sonner-toast]) :where([data-title]) { font-weight: 500; line-height: 1.5; color: inherit; }

:where([data-sonner-toast]) :where([data-icon]) { display: flex; height: 16px; width: 16px; position: relative; justify-content: flex-start; align-items: center; flex-shrink: 0; margin-left: var(--toast-icon-margin-start); margin-right: var(--toast-icon-margin-end); }

:where([data-sonner-toast][data-promise="true"]) :where([data-icon]) > svg { opacity: 0; transform: scale(0.8); transform-origin: center center; animation: 0.3s ease 0s 1 normal forwards running sonner-fade-in; }

:where([data-sonner-toast]) :where([data-icon]) > * { flex-shrink: 0; }

:where([data-sonner-toast]) :where([data-icon]) svg { margin-left: var(--toast-svg-margin-start); margin-right: var(--toast-svg-margin-end); }

:where([data-sonner-toast]) :where([data-content]) { display: flex; flex-direction: column; gap: 2px; }

[data-sonner-toast][data-styled="true"] [data-button] { border-radius: 4px; padding-left: 8px; padding-right: 8px; height: 24px; font-size: 12px; color: var(--normal-bg); background: var(--normal-text); margin-left: var(--toast-button-margin-start); margin-right: var(--toast-button-margin-end); border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; cursor: pointer; outline: none; display: flex; align-items: center; flex-shrink: 0; transition: opacity 0.4s, box-shadow 0.2s; }

:where([data-sonner-toast]) :where([data-button]):focus-visible { box-shadow: rgba(0, 0, 0, 0.4) 0px 0px 0px 2px; }

:where([data-sonner-toast]) :where([data-button]):first-of-type { margin-left: var(--toast-button-margin-start); margin-right: var(--toast-button-margin-end); }

:where([data-sonner-toast]) :where([data-cancel]) { color: var(--normal-text); background: rgba(0, 0, 0, 0.08); }

:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]) { background: rgba(255, 255, 255, 0.3); }

:where([data-sonner-toast]) :where([data-close-button]) { position: absolute; left: var(--toast-close-button-start); right: var(--toast-close-button-end); top: 0px; height: 20px; width: 20px; display: flex; justify-content: center; align-items: center; padding: 0px; color: var(--gray12); border: 1px solid var(--gray4); transform: var(--toast-close-button-transform); border-radius: 50%; cursor: pointer; z-index: 1; transition: opacity 0.1s, background 0.2s, border-color 0.2s; }

[data-sonner-toast] [data-close-button] { background: var(--gray1); }

:where([data-sonner-toast]) :where([data-close-button]):focus-visible { box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px, rgba(0, 0, 0, 0.2) 0px 0px 0px 2px; }

:where([data-sonner-toast]) :where([data-disabled="true"]) { cursor: not-allowed; }

:where([data-sonner-toast]):hover :where([data-close-button]):hover { background: var(--gray2); border-color: var(--gray5); }

:where([data-sonner-toast][data-swiping="true"])::before { content: ""; position: absolute; left: -50%; right: -50%; height: 100%; z-index: -1; }

:where([data-sonner-toast][data-y-position="top"][data-swiping="true"])::before { bottom: 50%; transform: scaleY(3) translateY(50%); }

:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"])::before { top: 50%; transform: scaleY(3) translateY(-50%); }

:where([data-sonner-toast][data-swiping="false"][data-removed="true"])::before { content: ""; position: absolute; inset: 0px; transform: scaleY(2); }

:where([data-sonner-toast])::after { content: ""; position: absolute; left: 0px; height: calc(var(--gap) + 1px); bottom: 100%; width: 100%; }

:where([data-sonner-toast][data-mounted="true"]) { --y: translateY(0); opacity: 1; }

:where([data-sonner-toast][data-expanded="false"][data-front="false"]) { --scale: var(--toasts-before) * .05 + 1; --y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale))); height: var(--front-toast-height); }

:where([data-sonner-toast]) > * { transition: opacity 0.4s; }

:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"]) > * { opacity: 0; }

:where([data-sonner-toast][data-visible="false"]) { opacity: 0; pointer-events: none; }

:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]) { --y: translateY(calc(var(--lift) * var(--offset))); height: var(--initial-height); }

:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]) { --y: translateY(calc(var(--lift) * -100%)); opacity: 0; }

:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]) { --y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%)); opacity: 0; }

:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]) { --y: translateY(40%); opacity: 0; transition: transform 0.5s, opacity 0.2s; }

:where([data-sonner-toast][data-removed="true"][data-front="false"])::before { height: calc(var(--initial-height) + 20%); }

[data-sonner-toast][data-swiping="true"] { transform: var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px)); transition: none; }

[data-sonner-toast][data-swiped="true"] { user-select: none; }

[data-sonner-toast][data-swipe-out="true"][data-y-position="bottom"], [data-sonner-toast][data-swipe-out="true"][data-y-position="top"] { animation-duration: 0.2s; animation-timing-function: ease-out; animation-fill-mode: forwards; }

[data-sonner-toast][data-swipe-out="true"][data-swipe-direction="left"] { animation-name: swipe-out-left; }

[data-sonner-toast][data-swipe-out="true"][data-swipe-direction="right"] { animation-name: swipe-out-right; }

[data-sonner-toast][data-swipe-out="true"][data-swipe-direction="up"] { animation-name: swipe-out-up; }

[data-sonner-toast][data-swipe-out="true"][data-swipe-direction="down"] { animation-name: swipe-out-down; }

@keyframes swipe-out-left { 
  0% { transform: var(--y) translate(var(--swipe-amount-x)); opacity: 1; }
  100% { transform: var(--y) translate(calc(var(--swipe-amount-x) - 100%)); opacity: 0; }
}

@keyframes swipe-out-right { 
  0% { transform: var(--y) translate(var(--swipe-amount-x)); opacity: 1; }
  100% { transform: var(--y) translate(calc(var(--swipe-amount-x) + 100%)); opacity: 0; }
}

@keyframes swipe-out-up { 
  0% { transform: var(--y) translateY(var(--swipe-amount-y)); opacity: 1; }
  100% { transform: var(--y) translateY(calc(var(--swipe-amount-y) - 100%)); opacity: 0; }
}

@keyframes swipe-out-down { 
  0% { transform: var(--y) translateY(var(--swipe-amount-y)); opacity: 1; }
  100% { transform: var(--y) translateY(calc(var(--swipe-amount-y) + 100%)); opacity: 0; }
}

@media (max-width: 600px) {
  [data-sonner-toaster] { position: fixed; right: var(--mobile-offset-right); left: var(--mobile-offset-left); width: 100%; }
  [data-sonner-toaster][dir="rtl"] { left: calc(var(--mobile-offset-left) * -1); }
  [data-sonner-toaster] [data-sonner-toast] { left: 0px; right: 0px; width: calc(100% - var(--mobile-offset-left) * 2); }
  [data-sonner-toaster][data-x-position="left"] { left: var(--mobile-offset-left); }
  [data-sonner-toaster][data-y-position="bottom"] { bottom: var(--mobile-offset-bottom); }
  [data-sonner-toaster][data-y-position="top"] { top: var(--mobile-offset-top); }
  [data-sonner-toaster][data-x-position="center"] { left: var(--mobile-offset-left); right: var(--mobile-offset-right); transform: none; }
}

[data-sonner-toaster][data-theme="light"] { --normal-bg: #fff; --normal-border: var(--gray4); --normal-text: var(--gray12); --success-bg: hsl(143, 85%, 96%); --success-border: hsl(145, 92%, 91%); --success-text: hsl(140, 100%, 27%); --info-bg: hsl(208, 100%, 97%); --info-border: hsl(221, 91%, 91%); --info-text: hsl(210, 92%, 45%); --warning-bg: hsl(49, 100%, 97%); --warning-border: hsl(49, 91%, 91%); --warning-text: hsl(31, 92%, 45%); --error-bg: hsl(359, 100%, 97%); --error-border: hsl(359, 100%, 94%); --error-text: hsl(360, 100%, 45%); }

[data-sonner-toaster][data-theme="light"] [data-sonner-toast][data-invert="true"] { --normal-bg: #000; --normal-border: hsl(0, 0%, 20%); --normal-text: var(--gray1); }

[data-sonner-toaster][data-theme="dark"] [data-sonner-toast][data-invert="true"] { --normal-bg: #fff; --normal-border: var(--gray3); --normal-text: var(--gray12); }

[data-sonner-toaster][data-theme="dark"] { --normal-bg: #000; --normal-bg-hover: hsl(0, 0%, 12%); --normal-border: hsl(0, 0%, 20%); --normal-border-hover: hsl(0, 0%, 25%); --normal-text: var(--gray1); --success-bg: hsl(150, 100%, 6%); --success-border: hsl(147, 100%, 12%); --success-text: hsl(150, 86%, 65%); --info-bg: hsl(215, 100%, 6%); --info-border: hsl(223, 100%, 12%); --info-text: hsl(216, 87%, 65%); --warning-bg: hsl(64, 100%, 6%); --warning-border: hsl(60, 100%, 12%); --warning-text: hsl(46, 87%, 65%); --error-bg: hsl(358, 76%, 10%); --error-border: hsl(357, 89%, 16%); --error-text: hsl(358, 100%, 81%); }

[data-sonner-toaster][data-theme="dark"] [data-sonner-toast] [data-close-button] { background: var(--normal-bg); border-color: var(--normal-border); color: var(--normal-text); }

[data-sonner-toaster][data-theme="dark"] [data-sonner-toast] [data-close-button]:hover { background: var(--normal-bg-hover); border-color: var(--normal-border-hover); }

[data-rich-colors="true"][data-sonner-toast][data-type="success"], [data-rich-colors="true"][data-sonner-toast][data-type="success"] [data-close-button] { background: var(--success-bg); border-color: var(--success-border); color: var(--success-text); }

[data-rich-colors="true"][data-sonner-toast][data-type="info"], [data-rich-colors="true"][data-sonner-toast][data-type="info"] [data-close-button] { background: var(--info-bg); border-color: var(--info-border); color: var(--info-text); }

[data-rich-colors="true"][data-sonner-toast][data-type="warning"], [data-rich-colors="true"][data-sonner-toast][data-type="warning"] [data-close-button] { background: var(--warning-bg); border-color: var(--warning-border); color: var(--warning-text); }

[data-rich-colors="true"][data-sonner-toast][data-type="error"], [data-rich-colors="true"][data-sonner-toast][data-type="error"] [data-close-button] { background: var(--error-bg); border-color: var(--error-border); color: var(--error-text); }

.sonner-loading-wrapper { --size: 16px; height: var(--size); width: var(--size); position: absolute; inset: 0px; z-index: 10; }

.sonner-loading-wrapper[data-visible="false"] { transform-origin: center center; animation: 0.2s ease 0s 1 normal forwards running sonner-fade-out; }

.sonner-spinner { position: relative; top: 50%; left: 50%; height: var(--size); width: var(--size); }

.sonner-loading-bar { animation: 1.2s linear 0s infinite normal none running sonner-spin; background: var(--gray11); border-radius: 6px; height: 8%; left: -10%; position: absolute; top: -3.9%; width: 24%; }

.sonner-loading-bar:nth-child(1) { animation-delay: -1.2s; transform: rotate(0.0001deg) translate(146%); }

.sonner-loading-bar:nth-child(2) { animation-delay: -1.1s; transform: rotate(30deg) translate(146%); }

.sonner-loading-bar:nth-child(3) { animation-delay: -1s; transform: rotate(60deg) translate(146%); }

.sonner-loading-bar:nth-child(4) { animation-delay: -0.9s; transform: rotate(90deg) translate(146%); }

.sonner-loading-bar:nth-child(5) { animation-delay: -0.8s; transform: rotate(120deg) translate(146%); }

.sonner-loading-bar:nth-child(6) { animation-delay: -0.7s; transform: rotate(150deg) translate(146%); }

.sonner-loading-bar:nth-child(7) { animation-delay: -0.6s; transform: rotate(180deg) translate(146%); }

.sonner-loading-bar:nth-child(8) { animation-delay: -0.5s; transform: rotate(210deg) translate(146%); }

.sonner-loading-bar:nth-child(9) { animation-delay: -0.4s; transform: rotate(240deg) translate(146%); }

.sonner-loading-bar:nth-child(10) { animation-delay: -0.3s; transform: rotate(270deg) translate(146%); }

.sonner-loading-bar:nth-child(11) { animation-delay: -0.2s; transform: rotate(300deg) translate(146%); }

.sonner-loading-bar:nth-child(12) { animation-delay: -0.1s; transform: rotate(330deg) translate(146%); }

@keyframes sonner-fade-in { 
  0% { opacity: 0; transform: scale(0.8); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes sonner-fade-out { 
  0% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(0.8); }
}

@keyframes sonner-spin { 
  0% { opacity: 1; }
  100% { opacity: 0.15; }
}

@media (prefers-reduced-motion) {
  [data-sonner-toast], [data-sonner-toast] > *, .sonner-loading-bar { transition: none !important; animation: auto ease 0s 1 normal none running none !important; }
}

.sonner-loader { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transform-origin: center center; transition: opacity 0.2s, transform 0.2s; }

.sonner-loader[data-visible="false"] { opacity: 0; transform: scale(0.8) translate(-50%, -50%); }

/* ===================================================================
   SOURCE: style-05.css
   =================================================================== */

.with-scroll-bars-hidden { overflow: hidden !important; padding-right: 0px !important; }

body[data-scroll-locked] { overscroll-behavior: contain; padding-left: 0px; padding-top: 0px; padding-right: 0px; margin-left: 0px; margin-top: 0px; overflow: hidden !important; position: relative !important; margin-right: 0px !important; }

.right-scroll-bar-position { right: 0px !important; }

.width-before-scroll-bar { margin-right: 0px !important; }

.right-scroll-bar-position .right-scroll-bar-position { right: 0px !important; }

.width-before-scroll-bar .width-before-scroll-bar { margin-right: 0px !important; }

body[data-scroll-locked] { --removed-body-scroll-bar-size: 0px; }

/* ===================================================================

/* ===================================================================
   NR-1 LANDING — LAYOUT STYLES (novo visual 2026)
   Cores extraídas dos assets do designer:
     --nr1-orange  : #F26522  (laranja primário)
     --nr1-cream   : #F4EEE7  (fundo claro)
     --nr1-dark    : #1F1F1F  (fundo escuro)
     --nr1-amber   : #F59E0B  (destaque secundário)
     --nr1-grey    : #6D6E71  (texto neutro)
   Fontes: Anton (display/headlines) + Montserrat (body)
   =================================================================== */

/* --- @font-face: Anton e Montserrat via fontes locais --- */
@font-face {
  font-family: 'Anton';
  src: url('../fonts/anton-latin-Byf51wtH.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Anton';
  src: url('../fonts/anton-latin-ext-SyiqE2Jt.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-024F;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/montserrat-latin-l_AIctKy.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/montserrat-latin-ext-BsZE-iaG.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-024F;
}

/* --- CSS Custom Properties --- */
.nr1-lp {
  --nr1-orange:    #F26522;
  --nr1-orange-2:  #d44e18;
  --nr1-amber:     #F59E0B;
  --nr1-cream:     #F4EEE7;
  --nr1-dark:      #1F1F1F;
  --nr1-dark-2:    #2a2a2a;
  --nr1-grey:      #6D6E71;
  --nr1-white:     #ffffff;
  --nr1-display:   'Anton', 'Arial Narrow', sans-serif;
  --nr1-body:      'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --nr1-container: min(1200px, calc(100vw - 48px));
  --nr1-radius:    12px;
  --nr1-radius-lg: 20px;
}

/* --- Reset base --- */
.nr1-lp *,
.nr1-lp *::before,
.nr1-lp *::after {
  box-sizing: border-box;
}

.nr1-lp {
  font-family: var(--nr1-body);
  color: var(--nr1-dark);
  line-height: 1.6;
  overflow-x: hidden;
}

.nr1-lp a {
  color: inherit;
  text-decoration: none;
}

.nr1-lp img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* --- Container --- */
.nr1-container {
  width: var(--nr1-container);
  max-width: 1200px;
  margin-inline: auto;
}

/* --- Tipografia --- */
.nr1-h1 {
  font-family: var(--nr1-display);
  font-weight: 400;
  font-size: clamp(2.4rem, 5vw, 4rem);
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  margin: 0;
}

.nr1-h2 {
  font-family: var(--nr1-display);
  font-weight: 400;
  font-size: clamp(2rem, 7vw, 4.5rem);
  line-height: 1.08;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  margin: 0;
}

.nr1-h3 {
  font-family: var(--nr1-display);
  font-weight: 400;
  font-size: clamp(1.3rem, 2.5vw, 1.8rem);
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  margin: 0;
}

.nr1-kicker {
  display: inline-block;
  font-family: var(--nr1-body);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--nr1-orange);
  margin-bottom: 16px;
}

.nr1-lead {
  font-family: var(--nr1-body);
  font-size: 1.05rem;
  line-height: 1.7;
  max-width: 60ch;
  margin: 0;
}

.nr1-accent { color: var(--nr1-orange); }

/* --- Buttons --- */
.nr1-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--nr1-body);
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
  padding: 16px 32px;
  border-radius: 999px;
  border: 0;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.nr1-btn-primary {
  background: var(--nr1-orange);
  color: var(--nr1-white);
  box-shadow: 0 10px 28px rgba(242, 101, 34, 0.32);
}

.nr1-btn-primary:hover,
.nr1-btn-primary:focus {
  background: var(--nr1-orange-2);
  transform: translateY(-2px);
  color: var(--nr1-white);
  text-decoration: none;
}

.nr1-btn-outline {
  background: transparent;
  color: var(--nr1-white);
  border: 2px solid rgba(255,255,255,0.55);
}

.nr1-btn-outline:hover {
  background: rgba(255,255,255,0.12);
  border-color: var(--nr1-white);
  color: var(--nr1-white);
}

/* ===================================================================
   HEADER / NAV
   =================================================================== */
.nr1-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 800;
  background: rgba(31, 31, 31, 0.75);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  border-radius: 0 0 var(--nr1-radius-lg) var(--nr1-radius-lg);
  height: 68px;
  display: flex;
  align-items: center;
}

.nr1-nav {
  width: var(--nr1-container);
  max-width: 1200px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: 32px;
}

.nr1-nav-logo {
  height: 40px;
  width: auto;
  flex-shrink: 0;
}

.nr1-nav-links {
  display: flex;
  align-items: center;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 1;
}

.nr1-nav-links a {
  font-family: var(--nr1-body);
  font-size: 0.85rem;
  font-weight: 600;
  color: rgba(255,255,255,0.75);
  text-decoration: none;
  transition: color 0.2s;
  white-space: nowrap;
}

.nr1-nav-links a:hover { color: var(--nr1-white); }

.nr1-nav-cta {
  margin-left: auto;
  font-size: 0.88rem;
  padding: 10px 22px;
  flex-shrink: 0;
}

.nr1-nav-burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 8px;
  margin-left: auto;
}

.nr1-nav-burger span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--nr1-white);
  border-radius: 2px;
  transition: transform 0.2s, opacity 0.2s;
}

/* Mobile nav */
@media (max-width: 900px) {
  .nr1-nav-links {
    display: none;
    position: absolute;
    top: 68px;
    left: 0;
    right: 0;
    background: var(--nr1-dark);
    flex-direction: column;
    align-items: flex-start;
    padding: 20px 24px;
    gap: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
  }
  .nr1-nav-links.is-open { display: flex; }
  .nr1-nav-links a { font-size: 1rem; }
  .nr1-nav-cta { display: none; }
  .nr1-nav-burger { display: flex; }
}

/* ===================================================================
   HERO
   =================================================================== */
.nr1-hero {
  position: relative;
  overflow: hidden;
  background: var(--nr1-dark);
  color: var(--nr1-white);
  padding: 120px 0 80px;
  min-height: 90vh;
  display: flex;
  align-items: center;
}

/* Amber glow — hero bottom-center, blends product image into dark bg */
.nr1-hero::before {
  content: "";
  position: absolute;
  bottom: -10%;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  max-width: 900px;
  height: 40%;
  min-height: 260px;
  background: radial-gradient(
    ellipse at center,
    var(--nr1-amber) 0%,
    rgba(245, 158, 11, 0.35) 30%,
    rgba(245, 158, 11, 0.12) 55%,
    transparent 75%
  );
  filter: blur(60px);
  opacity: 0.6;
  pointer-events: none;
  z-index: 1;
}

.nr1-hero__wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}

.nr1-hero__copy {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.nr1-hero h1 { color: var(--nr1-white); }
.nr1-hero h1 .nr1-accent { color: var(--nr1-orange); }

.nr1-hero .nr1-lead {
  color: rgba(255,255,255,0.75);
}

.nr1-hero__media {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.nr1-hero__media img {
  width: 100%;
  max-width: 520px;
  border-radius: var(--nr1-radius-lg);
}

@media (max-width: 860px) {
  .nr1-hero {
    padding: 100px 0 60px;
    min-height: auto;
  }
  .nr1-hero__wrap {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .nr1-hero__copy { align-items: center; }
  .nr1-hero .nr1-lead { max-width: 100%; }
  .nr1-hero__media { margin-top: 8px; }

  /* Amber glow — scaled down for mobile hero */
  .nr1-hero::before {
    width: 90%;
    max-width: 480px;
    height: 30%;
    min-height: 180px;
    filter: blur(40px);
  }
}

/* ===================================================================
   SECTIONS — layout base
   =================================================================== */
.nr1-section {
  padding: clamp(64px, 8vw, 100px) 0;
}

.nr1-section--dark {
  background: var(--nr1-dark);
  color: var(--nr1-white);
}

.nr1-section--light {
  background: var(--nr1-cream);
  color: var(--nr1-dark);
}

.nr1-section--white {
  background: var(--nr1-white);
  color: var(--nr1-dark);
}

.nr1-section__header {
  max-width: 700px;
  margin-bottom: clamp(40px, 5vw, 64px);
}

.nr1-section__header--center {
  margin-inline: auto;
  text-align: center;
}

/* Cabeçalho em 2 colunas (Figma): kicker + título à esquerda,
   parágrafo lead à direita. Usado em Solução e Resultados. */
.nr1-section__header--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(32px, 6vw, 80px);
  align-items: end;
}

.nr1-section__header-heading { display: flex; flex-direction: column; }

.nr1-section__header--split .nr1-lead {
  margin-top: 0;
  align-self: end;
}

@media (max-width: 860px) {
  .nr1-section__header--split {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 16px;
  }
}

.nr1-section__header .nr1-kicker { display: block; }

.nr1-section__header .nr1-lead {
  margin-top: 16px;
}

/* dark sections: lead text lighter */
.nr1-section--dark .nr1-lead {
  color: rgba(255,255,255,0.72);
}

.nr1-section--dark .nr1-kicker {
  color: var(--nr1-orange);
}

/* Título da seção Resultados: garante branco (o .nr1-accent interno
   permanece laranja via sua própria regra). */
#resultados .nr1-h2 { color: var(--nr1-white); }

/* ===================================================================
   SEÇÃO PROBLEMA
   Layout (Figma): tier de cabeçalho (kicker + título à esquerda,
   parágrafo lead à direita) sobre o fundo creme → painel laranja
   unificado abaixo, com o gráfico 30% à esquerda e o dado + destaque
   à direita.
   =================================================================== */
.nr1-problema__header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(32px, 6vw, 80px);
  align-items: end;
  margin-bottom: clamp(32px, 5vw, 56px);
}

.nr1-problema__heading { display: flex; flex-direction: column; }

.nr1-problema__intro {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.nr1-problema__panel {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
  background: var(--nr1-orange);
  color: var(--nr1-white);
  border-radius: var(--nr1-radius-lg);
  padding: clamp(32px, 5vw, 56px);
}

.nr1-problema__media {
  display: flex;
  justify-content: center;
  align-items: center;
}

.nr1-problema__media img {
  width: 100%;
  max-width: 340px;
}

.nr1-problema__detail { display: flex; flex-direction: column; }

.nr1-problema__data {
  margin: 0;
  font-family: var(--nr1-body);
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.92);
}

.nr1-problema__data strong { color: var(--nr1-white); font-weight: 700; }

.nr1-problema__defense-kicker {
  color: var(--nr1-dark);
  margin-top: 28px;
  margin-bottom: 12px;
}

.nr1-problema__defense {
  margin: 0;
  font-family: var(--nr1-display);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  line-height: 1.08;
  font-size: clamp(1.3rem, 2.4vw, 1.8rem);
  color: var(--nr1-dark);
}

@media (max-width: 860px) {
  .nr1-problema__header {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 20px;
  }
  .nr1-problema__panel {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .nr1-problema__media { order: -1; }
  .nr1-problema__media img { max-width: 260px; }
}

/* ===================================================================
   SEÇÃO ICEBERG
   Layout (Figma): cabeçalho no topo (título à esquerda, texto de apoio
   à direita) → iceberg destacado e centralizado abaixo → logos
   NR-Care + Scaffold centralizados ao final. Os rótulos "SINTOMAS" /
   "A CAUSA REAL" e os pins já fazem parte do asset iceberg.webp.
   =================================================================== */
.nr1-iceberg__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: end;
  margin-bottom: clamp(40px, 6vw, 64px);
}

.nr1-iceberg__heading { display: flex; flex-direction: column; }

.nr1-iceberg__intro {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.nr1-iceberg__media {
  display: flex;
  justify-content: center;
}

.nr1-iceberg__media img {
  width: 100%;
  max-width: 620px;
  height: auto;
}

.nr1-iceberg__closing {
  max-width: 760px;
  margin-inline: auto;
  margin-top: clamp(40px, 6vw, 56px);
  text-align: center;
}

.nr1-iceberg__logos {
  display: flex;
  justify-content: center;
  margin-top: 32px;
}

.nr1-iceberg__logos img {
  max-width: 360px;
  opacity: 0.9;
}

@media (max-width: 860px) {
  .nr1-iceberg__header {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 20px;
  }
}

/* ===================================================================
   SEÇÃO SOLUÇÃO (cards)
   =================================================================== */
.nr1-solucao__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 0;
}

.nr1-solucao__card {
  background: var(--nr1-white);
  border: 1px solid rgba(26,18,8,0.1);
  border-radius: var(--nr1-radius-lg);
  padding: 36px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.nr1-solucao__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 48px rgba(26,18,8,0.1);
}

.nr1-solucao__icon {
  width: 64px;
  height: 64px;
}

.nr1-solucao__card h3 {
  color: var(--nr1-dark);
}

.nr1-solucao__card p {
  margin: 0;
  color: var(--nr1-grey);
  font-size: 0.94rem;
  line-height: 1.65;
}

.nr1-solucao__footer {
  margin-top: 48px;
  text-align: center;
  font-weight: 700;
  font-size: 1.05rem;
  color: var(--nr1-grey);
}

.nr1-solucao__footer em {
  color: var(--nr1-orange);
  font-style: normal;
}

@media (max-width: 860px) {
  .nr1-solucao__cards { grid-template-columns: 1fr; }
}

/* ===================================================================
   SEÇÃO COMO FUNCIONA (4 passos)
   =================================================================== */
.nr1-how-title-badge {
    color: #F26522;
}

.nr1-como__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.nr1-como__card {
  background: var(--nr1-white);
  border: 1px solid rgba(26,18,8,0.1);
  border-radius: var(--nr1-radius-lg);
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  position: relative;
}

.nr1-como__num {
  font-family: var(--nr1-display);
  font-size: 3rem;
  line-height: 1;
  color: var(--nr1-orange);
  margin-bottom: 4px;
}

.nr1-como__card h3 {
  font-size: 1.1rem;
  color: var(--nr1-dark);
}

.nr1-como__card p {
  margin: 0;
  color: var(--nr1-grey);
  font-size: 0.9rem;
  line-height: 1.65;
}

@media (max-width: 1024px) {
  .nr1-como__cards { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .nr1-como__cards { grid-template-columns: 1fr; }
}

/* ===================================================================
   SEÇÃO RESULTADOS (clientes)
   =================================================================== */
.nr1-resultados__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.nr1-resultados__card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: var(--nr1-radius-lg);
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: border-color 0.2s, background 0.2s;
}

.nr1-resultados__card:hover {
  border-color: rgba(242,101,34,0.4);
  background: rgba(255,255,255,0.08);
}

.nr1-resultados__stat {
  font-family: var(--nr1-display);
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  color: var(--nr1-white);
}

/* Número/percentual em destaque (accent laranja) via .nr1-accent;
   o descritor herda o creme/branco abaixo, conforme o Figma. */
.nr1-resultados__stat .nr1-accent { display: block; }

.nr1-resultados__stat-label {
  display: block;
  color: var(--nr1-white);
}

.nr1-resultados__card p {
  margin: 0;
  font-size: 0.92rem;
  color: rgba(255,255,255,0.72);
  line-height: 1.65;
}

.nr1-resultados__logo {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.1);
}

.nr1-resultados__logo img {
  height: 32px;
  width: auto;
  object-fit: contain;
  opacity: 0.85;
  filter: brightness(0) invert(1);
}

@media (max-width: 860px) {
  .nr1-resultados__cards { grid-template-columns: 1fr; }
}

/* ===================================================================
   SEÇÃO PRICING — box escuro + seletor por faixa (FASE 3b)
   ------------------------------------------------------------------
   Box escuro (estilo Figma 01) com seletor por FAIXA de colaboradores.
   Layout split: heading à esquerda, box à direita (nr1-section__header--split).
   =================================================================== */
.nr1-pricing__box {
  background: var(--nr1-dark, #1a1208);
  border-radius: var(--nr1-radius-lg);
  padding: clamp(28px, 3.5vw, 44px);
  width: 100%;
  max-width: 520px;
  color: var(--nr1-white);
  box-shadow:
    0 0 0 1px rgba(242,101,34,0.18),
    0 24px 60px rgba(26,18,8,0.18),
    0 0 70px rgba(242,101,34,0.12);
}

.nr1-pricing__label {
  font-family: var(--nr1-body);
  font-weight: 700;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.55);
  margin-bottom: 14px;
}

.nr1-pricing__range-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}

#nr1-tier-range-label {
  font-family: var(--nr1-display);
  font-size: clamp(2rem, 3.5vw, 2.6rem);
  line-height: 1;
  color: var(--nr1-white);
}

.nr1-pricing__range-unit {
  font-size: 0.95rem;
  color: rgba(255,255,255,0.6);
}

.nr1-pricing__slider {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 6px;
  background: linear-gradient(to right, var(--nr1-orange) 0%, rgba(255,255,255,0.18) 0%);
  border-radius: 3px;
  outline: none;
  cursor: pointer;
  margin: 6px 0 10px;
}

.nr1-pricing__slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  background: var(--nr1-orange);
  border-radius: 50%;
  cursor: pointer;
  border: 3px solid var(--nr1-white);
  box-shadow: 0 2px 8px rgba(242,101,34,0.5);
}

.nr1-pricing__slider::-moz-range-thumb {
  width: 22px;
  height: 22px;
  background: var(--nr1-orange);
  border-radius: 50%;
  cursor: pointer;
  border: 3px solid var(--nr1-white);
  box-shadow: 0 2px 8px rgba(242,101,34,0.5);
}

.nr1-pricing__slider:focus-visible {
  box-shadow: 0 0 0 3px rgba(242,101,34,0.4);
}

.nr1-pricing__hint {
  font-size: 0.82rem;
  color: rgba(255,255,255,0.45);
  margin-bottom: 22px;
}

.nr1-pricing__total-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--nr1-radius-md, 14px);
  padding: 18px 22px;
  margin-bottom: 22px;
}

.nr1-pricing__tier-range {
  font-weight: 700;
  font-size: 1.05rem;
  color: var(--nr1-white);
  margin-bottom: 10px;
}

.nr1-pricing__price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}

#nr1-tier-price {
  font-family: var(--nr1-display);
  font-size: clamp(2rem, 3.5vw, 2.6rem);
  line-height: 1;
  color: var(--nr1-white);
}

.nr1-pricing__suffix {
  font-size: 0.95rem;
  color: rgba(255,255,255,0.6);
}

.nr1-pricing__divider {
  height: 1px;
  background: rgba(255,255,255,0.12);
  margin: 16px 0;
}

.nr1-pricing__total-line {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 0.95rem;
  color: rgba(255,255,255,0.7);
}

.nr1-pricing__total-value {
  font-family: var(--nr1-display);
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--nr1-white);
}

.nr1-pricing__total-suffix {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.6);
}

.nr1-pricing__cta {
  width: 100%;
  justify-content: center;
  text-align: center;
}

/* Slider contínuo: link "Sob consulta" (> 2.000 colaboradores) sempre visível
   junto ao CTA, também injetado via JS (a faixa "Sob consulta" não é mais
   alcançável arrastando o slider, que agora é capado em 2000). */
.nr1-pricing__contact-link {
  display: block;
  margin-top: 12px;
  text-align: center;
  font-size: 0.85rem;
  color: rgba(255,255,255,0.6);
  text-decoration: underline;
}

.nr1-pricing__contact-link:hover,
.nr1-pricing__contact-link:focus-visible {
  color: var(--nr1-white);
}

/* Alinhamento do split na seção de Preços: o box é alto, então alinhamos pelo
   topo (em vez do baseline usado em Solução/Resultados) e empurramos o box à
   direita da coluna. */
#precos .nr1-section__header--split {
  align-items: start;
}

#precos .nr1-pricing__box {
  justify-self: end;
}

@media (max-width: 860px) {
  #precos .nr1-pricing__box {
    justify-self: stretch;
    max-width: 100%;
  }
}

/* ===================================================================
   SEÇÃO FAQ
   =================================================================== */
.nr1-faq__list {
  max-width: 760px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid rgba(26,18,8,0.1);
  border-radius: var(--nr1-radius-lg);
  overflow: hidden;
  background: var(--nr1-white);
}

.nr1-faq__item {
  border-bottom: 1px solid rgba(26,18,8,0.08);
}

.nr1-faq__item:last-child {
  border-bottom: 0;
}

.nr1-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 24px;
  background: none;
  border: 0;
  width: 100%;
  text-align: left;
  cursor: pointer;
  font-family: var(--nr1-body);
  font-weight: 700;
  font-size: 0.97rem;
  color: var(--nr1-dark);
  transition: background 0.15s;
}

.nr1-faq__question:hover {
  background: rgba(242,101,34,0.04);
}

.nr1-faq__question[aria-expanded="true"] {
  color: var(--nr1-orange);
}

.nr1-faq__icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  position: relative;
}

.nr1-faq__icon::before,
.nr1-faq__icon::after {
  content: '';
  position: absolute;
  background: currentColor;
  border-radius: 2px;
  transition: transform 0.2s, opacity 0.2s;
}

.nr1-faq__icon::before {
  width: 14px; height: 2px;
  top: 9px; left: 3px;
}

.nr1-faq__icon::after {
  width: 2px; height: 14px;
  top: 3px; left: 9px;
}

.nr1-faq__question[aria-expanded="true"] .nr1-faq__icon::after {
  transform: rotate(90deg);
  opacity: 0;
}

.nr1-faq__answer {
  display: none;
  padding: 0 24px 22px;
  font-size: 0.95rem;
  color: var(--nr1-grey);
  line-height: 1.7;
}

.nr1-faq__item.is-open .nr1-faq__answer {
  display: block;
}

/* ===================================================================
   SEÇÃO CTA FINAL
   =================================================================== */
.nr1-cta-final {
  text-align: center;
}

.nr1-cta-final__inner {
  max-width: 640px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}

.nr1-cta-final .nr1-h2 { color: var(--nr1-white); }

.nr1-cta-final .nr1-lead {
  color: rgba(255,255,255,0.72);
  text-align: center;
}

/* ===================================================================
   CHECKOUT PANEL — 2 steps
   ------------------------------------------------------------------
   FASE 3c: a seção #comprar e o card .nr1-buybox foram removidos da LP.
   O CSS do painel de checkout (abaixo) é REUTILIZADO pela página de
   checkout dedicada (nr1/nr1-checkout-template.php), que também vive
   no escopo .nr1-lp.
   =================================================================== */
.nr1-checkout-steps { display: flex; flex-direction: column; gap: 0; }

.nr1-checkout-step {
  display: none;
}

.nr1-checkout-step.is-active {
  display: block;
}

.nr1-checkout-panel-layout {
  display: grid;
  grid-template-columns: 1fr minmax(320px, 400px);
  gap: 0;
  align-items: stretch;
}

/* Coluna esquerda (form) com respiro interno; a direita (card COMBO) é escura
   e vai de ponta a ponta do card, como no Figma 02. */
.nr1-checkout-panel-left {
  padding: 8px 40px 8px 8px;
}

/* ---------------------------------------------------------------------------
   Cabeçalho do card: eyebrow + título + subtítulo (Figma 02/03).
   --------------------------------------------------------------------------- */
.nr1-checkout-cardhead {
  margin-bottom: 24px;
}

.nr1-checkout-eyebrow {
  display: block;
  font-family: var(--nr1-body);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--nr1-orange);
  margin-bottom: 12px;
}

.nr1-checkout-cardtitle {
  font-family: var(--nr1-display);
  font-weight: 400;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  line-height: 1.05;
  text-transform: uppercase;
  color: var(--nr1-dark);
  margin: 0 0 10px;
  letter-spacing: 0.01em;
}

.nr1-checkout-cardsub {
  font-family: var(--nr1-body);
  font-size: 0.95rem;
  color: #4b4b4b;
  margin: 0;
}

/* ---------------------------------------------------------------------------
   Stepper "1 Dados da empresa — 2 Pagamento" (Figma 02/03).
   Estados: ativo (laranja), concluído (cinza escuro), pendente (cinza claro).
   --------------------------------------------------------------------------- */
.nr1-stepper {
  display: flex;
  align-items: flex-start;
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
  justify-self: center;
}

.nr1-stepper__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  text-align: center;
  padding: 0 36px;
}

/* Conector entre os dois passos — preenche exatamente o gap do flex
   container acima (72px em ambos), para não sobrepor nem o círculo do passo
   1 nem o do passo 2. */
.nr1-stepper__step {
  position: relative;
}
.nr1-stepper__step:not(:first-child):before {
  content: '';
  position: absolute;
  top: 20px;
  left: 0;
  width: calc(50% - 20px);
  height: 2px;
  background: rgba(26, 18, 8, 0.15);
}
.nr1-stepper__step:not(:last-child):after {
  content: '';
  position: absolute;
  top: 20px;
  right: 0;
  width: calc(50% - 20px);
  height: 2px;
  background: rgba(26, 18, 8, 0.15);
}

.nr1-stepper__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  font-family: var(--nr1-body);
  font-weight: 700;
  font-size: 0.95rem;
  background: #cfcfcf;
  color: #fff;
  border: 0;
  padding: 0;
  line-height: 1;
}

/* Botão "voltar" (número 1 na etapa Pagamento) fica clicável. */
button.nr1-stepper__num {
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
button.nr1-stepper__num:hover,
button.nr1-stepper__num:focus {
  transform: scale(1.06);
  box-shadow: 0 0 0 4px rgba(26, 18, 8, 0.08);
}

.nr1-stepper__label {
  font-family: var(--nr1-body);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #9a9a9a;
  white-space: nowrap;
  line-height: 1.2;
}

/* Estado ATIVO: número laranja + rótulo laranja. */
.nr1-stepper__step.is-active .nr1-stepper__num {
  background: var(--nr1-orange);
  color: #fff;
}
.nr1-stepper__step.is-active .nr1-stepper__label {
  color: var(--nr1-orange);
}

/* Estado CONCLUÍDO: número cinza escuro + rótulo escuro. */
.nr1-stepper__step.is-done .nr1-stepper__num {
  background: #7a7a7a;
  color: #fff;
}
.nr1-stepper__step.is-done .nr1-stepper__label {
  color: var(--nr1-dark);
}

/* ---------------------------------------------------------------------------
   Card COMBO escuro (Figma 02): torn-paper + nome + preço + faixa.
   --------------------------------------------------------------------------- */
.nr1-combo-card {
  background: radial-gradient(118.27% 71.87% at 100% 100%, rgba(255, 87, 7, 0.20) 0%, rgba(255, 87, 7, 0.00) 100%), #1F1F1F;
  color: var(--nr1-white);
  border-radius: var(--nr1-radius-lg);
  padding: 32px 28px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.nr1-combo-card__pill {
  align-self: center;
  background: var(--nr1-orange);
  color: #fff;
  font-family: var(--nr1-body);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 8px 22px;
  border-radius: 999px;
}

.nr1-combo-card__art {
  width: 100%;
  max-width: 340px;
  height: auto;
  margin: 6px auto 4px;
  display: block;
}

.nr1-combo-card__info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
}

.nr1-combo-card__name {
  font-family: var(--nr1-body);
  font-size: 0.95rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  line-height: 1.4;
}

/* Conteúdo dinâmico: pode ser só o preço (fallback, ex. "R$ 11,52") OU a
   frase completa "{qty} colaboradores — Total: {wc_price}/mês" (caminho
   normal, com item no carrinho). A base fica em corpo de texto menor, para
   comportar a frase inteira sem overflow no card estreito (~340px); o valor
   monetário (wc_price) ganha destaque tipográfico próprio abaixo. */
.nr1-combo-card__price {
  font-family: var(--nr1-body);
  font-weight: 400;
  font-size: clamp(0.95rem, 2.4vw, 1.1rem);
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.4;
  margin: 2px 0;
  overflow-wrap: break-word;
  word-break: break-word;
  text-align: center;
}

/* Prefixo textual ("{qty} colaboradores — Total:") — mais discreto que o
   valor monetário em destaque. */
.nr1-combo-card__price-label {
  color: rgba(255, 255, 255, 0.75);
  font-weight: 500;
}

/* O preço vem do WooCommerce (wc_price) com marcações internas; ganha
   destaque tipográfico próprio (maior, cor laranja), independente do texto
   ao redor — tanto no caminho normal ("... Total: R$ X/mês") quanto no
   fallback (preço isolado). */
.nr1-combo-card__price .woocommerce-Price-amount,
.nr1-combo-card__price bdi {
  display: inline-block;
  font-family: var(--nr1-display);
  font-size: clamp(1.4rem, 3.2vw, 1.9rem);
  font-weight: 600;
  color: var(--nr1-orange);
  line-height: 1.25;
}

.nr1-combo-card__range {
  font-family: var(--nr1-body);
  font-size: 0.9rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
}

/* Valor por colaborador — informação SECUNDÁRIA, com pouco destaque
   (menor e mais apagada que o total, que continua sendo o foco do card). */
.nr1-combo-card__unit-price {
  font-family: var(--nr1-body);
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.55);
  margin: 0;
}

.nr1-combo-card__unit-price .woocommerce-Price-amount,
.nr1-combo-card__unit-price bdi {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
}

/* CTA da etapa 1 em largura total (Figma 02). */
.nr1-checkout-cta {
  width: 100%;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.nr1-checkout-reassure {
  text-align: center;
  font-family: var(--nr1-body);
  font-size: 0.82rem;
  color: #7a7a7a;
  margin: 14px 0 0;
}

/* B2B step 1 fields */
.nr1-b2b-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.nr1-b2b-form__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.nr1-b2b-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.nr1-b2b-field label {
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--nr1-dark);
  text-transform: none;
  letter-spacing: normal;
}

.nr1-b2b-field label span[aria-hidden="true"] {
  color: var(--nr1-orange);
}

.nr1-b2b-field input,
.nr1-b2b-field select {
  width: 100%;
  padding: 13px 16px;
  border: 1.5px solid rgba(26,18,8,0.18);
  border-radius: var(--nr1-radius);
  font-family: var(--nr1-body);
  font-size: 0.95rem;
  color: var(--nr1-dark);
  background: var(--nr1-white);
  outline: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.nr1-b2b-field input:focus,
.nr1-b2b-field select:focus {
  border-color: var(--nr1-orange);
  box-shadow: 0 0 0 3px rgba(242, 101, 34, 0.14);
}

.nr1-b2b-field input.nr1-field-error {
  border-color: hsl(0 70% 48%);
}

/* FASE 2.2 (correção B2B) — mount point onde os inputs REAIS do
   WooCommerce (CNPJ, Razão Social, Responsável, Cargo — caminho
   clássico, ver nr1_add_b2b_checkout_fields() em nr1-woocommerce.php)
   são realocados por relocateB2BFieldsIntoStep1() (nr1-checkout.js).
   Cada campo chega como um wrapper `.form-row` padrão do WooCommerce
   (label + span.woocommerce-input-wrapper + input); as regras abaixo
   espelham o visual de .nr1-b2b-field para manter consistência. */
#nr1-b2b-real-fields-mount,
.nr1-b2b-fields-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

#nr1-b2b-real-fields-mount .form-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  grid-column: span 1;
}

#nr1-b2b-real-fields-mount .form-row-wide {
  grid-column: 1 / -1;
}

/* Achado de revisão (severidade média) — o CSS core do WooCommerce
   (woocommerce-layout.css, carregado pelo plugin, fora do escopo deste
   tema) define .form-row-first/.form-row-last com width: 47% + float,
   pensado para um layout de bloco comum (2 campos por linha sem grid).
   Dentro do grid de 2 colunas deste mount point isso deixaria cada
   campo ocupando só ~47% da sua célula do grid (float é ignorado em
   itens de grid, mas o width explícito não). As regras abaixo anulam
   esse width/float herdado para que o campo preencha 100% da célula
   que `grid-column: span 1` (regra genérica .form-row acima) já
   reserva para ele. */
#nr1-b2b-real-fields-mount .form-row-first,
#nr1-b2b-real-fields-mount .form-row-last {
  width: 100%;
  float: none;
  clear: none;
}

#nr1-b2b-real-fields-mount .form-row label {
  font-family: var(--nr1-body);
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--nr1-dark);
  text-transform: none;
  letter-spacing: normal;
}

#nr1-b2b-real-fields-mount .form-row label .required {
  color: var(--nr1-orange);
  text-decoration: none;
}

#nr1-b2b-real-fields-mount .form- row input.input-text {
  width: 100%;
  padding: 13px 16px;
  border: 1.5px solid rgba(26,18,8,0.18);
  border-radius: var(--nr1-radius);
  font-family: var(--nr1-body);
  font-size: 0.95rem;
  color: var(--nr1-dark);
  background: var(--nr1-white);
  outline: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

#nr1-b2b-real-fields-mount .form-row input.input-text:focus {
  border-color: var(--nr1-orange);
  box-shadow: 0 0 0 3px rgba(242, 101, 34, 0.14);
}

#nr1-b2b-real-fields-mount .form-row.woocommerce-invalid input.input-text,
#nr1-b2b-real-fields-mount .form-row input.input-text.nr1-field-error {
  border-color: hsl(0 70% 48%);
}

.nr1-b2b-submit {
  margin-top: 16px;
}

.nr1-b2b-validation-msg {
  font-size: 0.85rem;
  color: hsl(0 70% 42%);
  margin-top: 8px;
  display: none;
}

.nr1-b2b-validation-msg.is-visible {
  display: block;
}

@media (max-width: 780px) {
  .nr1-checkout-panel-layout { grid-template-columns: 1fr; gap: 2em;}
  .nr1-checkout-panel-left { padding: 0; }
  .nr1-combo-card { order: -1; }
  .nr1-b2b-form__row { grid-template-columns: 1fr; }
  #nr1-b2b-real-fields-mount { grid-template-columns: 1fr; }
}

/* ===================================================================
   FOOTER
   =================================================================== */
.nr1-footer {
  background: var(--nr1-dark);
  color: rgba(255,255,255,0.6);
  padding: 40px 0;
  border-top: 1px solid rgba(255,255,255,0.08);
}

.nr1-footer__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.nr1-footer__logo {
  height: 36px;
  width: auto;
}

.nr1-footer__copy {
  font-size: 0.82rem;
}

@media (max-width: 600px) {
  .nr1-footer__inner { flex-direction: column; text-align: center; }
}

/* ===================================================================
   REVEAL ON SCROLL
   =================================================================== */
.nr1-lp .reveal-on-scroll {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.nr1-lp .reveal-on-scroll.is-visible {
  opacity: 1;
  transform: none;
}

/* ===================================================================
   ADMIN BAR OFFSET
   =================================================================== */
body.admin-bar .nr1-header {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .nr1-header {
    top: 46px;
  }
}
