/* Shared visual helpers for templates that cannot be expressed cleanly with Tailwind classes. */

:root {
    --brand-950: #0D1B2A;
    --brand-900: #14283D;
    --brand-700: #27445E;
    --coral-600: #E85C50;
    --coral-500: #FF6F61;
    --coral-100: #FFE8E5;
    --coral-50: #FFF6F4;
    --ui-canvas: #F4F5F7;
    --ui-surface: #FFFFFF;
    --ui-surface-soft: #FAFAFB;
    --ui-surface-muted: #F1F3F5;
    --ui-border: #E4E7EC;
    --ui-border-strong: #D0D5DD;
    --ui-text: #101828;
    --ui-text-soft: #475467;
    --ui-text-muted: #667085;
    --success: #1F8A5B;
    --success-soft: #ECFDF3;
    --warning: #C97713;
    --warning-soft: #FFF7E8;
    --info: #3478F6;
    --info-soft: #EFF6FF;
    --violet: #7357D9;
    --violet-soft: #F3F0FF;
    --danger: #D64545;
    --danger-soft: #FFF1F1;
    --brand-primary: #0d1b2a;
    --brand-primary-rgb: 13 27 42;
    --brand-secondary: #ff6f61;
    --brand-secondary-rgb: 255 111 97;
    --brand-secondary-hover: #e85c50;
    --brand-tertiary: #b8b6b1;
    --brand-tertiary-rgb: 184 182 177;
    --brand-background: var(--ui-canvas);
    --brand-surface: #ffffff;
    --brand-surface-rgb: 255 255 255;
    --brand-border: #d8d4ce;
    --brand-muted: #5f6670;
    --brand-placeholder: #8c9098;
    --brand-primary-soft: #e9edf2;
    --brand-on-primary: #ffffff;
}

.abstract-section {
    position: relative;
    overflow: hidden;
}

.abstract-section::before,
.abstract-section::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.abstract-section::before {
    width: min(44rem, 58vw);
    height: 16rem;
    background:
        linear-gradient(
            110deg,
            transparent 0 18%,
            rgb(var(--brand-primary-rgb) / 0.08) 18% 19%,
            transparent 19% 32%,
            rgb(var(--brand-secondary-rgb) / 0.28) 32% 34%,
            transparent 34% 100%
        );
    transform: rotate(-8deg);
}

.abstract-section::after {
    height: 1px;
    background: rgb(var(--brand-primary-rgb) / 0.11);
}

.abstract-hero::before {
    right: -10rem;
    top: 6rem;
}

.abstract-hero::after {
    left: 0;
    top: 7rem;
    width: 62%;
}

.abstract-flow::before {
    left: -12rem;
    bottom: 4rem;
    transform: rotate(10deg);
}

.abstract-flow::after {
    right: 0;
    top: 9rem;
    width: 48%;
}

.abstract-final::before {
    right: -13rem;
    bottom: 5rem;
    transform: rotate(12deg);
}

.abstract-final::after {
    left: 0;
    top: 6rem;
    width: 54%;
}

.abstract-content {
    position: relative;
    z-index: 1;
}

.markdown-content h1,
.markdown-content h2,
.markdown-content h3,
.markdown-content h4,
.markdown-content h5,
.markdown-content h6,
.markdown-preview h1,
.markdown-preview h2,
.markdown-preview h3,
.markdown-preview h4,
.markdown-preview h5,
.markdown-preview h6 {
    margin: 0.9rem 0 0.45rem;
    color: var(--brand-primary);
    font-weight: 700;
    line-height: 1.25;
}

.markdown-content h1,
.markdown-preview h1 {
    font-size: 1.35rem;
}

.markdown-content h2,
.markdown-preview h2 {
    font-size: 1.12rem;
}

.markdown-content h3,
.markdown-preview h3 {
    font-size: 1rem;
}

.markdown-content h4,
.markdown-content h5,
.markdown-content h6,
.markdown-preview h4,
.markdown-preview h5,
.markdown-preview h6 {
    font-size: 0.95rem;
}

.markdown-content p,
.markdown-preview p {
    margin: 0.55rem 0;
}

.markdown-content ul,
.markdown-content ol,
.markdown-preview ul,
.markdown-preview ol {
    margin: 0.6rem 0;
    padding-left: 1.25rem;
}

.markdown-content ul,
.markdown-preview ul {
    list-style: square;
}

.markdown-content ol,
.markdown-preview ol {
    list-style: decimal;
}

.markdown-content li,
.markdown-preview li {
    margin: 0.3rem 0;
}

.markdown-content a,
.markdown-preview a {
    color: var(--brand-primary);
    font-weight: 700;
    text-decoration: underline;
    text-decoration-color: var(--brand-secondary);
    text-underline-offset: 0.2rem;
}

.markdown-content blockquote,
.markdown-preview blockquote {
    margin: 0.8rem 0;
    border-left: 2px solid var(--brand-secondary);
    background: var(--brand-surface);
    padding: 0.75rem 1rem;
    color: var(--brand-primary);
}

.markdown-content pre,
.markdown-preview pre {
    margin: 0.8rem 0;
    overflow: auto;
    border: 1px solid var(--brand-border);
    background: var(--brand-primary);
    padding: 1rem;
    color: var(--brand-on-primary);
}

.markdown-content code,
.markdown-preview code {
    background: #e9edf2;
    padding: 0.1rem 0.3rem;
    color: var(--brand-primary);
    font-size: 0.85em;
}

.markdown-content pre code,
.markdown-preview pre code {
    background: transparent;
    padding: 0;
    color: inherit;
}

.markdown-content hr,
.markdown-preview hr {
    margin: 1rem 0;
    border: 0;
    border-top: 1px solid var(--brand-border);
}

.markdown-content img,
.markdown-preview img {
    margin: 0.8rem 0;
    max-width: 100%;
    border: 1px solid var(--brand-border);
}

.markdown-content .markdown-table-wrap,
.markdown-preview .markdown-table-wrap {
    margin: 0.8rem 0;
    overflow-x: auto;
}

.markdown-content table,
.markdown-preview table {
    min-width: 100%;
    border-collapse: collapse;
    background: var(--brand-surface);
}

.markdown-content th,
.markdown-content td,
.markdown-preview th,
.markdown-preview td {
    border: 1px solid var(--brand-border);
    padding: 0.55rem 0.7rem;
    text-align: left;
    vertical-align: top;
}

.markdown-content th,
.markdown-preview th {
    background: var(--brand-background);
    color: var(--brand-primary);
    font-weight: 700;
}

.markdown-preview .markdown-empty {
    color: var(--brand-placeholder);
}

/* Dashboard: a candidatura inteira e uma unica acao, sem competir com os dados da tabela. */
#dashboard-candidates-body tr[data-profile-url] {
    position: relative;
}

#dashboard-candidates-body tr[data-profile-url] > td:first-child > div > span {
    display: none;
}

#dashboard-candidates-body tr[data-profile-url]:hover,
#dashboard-candidates-body tr[data-profile-url]:focus {
    background: color-mix(in srgb, var(--brand-primary) 3%, transparent);
}

#dashboard-candidates-body tr[data-profile-url]:hover a,
#dashboard-candidates-body tr[data-profile-url]:focus a {
    color: var(--brand-secondary);
    text-decoration: underline;
    text-underline-offset: 0.22em;
}

.ui-card {
    border: 1px solid var(--ui-border);
    border-radius: 14px;
    background: var(--ui-surface);
    box-shadow: 0 1px 2px rgb(13 27 42 / 0.04);
}

.ui-panel {
    border: 1px solid var(--ui-border);
    border-radius: 18px;
    background: var(--ui-surface);
    box-shadow: 0 7px 22px rgb(13 27 42 / 0.06);
}

.ui-field,
.ui-select,
.ui-textarea {
    width: 100%;
    border: 1px solid var(--ui-border-strong);
    border-radius: 10px;
    background: var(--ui-surface);
    color: var(--ui-text);
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
}

.ui-field::placeholder,
.ui-textarea::placeholder { color: var(--ui-text-muted); }
.ui-field:hover, .ui-select:hover, .ui-textarea:hover { border-color: #B8C0CC; }
.ui-field:disabled, .ui-select:disabled, .ui-textarea:disabled { background: var(--ui-surface-muted); color: var(--ui-text-muted); cursor: not-allowed; }

.ui-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 0.875rem; }
.ui-table th { background: var(--ui-surface-soft); color: var(--ui-text-muted); font-size: 0.6875rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.ui-table th, .ui-table td { border-bottom: 1px solid var(--ui-border); padding: .75rem 1rem; text-align: left; }
.ui-table tbody tr { transition: background-color 150ms ease; }
.ui-table tbody tr:hover { background: var(--ui-surface-soft); }

.ui-modal-backdrop { background: rgb(13 27 42 / .42); backdrop-filter: blur(2px); }
.ui-modal { border-radius: 20px; background: var(--ui-surface); box-shadow: 0 28px 80px rgb(13 27 42 / .20); }

[data-toast-region] { position: fixed; right: 1rem; bottom: 1rem; z-index: 80; display: grid; width: min(24rem, calc(100vw - 2rem)); gap: .75rem; }
.ui-toast { border: 1px solid var(--ui-border); border-radius: 14px; background: var(--ui-surface); box-shadow: 0 18px 48px rgb(13 27 42 / .12); padding: .875rem 1rem; }

/* Workspace do assistente de recrutamento. Mantido aqui para que o template
   compartilhe tokens e não carregue mais uma folha de estilos própria. */
.chatbot-workspace,
.chatbot-workspace > *,
#chat-main,
#message-list,
#conversation-list,
#message-form { min-width: 0; max-width: 100%; }

#message-list > *,
#message-list article,
#message-list section,
#message-list div { min-width: 0; max-width: 100%; }

#message-list :is(p, span, a, strong, li, td, th),
#conversation-list :is(button, a) { overflow-wrap: anywhere; word-break: break-word; }

#message-list :is(pre, code) { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; }
#message-list :is(img, video, iframe, svg) { max-width: 100%; height: auto; }
#message-list table { width: 100%; max-width: 100%; table-layout: fixed; }
.chat-suggestion:hover { transform: translateY(-2px); box-shadow: 0 7px 22px rgb(13 27 42 / .06); }

@keyframes chat-loading-slide { from { transform: translateX(-120%); } to { transform: translateX(420%); } }
.chat-loading-bar::after { content: ""; display: block; height: 100%; width: 32%; border-radius: inherit; background: var(--coral-500); animation: chat-loading-slide 1.15s ease-in-out infinite; }

.catalogo-hero-description :is(h1, h2, h3, h4, h5, h6, a) { color: var(--catalogo-texto); }
.catalogo-hero-description blockquote { border-color: var(--catalogo-destaque); background: rgb(255 255 255 / .12); color: var(--catalogo-texto); }
.catalogo-hero-description :is(blockquote p, code) { color: var(--catalogo-texto); }
.catalogo-hero-description code { background: rgb(255 255 255 / .15); }
.catalogo-vaga-card { transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
.catalogo-vaga-card:hover { border-color: var(--catalogo-destaque); box-shadow: 0 7px 22px rgb(13 27 42 / .06); transform: translateY(-2px); }

.auth-card { min-height: min(36rem, calc(100dvh - 8rem)); }
@media (max-width: 1023px) { .auth-card { min-height: 0; } }

/* Estado de análise da entrevista: mantém o feedback ativo sem parecer um
   alerta de erro ou uma tela congelada. */
#processing-overlay { background: rgb(13 27 42 / .46) !important; backdrop-filter: blur(3px); }
#processing-card {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--ui-border) !important;
    border-radius: 20px;
    box-shadow: 0 28px 80px rgb(13 27 42 / .20) !important;
}
#processing-card::after {
    content: "";
    display: block;
    height: 6px;
    margin-top: 1.5rem;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent 0 12%, var(--coral-500) 32%, #ffb1a6 50%, var(--coral-500) 68%, transparent 88%);
    background-size: 210% 100%;
    animation: processing-sweep 1.6s ease-in-out infinite;
}
#processing-card > div:first-child {
    border-radius: 999px;
    background: var(--coral-50);
    box-shadow: 0 0 0 0 rgb(255 111 97 / .24);
    animation: processing-pulse 1.8s ease-out infinite;
}
#processing-spinner { animation: processing-spin 1.15s linear infinite; }
#processing-description::after { content: " Você pode continuar acompanhando a transcrição enquanto isso."; display: block; margin-top: .75rem; color: var(--ui-text-muted); font-size: .75rem; }
@keyframes processing-spin { to { transform: rotate(360deg); } }
@keyframes processing-pulse { 0% { box-shadow: 0 0 0 0 rgb(255 111 97 / .24); } 70% { box-shadow: 0 0 0 12px rgb(255 111 97 / 0); } 100% { box-shadow: 0 0 0 0 rgb(255 111 97 / 0); } }
@keyframes processing-sweep { from { background-position: 130% 0; } to { background-position: -80% 0; } }

/* Tabela de candidaturas do painel: o HTML preserva os hooks de atualização
   existentes, enquanto o acabamento segue os painéis do sistema. */
#dashboard-data-sections > section:last-child {
    overflow: hidden;
    border: 1px solid var(--ui-border) !important;
    border-radius: 18px;
    background: var(--ui-surface) !important;
    box-shadow: 0 1px 2px rgb(13 27 42 / .04);
}

#dashboard-data-sections > section:last-child > header {
    border-color: var(--ui-border) !important;
    padding: 1rem 1.25rem;
}

#dashboard-data-sections > section:last-child > header p {
    color: var(--coral-600) !important;
    letter-spacing: .1em !important;
}

#dashboard-data-sections > section:last-child > header h2 { color: var(--ui-text); }

#dashboard-data-sections > section:last-child > header + div {
    border-color: var(--ui-border) !important;
    background: var(--ui-surface-soft) !important;
    padding: .75rem 1.25rem;
}

#dashboard-table-search {
    height: 2.5rem !important;
    border-color: var(--ui-border-strong) !important;
    border-radius: 10px;
    background: var(--ui-surface) !important;
}

#dashboard-candidates-table thead { background: var(--ui-surface-soft) !important; }
#dashboard-candidates-table th,
#dashboard-candidates-table td { border-color: var(--ui-border) !important; }
#dashboard-candidates-table th { color: var(--ui-text-muted) !important; }
#dashboard-candidates-table tbody tr:hover { background: var(--ui-surface-soft) !important; }
#dashboard-candidates-table td:nth-child(7) span,
#dashboard-candidates-table td:nth-child(8) span {
    border-radius: 999px;
}

#dashboard-pagination {
    border-color: var(--ui-border) !important;
    padding: 1rem 1.25rem !important;
}

#dashboard-pagination > div > * { border-radius: 10px; }

@media (max-width: 767px) {
    #dashboard-candidates-body { background: var(--ui-surface-soft) !important; }
    #dashboard-candidates-table tr { border-color: var(--ui-border) !important; border-radius: 14px; box-shadow: 0 1px 2px rgb(13 27 42 / .04); }
}

/* Barra de filtros do dashboard. Os campos antigos possuíam bordas quadradas
   e datas encaixadas; este bloco os torna controles independentes e coerentes. */
#dashboard-filter-form {
    border-color: var(--ui-border) !important;
    border-radius: 14px;
    box-shadow: 0 1px 2px rgb(13 27 42 / .04);
}

#dashboard-filter-form :is(input, select) {
    border-color: var(--ui-border-strong) !important;
    border-radius: 10px !important;
    background: var(--ui-surface) !important;
    color: var(--ui-text);
}

#dashboard-filter-form :is(input, select):focus {
    border-color: var(--coral-500) !important;
    box-shadow: 0 0 0 3px var(--coral-50);
}

#dashboard-filter-form fieldset > div > span {
    border: 1px solid var(--ui-border) !important;
    border-radius: 10px;
    background: var(--ui-surface-muted) !important;
}

#dashboard-filter-form :is(button, a) { border-radius: 10px; }
#dashboard-filter-form button[type="submit"] { background: var(--coral-500) !important; }
#dashboard-filter-form button[type="submit"]:hover { background: var(--coral-600) !important; }

/* Menus de ação das vagas devem flutuar acima da tabela, não ser recortados
   pelo painel. Em telas pequenas mantém-se o scroll horizontal da tabela. */
@media (min-width: 768px) {
    section.ui-panel:has(table.ui-table) { overflow: visible !important; }
    section.ui-panel:has(table.ui-table) .overflow-x-auto { overflow: visible !important; }
}

.live-transcript-panel {
    max-height: calc(100vh - 2.5rem);
}

.transcript-bubble {
    border: 1px solid var(--brand-border);
    border-left-width: 3px;
    border-radius: 0.65rem;
    background: var(--brand-surface);
    padding: 0.75rem 0.85rem;
    transition: border-color 160ms ease, background-color 160ms ease;
}

.transcript-bubble[data-role="recruiter"] {
    border-left-color: #1671c8;
    background: color-mix(in srgb, #1671c8 4%, var(--brand-surface));
}

.transcript-bubble[data-role="candidate"] {
    border-left-color: var(--brand-secondary);
    background: color-mix(in srgb, var(--brand-secondary) 4%, var(--brand-surface));
}

.transcript-bubble[data-role="mixed"],
.transcript-bubble[data-role="unknown"] {
    border-left-color: var(--brand-muted);
}

.transcript-edit {
    display: grid;
    gap: 0.6rem;
    margin-top: 0.65rem;
    padding-top: 0.65rem;
    border-top: 1px solid var(--brand-border);
}

#interview[data-speaking="true"] #insight-content,
#interview[data-speaking="true"] #analysis-summary {
    display: none !important;
}

@media (max-width: 1099px) {
    .live-transcript-panel {
        position: static !important;
        max-height: none;
    }

    #transcript-scroll {
        max-height: 34rem;
    }
}



/* Configuração da pré-inscrição por vaga */
.pre-config { padding-bottom: 3rem; }
.pre-config-hero { position: relative; overflow: hidden; display: grid; gap: 1.25rem; padding: clamp(1.5rem, 4vw, 2.75rem); border: 1px solid var(--brand-border); border-radius: 1.35rem; background: linear-gradient(120deg, #fff 0%, #fff8f6 100%); box-shadow: 0 12px 32px rgb(16 42 67 / .06); }
.pre-config-hero::after { position: absolute; right: -3.5rem; bottom: -5rem; width: 14rem; height: 14rem; border-radius: 999px; background: rgb(var(--brand-secondary-rgb) / .1); content: ''; }
.pre-config-hero > * { position: relative; z-index: 1; }
.pre-config-hero h1 { margin-top: .55rem; font-size: clamp(1.55rem, 3vw, 2.25rem); font-weight: 750; letter-spacing: -.035em; color: var(--brand-primary); }
.pre-config-hero h1 + p { max-width: 45rem; margin-top: .75rem; color: var(--brand-muted); line-height: 1.65; }
.pre-config-state { display: inline-flex; align-items: center; gap: .7rem; margin-top: 1.35rem; padding: .6rem .8rem; border: 1px solid rgb(var(--brand-secondary-rgb) / .14); border-radius: .75rem; background: rgb(255 255 255 / .7); color: var(--brand-primary); }
.pre-config-state > span { width: .55rem; height: .55rem; border-radius: 999px; background: #f4b740; box-shadow: 0 0 0 4px rgb(244 183 64 / .14); }.pre-config-state > span.is-active { background: #22a567; box-shadow: 0 0 0 4px rgb(34 165 103 / .14); }
.pre-config-state strong, .pre-config-state small { display: block; }.pre-config-state strong { font-size: .78rem; }.pre-config-state small { margin-top: .1rem; color: var(--brand-muted); font-size: .69rem; }
.pre-config-open { display: inline-flex; align-items: center; gap: .55rem; width: fit-content; margin-top: 1rem; padding: .7rem .9rem; border-radius: .65rem; background: var(--brand-primary); color: var(--brand-on-primary); font-size: .8rem; font-weight: 750; box-shadow: 0 7px 16px rgb(16 42 67 / .16); transition: transform .18s ease, background .18s ease; }.pre-config-open:hover { transform: translateY(-1px); background: var(--brand-secondary); color: #fff; }
.pre-config-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; padding: .6rem; border: 1px solid var(--brand-border); border-radius: 1rem; background: var(--brand-surface); }
.pre-config-nav a { display: flex; align-items: center; gap: .55rem; padding: .75rem .9rem; border-radius: .7rem; color: var(--brand-muted); font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.pre-config-nav a:hover { background: #fff3f0; color: var(--brand-secondary); }.pre-config-nav span { font-size: .82rem; letter-spacing: normal; }
.pre-config-editor, .pre-config-questions { display: grid; gap: 1rem; padding: clamp(1rem, 3vw, 1.65rem); border: 1px solid var(--brand-border); border-radius: 1.25rem; background: var(--brand-surface); box-shadow: 0 10px 28px rgb(16 42 67 / .04); }
.interview-question-position { --queue-accent: #2f72bc; --queue-surface: #eef6ff; --queue-border: #9ec4ea; --queue-text: #245f9e; border: 1px solid var(--queue-border); background: var(--queue-surface); color: var(--queue-text); padding: .2rem .5rem; border-radius: 999px; font-size: .625rem; font-weight: 800; letter-spacing: .08em; line-height: 1.1; text-transform: uppercase; transition: background-color .28s ease, border-color .28s ease, color .28s ease, transform .28s ease; }
#question { border-left: 4px solid var(--queue-accent, #2f72bc); padding-left: .85rem; transition: border-color .28s ease; }
.interview-queue-question { border-color: var(--queue-border); background: var(--queue-surface); color: var(--queue-text); transition: background-color .28s ease, border-color .28s ease, color .28s ease; }
.interview-queue-question .interview-question-position { padding: 0; border: 0; background: var(--queue-accent); color: #fff; letter-spacing: 0; }
.interview-queue-question .interview-question-position + span > span:first-child { color: var(--queue-text); }
.interview-question-position-1 { --queue-accent: #2f72bc; --queue-surface: #eef6ff; --queue-border: #9ec4ea; --queue-text: #245f9e; }
.interview-question-position-2 { --queue-accent: #e85c50; --queue-surface: #fff1ef; --queue-border: #ffc2bc; --queue-text: #bd3e34; }
.interview-question-position-3 { --queue-accent: #ad7615; --queue-surface: #fff8e8; --queue-border: #efd28e; --queue-text: #8a5a08; }
.interview-question-position-4 { --queue-accent: #6d56a5; --queue-surface: #f5f1ff; --queue-border: #cfbfea; --queue-text: #58428d; }
.interview-question-position-5 { --queue-accent: #177b70; --queue-surface: #edfbf8; --queue-border: #a7ddd6; --queue-text: #126258; }
.interview-question-position-6 { --queue-accent: #7a5b42; --queue-surface: #faf4ee; --queue-border: #ddc6b2; --queue-text: #624832; }
@keyframes interview-queue-advance { 0% { box-shadow: 0 0 0 0 rgb(47 114 188 / .3); } 65% { box-shadow: 0 0 0 10px rgb(47 114 188 / 0); } 100% { box-shadow: 0 0 0 0 rgb(47 114 188 / 0); } }
.interview-queue-advanced { animation: interview-queue-advance .7s ease-out; }
@media (prefers-reduced-motion: reduce) { .interview-question-position, .interview-queue-question { transition: none; } .interview-queue-advanced { animation: none; } }
.pre-config-editor > details, .pre-config-questions > div > details { overflow: hidden; border: 1px solid var(--brand-border) !important; border-radius: .95rem; background: #fff !important; transition: border-color .2s ease, box-shadow .2s ease; }
.pre-config-editor > details[open], .pre-config-questions > div > details[open] { border-color: rgb(var(--brand-secondary-rgb) / .35) !important; box-shadow: 0 8px 22px rgb(16 42 67 / .055); }
.pre-config-editor > details > summary, .pre-config-questions > div > details > summary { padding: 1.05rem 1.15rem; list-style: none; }
.pre-config-editor > details > summary::-webkit-details-marker, .pre-config-questions > div > details > summary::-webkit-details-marker { display: none; }
.pre-config-editor > details > summary::after, .pre-config-questions > div > details > summary::after { float: right; content: '+'; font-size: 1.2rem; font-weight: 400; color: var(--brand-secondary); }
.pre-config-editor > details[open] > summary::after, .pre-config-questions > div > details[open] > summary::after { content: '–'; }
.pre-config-editor > details > [data-settings-section] { padding: 0 1.15rem 1.2rem; }
.pre-config-editor label:has(input[type='checkbox']) { border-radius: .75rem; }
.pre-config-editor input:not([type='checkbox']):not([type='radio']):not([type='color']), .pre-config-editor textarea, .pre-config-editor select, .pre-config-questions input:not([type='checkbox']):not([type='radio']), .pre-config-questions textarea { border-radius: .65rem; }
.pre-config-editor button, .pre-config-questions button { border-radius: .6rem; transition: transform .18s ease, box-shadow .18s ease; }
.pre-config-editor button:hover, .pre-config-questions button:hover { transform: translateY(-1px); }
.pre-config-questions > div:first-child { padding-bottom: .35rem; border-bottom: 1px solid var(--brand-border); }.pre-config-questions > form { border-radius: .9rem; }
@media (min-width: 760px) { .pre-config-hero { grid-template-columns: 1fr auto; align-items: end; }.pre-config-open { position: absolute; top: 1.5rem; right: 1.5rem; margin-top: 0; }.pre-config-nav { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* Modal de edição de vaga */
.vacancy-edit-dialog { max-height: min(90dvh, 54rem); overflow-y: auto; border-radius: .85rem; box-shadow: 0 24px 70px rgb(13 27 42 / .2); }
.vacancy-edit-form { max-height: none; }
.vacancy-edit-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.25rem 1.5rem; border-bottom: 1px solid var(--brand-border); background: #fff; color: var(--brand-primary); }
.vacancy-edit-header p { color: var(--brand-secondary); font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.vacancy-edit-header h2 { margin-top: .35rem; font-size: 1.2rem; font-weight: 720; letter-spacing: -.02em; }
.vacancy-edit-close { display: grid; flex: 0 0 auto; width: 2rem; height: 2rem; place-items: center; border: 1px solid var(--brand-border); border-radius: .45rem; color: var(--brand-muted); font-size: 1.2rem; line-height: 1; transition: background .18s ease, color .18s ease; }.vacancy-edit-close:hover { background: var(--brand-background); color: var(--brand-primary); }
.vacancy-edit-content { overflow: visible; padding: 1.3rem 1.5rem 1.5rem; }
.vacancy-edit-actions { padding: 1rem 1.65rem; }.vacancy-edit-actions button { border-radius: .65rem; }
.vacancy-edit-content > .grid { gap: .45rem; }.vacancy-edit-content > .grid > label { margin-top: .4rem; }
.vacancy-edit-dialog [data-markdown-editor] { border-radius: .65rem; box-shadow: inset 0 1px 0 rgb(16 42 67 / .025); }
.vacancy-edit-dialog [data-markdown-editor] > div:first-child { display: grid; gap: .55rem; padding: .6rem .7rem; background: #f8fafc; }
.vacancy-edit-dialog [data-markdown-editor] > div:first-child > div { flex-wrap: wrap; }.vacancy-edit-dialog [data-markdown-editor] > div:first-child button { flex: 0 0 auto; border-radius: .38rem; }
.vacancy-edit-dialog [data-markdown-editor] textarea { min-height: 13rem; padding: 1rem; font-size: .82rem; line-height: 1.65; }
.vacancy-edit-dialog [data-markdown-preview] { min-height: 13rem; color: var(--brand-primary) !important; }.vacancy-edit-dialog [data-markdown-preview] > :first-child { margin-top: 0; }.vacancy-edit-dialog [data-markdown-preview] p { margin: .75rem 0; }.vacancy-edit-dialog [data-markdown-preview] h1, .vacancy-edit-dialog [data-markdown-preview] h2, .vacancy-edit-dialog [data-markdown-preview] h3 { margin: 1rem 0 .55rem; color: var(--brand-primary); font-weight: 700; }.vacancy-edit-dialog [data-markdown-preview] li { margin: .25rem 0; }
.vacancy-edit-dialog [data-markdown-editor] textarea::-webkit-scrollbar { width: .45rem; }.vacancy-edit-dialog [data-markdown-editor] textarea::-webkit-scrollbar-thumb { border-radius: 99px; background: #cbd5e1; }
.instagram-post-action { width: 100%; padding: .5rem .75rem; border-radius: .5rem; color: var(--ui-text-soft); font-size: .875rem; text-align: left; }.instagram-post-action:hover { background: var(--ui-surface-muted); color: var(--ui-text); }.instagram-post-dialog { width: min(94vw, 34rem); max-height: min(90dvh, 50rem); padding: 0; overflow-y: auto; border: 1px solid var(--ui-border); border-radius: 1rem; background: #fff; color: var(--ui-text); box-shadow: 0 24px 70px rgb(13 27 42 / .2); }.instagram-post-dialog::backdrop { background: rgb(13 27 42 / .55); }.instagram-post-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.25rem 1.35rem; border-bottom: 1px solid var(--ui-border); }.instagram-post-header p { margin: 0; color: var(--coral-600); font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.instagram-post-header h2 { margin: .3rem 0 0; color: var(--ui-text); font-size: 1.15rem; font-weight: 700; }.instagram-post-header button { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .5rem; color: var(--ui-text-soft); font-size: 1.5rem; line-height: 1; }.instagram-post-header button:hover { background: var(--ui-surface-muted); }.instagram-post-body { display: grid; gap: 1rem; padding: 1.25rem 1.35rem; }.instagram-post-intro, .instagram-post-help { margin: 0; color: var(--ui-text-muted); font-size: .8rem; line-height: 1.45; }.instagram-post-colors { display: grid; grid-template-columns: repeat(4, 1fr); gap: .6rem; }.instagram-post-colors label { display: grid; gap: .35rem; color: var(--ui-text-soft); font-size: .72rem; font-weight: 650; }.instagram-post-colors input { width: 100%; height: 2.5rem; padding: .2rem; border: 1px solid var(--ui-border); border-radius: .5rem; background: #fff; cursor: pointer; }.instagram-post-field { display: grid; gap: .45rem; color: var(--ui-text); font-size: .82rem; font-weight: 650; }.instagram-post-field span { color: var(--ui-text-muted); font-weight: 500; }.instagram-post-field input[type=file] { min-height: auto; padding: .4rem; font-size: .78rem; }.instagram-post-options { display: grid; gap: .55rem; padding-top: .1rem; color: var(--ui-text-soft); font-size: .82rem; }.instagram-post-options label { cursor: pointer; }.instagram-post-options p { margin: 0; color: var(--ui-text-muted); font-size: .78rem; }.instagram-post-error { margin: 0; padding: .75rem; border-radius: .55rem; background: var(--danger-soft); color: var(--danger); font-size: .82rem; }.instagram-post-result { display: grid; justify-items: center; gap: .75rem; padding: .9rem; border: 1px solid var(--ui-border); border-radius: .75rem; background: var(--ui-surface-muted); }.instagram-post-result img { display: block; width: min(100%, 18rem); border-radius: .45rem; box-shadow: 0 8px 20px rgb(13 27 42 / .12); }.instagram-post-result a { color: var(--coral-600); font-size: .84rem; font-weight: 700; text-decoration: underline; }.instagram-post-actions { display: flex; justify-content: flex-end; gap: .75rem; padding: 1rem 1.35rem; border-top: 1px solid var(--ui-border); }.instagram-post-actions button { min-height: 2.6rem; padding: .65rem 1rem; border-radius: .55rem; font-size: .84rem; font-weight: 700; }.instagram-post-actions button:first-child { border: 1px solid var(--ui-border-strong); color: var(--ui-text); }.instagram-post-actions button:last-child { background: var(--coral-500); color: #fff; }.instagram-post-actions button:last-child:hover { background: var(--coral-600); }.instagram-post-actions button:disabled { cursor: wait; opacity: .65; }
.vacancy-edit-content > div:has(select) { margin-top: .4rem; padding-top: 1.15rem; border-top: 1px solid var(--brand-border); }
@media (max-width: 600px) { .vacancy-edit-header, .vacancy-edit-content, .vacancy-edit-actions { padding-right: 1rem; padding-left: 1rem; }.vacancy-edit-section-label { display: grid; gap: .25rem; } }

/* Modais complementares da área de vagas */
.vacancy-modal { border-radius: .85rem; box-shadow: 0 24px 70px rgb(13 27 42 / .2); }
.vacancy-modal-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.25rem 1.5rem; border-bottom: 1px solid var(--brand-border); background: #fff; color: var(--brand-primary); }.vacancy-modal-header p { color: var(--brand-secondary); font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.vacancy-modal-header h2 { margin-top: .35rem; font-size: 1.2rem; font-weight: 720; }
.vacancy-modal-content { padding: 1.3rem 1.5rem 1.5rem; }.vacancy-modal-actions { padding: 1rem 1.5rem; }.vacancy-modal-actions > * { border-radius: .65rem; }
.vacancy-modal:not(.vacancy-create-dialog) form > div:first-child,
.vacancy-modal:not(.vacancy-create-dialog) > div > div:first-child { padding: 1.2rem 1.4rem !important; border-bottom: 1px solid var(--brand-border) !important; background: #fff !important; color: var(--brand-primary) !important; }
.vacancy-modal:not(.vacancy-create-dialog) form > div:first-child p,
.vacancy-modal:not(.vacancy-create-dialog) > div > div:first-child p { color: var(--brand-secondary) !important; font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.vacancy-modal:not(.vacancy-create-dialog) form > div:first-child h2,
.vacancy-modal:not(.vacancy-create-dialog) > div > div:first-child h2 { margin-top: .35rem !important; color: var(--brand-primary) !important; font-size: 1.2rem !important; font-weight: 720 !important; }
.vacancy-confirm-dialog form > div:nth-child(2) { padding: 1.35rem 1.4rem !important; }.vacancy-confirm-dialog form > div:nth-child(2) p { max-width: 28rem; }.vacancy-modal:not(.vacancy-create-dialog) > div > div:nth-child(2) { padding: 1.35rem 1.4rem !important; }
.vacancy-modal:not(.vacancy-create-dialog) form > div:last-child,
.vacancy-modal:not(.vacancy-create-dialog) > div > div:last-child { padding: 1rem 1.4rem !important; }.vacancy-modal:not(.vacancy-create-dialog) form > div:last-child > *, .vacancy-modal:not(.vacancy-create-dialog) > div > div:last-child > * { border-radius: .65rem; }

/* Landing pública */
.landing-page { background: #fbfcfe; }.landing-wrap { width: min(100% - 2.5rem, 72rem); margin: 0 auto; }.landing-hero { position: relative; overflow: hidden; padding: clamp(4.5rem, 10vw, 8rem) 0 5.5rem; background: radial-gradient(circle at 72% 36%, #ffe8e3 0, transparent 25rem), linear-gradient(180deg, #fff 0%, #fbfcfe 100%); }.landing-hero::after { position: absolute; top: 4rem; left: 51%; width: 26rem; height: 26rem; border: 1px solid rgb(255 111 97 / .16); border-radius: 999px; content: ''; }.landing-hero-grid { position: relative; z-index: 1; display: grid; gap: 3.5rem; align-items: center; }.landing-eyebrow { display: flex; align-items: center; gap: .55rem; color: var(--coral-600); font-size: .7rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }.landing-eyebrow span { width: 1.4rem; height: 1px; background: currentColor; }.landing-hero h1 { max-width: 41rem; margin-top: 1.35rem; color: var(--ui-text); font-size: clamp(2.65rem, 6vw, 5rem); font-weight: 760; letter-spacing: -.065em; line-height: 1.01; }.landing-hero h1 em { color: var(--coral-500); font-style: normal; }.landing-lead { max-width: 34rem; margin-top: 1.5rem; color: var(--ui-text-soft); font-size: 1.05rem; line-height: 1.75; }.landing-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }.landing-button { display: inline-flex; min-height: 3rem; align-items: center; justify-content: center; gap: .55rem; padding: .75rem 1.1rem; border-radius: .65rem; font-size: .88rem; font-weight: 750; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }.landing-button:hover { transform: translateY(-2px); }.landing-button svg { width: 1rem; height: 1rem; }.landing-button-primary { background: var(--coral-500); color: #fff; box-shadow: 0 10px 24px rgb(255 111 97 / .25); }.landing-button-primary:hover { background: var(--coral-600); }.landing-button-secondary { border: 1px solid var(--ui-border-strong); background: #fff; color: var(--ui-text); }.landing-trust { display: flex; flex-wrap: wrap; gap: .8rem 1.2rem; margin-top: 1.65rem; color: var(--ui-text-muted); font-size: .75rem; }.landing-trust span { display: inline-flex; align-items: center; gap: .35rem; }.landing-trust svg { width: .9rem; color: var(--success); }
.landing-product { position: relative; border: 1px solid #dce2e8; border-radius: 1.1rem; background: #fff; box-shadow: 0 30px 70px rgb(13 27 42 / .16); transform: perspective(1000px) rotateY(-5deg) rotateX(2deg); }.landing-window-bar { display: flex; align-items: center; gap: .35rem; height: 2.4rem; padding: 0 .9rem; border-bottom: 1px solid var(--ui-border); background: #fbfcfd; border-radius: 1.1rem 1.1rem 0 0; }.landing-window-bar span { width: .5rem; height: .5rem; border-radius: 999px; background: #e7a8a1; }.landing-window-bar span:nth-child(2) { background: #f4ce7a; }.landing-window-bar span:nth-child(3) { background: #9bd6b6; }.landing-window-bar small { margin-left: .5rem; color: #98a2b3; font-size: .62rem; }.landing-dashboard { display: grid; grid-template-columns: 8.3rem 1fr; min-height: 25rem; }.landing-dashboard aside { display: grid; align-content: start; gap: .85rem; padding: 1rem .7rem; border-right: 1px solid var(--ui-border); background: #fbfcfe; color: #667085; font-size: .65rem; }.landing-mini-logo { margin-bottom: .75rem; color: #12233a; font-size: 1.15rem; font-weight: 850; }.landing-mini-logo span { color: var(--coral-500); }.landing-dashboard aside b { margin-bottom: .25rem; color: #1d2939; font-size: .62rem; }.landing-dashboard aside span { display: flex; align-items: center; gap: .45rem; padding: .45rem; border-radius: .4rem; }.landing-dashboard aside span.active { background: #fff0ed; color: var(--coral-600); font-weight: 700; }.landing-dashboard aside svg { width: .82rem; }.landing-dashboard-main { padding: 1.1rem; }.landing-dashboard-top { display: flex; justify-content: space-between; align-items: center; }.landing-dashboard-top small, .landing-dashboard-top strong { display: block; }.landing-dashboard-top small { color: #98a2b3; font-size: .6rem; }.landing-dashboard-top strong { margin-top: .2rem; color: #1d2939; font-size: .83rem; }.landing-avatar, .landing-person { display: grid; place-items: center; border-radius: 999px; background: #ffe8e5; color: var(--coral-600); font-size: .6rem; font-weight: 800; }.landing-avatar { width: 1.8rem; height: 1.8rem; }.landing-stat-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; margin-top: 1.2rem; }.landing-stat-row > div { padding: .65rem; border: 1px solid #edf0f3; border-radius: .55rem; }.landing-stat-row svg { width: .8rem; color: var(--coral-500); }.landing-stat-row b, .landing-stat-row small { display: block; }.landing-stat-row b { margin-top: .4rem; color: #1d2939; font-size: 1rem; }.landing-stat-row small { color: #98a2b3; font-size: .52rem; }.landing-list-title { display: flex; justify-content: space-between; margin: 1.2rem 0 .55rem; color: #1d2939; font-size: .68rem; }.landing-list-title span { color: var(--coral-600); }.landing-candidate { display: grid; grid-template-columns: auto 1fr auto; gap: .55rem; align-items: center; padding: .55rem 0; border-top: 1px solid #f0f2f4; }.landing-person { width: 1.7rem; height: 1.7rem; }.landing-person.blue { background: #e6f2ff; color: #2975c6; }.landing-candidate b, .landing-candidate small { display: block; }.landing-candidate b { color: #344054; font-size: .63rem; }.landing-candidate small { margin-top: .1rem; color: #98a2b3; font-size: .55rem; }.landing-candidate em { padding: .22rem .35rem; border-radius: 999px; background: #eafff1; color: #228455; font-size: .52rem; font-style: normal; }.landing-candidate em.blue-tag { background: #e9f3ff; color: #2975c6; }.landing-float-card { position: absolute; right: -1.25rem; bottom: 2rem; display: flex; align-items: center; gap: .55rem; padding: .7rem .8rem; border: 1px solid #e8ebef; border-radius: .75rem; background: #fff; box-shadow: 0 12px 28px rgb(13 27 42 / .14); }.landing-float-card > svg { width: 1rem; color: var(--coral-500); }.landing-float-card small, .landing-float-card b { display: block; }.landing-float-card small { color: #98a2b3; font-size: .55rem; }.landing-float-card b { color: #344054; font-size: .65rem; }.landing-float-card > span { margin-left: .7rem; color: #24a467; font-size: .9rem; }
.landing-logo-strip { border-top: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; background: #fff; }.landing-logo-strip > div { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; min-height: 5.2rem; color: #98a2b3; font-size: .68rem; letter-spacing: .13em; }.landing-logo-strip > div > div { width: 2.5rem; height: 1px; background: #d9dee5; }.landing-logo-strip p { color: #667085; font-size: .8rem; letter-spacing: normal; }.landing-section { padding: clamp(4.5rem, 9vw, 7rem) 0; }.landing-section-heading { display: grid; max-width: 44rem; gap: 1rem; }.landing-section-heading h2, .landing-workflow h2, .landing-cta h2 { color: var(--ui-text); font-size: clamp(2rem, 4vw, 3.15rem); font-weight: 750; letter-spacing: -.05em; line-height: 1.08; }.landing-section-heading > p:last-child, .landing-workflow-copy > p:not(.landing-eyebrow), .landing-cta p:not(.landing-eyebrow) { color: var(--ui-text-soft); line-height: 1.7; }.landing-feature-grid { display: grid; gap: 1rem; margin-top: 2.8rem; }.landing-feature { padding: 1.5rem; border: 1px solid var(--ui-border); border-radius: .95rem; background: #fff; transition: transform .2s ease, box-shadow .2s ease; }.landing-feature:hover { transform: translateY(-5px); box-shadow: 0 16px 32px rgb(13 27 42 / .08); }.landing-icon { display: grid; width: 2.65rem; height: 2.65rem; place-items: center; border-radius: .7rem; }.landing-icon svg { width: 1.2rem; }.landing-icon.coral { background: #fff0ed; color: var(--coral-600); }.landing-icon.blue { background: #e9f3ff; color: #2975c6; }.landing-icon.violet { background: #f1edff; color: #7057c8; }.landing-feature h3 { margin-top: 1.25rem; color: var(--ui-text); font-size: 1.1rem; }.landing-feature p { margin-top: .65rem; color: var(--ui-text-muted); font-size: .88rem; line-height: 1.65; }.landing-feature a { display: inline-flex; align-items: center; gap: .3rem; margin-top: 1.1rem; color: var(--coral-600); font-size: .8rem; font-weight: 750; }.landing-feature a svg { width: .9rem; }
.landing-workflow { padding: clamp(4.5rem, 9vw, 7rem) 0; background: #0d1b2a; }.landing-workflow h2 { color: #fff; }.landing-workflow-copy > p:not(.landing-eyebrow) { margin-top: 1.25rem; color: #aab7c5; }.landing-button-dark { margin-top: 1.7rem; background: #fff; color: #0d1b2a; }.landing-steps { display: grid; gap: .85rem; }.landing-steps li { display: grid; grid-template-columns: 2.6rem 1fr; gap: 1rem; padding: 1rem; border: 1px solid rgb(255 255 255 / .12); border-radius: .8rem; background: rgb(255 255 255 / .04); }.landing-steps span { color: #ff978b; font-size: .75rem; font-weight: 800; }.landing-steps h3 { color: #fff; font-size: 1rem; }.landing-steps p { margin-top: .35rem; color: #aab7c5; font-size: .82rem; line-height: 1.55; }.landing-cta { padding: 5rem 0; }.landing-cta-card { display: grid; gap: 2rem; padding: clamp(1.75rem, 5vw, 3.5rem); border-radius: 1.25rem; background: linear-gradient(130deg, #fff1ee 0%, #fff 65%); }.landing-cta p:not(.landing-eyebrow) { max-width: 38rem; margin-top: 1rem; }.landing-button-ghost { border: 1px solid var(--ui-border-strong); background: #fff; color: var(--ui-text); }.landing-reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.75,.25,1); }.landing-reveal.is-visible { opacity: 1; transform: none; }.landing-hero .landing-reveal { animation: landing-enter .7s both; }.landing-hero .landing-product { animation-delay: .16s; }@keyframes landing-enter { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@media (min-width: 760px) { .landing-hero-grid, .landing-workflow-grid, .landing-cta-card { grid-template-columns: 1fr 1fr; }.landing-feature-grid { grid-template-columns: repeat(3, 1fr); }.landing-workflow-grid { display: grid; gap: 6rem; align-items: center; }.landing-cta-card { align-items: center; }.landing-cta-card .landing-actions { justify-content: flex-end; } }.landing-product { max-width: 34rem; justify-self: end; }@media (max-width: 759px) { .landing-wrap { width: min(100% - 2rem, 72rem); }.landing-hero { padding-top: 3.5rem; }.landing-product { width: calc(100% - .7rem); margin: 0 auto; transform: none; }.landing-dashboard { grid-template-columns: 6.4rem 1fr; }.landing-dashboard aside { padding: .75rem .45rem; }.landing-dashboard aside span { font-size: .55rem; }.landing-float-card { right: -.5rem; bottom: -1.2rem; }.landing-logo-strip { margin-top: 2rem; }.landing-cta-card .landing-actions { margin-top: 0; } }

/* Landing v2: apresentação B2B mais sóbria */
.landing-page-v2 { background: #f8f9fb; color: #12233a; }.lp2-wrap { width: min(100% - 2.5rem, 71rem); margin: 0 auto; }.lp2-hero { padding: clamp(4rem, 9vw, 7rem) 0 5rem; background: #fff; }.lp2-hero-grid { display: grid; gap: 3.5rem; align-items: center; }.lp2-kicker { color: #e85c50; font-size: .7rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }.lp2-copy h1 { max-width: 38rem; margin-top: 1.1rem; color: #102238; font-size: clamp(2.65rem, 5.7vw, 4.7rem); font-weight: 730; letter-spacing: -.065em; line-height: 1.03; }.lp2-copy h1 em { color: #e85c50; font-style: normal; }.lp2-copy > p:not(.lp2-kicker) { max-width: 33rem; margin-top: 1.35rem; color: #526174; font-size: 1.04rem; line-height: 1.72; }.lp2-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem; margin-top: 1.85rem; }.lp2-primary { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 3rem; padding: .75rem 1.05rem; border-radius: .45rem; background: #102238; color: #fff; font-size: .86rem; font-weight: 750; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }.lp2-primary:hover { transform: translateY(-2px); background: #e85c50; box-shadow: 0 11px 20px rgb(232 92 80 / .2); }.lp2-primary svg, .lp2-outline svg { width: 1rem; }.lp2-link { display: inline-flex; align-items: center; gap: .45rem; color: #344a62; font-size: .84rem; font-weight: 700; }.lp2-link svg { width: .95rem; }.lp2-points { display: flex; flex-wrap: wrap; gap: .7rem 1.1rem; margin-top: 1.7rem; color: #6b7788; font-size: .75rem; }.lp2-points span { display: flex; align-items: center; gap: .35rem; }.lp2-points svg { width: .9rem; color: #25966c; }
.lp2-product { position: relative; max-width: 34rem; justify-self: end; overflow: visible; border: 1px solid #dbe2e9; border-radius: .7rem; background: #fff; box-shadow: 0 26px 55px rgb(16 34 56 / .14); }.lp2-product-header { display: flex; align-items: center; gap: .8rem; height: 3rem; padding: 0 1rem; border-bottom: 1px solid #e6eaf0; color: #718096; font-size: .68rem; }.lp2-product-header svg { width: 1rem; margin-left: auto; }.lp2-product-brand { color: #12233a; font-size: .75rem; font-weight: 850; }.lp2-product-brand b { color: #e85c50; }.lp2-product-body { padding: 1.2rem; }.lp2-product-title { display: flex; justify-content: space-between; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #e8edf2; }.lp2-product-title small, .lp2-product-columns > div > small { display: block; color: #8491a1; font-size: .56rem; font-weight: 800; letter-spacing: .11em; }.lp2-product-title strong { display: block; margin-top: .35rem; color: #182b41; font-size: .9rem; }.lp2-status { align-self: center; padding: .3rem .45rem; border-radius: 999px; background: #ecf8f2; color: #22845e; font-size: .58rem; font-weight: 750; }.lp2-product-columns { display: grid; grid-template-columns: .78fr 1.22fr; gap: 1.1rem; margin-top: 1rem; }.lp2-stage { display: grid; grid-template-columns: 1.2rem 1fr auto; gap: .3rem; align-items: center; margin-top: .45rem; padding: .44rem .2rem; color: #718096; font-size: .62rem; }.lp2-stage span { display: grid; width: 1.05rem; height: 1.05rem; place-items: center; border-radius: 999px; background: #edf1f5; color: #728196; font-size: .52rem; }.lp2-stage b { color: #5d6b7b; font-size: .6rem; }.lp2-stage.active { color: #e85c50; font-weight: 700; }.lp2-stage.active span { background: #fff0ed; color: #e85c50; }.lp2-product-columns article { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .45rem; margin-top: .45rem; padding: .38rem 0; border-bottom: 1px solid #f0f3f6; }.lp2-product-columns article svg { width: .8rem; color: #9aa7b5; }.lp2-avatar { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; border-radius: 999px; background: #ffe9e5; color: #e85c50; font-size: .55rem; font-weight: 800; }.lp2-avatar.soft { background: #f6eadf; color: #a66b30; }.lp2-avatar.blue { background: #e8f2ff; color: #2c75bb; }.lp2-product-columns article b, .lp2-product-columns article small { display: block; }.lp2-product-columns article b { color: #34465a; font-size: .62rem; }.lp2-product-columns article small { margin-top: .08rem; color: #95a0ad; font-size: .53rem; }.lp2-insight { position: absolute; right: -1.25rem; bottom: 1.2rem; display: flex; gap: .55rem; align-items: center; width: 13.5rem; padding: .68rem; border: 1px solid #e0e6ed; border-radius: .55rem; background: #fff; box-shadow: 0 11px 24px rgb(16 34 56 / .14); }.lp2-insight > svg { width: 1rem; color: #e85c50; }.lp2-insight small, .lp2-insight strong { display: block; }.lp2-insight small { color: #8794a3; font-size: .54rem; }.lp2-insight strong { margin-top: .13rem; color: #3c4e61; font-size: .6rem; line-height: 1.35; }
.lp2-intro { padding: 5.5rem 0 3.2rem; background: #f8f9fb; }.lp2-intro-grid { display: grid; gap: 1.5rem; align-items: end; margin-top: 1.15rem; }.lp2-intro h2, .lp2-process h2, .lp2-final h2 { color: #12233a; font-size: clamp(2rem, 4.2vw, 3.25rem); font-weight: 730; letter-spacing: -.052em; line-height: 1.08; }.lp2-intro-grid > p, .lp2-process-copy > p:not(.lp2-kicker) { max-width: 32rem; color: #59687a; line-height: 1.7; }.lp2-features { padding: 1rem 0 5.5rem; background: #f8f9fb; }.lp2-feature-grid { display: grid; gap: 1rem; }.lp2-feature { position: relative; padding: 1.45rem; border-top: 2px solid #dce3ea; background: #fff; }.lp2-feature > span { color: #a3afbb; font-size: .68rem; font-weight: 800; }.lp2-feature > svg { position: absolute; top: 1.4rem; right: 1.4rem; width: 1.25rem; color: #e85c50; }.lp2-feature h3 { margin-top: 2.6rem; color: #172b42; font-size: 1.08rem; }.lp2-feature p { margin-top: .6rem; color: #667587; font-size: .86rem; line-height: 1.65; }.lp2-process { padding: 5.5rem 0; background: #102238; }.lp2-process h2 { color: #fff; }.lp2-process-copy > p:not(.lp2-kicker) { margin-top: 1.1rem; color: #adbac6; }.lp2-outline { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1.6rem; padding-bottom: .35rem; border-bottom: 1px solid #ff9489; color: #fff; font-size: .84rem; font-weight: 700; }.lp2-timeline { display: grid; gap: .8rem; }.lp2-timeline > div { display: grid; grid-template-columns: 2.5rem 1fr; column-gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgb(255 255 255 / .13); }.lp2-timeline span { grid-row: span 2; color: #ff9589; font-size: .76rem; font-weight: 800; }.lp2-timeline b { color: #fff; font-size: .95rem; }.lp2-timeline p { margin-top: .3rem; color: #adb9c5; font-size: .82rem; line-height: 1.55; }.lp2-final { padding: 5rem 0; background: #fff; }.lp2-final-card { display: grid; gap: 1.5rem; align-items: center; padding: clamp(1.7rem, 5vw, 3.2rem); border: 1px solid #e1e6eb; border-radius: .7rem; background: #fffaf9; }.lp2-final h2 { max-width: 43rem; margin-top: .7rem; }.lp2-reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }.lp2-reveal.visible { opacity: 1; transform: none; }.lp2-hero .lp2-reveal { animation: lp2-enter .7s both; }.lp2-hero .lp2-product { animation-delay: .15s; }@keyframes lp2-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@media (min-width: 760px) { .lp2-hero-grid { grid-template-columns: 1fr .9fr; }.lp2-intro-grid { grid-template-columns: 1.2fr .8fr; }.lp2-feature-grid { grid-template-columns: repeat(3, 1fr); }.lp2-process-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 6rem; align-items: center; }.lp2-final-card { grid-template-columns: 1fr auto; }.lp2-product { justify-self: end; } }.lp2-product { max-width: 31rem; }@media (max-width: 759px) { .lp2-wrap { width: min(100% - 2rem, 71rem); }.lp2-hero { padding: 3.5rem 0 4.5rem; }.lp2-product { margin: 0 auto; }.lp2-insight { right: -.45rem; bottom: -1rem; }.lp2-product-columns { gap: .65rem; }.lp2-final .lp2-primary { width: fit-content; }.lp2-copy h1 { font-size: clamp(2.4rem, 12vw, 3.6rem); } }

/* Landing SaaS */
.saas-page { background: #fff; color: #13243a; }.saas-wrap { width: min(100% - 2.5rem, 72rem); margin: 0 auto; }.saas-hero { position: relative; overflow: hidden; padding: clamp(4rem, 9vw, 7rem) 0 5.5rem; background: radial-gradient(circle at 75% 40%, #fff0ed 0, transparent 25rem), #fff; }.saas-hero::after { position: absolute; right: -9rem; top: 5rem; width: 31rem; height: 31rem; border: 1px solid #ffe0db; border-radius: 999px; content: ''; }.saas-hero-grid { position: relative; z-index: 1; display: grid; gap: 3.5rem; align-items: center; }.saas-overline { display: flex; align-items: center; gap: .45rem; color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.saas-overline svg { width: .9rem; }.saas-hero-copy h1 { max-width: 41rem; margin-top: 1.1rem; color: #11233a; font-size: clamp(2.7rem, 6vw, 4.9rem); font-weight: 760; letter-spacing: -.065em; line-height: 1; }.saas-hero-copy h1 em { color: #e85c50; font-style: normal; }.saas-lead { max-width: 34rem; margin-top: 1.45rem; color: #596a7c; font-size: 1.04rem; line-height: 1.75; }.saas-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .9rem; margin-top: 1.9rem; }.saas-button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; padding: .75rem 1.1rem; border-radius: .55rem; font-size: .86rem; font-weight: 750; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }.saas-button:hover { transform: translateY(-2px); }.saas-button svg { width: 1rem; }.saas-button-primary { background: #ff6f61; color: #fff; box-shadow: 0 10px 22px rgb(255 111 97 / .25); }.saas-button-primary:hover { background: #e85c50; }.saas-button-plain { color: #364b61; }.saas-button-plain:hover { color: #e85c50; }.saas-proof { display: flex; flex-wrap: wrap; gap: .7rem 1.1rem; margin-top: 1.6rem; color: #748294; font-size: .75rem; }.saas-proof span { display: flex; align-items: center; gap: .3rem; }.saas-proof svg { width: .85rem; color: #1c9a69; }
.saas-dashboard { position: relative; max-width: 34rem; justify-self: end; overflow: visible; border: 1px solid #dce4ec; border-radius: .8rem; background: #fff; box-shadow: 0 30px 65px rgb(17 35 58 / .16); }.saas-browser { display: flex; align-items: center; gap: .33rem; height: 2.45rem; padding: 0 .85rem; border-bottom: 1px solid #e7ecf1; background: #fafbfd; border-radius: .8rem .8rem 0 0; }.saas-browser span { width: .48rem; height: .48rem; border-radius: 999px; background: #e9aaa2; }.saas-browser span:nth-child(2) { background: #eed08a; }.saas-browser span:nth-child(3) { background: #9ed9bd; }.saas-browser small { margin-left: .45rem; color: #99a5b2; font-size: .58rem; }.saas-dashboard-body { display: grid; grid-template-columns: 8.3rem 1fr; min-height: 25rem; }.saas-dashboard aside { display: grid; align-content: start; gap: .35rem; padding: .9rem .55rem; border-right: 1px solid #e7ecf1; background: #fbfcfd; }.saas-mark { margin: 0 .35rem 1.1rem; color: #12243b; font-size: 1.1rem; font-weight: 850; }.saas-mark span { color: #ff6f61; }.saas-dashboard aside a { display: flex; align-items: center; gap: .4rem; padding: .48rem .42rem; border-radius: .35rem; color: #738194; font-size: .62rem; }.saas-dashboard aside a.selected { background: #fff0ed; color: #e85c50; font-weight: 750; }.saas-dashboard aside svg { width: .78rem; }.saas-dashboard main { padding: 1.05rem; }.saas-dashboard main header { display: flex; justify-content: space-between; align-items: center; }.saas-dashboard main header small { color: #9ba6b2; font-size: .55rem; letter-spacing: .08em; }.saas-dashboard main header h2 { margin-top: .22rem; color: #26394d; font-size: .85rem; }.saas-user { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border-radius: 999px; background: #eaf1f8; color: #47708e; font-size: .55rem; font-weight: 800; }.saas-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: .48rem; margin-top: 1.05rem; }.saas-kpis > div { padding: .58rem; border: 1px solid #edf1f4; border-radius: .45rem; }.saas-kpis svg { width: .82rem; color: #ff6f61; }.saas-kpis b,.saas-kpis small { display: block; }.saas-kpis b { margin-top: .35rem; color: #26394d; font-size: .98rem; }.saas-kpis small { margin-top: .08rem; color: #96a2af; font-size: .48rem; }.saas-list-head { display: flex; justify-content: space-between; margin: 1.1rem 0 .4rem; color: #324457; font-size: .64rem; }.saas-list-head span { color: #e85c50; }.saas-candidate { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .45rem; padding: .5rem 0; border-top: 1px solid #f0f3f5; }.saas-candidate > span { display: grid; width: 1.6rem; height: 1.6rem; place-items: center; border-radius: 999px; font-size: .53rem; font-weight: 800; }.saas-candidate > span.coral { background: #ffe9e5; color: #e85c50; }.saas-candidate > span.blue { background: #e9f3ff; color: #3475b5; }.saas-candidate b,.saas-candidate small { display: block; }.saas-candidate b { color: #3a4b5c; font-size: .6rem; }.saas-candidate small { color: #9ba6b2; font-size: .5rem; }.saas-candidate em { padding: .2rem .34rem; border-radius: 999px; background: #ecfaef; color: #258759; font-size: .5rem; font-style: normal; }.saas-candidate em.in-progress { background: #eaf3ff; color: #3172b4; }.saas-notification { position: absolute; right: -1.25rem; bottom: 1.7rem; display: flex; align-items: center; gap: .5rem; padding: .65rem .75rem; border: 1px solid #e4e9ee; border-radius: .6rem; background: #fff; box-shadow: 0 12px 25px rgb(17 35 58 / .14); }.saas-notification > svg { width: .95rem; color: #ff6f61; }.saas-notification small,.saas-notification b { display: block; }.saas-notification small { color: #9aa6b2; font-size: .52rem; }.saas-notification b { color: #3c4e60; font-size: .63rem; }.saas-notification > span { margin-left: .5rem; color: #1c9a69; font-weight: 800; }
.saas-logos { border-top: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; background: #fff; }.saas-logos > div { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; min-height: 5rem; color: #8794a3; font-size: .67rem; font-weight: 750; letter-spacing: .11em; }.saas-logos i { width: 2.5rem; height: 1px; background: #d9e0e7; }.saas-logos p { color: #68788a; font-size: .78rem; font-weight: 400; letter-spacing: normal; }.saas-intro { padding: 6rem 0 3rem; background: #f8fafc; }.saas-intro-copy { max-width: 45rem; }.saas-intro h2,.saas-showcase-copy h2,.saas-interview-copy h2,.saas-cta h2 { margin-top: .8rem; color: #14263d; font-size: clamp(2rem, 4vw, 3.15rem); font-weight: 750; letter-spacing: -.052em; line-height: 1.08; }.saas-intro-copy > p:last-child { max-width: 36rem; margin-top: 1rem; color: #607083; line-height: 1.7; }.saas-resource-grid { display: grid; gap: .7rem; margin-top: 2.2rem; }.saas-resource { display: grid; gap: .35rem; padding: 1rem; border: 1px solid #e1e7ed; border-radius: .55rem; background: #fff; transition: transform .18s ease, border-color .18s ease; }.saas-resource:hover { transform: translateY(-3px); border-color: #ffb6ad; }.saas-resource svg { width: 1.05rem; color: #e85c50; }.saas-resource span { color: #21364c; font-size: .84rem; font-weight: 750; }.saas-resource small { color: #8391a1; font-size: .66rem; }.saas-showcase { padding: 5.5rem 0; background: #fff; }.saas-showcase-alt { background: #f8fafc; }.saas-showcase-grid { display: grid; gap: 3rem; align-items: center; }.saas-showcase-copy { max-width: 32rem; }.saas-showcase-copy > p:not(.saas-overline),.saas-interview-copy > p:not(.saas-overline) { margin-top: 1.1rem; color: #607083; line-height: 1.72; }.saas-showcase-copy ul { display: grid; gap: .55rem; margin-top: 1.4rem; }.saas-showcase-copy li { display: flex; align-items: center; gap: .45rem; color: #42576d; font-size: .83rem; }.saas-showcase-copy li svg { width: .9rem; color: #1c9a69; }.saas-mock { overflow: hidden; border: 1px solid #dce4ec; border-radius: .7rem; background: #fff; box-shadow: 0 20px 45px rgb(18 36 59 / .1); }.saas-mock-top { display: flex; align-items: center; justify-content: space-between; padding: .9rem 1rem; border-bottom: 1px solid #e7ecf1; color: #23374d; font-size: .8rem; }.saas-mock-top button,.saas-profile-head button { padding: .4rem .55rem; border-radius: .35rem; background: #ff6f61; color: #fff; font-size: .6rem; font-weight: 700; }.saas-mock-filter { display: flex; align-items: center; gap: .45rem; margin: .8rem; padding: .55rem .65rem; border: 1px solid #e5eaf0; border-radius: .4rem; color: #93a0ad; font-size: .6rem; }.saas-mock-filter svg { width: .75rem; }.saas-mock-filter b { margin-left: auto; color: #52667a; }.saas-jobs-mock article { display: grid; grid-template-columns: auto 1fr auto auto; gap: .65rem; align-items: center; margin: 0 .8rem; padding: .72rem 0; border-top: 1px solid #eff2f5; }.saas-job-icon { display: grid; width: 1.9rem; height: 1.9rem; place-items: center; border-radius: .4rem; background: #fff0ed; color: #e85c50; }.saas-job-icon.purple { background: #f0edff; color: #6759bb; }.saas-job-icon svg { width: .85rem; }.saas-jobs-mock article b,.saas-jobs-mock article small { display: block; }.saas-jobs-mock article b { color: #34495e; font-size: .66rem; }.saas-jobs-mock article small { margin-top: .12rem; color: #96a3b0; font-size: .53rem; }.saas-jobs-mock article em { padding: .24rem .35rem; border-radius: 999px; background: #edfaf0; color: #22875a; font-size: .52rem; font-style: normal; }.saas-jobs-mock article > svg { width: .85rem; color: #8492a0; }.saas-mock-caption { padding: .7rem .8rem; background: #f8fafc; color: #718194; font-size: .61rem; }.saas-profile-head { display: flex; gap: .75rem; align-items: center; padding: 1rem; border-bottom: 1px solid #e8edf2; }.saas-profile-head > span { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border-radius: 999px; background: #ffe8e4; color: #e85c50; font-size: .72rem; font-weight: 800; }.saas-profile-head small,.saas-profile-head b,.saas-profile-head p { display: block; }.saas-profile-head small { color: #98a4b1; font-size: .5rem; font-weight: 800; letter-spacing: .08em; }.saas-profile-head b { margin-top: .2rem; color: #32475d; font-size: .8rem; }.saas-profile-head p { margin-top: .12rem; color: #8e9baa; font-size: .58rem; }.saas-profile-head button { margin-left: auto; }.saas-profile-tabs { display: flex; gap: 1rem; padding: .7rem 1rem; border-bottom: 1px solid #e8edf2; color: #8b98a6; font-size: .61rem; }.saas-profile-tabs b { color: #e85c50; }.saas-profile-content { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; padding: 1rem; }.saas-profile-content > div { padding: .7rem; border: 1px solid #edf1f4; border-radius: .4rem; }.saas-profile-content small,.saas-profile-content b,.saas-profile-content p { display: block; }.saas-profile-content small { color: #99a5b2; font-size: .5rem; letter-spacing: .08em; }.saas-profile-content b { margin-top: .35rem; color: #42576c; font-size: .67rem; }.saas-profile-content p { margin-top: .3rem; color: #778698; font-size: .58rem; line-height: 1.55; }.saas-profile-content em { display: inline-block; margin: .15rem .1rem 0 0; padding: .2rem .32rem; border-radius: 999px; background: #f0f3f6; color: #647589; font-size: .5rem; font-style: normal; }
.saas-chat-mock { display: grid; grid-template-columns: 9rem 1fr; min-height: 17rem; }.saas-chat-aside { display: grid; align-content: start; gap: .7rem; padding: .85rem .6rem; border-right: 1px solid #e7ecf1; background: #fbfcfd; }.saas-chat-aside b { color: #30455b; font-size: .7rem; }.saas-chat-aside button { padding: .45rem; border-radius: .35rem; background: #ff6f61; color: #fff; font-size: .55rem; font-weight: 700; }.saas-chat-aside span { padding: .4rem; color: #718194; font-size: .55rem; line-height: 1.45; }.saas-chat-aside span.selected { border-radius: .35rem; background: #fff0ed; color: #e85c50; }.saas-chat-main { display: grid; grid-template-rows: auto 1fr auto; padding: .85rem; }.saas-chat-main header { padding-bottom: .65rem; border-bottom: 1px solid #edf1f4; }.saas-chat-main header span,.saas-chat-main header small { display: block; }.saas-chat-main header span { color: #34495e; font-size: .7rem; font-weight: 750; }.saas-chat-main header small { margin-top: .18rem; color: #9ca8b4; font-size: .52rem; }.saas-chat-question { align-self: start; justify-self: end; max-width: 78%; margin-top: .9rem; padding: .55rem .65rem; border-radius: .5rem .5rem .1rem .5rem; background: #fff0ed; color: #6c4b48; font-size: .58rem; line-height: 1.5; }.saas-chat-answer { display: flex; align-self: center; gap: .45rem; max-width: 86%; padding: .6rem; border: 1px solid #e7ecf1; border-radius: .45rem .45rem .45rem .1rem; color: #607184; font-size: .58rem; line-height: 1.5; }.saas-chat-answer svg { flex: 0 0 auto; width: .8rem; color: #e85c50; }.saas-chat-input { display: flex; justify-content: space-between; align-items: center; padding: .45rem .5rem; border: 1px solid #e2e8ee; border-radius: .35rem; color: #a1acb8; font-size: .55rem; }.saas-chat-input b { padding: .3rem .4rem; border-radius: .25rem; background: #12243b; color: #fff; }
.saas-interview { padding: 5.8rem 0; background: #11243a; }.saas-interview-grid { display: grid; gap: 3rem; align-items: center; }.saas-interview-copy h2 { color: #fff; }.saas-interview-copy > p:not(.saas-overline) { color: #b7c3ce; }.saas-button-light { margin-top: 1.6rem; background: #fff; color: #182c42; }.saas-interview-mock { display: grid; grid-template-columns: .9fr 1.1fr; gap: .65rem; padding: .65rem; border-radius: .7rem; background: #fff; box-shadow: 0 22px 42px rgb(0 0 0 / .22); }.saas-interview-question,.saas-insight { padding: .85rem; border: 1px solid #e7ecf1; border-radius: .45rem; }.saas-interview-question small,.saas-insight small,.saas-transcript > small { color: #e85c50; font-size: .5rem; font-weight: 800; letter-spacing: .1em; }.saas-interview-question b { display: block; margin-top: .6rem; color: #283e54; font-size: .72rem; line-height: 1.5; }.saas-transcript { grid-row: span 2; padding: .35rem; }.saas-transcript article { margin-top: .45rem; padding: .65rem; border: 1px solid #ffe0db; border-radius: .4rem; background: #fff9f8; }.saas-transcript article.recruiter { border-color: #e2eaf2; background: #f8fbfd; }.saas-transcript article b { color: #e85c50; font-size: .5rem; letter-spacing: .08em; }.saas-transcript article.recruiter b { color: #3475b5; }.saas-transcript article p { margin-top: .35rem; color: #52677b; font-size: .58rem; line-height: 1.55; }.saas-insight { background: #fbfcfd; }.saas-insight b { display: block; margin-top: .45rem; color: #e17b1e; font-size: .65rem; }.saas-insight p { margin-top: .4rem; color: #627386; font-size: .56rem; line-height: 1.55; }.saas-cta { padding: 5.5rem 0; background: #f8fafc; }.saas-cta-card { display: grid; gap: 1.5rem; align-items: center; padding: clamp(1.7rem, 5vw, 3.3rem); border: 1px solid #e3e8ed; border-radius: .7rem; background: #fff; }.saas-cta h2 { max-width: 40rem; }.saas-cta-card > div:last-child { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }.saas-cta-link { color: #51667b; font-size: .82rem; font-weight: 700; }.saas-reveal { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s cubic-bezier(.2,.75,.25,1); }.saas-reveal.visible { opacity: 1; transform: none; }.saas-hero .saas-reveal { animation: saas-enter .7s both; }.saas-hero .saas-dashboard { animation-delay: .15s; }@keyframes saas-enter { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }
@media (min-width: 760px) { .saas-hero-grid { grid-template-columns: 1fr .95fr; }.saas-resource-grid { grid-template-columns: repeat(4, 1fr); }.saas-showcase-grid { grid-template-columns: 1fr 1fr; gap: 6rem; }.saas-showcase-alt .saas-mock { grid-column: 1; }.saas-showcase-alt .saas-showcase-copy { grid-column: 2; grid-row: 1; }.saas-interview-grid { grid-template-columns: .83fr 1.17fr; gap: 5rem; }.saas-cta-card { grid-template-columns: 1fr auto; }.saas-dashboard { justify-self: end; } }.saas-dashboard { max-width: 32rem; }@media (max-width: 759px) { .saas-wrap { width: min(100% - 2rem, 72rem); }.saas-hero { padding-top: 3.5rem; }.saas-dashboard { margin: 0 auto; }.saas-dashboard-body { grid-template-columns: 6.4rem 1fr; }.saas-dashboard aside { padding: .8rem .4rem; }.saas-dashboard aside a { font-size: .52rem; }.saas-notification { right: -.4rem; bottom: -1rem; }.saas-resource-grid { grid-template-columns: 1fr 1fr; }.saas-showcase { padding: 4rem 0; }.saas-interview-mock { grid-template-columns: 1fr; }.saas-transcript { grid-row: auto; }.saas-chat-mock { grid-template-columns: 6.8rem 1fr; }.saas-chat-aside span { font-size: .48rem; }.saas-cta-card .saas-button { width: fit-content; } }

/* Landing de produto: estrutura direta e sem excesso de elementos */
.product-page { background: #fff; color: #12243a; }.product-wrap { width: min(100% - 2.5rem, 70rem); margin: 0 auto; }.product-hero { padding: clamp(4rem, 9vw, 7.2rem) 0 5.2rem; background: linear-gradient(135deg, #fff 0%, #fff 55%, #fff5f3 100%); }.product-hero-grid { display: grid; gap: 3.5rem; align-items: center; }.product-label { color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.product-hero h1 { max-width: 40rem; margin-top: .9rem; color: #11243a; font-size: clamp(2.55rem, 5.6vw, 4.65rem); font-weight: 750; letter-spacing: -.065em; line-height: 1.03; }.product-hero h1 em { color: #e85c50; font-style: normal; }.product-hero-copy > p:not(.product-label) { max-width: 32rem; margin-top: 1.3rem; color: #5c6c7d; font-size: 1rem; line-height: 1.75; }.product-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.8rem; }.product-primary { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; padding: .75rem 1.05rem; border-radius: .45rem; background: #ff6f61; color: #fff; font-size: .85rem; font-weight: 750; box-shadow: 0 9px 19px rgb(255 111 97 / .22); transition: transform .18s ease, background .18s ease; }.product-primary:hover { transform: translateY(-2px); background: #e85c50; }.product-primary svg,.product-copy a svg,.product-light-link svg { width: .95rem; }.product-secondary { display: inline-flex; align-items: center; min-height: 3rem; padding: .75rem .2rem; color: #3f546a; font-size: .84rem; font-weight: 700; }.product-secondary:hover { color: #e85c50; }
.product-main-mock,.product-mock { overflow: hidden; border: 1px solid #dce4ec; border-radius: .65rem; background: #fff; box-shadow: 0 22px 46px rgb(17 35 58 / .11); }.product-main-mock { position: relative; max-width: 33rem; justify-self: end; }.product-mock-top { display: flex; align-items: center; gap: .7rem; height: 2.55rem; padding: 0 .9rem; border-bottom: 1px solid #e8edf2; background: #fbfcfd; color: #8b98a6; font-size: .6rem; }.product-mock-top b { color: #273c52; }.product-mock-top i { width: .9rem; margin-left: auto; }.product-dashboard { display: grid; grid-template-columns: 8rem 1fr; min-height: 23rem; }.product-dashboard aside { display: grid; align-content: start; gap: .4rem; padding: .85rem .55rem; border-right: 1px solid #e8edf2; background: #fbfcfd; }.product-dashboard aside > b { margin: 0 .3rem .9rem; color: #11243a; font-size: 1rem; }.product-dashboard aside > b span { color: #ff6f61; }.product-dashboard aside a { display: flex; align-items: center; gap: .38rem; padding: .45rem .4rem; border-radius: .32rem; color: #788698; font-size: .6rem; }.product-dashboard aside a.active { background: #fff0ed; color: #e85c50; font-weight: 750; }.product-dashboard aside svg { width: .76rem; }.product-dashboard main { padding: 1rem; }.product-dashboard main header { display: flex; align-items: center; justify-content: space-between; }.product-dashboard main header small,.product-dashboard main header strong { display: block; }.product-dashboard main header small { color: #9ba7b3; font-size: .5rem; letter-spacing: .08em; }.product-dashboard main header strong { margin-top: .18rem; color: #354a60; font-size: .78rem; }.product-dashboard main header span { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; border-radius: 999px; background: #ebf1f7; color: #4c718d; font-size: .52rem; font-weight: 800; }.product-numbers { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; margin-top: 1rem; }.product-numbers div { padding: .55rem; border: 1px solid #edf1f4; border-radius: .38rem; }.product-numbers b,.product-numbers small { display: block; }.product-numbers b { color: #31475c; font-size: .92rem; }.product-numbers small { margin-top: .1rem; color: #97a3b0; font-size: .48rem; }.product-dashboard main h3 { margin: 1rem 0 .35rem; color: #3c5063; font-size: .63rem; }.product-dashboard main article { display: grid; grid-template-columns: auto 1fr auto; gap: .45rem; align-items: center; padding: .45rem 0; border-top: 1px solid #f0f3f5; }.product-dashboard main article > span { display: grid; width: 1.55rem; height: 1.55rem; place-items: center; border-radius: 999px; background: #ffe8e3; color: #e85c50; font-size: .5rem; font-weight: 800; }.product-dashboard main article > span.blue { background: #e8f2ff; color: #3674af; }.product-dashboard main article b,.product-dashboard main article small { display: block; }.product-dashboard main article b { color: #3e5266; font-size: .58rem; }.product-dashboard main article small { color: #9aa6b2; font-size: .49rem; }.product-dashboard main article em,.product-jobs article em { padding: .2rem .33rem; border-radius: 999px; background: #eefaf1; color: #25885a; font-size: .48rem; font-style: normal; }.product-dashboard main article em.soft { background: #eaf3ff; color: #3574b0; }
.product-nav { border-top: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; background: #fff; }.product-nav > div { display: flex; gap: 1.6rem; align-items: center; min-height: 4.3rem; overflow-x: auto; }.product-nav a { flex: 0 0 auto; color: #677789; font-size: .78rem; font-weight: 700; }.product-nav a:hover { color: #e85c50; }.product-section { padding: clamp(4.2rem, 8vw, 6.5rem) 0; background: #fff; }.product-section-muted { background: #f8fafc; }.product-split { display: grid; gap: 3.2rem; align-items: center; }.product-copy { max-width: 31rem; }.product-copy h2,.product-interview h2,.product-final h2 { margin-top: .75rem; color: #14273e; font-size: clamp(2rem, 4vw, 3.1rem); font-weight: 740; letter-spacing: -.052em; line-height: 1.08; }.product-copy > p:not(.product-label) { margin-top: 1rem; color: #607184; line-height: 1.7; }.product-copy > a { display: inline-flex; align-items: center; gap: .35rem; margin-top: 1.4rem; color: #e85c50; font-size: .81rem; font-weight: 750; }.product-mock header { display: flex; align-items: center; gap: .7rem; padding: .85rem .95rem; border-bottom: 1px solid #e8edf2; color: #33495f; font-size: .76rem; }.product-mock header button { margin-left: auto; padding: .38rem .5rem; border-radius: .32rem; background: #ff6f61; color: #fff; font-size: .56rem; font-weight: 700; }.product-search { display: flex; align-items: center; gap: .4rem; margin: .75rem; padding: .5rem .6rem; border: 1px solid #e5ebf0; border-radius: .35rem; color: #98a4b0; font-size: .58rem; }.product-search svg { width: .75rem; }.product-jobs article { display: grid; grid-template-columns: auto 1fr auto auto; gap: .6rem; align-items: center; margin: 0 .75rem; padding: .7rem 0; border-top: 1px solid #eff3f6; }.product-jobs article > span { display: grid; width: 1.85rem; height: 1.85rem; place-items: center; border-radius: .38rem; background: #fff0ed; color: #e85c50; }.product-jobs article > span.violet { background: #f0edff; color: #6656b9; }.product-jobs article > span svg,.product-jobs article > i { width: .82rem; }.product-jobs article b,.product-jobs article small { display: block; }.product-jobs article b { color: #3a5065; font-size: .63rem; }.product-jobs article small { margin-top: .1rem; color: #9aa6b2; font-size: .52rem; }.product-jobs article > i { color: #8c9aa8; }.product-profile header > span { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; border-radius: 999px; background: #ffe8e3; color: #e85c50; font-size: .66rem; font-weight: 800; }.product-profile header small,.product-profile header b,.product-profile header p { display: block; }.product-profile header small { color: #9ca8b4; font-size: .48rem; letter-spacing: .08em; }.product-profile header b { margin-top: .18rem; color: #354b60; font-size: .75rem; }.product-profile header p { margin-top: .08rem; color: #93a0ad; font-size: .54rem; }.product-profile nav { display: flex; gap: 1rem; padding: .7rem .95rem; border-bottom: 1px solid #e8edf2; color: #8d9aa8; font-size: .58rem; }.product-profile nav b { color: #e85c50; }.product-profile-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; padding: .9rem; }.product-profile-grid article { padding: .62rem; border: 1px solid #edf1f4; border-radius: .35rem; }.product-profile-grid small,.product-profile-grid b,.product-profile-grid p { display: block; }.product-profile-grid small { color: #9aa6b2; font-size: .48rem; letter-spacing: .08em; }.product-profile-grid b { margin-top: .3rem; color: #41576c; font-size: .62rem; }.product-profile-grid p { margin-top: .25rem; color: #758597; font-size: .54rem; line-height: 1.5; }.product-profile-grid em { display: inline-block; margin: .1rem; padding: .18rem .3rem; border-radius: 99px; background: #eef2f5; color: #66788c; font-size: .48rem; font-style: normal; }
.product-chat { display: grid; grid-template-columns: 9rem 1fr; min-height: 17rem; }.product-chat aside { display: grid; align-content: start; gap: .65rem; padding: .8rem .6rem; border-right: 1px solid #e8edf2; background: #fbfcfd; }.product-chat aside b { color: #3b5066; font-size: .66rem; }.product-chat aside button { padding: .4rem; border-radius: .3rem; background: #ff6f61; color: #fff; font-size: .53rem; font-weight: 700; }.product-chat aside span { padding: .4rem; color: #748395; font-size: .52rem; line-height: 1.4; }.product-chat aside span.active { border-radius: .3rem; background: #fff0ed; color: #e85c50; }.product-chat main { display: grid; grid-template-rows: auto 1fr auto; padding: .8rem; }.product-chat main header { display: block; padding: 0 0 .6rem; }.product-chat main header b,.product-chat main header small { display: block; }.product-chat main header small { margin-top: .12rem; color: #9aa6b2; font-size: .5rem; }.product-question { align-self: start; justify-self: end; max-width: 78%; margin-top: .8rem; padding: .55rem .6rem; border-radius: .4rem .4rem .05rem .4rem; background: #fff0ed; color: #664b49; font-size: .55rem; line-height: 1.5; }.product-answer { display: flex; gap: .4rem; align-self: center; max-width: 86%; padding: .6rem; border: 1px solid #e8edf2; border-radius: .4rem .4rem .4rem .05rem; color: #617286; font-size: .55rem; line-height: 1.5; }.product-answer svg { flex: 0 0 auto; width: .78rem; color: #e85c50; }.product-chat main > div:last-child { display: flex; justify-content: space-between; padding: .42rem .5rem; border: 1px solid #e2e8ed; border-radius: .3rem; color: #a0abb6; font-size: .52rem; }.product-chat main > div:last-child b { padding: .22rem .32rem; border-radius: .2rem; background: #12243a; color: #fff; }.product-interview { padding: clamp(4.5rem, 8vw, 6.5rem) 0; background: #12243a; }.product-interview h2 { color: #fff; }.product-interview .product-copy > p:not(.product-label) { color: #b4c0cb; }.product-light-link { display: inline-flex; align-items: center; gap: .35rem; margin-top: 1.4rem; color: #fff; font-size: .8rem; font-weight: 750; }.product-interview-mock { display: grid; grid-template-columns: .9fr 1.1fr; gap: .6rem; padding: .6rem; border-radius: .55rem; background: #fff; box-shadow: 0 20px 40px rgb(0 0 0 / .2); }.product-interview-mock > div,.product-interview-mock > aside { padding: .75rem; border: 1px solid #e7ecf1; border-radius: .35rem; }.product-interview-mock small { color: #e85c50; font-size: .48rem; font-weight: 800; letter-spacing: .09em; }.product-interview-mock > div b { display: block; margin-top: .5rem; color: #31495e; font-size: .67rem; line-height: 1.5; }.product-interview-mock article { grid-row: span 2; padding: .25rem; }.product-interview-mock article p { margin-top: .4rem; padding: .55rem; border: 1px solid #ffe0db; border-radius: .35rem; background: #fff9f8; color: #5b6d7f; font-size: .54rem; line-height: 1.5; }.product-interview-mock article p.recruiter { border-color: #e4edf5; background: #f8fbfd; }.product-interview-mock article p b { display: block; margin-bottom: .2rem; color: #e85c50; font-size: .48rem; letter-spacing: .06em; }.product-interview-mock article p.recruiter b { color: #3575b3; }.product-interview-mock aside { background: #fbfcfd; }.product-interview-mock aside b { display: block; margin-top: .4rem; color: #d07a1e; font-size: .62rem; }.product-interview-mock aside p { margin-top: .35rem; color: #637386; font-size: .54rem; line-height: 1.5; }.product-final { padding: 5rem 0; background: #f8fafc; }.product-final-card { display: grid; gap: 1.4rem; align-items: center; padding: clamp(1.6rem, 5vw, 3rem); border: 1px solid #e1e7ed; border-radius: .6rem; background: #fff; }.product-final h2 { max-width: 42rem; }.product-reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }.product-reveal.visible { opacity: 1; transform: none; }.product-hero .product-reveal { animation: product-enter .65s both; }.product-hero .product-main-mock { animation-delay: .14s; }@keyframes product-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@media (min-width: 760px) { .product-hero-grid { grid-template-columns: 1fr .95fr; }.product-split { grid-template-columns: 1fr 1fr; gap: 6rem; }.product-split-reverse .product-mock { grid-column: 1; }.product-split-reverse .product-copy { grid-column: 2; grid-row: 1; }.product-interview .product-split { grid-template-columns: .85fr 1.15fr; }.product-final-card { grid-template-columns: 1fr auto; }.product-main-mock { justify-self: end; } }.product-main-mock { max-width: 32rem; }@media (max-width: 759px) { .product-wrap { width: min(100% - 2rem, 70rem); }.product-hero { padding: 3.5rem 0 4.4rem; }.product-main-mock { margin: 0 auto; }.product-dashboard { grid-template-columns: 6.3rem 1fr; }.product-dashboard aside { padding: .75rem .4rem; }.product-dashboard aside a { font-size: .52rem; }.product-chat { grid-template-columns: 6.7rem 1fr; }.product-chat aside span { font-size: .46rem; }.product-interview-mock { grid-template-columns: 1fr; }.product-interview-mock article { grid-row: auto; }.product-final-card .product-primary { width: fit-content; } }
@media (min-width: 960px) { .product-page { scroll-snap-type: y proximity; }.product-hero, .product-section, .product-interview { display: flex; align-items: center; min-height: calc(100svh - 68px); scroll-snap-align: start; scroll-snap-stop: normal; }.product-final { display: flex; align-items: center; min-height: 68svh; scroll-snap-align: start; }.product-section > .product-wrap, .product-interview > .product-wrap, .product-final > .product-wrap { width: min(100% - 2.5rem, 70rem); }.product-nav { position: relative; z-index: 4; scroll-snap-align: start; }.product-mock { transform-origin: center; }.product-section:nth-of-type(even) .product-mock { transform: perspective(1100px) rotateY(-2deg); }.product-section:nth-of-type(odd) .product-mock { transform: perspective(1100px) rotateY(2deg); } }

/* Landing refinada: grandes demonstrações e poucas mensagens */
.product-page-refined { background: #fff; }.refined-hero { padding: clamp(4.5rem, 10vw, 8rem) 0 5.5rem; background: #fff; }.refined-hero-grid { display: grid; gap: 3.5rem; align-items: center; }.refined-copy { max-width: 34rem; }.refined-copy > p { color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.refined-copy h1,.refined-copy h2,.refined-final h2 { margin-top: .9rem; color: #13263e; font-size: clamp(2.3rem, 5.2vw, 4.35rem); font-weight: 750; letter-spacing: -.064em; line-height: 1.04; }.refined-copy h2,.refined-final h2 { font-size: clamp(2rem, 4vw, 3.2rem); letter-spacing: -.052em; }.refined-copy > span { display: block; margin-top: 1.2rem; color: #5e6e7f; line-height: 1.72; }.refined-copy > div { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; margin-top: 1.8rem; }.refined-text-link,.refined-light-link { display: inline-flex; align-items: center; gap: .4rem; color: #e85c50; font-size: .82rem; font-weight: 750; }.refined-text-link svg,.refined-light-link svg { width: .95rem; }.refined-main-mock { transform: none; }.refined-section { display: flex; align-items: center; min-height: min(52rem, 100svh); padding: 5rem 0; background: #fff; }.refined-section-dark { background: #12243a; }.refined-section-dark .refined-copy h2 { color: #fff; }.refined-section-dark .refined-copy > span { color: #b5c1cd; }.refined-section-dark .refined-copy > p { color: #ff958a; }.refined-light-link { color: #fff; padding-bottom: .3rem; border-bottom: 1px solid #ff958a; }.refined-section-soft { background: #f5f7fa; }.refined-split { display: grid; gap: 3.5rem; align-items: center; }.refined-large-mock { width: 100%; max-width: 34rem; justify-self: end; transform: none !important; }.refined-section-dark .refined-large-mock { box-shadow: 0 25px 55px rgb(0 0 0 / .3); }.product-jobs article:nth-last-of-type(1) em { background: #f2f4f6; color: #738195; }.product-profile-grid { grid-template-columns: 1fr 1fr; }.refined-final { padding: 5.5rem 0; background: #fff; }.refined-final-card { display: grid; gap: 1.5rem; align-items: center; padding: clamp(1.7rem, 5vw, 3.25rem); border: 1px solid #e1e7ed; border-radius: .65rem; background: #fffaf9; }.refined-final-card > div > p { color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .14em; }.product-page-refined .product-reveal { opacity: 0; transform: translateY(15px); transition-duration: .55s; }.product-page-refined .product-reveal.visible { opacity: 1; transform: none; }
@media (min-width: 760px) { .refined-hero-grid { grid-template-columns: 1fr 1fr; }.refined-split { grid-template-columns: 1fr 1fr; gap: 7rem; }.refined-split-reverse .refined-large-mock { grid-column: 1; }.refined-split-reverse .refined-copy { grid-column: 2; grid-row: 1; }.refined-final-card { grid-template-columns: 1fr auto; } }.refined-main-mock { max-width: 32rem; justify-self: end; }@media (max-width: 759px) { .refined-hero { padding-top: 3.5rem; }.refined-section { min-height: 0; padding: 4rem 0; }.refined-main-mock,.refined-large-mock { justify-self: center; }.refined-copy h1 { font-size: clamp(2.45rem, 11vw, 3.55rem); } }

/* Landing nova: visual SaaS editorial */
.nova-landing { background: #fbfcfe; color: #12243a; }.nova-wrap { width: min(100% - 2.5rem, 72rem); margin: 0 auto; }.nova-nav { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgb(222 228 235 / .8); background: rgb(255 255 255 / .9); backdrop-filter: blur(14px); }.nova-nav > div { display: flex; align-items: center; gap: 2rem; min-height: 4.4rem; }.nova-brand img { width: auto; height: 2rem; }.nova-nav nav { display: flex; gap: 1.35rem; margin-right: auto; }.nova-nav nav a { color: #647488; font-size: .78rem; font-weight: 700; }.nova-nav-cta { display: inline-flex; align-items: center; gap: .4rem; color: #172c43; font-size: .78rem; font-weight: 800; }.nova-nav-cta svg { width: .9rem; }.nova-hero { position: relative; overflow: hidden; padding: clamp(4.5rem, 9vw, 7.5rem) 0 5.5rem; background: #f8fafc; }.nova-hero::before { position: absolute; right: -14rem; top: -12rem; width: 38rem; height: 38rem; border: 1px solid #e4e9ee; border-radius: 999px; content: ''; }.nova-hero-grid { position: relative; z-index: 1; display: grid; gap: 3.5rem; align-items: center; }.nova-hero-copy > p,.nova-statement p,.nova-product-copy > p,.nova-interview-copy > p,.nova-closing p { color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.nova-hero-copy h1 { max-width: 40rem; margin-top: 1rem; color: #13263e; font-size: clamp(2.65rem, 5.9vw, 4.8rem); font-weight: 760; letter-spacing: -.07em; line-height: 1.01; }.nova-hero-copy h1 em { color: #e85c50; font-style: normal; }.nova-hero-copy > span,.nova-product-copy > span,.nova-interview-copy > span { display: block; max-width: 33rem; margin-top: 1.25rem; color: #5d6e80; font-size: 1rem; line-height: 1.72; }.nova-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 1.85rem; }.nova-button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; padding: .75rem 1.05rem; border-radius: .45rem; background: #ff6f61; color: #fff; font-size: .84rem; font-weight: 750; box-shadow: 0 10px 22px rgb(255 111 97 / .22); transition: transform .18s ease, background .18s ease; }.nova-button:hover { transform: translateY(-2px); background: #e85c50; }.nova-button svg,.nova-hero-link svg,.nova-product-copy a svg,.nova-interview-copy a svg { width: .95rem; }.nova-hero-link,.nova-product-copy a { display: inline-flex; align-items: center; gap: .35rem; color: #3f566d; font-size: .8rem; font-weight: 750; }.nova-hero-visual { position: relative; max-width: 34rem; justify-self: end; }.nova-window,.nova-screen { overflow: hidden; border: 1px solid #dbe3eb; border-radius: .65rem; background: #fff; box-shadow: 0 26px 55px rgb(17 35 58 / .12); }.nova-window-top { display: flex; align-items: center; gap: .3rem; height: 2.45rem; padding: 0 .85rem; border-bottom: 1px solid #e8edf2; background: #fbfcfd; }.nova-window-top span { width: .46rem; height: .46rem; border-radius: 999px; background: #e8aaa3; }.nova-window-top span:nth-child(2) { background: #efd38d; }.nova-window-top span:nth-child(3) { background: #a2d7b9; }.nova-window-top b { margin-left: .5rem; color: #607184; font-size: .58rem; }.nova-window-content { display: grid; grid-template-columns: 3.4rem 1fr; min-height: 23rem; }.nova-window-content aside { display: grid; align-content: start; gap: 1.05rem; padding: 1rem; border-right: 1px solid #e8edf2; background: #fbfcfd; color: #8492a1; }.nova-window-content aside i { width: .9rem; }.nova-window-content aside i:first-child { color: #e85c50; }.nova-window-content main { padding: 1rem; }.nova-window-content main header { display: flex; justify-content: space-between; align-items: center; }.nova-window-content main header small,.nova-window-content main header b { display: block; }.nova-window-content main header small { color: #98a4b1; font-size: .48rem; letter-spacing: .08em; }.nova-window-content main header b { margin-top: .2rem; color: #354b61; font-size: .78rem; }.nova-window-content main header button,.nova-screen header button { padding: .4rem .5rem; border-radius: .32rem; background: #ff6f61; color: #fff; font-size: .54rem; font-weight: 750; }.nova-bars { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; margin-top: 1rem; }.nova-bars > div { padding: .55rem; border: 1px solid #edf1f4; border-radius: .36rem; }.nova-bars small,.nova-bars b { display: block; }.nova-bars small { color: #99a5b2; font-size: .46rem; }.nova-bars b { margin-top: .18rem; color: #364c61; font-size: .92rem; }.nova-bars i { display: block; width: 65%; height: 2px; margin-top: .35rem; background: #ff8c80; }.nova-window-content main section { margin-top: 1rem; }.nova-window-content main section > div { display: flex; justify-content: space-between; color: #40556a; font-size: .6rem; }.nova-window-content main section > div span { color: #a1acb7; }.nova-window-content main article { display: grid; grid-template-columns: auto 1fr auto; gap: .45rem; align-items: center; padding: .5rem 0; border-top: 1px solid #f0f3f5; }.nova-window-content main article em { display: grid; width: 1.55rem; height: 1.55rem; place-items: center; border-radius: 999px; background: #ffe8e3; color: #e85c50; font-size: .5rem; font-style: normal; font-weight: 800; }.nova-window-content main article em.blue { background: #e8f2ff; color: #3673ad; }.nova-window-content main article b,.nova-window-content main article small { display: block; }.nova-window-content main article b { color: #3b5065; font-size: .58rem; }.nova-window-content main article small { color: #9aa6b2; font-size: .48rem; }.nova-window-content main article > i { width: .76rem; color: #9ca8b4; }.nova-callout { position: absolute; right: -1rem; bottom: 1.1rem; display: flex; gap: .5rem; align-items: center; padding: .65rem .75rem; border: 1px solid #e1e7ed; border-radius: .52rem; background: #fff; box-shadow: 0 12px 25px rgb(17 35 58 / .13); }.nova-callout > i { width: .9rem; color: #ff6f61; }.nova-callout small,.nova-callout b { display: block; }.nova-callout small { color: #9aa6b2; font-size: .5rem; }.nova-callout b { color: #40566b; font-size: .6rem; }
.nova-statement { padding: 7rem 0 4.5rem; background: #fff; }.nova-statement h2 { margin-top: .75rem; color: #162a42; font-size: clamp(2.25rem, 5vw, 4rem); font-weight: 740; letter-spacing: -.06em; line-height: 1.05; }.nova-product { padding: 5.5rem 0; background: #fff; }.nova-product-jobs { background: #13263e; }.nova-product-grid { display: grid; gap: 3.5rem; align-items: center; }.nova-product-copy h2,.nova-interview-copy h2,.nova-closing h2 { margin-top: .75rem; color: #172b43; font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 740; letter-spacing: -.055em; line-height: 1.08; }.nova-product-copy a,.nova-interview-copy a { display: inline-flex; align-items: center; gap: .35rem; margin-top: 1.4rem; color: #e85c50; font-size: .8rem; font-weight: 750; }.nova-product-jobs .nova-product-copy h2 { color: #fff; }.nova-product-jobs .nova-product-copy > span { color: #b4c0cc; }.nova-product-jobs .nova-product-copy > p { color: #ff988d; }.nova-product-jobs .nova-product-copy a { color: #fff; border-bottom: 1px solid #ff988d; padding-bottom: .25rem; }.nova-screen { width: 100%; max-width: 34rem; justify-self: end; }.nova-screen header { display: flex; align-items: center; gap: .65rem; padding: .9rem; border-bottom: 1px solid #e8edf2; color: #374d62; font-size: .76rem; }.nova-screen header button { margin-left: auto; }.nova-search { display: flex; align-items: center; gap: .4rem; margin: .75rem; padding: .5rem .6rem; border: 1px solid #e7ecf1; border-radius: .34rem; color: #9ba7b3; font-size: .58rem; }.nova-search svg { width: .75rem; }.nova-product-jobs .nova-screen article { display: grid; grid-template-columns: auto 1fr auto auto; gap: .6rem; align-items: center; margin: 0 .75rem; padding: .72rem 0; border-top: 1px solid #eff3f5; }.nova-product-jobs .nova-screen article > em { display: grid; width: 1.85rem; height: 1.85rem; place-items: center; border-radius: .36rem; background: #fff0ed; color: #e85c50; }.nova-product-jobs .nova-screen article > em.purple { background: #f0edff; color: #6657b8; }.nova-product-jobs .nova-screen article > em svg,.nova-product-jobs .nova-screen article > i { width: .8rem; }.nova-product-jobs .nova-screen article b,.nova-product-jobs .nova-screen article span { display: block; }.nova-product-jobs .nova-screen article b { color: #3e5368; font-size: .62rem; }.nova-product-jobs .nova-screen article span { margin-top: .1rem; color: #9da8b3; font-size: .51rem; }.nova-product-jobs .nova-screen article small { padding: .2rem .32rem; border-radius: 999px; background: #effaf1; color: #258859; font-size: .48rem; }.nova-product-jobs .nova-screen article small.draft { background: #f0f3f5; color: #7b8998; }.nova-product-jobs .nova-screen article > i { color: #98a5b2; }
.nova-product-people { background: #f7f9fb; }.nova-profile header > em { display: grid; width: 2.45rem; height: 2.45rem; place-items: center; border-radius: 999px; background: #ffe8e3; color: #e85c50; font-size: .68rem; font-style: normal; font-weight: 800; }.nova-profile header small,.nova-profile header b,.nova-profile header span { display: block; }.nova-profile header small { color: #99a5b2; font-size: .48rem; letter-spacing: .08em; }.nova-profile header b { margin-top: .18rem; color: #3d5368; font-size: .73rem; }.nova-profile header span { margin-top: .08rem; color: #96a2af; font-size: .53rem; }.nova-profile nav { display: flex; gap: 1rem; padding: .7rem .9rem; border-bottom: 1px solid #e8edf2; color: #8e9ba8; font-size: .57rem; }.nova-profile nav b { color: #e85c50; }.nova-profile main { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; padding: .85rem; }.nova-profile main article { padding: .6rem; border: 1px solid #edf1f4; border-radius: .35rem; }.nova-profile main small,.nova-profile main b,.nova-profile main span { display: block; }.nova-profile main small { color: #9da8b3; font-size: .47rem; letter-spacing: .08em; }.nova-profile main b { margin-top: .3rem; color: #43586c; font-size: .6rem; }.nova-profile main span { margin-top: .22rem; color: #778697; font-size: .52rem; line-height: 1.45; }.nova-profile main p { margin-top: .18rem; }.nova-profile main i { display: inline-block; margin: .08rem; padding: .18rem .28rem; border-radius: 999px; background: #eef2f5; color: #68798b; font-size: .46rem; font-style: normal; }.nova-interview { padding: 5.8rem 0; background: #fff; }.nova-interview-grid { display: grid; gap: 3.5rem; align-items: center; }.nova-interview-screen { display: grid; grid-template-columns: .9fr 1.1fr; gap: .6rem; padding: .6rem; border: 1px solid #dbe3eb; border-radius: .6rem; background: #fff; box-shadow: 0 22px 45px rgb(17 35 58 / .11); }.nova-interview-screen > div,.nova-interview-screen > aside { padding: .72rem; border: 1px solid #e7ecf1; border-radius: .35rem; }.nova-interview-screen small { color: #e85c50; font-size: .47rem; font-weight: 800; letter-spacing: .09em; }.nova-q b { display: block; margin-top: .48rem; color: #30485e; font-size: .65rem; line-height: 1.5; }.nova-transcript { grid-row: span 2; padding: .2rem !important; }.nova-transcript > small { padding-left: .5rem; }.nova-transcript article { margin-top: .35rem; padding: .55rem; border: 1px solid #ffe0db; border-radius: .32rem; background: #fff9f8; }.nova-transcript article.recruiter { border-color: #e4edf5; background: #f8fbfd; }.nova-transcript article b { color: #e85c50; font-size: .47rem; letter-spacing: .06em; }.nova-transcript article.recruiter b { color: #3575b3; }.nova-transcript article p { margin-top: .25rem; color: #607184; font-size: .53rem; line-height: 1.5; }.nova-guidance { background: #fbfcfd; }.nova-guidance b { display: block; margin-top: .38rem; color: #c97820; font-size: .6rem; }.nova-guidance p { margin-top: .3rem; color: #647588; font-size: .52rem; line-height: 1.5; }.nova-closing { padding: 5rem 0; background: #f7f9fb; }.nova-closing-card { display: grid; gap: 1.5rem; align-items: center; padding: clamp(1.7rem, 5vw, 3.2rem); border: 1px solid #e1e7ed; border-radius: .65rem; background: #fff; }.nova-footer { border-top: 1px solid #e8edf1; background: #fff; }.nova-footer > div { display: flex; justify-content: space-between; gap: 1rem; padding: 1.5rem 0; color: #8492a1; font-size: .7rem; }.nova-in { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }.nova-in.show { opacity: 1; transform: none; }
@media (min-width: 760px) { .nova-hero-grid { grid-template-columns: 1fr .95fr; }.nova-product-grid,.nova-interview-grid { grid-template-columns: 1fr 1fr; gap: 7rem; }.nova-product-reverse .nova-screen { grid-column: 1; }.nova-product-reverse .nova-product-copy { grid-column: 2; grid-row: 1; }.nova-closing-card { grid-template-columns: 1fr auto; }.nova-hero-visual { justify-self: end; } }.nova-window { max-width: 32rem; }@media (max-width: 759px) { .nova-wrap { width: min(100% - 2rem, 72rem); }.nova-nav nav { display: none; }.nova-nav > div { gap: 1rem; }.nova-nav-cta { margin-left: auto; }.nova-hero { padding-top: 3.5rem; }.nova-hero-visual,.nova-screen { justify-self: center; }.nova-callout { right: -.5rem; bottom: -1rem; }.nova-interview-screen { grid-template-columns: 1fr; }.nova-transcript { grid-row: auto; }.nova-footer > div { flex-direction: column; } }

/* Landing RH Resolve: estrutura de produto preparada para capturas reais */
.rh-landing { background: #fff; color: #14273d; }.rh-land-wrap { width: min(100% - 2.5rem, 70rem); margin: 0 auto; }.rh-site-nav { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid #e7ecf1; background: rgb(255 255 255 / .94); backdrop-filter: blur(12px); }.rh-site-nav > div { display: flex; min-height: 4.3rem; align-items: center; gap: 2rem; }.rh-site-nav img { height: 1.8rem; width: auto; }.rh-site-nav nav { display: flex; gap: 1.25rem; margin-right: auto; }.rh-site-nav nav a { color: #677789; font-size: .76rem; font-weight: 700; }.rh-site-nav nav a:hover { color: #e85c50; }.rh-nav-action { color: #263b51; font-size: .77rem; font-weight: 800; }.rh-hero { padding: clamp(6rem, 13vw, 10rem) 0; border-bottom: 1px solid #edf1f4; background: #fff; }.rh-hero-content { max-width: 52rem; }.rh-hero p,.rh-overview header p,.rh-product-copy p,.rh-ending p { color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.rh-hero h1 { margin-top: 1rem; color: #14273d; font-size: clamp(3rem, 7vw, 6rem); font-weight: 750; letter-spacing: -.075em; line-height: .98; }.rh-hero-content > span { display: block; max-width: 38rem; margin-top: 1.45rem; color: #5c6c7d; font-size: 1.06rem; line-height: 1.75; }.rh-hero-content > div { display: flex; flex-wrap: wrap; align-items: center; gap: 1.1rem; margin-top: 2rem; }.rh-main-action { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; padding: .75rem 1.05rem; border-radius: .35rem; background: #ff6f61; color: #fff; font-size: .84rem; font-weight: 750; transition: transform .18s ease, background .18s ease; }.rh-main-action:hover { transform: translateY(-2px); background: #e85c50; }.rh-main-action svg,.rh-sub-action svg,.rh-product-copy a svg { width: .95rem; }.rh-sub-action,.rh-product-copy a { display: inline-flex; align-items: center; gap: .35rem; color: #3d556d; font-size: .8rem; font-weight: 750; }.rh-overview { padding: clamp(4.5rem, 9vw, 7rem) 0; background: #f8fafc; }.rh-overview header { max-width: 39rem; }.rh-overview h2,.rh-product-copy h2,.rh-ending h2 { margin-top: .8rem; color: #172b42; font-size: clamp(2rem, 4.2vw, 3.4rem); font-weight: 740; letter-spacing: -.056em; line-height: 1.08; }.rh-overview-list { margin-top: 2.5rem; border-top: 1px solid #dfe6ec; }.rh-overview-list article { display: grid; grid-template-columns: 3rem 1fr auto; gap: 1rem; align-items: center; padding: 1.35rem 0; border-bottom: 1px solid #dfe6ec; }.rh-overview-list article > span { color: #e85c50; font-size: .72rem; font-weight: 800; }.rh-overview-list h3 { color: #2c4359; font-size: .95rem; }.rh-overview-list p { max-width: 35rem; margin-top: .3rem; color: #6a7989; font-size: .82rem; line-height: 1.55; }.rh-overview-list svg { width: 1rem; color: #9aa7b4; }.rh-product { display: flex; align-items: center; min-height: min(49rem, 100svh); padding: 5rem 0; }.rh-product-light { background: #fff; }.rh-product-muted { background: #f8fafc; }.rh-product-dark { background: #14273d; }.rh-product-grid { display: grid; gap: 3.5rem; align-items: center; }.rh-product-copy { max-width: 32rem; }.rh-product-copy > span { display: block; margin-top: 1rem; color: #607184; line-height: 1.72; }.rh-product-copy > a { margin-top: 1.5rem; color: #e85c50; }.rh-product-dark .rh-product-copy p { color: #ff9a8f; }.rh-product-dark .rh-product-copy h2 { color: #fff; }.rh-product-dark .rh-product-copy > span { color: #b5c1cd; }.rh-product-dark .rh-product-copy a { color: #fff; border-bottom: 1px solid #ff9a8f; padding-bottom: .25rem; }.rh-product-frame { overflow: hidden; width: 100%; max-width: 35rem; justify-self: end; padding: 1rem; border: 1px solid #dce4eb; border-radius: .45rem; background: #fff; box-shadow: 0 20px 42px rgb(17 35 58 / .09); }.rh-frame-label { display: flex; align-items: center; gap: .45rem; padding-bottom: .75rem; border-bottom: 1px solid #e9eef2; color: #4d6276; font-size: .7rem; font-weight: 750; }.rh-frame-label svg { width: .9rem; color: #e85c50; }.rh-frame-lines { display: grid; gap: .65rem; margin-top: 1.1rem; }.rh-frame-lines div { height: 2.5rem; border-radius: .25rem; background: linear-gradient(90deg, #eef2f5 0 22%, #f6f8fa 22% 100%); }.rh-product-frame > p { margin-top: 1rem; color: #94a0ac; font-size: .65rem; }.rh-frame-profile { display: flex; align-items: center; gap: .7rem; margin-top: 1.05rem; padding: .75rem; border: 1px solid #edf1f4; border-radius: .3rem; }.rh-frame-profile > i { width: 2.25rem; height: 2.25rem; border-radius: 999px; background: #ffe8e3; }.rh-frame-profile > div { flex: 1; }.rh-frame-profile b,.rh-frame-profile span { display: block; height: .5rem; margin: .25rem 0; border-radius: 99px; background: #dfe6ec; }.rh-frame-profile b { width: 44%; }.rh-frame-profile span { width: 70%; }.rh-frame-columns { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; margin-top: .65rem; }.rh-frame-columns div { height: 6rem; border: 1px solid #edf1f4; border-radius: .3rem; background: #fbfcfd; }.rh-frame-dark { border-color: #39506a; background: #1b314a; box-shadow: 0 22px 45px rgb(0 0 0 / .22); }.rh-frame-dark .rh-frame-label { border-color: #365069; color: #d3dde6; }.rh-frame-dark .rh-frame-label svg { color: #ff9a8f; }.rh-frame-dark > p { color: #9db0c1; }.rh-frame-transcript { display: grid; gap: .65rem; margin-top: 1rem; }.rh-frame-transcript div { height: 3.4rem; border: 1px solid #35516b; border-left: 2px solid #ff9388; border-radius: .25rem; background: #203951; }.rh-frame-transcript div:nth-child(2) { margin-left: 2rem; border-left-color: #73a8d5; }.rh-ending { padding: 5.5rem 0; background: #fff; }.rh-ending-inner { display: grid; gap: 1.5rem; align-items: center; padding: clamp(1.7rem, 5vw, 3.2rem); border: 1px solid #e1e7ed; border-radius: .45rem; background: #fffaf9; }.rh-site-footer { border-top: 1px solid #e7ecf1; background: #fff; }.rh-site-footer > div { display: flex; justify-content: space-between; gap: 1rem; padding: 1.5rem 0; color: #8794a2; font-size: .7rem; }.rh-fade { opacity: 0; transform: translateY(14px); transition: opacity .55s ease, transform .55s ease; }.rh-fade.visible { opacity: 1; transform: none; }
@media (min-width: 760px) { .rh-hero-content { margin-left: 8%; }.rh-product-grid { grid-template-columns: 1fr 1fr; gap: 7rem; }.rh-product-inverse .rh-product-frame { grid-column: 1; }.rh-product-inverse .rh-product-copy { grid-column: 2; grid-row: 1; }.rh-ending-inner { grid-template-columns: 1fr auto; } }.rh-product-frame { justify-self: end; }@media (max-width: 759px) { .rh-land-wrap { width: min(100% - 2rem, 70rem); }.rh-site-nav nav { display: none; }.rh-site-nav > div { gap: 1rem; }.rh-nav-action { margin-left: auto; }.rh-hero { padding: 5rem 0; }.rh-product { min-height: 0; padding: 4rem 0; }.rh-product-frame { justify-self: center; }.rh-overview-list article { grid-template-columns: 2rem 1fr; }.rh-overview-list article svg { display: none; }.rh-site-footer > div { flex-direction: column; } }
/* Camadas visuais da landing: contraste e cor sem poluir a leitura. */
.rh-hero { isolation: isolate; background: radial-gradient(circle at 15% 12%, #fff0ed 0, transparent 22rem), radial-gradient(circle at 82% 70%, #e9f2ff 0, transparent 26rem), #fbfcfe; }.rh-hero::after { position: absolute; z-index: -1; right: 8%; bottom: -12rem; width: 26rem; height: 26rem; border: 1px solid rgb(255 111 97 / .22); border-radius: 999px; box-shadow: 0 0 0 3rem rgb(255 111 97 / .045), 0 0 0 6rem rgb(255 111 97 / .025); content: ''; }.rh-hero h1 { text-shadow: 0 1px 0 #fff; }.rh-main-action { box-shadow: 0 12px 28px rgb(255 111 97 / .28); }.rh-overview { position: relative; overflow: hidden; background: linear-gradient(115deg, #f5f8fc 0%, #fff 63%, #fff2ef 100%); }.rh-overview::before { position: absolute; top: -8rem; right: -5rem; width: 20rem; height: 20rem; border-radius: 999px; background: rgb(255 111 97 / .08); content: ''; }.rh-overview > div { position: relative; }.rh-overview-list article:first-child { border-top-color: #cfdbe6; }.rh-overview-list article:hover { padding-left: .55rem; background: rgb(255 255 255 / .42); }.rh-overview-list article { transition: padding .2s ease, background .2s ease; }.rh-product-light { position: relative; overflow: hidden; background: linear-gradient(135deg, #fff 0%, #fff 58%, #fff4f1 100%); }.rh-product-light::before { position: absolute; left: -13rem; bottom: -15rem; width: 29rem; height: 29rem; border: 1px solid rgb(255 111 97 / .18); border-radius: 999px; content: ''; }.rh-product-light > div { position: relative; }.rh-product-muted { background: linear-gradient(135deg, #edf5fb 0%, #f8fafc 53%, #f7f1ff 100%); }.rh-product-muted .rh-product-frame { box-shadow: 0 24px 52px rgb(52 84 116 / .14); }.rh-product-dark { position: relative; overflow: hidden; background: radial-gradient(circle at 78% 20%, #284663 0, transparent 26rem), #14273d; }.rh-product-dark::after { position: absolute; right: -10rem; bottom: -12rem; width: 29rem; height: 29rem; border: 1px solid rgb(255 154 143 / .22); border-radius: 999px; content: ''; }.rh-product-dark > div { position: relative; z-index: 1; }.rh-product-frame { border-color: #d3dfe9; box-shadow: 0 24px 50px rgb(26 52 77 / .12); }.rh-frame-label { color: #374f67; }.rh-product-frame::after { display: block; height: .22rem; margin: 1rem -1rem -1rem; background: linear-gradient(90deg, #ff6f61, #ffb0a6 44%, #dcecff 100%); content: ''; }.rh-frame-dark::after { background: linear-gradient(90deg, #ff897c, #467aa8); }.rh-ending { background: radial-gradient(circle at 12% 50%, #ffe5df 0, transparent 22rem), #f9fafc; }.rh-ending-inner { border-color: #eadbd7; background: linear-gradient(115deg, #fff7f5 0%, #fff 62%); box-shadow: 0 18px 40px rgb(17 35 58 / .06); }

/* Landing editorial inspirada em narrativa de produto, com linguagem própria. */
.editorial-landing { background: #f7f8fb; color: #11263d; }.ed-wrap { width: min(100% - 2.5rem, 74rem); margin: 0 auto; }.ed-nav { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgb(221 228 235 / .75); background: rgb(247 248 251 / .9); backdrop-filter: blur(12px); }.ed-nav > div { display: flex; align-items: center; gap: 2rem; min-height: 4.4rem; }.ed-brand img { height: 1.85rem; width: auto; }.ed-nav nav { display: flex; gap: 1.4rem; margin-right: auto; }.ed-nav nav a { color: #5d7083; font-size: .78rem; font-weight: 700; }.ed-nav nav a:hover { color: #e85c50; }.ed-nav-cta { display: inline-flex; align-items: center; gap: .4rem; color: #172e47; font-size: .78rem; font-weight: 800; }.ed-nav-cta svg,.ed-button svg,.ed-inline-link svg,.ed-product-copy svg { width: .9rem; }.ed-hero { position: relative; overflow: hidden; padding: clamp(5rem, 10vw, 8.5rem) 0 6rem; background: #f7f8fb; }.ed-hero::after { position: absolute; top: -18rem; right: -15rem; width: 40rem; height: 40rem; border: 1px solid #dfe6ed; border-radius: 999px; box-shadow: 0 0 0 5rem rgb(255 111 97 / .035); content: ''; }.ed-hero-grid { position: relative; z-index: 1; display: grid; gap: 3rem; align-items: center; }.ed-hero-copy > p,.ed-section-head > p,.ed-product-copy > p,.ed-interview-copy > p,.ed-closing p { color: #e85c50; font-size: .68rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.ed-hero-copy h1 { max-width: 42rem; margin-top: 1rem; color: #122840; font-size: clamp(2.8rem, 6vw, 5.2rem); font-weight: 740; letter-spacing: -.075em; line-height: .98; }.ed-hero-copy > span { display: block; max-width: 34rem; margin-top: 1.45rem; color: #5c6e81; font-size: 1rem; line-height: 1.75; }.ed-hero-copy > div { display: flex; flex-wrap: wrap; align-items: center; gap: 1.1rem; margin-top: 2rem; }.ed-button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; padding: .75rem 1.05rem; border-radius: .4rem; background: #ff6f61; color: #fff; font-size: .84rem; font-weight: 750; box-shadow: 0 12px 24px rgb(255 111 97 / .2); transition: transform .18s ease, background .18s ease; }.ed-button:hover { transform: translateY(-2px); background: #e85c50; }.ed-inline-link { display: inline-flex; align-items: center; gap: .35rem; color: #405a72; font-size: .8rem; font-weight: 750; }.ed-hero-art { position: relative; max-width: 34rem; justify-self: end; }.ed-hero-art svg { display: block; width: 100%; height: auto; filter: drop-shadow(0 22px 28px rgb(18 40 64 / .08)); }.ed-line { stroke: #aec0d0; stroke-width: 1.5; stroke-dasharray: 7 7; animation: ed-dash 12s linear infinite; }.ed-line-second { stroke: #e88d82; animation-direction: reverse; }.ed-node { fill: #edf3f8; stroke: #5e809c; stroke-width: 1.5; }.ed-node-coral { fill: #fff0ed; stroke: #e85c50; }.ed-card-shape { fill: #fff; stroke: #d8e2ea; }.ed-card-lines { stroke: #8197aa; stroke-width: 5; stroke-linecap: round; }.ed-small-shape { fill: #e8f2fa; stroke: #bdd0df; }.ed-art-note { position: absolute; padding: .65rem .75rem; border: 1px solid #e0e7ed; border-radius: .38rem; background: #fff; box-shadow: 0 10px 22px rgb(18 40 64 / .1); }.ed-art-note small,.ed-art-note b { display: block; }.ed-art-note small { color: #9aa8b5; font-size: .48rem; font-weight: 800; letter-spacing: .09em; }.ed-art-note b { margin-top: .17rem; color: #3e5870; font-size: .62rem; }.ed-note-one { top: 24%; right: 3%; }.ed-note-two { bottom: 15%; left: 3%; }.ed-method { position: relative; overflow: hidden; padding: clamp(5rem, 10vw, 8rem) 0; background: #fff; }.ed-method::before { position: absolute; top: 4rem; right: -12rem; width: 29rem; height: 29rem; border: 1px solid #ffe0db; border-radius: 999px; content: ''; }.ed-method > div { position: relative; }.ed-section-head { max-width: 44rem; }.ed-section-head h2 { margin-top: .8rem; color: #162c44; font-size: clamp(2rem, 4.5vw, 3.7rem); font-weight: 740; letter-spacing: -.06em; line-height: 1.06; }.ed-section-head > span { display: block; max-width: 36rem; margin-top: 1rem; color: #617284; line-height: 1.7; }.ed-principles { display: grid; gap: 1.6rem; margin-top: 4rem; }.ed-principles article { position: relative; padding-top: 3.4rem; border-top: 1px solid #dbe4eb; }.ed-principles article > span { position: absolute; top: .85rem; left: 0; color: #e85c50; font-size: .7rem; font-weight: 800; }.ed-principles h3 { color: #2e475f; font-size: 1rem; }.ed-principles p { max-width: 21rem; margin-top: .6rem; color: #6b7c8e; font-size: .84rem; line-height: 1.65; }.ed-flow { padding: clamp(5rem, 10vw, 8rem) 0; background: #142940; }.ed-flow-head p { color: #ff9b8f; }.ed-flow-head h2 { color: #fff; }.ed-flow-map { position: relative; min-height: 20rem; margin-top: 4rem; }.ed-flow-map svg { width: 100%; overflow: visible; }.ed-flow-path { stroke: #7c97ae; stroke-width: 1.5; stroke-dasharray: 8 8; animation: ed-dash 18s linear infinite; }.ed-flow-map circle { fill: #142940; stroke: #ff8f83; stroke-width: 4; }.ed-flow-step { position: absolute; display: grid; gap: .2rem; }.ed-flow-step small { color: #94aabf; font-size: .5rem; font-weight: 800; letter-spacing: .1em; }.ed-flow-step b { color: #fff; font-size: .85rem; }.ed-flow-step span { color: #b4c5d4; font-size: .67rem; }.ed-step-one { top: 45%; left: 2%; }.ed-step-two { top: 0; left: 42%; }.ed-step-three { right: 20%; bottom: 0; }.ed-step-four { right: 0; bottom: 0; }.ed-platform { padding: clamp(5rem, 10vw, 8rem) 0; background: #f4f7fa; }.ed-platform-list { margin-top: 3.5rem; border-top: 1px solid #d4dfe8; }.ed-platform-item { display: grid; grid-template-columns: 1fr auto; gap: 1rem; align-items: center; padding: 1.6rem 0; border-bottom: 1px solid #d4dfe8; }.ed-platform-item > div > span { color: #e85c50; font-size: .63rem; font-weight: 800; text-transform: uppercase; }.ed-platform-item h3 { margin-top: .35rem; color: #273f57; font-size: 1.05rem; }.ed-platform-item p { max-width: 42rem; margin-top: .55rem; color: #68798a; font-size: .84rem; line-height: 1.6; }.ed-platform-item > svg { width: 1.25rem; color: #e85c50; }.ed-closing { padding: 6rem 0; background: #e85c50; }.ed-closing-grid { display: grid; gap: 2rem; align-items: center; }.ed-closing p { color: #ffd7d1; }.ed-closing h2 { max-width: 45rem; margin-top: .7rem; color: #fff; font-size: clamp(2rem, 4.5vw, 3.7rem); font-weight: 740; letter-spacing: -.06em; line-height: 1.06; }.ed-button-light { background: #fff; color: #d84f45; box-shadow: none; }.ed-button-light:hover { background: #fff4f2; }.ed-footer { padding: 3rem 0; background: #10253c; color: #bdcad5; }.ed-footer > div { display: grid; gap: 1.2rem; }.ed-footer img { height: 1.9rem; width: auto; filter: brightness(0) invert(1); }.ed-footer p { max-width: 23rem; color: #aebdca; font-size: .78rem; line-height: 1.55; }.ed-footer span { color: #7f94a7; font-size: .68rem; }.ed-reveal { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.75,.25,1); }.ed-reveal.is-visible { opacity: 1; transform: none; }@keyframes ed-dash { to { stroke-dashoffset: -160; } }
@media (min-width: 760px) { .ed-hero-grid { grid-template-columns: 1fr 1fr; }.ed-principles { grid-template-columns: repeat(3, 1fr); gap: 2rem; }.ed-closing-grid { grid-template-columns: 1fr auto; }.ed-footer > div { grid-template-columns: auto 1fr auto; align-items: center; } }.ed-hero-art { justify-self: end; }@media (max-width: 759px) { .ed-wrap { width: min(100% - 2rem, 74rem); }.ed-nav nav { display: none; }.ed-nav > div { gap: 1rem; }.ed-nav-cta { margin-left: auto; }.ed-hero { padding-top: 4.5rem; }.ed-hero-art { justify-self: center; }.ed-flow-map { min-height: 25rem; }.ed-flow-map svg { margin-top: 4rem; transform: rotate(90deg) scale(.8); }.ed-flow-step { left: 0; right: auto; }.ed-step-one { top: 2%; }.ed-step-two { top: 26%; }.ed-step-three { top: 51%; }.ed-step-four { top: 76%; }.ed-platform-item { grid-template-columns: 1fr auto; }.ed-footer > div { grid-template-columns: 1fr; } }

:is(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
    outline: 3px solid var(--brand-secondary);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }

    .reveal-item {
        transform: none !important;
        opacity: 1 !important;
    }
}
