/* =========================================================================
   Host Prospera - tema da Central (filho do Twenty-One)
   Identidade visual de hostprospera.com.br (cores, fontes, raios, sombras)
   ========================================================================= */

:root {
    --hp-primary: #2A57FF;
    --hp-primary-600: #1842D6;
    --hp-primary-dark: #001042;
    --hp-primary-100: #EEF2FF;
    --hp-primary-50: #F5F7FF;
    --hp-green: #16A34A;
    --hp-green-bg: #ECFDF3;
    --hp-bg: #FFFFFF;
    --hp-bg-soft: #F7F9FC;
    --hp-border: #E6E9F2;
    --hp-text: #07152E;
    --hp-text-muted: #5B6478;
    --hp-text-light: #8A93A6;
    --hp-font-heading: 'Urbanist', 'Mulish', sans-serif;
    --hp-font-body: 'Mulish', 'Open Sans', sans-serif;
    --hp-radius-sm: 10px;
    --hp-radius: 16px;
    --hp-radius-lg: 20px;
    --hp-shadow-sm: 0 2px 8px rgba(11, 18, 32, .05);
    --hp-shadow-md: 0 10px 30px rgba(11, 18, 32, .08);
    --hp-shadow-lg: 0 24px 60px rgba(11, 18, 32, .14);
    --hp-gradient: linear-gradient(120deg, #2450FF, #3567FF);
    --hp-transition: 200ms cubic-bezier(.4, 0, .2, 1);
}

/* ---------- Base ---------- */
html { background: #fff; }
body.hp-body,
body.primary-bg-color {
    font-family: var(--hp-font-body);
    color: var(--hp-text-muted);
    background: linear-gradient(130deg, #fff 30%, #f6f8fd);
    min-height: 100vh;
    height: auto !important;
    -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6,
.card-title, .header-lined h1, .primary-content h1 {
    font-family: var(--hp-font-heading);
    color: var(--hp-text);
    font-weight: 800;
    letter-spacing: -0.02em;
}
a { color: var(--hp-primary); }
a:hover { color: var(--hp-primary-600); }
::selection { background: var(--hp-primary-100); color: var(--hp-primary-dark); }

/* ---------- Botões ---------- */
.btn { border-radius: 9px; font-family: var(--hp-font-heading); font-weight: 700; }
.btn-primary, .btn-primary:not(:disabled):not(.disabled):active,
body.hp-body #order-standard_cart .btn-primary {
    background: var(--hp-gradient);
    border-color: transparent;
    color: #fff;
    box-shadow: 0 5px 16px rgba(47, 91, 255, .13);
}
.btn-primary:hover, .btn-primary:focus, body.hp-body #order-standard_cart .btn-primary:hover {
    background: var(--hp-primary-600);
    border-color: transparent;
    color: #fff;
    box-shadow: var(--hp-shadow-md);
}
.btn-outline-primary { color: var(--hp-primary); border-color: var(--hp-border); background: #fff; }
.btn-outline-primary:hover, .btn-outline-primary:focus { background: var(--hp-primary); border-color: var(--hp-primary); color: #fff; }
.btn-success, body.hp-body #order-standard_cart .btn-success, body.hp-body #order-standard_cart .btn-checkout {
    background: var(--hp-gradient);
    border-color: transparent;
    color: #fff;
}
.btn-success:hover, body.hp-body #order-standard_cart .btn-success:hover, body.hp-body #order-standard_cart .btn-checkout:hover {
    background: var(--hp-primary-600);
    border-color: transparent;
    color: #fff;
}
.btn-default, .btn-light { border: 1px solid var(--hp-border); background: #fff; color: var(--hp-text); }
.btn-default:hover, .btn-light:hover { border-color: var(--hp-primary); color: var(--hp-primary); background: #fff; }
.btn:focus, .form-control:focus, .custom-select:focus { box-shadow: 0 0 0 .2rem rgba(42, 87, 255, .18); }

/* Botões do cabeçalho/hero (iguais ao site) */
.hp-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    font-family: var(--hp-font-heading); font-weight: 700; font-size: 13px;
    padding: 11px 16px; border-radius: 9px; line-height: 1.2; white-space: nowrap;
    transition: transform var(--hp-transition), box-shadow var(--hp-transition), background var(--hp-transition), border-color var(--hp-transition), color var(--hp-transition);
    text-decoration: none !important;
}
.hp-btn-primary { background: var(--hp-gradient); color: #fff !important; box-shadow: 0 5px 16px rgba(47, 91, 255, .13); }
.hp-btn-primary:hover { background: var(--hp-primary-600); transform: translateY(-2px); box-shadow: var(--hp-shadow-md); }
.hp-btn-outline { background: #fff; color: var(--hp-text) !important; border: 1px solid var(--hp-border); }
.hp-btn-outline:hover { border-color: var(--hp-primary); color: var(--hp-primary) !important; transform: translateY(-2px); }

/* ---------- Formulários ---------- */
.form-control, .custom-select, .input-group-text {
    border-radius: var(--hp-radius-sm);
    border-color: var(--hp-border);
}
.input-group > .form-control:not(:first-child), .input-group > .input-group-append > .btn { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.input-group > .form-control:not(:last-child), .input-group > .input-group-prepend > .btn { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.custom-control-input:checked ~ .custom-control-label::before { background-color: var(--hp-primary); border-color: var(--hp-primary); }

/* ---------- Cabeçalho ---------- */
.hp-header { background: transparent; }
.hp-header .topbar.hp-topbar {
    background: var(--hp-primary-dark);
    font-size: 12px;
}
.hp-header .topbar .btn, .hp-header .topbar .input-group-text { color: rgba(255, 255, 255, .85); font-weight: 600; background: transparent; border: 0; }
.hp-header .topbar .btn:hover { color: #fff; }
.hp-header .topbar .btn-active-client span { border-bottom: 1px dashed rgba(255, 255, 255, .45); }

.hp-site-header {
    position: sticky; top: 0; z-index: 1030;
    background: rgba(255, 255, 255, .92);
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
    border-bottom: 1px solid #edf1f9;
}
.hp-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: 76px; }
.hp-logo { display: flex; align-items: center; flex-shrink: 0; }
.hp-logo img { height: 34px; width: auto; }
.hp-main-nav { align-items: center; gap: 0; }
.hp-nav-item { position: relative; }
.hp-nav-link {
    display: flex; align-items: center; gap: 6px; padding: 10px 11px;
    border-radius: var(--hp-radius-sm); font-weight: 700; font-size: 12.5px;
    color: var(--hp-text); text-decoration: none !important;
    transition: background var(--hp-transition), color var(--hp-transition);
}
.hp-nav-link:hover, .hp-nav-link.is-active { background: var(--hp-bg-soft); color: var(--hp-primary); }
.hp-chevron { font-size: 9px; opacity: .6; }
.hp-nav-dropdown {
    position: absolute; top: calc(100% + 8px); left: 0; min-width: 260px;
    background: #fff; border: 1px solid var(--hp-border); border-radius: var(--hp-radius);
    box-shadow: var(--hp-shadow-lg); padding: 10px;
    opacity: 0; visibility: hidden; transform: translateY(8px);
    transition: opacity var(--hp-transition), transform var(--hp-transition), visibility var(--hp-transition);
    z-index: 1040;
}
.hp-nav-dropdown:before { content: ''; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.hp-nav-item:hover .hp-nav-dropdown, .hp-nav-item:focus-within .hp-nav-dropdown { opacity: 1; visibility: visible; transform: none; }
.hp-nav-dropdown a {
    display: flex; align-items: center; gap: 10px; padding: 10px 12px;
    border-radius: var(--hp-radius-sm); font-weight: 600; font-size: 13px;
    color: var(--hp-text); text-decoration: none !important;
}
.hp-nav-dropdown a:hover { background: var(--hp-bg-soft); color: var(--hp-primary); }
.hp-nav-dropdown a i { color: var(--hp-primary); width: 18px; text-align: center; }
.hp-nav-dropdown small { display: block; font-size: 11px; color: var(--hp-text-light); font-weight: 500; }

.hp-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.hp-icon-btn {
    position: relative; width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--hp-border); border-radius: var(--hp-radius-sm); background: #fff;
    color: var(--hp-text); padding: 0; text-decoration: none !important;
    transition: border-color var(--hp-transition), color var(--hp-transition);
}
.hp-icon-btn:hover, .hp-icon-btn:focus { border-color: var(--hp-primary); color: var(--hp-primary); outline: 0; }
.hp-cart-count {
    position: absolute; top: -7px; right: -7px; min-width: 18px; height: 18px; padding: 0 5px;
    border-radius: 999px; background: var(--hp-primary); color: #fff;
    font-size: 10px; font-weight: 800; line-height: 18px; text-align: center;
}

/* Barra de navegação do cliente (menus do WHMCS) */
.hp-client-nav.main-navbar-wrapper {
    background: #fff;
    border-bottom: 1px solid #edf1f9;
    padding-top: 0; padding-bottom: 0;
}
.hp-client-nav .navbar-nav > li > a {
    display: block; padding: 13px 14px !important; font-weight: 700; font-size: 13px;
    color: var(--hp-text-muted); text-decoration: none;
}
.hp-client-nav .navbar-nav > li > a:hover,
.hp-client-nav .navbar-nav > li.active > a,
.hp-client-nav .navbar-nav > li.show > a { color: var(--hp-primary); }
.hp-client-nav .dropdown-menu {
    border: 1px solid var(--hp-border); border-radius: var(--hp-radius);
    box-shadow: var(--hp-shadow-lg); padding: 8px;
}
.hp-client-nav .dropdown-menu .dropdown-item { border-radius: 8px; }
.hp-client-nav .dropdown-menu .dropdown-item a { font-size: 13px; font-weight: 600; color: var(--hp-text); padding: 8px 10px !important; }
.hp-client-nav .dropdown-menu .dropdown-item:hover,
.hp-client-nav .dropdown-menu .dropdown-item:hover a { background: var(--hp-bg-soft); color: var(--hp-primary); }
.hp-client-nav .badge { background: var(--hp-primary-100); color: var(--hp-primary); border-radius: 999px; }

.hp-mobile-site { display: flex; flex-direction: column; gap: 2px; padding: 10px 0 14px; border-bottom: 1px solid var(--hp-border); margin-bottom: 6px; }
.hp-mobile-site a:not(.hp-btn) {
    padding: 12px 10px; border-radius: var(--hp-radius-sm); font-weight: 700; font-size: 15px;
    color: var(--hp-text); text-decoration: none;
}
.hp-mobile-site a:not(.hp-btn):hover { background: var(--hp-bg-soft); color: var(--hp-primary); }
.hp-mobile-site .hp-btn { margin-top: 10px; padding: 13px 16px; font-size: 14px; }

/* Breadcrumb */
.master-breadcrumb { background: transparent; border: 0; }
.master-breadcrumb .breadcrumb { background: transparent; font-size: 12px; padding-left: 0; }
.master-breadcrumb .breadcrumb a { color: var(--hp-text-muted); }
.master-breadcrumb .breadcrumb .active { color: var(--hp-text); font-weight: 700; }

/* ---------- Hero da página inicial ---------- */
.hp-hero { padding: 48px 0 28px; }
.hp-hero-inner { max-width: 760px; }
.hp-badge-pill {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--hp-primary-100); color: var(--hp-primary);
    border: 1px solid #dce5ff; font-weight: 700; font-size: 11px;
    padding: 6px 13px; border-radius: 999px; margin-bottom: 16px;
}
.hp-hero h1 { font-size: clamp(30px, 4.4vw, 50px); line-height: 1.1; margin-bottom: 16px; }
.hp-accent { color: var(--hp-primary); }
.hp-lead { font-size: 16px; line-height: 1.65; color: var(--hp-text-muted); max-width: 620px; margin-bottom: 24px; }
.hp-hero-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 28px; }
.hp-hero-btns .hp-btn { font-size: 14px; padding: 13px 20px; }
.hp-hero-stats { display: flex; flex-wrap: wrap; gap: 22px; }
.hp-hero-stat { display: flex; align-items: center; gap: 10px; }
.hp-hero-stat strong { display: block; font-family: var(--hp-font-heading); color: var(--hp-text); font-size: 14px; }
.hp-hero-stat span { font-size: 12px; }
.hp-icon-circle {
    width: 40px; height: 40px; border-radius: 50%; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--hp-primary-100); color: var(--hp-primary); font-size: 16px;
}

/* Busca de domínio da home */
#frmDomainHomepage { padding: 0 15px; }
.home-domain-search {
    background: var(--hp-gradient) !important;
    border-radius: var(--hp-radius-lg);
    box-shadow: var(--hp-shadow-md);
    margin: 10px auto 10px; max-width: 1110px;
}
.home-domain-search > .container > .p-5 { padding: 36px 32px !important; }
.home-domain-search h2, .home-domain-search .h2 { color: #fff !important; font-size: clamp(22px, 2.6vw, 30px); margin-bottom: 18px; }
.home-domain-search a, .home-domain-search .btn-link, .home-domain-search label { color: #fff !important; }
.home-domain-search a:hover { color: var(--hp-primary-100) !important; }
.home-domain-search .input-group-wrapper, .home-domain-search .advanced-input { border-radius: var(--hp-radius-sm); overflow: hidden; }
.home-domain-search textarea, .home-domain-search .form-control { border: 0; font-size: 14px; }
.home-domain-search .btn-primary, .home-domain-search .btn-success, .home-domain-search .btn-default { background: var(--hp-primary-dark) !important; color: #fff !important; border: 0; }
.home-domain-search .multiselect-container, .home-domain-search .dropdown-menu { color: var(--hp-text); }
.home-domain-search .multiselect-container a, .home-domain-search .dropdown-menu a, .home-domain-search .multiselect-container label { color: var(--hp-text) !important; }

/* ---------- Seções da home ---------- */
.hp-section-head { text-align: center; margin: 44px 0 22px; }
.hp-section-head h2 { font-size: clamp(24px, 3vw, 32px); margin-bottom: 6px; }
.hp-section-head p { margin: 0; }
.hp-groups { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 18px; }
.hp-group-card {
    display: flex; flex-direction: column; gap: 8px; padding: 24px;
    background: #fff; border: 1px solid var(--hp-border); border-radius: var(--hp-radius);
    box-shadow: var(--hp-shadow-sm); color: var(--hp-text-muted); text-decoration: none !important;
    transition: transform var(--hp-transition), box-shadow var(--hp-transition), border-color var(--hp-transition);
}
.hp-group-card:hover { transform: translateY(-4px); box-shadow: var(--hp-shadow-md); border-color: #cfdaff; color: var(--hp-text-muted); }
.hp-group-card h3 { font-size: 18px; margin: 6px 0 0; }
.hp-group-card p { font-size: 13px; line-height: 1.55; margin: 0; flex: 1; }
.hp-icon-square {
    width: 46px; height: 46px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center;
    background: var(--hp-primary-100); color: var(--hp-primary); font-size: 20px;
}
.hp-card-link { font-family: var(--hp-font-heading); font-weight: 700; font-size: 13px; color: var(--hp-primary); margin-top: 6px; }
.hp-actions-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 14px; margin-bottom: 10px; }
.hp-actions-grid a {
    display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center;
    padding: 22px 14px; background: #fff; border: 1px solid var(--hp-border); border-radius: var(--hp-radius);
    font-family: var(--hp-font-heading); font-weight: 700; font-size: 14px; color: var(--hp-text);
    text-decoration: none !important; transition: transform var(--hp-transition), box-shadow var(--hp-transition), border-color var(--hp-transition);
}
.hp-actions-grid a:hover { transform: translateY(-3px); box-shadow: var(--hp-shadow-md); border-color: #cfdaff; color: var(--hp-primary); }

/* ---------- Conteúdo, cards e sidebar ---------- */
#main-body { padding-top: 10px; padding-bottom: 48px; }
.card, .tiles .tile, .client-home-cards .card, .panel {
    border: 1px solid var(--hp-border);
    border-radius: var(--hp-radius);
    box-shadow: var(--hp-shadow-sm);
}
.card-header { background: #fff; border-bottom-color: var(--hp-border); border-radius: var(--hp-radius) var(--hp-radius) 0 0 !important; }
.card-header .card-title, .card-header h3 { font-size: 15px; }
.card-footer { background: var(--hp-bg-soft); border-top-color: var(--hp-border); }
.sidebar .card { overflow: hidden; }
.sidebar .card-header { background: #fff; }
.sidebar .list-group-item { border-color: var(--hp-border); font-size: 13px; color: var(--hp-text-muted); }
.sidebar .list-group-item.active, .list-group-item.active {
    background: var(--hp-primary-100); color: var(--hp-primary); border-color: var(--hp-border); font-weight: 700;
}
.list-group-item-action:hover { background: var(--hp-bg-soft); color: var(--hp-primary); }
.tiles .tile { background: #fff; }
.tiles .tile .stat { font-family: var(--hp-font-heading); color: var(--hp-text); }
.tiles .tile .highlight { background: var(--hp-primary) !important; }
.badge-info, .badge-primary { background: var(--hp-primary); }
.badge-success, .label-success { background: var(--hp-green); }
.page-item.active .page-link { background: var(--hp-primary); border-color: var(--hp-primary); }
.page-link { color: var(--hp-primary); }
.nav-tabs .nav-link.active { color: var(--hp-primary); border-bottom-color: var(--hp-primary); }
.progress-bar { background: var(--hp-primary); }
.table thead th { border-bottom-color: var(--hp-border); color: var(--hp-text); font-family: var(--hp-font-heading); }
.alert { border-radius: var(--hp-radius-sm); }
.alert-info { background: var(--hp-primary-50); border-color: #dce5ff; color: var(--hp-primary-dark); }
.alert-success { background: var(--hp-green-bg); border-color: #bbf7d0; color: #14532d; }
.text-primary { color: var(--hp-primary) !important; }
.bg-primary { background-color: var(--hp-primary) !important; }

/* Login / cadastro */
.login-form, .card.mw-540 { border-radius: var(--hp-radius-lg); box-shadow: var(--hp-shadow-md); }

/* ---------- Carrinho (Standard Cart) ---------- */
body.hp-body #order-standard_cart .header-lined h1 { font-size: clamp(24px, 3vw, 32px); }
body.hp-body #order-standard_cart .products .product {
    border: 1px solid var(--hp-border); border-radius: var(--hp-radius);
    box-shadow: var(--hp-shadow-sm); overflow: hidden; padding-bottom: 14px;
    transition: box-shadow var(--hp-transition), border-color var(--hp-transition);
}
body.hp-body #order-standard_cart .products .product:hover { box-shadow: var(--hp-shadow-md); border-color: #cfdaff; }
body.hp-body #order-standard_cart .products .product header {
    background: var(--hp-primary-50); border-bottom: 1px solid var(--hp-border);
    margin: 0; border-radius: 0; padding: 14px 20px;
}
body.hp-body #order-standard_cart .products .product header span { font-family: var(--hp-font-heading); font-weight: 800; color: var(--hp-text); }
body.hp-body #order-standard_cart .products .product div.product-desc { font-size: 13px; color: var(--hp-text-muted); }
body.hp-body #order-standard_cart .products .product div.product-pricing span.price { font-family: var(--hp-font-heading); color: var(--hp-primary); font-weight: 800; }
body.hp-body #order-standard_cart .cart-sidebar .card, body.hp-body #order-standard_cart .cart-sidebar .panel { border-radius: var(--hp-radius); }
body.hp-body #order-standard_cart .order-summary {
    background: var(--hp-primary-dark); border-radius: var(--hp-radius); overflow: hidden; border: 0;
}
body.hp-body #order-standard_cart .order-summary h2 { font-family: var(--hp-font-heading); }
body.hp-body #order-standard_cart .summary-container { background: #fff; }
body.hp-body #order-standard_cart .view-cart-items-header { background: var(--hp-primary-dark); border-radius: var(--hp-radius) var(--hp-radius) 0 0; }
body.hp-body #order-standard_cart .view-cart-items { border-color: var(--hp-border); }
body.hp-body #order-standard_cart .view-cart-items .item-title { color: var(--hp-text); font-weight: 700; }
body.hp-body #order-standard_cart .view-cart-tabs .nav-tabs .nav-link.active { color: var(--hp-primary); }
body.hp-body #order-standard_cart .sub-heading span { font-family: var(--hp-font-heading); color: var(--hp-text); }
body.hp-body #order-standard_cart .field-container, body.hp-body #order-standard_cart .product-info { border-radius: var(--hp-radius-sm); }

/* ---------- Rodapé ---------- */
.hp-footer.footer {
    background: #fff; border-top: 1px solid #edf1f9; color: var(--hp-text-muted);
    padding: 36px 0 0; margin-top: 0;
}
.hp-footer-grid { display: grid; grid-template-columns: 1.4fr .8fr .8fr .8fr 1.1fr; gap: 30px; padding-bottom: 24px; }
.hp-footer-brand .hp-logo { margin-bottom: 14px; }
.hp-footer-brand .hp-logo img { height: 32px; }
.hp-footer-brand p { font-size: 12px; max-width: 280px; margin-bottom: 16px; }
.hp-footer-social { display: flex; gap: 10px; }
.hp-footer-social a {
    width: 32px; height: 32px; border: 1px solid var(--hp-border); border-radius: 50%;
    display: flex; align-items: center; justify-content: center; color: var(--hp-text-muted);
    transition: border-color var(--hp-transition), color var(--hp-transition);
}
.hp-footer-social a:hover { border-color: var(--hp-primary); color: var(--hp-primary); }
.hp-footer-col h5 { font-size: 13px; color: var(--hp-text); margin-bottom: 14px; }
.hp-footer-col ul { list-style: none; padding: 0; margin: 0 0 12px; }
.hp-footer-col li { margin-bottom: 10px; }
.hp-footer-col a { font-size: 12px; color: var(--hp-text-muted); text-decoration: none; }
.hp-footer-col a:hover { color: var(--hp-primary); }
.hp-locale-btn {
    display: inline-flex; align-items: center; gap: 8px; margin-top: 4px;
    background: #fff; border: 1px solid var(--hp-border); border-radius: 9px;
    padding: 8px 12px; font-size: 12px; font-weight: 700; color: var(--hp-text);
}
.hp-locale-btn:hover { border-color: var(--hp-primary); color: var(--hp-primary); }
.hp-footer-bottom {
    border-top: 1px solid var(--hp-border); padding: 18px 0;
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;
    font-size: 11px; color: var(--hp-text-light);
}
.hp-footer-bottom-links { display: flex; gap: 16px; }
.hp-footer-bottom-links a { color: var(--hp-text-light); }
.hp-footer-bottom-links a:hover { color: var(--hp-primary); }

/* ---------- Responsivo ---------- */
@media (max-width: 1199.98px) {
    .hp-client-nav .navbar-collapse { padding-bottom: 10px; }
    .hp-client-nav.main-navbar-wrapper { border-bottom: 0; }
    .hp-client-nav .navbar-collapse.show, .hp-client-nav .navbar-collapse.collapsing { border-bottom: 1px solid var(--hp-border); }
}
@media (max-width: 991.98px) {
    .hp-footer-grid { grid-template-columns: repeat(3, 1fr); }
    .hp-footer-brand { grid-column: span 3; }
}
@media (max-width: 575.98px) {
    .hp-bar { height: 64px; gap: 10px; }
    .hp-logo img { height: 30px; }
    .hp-actions { gap: 6px; }
    .hp-hero { padding: 30px 0 18px; }
    .hp-footer-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
    .hp-footer-brand { grid-column: 1 / -1; }
    .hp-footer-bottom { flex-direction: column; align-items: flex-start; }
}

/* Carrinho: ajustes finos (Standard Cart) */
body.hp-body #order-standard_cart .products .product { border-radius: var(--hp-radius) !important; background: #fff; }
body.hp-body #order-standard_cart .products .product header { background: var(--hp-primary-50) !important; border-radius: 0 !important; }
body.hp-body #order-standard_cart .products .product div.product-pricing { text-align: center; }
body.hp-body #order-standard_cart .products .product div.product-pricing span.price { font-size: 22px; letter-spacing: -0.02em; }
body.hp-body #order-standard_cart .products .product .btn-order-now { border-radius: 9px; padding: 9px 14px; font-size: 13px; }
body.hp-body #order-standard_cart .order-summary { background: var(--hp-primary-dark) !important; border-radius: var(--hp-radius) !important; overflow: hidden; border: 0 !important; box-shadow: var(--hp-shadow-md); }
body.hp-body #order-standard_cart .order-summary h2 { color: #fff; font-size: 18px; }
body.hp-body #order-standard_cart .order-summary .summary-container { border-radius: 0 0 var(--hp-radius) var(--hp-radius); }
body.hp-body #order-standard_cart .order-summary .total-due-today .amt, body.hp-body #order-standard_cart .order-summary .total-due-today span.amt { color: var(--hp-primary); font-family: var(--hp-font-heading); font-weight: 800; }
body.hp-body #order-standard_cart .product-info { background: var(--hp-primary-50); border: 1px solid var(--hp-border); border-radius: var(--hp-radius) !important; }
body.hp-body #order-standard_cart .product-info .product-title { font-family: var(--hp-font-heading); font-weight: 800; color: var(--hp-text); }
body.hp-body #order-standard_cart .sub-heading { border-top-color: var(--hp-border); }
body.hp-body #order-standard_cart .sub-heading span { background: #fff !important; color: var(--hp-primary) !important; font-weight: 800; }
body.hp-body #order-standard_cart .btn-checkout, body.hp-body #order-standard_cart #btnCompleteProductConfig, body.hp-body #order-standard_cart #btnCompleteOrder { border-radius: 10px; box-shadow: 0 5px 16px rgba(47, 91, 255, .2); }
body.hp-body .cart-sidebar .card, body.hp-body .sidebar .card { border-radius: var(--hp-radius) !important; overflow: hidden; }

/* =========================================================================
   Busca de domínio (página inicial) - padrão do site
   ========================================================================= */
.hp-domain { padding: 6px 0 12px; }
.hp-domain-card {
    display: flex; align-items: flex-start; gap: 26px;
    background: linear-gradient(130deg, rgba(245, 248, 255, .95), rgba(238, 243, 255, .7));
    border: 1px solid #dce6f5; border-radius: var(--hp-radius-lg);
    padding: 32px 36px; box-shadow: 0 18px 48px rgba(47, 91, 255, .07);
    position: relative; overflow: hidden;
}
.hp-domain-card:after {
    content: ''; position: absolute; right: -80px; top: -80px; width: 260px; height: 260px; border-radius: 50%;
    background: radial-gradient(circle, rgba(47, 91, 255, .12), transparent 70%); pointer-events: none;
}
.hp-domain-icon {
    width: 60px; height: 60px; flex-shrink: 0; border-radius: 50%;
    background: #fff; color: var(--hp-primary); box-shadow: 0 6px 18px rgba(47, 91, 255, .1);
    display: flex; align-items: center; justify-content: center; font-size: 24px;
}
.hp-domain-body { flex: 1; min-width: 0; position: relative; z-index: 1; }
.hp-domain-body h2 { font-size: clamp(20px, 2.4vw, 26px); margin-bottom: 6px; }
.hp-domain-body > p { font-size: 14px; margin-bottom: 18px; }
.hp-domain-form { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
.hp-domain-input {
    flex: 1 1 380px; display: flex; align-items: center; min-width: 0;
    background: #fff; border: 1.5px solid var(--hp-border); border-radius: 12px;
    transition: border-color var(--hp-transition), box-shadow var(--hp-transition);
}
.hp-domain-input:focus-within { border-color: var(--hp-primary); box-shadow: 0 0 0 4px rgba(42, 87, 255, .1); }
.hp-domain-input > i { color: var(--hp-text-light); padding: 0 4px 0 16px; }
.hp-domain-input input {
    flex: 1; min-width: 0; border: 0; outline: 0; background: transparent;
    padding: 14px 10px; font-size: 15px; color: var(--hp-text); font-family: var(--hp-font-body);
}
.hp-domain-input select {
    border: 0; border-left: 1px solid var(--hp-border); background: transparent; outline: 0;
    padding: 0 16px; height: 100%; min-height: 50px; font-weight: 800; color: var(--hp-text);
    font-family: var(--hp-font-heading); cursor: pointer;
}
.hp-domain-form .hp-btn { padding: 0 22px; min-height: 52px; font-size: 14px; border-radius: 12px; }
.hp-btn-ghost { background: #fff; color: var(--hp-primary) !important; border: 1px solid #cddcff; }
.hp-btn-ghost:hover { border-color: var(--hp-primary); background: var(--hp-primary-50); transform: translateY(-2px); }
.hp-tld-chips { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.hp-tld-chip {
    display: flex; flex-direction: column; align-items: center; min-width: 96px;
    background: #fff; border: 1px solid var(--hp-border); border-radius: 12px; padding: 9px 14px;
    text-decoration: none !important; transition: border-color var(--hp-transition), transform var(--hp-transition), box-shadow var(--hp-transition);
}
.hp-tld-chip:hover { border-color: var(--hp-primary); transform: translateY(-2px); box-shadow: var(--hp-shadow-sm); }
.hp-tld-chip strong { font-family: var(--hp-font-heading); color: var(--hp-primary); font-size: 15px; }
.hp-tld-chip span { font-size: 11px; color: var(--hp-text-light); }
.hp-domain-all { font-family: var(--hp-font-heading); font-weight: 800; font-size: 13px; }

/* =========================================================================
   Loja (lista de planos) - cards premium do site
   ========================================================================= */
body.hp-body #order-standard_cart.hp-store { padding-top: 6px; }
.hp-store-tabs {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 6px;
    background: #f0f4fbd9; border: 1px solid #e7edfa; border-radius: 999px;
    padding: 5px; width: fit-content; max-width: 100%; margin: 0 auto 30px;
    box-shadow: inset 0 1px 3px rgba(16, 39, 84, .02);
}
.hp-store-tab {
    display: inline-flex; align-items: center; gap: 7px; padding: 9px 16px; border-radius: 999px;
    font-family: var(--hp-font-heading); font-weight: 700; font-size: 13px; color: var(--hp-text-muted);
    text-decoration: none !important; white-space: nowrap; transition: background var(--hp-transition), color var(--hp-transition);
}
.hp-store-tab:hover { color: var(--hp-primary); background: #fff; }
.hp-store-tab.is-active { background: var(--hp-primary); color: #fff !important; box-shadow: var(--hp-shadow-sm); }
.hp-store-tab.is-action { color: var(--hp-primary); }
.hp-store-tab.is-action i { font-size: 12px; }
.hp-tab-badge { background: var(--hp-primary-100); color: var(--hp-primary); border-radius: 999px; font-size: 10px; padding: 1px 7px; }
.hp-store-head { text-align: center; max-width: 820px; margin: 0 auto 28px; }
.hp-store-head .hp-badge-pill i { font-size: 11px; }
.hp-store-head h1 { font-size: clamp(28px, 3.4vw, 40px); line-height: 1.1; margin-bottom: 10px; }
.hp-store-head p { font-size: 15px; margin: 0; }

body.hp-body #order-standard_cart .hp-plans-grid {
    display: grid; gap: 18px; align-items: stretch; margin: 0 0 22px;
    grid-template-columns: repeat(var(--plan-count, 3), minmax(0, 1fr));
}
body.hp-body #order-standard_cart .hp-plans-grid .hp-plan-card {
    position: relative; display: flex; flex-direction: column; float: none; margin: 0; width: auto;
    padding: 28px 22px 22px !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, .93), rgba(247, 250, 255, .7)) !important;
    border: 1px solid #dce6f5 !important; border-radius: 18px !important;
    box-shadow: 0 8px 26px rgba(23, 55, 130, .03) !important; overflow: visible;
    transition: transform var(--hp-transition), box-shadow var(--hp-transition), border-color var(--hp-transition);
}
body.hp-body #order-standard_cart .hp-plans-grid .hp-plan-card:hover { transform: translateY(-5px); border-color: #92afff !important; box-shadow: 0 14px 34px rgba(47, 91, 255, .08) !important; }
body.hp-body #order-standard_cart .hp-plans-grid .hp-plan-card.is-popular {
    border-color: var(--hp-primary) !important;
    background: linear-gradient(140deg, #fff, #eef3ff) !important;
    box-shadow: 0 18px 48px rgba(47, 91, 255, .1) !important;
}
.hp-plan-ribbon {
    position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%);
    background: var(--hp-gradient); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .06em;
    padding: 5px 15px; border-radius: 999px; text-transform: uppercase; white-space: nowrap;
    box-shadow: 0 6px 14px rgba(47, 91, 255, .25);
}
.hp-plan-symbol {
    display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%;
    background: #eef3ff; color: #2f5bff; font-size: 18px; margin-bottom: 14px; flex-shrink: 0;
}
body.hp-body #order-standard_cart .hp-plan-card h3 { font-size: 19px; margin: 0 0 4px; color: var(--hp-text); }
.hp-plan-tagline { font-size: 12px; color: var(--hp-text-light); margin-bottom: 16px; min-height: 18px; }
.hp-plan-price { line-height: 1.2; margin-bottom: 4px; }
.hp-plan-price small { display: block; font-size: 11px; color: var(--hp-text-light); }
.hp-plan-price .hp-amount { font-family: var(--hp-font-heading); font-size: 30px; font-weight: 800; color: var(--hp-text); letter-spacing: -0.035em; }
.hp-plan-card.is-popular .hp-plan-price .hp-amount { color: var(--hp-primary); }
.hp-plan-price .hp-period { font-size: 12px; color: var(--hp-text-light); font-weight: 600; margin-left: 2px; }
.hp-plan-note { font-size: 11px; color: var(--hp-text-light); line-height: 1.5; margin-bottom: 16px; }
.hp-plan-features { list-style: none; padding: 16px 0 0; margin: 0 0 20px; border-top: 1px dashed #dce6f5; }
.hp-plan-features li { display: flex; align-items: flex-start; gap: 9px; padding: 5px 0; font-size: 13px; color: var(--hp-text-muted); line-height: 1.45; }
.hp-plan-features li i { color: var(--hp-green); font-size: 13px; margin-top: 2px; flex-shrink: 0; }
.hp-plan-features li span:empty { display: none; }
.hp-plan-stock { font-size: 11px; color: var(--hp-text-light); }
body.hp-body #order-standard_cart .hp-plan-card .hp-plan-cta { margin-top: auto; padding: 12px 14px; font-size: 13px; }
.hp-store-assurance {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 26px; margin: 10px 0 10px;
    padding: 16px 20px; border: 1px solid #e7edfa; border-radius: 14px; background: #fbfcff;
    font-size: 12px; font-weight: 700; color: var(--hp-text-muted);
}
.hp-store-assurance i { color: var(--hp-primary); margin-right: 6px; }

/* =========================================================================
   Card do plano na tela de configuração
   ========================================================================= */
body.hp-body #order-standard_cart .product-info.hp-product-card {
    background: linear-gradient(140deg, #fff, #eef3ff) !important;
    border: 1px solid #cddcff !important; border-radius: 18px !important;
    padding: 22px 24px 8px !important; margin-bottom: 22px;
    box-shadow: 0 14px 34px rgba(47, 91, 255, .07);
}
.hp-product-card-head { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.hp-product-card-head .hp-plan-symbol { margin: 0; width: 48px; height: 48px; font-size: 20px; background: #fff; box-shadow: 0 6px 16px rgba(47, 91, 255, .1); }
.hp-product-card-head > div { flex: 1; min-width: 0; }
.hp-product-group { display: block; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: var(--hp-primary); }
body.hp-body #order-standard_cart .hp-product-card .product-title { font-family: var(--hp-font-heading); font-size: 24px; font-weight: 800; color: var(--hp-text); margin: 0; }
.hp-product-badge {
    display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800;
    color: var(--hp-green); background: var(--hp-green-bg); border: 1px solid #bbf7d0; border-radius: 999px; padding: 5px 11px;
}
.hp-product-features { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; margin: 16px 0 6px !important; }

/* Responsivo dos componentes novos */
@media (max-width: 1199.98px) {
    body.hp-body #order-standard_cart .hp-plans-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
    body.hp-body #order-standard_cart .hp-plans-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hp-domain-card { padding: 26px 22px; gap: 18px; }
}
@media (max-width: 767.98px) {
    .hp-domain-card { flex-direction: column; }
    .hp-domain-icon { width: 48px; height: 48px; font-size: 20px; }
    .hp-domain-form .hp-btn { flex: 1 1 auto; }
    .hp-store-tabs { border-radius: 16px; justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; width: 100%; }
    .hp-product-features { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
    body.hp-body #order-standard_cart .hp-plans-grid { grid-template-columns: 1fr; gap: 22px; }
    .hp-domain-input { flex-basis: 100%; }
    .hp-domain-input select { padding: 0 10px; }
}

.hp-store-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; margin: -16px 0 26px; }
.hp-store-actions a { font-family: var(--hp-font-heading); font-weight: 700; font-size: 13px; color: var(--hp-primary); text-decoration: none; }
.hp-store-actions a:hover { color: var(--hp-primary-600); text-decoration: underline; }
.hp-store-actions a i { font-size: 12px; margin-right: 4px; }

/* =========================================================================
   Carrinho: Registrar / Transferir domínio (padrão do site)
   ========================================================================= */
body.hp-body .domain-checker-container {
    background: var(--hp-gradient) !important; border-radius: var(--hp-radius-lg) !important;
    box-shadow: 0 18px 48px rgba(47, 91, 255, .14); overflow: hidden; position: relative;
}
body.hp-body .domain-checker-container:after {
    content: ''; position: absolute; right: -90px; top: -90px; width: 320px; height: 320px; border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .18), transparent 70%); pointer-events: none;
}
body.hp-body .domain-checker-bg { background-image: none !important; background: transparent !important; padding: 34px 0 !important; }
body.hp-body .domain-checker-container .input-group-box,
body.hp-body .domain-checker-container .domain-checker-advanced { border-radius: 14px !important; box-shadow: var(--hp-shadow-lg); border: 0 !important; }
body.hp-body .domain-checker-container textarea, body.hp-body .domain-checker-container .form-control { border: 1px solid var(--hp-border) !important; border-radius: 10px !important; font-size: 14px; }
body.hp-body .domain-checker-container .btn-primary { border-radius: 10px !important; }
body.hp-body .domain-checker-result-headline { font-family: var(--hp-font-heading); }
body.hp-body .domain-checker-available { color: var(--hp-green) !important; }
body.hp-body .domain-checker-unavailable { color: #dc2626 !important; }
body.hp-body .tld-filters a, body.hp-body .tld-filters .badge {
    display: inline-flex; align-items: center; background: #fff !important; color: var(--hp-text-muted) !important;
    border: 1px solid var(--hp-border) !important; border-radius: 999px !important; padding: 7px 14px !important;
    font-family: var(--hp-font-heading); font-weight: 700; font-size: 12px; margin: 0 6px 6px 0; text-decoration: none;
}
body.hp-body .tld-filters a:hover { border-color: var(--hp-primary) !important; color: var(--hp-primary) !important; }
body.hp-body .tld-filters a.badge-success, body.hp-body .tld-filters a.active, body.hp-body .tld-filters .badge-success {
    background: var(--hp-primary) !important; border-color: var(--hp-primary) !important; color: #fff !important;
}
body.hp-body .domain-pricing { background: #fff; border: 1px solid var(--hp-border); border-radius: var(--hp-radius); overflow: hidden; box-shadow: var(--hp-shadow-sm); }
body.hp-body .domain-pricing .tld-pricing-header { background: var(--hp-primary-50) !important; }
body.hp-body .domain-pricing .tld-pricing-header div,
body.hp-body .domain-pricing .tld-pricing-header .tld-column {
    background: transparent !important; border-bottom: 2px solid var(--hp-primary) !important;
    font-family: var(--hp-font-heading); font-weight: 800; color: var(--hp-text); padding: 12px 6px !important;
}
body.hp-body .domain-pricing .tld-row { border-top: 1px solid var(--hp-border); background: #fff !important; }
body.hp-body .domain-pricing .tld-row:hover { background: var(--hp-primary-50) !important; }
body.hp-body .domain-pricing .tld-row strong, body.hp-body .domain-pricing .tld-row .col-sm-4 { font-family: var(--hp-font-heading); font-weight: 800; color: var(--hp-primary); }
body.hp-body .domain-pricing .two-row-center { border-left-color: var(--hp-border) !important; }
body.hp-body .spotlight-tlds .spotlight-tld {
    background: #fff !important; border: 1px solid var(--hp-border) !important; border-radius: 14px !important; box-shadow: var(--hp-shadow-sm);
}
body.hp-body .domain-promo-box {
    background: linear-gradient(140deg, #fff, #eef3ff) !important; border: 1px solid #cddcff !important;
    border-radius: 18px !important; box-shadow: 0 14px 34px rgba(47, 91, 255, .07); padding: 24px 26px !important;
}
body.hp-body .domain-promo-box i { color: var(--hp-primary) !important; opacity: .9; }
body.hp-body .domain-promo-box h3 { font-family: var(--hp-font-heading); font-weight: 800; color: var(--hp-text); }
body.hp-body .domain-promo-box .text-warning { color: var(--hp-primary) !important; }
body.hp-body .domain-promo-box .btn-warning, body.hp-body .domain-promo-box .btn {
    background: var(--hp-gradient) !important; border: 0 !important; color: #fff !important; border-radius: 10px !important;
    font-family: var(--hp-font-heading); font-weight: 700; box-shadow: 0 5px 16px rgba(47, 91, 255, .2);
}
body.hp-body #order-standard_cart .domain-selected, body.hp-body #order-standard_cart .domain-lookup-result .domain-available { border-radius: var(--hp-radius-sm); }
body.hp-body .domain-pricing .tld-pricing-header { border-bottom: 2px solid var(--hp-primary) !important; }
body.hp-body .domain-pricing .tld-pricing-header div,
body.hp-body .domain-pricing .tld-pricing-header .tld-column { border-bottom: 0 !important; }
body.hp-body .domain-pricing .tld-pricing-header .row { margin: 0; }

/* =========================================================================
   Ferramentas da hospedagem (Web / WordPress) - igual à seção do site
   ========================================================================= */
.hp-tech { margin: 34px 0 6px; }
.hp-tech-head h2 { font-size: clamp(24px, 3vw, 32px); margin-bottom: 8px; }
.hp-tech-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.hp-tech-card {
    position: relative; display: flex; flex-direction: column; overflow: hidden;
    background: linear-gradient(145deg, rgba(255, 255, 255, .94), rgba(247, 249, 255, .84));
    border: 1px solid #e3eaf8; border-radius: 18px; padding: 24px 20px 22px;
    box-shadow: 0 4px 18px rgba(23, 55, 130, .03);
    transition: transform var(--hp-transition), box-shadow var(--hp-transition), border-color var(--hp-transition);
}
.hp-tech-card:before { content: ''; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--tech-color); opacity: .85; }
.hp-tech-card:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(47, 91, 255, .08); border-color: var(--tech-color); }
.hp-tech-icon {
    display: flex; align-items: center; justify-content: center; width: 62px; height: 62px; border-radius: 17px; margin-bottom: 16px;
    background: linear-gradient(145deg, #fff, var(--tech-bg)); box-shadow: inset 0 0 0 1px #e6ecf8, 0 6px 16px rgba(23, 55, 130, .06);
}
.hp-tech-icon img { width: 40px; height: 40px; object-fit: contain; display: block; }
.hp-tech-tag {
    align-self: flex-start; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;
    color: var(--tech-color); background: var(--tech-bg); border-radius: 999px; padding: 4px 10px; margin-bottom: 10px;
}
.hp-tech-card h3 { font-size: 18px; margin-bottom: 8px; }
.hp-tech-card p { font-size: 13px; line-height: 1.6; margin: 0; }
.hp-tech-perf { --tech-color: #ea7a0c; --tech-bg: #fff3e3; }
.hp-tech-security { --tech-color: #15964a; --tech-bg: #e8f8ee; }
.hp-tech-backup { --tech-color: #7044e0; --tech-bg: #f1ecff; }
.hp-tech-installer { --tech-color: #2f5bff; --tech-bg: #eaf0ff; }
.hp-tech-inline { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px 0 10px; margin-top: 6px; border-top: 1px dashed #cddcff; }
.hp-tech-inline-label { font-size: 12px; font-weight: 800; color: var(--hp-text); margin-right: 4px; }
.hp-tech-chip {
    display: inline-flex; align-items: center; gap: 7px; background: #fff; border: 1px solid var(--hp-border);
    border-radius: 999px; padding: 4px 11px 4px 5px; font-size: 12px; font-weight: 700; color: var(--hp-text);
}
.hp-tech-chip img { width: 20px; height: 20px; object-fit: contain; }

/* =========================================================================
   Carrinho sem coluna lateral (domínio e configuração)
   ========================================================================= */
body.hp-body #order-standard_cart.hp-cart-full .cart-body { width: 100% !important; float: none !important; padding: 0 !important; }
body.hp-body #order-standard_cart.hp-cart-full .header-lined { text-align: center; margin-bottom: 8px; }
body.hp-body #order-standard_cart.hp-cart-full .header-lined h1 { font-size: clamp(28px, 3.4vw, 40px); }
body.hp-body #order-standard_cart.hp-cart-full .header-lined + p,
body.hp-body #order-standard_cart.hp-cart-full .cart-body > p { text-align: center; }

/* Busca simples de domínio no carrinho (igual à página inicial) */
body.hp-body .domain-checker-container .input-group-box {
    display: flex; flex-wrap: nowrap; background: #fff; border-radius: 14px !important; padding: 6px; box-shadow: var(--hp-shadow-lg);
}
body.hp-body .domain-checker-container #inputDomain {
    height: 54px; border: 0 !important; box-shadow: none !important; font-size: 16px; padding: 0 16px;
    background: transparent; color: var(--hp-text);
}
body.hp-body .domain-checker-container .input-group-btn .btn,
body.hp-body .domain-checker-container .input-group-append .btn {
    height: 54px; padding: 0 28px; border-radius: 10px !important; font-size: 15px;
    background: var(--hp-gradient) !important; border: 0 !important;
}

@media (max-width: 991.98px) { .hp-tech-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) {
    .hp-tech-grid { grid-template-columns: 1fr; gap: 12px; }
    body.hp-body .domain-checker-container #inputDomain { font-size: 14px; }
    body.hp-body .domain-checker-container .input-group-btn .btn, body.hp-body .domain-checker-container .input-group-append .btn { padding: 0 16px; }
}

/* =========================================================================
   Passo "Escolha um domínio" da hospedagem + ajustes da página de domínio
   ========================================================================= */
body.hp-body #order-standard_cart.hp-cart-full > .row { margin-left: 0; margin-right: 0; }
body.hp-body #order-standard_cart .domain-pricing h4,
body.hp-body #order-standard_cart .domain-pricing > h3,
body.hp-body #order-standard_cart .domain-pricing .tld-filters { padding-left: 20px; padding-right: 20px; }
body.hp-body #order-standard_cart .domain-pricing h4 { padding-top: 18px; font-family: var(--hp-font-heading); font-weight: 800; color: var(--hp-text); }

body.hp-body #order-standard_cart .domain-selection-options { max-width: 900px; margin: 0 auto; }
body.hp-body #order-standard_cart .domain-selection-options .option {
    background: #fff !important; border: 1px solid var(--hp-border) !important; border-radius: 16px !important;
    padding: 16px 22px !important; margin-bottom: 12px !important; box-shadow: var(--hp-shadow-sm);
    transition: border-color var(--hp-transition), box-shadow var(--hp-transition), background var(--hp-transition);
}
body.hp-body #order-standard_cart .domain-selection-options .option:hover { border-color: #b9ccff !important; }
body.hp-body #order-standard_cart .domain-selection-options .option-selected {
    background: linear-gradient(140deg, #fff, #eef3ff) !important; border-color: var(--hp-primary) !important;
    box-shadow: 0 14px 34px rgba(47, 91, 255, .08);
}
body.hp-body #order-standard_cart .domain-selection-options .option > label {
    font-family: var(--hp-font-heading); font-weight: 700; font-size: 15px; color: var(--hp-text); margin: 0; cursor: pointer;
}
body.hp-body #order-standard_cart .domain-selection-options .domain-input-group { padding-top: 14px; margin-top: 12px; border-top: 1px dashed #cddcff; }
body.hp-body #order-standard_cart .domain-selection-options .form-control,
body.hp-body #order-standard_cart .domain-selection-options .input-group-text { height: 48px; font-size: 15px; }
body.hp-body #order-standard_cart .domain-selection-options .input-group-text {
    background: var(--hp-primary-50); color: var(--hp-primary); font-weight: 800; border-color: var(--hp-border);
}
body.hp-body #order-standard_cart .domain-selection-options .btn-primary { height: 48px; border-radius: 10px !important; font-size: 15px; }
body.hp-body #order-standard_cart #DomainSearchResults .domain-checker-available,
body.hp-body #order-standard_cart #DomainSearchResults .domain-checker-unavailable { font-family: var(--hp-font-heading); font-weight: 800; }
body.hp-body #order-standard_cart #DomainSearchResults .btn-primary,
body.hp-body #order-standard_cart #DomainSearchResults .btn-success { border-radius: 10px !important; }

/* Card de domínio no celular: conteúdo ocupa a largura do card (sem corte à direita) */
@media (max-width: 767.98px) {
    .hp-domain-card { align-items: stretch; padding: 22px 18px; }
    .hp-domain-body { width: 100%; }
    .hp-domain-form { flex-direction: column; }
    .hp-domain-input, .hp-domain-form .hp-btn { width: 100%; flex: 0 0 auto; }
    .hp-domain-input input { min-width: 0; width: 100%; }
    .hp-tld-chips { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
    .hp-tld-chip { min-width: 0; padding: 8px 6px; }
}

/* Botões do card de domínio sem a borda padrão do navegador */
.hp-domain-form .hp-btn { border: 0; }
.hp-domain-form .hp-btn-ghost { border: 1px solid #cddcff; }

/* =========================================================================
   Menu do celular organizado em seções (Produtos / Empresa / Central do Cliente)
   ========================================================================= */
/* Computador: a barra de menus do WHMCS fica sempre aberta, como antes */
@media (min-width: 1200px) {
    .hp-client-menu { display: flex; flex: 1 1 auto; align-items: center; }
    .hp-client-menu-body.collapse { display: flex !important; flex: 1 1 auto; align-items: center; }
    .hp-client-menu-body > .navbar-nav { flex-direction: row; }
}
/* Celular/tablet */
@media (max-width: 1199.98px) {
    .hp-client-nav .navbar-collapse { max-height: calc(100vh - 64px); overflow-y: auto; padding: 4px 0 16px; }
    .hp-mobile-site { display: block; padding: 6px 0 0; border-bottom: 0; margin: 0; }
    .hp-acc, .hp-client-menu { border-bottom: 1px solid var(--hp-border); }
    .hp-acc > summary, .hp-acc-toggle, .hp-acc-link {
        display: flex; align-items: center; justify-content: space-between; width: 100%;
        padding: 15px 6px; background: none; border: 0; cursor: pointer; list-style: none;
        font-family: var(--hp-font-heading); font-weight: 800; font-size: 16px; color: var(--hp-text) !important;
        text-decoration: none !important; text-align: left;
    }
    .hp-acc > summary::-webkit-details-marker { display: none; }
    .hp-acc > summary i, .hp-acc-toggle i { font-size: 12px; color: var(--hp-text-light); transition: transform .25s ease, color .25s ease; }
    .hp-acc[open] > summary i, .hp-acc-toggle:not(.collapsed) i { transform: rotate(180deg); color: var(--hp-primary); }
    .hp-acc[open] > summary, .hp-acc-toggle:not(.collapsed) { color: var(--hp-primary) !important; }
    .hp-acc-link { border-bottom: 1px solid var(--hp-border); }
    .hp-acc-link i { font-size: 13px; color: var(--hp-text-light); }
    .hp-acc-body { display: flex; flex-direction: column; gap: 2px; padding: 0 0 12px; }
    .hp-mobile-site .hp-acc-body a {
        display: flex; align-items: center; gap: 12px; padding: 11px 10px; border-radius: 10px;
        font-weight: 700; font-size: 15px; color: var(--hp-text-muted); text-decoration: none;
    }
    .hp-mobile-site .hp-acc-body a i { width: 18px; text-align: center; color: var(--hp-primary); }
    .hp-mobile-site .hp-acc-body a:hover, .hp-mobile-site .hp-acc-body a:active { background: var(--hp-bg-soft); color: var(--hp-primary); }
    .hp-client-menu-body { padding: 0 0 10px; }
    .hp-client-menu-body .navbar-nav > li > a { padding: 11px 10px !important; font-size: 15px; border-radius: 10px; }
    .hp-client-menu-body .navbar-nav > li > a:hover { background: var(--hp-bg-soft); }
    .hp-client-menu-body .dropdown-menu { box-shadow: none; border: 0; background: var(--hp-bg-soft); margin: 0 0 6px 10px; }
    .hp-mobile-cta { display: flex; flex-direction: column; gap: 10px; padding: 18px 0 6px; }
    .hp-mobile-cta .hp-btn { width: 100%; padding: 14px 16px; font-size: 15px; }
}
@media (max-width: 1199.98px) {
    .hp-mobile-site a.hp-acc-link {
        padding: 15px 6px; border-radius: 0; font-family: var(--hp-font-heading); font-weight: 800; font-size: 16px; color: var(--hp-text);
    }
    .hp-mobile-site a.hp-acc-link:hover { background: none; color: var(--hp-primary); }
    .hp-acc-toggle:focus, .hp-acc > summary:focus { outline: none; box-shadow: none; }
    .hp-acc-toggle:focus-visible, .hp-acc > summary:focus-visible { outline: 2px solid rgba(42, 87, 255, .35); outline-offset: 2px; border-radius: 8px; }
}

/* ---------- Contratos longos no pedido (hook hostprospera_cycles.php) ---------- */
.hp-cycle-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 8px 0 4px; }
.hp-cycle-card { position: relative; display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 14px 14px 12px; border: 1.5px solid var(--hp-border); border-radius: var(--hp-radius-sm); background: var(--hp-bg); cursor: pointer; font: inherit; font-weight: 400; text-align: left; margin: 0; width: 100%; transition: border-color var(--hp-transition), box-shadow var(--hp-transition); }
.hp-cycle-card:focus-visible { outline: 2px solid var(--hp-primary); outline-offset: 2px; }
.hp-cycle-card:hover { border-color: #b9c7ff; }
.hp-cycle-card.is-active { border-color: var(--hp-primary); box-shadow: 0 0 0 3px var(--hp-primary-100); }
.hp-cycle-head { display: flex; align-items: center; justify-content: space-between; gap: 6px; flex-wrap: wrap; }
.hp-cycle-head strong { font-family: var(--hp-font-heading); font-size: 15px; color: var(--hp-text); }
.hp-cycle-off { font-size: 10px; font-weight: 800; color: var(--hp-green); background: var(--hp-green-bg); border-radius: 999px; padding: 2px 8px; white-space: nowrap; }
.hp-cycle-price { font-size: 12px; color: var(--hp-text-muted); }
.hp-cycle-price s { color: var(--hp-text-light); margin-right: 2px; }
.hp-cycle-price b { font-family: var(--hp-font-heading); font-size: 20px; font-weight: 800; color: var(--hp-text); letter-spacing: -0.02em; }
.hp-cycle-card.is-active .hp-cycle-price b { color: var(--hp-primary); }
.hp-cycle-note { font-size: 11px; color: var(--hp-text-light); line-height: 1.4; }
select.hp-cycle-select { display: none !important; }
.hp-plan-price .hp-plan-was { display: flex; align-items: center; gap: 8px; margin-bottom: 2px; font-size: 13px; color: var(--hp-text-light); font-weight: 600; }
@media (max-width: 767px) {
    .hp-cycle-cards { grid-template-columns: 1fr; }
}
