:root{
    --bg:#000000;
    --panel:#ffffff;
    --line:#d8c3a0;
    --gold:#c78a1f;
    --gold-dark:#8f5d0d;
    --text:#261c13;
    --muted:#6d6256;
    --shadow:0 12px 28px rgba(0,0,0,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#000;color:var(--text);font-family:Arial,Helvetica,sans-serif}
a{color:#8b5a0b;text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%}

/* Front page */
.museum-page{padding:0 0 24px}
.museum-shell{width:min(920px,calc(100% - 20px));margin:0 auto;background:#0a0a0a}
.site-header-card,.hero-banner-card{background:#000}
.site-header-image,.hero-banner-card img{width:100%;height:auto;display:block}
.image-topbar{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:36px;padding:12px 14px;background:linear-gradient(180deg,#5a5a5a,#2e2e2e);border-top:1px solid #777;border-bottom:1px solid #131313}
.image-topbar a{color:#f3e7c0;font-weight:700;font-size:13px;letter-spacing:.04em}
.hero-banner-fallback{height:230px;background:radial-gradient(circle at 80% 30%,rgba(255,216,118,.25),transparent 18%),linear-gradient(135deg,#121212,#2a1c08 60%,#000)}

.api-warning,.alert{margin:14px 16px;padding:12px 14px;border-radius:12px;border:1px solid #dfb978;background:#fff;color:#684516}
.alert.success{border-color:#96c896;color:#2b5a2b}

.content-section{margin:0 16px 16px;padding:18px;border-radius:0;background:#fff;border:1px solid #d9d9d9;box-shadow:var(--shadow)}
.section-topline{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #ddd}
.section-topline h1{margin:0;font-size:28px;letter-spacing:.03em;font-weight:700;color:#2d2012}
.section-topline strong{font-size:26px;color:#2d2012;font-weight:700}
.section-title{font-size:24px;font-weight:700;letter-spacing:.05em;color:#2a2117;margin:4px 0 14px;text-transform:uppercase}
.center-title{text-align:center}
.left-title{text-align:left}

.price-table-card{border:1px solid #c9c9c9;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.price-table-gold{background-image:url('../img/ui/bg-gold.jpg')}
.price-table-silver{background-image:url('../img/ui/bg-silver.jpg')}
.price-table-platinum{background-image:url('../img/ui/bg-platinum.jpg')}
.large-price-card{min-height:420px}
.price-card-overlay{padding:18px}
.soft-overlay{background:rgba(255,255,255,.78)}
.dark-overlay{background:rgba(10,10,10,.62);color:#fff;height:100%}

.price-table{width:100%;border-collapse:collapse}
.price-table thead th{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#403225;padding:12px 10px 18px;background:transparent;border:0;text-align:center}
.price-table tbody td{padding:10px 12px;border:0;vertical-align:middle}
.gold-main-table tbody td,.silver-main-table tbody td{font-size:18px}
.metal-label-cell{width:34%;font-size:62px;line-height:1;font-weight:300;letter-spacing:.02em;color:#2a2016}
.silver-main-table .metal-label-cell{font-size:52px}
.platinum-table .metal-label-cell{font-size:46px;color:#fff;width:auto}
.price-table strong{font-size:22px;color:#8e5c08}
.price-table small{font-size:13px;color:#50493f}
.subtext{display:block;font-size:13px;color:#5f5449;font-weight:700;margin-top:6px}
.dark-table td{color:#fff;padding:18px 16px}
.dark-table strong{color:#f1d37a}
.dark-table small{color:#ddd5c4}
.dark-table .metal-label-cell{color:#fff}

.coin-rows{margin-top:18px;padding-top:14px}
.coin-row{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:12px;align-items:center;padding:8px 4px;font-size:18px;color:#2d2218}
.coin-name{font-weight:400}
.coin-value{justify-self:start}
.quote-line{margin-top:14px;padding-top:10px;border-top:1px solid rgba(0,0,0,.18);font-size:15px;color:#2f261c}
.dark-overlay .quote-line{border-top-color:rgba(255,255,255,.18);color:#f6f1e7}

.gold-layout{display:grid;grid-template-columns:minmax(70%, 30%) 1fr;gap:18px;align-items:stretch}
.silver-layout{display:grid;grid-template-columns:minmax(70%,30%) 1fr;gap:18px;align-items:stretch}
.platinum-layout{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:18px;align-items:stretch}
.platinum-table-card{/*min-height:280px*/}
.gold-image-panel{display:grid;grid-template-columns:repeat(1,1fr);gap:14px;align-content:start}
.silver-image-panel{display:grid;grid-template-columns:repeat(1,1fr);gap:14px;align-content:start}
.platinum-image-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;align-content:start}
.inline-image-card{margin:0;background:#fff;border:1px solid #dadada;padding:8px;box-shadow:0 8px 16px rgba(0,0,0,.06)}
.inline-image-card img{width:100%;height:120px;object-fit:contain;background:#fff}

.location-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.location-card{border:1px solid #d9d9d9;background:#fff;padding:12px}
.location-card-title{font-size:18px;font-weight:700;margin-bottom:10px;color:#2d2012;text-transform:uppercase}
.storefront-image{width:100%;height:280px;object-fit:cover}
.contact-mini{margin:0 0 10px;font-size:15px;color:#4d4134}
.contact-map-frame iframe{width:100%;height:280px;border:0}
.page-footer{padding:8px 16px 14px;text-align:center;color:#d3cabd;font-size:12px}
.page-footer a{color:#f0d28a}

/* Login and admin */
.admin-auth{min-height:100vh;text-align:left;color:#f7efe2;background:radial-gradient(circle at 16% 12%, rgba(216,144,45,.20), transparent 30%),radial-gradient(circle at 90% 0%, rgba(255,213,139,.12), transparent 24%),linear-gradient(135deg,#070707,#16100a 55%,#050505)}
.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px}
.auth-card{width:100%;max-width:470px;padding:26px;border:1px solid rgba(237,193,125,.35);border-radius:22px;background:#fff;color:var(--text);box-shadow:0 24px 80px rgba(0,0,0,.45)}
.auth-brand{display:flex;gap:16px;align-items:center;margin-bottom:20px}
.auth-brand img,.admin-brand img{width:74px;height:74px;object-fit:contain;padding:10px;border-radius:18px;background:#080808;border:1px solid #e9c27d}
.auth-brand h1{margin:0 0 6px;font-size:25px;color:#1c140b}
.auth-brand p:not(.eyebrow){margin:0;color:#6d6256}
.auth-form .form-row{margin-bottom:14px}
.form-row label{display:block;font-weight:800;margin-bottom:7px;color:#3d2a14}
.auth-form input,.admin-form input,.admin-form select{width:100%;border:1px solid #d7c4a7;border-radius:10px;background:#fff;padding:11px 12px;font:inherit;color:var(--text)}
.auth-btn{width:100%;margin-top:4px}
.auth-foot{margin-top:18px;text-align:center}
.btn{display:inline-block;border:1px solid #9a5d00;background:linear-gradient(180deg,#e39a31,#c67609);color:#fff;padding:11px 18px;border-radius:10px;cursor:pointer;font-weight:700;box-shadow:0 6px 18px rgba(201,119,8,.24)}
.btn:hover{text-decoration:none;background:linear-gradient(180deg,#d68c1d,#b86600)}
.btn-secondary{background:#fff;color:#8b5600;border-color:#e0b86b;box-shadow:none}
.btn-secondary:hover{background:#fff5e7}
.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8a5a0f;font-weight:700}

.admin-shell{width:1180px;max-width:calc(100% - 28px);margin:24px auto 40px}
.admin-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px;border:1px solid rgba(237,193,125,.28);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));box-shadow:0 20px 70px rgba(0,0,0,.34);margin-bottom:18px}
.admin-brand{display:flex;align-items:center;gap:16px}
.admin-brand h1{margin:0 0 5px;color:#fff;font-size:28px}
.admin-brand p:not(.eyebrow){margin:0;color:#d6c5aa}
.admin-nav{display:flex;gap:10px;flex-wrap:wrap}
.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}
.admin-stats article{padding:18px;border-radius:18px;border:1px solid rgba(237,193,125,.30);background:#fff;color:var(--text);box-shadow:var(--shadow)}
.admin-stats span{display:block;color:#6d6256;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.admin-stats strong{display:block;margin:4px 0;font-size:27px;color:#3b250b}
.admin-stats small{color:#6d6256}
.admin-panel{background:#fff;color:var(--text);border:1px solid #eedfca;border-radius:22px;padding:22px;box-shadow:var(--shadow);margin-bottom:18px}
.panel-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;border-bottom:1px solid #f0e2cd;padding-bottom:14px;margin-bottom:18px}
.panel-heading h2,.admin-notes h2{margin:0;color:#211609}
.panel-heading p{margin:0;color:#6d6256;max-width:620px}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-form-grid .form-row{margin:0}
.admin-table-wrap{overflow:auto;border-radius:14px;border:1px solid #ead8bd}
.admin-table{width:100%;border-collapse:separate;border-spacing:0;min-width:920px;background:#fff}
.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #ead8bd;vertical-align:middle}
.admin-table th{background:#fff6e8;color:#52370f;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.admin-table tr:last-child td{border-bottom:0}
.admin-table input[type=text],.admin-table select{width:100%}
.admin-table input[type=checkbox]{width:20px;height:20px;accent-color:var(--gold)}
.center-cell{text-align:center}
.computed-cell{color:#4b3820;white-space:nowrap}
.computed-cell strong{color:#8a570b;font-size:18px}
.admin-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}

@media (max-width:900px){
    .platinum-layout,.location-layout{grid-template-columns:1fr}
    .section-topline{flex-direction:row;align-items:flex-start}
    .admin-top{flex-direction:column;align-items:flex-start}
    .admin-stats,.admin-form-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
    .museum-shell{width:100%}
    .image-topbar{gap:18px;padding:10px}
    .content-section{margin:0 10px 14px;padding:14px}
    .section-topline h1,.section-topline strong,.section-title{font-size:22px}
    .metal-label-cell{font-size:38px}
    .silver-main-table .metal-label-cell,.platinum-table .metal-label-cell{font-size:34px}
    .price-table thead th,.price-table tbody td,.coin-row{font-size:14px}
    .price-table strong{font-size:17px}
    .coin-row{grid-template-columns:1.3fr 1fr 1fr;gap:6px}
    .inline-image-card img,.storefront-image,.contact-map-frame iframe{height:220px}
	.gold-layout{display:flex;flex-direction: column;}
	.silver-layout{display:flex;flex-direction: column;}
	.platinum-layout{display:flex;flex-direction: column;}
	.gold-image-panel {
		grid-template-columns: repeat(2, 1fr);
	}
	.silver-image-panel {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Ajustes solicitados: topbar blanco, tipografia, tablas simetricas y contacto */
body{
    font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;
    letter-spacing:.01em;
}
.image-topbar{
    background:#fff !important;
    border-top:1px solid #ece0c8 !important;
    border-bottom:2px solid #d9b96f !important;
    box-shadow:0 6px 18px rgba(0,0,0,.08);
}
.image-topbar a{
    color:#2a2117 !important;
    font-weight:800;
}
.image-topbar a:hover{color:#a66a00 !important;text-decoration:none}
.content-section{
    border-radius:18px !important;
    overflow:hidden;
}
.price-table-card{
    border-radius:18px !important;
    overflow:hidden;
    border:1px solid #d1b37a !important;
}
.price-card-overlay{
    border-radius:17px;
    min-height:inherit;
}
.large-price-card .price-card-overlay{
    /*min-height:420px;*/
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}
.gold-main-table,
.silver-main-table{table-layout:fixed}
.gold-main-table th,.gold-main-table td,
.silver-main-table th,.silver-main-table td{text-align:center}
.gold-main-table th:first-child,.gold-main-table td:first-child,
.silver-main-table th:first-child,.silver-main-table td:first-child{text-align:left;width:34%}
.price-table tbody tr{border-bottom:1px solid rgba(0,0,0,.08)}
.price-table tbody tr:last-child{border-bottom:0}
.price-table strong{font-family:"Segoe UI",Arial,sans-serif}
.section-title,.section-topline h1,.section-topline strong{
    font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;
}
.contact-section{background:#fff}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:start}
.contact-direct-card,.contact-form-grid{
    background:#fff;
    border:1px solid #e2d3b7;
    border-radius:18px;
    padding:18px;
    box-shadow:0 8px 18px rgba(0,0,0,.05);
}
.contact-direct-card h2{margin:0 0 14px;color:#2a2117;font-size:22px}
.contact-direct-card p{margin:0 0 10px;line-height:1.5;color:#3b3128}
.contact-phone-button{
    display:inline-block;
    margin-top:12px;
    padding:11px 16px;
    border-radius:999px;
    background:#f6d35d;
    color:#1f1a13;
    font-weight:800;
    border:1px solid #d6aa25;
}
.contact-phone-button:hover{text-decoration:none;background:#ffdf70}
.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form-grid label{display:block}
.contact-form-grid span{display:block;margin-bottom:6px;font-weight:800;color:#3d2a14}
.contact-form-grid input,.contact-form-grid textarea,.contact-form-grid select{
    width:100%;
    border:1px solid #d7c4a7;
    border-radius:12px;
    background:#fff;
    padding:11px 12px;
    font:inherit;
    color:#261c13;
}
.contact-form-grid textarea{resize:vertical;min-height:126px}
.full{grid-column:1/-1}
.form-actions{text-align:center}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.contact-form-grid{grid-template-columns:1fr}}


/* Mejoras visuales finales: fondo general, cabecera blanca, tablas alineadas y panel editable */
body{
    font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
    background:#030303;
    position:relative;
}
body::before{
    content:"";
    position:fixed;
    inset:0;
    background:
        linear-gradient(180deg, rgba(0,0,0,.80), rgba(0,0,0,.88)),
        url('../img/gold-lingots-bg.png') center center / cover no-repeat;
    opacity:.92;
    z-index:-2;
}
body::after{
    content:"";
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.28);
    z-index:-1;
}
.museum-shell{
    background:rgba(0,0,0,.72);
    box-shadow:0 30px 90px rgba(0,0,0,.55);
    border-left:1px solid rgba(255,255,255,.06);
    border-right:1px solid rgba(255,255,255,.06);
}
.site-header-card{
    background:#fff !important;
    padding:10px 18px;
    border-radius:0 0 18px 18px;
}
.site-header-image{
    background:#fff;
    margin:0 auto;
    max-width:870px;
}
.image-topbar{
    background:#fff !important;
    border:1px solid rgba(199,138,31,.28);
    border-radius:0 0 18px 18px;
    box-shadow:0 10px 22px rgba(0,0,0,.12);
    gap:28px;
}
.image-topbar a{
    color:#1d160e !important;
    font-weight:800;
}
.content-section{
    border-radius:22px !important;
    border:1px solid rgba(216,195,160,.55);
    box-shadow:0 18px 45px rgba(0,0,0,.22);
    background:#fff;
}
.price-table-card{
    border-radius:20px;
    overflow:hidden;
    border:1px solid rgba(199,138,31,.45);
    box-shadow:0 16px 34px rgba(0,0,0,.14), inset 0 0 0 1px rgba(255,255,255,.28);
}
.soft-overlay{
    background:rgba(255,255,255,.80);
    backdrop-filter:blur(1px);
}
.aligned-price-table{
    table-layout:fixed;
    border-collapse:separate;
    border-spacing:0;
}
.aligned-price-table .label-col{width:34%}
.aligned-price-table .price-col{width:33%}
.aligned-price-table th,
.aligned-price-table td{
    text-align:center;
}
.aligned-price-table th:first-child,
.aligned-price-table td:first-child{
    text-align:left;
}
.aligned-price-table thead th{
    padding:16px 10px 20px;
    font-size:15px;
}
.aligned-price-table tbody tr:not(.table-separator) td{
    border-bottom:1px solid rgba(105,81,35,.14);
}
.aligned-price-table tbody tr:last-child td{
    border-bottom:0;
}
.metal-label-cell{
    width:auto;
    font-size:31px !important;
    font-weight:800;
    color:#1d160e;
    letter-spacing:.02em;
}
.silver-label-cell{
    font-size:30px !important;
}
.price-value-cell{
    text-align:center !important;
    white-space:nowrap;
}
.price-value-cell strong{
    font-size:25px;
    font-weight:900;
    color:#9b6104;
}
.price-value-cell small{
    margin-left:4px;
    font-size:13px;
    color:#1d160e;
}
.coin-table-row td{
    padding-top:11px;
    padding-bottom:11px;
}
.coin-label-cell{
    font-size:18px;
    font-weight:700;
    color:#1d160e;
}
.table-separator td{
    height:22px;
    border-bottom:0 !important;
}
.quote-line{
    margin-top:10px;
    padding:13px 4px 0;
    font-size:16px;
}
.gold-section .large-price-card{
    min-height:auto;
}
.silver-card{
    min-height:auto;
}
.platinum-layout{
    grid-template-columns:minmax(280px, 390px) 1fr;
}
.platinum-table .price-value-cell{
    text-align:right !important;
}
.location-layout{
    align-items:stretch;
}
.location-card{
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 22px rgba(0,0,0,.08);
}
.contact-cta-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}
.contact-cta-card{
    border:1px solid #e3d4bc;
    border-radius:16px;
    padding:18px;
    background:#fffaf1;
}
.contact-cta-card span{
    display:block;
    color:#7a5c2a;
    font-weight:800;
    text-transform:uppercase;
    font-size:12px;
    margin-bottom:6px;
}
.contact-cta-card strong{
    display:block;
    font-size:24px;
    color:#1f160a;
    margin-bottom:12px;
}
.admin-subpanel{
    margin-top:22px;
    padding:18px;
    border:1px solid #ead8bd;
    border-radius:18px;
    background:#fffaf2;
}
.admin-subpanel h3{
    margin:0 0 14px;
    font-size:22px;
    color:#2d2012;
}
.range-labels-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:14px;
}
.final-prices-table input{
    min-width:120px;
}
.admin-coin-row td{
    background:#fffdf8;
}
.sticky-admin-actions{
    position:sticky;
    bottom:12px;
    background:#fff;
    border:1px solid #ead8bd;
    border-radius:18px;
    padding:16px 18px;
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    z-index:20;
}
@media (max-width:700px){
    .image-topbar{gap:12px}
    .aligned-price-table thead th{font-size:12px}
    .metal-label-cell{font-size:24px !important}
    .price-value-cell strong{font-size:18px}
    .coin-label-cell{font-size:15px}
    .contact-cta-grid,.range-labels-grid{grid-template-columns:1fr}
}

/* Ajustes finales: separación visual, radios completos y formulario SMTP */
.museum-page{
    padding-top:0;
}
.museum-shell{
    display:flex;
    flex-direction:column;
    gap:8px;
    padding:0 0 18px;
    background:rgba(0,0,0,.46) !important;
}
.site-header-card,
.image-topbar,
.hero-banner-card,
.content-section,
.page-footer{
    border-radius:18px !important;
    overflow:hidden;
}
.site-header-card{
    margin:0;
    padding:10px 18px !important;
    background:#fff !important;
}
.image-topbar{
    margin:0 !important;
    border:1px solid rgba(199,138,31,.45) !important;
}
.hero-banner-card{
    margin:0 !important;
    border:1px solid rgba(199,138,31,.35);
    box-shadow:0 14px 34px rgba(0,0,0,.22);
    background:#fff;
}
.content-section{
    margin:10px 0 !important;
}
.price-table-card,
.location-card,
.contact-cta-card,
.contact-form-grid,
.inline-image-card,
.admin-panel,
.admin-top,
.admin-stats article,
.admin-subpanel{
    border-radius:18px !important;
    overflow:hidden;
}
.contact-alert{
    margin:0 0 16px;
    padding:13px 15px;
    border-radius:14px;
    font-weight:800;
    border:1px solid #d7c4a7;
    background:#fff8ea;
    color:#664611;
}
.contact-alert.success{
    border-color:#9fca9b;
    background:#f1fff0;
    color:#245a24;
}
.contact-alert.error{
    border-color:#d7a0a0;
    background:#fff1f1;
    color:#7a2020;
}
.public-contact-form{
    margin-top:18px;
}
.hp-field{
    position:absolute !important;
    left:-9999px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}
@media (max-width:640px){
    .museum-shell{gap:7px;padding-bottom:12px}
    .site-header-card,.image-topbar,.hero-banner-card,.content-section{border-radius:14px !important}
    .content-section{margin:10px 0 !important}
}

/* Sistema de administración por tablas dinámicas */
.section-title-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    margin-bottom:14px;
}
.center-title-row{justify-content:center;flex-direction:column;gap:6px}
.source-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 11px;
    border-radius:999px;
    border:1px solid rgba(154,93,0,.22);
    background:#fff8e7;
    color:#7b5008;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
    white-space:nowrap;
}
.table-config-box{background:#fffaf0;border:1px solid #eedabb;margin-bottom:16px;padding:16px}
.table-config-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.table-editor{min-width:1320px}
.table-editor th{white-space:nowrap}
.table-editor input,.table-editor select{min-width:82px}
.table-editor td:nth-child(2) input{min-width:130px}
.table-editor td:nth-child(3) input{min-width:120px}
.table-editor .computed-cell{min-width:180px;line-height:1.35}
.table-editor .computed-cell small{display:block;margin-top:4px;color:#776b5f;font-weight:700}
.pricing-admin-panel .panel-heading{align-items:center}
.sticky-actions,
.sticky-admin-actions{
    position:sticky;
    bottom:12px;
    background:#fff;
    border:1px solid #ead8bd;
    border-radius:18px;
    padding:16px 18px;
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    z-index:20;
}
@media(max-width:1050px){
    .table-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
    .section-title-row{align-items:flex-start;flex-direction:column}
    .table-config-grid{grid-template-columns:1fr}
}

/* Ajustes cliente final: cabecera compacta, menú reducido y tablón más visible */
:root{
    --gold:#d6a83f;
    --gold-dark:#7a4b08;
    --text:#21170d;
}
.museum-page{padding-bottom:18px !important}
.museum-shell{
    width:min(960px,calc(100% - 18px));
    gap:5px !important;
    padding-bottom:14px !important;
}
.site-header-card{padding:6px 18px !important}
.site-header-image{
    max-height:108px;
    object-fit:contain;
    margin:0 auto;
}
.image-topbar{
    gap:18px !important;
    padding:8px 12px !important;
    border-radius:14px !important;
    position:sticky;
    top:0;
    z-index:50;
}
.image-topbar a{
    font-size:12px !important;
    letter-spacing:.09em;
    color:#1d1711 !important;
}
.hero-banner-card{
    max-height:118px;
    overflow:hidden !important;
}
.hero-banner-card img{
    width:100%;
    height:118px;
    object-fit:cover;
    object-position:center;
}
.gold-section{margin-top:3px !important}
.content-section{
    padding:14px 16px !important;
    margin:10px 0 !important;
    border-color:#e2c06f !important;
}
.section-topline{
    margin-bottom:8px !important;
    padding-bottom:7px !important;
    border-bottom-color:#ead7a7 !important;
}
.section-topline h1{
    font-size:25px !important;
    color:#21170d !important;
    letter-spacing:.06em;
}
.section-topline strong{
    font-size:24px !important;
    color:#8d5a08 !important;
}
.section-title-row{margin-bottom:8px !important}
.section-title{
    margin:0 0 8px !important;
    font-size:23px !important;
    color:#1f160c !important;
    letter-spacing:.065em;
}
.source-badge{display:none !important}
.large-price-card{min-height:auto !important}
.large-price-card .price-card-overlay{
    /*min-height:auto !important;*/
	height: 100%;
    padding:14px 16px !important;
}
.price-table thead th{
    padding:8px 8px 10px !important;
    font-size:14px !important;
    color:#2d2115 !important;
}
.price-table tbody td{padding:7px 10px !important}
.metal-label-cell{
    font-size:48px !important;
    color:#24180d !important;
}
.silver-main-table .metal-label-cell{font-size:44px !important}
.price-table strong{
    font-size:22px !important;
    color:#7b4c07 !important;
}
.price-value-cell{color:#2b2117}
.quote-line{
    margin-top:8px !important;
    padding-top:8px !important;
    font-size:13px !important;
    color:#4a3822 !important;
}
.soft-overlay{background:linear-gradient(180deg,rgba(255,255,255,.91),rgba(255,248,231,.86)) !important}
.price-table-card{box-shadow:0 14px 34px rgba(0,0,0,.16), inset 0 0 0 1px rgba(255,255,255,.38) !important}
.page-footer a{display:none !important}
.page-footer{padding:6px 16px 10px !important}
.page-footer p{margin:0}
@media (max-width:700px){
    .site-header-image{max-height:82px}
    .hero-banner-card{max-height:82px}
    .hero-banner-card img{height:82px}
    .image-topbar{gap:8px !important;padding:7px 8px !important}
    .image-topbar a{font-size:11px !important;letter-spacing:.04em}
    .section-topline h1,.section-topline strong,.section-title{font-size:19px !important}
    .metal-label-cell,.silver-main-table .metal-label-cell{font-size:28px !important}
    .price-table strong{font-size:17px !important}
    .price-table thead th{font-size:11px !important}
}

/* Ajustes cliente: tablas compactas, oro centrado y platino claro */
.gold-section .section-title-row{
    justify-content:center !important;
    text-align:center !important;
}
.gold-section .section-title{
    width:100%;
    text-align:center !important;
}

.price-table tbody td{
    padding:6px 10px !important;
    vertical-align:middle !important;
}
.price-table thead th{
    padding:7px 8px 9px !important;
    font-size:13px !important;
}
.metal-label-cell,
.silver-main-table .metal-label-cell,
.platinum-table .metal-label-cell{
    font-size:22px !important;
    line-height:1.08 !important;
    font-weight:800 !important;
    letter-spacing:.025em !important;
}
.price-value-cell strong,
.price-table strong,
.platinum-table .price-value-cell strong{
    font-size:22px !important;
    line-height:1.1 !important;
}
.price-value-cell small{
    font-size:12px !important;
}
.coin-table-row td{
    padding-top:6px !important;
    padding-bottom:6px !important;
}
.large-price-card .price-card-overlay{
    padding:12px 16px !important;
}
.quote-line{
    font-size:12px !important;
    margin-top:6px !important;
    padding-top:7px !important;
}

.price-table-platinum{
    background-image:none !important;
    background:linear-gradient(180deg,#fffaf0 0%,#f6ead0 100%) !important;
}
.price-table-platinum .dark-overlay,
.platinum-table-card .dark-overlay{
    background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(250,239,213,.90)) !important;
    color:#21170d !important;
}
.dark-table,
.platinum-table{
    color:#21170d !important;
}
.dark-table .metal-label-cell,
.platinum-table .metal-label-cell{
    color:#21170d !important;
}
.platinum-table .price-value-cell,
.platinum-table .price-value-cell small{
    color:#2b2117 !important;
}
.platinum-table .price-value-cell strong{
    color:#7b4c07 !important;
}
.platinum-table tr td{
    border-bottom:1px solid rgba(105,81,35,.14) !important;
}
.platinum-table tr:last-child td{
    border-bottom:0 !important;
}
.platinum-table-card{
    border-color:#d8bd7b !important;
}

@media (max-width:700px){
    .metal-label-cell,
    .silver-main-table .metal-label-cell,
    .platinum-table .metal-label-cell,
    .price-table strong,
    .price-value-cell strong,
    .platinum-table .price-value-cell strong{
        font-size:18px !important;
    }
}

/* Ajustes finales cliente: banner completo y plata sin texto por defecto */
.hero-banner-card{
    max-height:none !important;
    overflow:visible !important;
    background:#fff !important;
}
.hero-banner-card img{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
}
@media (max-width:700px){
    .hero-banner-card{max-height:none !important}
    .hero-banner-card img{height:auto !important;max-height:none !important}
}

/* Ordenacion drag & drop en administracion */
.table-editor .drag-cell{
    width:58px;
    text-align:center;
    vertical-align:middle;
}
.drag-handle{
    width:34px;
    height:34px;
    border:1px solid rgba(140,100,30,.28);
    border-radius:10px;
    background:linear-gradient(180deg,#fffaf0,#f3e4c6);
    color:#7a4b00;
    font-size:18px;
    font-weight:900;
    line-height:1;
    cursor:grab;
    box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.drag-handle:active{cursor:grabbing}
.sortable-row.is-dragging{
    opacity:.55;
    background:#fff7df;
}
.sortable-row[draggable="true"]{
    cursor:grabbing;
}
@media (max-width:420px){
		.section-topline h1, .section-topline strong{
			font-size: 15px !important;
	}
}