/* IL PADRINO · Tres identidades visuales, un único CMS.
   costa = NERO / brasa = LUCE / miga = ENOTECA.
   El selector solo modifica presentación; todas las rutas, datos y acciones del panel son comunes. */

body.theme-costa {
  --accent:#d92d42; --accent-rgb:217,45,66; --cream:#090b0a; --ink:#f8f1e5;
  --coal:#111512; --p-green:#299d57; --p-white:#f8f2e9; --p-red:#d92d42;
  --p-subtle:#bdbbb4; --p-divider:#ffffff23; --p-input:#171b17;
  background:var(--cream);color:var(--ink);
}
body.theme-brasa {
  --accent:#a53229; --accent-rgb:165,50,41; --cream:#f8f3ea; --ink:#29221d;
  --coal:#eee4d7; --p-green:#26694d; --p-white:#fffaf0; --p-red:#ae382c;
  --p-subtle:#6a6058; --p-divider:#3426202b; --p-input:#fffdf8;
  background:var(--cream);color:var(--ink);
}
body.theme-miga {
  --accent:#c3a375; --accent-rgb:195,163,117; --cream:#15221c; --ink:#f4e8d4;
  --coal:#0c1913; --p-green:#5a8e6d; --p-white:#f4eadb; --p-red:#872f3b;
  --p-subtle:#beb7a5; --p-divider:#d5b88e39; --p-input:#1a2a20;
  background:var(--cream);color:var(--ink);
}

body[class*="theme-"] {font-family:'Segoe UI',Arial,sans-serif}
.site-header {min-height:90px;padding-top:10px;padding-bottom:10px}
.padrino-wordmark {display:block;width:clamp(192px,21vw,292px);height:auto;max-height:73px;object-fit:contain}
.brand-fallback {display:none}
.main-nav a {font-weight:650;letter-spacing:.02em}
.main-nav .nav-review {border-radius:99px;font-weight:800}
.padrino-art-frame {margin-top:36px;max-width:280px;width:70%;overflow:hidden;border:1px solid var(--p-divider);box-shadow:0 28px 70px #0005}
.padrino-art-frame img {width:100%;height:auto;object-fit:cover;display:block}
.intro h2,.moments h2,.visit h2 {color:var(--ink);letter-spacing:-2.1px}
.intro-copy>p,.visit-copy {color:var(--p-subtle)}
.intro-facts {border-top:1px solid var(--p-divider);color:var(--p-subtle)}
.text-link,.eyebrow-dark {color:var(--accent)}
.cinema>img {filter:brightness(.77);object-position:center 60%}
.cinema-card {border-top:4px solid var(--accent);box-shadow:0 25px 80px #0005}
.menu-section {background:var(--coal)}
.menu-photo {border:1px solid var(--p-divider)}
.menu-photo>img {object-fit:cover;object-position:50% 50%}
.category-tabs button {border-radius:3px}
.category-tabs button.is-active {background:var(--accent);border-color:var(--accent);color:#fff}
.dish-modal {border:1px solid var(--p-divider)}
.moments-cards {gap:14px}
.moments-cards article {height:490px}
.moments-cards article img {filter:saturate(.85)}
.moments-cards article:after {background:linear-gradient(0deg,#020502f5 0%,#0305035a 57%,#0003 100%)}
.moments-cards article span {font-weight:800}
.booking-form {border:1px solid var(--p-divider);border-radius:4px}
.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea {border-radius:3px}
.whatsapp-submit {border-radius:3px}
.floating-review,.floating-booking {border-radius:3px;box-shadow:0 9px 36px #0007}
.site-footer {border-top:3px solid var(--accent)}
.padrino-footer-symbol {width:54px;height:54px;grid-row:span 2}
.footer-brand small {letter-spacing:.8px}
.visit-map {border-radius:4px;min-height:530px;overflow:hidden;position:relative}
.map-consent,.map-unavailable>div {background:linear-gradient(145deg,#13221aef,#0e1414f2);color:#fff}
.map-consent button {background:var(--accent);border:0;color:#fff;border-radius:4px}
.social-links a {border-radius:4px}

/* NERO · Negro absoluto y bandiera italiana: se mantiene íntegra la ilustración del cliente. */
.theme-costa .site-header {background:#070908f0;border-bottom:1px solid #206e3c80}
.theme-costa .main-nav a {color:#f7f4ec}
.theme-costa .main-nav a:hover {color:#49bd70}
.theme-costa .main-nav .nav-review {color:#f8f1e8;border-color:#be2634;background:#a21b2c3d}
.theme-costa .hero {display:block;padding-top:90px;min-height:0;background:#050605;border-bottom:1px solid #2e753f6b}
.theme-costa .hero-picture {position:relative;display:block;inset:auto;width:100%;height:auto;aspect-ratio:1672 / 941;background:#050605}
.theme-costa .hero-photo {object-fit:contain;object-position:center center;filter:none!important}
.theme-costa .hero-shade {display:none}
.theme-costa .hero-content {padding:45px 0 71px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 38px;align-items:center}
.theme-costa .hero .eyebrow {grid-column:1/-1;color:#3ab96e;font-size:11px;letter-spacing:3.8px}
.theme-costa .hero h1 {grid-column:1;font-size:clamp(42px,4.5vw,68px);font-weight:400;line-height:1.03;max-width:none;margin:12px 0 0;text-transform:none;letter-spacing:-2.7px;color:#fcf8f1}
.theme-costa .hero h1::first-letter {color:#32ad61}
.theme-costa .hero .lead {grid-column:1;color:#d3ccc3;font:400 clamp(17px,1.6vw,21px)/1.6 var(--display);max-width:730px;margin:0}
.theme-costa .hero-actions {grid-column:2;grid-row:2/4;display:flex;flex-direction:column;align-items:stretch;min-width:225px;margin:0;gap:11px}
.theme-costa .hero .button {border-radius:2px}
.theme-costa .button-accent {background:#be2136;color:#fff}
.theme-costa .button-accent:hover {background:#df3148}
.theme-costa .button-light {border-color:#2d9d55;background:#19412645;color:#fff}
.theme-costa .hero-traits {grid-column:1/-1;color:#b8c4b6;margin-top:22px;gap:32px}
.theme-costa .scroll-cue {color:#74b582;bottom:20px}
.theme-costa .eyebrow,.theme-costa .eyebrow-dark {color:#47b96c}
.theme-costa .intro h2 em,.theme-costa .moments h2 em,.theme-costa .visit h2 em {color:#cf3042}
.theme-costa .intro {position:relative;background:#090b0a}
.theme-costa .intro h2 {color:#faf4eb}
.theme-costa .intro-copy>p {color:#d0c8bf}
.theme-costa .intro-facts {color:#7ab891;border-color:#355542}
.theme-costa .text-link {color:#49bc72}
.theme-costa .padrino-art-frame {background:#030403;border-color:#304236}
.theme-costa .cinema-card {background:#101611ec;color:#fff;border-top-color:#b9273a}
.theme-costa .cinema-card h2 {color:#fff}
.theme-costa .cinema-card small {color:#48b570}
.theme-costa .menu-section {background:linear-gradient(157deg,#111b14 0%,#080b09 60%,#160c0d 100%);color:#fff}
.theme-costa .section-head h2 em {color:#d82d43}
.theme-costa .section-head>p,.theme-costa .dish-info p {color:#b8b4a9}
.theme-costa .category-tabs button.is-active {background:#278c4c;border-color:#278c4c;color:#fff}
.theme-costa .dish-info small,.theme-costa .dish-row>strong,.theme-costa .dish-detail {color:#58c27a}
.theme-costa .dish-detail {border-bottom-color:#58c27a}
.theme-costa .menu-photo>div small {color:#77cc90}
.theme-costa .moments {background:#090b0a}
.theme-costa .moments h2 {color:#fff}
.theme-costa .moments h2 em {color:#e3344d}
.theme-costa .moments-cards article span {color:#9de0ae}
.theme-costa .event-section {background:#171c16;color:#f7efe8}
.theme-costa .reservation {background:radial-gradient(circle at 0 0,#1b3b25 0,transparent 45%),#0c120e;color:#fff}
.theme-costa .reservation h2 em {color:#db3045}
.theme-costa .reservation-copy>p:not(.eyebrow) {color:#ccc8c0}
.theme-costa .phone-card {border-left-color:#36a45c}
.theme-costa .booking-form {background:#181f1a;color:#f8f2ea;box-shadow:0 27px 85px #0008;border-color:#37503b}
.theme-costa .form-head {border-color:#435043}
.theme-costa .form-head>span,.theme-costa .form-head small {color:#4bc375}
.theme-costa .booking-form label {color:#e8e9e2}
.theme-costa .booking-form input:not([type=checkbox]),.theme-costa .booking-form select,.theme-costa .booking-form textarea {background:#0f1511;color:#f8f2ea;border-color:#496047}
.theme-costa .booking-check a {color:#69d895}
.theme-costa .form-note {color:#b5bbb0}
.theme-costa .review {background:#0c120e}
.theme-costa .review h2 em {color:#d73c4f}
.theme-costa .visit {background:#090b0a}
.theme-costa .visit h2 {color:#fff}
.theme-costa .visit-copy,.theme-costa .visit-details {color:#c6c3b6}
.theme-costa .visit-details small {color:#75c78e}
.theme-costa .social-links a {color:#f2eee5;border-color:#3b6949}
.theme-costa .button-dark {background:#1d6b38}
.theme-costa .site-footer {background:#040605;color:#fff;border-top-color:#278d4c}
.theme-costa .footer-links a,.theme-costa .creator {color:#dfd3c8}
.theme-costa .creator {color:#5bc47c}
.theme-costa .floating-booking {background:#258b4c;color:#fff}
.theme-costa .floating-review {background:#c3273f;color:#fff}
.theme-costa .dish-modal {background:#111813;color:#fff}

/* LUCE · Trattoria luminosa, crema de lino, terracota y verde oliva. */
.theme-brasa .site-header {background:#f9f4ebf2;color:#29231e;border-bottom:1px solid #a56c5d4a;box-shadow:0 8px 40px #39272118}
.theme-brasa .main-nav a,.theme-brasa .nav-toggle {color:#332820}
.theme-brasa .main-nav a:hover {color:#a53229}
.theme-brasa .main-nav .nav-review {color:#a53229;border-color:#bd7f75}
.theme-brasa .hero {background:#f8f3ea;color:#30261f;min-height:850px}
.theme-brasa .hero-photo {filter:saturate(.8) brightness(1.07)!important;object-position:62% center}
.theme-brasa .hero-shade {background:linear-gradient(90deg,#fcf8f0fb 0%,#fbf5e9f0 27%,#f9f3e1b8 48%,#f8f0de18 88%),linear-gradient(0deg,#f8f3eaff,transparent 55%)}
.theme-brasa .hero .eyebrow {color:#a33125}
.theme-brasa .hero h1 {color:#29211c;text-transform:none;letter-spacing:-2px;font-size:clamp(54px,6.6vw,97px);font-weight:400;max-width:740px}
.theme-brasa .hero h1::first-letter {color:#276743}
.theme-brasa .hero .lead {color:#5f4d41}
.theme-brasa .hero-traits {color:#5e554c}
.theme-brasa .scroll-cue {color:#6c584b}
.theme-brasa .button-accent {background:#a53229;color:#fff}
.theme-brasa .button-light {border-color:#a5332966;background:#f9f2e9bb;color:#342a23}
.theme-brasa .eyebrow,.theme-brasa .eyebrow-dark {color:#a33329}
.theme-brasa .intro-copy>p,.theme-brasa .visit-copy {color:#5f5449}
.theme-brasa .intro h2,.theme-brasa .moments h2,.theme-brasa .visit h2 {color:#362b24}
.theme-brasa h2 em {color:#a6352b}
.theme-brasa .padrino-art-frame {max-width:250px;border:9px solid #eee1d2;box-shadow:0 30px 70px #9f846744}
.theme-brasa .cinema-card {background:#f9f3eaf5;color:#312820;border-top-color:#a53229}
.theme-brasa .cinema-card h2 {color:#332720}
.theme-brasa .cinema-card small {color:#a53529}
.theme-brasa .cinema-card p {color:#5f5144}
.theme-brasa .menu-section {background:linear-gradient(130deg,#efe5d7,#f8f3ea);color:#352a23}
.theme-brasa .section-head h2,.theme-brasa .section-head h2 em {color:#a0362a}
.theme-brasa .section-head>p,.theme-brasa .dish-info p {color:#716255}
.theme-brasa .category-tabs button {color:#5d5147;border-color:#a998844f}
.theme-brasa .category-tabs button.is-active {color:#fff;background:#2a6c4e;border-color:#2a6c4e}
.theme-brasa .tabs-arrow {background:#e7dbc8;color:#a13529}
.theme-brasa .dish-row {border-color:#8b72502c}
.theme-brasa .dish-info h3 {color:#2d261e}
.theme-brasa .dish-info small,.theme-brasa .dish-detail,.theme-brasa .dish-row>strong {color:#9d362b}
.theme-brasa .dish-detail {border-color:#a4362b}
.theme-brasa .allergens {color:#8c7a68}
.theme-brasa .menu-photo {box-shadow:0 25px 65px #b6a38a5c}
.theme-brasa .menu-photo small {color:#f4dbb9}
.theme-brasa .moments {background:#f8f3ea}
.theme-brasa .moments-cards article {border-radius:120px 120px 4px 4px}
.theme-brasa .moments-cards article span {color:#f1cfaf}
.theme-brasa .event-section {background:#efe3d2;color:#34271f}
.theme-brasa .reservation {background:linear-gradient(123deg,#703d32,#8f493e 60%,#472e28);color:#fff}
.theme-brasa .reservation .eyebrow {color:#f1cdb6}
.theme-brasa .reservation h2 em {color:#f4caa5}
.theme-brasa .reservation-copy>p:not(.eyebrow) {color:#f1ded6}
.theme-brasa .phone-card {border-left-color:#f1cdb6}
.theme-brasa .phone-card small {color:#f4c7a0}
.theme-brasa .booking-form {background:#fffcf6;color:#312922;border-color:#e8d8c2}
.theme-brasa .form-head {border-color:#d5c4b0}
.theme-brasa .form-head>span,.theme-brasa .form-head small {color:#a63f34}
.theme-brasa .booking-form input:not([type=checkbox]),.theme-brasa .booking-form select,.theme-brasa .booking-form textarea {background:#fff;border-color:#d8c5b1;color:#312822}
.theme-brasa .whatsapp-submit {background:#25744d}
.theme-brasa .review {background:#6d352b}
.theme-brasa .review h2 em {color:#f1c2ab}
.theme-brasa .visit-details small,.theme-brasa .text-link {color:#a33329}
.theme-brasa .button-dark {background:#2b694a;color:#fff}
.theme-brasa .site-footer {background:#28231e;color:#fff;border-top-color:#a53229}
.theme-brasa .floating-booking {background:#276f4d;color:#fff}
.theme-brasa .floating-review {background:#a53229;color:#fff}
.theme-brasa .dish-modal {background:#f8f3ea;color:#2b221e}
.theme-brasa .dish-modal-copy p {color:#5e5045}

/* ENOTECA · Verde botella, vino borgoña, latón y terciopelo. */
.theme-miga .site-header {background:#0c1711ef;border-bottom:1px solid #b79a6960}
.theme-miga .main-nav a {color:#f1e8d5}
.theme-miga .main-nav a:hover {color:#d3b283}
.theme-miga .main-nav .nav-review {color:#eddbbb;border-color:#b89e7a}
.theme-miga .hero {background:#102018;color:#fff}
.theme-miga .hero-photo {filter:saturate(.72) contrast(1.1) brightness(.75)!important;object-position:center}
.theme-miga .hero-shade {background:linear-gradient(90deg,#0b1b16fa 0%,#122b20e2 31%,#15312188 63%,#0e1a1438 100%),linear-gradient(0deg,#0a1812d9,transparent 64%)}
.theme-miga .hero .eyebrow {color:#c4a36f}
.theme-miga .hero h1 {font-size:clamp(57px,7vw,105px);max-width:850px;text-transform:none;font-weight:400;font-style:italic;letter-spacing:-2px;color:#fff5e7}
.theme-miga .hero .lead {color:#ecdeca}
.theme-miga .hero-traits,.theme-miga .scroll-cue {color:#c5b595}
.theme-miga .button,.theme-miga .booking-form,.theme-miga .cinema-card {border-radius:3px}
.theme-miga .button-accent {background:#b69a6b;color:#1b241a}
.theme-miga .button-light {border-color:#d2bd91;color:#f5e8d6}
.theme-miga .eyebrow,.theme-miga .eyebrow-dark {color:#bd9c68}
.theme-miga .intro h2,.theme-miga .moments h2,.theme-miga .visit h2 {color:#f5e8d3}
.theme-miga .intro-copy>p,.theme-miga .visit-copy {color:#c9bda5}
.theme-miga .intro-facts {border-color:#baa47756;color:#b9a17f}
.theme-miga .text-link {color:#dbc391}
.theme-miga .padrino-art-frame {border:8px solid #263c2d;box-shadow:0 25px 80px #0007}
.theme-miga .cinema-card {background:#13231bfa;border-top-color:#b3996e}
.theme-miga .cinema-card h2 {color:#f3e6cf}
.theme-miga .cinema-card small {color:#dbb87c}
.theme-miga .menu-section {background:linear-gradient(135deg,#102a20,#0b1611 68%,#271817);color:#f6ebd8}
.theme-miga .section-head h2 em {color:#ba9b6b}
.theme-miga .category-tabs button {border-radius:28px;color:#cbbfa9}
.theme-miga .category-tabs button.is-active {background:#a98a5e;border-color:#a98a5e;color:#102017}
.theme-miga .dish-row {border-color:#ded1b120}
.theme-miga .dish-info small,.theme-miga .dish-row>strong,.theme-miga .dish-detail {color:#c7a970}
.theme-miga .dish-detail {border-color:#c7a970}
.theme-miga .menu-photo>div small {color:#d9bc8d}
.theme-miga .moments {background:#15221c}
.theme-miga .moments h2 em {color:#d0a567}
.theme-miga .moments-cards article {border:1px solid #a68c6250}
.theme-miga .moments-cards article span {color:#e0ba7f}
.theme-miga .event-section {background:#251a19;color:#f4e6d9}
.theme-miga .reservation {background:linear-gradient(120deg,#2b201f,#0d1a15 75%);color:#f5ebd9}
.theme-miga .reservation h2 em {color:#bd9f71}
.theme-miga .reservation-copy>p:not(.eyebrow) {color:#c5b8a9}
.theme-miga .phone-card {border-color:#c2a46d}
.theme-miga .booking-form {background:#233128;color:#f5ecdb;box-shadow:0 30px 80px #0008;border-color:#85785760}
.theme-miga .form-head {border-color:#a99e8055}
.theme-miga .form-head>span,.theme-miga .form-head small {color:#dbb985}
.theme-miga .booking-form label {color:#f0e7d7}
.theme-miga .booking-form input:not([type=checkbox]),.theme-miga .booking-form select,.theme-miga .booking-form textarea {background:#14221b;color:#fff7e8;border-color:#708269}
.theme-miga .booking-check a {color:#e2bd85}
.theme-miga .form-note {color:#c5bbac}
.theme-miga .review {background:#251916}
.theme-miga .review h2 em {color:#c8a373}
.theme-miga .visit {background:#15221c}
.theme-miga .visit-details small {color:#c4a370}
.theme-miga .button-dark {background:#a4875d;color:#0c1812}
.theme-miga .site-footer {background:#0a130e;color:#f8eee0;border-top-color:#b19a70}
.theme-miga .creator {color:#cfb283}
.theme-miga .floating-booking {background:#b3996e;color:#101a12}
.theme-miga .floating-review {background:#64303a;color:#fff}
.theme-miga .dish-modal {background:#1b2c22;color:#f5e9d6}

@media(max-width:1000px){
  .padrino-wordmark {width:205px}
  .site-header {min-height:82px}
  .main-nav {gap:16px}
  .theme-costa .hero-actions {min-width:195px}
}
@media(max-width:760px){
  .site-header {min-height:70px;padding:7px 16px}
  .padrino-wordmark {width:min(60vw,220px);max-height:57px}
  .main-nav {top:70px;background:#101713fb;border-top:1px solid #a49c7d47}
  .theme-brasa .main-nav {background:#f9f4eafa;border-top-color:#ac807348}
  .theme-costa .main-nav {background:#080c09fc}
  .theme-miga .main-nav {background:#0c1711fc}
  .main-nav a {font-size:14px}
  .theme-costa .hero {padding-top:70px;min-height:0}
  .theme-costa .hero-picture {height:clamp(435px,115vw,680px);aspect-ratio:auto}
  .theme-costa .hero-photo {object-fit:cover;object-position:center top}
  .theme-costa .hero-content {display:block;padding:28px 0 68px}
  .theme-costa .hero .eyebrow {font-size:9px;letter-spacing:2.1px}
  .theme-costa .hero h1 {font-size:clamp(41px,11vw,63px);margin:16px 0}
  .theme-costa .hero .lead {font-size:18px;margin:0}
  .theme-costa .hero-actions {display:flex;flex-direction:column;gap:10px;margin:25px 0 20px}
  .theme-costa .hero-traits {gap:10px;margin-top:16px;font-size:10px}
  .theme-costa .hero-traits span:last-child {display:none}
  .theme-costa .scroll-cue {bottom:18px;right:6vw}
  .theme-brasa .hero,.theme-miga .hero {min-height:89svh}
  .theme-brasa .hero-content,.theme-miga .hero-content {padding-top:120px}
  .theme-brasa .hero-shade {background:linear-gradient(90deg,#fbf6eded,#fbf6edb7 64%,#fbf6ed38),linear-gradient(0deg,#fcf8f3b8,transparent 65%)}
  .theme-brasa .hero h1,.theme-miga .hero h1 {font-size:clamp(48px,11.8vw,72px);line-height:1.02}
  .intro {padding-top:75px;padding-bottom:76px}
  .padrino-art-frame {width:min(245px,70vw);max-width:100%;margin-top:25px}
  .cinema-card {width:min(90vw,450px);padding:25px}
  .moments-cards {gap:9px}
  .moments-cards article {height:400px}
  .tabs-shell {background:var(--coal);box-shadow:0 8px 27px #0006}
  .theme-brasa .tabs-shell {background:#f0e5d7f5}
  .theme-costa .tabs-shell {background:#0e1710f5}
  .theme-miga .tabs-shell {background:#0b1911f5}
  .menu-section,.reservation {padding-top:78px;padding-bottom:78px}
  .site-footer {gap:20px}
  .visit-map {min-height:400px}
}
@media(max-width:390px){
  .theme-costa .hero-picture {height:425px}
  .theme-costa .hero h1 {font-size:42px}
  .theme-costa .hero .button {min-height:46px}
  .padrino-wordmark {width:185px}
}
@media(prefers-reduced-motion:reduce){.moments-cards article img {transition:none}}
