:root {
    --mvo-blue: #1d4e89;
    --mvo-blue-dark: #163a66;
    --mvo-blue-deep: #0d2a4d;
    --mvo-accent: #ff9800;
    --mvo-bg: #f4f6f9;
    --mvo-border: #e2e8f0;
}

body.site-body {
    background: var(--mvo-bg);
    color: #22303f;
    font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

html, body { max-width: 100%; overflow-x: hidden; }
img, svg { max-width: 100%; }
.site-main > *, .site-main .row > *, .site-hero .row > * { min-width: 0; }

/* The public storefront and authenticated client area share one shell. */
body.unified-client-site { background:var(--mvo-bg); color:#22303f; font-family:"Segoe UI",system-ui,-apple-system,sans-serif; display:flex; flex-direction:column; min-height:100vh; }
body.unified-client-site .site-main { width:100%; max-width:1220px; flex:1; padding-top:2rem; padding-bottom:3rem; }
body.unified-client-site .site-hero { border-radius:14px; background:linear-gradient(135deg,var(--mvo-hero),var(--mvo-hero-2)); color:var(--mvo-hero-text); }
body.unified-client-site .site-card, body.unified-client-site .site-product { border-radius:12px; box-shadow:0 5px 18px rgba(22,55,106,.06); }

/* ---------- Header ---------- */
.site-header {
    background: linear-gradient(180deg, var(--mvo-header) 0%, var(--mvo-header-2) 100%);
    box-shadow: 0 2px 10px rgba(13, 42, 77, .25);
}

.site-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: .65rem;
    padding-bottom: .65rem;
}

.site-brand {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: .02em;
}

.site-brand:hover {
    color: #fff;
}

.site-account {
    color: #cfe0f2;
    font-size: .875rem;
}

.site-account-text a {
    color: #fff;
    font-weight: 600;
    text-decoration: underline;
}

.site-account-link {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    margin-left: .9rem;
}

.site-account-link:hover {
    color: #ffd28a;
}

.site-nav {
    background: var(--mvo-navigation);
    border-top: 1px solid rgba(255, 255, 255, .08);
}

.site-nav-row {
    display: flex;
    gap: 1.25rem;
}

.site-nav-row a {
    color: var(--mvo-navigation-text);
    text-decoration: none;
    padding: .6rem .1rem;
    font-size: .925rem;
    border-bottom: 3px solid transparent;
}

.site-nav-row a:hover {
    color: #fff;
}

.site-nav-row a.active {
    color: #fff;
    border-bottom-color: var(--mvo-accent);
    font-weight: 600;
}

/* ---------- Main / hero ---------- */
.site-main {
    flex: 1;
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.site-hero {
    background: linear-gradient(135deg, var(--mvo-hero) 0%, var(--mvo-hero-2) 100%);
    color: var(--mvo-hero-text);
    border-radius: .75rem;
    padding: 3rem 2.5rem;
    margin-bottom: 2.5rem;
    box-shadow: 0 6px 24px rgba(13, 42, 77, .28);
}

.site-hero-title {
    font-size: 1.9rem;
    font-weight: 800;
    letter-spacing: .02em;
    margin-bottom: .75rem;
}

.site-hero-text {
    font-size: 1.05rem;
    color: color-mix(in srgb, var(--mvo-hero-text) 82%, transparent);
    max-width: 34rem;
    margin-bottom: 1.5rem;
}

.site-hero-icon {
    font-size: 7rem;
    color: rgba(255, 255, 255, .25);
}

.domain-search-card { position:relative; z-index:2; display:grid; grid-template-columns:.85fr 1.15fr; gap:2rem; align-items:center; margin:1.25rem 0 2.25rem; padding:1.5rem; background:#fff; border:1px solid #dce5ef; border-radius:16px; box-shadow:0 15px 38px rgba(13,42,77,.12); }
.domain-search-kicker { color:#2d6db5; font-size:.68rem; font-weight:800; letter-spacing:.1em; }
.domain-search-copy h2 { margin:.3rem 0 .4rem; color:#102d51; font-size:1.35rem; font-weight:750; }
.domain-search-copy p { margin:0; color:#6c7d91; font-size:.88rem; }
.domain-search-input { display:flex; align-items:center; padding:.35rem; background:#f4f7fb; border:1px solid #ced9e6; border-radius:12px; }
.domain-search-input > i { margin:0 .65rem; color:#2b68a9; font-size:1.15rem; }
.domain-search-input .form-control { min-width:0; padding:.7rem .25rem; background:transparent; border:0; box-shadow:none; }
.domain-search-input .btn { white-space:nowrap; padding:.7rem 1rem; border-radius:9px; }
.domain-tld-list { display:flex; flex-wrap:wrap; gap:.35rem .8rem; margin-top:.6rem; color:#77869a; font-size:.7rem; }
.domain-tld-list b { color:#294965; }
.public-domain-result { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.8rem; padding:.75rem .85rem; border-radius:10px; }
.public-domain-result span { min-width:0; }.public-domain-result small { margin-left:.45rem; opacity:.8; }
.public-domain-result.loading { color:#48647f; background:#eef3f8; }
.public-domain-result.available { color:#116c46; background:#e9f8f0; border:1px solid #bfe8d2; }
.public-domain-result.unavailable { color:#a12e3b; background:#fff0f2; border:1px solid #f2c8cd; }
.public-domain-result .btn { white-space:nowrap; }

.site-page-title {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--mvo-blue-dark);
    margin-bottom: .25rem;
}

.site-page-subtitle {
    color: #5b6b7f;
    margin-bottom: 1.75rem;
}

/* ---------- Segunda via pública ---------- */
.second-copy-shell{max-width:980px;margin:0 auto;display:grid;gap:1.25rem}.second-copy-intro{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 0 .75rem}.second-copy-intro h1{margin:0 0 .45rem;color:#102d51;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:650;letter-spacing:-.025em}.second-copy-intro p{max-width:62ch;margin:0;color:#607287;font-size:1rem}.second-copy-trust{display:flex;align-items:center;gap:.7rem;flex:0 0 auto;color:#254b70;font-size:.82rem;font-weight:600}.second-copy-trust i{display:grid;width:2.6rem;height:2.6rem;place-items:center;color:#176b4b;background:#e9f7f0;border-radius:10px;font-size:1.25rem}.second-copy-trust small{color:#718197;font-weight:400}.second-copy-search,.second-copy-results,.second-copy-payment{background:#fff;border:1px solid #dce5ef;border-radius:14px;box-shadow:0 10px 30px rgba(13,42,77,.07)}.second-copy-search{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem;padding:1.5rem}.second-copy-search-copy h2,.results-heading h2,.second-copy-payment h2{margin:0 0 .3rem;color:#163a66;font-size:1.15rem;font-weight:650}.second-copy-search-copy p,.results-heading p,.second-copy-payment p{margin:0;color:#6a7b90;font-size:.88rem}.second-copy-search form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.72fr) auto;gap:.85rem;align-items:start}.second-copy-search .mb-3{margin:0!important}.document-field label,.second-copy-search .form-label,.second-copy-payment label{display:block;margin:0 0 .38rem;color:#334b65;font-size:.78rem;font-weight:600}.document-field small{display:block;margin-top:.35rem;color:#7b8a9b;font-size:.7rem}.second-copy-search .field-wrap,.second-copy-search .input-group{display:flex;align-items:center;min-height:44px;background:#fff;border:1px solid #cdd8e5;border-radius:8px;overflow:hidden}.second-copy-search .field-wrap:focus-within,.second-copy-search .input-group:focus-within{border-color:#2563eb;box-shadow:0 0 0 .2rem rgba(37,99,235,.14)}.second-copy-search .field-wrap i{padding-left:.75rem;color:#52708e}.second-copy-search .form-control{border:0;box-shadow:none;background:transparent}.second-copy-submit{display:flex;align-items:center;justify-content:center;gap:.65rem;height:44px;margin-top:1.65rem;white-space:nowrap;border-radius:8px}.second-copy-results{overflow:hidden}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.4rem;border-bottom:1px solid #e5ebf2}.invoice-count{padding:.3rem .65rem;color:#245d96;background:#eaf2fb;border-radius:999px;font-size:.72rem;font-weight:600}.public-invoice-list{display:grid}.public-invoice-row{display:grid;grid-template-columns:1fr .85fr 1fr auto;align-items:center;gap:1.25rem;padding:1rem 1.4rem;border-bottom:1px solid #edf1f5}.public-invoice-row:last-child{border-bottom:0}.public-invoice-row:hover{background:#f8fbff}.public-invoice-row span{display:block;margin-bottom:.18rem;color:#77879a;font-size:.7rem}.public-invoice-row strong{color:#223b57;font-size:.9rem;font-weight:600}.invoice-amount strong{color:#153d66;font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums}.invoice-payment-actions{display:flex;gap:.55rem}.invoice-payment-actions .btn{min-height:38px;white-space:nowrap;border-radius:7px;font-size:.8rem;font-weight:600}.invoice-payment-actions form{margin:0}.second-copy-empty{display:flex;align-items:center;justify-content:center;gap:1rem;padding:2.5rem}.second-copy-empty i{color:#4d759a;font-size:2rem}.second-copy-empty strong,.second-copy-empty span{display:block}.second-copy-empty strong{color:#254665}.second-copy-empty span{max-width:56ch;margin-top:.25rem;color:#748498;font-size:.82rem}.second-copy-payment{padding:1.4rem}.payment-success-heading{display:flex;align-items:center;gap:.8rem;margin-bottom:1.25rem}.payment-success-heading>i{display:grid;width:2.7rem;height:2.7rem;place-items:center;color:#13734e;background:#e8f7ef;border-radius:10px;font-size:1.3rem}.public-pix-layout{display:grid;grid-template-columns:180px 1fr;gap:1.5rem;align-items:center;padding-top:1rem;border-top:1px solid #e6edf4}.public-pix-layout img{width:180px;height:180px;padding:.5rem;background:#fff;border:1px solid #dfe7ef;border-radius:10px}.public-pix-layout textarea,.public-boleto-code textarea{width:100%;margin-bottom:.65rem;padding:.7rem;color:#263d55;background:#f7f9fc;border:1px solid #d7e0ea;border-radius:8px;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;resize:none}.payment-note{margin-top:.7rem!important;font-size:.75rem!important}.second-copy-help{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;color:#6f8094;font-size:.8rem}.second-copy-help a{color:#2563eb;text-underline-offset:3px}::selection{color:#fff;background:#2563eb}.second-copy-shell :focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:2px}.second-copy-shell button:disabled{cursor:not-allowed;opacity:.52}
@media(max-width:900px){.second-copy-search{grid-template-columns:1fr}.second-copy-search form{grid-template-columns:1fr 1fr}.second-copy-submit{grid-column:1/-1;margin-top:0}.public-invoice-row{grid-template-columns:1fr 1fr}.invoice-payment-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:620px){.second-copy-intro{align-items:flex-start;flex-direction:column;gap:1rem}.second-copy-trust{width:100%;padding-top:1rem;border-top:1px solid #e1e8f0}.second-copy-search{padding:1.1rem}.second-copy-search form{grid-template-columns:1fr}.second-copy-submit{grid-column:auto}.public-invoice-row{grid-template-columns:1fr 1fr;gap:1rem;padding:1rem}.invoice-amount{grid-column:1/-1}.invoice-payment-actions{display:grid;grid-template-columns:1fr 1fr}.invoice-payment-actions .btn{width:100%;height:100%}.public-pix-layout{grid-template-columns:1fr}.public-pix-layout img{justify-self:center}.results-heading{align-items:flex-start}.second-copy-help{align-items:flex-start;text-align:left}}

.site-section-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--mvo-blue-dark);
    margin: 2.25rem 0 1.25rem;
}

/* ---------- Cards ---------- */
.site-card {
    border: 1px solid var(--mvo-border);
    border-radius: .6rem;
    box-shadow: 0 1px 3px rgba(16, 42, 77, .06);
}

.site-card-header {
    background: #f8fafc;
    font-weight: 600;
    color: var(--mvo-blue-dark);
}

.site-card-icon {
    font-size: 2.2rem;
    color: var(--mvo-blue);
}

.site-product {
    border: 1px solid var(--mvo-border);
    border-top: 3px solid var(--mvo-blue);
    border-radius: .6rem;
    box-shadow: 0 1px 3px rgba(16, 42, 77, .06);
}

.site-product-badge {
    background: var(--mvo-blue-dark);
    color: #fff;
    font-weight: 500;
}

.site-product-desc {
    color: #5b6b7f;
    font-size: .9rem;
    white-space: pre-line;
}

.site-product-price {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--mvo-blue-dark);
}

.site-product-price small {
    font-size: .85rem;
    font-weight: 500;
    color: #5b6b7f;
}

.site-catalog-preview { margin-top:3rem; }
.catalog-preview-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:1.5rem; }
.catalog-preview-heading .site-section-title { margin:.25rem 0 .35rem; font-size:1.55rem; }
.catalog-preview-heading p { margin:0; color:#66778c; }
.catalog-preview-eyebrow { color:var(--mvo-blue); font-size:.72rem; font-weight:800; letter-spacing:.11em; }
.catalog-preview-link { display:inline-flex; align-items:center; gap:.45rem; flex:0 0 auto; padding:.55rem .8rem; color:var(--mvo-blue); font-size:.86rem; font-weight:700; text-decoration:none; border-radius:.5rem; }
.catalog-preview-link:hover { background:#eaf2fc; }
.site-product-preview { position:relative; overflow:hidden; border:1px solid #dce5ef; border-top:0; border-radius:16px; box-shadow:0 10px 28px rgba(13,42,77,.08); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.site-product-preview:before { content:""; position:absolute; inset:0 0 auto; height:4px; background:linear-gradient(90deg,#174f8f,#3183d5); }
.site-product-preview:hover { transform:translateY(-5px); border-color:#b7cee7; box-shadow:0 18px 42px rgba(13,42,77,.14); }
.site-product-preview .card-body { padding:1.35rem; }
.site-product-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:.85rem; }
.site-product-preview .site-product-badge { padding:.4rem .65rem; background:#e8f1fb; color:#174f8f; font-size:.68rem; font-weight:700; border-radius:999px; }
.site-product-icon { display:grid; width:2.25rem; height:2.25rem; place-items:center; color:#2366ad; background:#edf5fd; border-radius:10px; font-size:1.05rem; }
.site-product-preview .card-title { margin:0 0 .45rem; color:#102a4c; font-size:1.15rem; font-weight:750; }
.site-product-preview .site-product-desc { min-height:2.8rem; margin-bottom:1.35rem; display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-height:1.55; }
.site-product-buy { padding-top:1rem; border-top:1px solid #e8eef5; }
.site-product-from { display:block; margin-bottom:.15rem; color:#78889c; font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.04em; }
.site-product-preview .site-product-price { display:flex; align-items:baseline; gap:.35rem; margin-bottom:.85rem; font-size:1.65rem; line-height:1; }
.site-product-preview .site-product-price small { font-size:.78rem; }
.site-product-preview .btn { display:flex; align-items:center; justify-content:space-between; padding:.7rem .9rem; border-radius:.55rem; font-weight:700; box-shadow:0 5px 12px rgba(31,91,156,.17); }
.site-product-preview .btn i { transition:transform .2s ease; }
.site-product-preview .btn:hover i { transform:translateX(3px); }
.catalog-category-card { top:1rem; overflow:hidden; border:1px solid #dce5ef; border-radius:14px; box-shadow:0 8px 24px rgba(13,42,77,.07); }
.catalog-category-card .site-card-header { display:flex; align-items:center; justify-content:space-between; padding:1rem; background:#fff; border-bottom:1px solid #e5edf5; }
.catalog-category-card .site-card-header small { color:#8a98aa; font-size:.68rem; font-weight:500; text-transform:uppercase; letter-spacing:.04em; }
.catalog-category-list .list-group-item { display:flex; align-items:center; justify-content:space-between; gap:.75rem; min-height:3.25rem; padding:.75rem 1rem; color:#33475f; font-size:.88rem; font-weight:600; border-color:#edf1f6; }
.catalog-category-list .list-group-item > span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.catalog-category-list .list-group-item i { color:#7790ac; }
.catalog-category-list .list-group-item > .bi-chevron-right { font-size:.7rem; }
.catalog-category-list .list-group-item .badge { min-width:1.5rem; color:#52667e; background:#edf2f7; border-radius:999px; }
.catalog-category-list .list-group-item:hover { color:#174f8f; background:#f2f7fd; }
.catalog-category-list .list-group-item.active { color:#fff; background:linear-gradient(90deg,#174f8f,#256bb5); border-color:transparent; }
.catalog-category-list .list-group-item.active i { color:#fff; }
.catalog-category-list .list-group-item.active .badge { color:#174f8f; background:#fff; }
.catalog-empty-state { min-height:360px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:3rem 2rem; text-align:center; background:linear-gradient(145deg,#fff 0%,#f7fbff 100%); border:1px solid #dce5ef; border-radius:16px; box-shadow:0 10px 30px rgba(13,42,77,.07); }
.catalog-empty-icon { position:relative; display:grid; place-items:center; width:78px; height:78px; margin-bottom:1.25rem; color:#1d5fa7; background:#eaf4ff; border:1px solid #d4e8fb; border-radius:22px; font-size:2rem; }
.catalog-empty-icon > span { position:absolute; right:-7px; bottom:-7px; display:grid; place-items:center; width:32px; height:32px; color:#fff; background:#1d5fa7; border:4px solid #fff; border-radius:50%; font-size:.8rem; }
.catalog-empty-eyebrow { margin-bottom:.55rem; color:#1d5fa7; font-size:.72rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.catalog-empty-state h2 { max-width:560px; margin:0 0 .65rem; color:#102d50; font-size:1.45rem; font-weight:750; }
.catalog-empty-state p { max-width:590px; margin:0; color:#65758a; line-height:1.65; }
.catalog-empty-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; margin-top:1.5rem; }
.catalog-empty-actions .btn { min-width:190px; padding:.7rem 1rem; border-radius:.6rem; font-weight:700; }

@media (max-width:575.98px) {
    .catalog-empty-state { min-height:320px; padding:2.25rem 1.25rem; }
    .catalog-empty-state h2 { font-size:1.25rem; }
    .catalog-empty-actions, .catalog-empty-actions .btn { width:100%; }
}

/* ---------- KB ---------- */
.kb-category-name {
    font-weight: 600;
    color: var(--mvo-blue-dark);
    text-decoration: none;
}

.kb-category-name:hover {
    color: var(--mvo-blue);
}

.kb-category-desc {
    font-size: .85rem;
    color: #5b6b7f;
}

.kb-article-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--mvo-blue-dark);
}

.kb-article-content {
    color: #33404f;
    line-height: 1.7;
    overflow-x: auto;
}

.kb-article-content table {
    width: 100%;
    min-width: 520px;
    margin: 1.5rem 0;
    border: 1px solid #d9e2ec;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: .65rem;
    overflow: hidden;
    background: #fff;
    font-size: .92rem;
}

.kb-article-content caption {
    padding: .7rem .85rem;
    color: #506176;
    font-weight: 600;
    text-align: left;
    caption-side: top;
}

.kb-article-content th,
.kb-article-content td {
    padding: .7rem .8rem;
    border-right: 1px solid #e1e7ee;
    border-bottom: 1px solid #e1e7ee;
    vertical-align: top;
}

.kb-article-content th:last-child,
.kb-article-content td:last-child { border-right: 0; }
.kb-article-content tr:last-child > th,
.kb-article-content tr:last-child > td { border-bottom: 0; }
.kb-article-content thead th {
    color: #334155;
    background: #f3f6fa;
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .025em;
}
.kb-article-content tbody tr:nth-child(even) { background: #f9fbfd; }
.kb-article-content tbody tr:hover { background: #eef6ff; }

@media (max-width: 575.98px) {
    .kb-article-content table { min-width: 460px; font-size: .86rem; }
    .kb-article-content th,
    .kb-article-content td { padding: .6rem .65rem; }
}

/* ---------- Form ---------- */
.site-form-section {
    font-size: 1rem;
    font-weight: 700;
    color: var(--mvo-blue-dark);
    border-bottom: 2px solid var(--mvo-blue);
    padding-bottom: .4rem;
    margin-bottom: 1rem;
}

/* Public authentication uses the same storefront shell. */
.auth-shell { max-width:980px; margin:1.5rem auto; display:grid; grid-template-columns:1.05fr .95fr; overflow:hidden; border:1px solid var(--mvo-border); border-radius:16px; background:#fff; box-shadow:0 18px 48px rgba(13,42,77,.12); }
.auth-benefits { display:flex; flex-direction:column; justify-content:center; padding:3rem; color:#fff; background:linear-gradient(145deg,var(--mvo-blue-deep),var(--mvo-blue)); }
.auth-eyebrow { color:#91c2f5; font-size:.72rem; font-weight:750; letter-spacing:.13em; }.auth-benefits h1 { margin:.45rem 0 .7rem; font-size:2rem; font-weight:750; }.auth-benefits > p { color:#d4e3f3; line-height:1.6; }
.auth-benefits ul { display:grid; gap:.7rem; margin:1rem 0 1.5rem; padding:0; list-style:none; }.auth-benefits li { display:flex; gap:.55rem; align-items:center; }.auth-benefits li i { color:#70d6a4; }
.auth-security { display:flex; align-items:center; gap:.75rem; padding: .85rem 1rem; border:1px solid rgba(255,255,255,.14); border-radius:10px; background:rgba(255,255,255,.07); }.auth-security > i { font-size:1.3rem; }.auth-security span { display:grid; }.auth-security small { color:#bcd0e6; }
.auth-card { padding:2.5rem; background:#fff; }.auth-card-icon { width:48px; height:48px; display:grid; place-items:center; margin-bottom:1rem; border-radius:12px; color:var(--mvo-blue); background:#eaf3ff; font-size:1.35rem; }.auth-card h2 { margin:0 0 .3rem; color:var(--mvo-blue-deep); font-size:1.35rem; font-weight:750; }.auth-card > p { margin-bottom:1.5rem; color:#738297; }
.auth-card .input-group-text { color:#718198; background:#f7f9fc; border-color:#ced8e5; }.auth-card .form-control { min-height:44px; border-color:#ced8e5; }.auth-register { margin-top:1.35rem; padding-top:1.1rem; border-top:1px solid #e8edf3; color:#758397; text-align:center; font-size:.85rem; }.auth-register a { font-weight:650; text-decoration:none; }
.auth-single { max-width:470px; margin:2rem auto; border:1px solid var(--mvo-border); border-radius:16px; overflow:hidden; box-shadow:0 15px 40px rgba(13,42,77,.1); }
.checkout-identification-note { max-width:760px; display:flex; align-items:center; gap:.85rem; margin:0 auto 1rem; padding:.85rem 1rem; border:1px solid #b9d6f4; border-radius:11px; background:#eef7ff; color:#315372; }.checkout-identification-note > i { color:var(--mvo-blue); font-size:1.35rem; }.checkout-identification-note div { display:grid; flex:1; }.checkout-identification-note span { color:#6d8093; font-size:.78rem; }
@media(max-width:767.98px){.auth-shell{grid-template-columns:1fr;margin:.5rem auto}.auth-benefits{padding:1.5rem}.auth-benefits h1{font-size:1.5rem}.auth-card{padding:1.5rem}.site-account-text{font-size:.75rem}.site-nav-row{gap:.8rem;overflow-x:auto}.domain-search-card{grid-template-columns:1fr;gap:1rem;margin:-1.2rem 0 2rem;padding:1rem}.domain-search-input{align-items:stretch;flex-wrap:wrap}.domain-search-input>i{align-self:center}.domain-search-input .form-control{width:calc(100% - 42px)}.domain-search-input .btn{width:100%;margin-top:.25rem}.public-domain-result{align-items:stretch;flex-direction:column}.public-domain-result .btn{width:100%}}
@media(max-width:767.98px){.site-catalog-preview{margin-top:2.25rem}.catalog-preview-heading{align-items:flex-start;flex-direction:column;gap:.75rem}.catalog-preview-heading .site-section-title{font-size:1.35rem}.catalog-preview-link{padding:.35rem 0}.site-product-preview .site-product-desc{min-height:auto}}

@media (max-width: 575.98px) {
    body.unified-client-site .site-main { padding: 1rem .75rem 2rem; }
    .site-hero { width: 100%; margin: 0 0 2rem; padding: 1.5rem 1.15rem; border-radius: 14px; }
    .site-hero-title { font-size: clamp(1.35rem, 8vw, 1.7rem); overflow-wrap: anywhere; }
    .site-hero-text { font-size: .9rem; line-height: 1.55; }
    .site-hero .d-flex { display: grid !important; grid-template-columns: 1fr; width: 100%; }
    .site-hero .btn { width: 100%; min-width: 0; white-space: normal; }
    .domain-search-card { width: 100%; margin: -1rem 0 1.5rem; }
    .domain-search-copy h2 { font-size: 1.15rem; overflow-wrap: anywhere; }
    .domain-search-input .form-control { min-width: 0; font-size: .82rem; }
    .domain-tld-list { display: grid; grid-template-columns: 1fr 1fr; }
    .site-cards, .site-catalog-preview .row { margin-right: -.35rem; margin-left: -.35rem; }
    .site-cards > *, .site-catalog-preview .row > * { padding-right: .35rem; padding-left: .35rem; }
    .site-card, .site-product { max-width: 100%; }
    .site-card .card-body, .site-product .card-body { padding: 1rem; }
    .site-nav { max-width: 100vw; overflow-x: auto; scrollbar-width: none; }
    .site-nav::-webkit-scrollbar { display: none; }
    .site-nav-row { width: max-content; min-width: 100%; padding-inline: .75rem; }
    .site-header-row { padding-inline: .75rem; }
    .site-account-text { max-width: 48vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}

/* ---------- Footer ---------- */
.site-footer {
    background: var(--mvo-footer);
    color: var(--mvo-footer-text);
    padding: 1.25rem 0;
    font-size: .875rem;
    text-align: center;
}

/* Refinamento visual sistêmico — site, loja e autenticação do cliente */
body.unified-client-site{background:var(--mvo-page,#f6f8fc)}body.unified-client-site .site-main{padding-top:2rem}.site-hero{border-radius:14px;background:linear-gradient(135deg,var(--mvo-hero),var(--mvo-hero-2));color:var(--mvo-hero-text);box-shadow:none}.site-hero:before,.site-hero:after{display:none}.site-hero-title{letter-spacing:-.03em}
.site-card,.site-product,.site-product-preview,.catalog-category-card,.catalog-empty-state,.auth-shell,.auth-single{border-radius:10px;box-shadow:0 1px 2px rgba(15,23,42,.05)}.site-product-preview:before{background:var(--mvo-primary)}.site-product-preview:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.09)}.site-product-preview .btn{border-radius:7px;box-shadow:none}.catalog-category-list .list-group-item.active{background:var(--mvo-primary)}.catalog-empty-state{background:var(--mvo-surface)}.auth-benefits{background:var(--mvo-hero);color:var(--mvo-hero-text)}.auth-card-icon,.catalog-empty-icon{border-radius:10px}.site-footer{background:var(--mvo-footer);color:var(--mvo-footer-text)}
@media(max-width:767.98px){body.unified-client-site .site-main{padding-top:1.25rem}.site-hero{padding:1.5rem 1.15rem}.auth-shell{margin-inline:0}}
