/* Nueva Atlantis: shared layout for every public and administration screen. */
html[data-guide-page] {
  --ocean:#173e3b; --ocean-mid:#386b5e; --ocean-light:#b85b38;
  --sand:#f0eee5; --dusk:#173e3b; --dusk-2:#204b42; --text:#173e3b;
  --muted:#687970; --border:#dce3d8; --radius:16px; --radius-sm:10px;
  --shadow:0 8px 28px #173e3b08; --shadow-lg:0 16px 40px #173e3b12;
  --bs-body-bg:#faf9f5; --bs-body-color:#173e3b;
  --bs-primary:#173e3b; --bs-link-color:#386b5e;
  scroll-padding-top:100px;
}
html[data-guide-page] body { margin:0; background:#faf9f5; color:#173e3b; font-family:'Plus Jakarta Sans',sans-serif; line-height:1.65; }
html[data-guide-page] h1,html[data-guide-page] h2 { font-family:Fraunces,serif; letter-spacing:-.03em; }
html[data-guide-page] h3,html[data-guide-page] h4,html[data-guide-page] h5 { color:#173e3b; }
html[data-guide-page] a { text-underline-offset:4px; }
html[data-guide-page] img { max-width:100%; }
html[data-guide-page] h1,html[data-guide-page] h2,html[data-guide-page] h3 { overflow-wrap:anywhere; }
html[data-guide-page] .form-control,html[data-guide-page] .form-select { max-width:100%; }
html[data-guide-page] textarea { resize:vertical; }
html[data-guide-page] .row>* { min-width:0; }
html[data-guide-page] .form-check { min-height:44px; }
html[data-guide-page] .table-responsive { max-width:100%; }
html[data-guide-page] .reveal { opacity:1 !important; transform:none !important; }
html[data-guide-page] :focus-visible { outline:3px solid #b85b38; outline-offset:4px; }
.guide-skip { position:absolute; top:-90px; left:16px; z-index:2000; padding:12px 20px; background:#fff; color:#173e3b; border-radius:8px; }
.guide-skip:focus { top:12px; }
html[data-guide-page] body #siteNav { position:sticky; top:0; z-index:1000; background:#173e3b !important; border-bottom:1px solid #ffffff1f; backdrop-filter:none !important; }
.guide-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:88px; }
.guide-header-inner { min-height:112px; }
.guide-header .guide-brand { width:255px; aspect-ratio:2164/470; background:url('/images/logo-nueva-atlantis.png') center/contain no-repeat; }
.guide-header .guide-brand>span { display:none; }
.guide-logo { width:255px; height:auto; display:block; object-fit:contain; }
.guide-footer .guide-logo { width:300px; max-width:100%; }
.guide-brand { display:inline-flex; align-items:center; gap:11px; color:#173e3b; text-decoration:none; flex-shrink:0; font-family:Fraunces,serif; font-size:1.4rem; font-weight:600; line-height:1.15; }
.guide-brand-symbol { font-family:serif; color:#b85b38; font-size:2.7rem; line-height:1; }
.guide-brand small { display:block; margin-top:6px; font-family:'Plus Jakarta Sans',sans-serif; color:#687970; font-size:.58rem; font-weight:500; text-transform:uppercase; letter-spacing:.15em; }
.guide-desktop-nav { display:flex; gap:22px; align-items:center; }
.guide-desktop-nav a { text-decoration:none; color:#687970; font-size:.8rem; font-weight:600; padding:10px 0; }
.guide-desktop-nav a:hover,.guide-desktop-nav [aria-current] { color:#173e3b; border-bottom:2px solid #b85b38; }
.guide-header-actions { display:flex; align-items:center; gap:18px; }
.guide-signin { font-size:.8rem; color:#173e3b; text-decoration:none; }
.guide-publish-button { display:flex; gap:14px; align-items:center; background:#173e3b; color:#fff; border-radius:9px; padding:11px 16px; font-size:.77rem; font-weight:600; text-decoration:none; white-space:nowrap; }
.guide-publish-button:hover { background:#386b5e; color:#fff; }
.guide-account { position:relative; }
.guide-account summary { cursor:pointer; font-size:.8rem; color:#173e3b; list-style:none; display:flex; gap:8px; align-items:center; }
.guide-account summary::-webkit-details-marker,.guide-mobile-nav summary::-webkit-details-marker { display:none; }
.guide-account-menu { position:absolute; top:calc(100% + 24px); right:0; width:210px; background:#fff; padding:10px; border:1px solid #dce3d8; border-radius:12px; box-shadow:var(--shadow-lg); }
.guide-account-menu a { display:block; padding:9px 12px; font-size:.8rem; color:#173e3b; text-decoration:none; border-radius:6px; }
.guide-account-menu a:hover { background:#eef2e9; }
.guide-header .guide-brand { color:#fff; }
.guide-header .guide-brand-symbol { color:#e7b98d; }
.guide-header .guide-brand small { color:#c1d1c7; }
.guide-header .guide-desktop-nav a { color:#c1d1c7; }
.guide-header .guide-desktop-nav a:hover,.guide-header .guide-desktop-nav [aria-current] { color:#fff; border-bottom-color:#e7b98d; }
.guide-header .guide-signin,.guide-header .guide-account summary { color:#fff; }
.guide-header .guide-publish-button { background:#e7b98d; color:#173e3b; }
.guide-header .guide-publish-button:hover { background:#f2cca6; color:#173e3b; }
.guide-header .guide-mobile-nav summary { color:#fff; border-color:#ffffff3f; }
.guide-header .guide-mobile-nav nav { background:#173e3b; border-bottom-color:#ffffff2f; }
.guide-header .guide-mobile-nav nav a { color:#fff; border-bottom-color:#ffffff1f; }
/* Keep the previous navigation readable while shared includes synchronize. */
html[data-guide-page] #navMenu>a { color:#e8eee9 !important; }
html[data-guide-page] #navMenu>a:hover { color:#fff !important; background:#ffffff12 !important; }
html[data-guide-page] #navMenu>a[href$="registro.php"] { background:#e7b98d !important; color:#173e3b !important; box-shadow:none !important; }
@media(max-width:768px) { html[data-guide-page] #navMenu { background:#173e3b !important; } }
.guide-mobile-nav { display:none; }
#guide-content { scroll-margin-top:100px; }
.guide-footer { background:#173e3b; padding:64px 0 24px; margin-top:0; color:#bdcec6; border:0; }
.guide-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.4fr; gap:48px; }
.guide-footer .guide-brand { color:#fff; }
.guide-footer .guide-brand small { color:#bdcec6; }
.guide-footer p { color:#bdcec6; font-size:.82rem; line-height:1.9; margin-top:22px; }
.guide-footer-intro p { max-width:320px; }
.guide-footer h2 { color:#e7b98d; font-family:'Plus Jakarta Sans',sans-serif; font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; margin:6px 0 22px; }
.guide-footer-grid>div>a:not(.guide-brand) { display:block; font-size:.79rem; text-decoration:none; margin-bottom:12px; color:#d5e0d9; }
.guide-footer-grid>div>a:hover { color:#e7b98d; }
.guide-footer-grid>div>.guide-footer-publish { color:#e7b98d; font-weight:600; }
.guide-footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid #ffffff1f; margin-top:40px; padding-top:20px; color:#a9bdb4; font-size:.68rem; }
.guide-footer-bottom a { color:inherit; }
.guide-inline-publish { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; border:1px solid #dce3d8; background:#eef2e9; padding:18px 22px; border-radius:10px; color:#687970; font-size:.8rem; }
.guide-inline-publish a { color:#173e3b; text-decoration:none; font-weight:700; }
/* Public results: shorter introductory band, filter bar, spacious catalog cards. */
html[data-guide-page] .page-hero,html[data-guide-page] .blog-hero { background:#eef2e9; padding:56px 24px; text-align:left; }
html[data-guide-page] .page-hero::before,html[data-guide-page] .blog-hero::before { display:none; }
html[data-guide-page] .page-hero::after,html[data-guide-page] .blog-hero::after { display:none; }
html[data-guide-page] .page-hero .container-xl { text-align:left !important; }
html[data-guide-page] .page-hero h1,html[data-guide-page] .blog-hero h1 { color:#173e3b !important; font-size:clamp(2.3rem,4vw,3.6rem); max-width:850px; }
html[data-guide-page] .page-hero p,html[data-guide-page] .blog-hero p { color:#687970 !important; margin-left:0 !important; max-width:660px; }
html[data-guide-page] .filter-card { background:#fff; border:1px solid #dce3d8; border-radius:14px; padding:24px; box-shadow:none; }
html[data-guide-page] .com-listing { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
html[data-guide-page] .listing-card { background:#fff; border:1px solid #dce3d8; border-radius:14px; box-shadow:none; overflow:hidden; }
html[data-guide-page] .listing-card:hover,html[data-guide-page] .blog-card:hover,html[data-guide-page] .card:hover { transform:none; box-shadow:0 8px 28px #173e3b0d; }
html[data-guide-page] .listing-img { aspect-ratio:3/2; height:auto; }
html[data-guide-page] .listing-img img { width:100%; height:100%; object-fit:cover; }
html[data-guide-page] .listing-body { padding:22px; }
html[data-guide-page] .listing-body h5 { font-family:'Plus Jakarta Sans',sans-serif; font-size:1.05rem; font-weight:700; }
html[data-guide-page] .listing-body p { color:#687970; line-height:1.75; }
html[data-guide-page] .btn-ver { background:none; box-shadow:none; padding:15px 0 0; border-radius:0; border-top:1px solid #e9ede4; color:#173e3b; justify-content:space-between; width:100%; }
html[data-guide-page] .btn-buscar,html[data-guide-page] .btn-read,html[data-guide-page] .btn-send,html[data-guide-page] .btn-login,html[data-guide-page] .btn-register { background:#173e3b; color:white; box-shadow:none; border:0; border-radius:9px; min-height:46px; }
html[data-guide-page] .badge-plan { background:#faf9f5; color:#173e3b; border:1px solid #dce3d8; box-shadow:none; border-radius:20px; }
html[data-guide-page] .stars-pos,html[data-guide-page] .stars-badge { display:none; }
.na-pagination { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:20px; padding:0 20px 48px; }
.na-pagination a { padding:12px 20px; border-radius:8px; background:#173e3b; color:#fff; text-decoration:none; font-size:.85rem; }
.na-pagination span { font-size:.85rem; }
/* Commerce detail: quiet cover, gallery and a clear contact column. */
html[data-guide-page] .comercio-hero { height:360px; }
html[data-guide-page] .comercio-hero-bg { transform:none; }
html[data-guide-page] .comercio-hero-overlay { background:linear-gradient(transparent,#173e3be6); }
html[data-guide-page] .comercio-hero h1 { color:#fff; font-size:clamp(2rem,4vw,3.6rem); }
html[data-guide-page] .comercio-hero .hero-wave,html[data-guide-page] .article-hero-wave { display:none; }
html[data-guide-page] .hero-cat-tag { background:#faf9f5; color:#173e3b; border:0; border-radius:7px; }
html[data-guide-page] .comercio-body { background:#faf9f5; padding:48px 0; }
html[data-guide-page] .desc-card,html[data-guide-page] .map-card,html[data-guide-page] .sidebar-card { border:1px solid #dce3d8; border-radius:14px; box-shadow:none; background:#fff; }
html[data-guide-page] .sidebar-card { position:static; }
html[data-guide-page] .desc-card h3,html[data-guide-page] .map-header h3,html[data-guide-page] .sidebar-card h4 { font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:1.08rem; }
html[data-guide-page] .gallery-main { border-radius:14px; background:#eef2e9; }
html[data-guide-page] .spec-item { background:#eef2e9; border-radius:10px; border:0; }
html[data-guide-page] .contact-btn { border-radius:10px; border:1px solid #dce3d8; box-shadow:none; }
/* Editorial pages: same catalog style and legible article width. */
html[data-guide-page] .blog-section,html[data-guide-page] .article-wrap { background:#faf9f5; padding:48px 24px; }
html[data-guide-page] .blog-card-featured { background:#eef2e9; border-radius:16px; border:1px solid #dce3d8; box-shadow:none; }
html[data-guide-page] .feat-body { padding:40px; }
html[data-guide-page] .feat-body h2 { color:#173e3b; }
html[data-guide-page] .blog-card,html[data-guide-page] .related-card { background:#fff; border:1px solid #dce3d8; border-radius:14px; box-shadow:none; }
html[data-guide-page] .blog-card h5 { font-family:'Plus Jakarta Sans',sans-serif; color:#173e3b; font-weight:700; }
html[data-guide-page] .article-hero { height:360px; }
html[data-guide-page] .article-hero-overlay { background:linear-gradient(transparent,#173e3be6); }
html[data-guide-page] .article-hero h1 { color:#fff; }
html[data-guide-page] .article-inner { max-width:800px; }
html[data-guide-page] .article-content { color:#294c42; font-size:1.05rem; line-height:1.95; }
html[data-guide-page] .article-lead { border-left:3px solid #b85b38; background:#eef2e9; padding:24px; border-radius:0 12px 12px 0; }
html[data-guide-page] .related-section { background:#eef2e9; }
/* Account screens: compact split layout with a consistent white form card. */
html[data-guide-page] .login-page { min-height:620px; background:#faf9f5; grid-template-columns:1fr 1fr; max-width:1280px; margin:40px auto; border:1px solid #dce3d8; border-radius:20px; overflow:hidden; }
html[data-guide-page] .login-page { width:calc(100% - 48px); max-width:1200px; }
html[data-guide-page] .login-visual { background:#173e3b; }
html[data-guide-page] .login-visual-overlay { background:linear-gradient(145deg,#173e3be6,#285b4d99); }
html[data-guide-page] .login-visual-bg { transform:none; }
html[data-guide-page] .login-visual img { filter:none; opacity:1; width:320px; height:auto; max-width:100%; }
html[data-guide-page] .login-visual h2 { color:#fff; font-size:2.5rem; }
html[data-guide-page] .login-visual h2 em { color:#e7b98d; }
html[data-guide-page] .login-form-side { background:white; padding:44px; }
html[data-guide-page] .login-form-inner h1 { font-size:2.4rem; }
html[data-guide-page] .register-page { background:#faf9f5; min-height:auto; padding:64px 24px; }
html[data-guide-page] .register-page::before { display:none; }
html[data-guide-page] .register-grid { grid-template-columns:1fr 1fr; gap:64px; max-width:1060px; }
html[data-guide-page] .register-card { border:1px solid #dce3d8; border-radius:16px; box-shadow:none; background:#fff; }
html[data-guide-page] .register-promo h1 { color:#173e3b; }
html[data-guide-page] .register-promo h1 em { color:#b85b38; }
html[data-guide-page] .promo-tag { background:#eef2e9; color:#386b5e; border:1px solid #dce3d8; }
html[data-guide-page] .promo-benefit .icon,html[data-guide-page] .promo-benefit i { color:#386b5e; }
html[data-guide-page] .form-control,html[data-guide-page] .form-select,html[data-guide-page] .field-wrap input,html[data-guide-page] .sidebar-card input,html[data-guide-page] .sidebar-card textarea {
  background:#fff; color:#173e3b; border:1px solid #cfd9cb; border-radius:9px; min-height:46px; font-size:16px; box-shadow:none;
}
html[data-guide-page] .form-control:focus,html[data-guide-page] .form-select:focus,html[data-guide-page] .field-wrap input:focus { border-color:#386b5e; box-shadow:0 0 0 3px #386b5e18; }
html[data-guide-page] input::placeholder,html[data-guide-page] textarea::placeholder { color:#829086; opacity:1; }
html[data-guide-page] .field-group label,html[data-guide-page] .form-label { color:#294c42; text-transform:none; letter-spacing:0; font-size:.83rem; font-weight:600; }
html[data-guide-page] .field-wrap .field-icon { color:#687970; }
html[data-guide-page] .form-eyebrow,html[data-guide-page] .form-sub { color:#687970; }
html[data-guide-page] .btn-primary,html[data-guide-page] .btn-success,html[data-guide-page] .btn-login { --bs-btn-bg:#173e3b; --bs-btn-border-color:#173e3b; --bs-btn-hover-bg:#386b5e; --bs-btn-hover-border-color:#386b5e; --bs-btn-active-bg:#386b5e; }
html[data-guide-page] .btn-secondary { --bs-btn-bg:#eef2e9; --bs-btn-color:#173e3b; --bs-btn-border-color:#dce3d8; --bs-btn-hover-bg:#dce3d8; --bs-btn-hover-color:#173e3b; }
html[data-guide-page] .btn-info { --bs-btn-bg:#e5ede0; --bs-btn-color:#173e3b; --bs-btn-border-color:#cbd9c4; --bs-btn-hover-bg:#d4e1cd; --bs-btn-hover-color:#173e3b; }
html[data-guide-page] .btn-warning { --bs-btn-bg:#f0dfc5; --bs-btn-color:#674825; --bs-btn-border-color:#e0c79e; --bs-btn-hover-bg:#e7d2b1; --bs-btn-hover-color:#674825; }
html[data-guide-page] .btn-danger { --bs-btn-bg:#f9e7e3; --bs-btn-color:#a23d35; --bs-btn-border-color:#eac4bd; --bs-btn-hover-bg:#a23d35; --bs-btn-hover-color:#fff; }
html[data-guide-page] .btn-outline-light { --bs-btn-color:#173e3b; --bs-btn-border-color:#b8c8b7; --bs-btn-hover-bg:#173e3b; --bs-btn-hover-color:white; }
html[data-guide-page] .btn { border-radius:9px; font-size:.83rem; padding:11px 18px; }
.guide-screen { min-height:calc(100vh - 88px); }
.guide-surface { background:#faf9f5 !important; color:#173e3b !important; }
.guide-panel { background:#fff; border:1px solid #dce3d8; border-radius:16px !important; box-shadow:none !important; color:#173e3b; }
html[data-guide-page] .guide-panel h1,html[data-guide-page] .guide-panel h2 { color:#173e3b !important; }
.guide-eyebrow { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.13em; color:#687970; margin-bottom:14px; }
.guide-form-page>.container { max-width:960px; }
html[data-guide-page="editar_perfil"] .guide-form-page>.container { max-width:720px; }
html[data-guide-page="recuperar"] .guide-form-page>.container,html[data-guide-page="reset"] .guide-form-page>.container { max-width:540px; }
.guide-form-heading { margin-bottom:30px; }
.guide-form-heading h1 { font-size:clamp(2.1rem,4vw,3rem); }
.guide-form-heading>p:last-child { color:#687970; max-width:620px; }
.guide-back { display:inline-block; margin-bottom:24px; color:#687970; font-size:.8rem; text-decoration:none; }
.guide-form-section { border-top:1px solid #e7ece3; padding-top:26px; margin:26px 0 18px; }
.guide-form-section h3 { font-family:'Plus Jakarta Sans',sans-serif; font-size:1.08rem; font-weight:700; }
.guide-form-section p { color:#687970; font-size:.82rem; }
.guide-editor-form .row { margin-top:10px; }
html[data-guide-page="recuperar"] .guide-panel,html[data-guide-page="reset"] .guide-panel { max-width:none !important; padding:32px !important; }
html[data-guide-page="recuperar"] .guide-panel h2,html[data-guide-page="reset"] .guide-panel h2 { font-family:'Plus Jakarta Sans',sans-serif; font-size:1.2rem; }
/* Dashboard and administrator tables preserve semantic status colors. */
html[data-guide-page] .dash-page { padding:48px 24px; min-height:auto; background:#faf9f5; }
html[data-guide-page] .dash-header { background:#173e3b; border-radius:16px; box-shadow:none; }
html[data-guide-page] .dash-header::before { display:none; }
html[data-guide-page] .dash-header .status-chip.destacado,html[data-guide-page] .dash-header .btn-sm-dash.whatsapp { color:#bce5c8; background:#ffffff0c; border:1px solid #bce5c855; }
html[data-guide-page] .dash-header .status-chip.vencido { color:#f6d0a7; background:#ffffff0c; border-color:#f6d0a755; }
html[data-guide-page] .data-row .data-label { display:block; font-size:.65rem; margin-bottom:3px; }
html[data-guide-page] .dash-stat { background:#ffffff0f; border:1px solid #ffffff20; border-radius:10px; }
html[data-guide-page] .dash-card { border:1px solid #dce3d8; border-radius:14px; box-shadow:none; }
html[data-guide-page] .dash-card,html[data-guide-page] .register-card,html[data-guide-page] .sidebar-card { min-width:0; overflow-wrap:anywhere; }
html[data-guide-page] .dash-header .email-line { overflow-wrap:anywhere; }
html[data-guide-page] .dash-card h3 { font-family:'Plus Jakarta Sans',sans-serif; font-size:1.1rem; font-weight:700; }
html[data-guide-page] .dash-card .data-row { border-bottom-color:#e7ece3; }
html[data-guide-page] .msg-item { background:#f5f7f0; border:1px solid #dce3d8; border-radius:10px; }
html[data-guide-page] .msg-avatar { background:#e4ecdd; color:#386b5e; }
html[data-guide-page] .card,html[data-guide-page] .card.bg-dark,html[data-guide-page] .card.bg-secondary { background:#fff !important; color:#173e3b !important; border:1px solid #dce3d8; border-radius:14px; box-shadow:none !important; }
html[data-guide-page] .card-title { color:#173e3b; }
html[data-guide-page] .card-text { color:#687970; }
html[data-guide-page="pago_destacado"] .card-body { padding:32px; }
html[data-guide-page="pago_destacado"] .card-body h5 { font-size:2.2rem; font-weight:700; color:#173e3b; margin-top:24px; }
html[data-guide-area="admin"] .guide-header-actions .guide-publish-button { display:none; }
html[data-guide-area="admin"] .guide-header-inner { gap:16px; }
html[data-guide-area="admin"] .guide-desktop-nav { gap:18px; }
html[data-guide-area="admin"] .guide-panel { padding:28px !important; }
html[data-guide-area="admin"] .table { --bs-table-bg:white; --bs-table-color:#173e3b; --bs-table-border-color:#e2e8dc; --bs-table-hover-bg:#f0f4eb; --bs-table-hover-color:#173e3b; --bs-table-striped-bg:#f7f9f3; --bs-table-striped-color:#173e3b; font-size:.82rem; vertical-align:middle; }
html[data-guide-area="admin"] .table th { background:#eef2e9; color:#386b5e; font-size:.7rem; padding:14px 12px; }
html[data-guide-area="admin"] .table td { padding:14px 12px; }
html[data-guide-area="admin"] .table .btn { font-size:.72rem; padding:7px 10px; }
html[data-guide-area="admin"] .login-container { max-width:440px; padding:36px; margin:64px auto; }
.guide-error { padding:64px 20px; max-width:680px; margin:auto; min-height:55vh; }
.guide-error h1 { font-size:clamp(2.2rem,4vw,3.2rem); }
.guide-error>p { color:#687970; }
html[data-guide-page] .guide-listing-content { padding:32px 12px 48px !important; background:#faf9f5 !important; }
html[data-guide-area="admin"] .text-white:not(.badge):not(.btn) { color:#173e3b !important; }
html[data-guide-area="admin"] .guide-footer,.guide-footer .text-white { color:#bdcec6 !important; }
@media(max-width:1100px) { .guide-header-inner { gap:16px; } .guide-desktop-nav { gap:14px; } .guide-header-actions { gap:12px; } .guide-brand { font-size:1.2rem; } }
@media(max-width:991px) { .guide-desktop-nav,.guide-header-actions { display:none; } .guide-mobile-nav { display:block; } .guide-mobile-nav summary { cursor:pointer; padding:10px 16px; border:1px solid #dce3d8; border-radius:8px; list-style:none; font-size:.8rem; display:flex; gap:18px; } .guide-mobile-nav nav { position:absolute; top:100%; left:0; right:0; border-bottom:1px solid #dce3d8; background:#faf9f5; padding:16px 24px; box-shadow:var(--shadow); } .guide-mobile-nav nav a { display:block; padding:12px 0; color:#173e3b; text-decoration:none; border-bottom:1px solid #e8ecdf; font-size:.9rem; } .guide-footer-grid { grid-template-columns:2fr 1fr; gap:36px; } html[data-guide-page] .com-listing { grid-template-columns:repeat(2,minmax(0,1fr)); } html[data-guide-page] .register-grid { gap:32px; } }
@media(max-width:767px) { .guide-header-inner { min-height:74px; } .guide-brand { font-size:1.15rem; } .guide-brand small { font-size:.51rem; } .guide-brand-symbol { font-size:2.2rem; } .guide-footer { padding:40px 12px 24px; } .guide-footer-grid { grid-template-columns:1fr 1fr; gap:28px; } .guide-footer-intro { grid-column:1/-1; } .guide-footer-grid>div:last-child { grid-column:1/-1; } html[data-guide-page] .page-hero,html[data-guide-page] .blog-hero { padding:32px 12px; } html[data-guide-page] .page-hero h1,html[data-guide-page] .blog-hero h1 { font-size:2.2rem; } html[data-guide-page] .com-listing { grid-template-columns:1fr; } html[data-guide-page] .login-page { grid-template-columns:1fr; margin:24px 12px; min-height:auto; } html[data-guide-page] .login-visual { display:none; } html[data-guide-page] .login-form-side { padding:32px 24px; } html[data-guide-page] .register-page { padding:32px 12px; } html[data-guide-page] .register-grid { grid-template-columns:1fr; } html[data-guide-page] .register-promo { display:block; } html[data-guide-page] .promo-benefits { display:none; } html[data-guide-page] .register-card { padding:28px 22px; } html[data-guide-page] .guide-panel { padding:24px !important; } html[data-guide-page] .comercio-hero,html[data-guide-page] .article-hero { height:280px; } html[data-guide-page] .comercio-body { padding:32px 12px; } html[data-guide-page] .blog-section,html[data-guide-page] .article-wrap { padding:32px 12px; } html[data-guide-page] .feat-body { padding:24px; } html[data-guide-page] .dash-page { padding:28px 12px; } html[data-guide-page] .dash-grid { grid-template-columns:1fr; } .guide-screen { min-height:calc(100vh - 74px); } html[data-guide-area="admin"] .login-container { margin:32px 12px; max-width:none; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
@media(max-width:767px) { html[data-guide-page] .login-page { width:calc(100% - 24px); } }
@media(min-width:992px) and (max-width:1100px) { .guide-header .guide-logo { width:195px; } }
@media(max-width:991px) { .guide-header-inner { min-height:88px; gap:12px; } .guide-header .guide-logo { width:clamp(120px,calc(75vw - 116.25px),210px); } }
@media(min-width:992px) and (max-width:1100px) { .guide-header .guide-brand { width:195px; } }
@media(max-width:991px) { .guide-header .guide-brand { width:clamp(120px,calc(75vw - 116.25px),210px); } }
@media(max-width:400px) { html[data-guide-page] .captcha-wrap { max-width:100%; padding:12px 0; overflow:hidden; } html[data-guide-page] .g-recaptcha { transform:scale(.78); transform-origin:top center; margin:0 -40px -16px; } }
/* Account dashboard: navigation, overview, commerce, plan and inbox. */
.account-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:36px; padding-top:44px; padding-bottom:56px; }
.account-sidebar { position:sticky; top:140px; align-self:start; }
.account-profile { display:flex; flex-direction:column; align-items:flex-start; padding:0 14px 24px; border-bottom:1px solid #dce3d8; }
.account-avatar { display:grid; place-items:center; width:48px; height:48px; border-radius:50%; background:#e5ecdf; color:#386b5e; font-size:1.4rem; margin-bottom:14px; }
.account-profile strong { font-size:.87rem; }
.account-profile>span:last-child { color:#687970; font-size:.7rem; overflow-wrap:anywhere; margin-top:4px; }
.account-nav { display:flex; flex-direction:column; gap:6px; margin:22px 0; }
.account-nav a { display:flex; align-items:center; gap:12px; padding:12px 14px; color:#687970; font-size:.8rem; text-decoration:none; border-radius:9px; }
.account-nav a:hover,.account-nav [aria-current] { background:#e5ecdf; color:#173e3b; font-weight:600; }
.account-nav a>span { margin-left:auto; background:#faf9f5; border-radius:20px; font-size:.65rem; padding:2px 8px; }
.account-help { border-top:1px solid #dce3d8; padding:22px 14px; font-size:.75rem; }
.account-help p { color:#687970; margin-bottom:8px; }
.account-help a { color:#386b5e; font-weight:600; text-decoration:none; }
.account-content { min-width:0; }
.account-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; margin-bottom:28px; }
.account-heading h1 { font-size:clamp(2.2rem,3vw,3.1rem); margin:0 0 10px; }
.account-heading p:last-child { color:#687970; font-size:.82rem; margin-bottom:0; max-width:520px; }
.account-heading .guide-eyebrow { margin-bottom:8px; }
.account-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; background:#173e3b; color:white; font-family:inherit; font-size:.78rem; font-weight:600; text-decoration:none; padding:12px 16px; border:1px solid #173e3b; border-radius:9px; min-height:44px; }
.account-button:hover { color:#fff; background:#386b5e; }
.account-button-sand { background:#f0dfc5; border-color:#e0c79e; color:#674825; }
.account-button-sand:hover { background:#e7d2b1; color:#674825; }
.account-button-outline { background:#fff; color:#173e3b; border-color:#cbd7c5; }
.account-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:24px; }
.account-stats>div { position:relative; display:flex; flex-direction:column; padding:22px; border:1px solid #dce3d8; background:#fff; border-radius:14px; }
.account-stats strong { font-size:2rem; font-weight:600; line-height:1.2; color:#173e3b; margin-bottom:8px; }
.account-stats>div>span:last-child { font-size:.7rem; color:#687970; }
.account-stat-icon { position:absolute; top:22px; right:20px; color:#386b5e; background:#eef2e9; width:30px; height:30px; display:grid; place-items:center; border-radius:8px; }
.account-summary-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:20px; align-items:start; margin-bottom:24px; }
.account-card { background:#fff; border:1px solid #dce3d8; border-radius:14px; min-width:0; overflow-wrap:anywhere; }
.account-card h2 { font-family:'Plus Jakarta Sans',sans-serif !important; font-size:1.05rem; font-weight:700; letter-spacing:-.01em; line-height:1.5; margin:0 0 18px; }
.account-commerce { overflow:hidden; }
.account-commerce-cover { position:relative; aspect-ratio:16/9; background:#eef2e9; }
.account-commerce-cover img { width:100%; height:100%; object-fit:cover; }
.account-commerce-cover>span { position:absolute; left:16px; top:16px; padding:5px 10px; border-radius:20px; background:#faf9f5; color:#173e3b; font-size:.65rem; font-weight:600; }
.account-card-content { padding:24px; }
.account-commerce-data { display:grid; gap:14px; margin-bottom:22px; }
.account-commerce-data dt,.account-message-body dt { color:#687970; font-size:.64rem; font-weight:600; text-transform:uppercase; letter-spacing:.08em; margin-bottom:5px; }
.account-commerce-data dd,.account-message-body dd { margin:0; font-size:.8rem; color:#294c42; }
.account-commerce-actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px; border-top:1px solid #e5eade; padding-top:20px; }
.account-link { color:#386b5e; font-size:.75rem; text-decoration:none; }
.account-side-cards { display:grid; gap:20px; }
.account-plan,.account-notice { padding:24px; }
.account-plan p:not(.guide-eyebrow),.account-notice>div { color:#687970; font-size:.78rem; line-height:1.85; margin-top:16px; }
.account-status { display:inline-block; padding:6px 11px; border-radius:7px; background:#f0f2e9; color:#536650; font-size:.68rem; font-weight:700; }
.account-status.active { background:#e4efde; color:#2d623c; }
.account-status.expired { background:#fbefdb; color:#966323; }
.account-notice { background:#eef2e9; }
.account-plan .guide-eyebrow,.account-notice .guide-eyebrow { font-size:.63rem; }
.account-inbox { padding:28px; margin-bottom:24px; scroll-margin-top:130px; }
.account-section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
.account-section-heading h2 { margin-bottom:0; }
.account-section-heading .guide-eyebrow { font-size:.63rem; margin-bottom:7px; }
.account-count { background:#eef2e9; font-size:.8rem; font-weight:600; border-radius:20px; padding:5px 12px; }
.account-message-list { display:grid; gap:10px; }
.account-message { border:1px solid #e0e7db; border-radius:10px; overflow:hidden; }
.account-message summary { list-style:none; display:flex; align-items:center; gap:14px; padding:16px; cursor:pointer; }
.account-message summary::-webkit-details-marker { display:none; }
.account-message-avatar { display:grid; place-items:center; background:#eef2e9; border-radius:50%; width:36px; height:36px; color:#386b5e; flex-shrink:0; }
.account-message-sender { min-width:0; display:flex; flex-direction:column; flex:1; }
.account-message-sender strong { font-size:.78rem; }
.account-message-sender small { color:#687970; font-size:.63rem; }
.account-message-toggle::before { content:'Abrir'; font-size:.7rem; color:#386b5e; }
.account-message-toggle::after { content:' +'; color:#386b5e; }
.account-message[open] .account-message-toggle::before { content:'Cerrar'; }
.account-message[open] .account-message-toggle::after { content:' −'; }
.account-message[open] summary { background:#f4f7ef; }
.account-message-body { padding:20px; border-top:1px solid #e0e7db; }
.account-message-body dl { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.account-message-body p { font-size:.85rem; color:#294c42; line-height:1.85; margin:18px 0 0; }
.account-empty-inbox { display:flex; align-items:center; gap:16px; padding:16px 0; }
.account-empty-inbox>i { color:#8eaa88; font-size:2rem; }
.account-empty-inbox p { color:#687970; font-size:.8rem; max-width:520px; margin:0; }
.account-preferences { padding:24px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; }
.account-reminder { display:flex; align-items:center; gap:10px; font-size:.76rem; color:#687970; margin:0 0 16px; min-height:44px; cursor:pointer; }
.account-reminder input { width:18px; height:18px; flex-shrink:0; accent-color:#386b5e; }
.account-remove { border-left:1px solid #e5eade; padding-left:24px; }
.account-remove p { font-size:.74rem; color:#687970; margin-bottom:8px; }
.account-remove button { border:0; background:none; color:#a23d35; padding:8px 0; font-family:inherit; font-size:.72rem; text-decoration:underline; min-height:44px; }
.account-empty { text-align:center; padding:48px 24px; margin-bottom:24px; }
.account-empty>i { color:#8eaa88; font-size:2.4rem; }
.account-empty h2 { font-size:1.4rem; margin-top:18px; }
.account-empty p { color:#687970; font-size:.85rem; max-width:480px; margin:0 auto 24px; }
@media(max-width:1023px) { .account-layout { grid-template-columns:1fr; gap:24px; } .account-sidebar { position:static; } .account-profile,.account-help { display:none; } .account-nav { flex-direction:row; flex-wrap:wrap; margin:0; padding-bottom:14px; border-bottom:1px solid #dce3d8; } .account-nav a { padding:10px 12px; } }
@media(max-width:767px) { .account-layout { padding-top:24px; padding-bottom:32px; } .account-heading { margin-bottom:20px; } .account-stats { gap:8px; } .account-stats>div { padding:14px 10px; } .account-stats strong { font-size:1.8rem; } .account-stats>div>span:last-child { font-size:.61rem; } .account-stat-icon { position:static; margin-bottom:10px; width:26px; height:26px; } .account-summary-grid { grid-template-columns:1fr; } .account-card-content,.account-plan,.account-notice,.account-inbox,.account-preferences { padding:20px; } .account-message-body dl { grid-template-columns:1fr; } .account-remove { border-left:0; border-top:1px solid #e5eade; padding:18px 0 0; width:100%; } .account-preferences>div { min-width:0; width:100%; } .account-nav { gap:4px; } .account-nav a { font-size:.7rem; gap:7px; padding:10px; } }
html[data-guide-page] .atlas-hero-layout { grid-template-columns:repeat(2,minmax(0,1fr)); }
html[data-guide-page] .atlas-intro,html[data-guide-page] .atlas-photo { min-width:0; }
html[data-guide-page] .blog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media(max-width:991px) { html[data-guide-page] .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) { html[data-guide-page] .atlas-hero-layout,html[data-guide-page] .blog-grid { grid-template-columns:minmax(0,1fr); } }

.captcha-wrap { margin:16px 0; display:flex; justify-content:center; }

.profile-page { max-width:1100px; padding-top:40px; padding-bottom:56px; }
.profile-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:28px; align-items:start; }
.profile-summary { text-align:center; padding:28px; }
.profile-summary .account-avatar { margin:0 auto 18px; }
.profile-summary h2 { font-size:1.4rem; overflow-wrap:anywhere; }
.profile-summary p { font-size:.8rem; color:#687970; overflow-wrap:anywhere; }
.profile-form { padding:32px; min-width:0; }
.profile-form h2 { font-size:1.55rem; margin-bottom:24px; }
.profile-hint { display:block; color:#687970; font-size:.75rem; line-height:1.65; margin-top:8px; }
.profile-password-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.profile-actions { display:flex; justify-content:flex-end; gap:12px; border-top:1px solid #e7ece3; padding-top:24px; margin-top:28px; }
@media(max-width:767px) { .profile-page { padding-top:28px; padding-bottom:36px; } .profile-layout,.profile-password-grid { grid-template-columns:minmax(0,1fr); } .profile-layout { gap:20px; } .profile-form { padding:24px; } .profile-summary { padding:24px; } .profile-actions { flex-direction:column-reverse; } .profile-actions .account-button { width:100%; } }
