:root{
  --ink:#0b141c;
  --primary:#244454;
  --slate:#607274;
  --mint:#f0fff5;
  --white:#ffffff;

  --deep:#081018;
  --blue-deep:#102532;
  --blue-mid:#183848;

  --text:#ffffff;
  --text-soft:rgba(255,255,255,.76);
  --text-faint:rgba(255,255,255,.58);

  --dark-line:rgba(255,255,255,.12);
  --light-line:rgba(11,20,28,.12);

  --shadow:0 18px 48px rgba(0,0,0,.24);
  --shadow-soft:0 10px 28px rgba(0,0,0,.16);

  --radius:16px;
  --radius-lg:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  background:
    radial-gradient(circle at 78% 14%,rgba(36,68,84,.46) 0,rgba(36,68,84,0) 34%),
    radial-gradient(circle at 10% 40%,rgba(96,114,116,.16) 0,rgba(96,114,116,0) 30%),
    linear-gradient(145deg,#081018 0%,#0b141c 42%,#16303e 72%,#244454 100%);
  background-attachment:fixed;
}

a{color:inherit}
img{max-width:100%;height:auto}

/* ---------- Header ---------- */

.site-header{
  min-height:72px;
  padding:0 max(24px,calc((100% - 1180px)/2));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:#fff;
  border-bottom:1px solid rgba(11,20,28,.10);
  box-shadow:0 8px 28px rgba(0,0,0,.08);
  position:sticky;
  top:0;
  z-index:50;
}

.brand{
  font-family:Georgia,serif;
  font-weight:700;
  letter-spacing:.08em;
  color:var(--ink);
  text-decoration:none;
  font-size:20px;
}

.brand span{color:var(--primary)}

nav{
  display:flex;
  gap:22px;
  align-items:center;
}

nav a{
  color:var(--ink);
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  transition:.18s ease;
}

nav a:hover{color:var(--primary)}

nav a[href="/join.php"]{
  background:linear-gradient(135deg,var(--primary),var(--ink));
  color:#fff;
  padding:10px 15px;
  border-radius:999px;
  box-shadow:0 8px 20px rgba(36,68,84,.20);
}

/* ---------- Layout ---------- */

.container{
  width:min(1180px,calc(100% - 36px));
  margin:auto;
}

.section{
  padding:66px 0;
  color:#fff;
}

.section + .section{
  border-top:1px solid rgba(255,255,255,.06);
}

.section h2{
  margin:0 0 10px;
  font-family:Georgia,serif;
  font-size:40px;
  color:#fff;
  letter-spacing:-.015em;
}

.section-intro{
  max-width:760px;
  margin-bottom:30px;
  color:var(--text-soft);
}

.grid{
  display:grid;
  grid-template-columns:calc((100% - 36px)/3) calc((100% - 36px)/3) calc((100% - 36px)/3);
  gap:18px;
}

/* ---------- Hero ---------- */

.hero{
  min-height:540px;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(115deg,rgba(6,13,19,.95),rgba(11,20,28,.88) 44%,rgba(36,68,84,.73)),
    radial-gradient(circle at 78% 35%,rgba(207,245,220,.20),transparent 30%);
  border-bottom:1px solid var(--dark-line);
}

.hero::after{
  content:"";
  position:absolute;
  inset:auto -8% -38% 40%;
  height:420px;
  background:radial-gradient(circle,rgba(36,68,84,.34),rgba(36,68,84,0) 68%);
  pointer-events:none;
}

.hero .inner{
  width:min(1180px,calc(100% - 36px));
  margin:auto;
  padding:92px 0;
  position:relative;
  z-index:1;
}

.eyebrow{
  text-transform:uppercase;
  letter-spacing:.20em;
  font-size:14px;
  font-weight:800;
  color:var(--mint);
}

.hero h1,
.hero-mini h1,
.profile-page h1,
.form-wrap h1,
.dashboard h1{
  font-family:Georgia,serif;
  color:#fff;
  letter-spacing:-.015em;
}

.hero h1{
  max-width:780px;
  margin:12px 0 24px;
  font-size:clamp(48px,7vw,84px);
  line-height:.98;
}

.hero p{
  max-width:690px;
  font-size:20px;
  color:var(--text-soft);
}

.hero-mini{
  padding:54px 0;
  background:linear-gradient(115deg,rgba(8,16,24,.96),rgba(36,68,84,.78));
  border-bottom:1px solid var(--dark-line);
}

.hero-mini h1{
  margin:0;
  font-size:50px;
}

/* ---------- Buttons ----------
   Default buttons are dark. "soft" means white, never mint.
   This prevents mint buttons from disappearing into mint cards/sections.
*/

.hero-actions,.actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:28px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:12px 19px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff;
  text-decoration:none;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.btn:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(0,0,0,.24);
  border-color:rgba(207,245,220,.40);
}

.btn.alt,
.btn.soft{
  background:#fff;
  color:var(--ink);
  border-color:#fff;
}

.btn.small{
  min-height:auto;
  padding:8px 12px;
  font-size:14px;
}

.danger{
  background:#0b141c;
  color:#fff;
  border-color:#607274;
}

/* ---------- Surface hierarchy ----------
   DARK parent  -> MINT or WHITE child
   MINT parent  -> DARK or WHITE child
   WHITE parent -> DARK or MINT child
*/

/* Default card surface: intended for dark page backgrounds */
.category-card,
.profile-card,
.panel,
.claim-box,
.empty{
  background:var(--mint);
  color:var(--ink);
  border:1px solid rgba(255,255,255,.24);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
}

.category-card,
.profile-card,
.panel{
  padding:22px;
}

/* Any nested card inside a mint card becomes white */
.panel .panel,
.panel .claim-box,
.claim-box .panel,
.claim-box .claim-box{
  background:#fff;
  color:var(--ink);
  border-color:var(--light-line);
}

/* Buttons inside mint/white cards stay dark or white, never mint */
.panel .btn,
.claim-box .btn,
.empty .btn,
.category-card .btn,
.profile-card .btn{
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff;
  border-color:rgba(11,20,28,.08);
}

.panel .btn.alt,
.panel .btn.soft,
.claim-box .btn.alt,
.claim-box .btn.soft,
.category-card .btn.alt,
.category-card .btn.soft,
.profile-card .btn.alt,
.profile-card .btn.soft{
  background:#fff;
  color:var(--ink);
  border-color:var(--light-line);
}

/* ---------- Category cards ---------- */

.category-card{
  min-height:176px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
  text-decoration:none;
  transition:.20s ease;
}

.category-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,0) 48%);
  pointer-events:none;
}

.category-card:hover,
.profile-card:hover{
  transform:translateY(-3px);
  border-color:rgba(36,68,84,.25);
  box-shadow:var(--shadow);
}

.category-card strong{
  position:relative;
  font-family:Georgia,serif;
  font-size:26px;
  color:var(--ink);
}

.category-card span{
  position:relative;
  font-size:14px;
  color:var(--primary);
}

/* ---------- Stats ---------- */

.stats{
  padding:34px 0;
  background:var(--mint);
  color:var(--ink);
  border-top:0;
  border-bottom:1px solid var(--light-line);
  box-shadow:0 8px 28px rgba(11,20,28,.08);
}

.stats .grid{
  grid-template-columns:calc((100% - 54px)/4) calc((100% - 54px)/4) calc((100% - 54px)/4) calc((100% - 54px)/4);
}

.stat{text-align:center}

.stat strong{
  display:block;
  font-family:Georgia,serif;
  font-size:38px;
  color:var(--ink);
}

.stat span{
  font-size:14px;
  color:var(--primary);
}

/* ---------- Forms ---------- */

.filters{
  display:grid;
  grid-template-columns:46% 18% 18% auto;
  gap:10px;
  margin:25px 0;
}

.input,
select,
textarea,
input[type=text],
input[type=email],
input[type=password],
input[type=url],
input[type=number]{
  width:100%;
  padding:12px 13px;
  border:1px solid rgba(11,20,28,.16);
  border-radius:11px;
  outline:none;
  background:#fff;
  color:var(--ink);
  font:inherit;
  transition:border-color .18s ease,box-shadow .18s ease;
}

.input:focus,
select:focus,
textarea:focus,
input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=url]:focus,
input[type=number]:focus{
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(36,68,84,.14);
}

textarea{
  min-height:130px;
  resize:vertical;
}

label{
  display:block;
  margin:15px 0 6px;
  font-size:14px;
  font-weight:800;
}

.form-wrap{
  width:min(760px,calc(100% - 36px));
  margin:58px auto;
  padding:34px;
  background:linear-gradient(145deg,rgba(29,58,73,.76),rgba(11,20,28,.94));
  border:1px solid var(--dark-line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow);
}

.form-wrap h1{
  margin-top:0;
  font-size:46px;
}

.form-wrap > p{
  color:var(--text-soft);
}

.form-wrap > a{color:#fff}

/* Mint form card inside dark shell */
.form-wrap .panel{
  background:var(--mint);
  color:var(--ink);
  border-color:rgba(255,255,255,.24);
}

.form-wrap .panel h1,
.form-wrap .panel h2,
.form-wrap .panel h3,
.form-wrap .panel p,
.form-wrap .panel label,
.form-wrap .panel strong,
.form-wrap .panel li,
.form-wrap .panel a:not(.btn){
  color:var(--ink);
}

.form-row{
  display:grid;
  grid-template-columns:calc(50% - 7px) calc(50% - 7px);
  gap:14px;
}

/* ---------- Profile cards / pages ---------- */

.profile-grid{
  display:grid;
  grid-template-columns:calc((100% - 36px)/3) calc((100% - 36px)/3) calc((100% - 36px)/3);
  gap:18px;
}

.profile-card{
  position:relative;
}

.profile-card a{
  color:var(--ink);
  text-decoration:none;
}

.profile-card h3{
  margin:7px 0;
  font-family:Georgia,serif;
  font-size:24px;
  color:var(--ink);
}

.meta,
.muted{
  font-size:14px;
  color:var(--text-faint);
}

.profile-card .meta,
.profile-card .muted,
.panel .muted,
.claim-box .muted{
  color:var(--primary);
}

.badge{
  display:inline-block;
  padding:5px 9px;
  border:1px solid rgba(207,245,220,.28);
  border-radius:999px;
  background:rgba(207,245,220,.14);
  color:#e9fff0;
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}

/* Badges inside mint cards must contrast */
.profile-card .badge,
.panel .badge,
.claim-box .badge{
  background:var(--ink);
  border-color:var(--ink);
  color:#fff;
}

.badge.unclaimed{
  background:var(--slate);
  border-color:var(--slate);
  color:#fff;
}

.profile-page{
  display:grid;
  grid-template-columns:calc(66.666% - 14px) calc(33.334% - 14px);
  gap:28px;
  padding:56px 0;
  color:#fff;
}

.profile-page h1{
  margin:10px 0 18px;
  font-size:54px;
  line-height:1.04;
}

.profile-page > section > p,
.profile-page > section > li{
  color:var(--text-soft);
}

.profile-page > section > h2{
  margin-top:34px;
  font-family:Georgia,serif;
  color:#fff;
}

.profile-page .panel p,
.profile-page .panel li{
  color:var(--ink);
}

.profile-aside{
  align-self:start;
  position:sticky;
  top:96px;
}

.profile-aside .panel{
  background:var(--mint);
  color:var(--ink);
}

.profile-aside .panel h3,
.profile-aside .panel p,
.profile-aside .panel strong,
.profile-aside .panel a:not(.btn){
  color:var(--ink);
}

.facts{
  display:grid;
  grid-template-columns:calc(50% - 7px) calc(50% - 7px);
  gap:0 18px;
}

.fact{
  padding:13px 0;
  border-top:1px solid var(--dark-line);
  color:#fff;
}

.fact small{
  display:block;
  margin-bottom:3px;
  color:var(--text-faint);
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.claim-box{
  padding:20px;
}

.claim-box p{color:var(--primary)}

/* ---------- Notices ---------- */

.notice{
  margin:18px 0;
  padding:15px 17px;
  background:var(--mint);
  color:var(--ink);
  border:1px solid rgba(255,255,255,.22);
  border-left:4px solid var(--primary);
  border-radius:10px;
  box-shadow:var(--shadow-soft);
}

.notice p,
.notice strong,
.notice a{
  color:var(--ink);
}

/* A notice nested in a mint panel becomes white */
.panel .notice,
.claim-box .notice{
  background:#fff;
  border-color:var(--light-line);
}

.flash{
  width:min(1180px,calc(100% - 36px));
  margin:18px auto;
  padding:13px 16px;
  border-radius:11px;
  background:var(--mint);
  border:1px solid rgba(255,255,255,.20);
  color:var(--ink);
  box-shadow:var(--shadow-soft);
}

.flash.error{
  background:#fff;
  border-color:var(--light-line);
  color:var(--ink);
}

/* ---------- Dashboard / admin ---------- */

.dashboard{
  width:min(1180px,calc(100% - 36px));
  margin:48px auto;
  color:#fff;
}

.dashboard h1{
  margin-top:0;
  font-size:46px;
}

.dashboard .section{
  padding:46px 0 10px;
}

.dashboard .section h2{
  color:#fff;
}

.dashboard-grid{
  display:grid;
  grid-template-columns:260px calc(100% - 282px);
  gap:22px;
}

.sidebar{
  height:max-content;
  padding:18px;
  background:linear-gradient(160deg,rgba(36,68,84,.72),rgba(11,20,28,.98));
  color:#fff;
  border:1px solid var(--dark-line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
}

.sidebar a{
  display:block;
  padding:10px 9px;
  color:rgba(255,255,255,.88);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.10);
}

.sidebar a:hover{
  color:#fff;
  background:rgba(255,255,255,.05);
}

/* Admin/dashboard panels sit on dark background -> mint */
.dashboard .panel{
  background:var(--mint);
  color:var(--ink);
}

.dashboard .panel h2,
.dashboard .panel h3,
.dashboard .panel p,
.dashboard .panel label,
.dashboard .panel strong,
.dashboard .panel small{
  color:var(--ink);
}

/* Tables are white surfaces on the dark dashboard */
table{
  width:100%;
  border-collapse:collapse;
  overflow:hidden;
  background:#fff;
  color:var(--ink);
  border:1px solid var(--light-line);
  border-radius:12px;
  box-shadow:var(--shadow-soft);
}

th,td{
  padding:12px;
  text-align:left;
  border-bottom:1px solid var(--light-line);
  font-size:14px;
}

th{
  background:var(--mint);
  color:var(--ink);
}

td{color:var(--ink)}

table .muted{color:var(--primary)}

table .btn{
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff;
}

table .btn.soft{
  background:var(--ink);
  color:#fff;
  border-color:var(--ink);
}

.empty{
  padding:32px;
  text-align:center;
  color:var(--ink);
}

.pagination{
  display:flex;
  gap:8px;
  margin-top:20px;
}

.pagination a{
  padding:8px 11px;
  background:var(--mint);
  color:var(--ink);
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  text-decoration:none;
}

.pagination a:hover{
  background:#fff;
}

/* ---------- Homepage ---------- */

.home-hero{min-height:520px}

/* Mint strip. No mint buttons/cards are placed inside it. */
.home-stats{
  background:var(--mint);
}

/* Dark section -> mint cards */
.section-light{
  background:
    radial-gradient(circle at 82% 18%,rgba(36,68,84,.48) 0,rgba(36,68,84,0) 38%),
    linear-gradient(145deg,#081018 0%,#0b141c 48%,#16303e 76%,#244454 100%);
  color:#fff;
}

.section-light h1,
.section-light h2,
.section-light h3{
  color:#fff;
}

.section-light .section-intro{
  color:var(--text-soft);
}

.section-light .category-card,
.section-light .profile-card,
.section-light .panel,
.section-light .claim-box{
  background:var(--mint);
  color:var(--ink);
}

/* Mint section -> white/dark children, NEVER mint children */
.section-soft{
  background:var(--mint);
  color:var(--ink);
  border-top:1px solid var(--light-line);
}

.section-soft h1,
.section-soft h2,
.section-soft h3,
.section-soft p{
  color:var(--ink);
}

.section-soft .section-intro{
  color:var(--primary);
}

.section-soft .eyebrow{
  color:var(--primary);
}

.section-soft .category-card,
.section-soft .profile-card,
.section-soft .panel,
.section-soft .claim-box,
.section-soft .empty{
  background:#fff;
  color:var(--ink);
  border-color:var(--light-line);
}

.section-soft .btn{
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff;
}

.section-soft .btn.alt,
.section-soft .btn.soft{
  background:#fff;
  color:var(--ink);
  border-color:var(--light-line);
}

.home-industry-grid{
  display:grid;
  grid-template-columns:calc(58% - 14px) calc(42% - 14px);
  gap:28px;
  align-items:center;
}

.home-industry-copy{
  max-width:720px;
}

/* Specific premium dark card on the mint industry section */
.home-industry-panel{
  background:linear-gradient(145deg,#183848,#0b141c) !important;
  color:#fff !important;
  border-color:rgba(11,20,28,.18) !important;
  box-shadow:0 18px 42px rgba(11,20,28,.18) !important;
}

.home-industry-panel strong,
.home-industry-panel p,
.home-industry-panel .muted,
.home-industry-panel a:not(.btn){
  color:#fff !important;
}

.home-industry-panel .muted{
  color:rgba(255,255,255,.76) !important;
}

/* ---------- Claim verification ---------- */

.claim-flow{max-width:860px}

.claim-flow .panel{
  margin-top:18px;
  background:var(--mint);
  color:var(--ink);
}

.claim-flow h2{
  margin-top:26px;
  font-family:Georgia,serif;
  color:var(--ink);
}

.claim-flow h3{
  margin-bottom:6px;
  color:var(--ink);
}

.method-grid{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:14px 0 20px;
}

/* Method cards are WHITE because their parent claim panel is MINT */
.method-card{
  width:calc(50% - 6px);
  margin:0;
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:16px;
  background:#fff;
  color:var(--ink);
  border:1px solid var(--light-line);
  border-radius:14px;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(0,0,0,.08);
  transition:.18s ease;
}

.method-card:hover{
  border-color:var(--primary);
  box-shadow:0 12px 26px rgba(0,0,0,.12);
  transform:translateY(-1px);
}

.method-card input{
  width:auto;
  margin:4px 2px 0 0;
  accent-color:var(--primary);
}

.method-card span{display:block}

.method-card strong{
  display:block;
  margin-bottom:4px;
  color:var(--ink);
  font-family:Georgia,serif;
  font-size:18px;
}

.method-card small{
  display:block;
  color:var(--primary);
  font-size:14px;
  line-height:1.4;
}

.verification-code{
  display:inline-block;
  margin:10px 0 16px;
  padding:12px 16px;
  background:var(--ink);
  color:var(--mint);
  border:1px solid rgba(255,255,255,.15);
  border-radius:10px;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:20px;
  font-weight:800;
  letter-spacing:.08em;
}

.claim-flow pre,
.claim-flow code{
  white-space:pre-wrap;
  word-break:break-word;
}

.claim-flow pre{
  overflow:auto;
  padding:12px;
  background:#fff;
  color:var(--ink);
  border:1px solid var(--light-line);
  border-radius:10px;
}

.manual-proof-fields{
  margin-top:18px;
  padding-top:4px;
  border-top:1px solid var(--light-line);
}

/* ---------- Footer ---------- */

footer{
  margin-top:76px;
  padding:34px max(24px,calc((100% - 1180px)/2));
  display:flex;
  gap:15px;
  justify-content:space-between;
  flex-wrap:wrap;
  background:#081018;
  color:var(--text-soft);
  border-top:1px solid var(--dark-line);
  font-size:14px;
}

footer strong{color:#fff}

.home-industry + footer{margin-top:0}

::selection{
  background:var(--mint);
  color:var(--ink);
}

/* ---------- Responsive ---------- */

@media(max-width:800px){
  .site-header{
    height:auto;
    min-height:66px;
    padding:12px 18px;
    align-items:flex-start;
  }

  .site-header nav{
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  .site-header nav a{font-size:14px}

  .grid,
  .profile-grid,
  .stats .grid{
    grid-template-columns:calc(50% - 7px) calc(50% - 7px);
  }

  .filters{grid-template-columns:100%}

  .profile-page,
  .dashboard-grid,
  .home-industry-grid{
    grid-template-columns:100%;
  }

  .profile-aside{position:static}

  .form-row,
  .facts{
    grid-template-columns:100%;
  }

  .form-wrap{
    padding:26px 22px;
  }
}

@media(max-width:650px){
  .method-card{width:100%}
}

@media(max-width:520px){
  .grid,
  .profile-grid,
  .stats .grid{
    grid-template-columns:100%;
  }

  .hero{min-height:500px}
  .hero h1{font-size:48px}
  .section h2{font-size:34px}
  .profile-page h1{font-size:42px}
  .form-wrap h1,
  .dashboard h1{font-size:40px}
  .brand{font-size:17px}
}

/* ---------- Photographic hero backgrounds — v1.1.2 ---------- */
.hero-image-home,
.hero-image-explore,
.hero-image-join,
.hero-image-login{
  position:relative;
  background-color:#0b141c;
  background-position:center center;
  background-repeat:no-repeat;
  background-size:cover;
}

.hero-image-home{
  background-image:
    linear-gradient(110deg,rgba(8,16,24,.94) 0%,rgba(11,20,28,.82) 45%,rgba(36,68,84,.64) 100%),
    url('/uploads/Maguey-fields.webp');
}

.hero-image-explore{
  background-image:
    linear-gradient(110deg,rgba(8,16,24,.93) 0%,rgba(11,20,28,.80) 48%,rgba(36,68,84,.62) 100%),
    url('/uploads/bg1-top-shot-magueyes.webp');
}

.hero-image-join{
  background-image:
    linear-gradient(110deg,rgba(8,16,24,.94) 0%,rgba(11,20,28,.82) 50%,rgba(36,68,84,.60) 100%),
    url('/uploads/Generic-Mezcal-Oaxaca.webp');
}

.hero-image-login{
  background-image:
    linear-gradient(110deg,rgba(8,16,24,.94) 0%,rgba(11,20,28,.82) 50%,rgba(36,68,84,.60) 100%),
    url('/uploads/types-mezcal.webp');
}

.hero-image-explore .container,
.hero-image-join .container,
.hero-image-login .container,
.hero-image-home .inner{
  position:relative;
  z-index:1;
}

.hero-image-explore .eyebrow,
.hero-image-join .eyebrow,
.hero-image-login .eyebrow{
  color:#f0fff5;
}

.hero-image-explore p,
.hero-image-join p,
.hero-image-login p{
  max-width:720px;
  color:rgba(255,255,255,.82);
}


/* =========================================================
   v1.2.0 — SIMPLE WHITE CARD SYSTEM + EASY PROFILE WIZARD
   Every real card is white. Card-bearing light sections use mint.
   ========================================================= */

:root{--mint:#f0fff5;}

/* All true cards are white, everywhere. */
.category-card,
.profile-card,
.panel,
.claim-box,
.empty,
.dashboard .panel,
.profile-aside .panel,
.claim-flow .panel,
.home-industry-panel{
  background:#fff !important;
  color:#0b141c !important;
  border:1px solid rgba(11,20,28,.10) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.16) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.category-card strong,
.category-card span,
.profile-card h1,.profile-card h2,.profile-card h3,
.profile-card p,.profile-card .meta,.profile-card .muted,
.panel h1,.panel h2,.panel h3,.panel h4,.panel p,.panel li,.panel label,.panel strong,.panel small,.panel .muted,
.claim-box h1,.claim-box h2,.claim-box h3,.claim-box p,.claim-box strong,.claim-box .muted,
.empty,
.profile-aside .panel h3,.profile-aside .panel p,.profile-aside .panel strong,.profile-aside .panel small,
.home-industry-panel strong,.home-industry-panel p,.home-industry-panel .muted{
  color:#0b141c !important;
}

.category-card span,
.profile-card .meta,
.profile-card .muted,
.panel .muted,
.profile-aside .panel small{
  color:#244454 !important;
}

.category-card a,
.profile-card a,
.panel a:not(.btn),
.claim-box a:not(.btn),
.profile-aside .panel a:not(.btn),
.home-industry-panel a:not(.btn){
  color:#244454 !important;
}

/* White cards must never sit on a white card-bearing section. */
.section-soft,
.home-industry{
  background:#f0fff5 !important;
  color:#0b141c !important;
}

.section-soft h1,.section-soft h2,.section-soft h3,
.home-industry h1,.home-industry h2,.home-industry h3{
  color:#0b141c !important;
}

.section-soft .section-intro,
.home-industry .section-intro{
  color:#244454 !important;
}

/* Buttons over white cards stay dark. */
.panel .btn,
.claim-box .btn,
.category-card .btn,
.profile-card .btn,
.home-industry-panel .btn{
  background:linear-gradient(135deg,#31576b,#244454) !important;
  color:#fff !important;
  border-color:#244454 !important;
}

.panel .btn.alt,.panel .btn.soft,
.claim-box .btn.alt,.claim-box .btn.soft,
.category-card .btn.alt,.category-card .btn.soft,
.profile-card .btn.alt,.profile-card .btn.soft{
  background:#0b141c !important;
  color:#fff !important;
  border-color:#0b141c !important;
}

/* Claim selector background is mint so its white method choices contrast. */
.claim-surface{
  padding:24px;
  background:#f0fff5;
  color:#0b141c;
  border-radius:18px;
  box-shadow:0 14px 34px rgba(0,0,0,.16);
}
.claim-surface label,.claim-surface h2,.claim-surface p{color:#0b141c;}
.claim-surface .method-card{background:#fff;color:#0b141c;}

/* Larger, uniform controls. */
.input,
select,
input[type=text],
input[type=email],
input[type=password],
input[type=url],
input[type=number],
input[type=tel],
input:not([type]){
  min-height:54px !important;
  height:54px;
  padding:0 16px !important;
  border-radius:12px !important;
  font-size:16px !important;
  line-height:54px;
}
select{line-height:normal;}
textarea{
  min-height:170px !important;
  padding:15px 16px !important;
  border-radius:12px !important;
  font-size:16px !important;
  line-height:1.5;
}
.file-input{
  width:100%;
  min-height:54px;
  padding:10px 12px;
  background:#fff;
  color:#0b141c;
  border:1px solid rgba(11,20,28,.16);
  border-radius:12px;
}

/* Typeform-like profile wizard. */
.wizard-shell{
  width:100%;
  max-width:850px;
  margin:0 auto;
  padding:30px;
  background:#fff;
  color:#0b141c;
  border:1px solid rgba(11,20,28,.10);
  border-radius:22px;
  box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.wizard-shell h2,.wizard-shell h3,.wizard-shell h4,.wizard-shell label{color:#0b141c;}
.wizard-shell h2{margin:4px 0 0;font-family:Georgia,serif;font-size:34px;}
.wizard-shell h3{margin:8px 0 10px;font-family:Georgia,serif;font-size:32px;line-height:1.12;outline:none;}
.wizard-shell h4{font-family:Georgia,serif;font-size:22px;margin:26px 0 4px;}
.wizard-shell .eyebrow{color:#244454;}
.wizard-top{
  display:flex;
  justify-content:space-between;
  gap:22px;
  align-items:flex-end;
  padding-bottom:22px;
  border-bottom:1px solid rgba(11,20,28,.10);
}
.wizard-progress{width:220px;max-width:38%;font-size:14px;font-weight:800;color:#244454;text-align:right;}
.wizard-bar{height:7px;margin-top:8px;background:#e7eeea;border-radius:999px;overflow:hidden;}
.wizard-bar i{display:block;width:20%;height:100%;background:#244454;border-radius:999px;transition:width .2s ease;}
.wizard-step{padding:34px 0 8px;}
.wizard-ready .wizard-step[hidden]{display:none !important;}
.step-kicker{font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:#607274;}
.step-help{max-width:650px;margin:0 0 24px;color:#607274;font-size:16px;}
.wizard-step label{font-size:14px;margin-top:18px;}
.wizard-nav{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding-top:26px;
  margin-top:18px;
  border-top:1px solid rgba(11,20,28,.10);
}
.wizard-nav .wizard-back{margin-right:auto;}
.wizard-nav [hidden]{display:none !important;}

/* Large tap targets. These are controls, not content cards. */
.choice-grid,
.check-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:10px 0 24px;
}
.choice-option,
.check-option{
  margin:0 !important;
  cursor:pointer;
}
.choice-option input,
.check-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.choice-option span,
.check-option span{
  display:flex;
  align-items:center;
  min-height:52px;
  padding:10px 16px;
  background:#f0fff5;
  color:#0b141c;
  border:2px solid transparent;
  border-radius:12px;
  font-size:15px;
  font-weight:800;
  transition:.15s ease;
}
.choice-option input:checked + span,
.check-option input:checked + span{
  background:#244454;
  color:#fff;
  border-color:#244454;
  box-shadow:0 7px 18px rgba(36,68,84,.20);
}
.choice-option input:focus-visible + span,
.check-option input:focus-visible + span{
  outline:3px solid rgba(36,68,84,.24);
  outline-offset:2px;
}
.choice-option span:hover,
.check-option span:hover{border-color:#607274;}
.check-grid.compact .check-option span{min-height:46px;padding:8px 13px;font-size:14px;}
.profile-type-static{
  min-height:54px;
  display:flex;
  align-items:center;
  padding:0 16px;
  background:#f0fff5;
  color:#0b141c;
  border-radius:12px;
  font-weight:800;
}
.wizard-relations{
  margin-top:28px;
  padding:22px;
  background:#f0fff5;
  color:#0b141c;
  border-radius:16px;
}
.wizard-relations[hidden]{display:none !important;}

/* Dashboard stays dark around white working cards. */
.dashboard .empty{background:#fff !important;color:#0b141c !important;}
.dashboard table{background:#fff;color:#0b141c;}
.dashboard th{background:#f0fff5;color:#0b141c;}
.dashboard td{color:#0b141c;}

/* Public directory/profile cards are white. */
.section-light .category-card,
.section-light .profile-card,
.section-light .panel,
.section-light .claim-box,
.profile-page .panel,
.profile-page .profile-card,
.profile-page .claim-box{
  background:#fff !important;
  color:#0b141c !important;
}

@media(max-width:800px){
  .wizard-shell{padding:24px 20px;}
  .wizard-top{display:block;}
  .wizard-progress{width:100%;max-width:none;margin-top:18px;text-align:left;}
  .wizard-step{padding-top:28px;}
  .wizard-shell h3{font-size:28px;}
}
@media(max-width:520px){
  .wizard-shell{width:calc(100% + 4px);margin-left:-2px;padding:22px 16px;border-radius:18px;}
  .choice-option,.check-option{width:100%;}
  .choice-option span,.check-option span{width:100%;}
  .wizard-nav{flex-wrap:wrap;}
  .wizard-nav .btn{flex:1 1 46%;}
  .wizard-nav .wizard-back{margin-right:0;}
}
.panel .notice,.claim-box .notice{background:#f0fff5 !important;color:#0b141c !important;border-color:rgba(11,20,28,.10) !important;}


/* v1.2.1 — eliminate the one-pixel photographic seam below mini hero images */
.hero-image-explore,
.hero-image-join,
.hero-image-login{
  border-bottom:0 !important;
}

.hero-image-explore::after,
.hero-image-join::after,
.hero-image-login::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:#0b141c;
  z-index:2;
  pointer-events:none;
}
\n\n/* v1.2.2 — sticky footer on short pages without covering content */\nbody{\n  display:flex;\n  flex-direction:column;\n  min-height:100vh;\n}\nbody > footer{\n  margin-top:auto !important;\n  width:100%;\n}\n
/* =========================================================
   v1.2.3 — polished form-control system
   Uniform fields, solid borders and custom dropdown buttons.
   ========================================================= */

/* Every standard form control shares the same visual geometry. */
.input,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="number"],
input[type="tel"],
input:not([type]),
select{
  display:block;
  width:100% !important;
  height:56px !important;
  min-height:56px !important;
  margin:0;
  border:1px solid #c9d4cf !important;
  border-radius:12px !important;
  background-color:#fff !important;
  color:#0b141c !important;
  box-shadow:0 1px 0 rgba(11,20,28,.03) !important;
  font-size:16px !important;
  font-weight:500;
  line-height:1.2 !important;
  outline:0 !important;
  transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;
}

.input,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="number"],
input[type="tel"],
input:not([type]){
  padding:0 16px !important;
}

/* A select gets its own dedicated arrow-button area on the right. */
select{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  cursor:pointer;
  padding:0 66px 0 16px !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='M2 2l6 6 6-6' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),
    linear-gradient(#244454,#244454) !important;
  background-repeat:no-repeat,no-repeat !important;
  background-position:calc(100% - 16px) center,right center !important;
  background-size:16px 10px,48px 100% !important;
}

select::-ms-expand{display:none;}

textarea{
  display:block;
  width:100% !important;
  min-height:170px !important;
  margin:0;
  padding:15px 16px !important;
  border:1px solid #c9d4cf !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#0b141c !important;
  box-shadow:0 1px 0 rgba(11,20,28,.03) !important;
  font-size:16px !important;
  line-height:1.5 !important;
  outline:0 !important;
  resize:vertical;
  transition:border-color .15s ease,box-shadow .15s ease;
}

.input:hover,
input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="url"]:hover,
input[type="number"]:hover,
input[type="tel"]:hover,
input:not([type]):hover,
select:hover,
textarea:hover{
  border-color:#8ba09a !important;
}

.input:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input:not([type]):focus,
select:focus,
textarea:focus{
  border-color:#244454 !important;
  box-shadow:0 0 0 3px rgba(36,68,84,.14) !important;
}

/* Keep the arrow button visually active on focus without changing geometry. */
select:focus{
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='M2 2l6 6 6-6' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),
    linear-gradient(#0b141c,#0b141c) !important;
}

/* File inputs match the same control height and get a real button treatment. */
.file-input,
input[type="file"]{
  display:block;
  width:100% !important;
  min-height:56px !important;
  height:56px;
  padding:6px !important;
  border:1px solid #c9d4cf !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#0b141c !important;
  box-shadow:0 1px 0 rgba(11,20,28,.03) !important;
  font-size:15px;
}

input[type="file"]::file-selector-button{
  height:42px;
  margin:0 12px 0 0;
  padding:0 16px;
  border:0;
  border-radius:9px;
  background:#244454;
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

input[type="file"]::file-selector-button:hover{
  background:#0b141c;
}

/* Equal columns really are equal and controls never overflow their column. */
.form-row{
  align-items:end;
}
.form-row > div{
  min-width:0;
  width:100%;
}
.form-row > div > input,
.form-row > div > select,
.form-row > div > textarea{
  width:100% !important;
}

/* Labels have one consistent gap to the field beneath them. */
.wizard-step label,
.form-wrap label,
.panel label,
.claim-surface label{
  margin-bottom:8px !important;
}

/* Remove any browser-native dashed/odd focus treatment from controls. */
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:0 !important;
}

/* Disabled controls still look intentional. */
input:disabled,
select:disabled,
textarea:disabled{
  background-color:#eef3f0 !important;
  color:#607274 !important;
  cursor:not-allowed;
  opacity:1;
}

@media(max-width:520px){
  .input,
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="url"],
  input[type="number"],
  input[type="tel"],
  input:not([type]),
  select{
    height:56px !important;
    min-height:56px !important;
  }
}


/* v1.2.6 — plain large transparent icons on directory cards */
.directory-card{
  padding:18px 20px 20px;
}
.directory-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.directory-type-icon{
  width:34px;
  height:34px;
  min-width:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.directory-type-icon svg{
  width:34px;
  height:34px;
  display:block;
}
.directory-card-link{
  display:block;
  text-decoration:none;
  color:var(--ink);
}
.directory-card .meta{
  margin-bottom:10px;
}
.directory-card p{
  margin:0;
  color:#244454;
}
.claim-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:auto;
  padding:9px 14px;
  min-height:38px;
  border-radius:999px;
  font-size:14px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  border:1px solid rgba(11,20,28,.10);
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(0,0,0,.08);
}
.profile-card a.claim-pill.unclaimed,
.directory-card a.claim-pill.unclaimed{
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff !important;
}
.profile-card a.claim-pill.unclaimed:hover,
.directory-card a.claim-pill.unclaimed:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 22px rgba(0,0,0,.14);
}
.claim-pill.claimed{
  background:#fff;
  color:var(--ink);
}
@media(max-width:520px){
  .directory-card{ padding:16px 16px 18px; }
  .directory-card-top{ gap:10px; }
  .directory-type-icon{ width:30px; height:30px; min-width:30px; }
  .directory-type-icon svg{ width:30px; height:30px; }
  .claim-pill{ padding:8px 12px; min-height:36px; font-size:14px; }
}


/* v1.2.8 — expressions live under parent profiles, not in the main directory */
.expression-manager{margin-bottom:22px}
.expression-manager h2{margin-top:6px}
.expression-form{margin-top:22px}
.expression-list{display:flex;flex-direction:column;gap:14px}
.expression-card{display:flex;align-items:center;justify-content:space-between;gap:18px}
.expression-card p{margin:5px 0 0;color:#244454}
.expression-card .actions{margin:0;justify-content:flex-end}
.expression-card form{margin:0}
.expression-public-card .directory-type-icon{margin-bottom:10px}
.expression-public-card h3{margin-top:0}
@media(max-width:700px){
  .expression-card{align-items:flex-start;flex-direction:column}
  .expression-card .actions{justify-content:flex-start}
}


/* v1.2.10 — horizontal profile steps + plain notes */
.home-profile-flow{
  display:grid;
  grid-template-columns:calc((100% - 54px)/4) calc((100% - 54px)/4) calc((100% - 54px)/4) calc((100% - 54px)/4);
  gap:18px;
  align-items:stretch;
  margin:24px 0 22px;
}
.profile-step-card{
  min-height:126px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:13px;
  padding:18px;
  background:#fff;
  border:1px solid var(--light-line);
  border-radius:16px;
  box-shadow:0 8px 18px rgba(11,20,28,.06);
}
.profile-step-card .step-number{
  width:38px;
  height:38px;
  min-width:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff;
  font-weight:800;
  font-size:16px;
}
.profile-step-card .step-text{
  color:var(--ink);
  font-weight:800;
  line-height:1.35;
}
.profile-steps-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:126px;
  padding:18px;
  border-radius:16px;
  text-decoration:none;
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff !important;
  font-weight:800;
  text-align:center;
  box-shadow:0 12px 24px rgba(11,20,28,.14);
}
.profile-steps-cta:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(11,20,28,.18);
}
.profile-steps-cta span[aria-hidden="true"]{
  font-size:26px;
  line-height:1;
}
.home-industry-notes{
  display:flex;
  align-items:center;
  gap:18px;
  padding-top:2px;
  color:var(--primary);
  font-size:14px;
  line-height:1.5;
}
.home-industry-notes p{
  margin:0;
  color:var(--primary);
}
.home-industry-notes strong{
  color:var(--ink);
  font-weight:800;
}
.home-industry-notes .note-divider{
  color:rgba(36,68,84,.38);
  font-weight:700;
}
@media(max-width:900px){
  .home-profile-flow{
    grid-template-columns:calc((100% - 18px)/2) calc((100% - 18px)/2);
  }
}
@media(max-width:560px){
  .home-profile-flow{
    grid-template-columns:100%;
    gap:12px;
  }
  .profile-step-card,
  .profile-steps-cta{
    min-height:auto;
  }
  .profile-step-card{
    flex-direction:row;
    align-items:center;
  }
  .home-industry-notes{
    flex-wrap:wrap;
    gap:8px 12px;
  }
  .home-industry-notes .note-divider{display:none;}
}

/* v1.2.11 — exact Font Awesome category icons + stronger category color separation */
.directory-type-icon i{
  display:block;
  font-size:34px;
  line-height:1;
}
.directory-card.type-palenque .directory-type-icon{ color:#c45f24; }
.directory-card.type-mezcalero .directory-type-icon{ color:#2f7d57; }
.directory-card.type-brand .directory-type-icon{ color:#8a2342; }
.directory-card.type-mezcal .directory-type-icon{ color:#6554a5; }
.directory-card.type-guide .directory-type-icon{ color:#2f6fa8; }
@media(max-width:520px){
  .directory-type-icon i{font-size:30px;}
}


/* v1.2.12 — polished homepage step cards */
.home-profile-flow{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
  margin-top:28px;
  margin-bottom:26px;
}
.home-profile-flow::after{
  content:"";
  position:absolute;
  left:11%;
  right:11%;
  bottom:-18px;
  height:2px;
  background:linear-gradient(90deg,rgba(196,95,36,.28) 0%,rgba(47,125,87,.22) 38%,rgba(36,68,84,.18) 68%,rgba(49,87,107,.28) 100%);
}
.profile-step-card,
.profile-steps-cta{
  position:relative;
  min-height:234px;
  padding:20px 18px 22px;
  border-radius:18px;
}
.profile-step-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  background:#fff;
  border:1px solid var(--light-line);
  box-shadow:0 14px 30px rgba(11,20,28,.08);
}
.profile-step-card::after,
.profile-steps-cta::after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:-24px;
  width:10px;
  height:10px;
  border-radius:999px;
}
.profile-step-card:nth-child(1)::after{ background:#c45f24; }
.profile-step-card:nth-child(2)::after{ background:#2f7d57; }
.profile-step-card:nth-child(3)::after{ background:#31576b; }
.profile-steps-cta::after{ background:#244454; }
.profile-step-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:8px;
  border-radius:18px 18px 0 0;
}
.profile-step-card:nth-child(1)::before{ background:linear-gradient(90deg,#c45f24,#d0814a); }
.profile-step-card:nth-child(2)::before{ background:linear-gradient(90deg,#2f7d57,#4a9d74); }
.profile-step-card:nth-child(3)::before{ background:linear-gradient(90deg,#31576b,#4d7b93); }
.step-topline{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:16px;
}
.profile-step-card .step-number{
  width:42px;
  height:42px;
  min-width:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg,#31576b,var(--primary));
  color:#fff;
  font-weight:800;
  font-size:16px;
  box-shadow:0 8px 16px rgba(36,68,84,.18);
}
.profile-step-card:nth-child(1) .step-number{ background:linear-gradient(135deg,#c45f24,#d0814a); }
.profile-step-card:nth-child(2) .step-number{ background:linear-gradient(135deg,#2f7d57,#4a9d74); }
.profile-step-card:nth-child(3) .step-number{ background:linear-gradient(135deg,#31576b,#4d7b93); }
.step-label{
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--primary);
}
.profile-step-card h3,
.profile-steps-cta h3{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.15;
}
.profile-step-card h3{
  color:var(--ink);
}
.profile-step-card p,
.profile-steps-cta p{
  margin:0;
  font-size:14px;
  line-height:1.6;
}
.profile-step-card p{
  color:var(--primary);
}
.profile-steps-cta{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  background:linear-gradient(145deg,#16303e 0%,#244454 100%);
  color:#fff !important;
  text-decoration:none;
  box-shadow:0 16px 32px rgba(11,20,28,.16);
}
.profile-steps-cta .cta-arrow{
  width:46px;
  height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  margin-bottom:14px;
  font-size:26px;
  line-height:1;
}
.profile-steps-cta h3,
.profile-steps-cta p,
.profile-steps-cta span{
  color:#fff !important;
}
.profile-steps-cta p{ color:rgba(255,255,255,.82) !important; }
.profile-steps-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 36px rgba(11,20,28,.2);
}
@media(max-width:1100px){
  .home-profile-flow{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-profile-flow::after{ display:none; }
  .profile-step-card::after,
  .profile-steps-cta::after{ display:none; }
}
@media(max-width:640px){
  .home-profile-flow{
    grid-template-columns:1fr;
    gap:14px;
  }
  .profile-step-card,
  .profile-steps-cta{
    min-height:auto;
    padding:18px 16px 18px;
  }
  .profile-step-card h3,
  .profile-steps-cta h3{
    font-size:21px;
  }
}


/* v1.2.13 — directory category labels match their icon colors */
.directory-card .directory-category-label{
  font-weight:800;
}
.directory-card .meta-separator,
.directory-card .meta-place{
  color:var(--primary);
  font-weight:600;
}
.directory-card.type-palenque .directory-category-label{ color:#c45f24; }
.directory-card.type-mezcalero .directory-category-label{ color:#2f7d57; }
.directory-card.type-brand .directory-category-label{ color:#8a2342; }
.directory-card.type-mezcal .directory-category-label{ color:#6554a5; }
.directory-card.type-guide .directory-category-label{ color:#2f6fa8; }


/* v1.2.15 — home steps background image, centered notes, aligned connector */
.home-industry{
  position:relative;
  background:
    linear-gradient(180deg, rgba(240,255,245,.78) 0%, rgba(240,255,245,.82) 100%),
    linear-gradient(90deg,
      rgba(240,255,245,.48) 0%,
      rgba(240,255,245,.28) 12%,
      rgba(240,255,245,.72) 32%,
      rgba(240,255,245,.94) 50%,
      rgba(240,255,245,.72) 68%,
      rgba(240,255,245,.28) 88%,
      rgba(240,255,245,.48) 100%),
    url('/uploads/mezcal-palenques-1.jpg') center center / cover no-repeat !important;
  color:#0b141c !important;
}
.home-industry::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35), inset 0 -1px 0 rgba(255,255,255,.32);
}
.home-industry > .container{
  position:relative;
  z-index:1;
}
.home-profile-flow{
  margin-top:30px;
  margin-bottom:30px;
}
.home-profile-flow::after{
  left:12.5%;
  right:12.5%;
  bottom:-20px;
  height:2px;
  background:linear-gradient(90deg,rgba(196,95,36,.30) 0%,rgba(47,125,87,.28) 34%,rgba(36,68,84,.22) 66%,rgba(49,87,107,.30) 100%);
}
.profile-step-card::after,
.profile-steps-cta::after{
  bottom:-24px;
}
.home-industry-notes{
  width:100%;
  display:flex;
  flex-wrap:nowrap;
  justify-content:center;
  align-items:center;
  gap:14px;
  margin:2px auto 0;
  padding-top:8px;
  text-align:center;
  color:var(--primary);
}
.home-industry-notes p{
  display:inline;
  flex:0 1 auto;
  margin:0;
}
.home-industry-notes .note-divider{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  transform:translateY(-1px);
}
@media(max-width:920px){
  .home-industry-notes{
    flex-wrap:wrap;
    gap:8px 10px;
  }
}
@media(max-width:1100px){
  .home-profile-flow::after{ display:none; }
  .profile-step-card::after,
  .profile-steps-cta::after{ display:none; }
}


/* v1.2.16 — true single-flow notes + contained 16:9 steps photo */
.home-industry{
  position:relative;
  background-color:#f0fff5 !important;
  background-image:
    linear-gradient(90deg,
      rgba(240,255,245,.30) 0%,
      rgba(240,255,245,.42) 12%,
      rgba(240,255,245,.82) 32%,
      rgba(240,255,245,.97) 46%,
      rgba(240,255,245,.97) 54%,
      rgba(240,255,245,.82) 68%,
      rgba(240,255,245,.42) 88%,
      rgba(240,255,245,.30) 100%),
    linear-gradient(180deg,rgba(240,255,245,.50) 0%,rgba(240,255,245,.68) 100%),
    url('/uploads/mezcal-palenques-1.jpg') !important;
  background-position:center center,center center,center center !important;
  background-size:100% 100%,100% 100%,contain !important;
  background-repeat:no-repeat,no-repeat,no-repeat !important;
}

/* The connector passes through the exact vertical center of every dot. */
.home-profile-flow::after{
  left:calc((100% - 66px) / 8);
  right:calc((100% - 66px) / 8);
  bottom:-19px;
}
.profile-step-card::after,
.profile-steps-cta::after{
  width:10px;
  height:10px;
  bottom:-24px;
}

/* One piece of flowing copy. It can wrap naturally, but it is never two columns. */
.home-industry-notes{
  display:block !important;
  width:min(1060px,100%);
  margin:4px auto 0;
  padding-top:10px;
  text-align:center;
  color:var(--primary);
  font-size:14px;
  line-height:1.65;
}
.home-industry-notes p{
  display:block !important;
  width:100%;
  margin:0 !important;
  padding:0;
  color:var(--primary);
}
.home-industry-notes strong{
  color:var(--ink);
  font-weight:800;
}
.home-industry-notes .note-divider{
  display:inline !important;
  margin:0 10px;
  color:rgba(36,68,84,.48);
  font-weight:800;
  vertical-align:baseline;
  transform:none !important;
}
@media(max-width:1100px){
  .home-industry{
    background-size:100% 100%,100% 100%,contain !important;
  }
}
@media(max-width:700px){
  .home-industry{
    background-image:
      linear-gradient(180deg,rgba(240,255,245,.88),rgba(240,255,245,.92)),
      url('/uploads/mezcal-palenques-1.jpg') !important;
    background-position:center center,center center !important;
    background-size:100% 100%,contain !important;
    background-repeat:no-repeat,no-repeat !important;
  }
  .home-industry-notes{
    width:100%;
    font-size:14px;
  }
}


/* v1.2.17 — step notes single centered paragraph, cover image, claim page top-down background */
.home-industry{
  background:
    linear-gradient(180deg, rgba(240,255,245,.82) 0%, rgba(240,255,245,.86) 100%),
    linear-gradient(90deg,
      rgba(240,255,245,.20) 0%,
      rgba(240,255,245,.45) 18%,
      rgba(240,255,245,.78) 37%,
      rgba(240,255,245,.93) 50%,
      rgba(240,255,245,.78) 63%,
      rgba(240,255,245,.45) 82%,
      rgba(240,255,245,.20) 100%),
    url('/uploads/mezcal-palenques-1.jpg') center center / cover no-repeat !important;
}
.home-industry-notes{
  display:block;
  width:100%;
  margin:8px auto 0;
  text-align:center;
}
.home-industry-notes p{
  display:block;
  max-width:980px;
  margin:0 auto;
  text-align:center;
  line-height:1.75;
  color:var(--primary);
}
.home-industry-notes br{
  content:"";
  display:block;
  margin-top:8px;
}
.home-industry-notes .note-divider{
  display:none !important;
}
.claim-stage{
  position:relative;
  overflow:hidden;
  margin-top:34px;
  margin-bottom:34px;
  padding:34px clamp(18px,3.3vw,34px) 40px;
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(240,255,245,.84) 0%, rgba(240,255,245,.88) 100%),
    linear-gradient(135deg, rgba(240,255,245,.14) 0%, rgba(240,255,245,.52) 38%, rgba(240,255,245,.86) 100%),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat;
  box-shadow:0 16px 36px rgba(11,20,28,.12);
}
.claim-stage > *{
  position:relative;
  z-index:1;
}
.claim-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(240,255,245,.26) 0%, rgba(240,255,245,.55) 22%, rgba(240,255,245,.78) 50%, rgba(240,255,245,.55) 78%, rgba(240,255,245,.26) 100%);
  pointer-events:none;
}
@media(max-width:720px){
  .claim-stage{
    border-radius:18px;
    padding:24px 16px 28px;
  }
}


/* v1.2.18 — full claim-page photo background + wide readable claim card */
.claim-page-bg{
  position:relative;
  min-height:calc(100vh - 72px);
  padding:42px 18px;
  background:
    linear-gradient(110deg,rgba(8,16,24,.68) 0%,rgba(11,20,28,.42) 36%,rgba(36,68,84,.28) 65%,rgba(8,16,24,.60) 100%),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat;
  background-attachment:scroll;
}
.claim-page-bg::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 42%,rgba(240,255,245,.10) 0%,rgba(240,255,245,0) 56%);
  pointer-events:none;
}
.claim-stage{
  width:min(1180px,calc(100% - 20px)) !important;
  max-width:none !important;
  margin:0 auto !important;
  padding:34px 38px 40px !important;
  overflow:visible;
  border-radius:22px;
  background:rgba(240,255,245,.96) !important;
  border:1px solid rgba(255,255,255,.70) !important;
  box-shadow:0 22px 54px rgba(0,0,0,.26) !important;
  backdrop-filter:blur(2px);
}
.claim-stage::before{
  display:none !important;
}
.claim-page-title{
  margin:0 0 24px !important;
  color:var(--ink) !important;
  font-size:var(--claim-title-size,46px) !important;
  line-height:1.08 !important;
  white-space:nowrap;
  letter-spacing:-.015em;
}
.claim-stage > .notice{
  background:#fff !important;
  color:var(--ink) !important;
  border-color:rgba(11,20,28,.10) !important;
  border-left-color:var(--primary) !important;
}
.claim-stage .claim-surface{
  background:#fff !important;
  color:var(--ink) !important;
  border:1px solid rgba(11,20,28,.10);
  box-shadow:0 14px 30px rgba(11,20,28,.08);
}
.claim-stage .panel{
  background:#fff !important;
  color:var(--ink) !important;
  border-color:rgba(11,20,28,.10) !important;
}
.claim-stage .method-card{
  background:#f0fff5 !important;
}
@media(max-width:760px){
  .claim-page-bg{
    padding:24px 10px;
  }
  .claim-stage{
    width:100% !important;
    padding:24px 16px 28px !important;
    border-radius:18px;
  }
  .claim-page-title{
    font-size:clamp(30px,8vw,42px) !important;
    white-space:normal;
  }
}


/* v1.2.19 — washed claim background + truly full-width step notes */
.claim-page-bg{
  background:
    linear-gradient(180deg, rgba(240,255,245,.74) 0%, rgba(240,255,245,.68) 48%, rgba(240,255,245,.76) 100%),
    linear-gradient(90deg,
      rgba(255,255,255,.34) 0%,
      rgba(240,255,245,.52) 20%,
      rgba(240,255,245,.72) 50%,
      rgba(240,255,245,.52) 80%,
      rgba(255,255,255,.34) 100%),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat !important;
}
.claim-page-bg::before{
  background:
    radial-gradient(circle at 50% 42%,rgba(255,255,255,.28) 0%,rgba(240,255,245,.10) 42%,rgba(240,255,245,0) 72%) !important;
}
.home-industry-notes{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:8px 0 0 !important;
  padding:0 !important;
  text-align:center !important;
}
.home-industry-notes p{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
  font-size:14px;
  line-height:1.7;
}
.home-industry-notes .industry-note-line{
  display:block;
  width:100%;
  white-space:nowrap;
  text-align:center;
}
.home-industry-notes .industry-note-line + .industry-note-line{
  margin-top:6px;
}
@media(max-width:1050px){
  .home-industry-notes .industry-note-line{
    white-space:normal;
  }
}


/* v1.2.20 — dark washed Reclamar photo; alternate surfaces instead of same-on-same */
.claim-page-bg{
  background:
    linear-gradient(110deg,
      rgba(8,16,24,.84) 0%,
      rgba(11,20,28,.74) 30%,
      rgba(36,68,84,.60) 56%,
      rgba(11,20,28,.76) 78%,
      rgba(8,16,24,.86) 100%),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat !important;
}
.claim-page-bg::before{
  background:
    radial-gradient(circle at 50% 42%,
      rgba(96,114,116,.10) 0%,
      rgba(11,20,28,.12) 38%,
      rgba(8,16,24,.28) 100%) !important;
}

/* Dark photo -> mint main panel -> white sections -> mint method choices */
.claim-stage{
  background:#f0fff5 !important;
  color:var(--ink) !important;
  border-color:rgba(255,255,255,.82) !important;
}
.claim-page-title{
  color:var(--ink) !important;
}
.claim-stage > .notice,
.claim-stage .claim-surface,
.claim-stage .panel{
  background:#fff !important;
  color:var(--ink) !important;
}
.claim-stage .method-card{
  background:#f0fff5 !important;
  color:var(--ink) !important;
}

/* ==================================================
   v1.3.0 — future-facing editorial redesign
   Inspired by premium wine/editorial layouts, adapted
   to Mezcal Oaxaca's own palette, content and product.
   ================================================== */

/* ---------- Editorial header ---------- */
.editorial-header{
  min-height:84px;
  height:84px;
  padding:0 max(24px,calc((100% - 1280px)/2));
  gap:34px;
  background:#fff;
  border-bottom:1px solid rgba(11,20,28,.10);
  box-shadow:none;
  position:sticky;
  top:0;
  z-index:100;
}

.editorial-brand{
  display:inline-flex;
  flex-direction:column;
  gap:0;
  min-width:122px;
  line-height:.88;
  letter-spacing:.10em;
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  font-weight:700;
}
.editorial-brand span{color:var(--ink);font-size:18px}
.editorial-brand b{color:var(--primary);font-size:14px;letter-spacing:.24em}

.editorial-menu{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.editorial-nav{
  display:flex;
  align-items:center;
  gap:30px;
}
.editorial-nav a,
.editorial-actions a{
  color:var(--ink);
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.editorial-nav a{
  position:relative;
  padding:31px 0 28px;
}
.editorial-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:21px;
  height:1px;
  background:var(--primary);
  transition:right .24s ease;
}
.editorial-nav a:hover::after{right:0}

.editorial-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:17px;
}
.editorial-actions .header-profile-cta,
.editorial-actions .header-account-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 16px;
  background:var(--ink);
  color:#fff;
  border:1px solid var(--ink);
}
.editorial-actions .header-profile-cta:hover,
.editorial-actions .header-account-link:hover{
  background:var(--primary);
  border-color:var(--primary);
}
.editorial-actions .header-utility-link:hover{color:var(--primary)}
.editorial-lang{
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(11,20,28,.18);
  border-radius:50%;
}
.editorial-lang:hover{border-color:var(--primary);color:var(--primary)}

.site-menu-toggle{
  display:none;
  border:0;
  background:none;
  color:var(--ink);
  padding:8px 0 8px 8px;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  cursor:pointer;
}
.site-menu-toggle span{
  display:block;
  width:20px;
  height:1px;
  background:var(--ink);
  transition:.2s ease;
}
.site-menu-toggle b{
  margin-left:5px;
  font-size:14px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* ---------- Shared editorial language ---------- */
.mo-home,
.mo-content-page{
  background:#fff;
  color:var(--ink);
}
.mo-home .container,
.mo-content-page .container,
.editorial-footer .container{
  width:min(1280px,calc(100% - 48px));
}
.mo-kicker{
  color:var(--primary);
  font-size:14px;
  line-height:1.3;
  font-weight:900;
  letter-spacing:.20em;
  text-transform:uppercase;
}
.mo-kicker-light{color:var(--mint)}
.mo-home h1,
.mo-home h2,
.mo-content-page h1,
.mo-content-page h2{
  font-family:Georgia,"Times New Roman",serif;
  letter-spacing:-.035em;
}
.mo-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-height:52px;
  padding:0 22px;
  text-decoration:none;
  font-size:14px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  border:1px solid transparent;
  transition:transform .22s ease,background .22s ease,color .22s ease,border-color .22s ease;
}
.mo-btn:hover{transform:translateY(-2px)}
.mo-btn-mint{background:var(--mint);color:var(--ink);border-color:var(--mint)}
.mo-btn-mint:hover{background:#fff;border-color:#fff}
.mo-btn-dark{background:var(--ink);color:#fff;border-color:var(--ink)}
.mo-btn-dark:hover{background:var(--primary);border-color:var(--primary)}
.mo-text-link{
  display:inline-flex;
  align-items:center;
  gap:14px;
  color:var(--ink);
  text-decoration:none;
  font-size:14px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(11,20,28,.28);
  padding-bottom:6px;
}
.mo-text-link span{transition:transform .2s ease}
.mo-text-link:hover span{transform:translateX(4px)}
.mo-text-link-light{color:#fff;border-bottom-color:rgba(255,255,255,.42)}

/* ---------- Homepage hero ---------- */
.mo-home-hero{
  min-height:calc(100vh - 84px);
  height:min(820px,calc(100vh - 84px));
  min-height:650px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:var(--ink);
  color:#fff;
}
.mo-home-hero-media{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(8,16,24,.88) 0%,rgba(11,20,28,.74) 38%,rgba(11,20,28,.28) 67%,rgba(8,16,24,.42) 100%),
    linear-gradient(180deg,rgba(8,16,24,.18) 0%,rgba(8,16,24,.08) 55%,rgba(8,16,24,.70) 100%),
    url('/uploads/Maguey-fields.webp') center 52% / cover no-repeat;
  transform:scale(1.01);
}
.mo-home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);
  background-size:25% 100%;
  opacity:.16;
  pointer-events:none;
}
.mo-home-hero-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,790px) 1fr;
  gap:50px;
  align-items:center;
  flex:1;
  padding-top:54px;
  padding-bottom:34px;
}
.mo-home-hero-copy{max-width:820px}
.mo-home-hero h1{
  margin:16px 0 24px;
  max-width:850px;
  color:#fff;
  font-size:clamp(62px,7.2vw,108px);
  line-height:.88;
  font-weight:500;
}
.mo-home-hero h1 em{
  display:block;
  color:var(--mint);
  font-weight:400;
  font-style:italic;
  font-size:.72em;
  line-height:1.02;
  margin-top:13px;
}
.mo-home-hero-copy > p{
  max-width:680px;
  margin:0;
  color:rgba(255,255,255,.79);
  font-size:17px;
  line-height:1.7;
}
.mo-home-actions{
  margin-top:34px;
  display:flex;
  align-items:center;
  gap:28px;
  flex-wrap:wrap;
}
.mo-hero-seal{
  justify-self:end;
  align-self:end;
  margin-bottom:28px;
  width:150px;
  height:150px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  transform:rotate(-7deg);
  background:rgba(11,20,28,.16);
  backdrop-filter:blur(3px);
}
.mo-hero-seal span{font-size:14px;font-weight:900;letter-spacing:.22em}
.mo-hero-seal strong{font-family:Georgia,serif;font-size:22px;letter-spacing:.08em;margin:5px 0;color:var(--mint)}
.mo-hero-bottom{
  position:relative;
  z-index:2;
  min-height:112px;
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  border-top:1px solid rgba(255,255,255,.24);
}
.mo-scroll-cue{
  align-self:center;
  font-size:14px;
  font-weight:900;
  letter-spacing:.22em;
  color:rgba(255,255,255,.7);
}
.mo-hero-counts{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  min-width:min(690px,68%);
  border-left:1px solid rgba(255,255,255,.24);
}
.mo-hero-counts a{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:15px 24px;
  border-right:1px solid rgba(255,255,255,.24);
  text-decoration:none;
  color:#fff;
  transition:background .2s ease;
}
.mo-hero-counts a:hover{background:rgba(240,255,245,.09)}
.mo-hero-counts strong{font-family:Georgia,serif;font-size:31px;font-weight:500;color:var(--mint);line-height:1}
.mo-hero-counts span{margin-top:7px;font-size:14px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.78)}

/* ---------- Intro ---------- */
.mo-editorial-intro{
  padding:105px 0 96px;
  background:#fff;
}
.mo-editorial-intro-grid{
  display:grid;
  grid-template-columns:30% 1fr;
  gap:70px;
  align-items:start;
}
.mo-editorial-intro h2{
  margin:0;
  max-width:860px;
  font-size:clamp(46px,5.2vw,76px);
  line-height:.98;
  color:var(--ink);
  font-weight:500;
}
.mo-editorial-intro p{
  max-width:760px;
  margin:28px 0 0;
  color:var(--slate);
  font-size:17px;
  line-height:1.75;
}

/* ---------- Split feature sections ---------- */
.mo-directory-feature,
.mo-about-feature{
  padding:0 0 112px;
  background:#fff;
}
.mo-split{
  display:grid;
  grid-template-columns:calc(50% - 31px) calc(50% - 31px);
  gap:62px;
  align-items:stretch;
}
.mo-feature-image{
  position:relative;
  min-height:650px;
  overflow:hidden;
  background-color:var(--primary);
}
.mo-feature-copy{
  padding:58px 0 48px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
}
.mo-feature-copy h2{
  margin:15px 0 22px;
  font-size:clamp(46px,4.3vw,68px);
  line-height:.98;
  color:var(--ink);
  font-weight:500;
}
.mo-feature-copy > p{
  max-width:640px;
  margin:0 0 30px;
  color:var(--slate);
  font-size:16px;
  line-height:1.75;
}
.mo-directory-image{
  background:
    linear-gradient(180deg,rgba(11,20,28,.08),rgba(11,20,28,.35)),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat;
}
.mo-image-label{
  position:absolute;
  left:24px;
  bottom:24px;
  color:#fff;
  font-family:Georgia,serif;
  font-size:38px;
  line-height:.84;
  letter-spacing:.04em;
  text-shadow:0 2px 12px rgba(0,0,0,.26);
}
.mo-directory-links{
  width:100%;
  margin:2px 0 30px;
  border-top:1px solid rgba(11,20,28,.18);
}
.mo-directory-links a{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(160px,.9fr) 28px;
  align-items:center;
  gap:18px;
  min-height:76px;
  border-bottom:1px solid rgba(11,20,28,.18);
  color:var(--ink);
  text-decoration:none;
  transition:padding .2s ease,background .2s ease;
}
.mo-directory-links a:hover{padding-left:10px;background:var(--mint)}
.mo-directory-links span{display:flex;align-items:center;gap:13px;font-family:Georgia,serif;font-size:22px}
.mo-directory-links span i{width:20px;color:var(--primary);font-size:16px;text-align:center}
.mo-directory-links small{color:var(--slate);font-size:14px}
.mo-directory-links b{font-size:20px;font-weight:400;text-align:right;color:var(--primary)}

/* ---------- Wiki ---------- */
.mo-wiki-feature{
  padding:112px 0;
  background:var(--ink);
  color:#fff;
}
.mo-split-wiki{grid-template-columns:calc(47% - 31px) calc(53% - 31px)}
.mo-feature-copy-light{padding-left:5px}
.mo-feature-copy-light h2{color:#fff}
.mo-feature-copy-light > p{color:rgba(255,255,255,.72)}
.mo-wiki-image{
  min-height:690px;
  background:
    linear-gradient(180deg,rgba(8,16,24,.08),rgba(8,16,24,.42)),
    url('/uploads/types-mezcal.webp') center center / cover no-repeat;
}
.mo-topic-pills{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:2px 0 32px;
}
.mo-topic-pills span{
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.23);
  color:rgba(255,255,255,.82);
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mo-wiki-index{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  display:grid;
  grid-template-columns:70px 1fr;
  background:rgba(240,255,245,.94);
  color:var(--ink);
  backdrop-filter:blur(6px);
}
.mo-wiki-index span{
  min-height:48px;
  display:flex;
  align-items:center;
  padding:0 15px;
  border-top:1px solid rgba(11,20,28,.13);
  font-size:14px;
  font-weight:900;
  letter-spacing:.12em;
}
.mo-wiki-index span:nth-child(odd){color:var(--primary);border-right:1px solid rgba(11,20,28,.13)}

/* ---------- About feature ---------- */
.mo-about-feature{padding-top:112px}
.mo-split-about{grid-template-columns:calc(55% - 31px) calc(45% - 31px)}
.mo-about-image{
  min-height:610px;
  background:
    linear-gradient(180deg,rgba(11,20,28,.03),rgba(11,20,28,.28)),
    url('/uploads/Generic-Mezcal-Oaxaca.webp') center center / cover no-repeat;
}

/* ---------- Industry ---------- */
.mo-industry-section{
  position:relative;
  min-height:780px;
  padding:112px 0 96px;
  background:var(--deep);
  color:#fff;
  overflow:hidden;
}
.mo-industry-photo{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(8,16,24,.94) 0%,rgba(8,16,24,.79) 48%,rgba(8,16,24,.58) 100%),
    linear-gradient(180deg,rgba(8,16,24,.12),rgba(8,16,24,.62)),
    url('/uploads/mezcal-palenques-1.jpg') center center / cover no-repeat;
}
.mo-industry-content{position:relative;z-index:1}
.mo-industry-heading{max-width:850px}
.mo-industry-heading h2{
  margin:15px 0 23px;
  color:#fff;
  font-size:clamp(50px,5.6vw,82px);
  line-height:.94;
  font-weight:500;
}
.mo-industry-heading p{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:16px;
  line-height:1.75;
}
.mo-industry-steps{
  margin-top:66px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.29);
  border-bottom:1px solid rgba(255,255,255,.29);
}
.mo-industry-steps article,
.mo-industry-cta{
  min-height:230px;
  padding:27px 26px 24px;
  border-right:1px solid rgba(255,255,255,.29);
}
.mo-industry-steps article:first-child{border-left:1px solid rgba(255,255,255,.29)}
.mo-industry-steps article > span{
  display:block;
  margin-bottom:42px;
  color:var(--mint);
  font-size:14px;
  font-weight:900;
  letter-spacing:.14em;
}
.mo-industry-steps h3{
  margin:0 0 12px;
  color:#fff;
  font-family:Georgia,serif;
  font-size:23px;
  font-weight:500;
  line-height:1.08;
}
.mo-industry-steps p{
  margin:0;
  color:rgba(255,255,255,.65);
  font-size:14px;
  line-height:1.6;
}
.mo-industry-cta{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  text-decoration:none;
  background:var(--mint);
  color:var(--ink);
  transition:background .2s ease;
}
.mo-industry-cta:hover{background:#fff}
.mo-industry-cta > span{align-self:flex-end;font-size:30px;font-weight:300}
.mo-industry-cta strong{max-width:180px;font-family:Georgia,serif;font-size:27px;line-height:1.02;font-weight:500}
.mo-industry-note{margin:20px 0 0;color:rgba(255,255,255,.58);font-size:14px;letter-spacing:.02em}

/* ---------- Contact band ---------- */
.mo-contact-band{
  padding:86px 0;
  background:var(--mint);
  color:var(--ink);
}
.mo-contact-band-inner{
  display:grid;
  grid-template-columns:1fr 160px;
  gap:60px;
  align-items:center;
}
.mo-contact-band h2{
  margin:12px 0 13px;
  max-width:870px;
  color:var(--ink);
  font-size:clamp(42px,4.5vw,68px);
  line-height:.98;
  font-weight:500;
}
.mo-contact-band p{max-width:730px;margin:0;color:var(--primary);font-size:15px;line-height:1.65}
.mo-round-link{
  width:150px;
  height:150px;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-decoration:none;
  transition:transform .22s ease,background .22s ease;
}
.mo-round-link:hover{transform:rotate(-5deg);background:var(--primary)}
.mo-round-link span{font-size:30px;line-height:1;margin-bottom:10px}
.mo-round-link small{font-size:14px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}

/* ---------- Future-facing content pages ---------- */
.mo-page-hero{
  min-height:570px;
  display:flex;
  align-items:flex-end;
  padding:96px 0 76px;
  color:#fff;
  background-color:var(--ink);
}
.mo-page-hero h1{
  max-width:1000px;
  margin:15px 0 0;
  color:#fff;
  font-size:clamp(56px,6.8vw,96px);
  line-height:.92;
  font-weight:500;
}
.mo-page-hero p{
  max-width:680px;
  margin:25px 0 0;
  color:rgba(255,255,255,.76);
  font-size:17px;
  line-height:1.7;
}
.mo-about-page-hero{
  background:
    linear-gradient(90deg,rgba(8,16,24,.88),rgba(11,20,28,.52)),
    url('/uploads/Generic-Mezcal-Oaxaca.webp') center center / cover no-repeat;
}
.mo-wiki-page-hero{
  background:
    linear-gradient(90deg,rgba(8,16,24,.90),rgba(11,20,28,.48)),
    url('/uploads/types-mezcal.webp') center center / cover no-repeat;
}
.mo-contact-page-hero{
  background:
    linear-gradient(90deg,rgba(8,16,24,.91),rgba(11,20,28,.52)),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat;
}
.mo-page-body{padding:90px 0 110px;background:#fff;color:var(--ink)}
.mo-page-intro{display:grid;grid-template-columns:30% 1fr}
.mo-page-intro p{
  grid-column:2;
  max-width:860px;
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(30px,3vw,44px);
  line-height:1.18;
  color:var(--ink);
}
.mo-principle-grid,
.mo-wiki-topic-grid{
  margin-top:82px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(11,20,28,.18);
  border-bottom:1px solid rgba(11,20,28,.18);
}
.mo-principle-grid article,
.mo-wiki-topic-grid article{
  min-height:320px;
  padding:28px 30px 32px;
  border-right:1px solid rgba(11,20,28,.18);
}
.mo-principle-grid article:first-child,
.mo-wiki-topic-grid article:first-child{border-left:1px solid rgba(11,20,28,.18)}
.mo-principle-grid article > span,
.mo-wiki-topic-grid article > span{color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.14em}
.mo-principle-grid h2,
.mo-wiki-topic-grid h2{margin:70px 0 18px;font-size:32px;line-height:1;color:var(--ink);font-weight:500}
.mo-principle-grid p,
.mo-wiki-topic-grid p{margin:0;color:var(--slate);font-size:14px;line-height:1.7}
.mo-page-cta{margin-top:44px;text-align:right}
.mo-wiki-topic-grid{grid-template-columns:repeat(4,1fr)}
.mo-wiki-status{
  margin-top:42px;
  padding:30px 34px;
  display:flex;
  justify-content:space-between;
  gap:40px;
  align-items:center;
  background:var(--mint);
  border:1px solid rgba(11,20,28,.10);
}
.mo-wiki-status p{max-width:760px;margin:0;color:var(--primary);font-size:14px;line-height:1.7}
.mo-contact-grid{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:1px;
  background:rgba(11,20,28,.15);
  border:1px solid rgba(11,20,28,.15);
}
.mo-contact-grid > *{background:#fff;min-height:330px;padding:32px}
.mo-contact-email{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  text-decoration:none;
  color:#fff;
  background:var(--primary) !important;
}
.mo-contact-email span{margin-bottom:auto;font-size:14px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:var(--mint)}
.mo-contact-email strong{font-family:Georgia,serif;font-size:clamp(24px,2.2vw,34px);font-weight:500;word-break:break-word}
.mo-contact-email b{margin-top:18px;font-size:28px;font-weight:300}
.mo-contact-grid article > span{color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.14em}
.mo-contact-grid article h2{margin:72px 0 17px;font-size:31px;line-height:1;color:var(--ink);font-weight:500}
.mo-contact-grid article p{margin:0 0 25px;color:var(--slate);font-size:14px;line-height:1.7}

/* ---------- Editorial footer ---------- */
.editorial-footer{
  margin-top:0 !important;
  padding:72px 0 26px;
  display:block;
  background:var(--deep);
  color:rgba(255,255,255,.64);
  border-top:1px solid rgba(255,255,255,.10);
  font-size:14px;
}
.editorial-footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 170px;
  gap:58px;
  align-items:start;
}
.footer-brand{display:inline-flex;flex-direction:column;text-decoration:none;line-height:.88}
.footer-brand span{color:#fff;font-size:23px}
.footer-brand b{color:var(--mint);font-size:15px;letter-spacing:.24em}
.editorial-footer-brand p{max-width:330px;margin:22px 0 0;color:rgba(255,255,255,.55);line-height:1.65}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.footer-column strong{margin-bottom:6px;color:var(--mint);font-size:14px;letter-spacing:.15em;text-transform:uppercase}
.footer-column a{color:rgba(255,255,255,.72);text-decoration:none;font-size:14px}
.footer-column a:hover{color:#fff}
.editorial-footer-mark{
  width:160px;
  height:160px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  transform:rotate(5deg);
}
.editorial-footer-mark span,.editorial-footer-mark small{font-size:14px;letter-spacing:.20em;color:rgba(255,255,255,.68)}
.editorial-footer-mark strong{margin:5px 0;color:var(--mint);font-family:Georgia,serif;font-size:20px;letter-spacing:.06em}
.editorial-footer-bottom{
  margin-top:58px !important;
  padding-top:20px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.42);
  font-size:14px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* ---------- Responsive editorial system ---------- */
@media(max-width:1180px){
  .editorial-header{gap:18px;padding-left:20px;padding-right:20px}
  .editorial-nav{gap:18px}
  .editorial-actions{gap:11px}
  .editorial-nav a,.editorial-actions a{font-size:14px}
  .mo-home-hero-grid{grid-template-columns:minmax(0,760px) 1fr}
  .mo-hero-counts{min-width:70%}
}

@media(max-width:980px){
  .editorial-header{height:72px;min-height:72px;align-items:center;padding:0 18px}
  .editorial-brand{min-width:0}
  .site-menu-toggle{display:flex;flex-direction:column;margin-left:auto;position:relative;padding-right:48px}
  .site-menu-toggle b{position:absolute;right:0;top:50%;transform:translateY(-50%)}
  .editorial-menu{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:72px;
    padding:26px 22px 28px;
    background:#fff;
    border-top:1px solid rgba(11,20,28,.10);
    border-bottom:1px solid rgba(11,20,28,.12);
    box-shadow:0 20px 34px rgba(11,20,28,.15);
  }
  .editorial-menu.is-open{display:block}
  .editorial-nav{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .editorial-nav a{padding:14px 0;font-size:14px;border-bottom:1px solid rgba(11,20,28,.10)}
  .editorial-nav a::after{display:none}
  .editorial-actions{margin-top:20px;display:flex;justify-content:flex-start;flex-wrap:wrap}
  .editorial-actions a{font-size:14px}
  .mo-home .container,.mo-content-page .container,.editorial-footer .container{width:min(100% - 36px,1280px)}
  .mo-home-hero{height:auto;min-height:720px}
  .mo-home-hero-grid{grid-template-columns:1fr;padding-top:74px}
  .mo-hero-seal{display:none}
  .mo-home-hero h1{font-size:clamp(58px,10vw,88px)}
  .mo-hero-bottom{display:block;padding-top:20px}
  .mo-scroll-cue{display:none}
  .mo-hero-counts{min-width:0;width:100%;border-left:0}
  .mo-editorial-intro-grid{grid-template-columns:1fr;gap:22px}
  .mo-split,.mo-split-wiki,.mo-split-about{grid-template-columns:1fr;gap:0}
  .mo-feature-image{min-height:520px}
  .mo-feature-copy{padding:62px 0}
  .mo-wiki-feature{padding:0}
  .mo-split-wiki .mo-feature-copy{order:2;padding:72px 0}
  .mo-split-wiki .mo-wiki-image{order:1}
  .mo-about-feature{padding-top:72px}
  .mo-industry-steps{grid-template-columns:repeat(2,1fr)}
  .mo-industry-steps article:nth-child(2){border-right:1px solid rgba(255,255,255,.29)}
  .mo-industry-steps article:nth-child(3){border-left:1px solid rgba(255,255,255,.29);border-top:1px solid rgba(255,255,255,.29)}
  .mo-industry-cta{border-top:1px solid rgba(255,255,255,.29)}
  .mo-page-intro{grid-template-columns:1fr}
  .mo-page-intro p{grid-column:1}
  .mo-principle-grid{grid-template-columns:1fr}
  .mo-principle-grid article{min-height:0;border-left:1px solid rgba(11,20,28,.18);border-bottom:1px solid rgba(11,20,28,.18)}
  .mo-principle-grid article:last-child{border-bottom:0}
  .mo-principle-grid h2{margin-top:38px}
  .mo-wiki-topic-grid{grid-template-columns:repeat(2,1fr)}
  .mo-wiki-topic-grid article:nth-child(3){border-left:1px solid rgba(11,20,28,.18);border-top:1px solid rgba(11,20,28,.18)}
  .mo-wiki-topic-grid article:nth-child(4){border-top:1px solid rgba(11,20,28,.18)}
  .mo-contact-grid{grid-template-columns:1fr 1fr}
  .mo-contact-email{grid-column:1 / -1;min-height:250px}
  .editorial-footer-grid{grid-template-columns:2fr 1fr 1fr}
  .editorial-footer-mark{display:none}
}

@media(max-width:680px){
  .mo-home .container,.mo-content-page .container,.editorial-footer .container{width:calc(100% - 28px)}
  .mo-home-hero{min-height:690px}
  .mo-home-hero-grid{padding-top:56px;padding-bottom:34px}
  .mo-home-hero h1{font-size:clamp(52px,15vw,72px)}
  .mo-home-hero h1 em{font-size:.62em}
  .mo-home-hero-copy > p{font-size:15px}
  .mo-home-actions{align-items:flex-start;flex-direction:column;gap:20px}
  .mo-hero-bottom{min-height:0}
  .mo-hero-counts{grid-template-columns:repeat(2,1fr)}
  .mo-hero-counts a{padding:16px;border-top:1px solid rgba(255,255,255,.20)}
  .mo-hero-counts a:nth-child(1),.mo-hero-counts a:nth-child(2){border-top:0}
  .mo-hero-counts strong{font-size:26px}
  .mo-editorial-intro{padding:72px 0 68px}
  .mo-editorial-intro h2{font-size:44px}
  .mo-directory-feature,.mo-about-feature{padding-bottom:72px}
  .mo-feature-image{min-height:400px}
  .mo-feature-copy h2{font-size:43px}
  .mo-directory-links a{grid-template-columns:1fr 26px;gap:10px;padding:12px 0;min-height:72px}
  .mo-directory-links small{grid-column:1;grid-row:2;margin-left:33px}
  .mo-directory-links b{grid-column:2;grid-row:1 / span 2}
  .mo-wiki-image{min-height:490px}
  .mo-wiki-index{grid-template-columns:56px 1fr}
  .mo-industry-section{padding:80px 0 72px}
  .mo-industry-heading h2{font-size:48px}
  .mo-industry-steps{grid-template-columns:1fr;margin-top:45px}
  .mo-industry-steps article,.mo-industry-cta{min-height:190px;border-left:1px solid rgba(255,255,255,.29);border-right:1px solid rgba(255,255,255,.29);border-top:1px solid rgba(255,255,255,.29)}
  .mo-industry-steps article:first-child{border-top:0}
  .mo-industry-steps article > span{margin-bottom:28px}
  .mo-contact-band{padding:66px 0}
  .mo-contact-band-inner{grid-template-columns:1fr;gap:34px}
  .mo-contact-band h2{font-size:44px}
  .mo-round-link{width:124px;height:124px}
  .mo-page-hero{min-height:500px;padding:74px 0 58px}
  .mo-page-hero h1{font-size:51px}
  .mo-page-body{padding:65px 0 80px}
  .mo-page-intro p{font-size:30px}
  .mo-wiki-topic-grid{grid-template-columns:1fr}
  .mo-wiki-topic-grid article{min-height:0;border-left:1px solid rgba(11,20,28,.18);border-top:1px solid rgba(11,20,28,.18)}
  .mo-wiki-topic-grid article:first-child{border-top:0}
  .mo-wiki-topic-grid h2{margin-top:38px}
  .mo-wiki-status{display:block;padding:25px}
  .mo-wiki-status .mo-text-link{margin-top:22px}
  .mo-contact-grid{grid-template-columns:1fr}
  .mo-contact-email{grid-column:1;min-height:250px}
  .mo-contact-grid > *{min-height:280px}
  .editorial-footer{padding-top:56px}
  .editorial-footer-grid{grid-template-columns:1fr 1fr;gap:42px 30px}
  .editorial-footer-brand{grid-column:1 / -1}
  .editorial-footer-bottom{margin-top:40px !important;display:block}
  .editorial-footer-bottom span{display:block;margin-top:7px}
}

@media(max-width:420px){
  .editorial-brand span{font-size:16px}
  .editorial-brand b{font-size:14px}
  .site-menu-toggle b{display:none}
  .site-menu-toggle{padding-right:0}
  .mo-home-hero h1{font-size:49px}
  .mo-editorial-intro h2,.mo-feature-copy h2,.mo-contact-band h2{font-size:39px}
}

/* ==================================================
   v1.3.1 — full-width editorial rhythm + motion
   ================================================== */

/* Header: true viewport-width navigation with a fixed editorial gutter. */
.editorial-header{
  width:100%;
  max-width:none;
  padding-left:50px;
  padding-right:50px;
}
.editorial-menu{min-width:0}

/* Hero now ends cleanly; directory counts live in their own band below it. */
.mo-home-hero{
  min-height:calc(100vh - 84px);
  height:min(790px,calc(100vh - 84px));
}
.mo-hero-bottom{
  min-height:76px;
  align-items:center;
  border-top:1px solid rgba(255,255,255,.24);
}

.mo-count-band{
  width:100%;
  background:var(--mint);
  border-bottom:1px solid rgba(11,20,28,.12);
}
.mo-count-band-inner{
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.mo-count-item{
  min-height:190px;
  padding:30px 38px 27px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  text-decoration:none;
  color:var(--ink);
  border-right:1px solid rgba(11,20,28,.14);
  transition:background .28s ease,transform .28s ease;
}
.mo-count-item:last-child{border-right:0}
.mo-count-item:hover{background:#fff}
.mo-count-item strong{
  display:block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(58px,5.6vw,88px);
  line-height:.86;
  font-weight:500;
  letter-spacing:-.045em;
  color:var(--primary);
  font-variant-numeric:tabular-nums;
}
.mo-count-item span{
  margin-top:18px;
  font-size:14px;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ink);
}

/* Mixed boxed/full-width homepage sections. Directory and Wiki go full bleed;
   About and editorial intro remain contained for pacing and readability. */
.mo-split-full{
  width:100%;
  max-width:none;
  gap:0;
}
.mo-split-directory{
  grid-template-columns:50% 50%;
}
.mo-split-wiki{
  grid-template-columns:50% 50%;
}
.mo-split-full .mo-feature-image{
  min-height:720px;
}
.mo-feature-copy-contained{
  width:100%;
  padding:76px clamp(40px,6vw,110px);
}
.mo-directory-feature{
  padding:0;
  background:#fff;
}
.mo-wiki-feature{
  padding:0;
}
.mo-wiki-feature .mo-feature-copy-contained{
  padding-top:92px;
  padding-bottom:92px;
}
.mo-about-feature{
  padding-top:112px;
  padding-bottom:112px;
}

/* Scroll reveal: push + fade. Applied only when JS is available. */
.has-reveal-js [data-reveal]{
  opacity:0;
  filter:blur(2px);
  transition:
    opacity .86s cubic-bezier(.2,.7,.2,1),
    transform .86s cubic-bezier(.2,.7,.2,1),
    filter .86s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform;
}
.has-reveal-js [data-reveal="up"]{transform:translate3d(0,52px,0)}
.has-reveal-js [data-reveal="down"]{transform:translate3d(0,-52px,0)}
.has-reveal-js [data-reveal="left"]{transform:translate3d(-58px,0,0)}
.has-reveal-js [data-reveal="right"]{transform:translate3d(58px,0,0)}
.has-reveal-js [data-reveal].is-revealed{
  opacity:1;
  filter:blur(0);
  transform:translate3d(0,0,0);
}

@media(max-width:1180px){
  .editorial-header{padding-left:28px;padding-right:28px}
  .mo-feature-copy-contained{padding-left:48px;padding-right:48px}
  .mo-count-item{min-height:170px;padding-left:22px;padding-right:22px}
}

@media(max-width:980px){
  .editorial-header{padding-left:18px;padding-right:18px}
  .mo-home-hero{min-height:650px;height:auto}
  .mo-count-band-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mo-count-item{min-height:150px;border-bottom:1px solid rgba(11,20,28,.14)}
  .mo-count-item:nth-child(2){border-right:0}
  .mo-count-item:nth-child(3),.mo-count-item:nth-child(4){border-bottom:0}
  .mo-split-directory,.mo-split-wiki{grid-template-columns:1fr}
  .mo-split-full .mo-feature-image{min-height:560px}
  .mo-feature-copy-contained{padding:70px 36px}
  .mo-split-wiki .mo-feature-copy{order:2;padding:70px 36px}
  .mo-split-wiki .mo-wiki-image{order:1}
}

@media(max-width:680px){
  .mo-count-item{min-height:132px;padding:22px 14px 20px}
  .mo-count-item strong{font-size:50px}
  .mo-count-item span{margin-top:12px;font-size:14px;letter-spacing:.13em}
  .mo-split-full .mo-feature-image{min-height:410px}
  .mo-feature-copy-contained,
  .mo-split-wiki .mo-feature-copy{padding:62px 20px}
  .mo-about-feature{padding-top:72px;padding-bottom:72px}
  .has-reveal-js [data-reveal="left"],
  .has-reveal-js [data-reveal="right"]{transform:translate3d(0,38px,0)}
}

@media(prefers-reduced-motion:reduce){
  .has-reveal-js [data-reveal]{
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
    transition:none !important;
  }
}

/* ==================================================
   v1.4.0 — Mezcal Wiki landing + cornerstone entry
   ================================================== */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.mo-wiki-landing-body{padding-bottom:120px}
.mo-wiki-entry-index{margin-top:78px;border-top:1px solid rgba(11,20,28,.18)}
.mo-wiki-entry-index-label{padding:20px 0 16px;color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.mo-wiki-entry-row{
  min-height:176px;
  display:grid;
  grid-template-columns:86px minmax(0,1fr) 56px;
  align-items:center;
  gap:26px;
  padding:28px 0;
  color:var(--ink);
  text-decoration:none;
  border-top:1px solid rgba(11,20,28,.12);
  border-bottom:1px solid rgba(11,20,28,.18);
  transition:background .25s ease,padding .25s ease;
}
.mo-wiki-entry-row:hover{background:var(--mint);padding-left:24px;padding-right:24px}
.mo-wiki-entry-number{font-size:14px;font-weight:900;letter-spacing:.18em;color:var(--primary)}
.mo-wiki-entry-title{display:flex;flex-direction:column;gap:11px}
.mo-wiki-entry-title strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,58px);line-height:.98;font-weight:500;letter-spacing:-.035em}
.mo-wiki-entry-title small{max-width:770px;color:var(--slate);font-size:14px;line-height:1.6}
.mo-wiki-entry-arrow{justify-self:end;font-size:34px;font-weight:300;transition:transform .2s ease}
.mo-wiki-entry-row:hover .mo-wiki-entry-arrow{transform:translate(5px,-5px)}

.mo-wiki-article{background:#fff;color:var(--ink)}
.mo-wiki-article-hero{
  position:relative;
  min-height:650px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  color:#fff;
  background:var(--ink);
}
.mo-wiki-article-hero-media{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(8,16,24,.94) 0%,rgba(8,16,24,.78) 42%,rgba(8,16,24,.36) 100%),
    linear-gradient(0deg,rgba(8,16,24,.78),rgba(8,16,24,0) 55%),
    url('/uploads/Maguey-fields.webp') center 58% / cover no-repeat;
  transform:scale(1.015);
}
.mo-wiki-article-hero-inner{position:relative;z-index:1;padding-top:90px;padding-bottom:72px}
.mo-wiki-breadcrumb{display:flex;gap:10px;align-items:center;margin-bottom:48px;font-size:14px;letter-spacing:.13em;text-transform:uppercase}
.mo-wiki-breadcrumb a{color:rgba(255,255,255,.74);text-decoration:none}
.mo-wiki-breadcrumb a:hover{color:var(--mint)}
.mo-wiki-breadcrumb b{color:#fff;font-weight:900}
.mo-wiki-article-hero h1{max-width:920px;margin:16px 0 0;color:#fff;font-size:clamp(66px,8vw,118px);line-height:.88;font-weight:500;letter-spacing:-.05em}
.mo-wiki-article-deck{max-width:840px;margin:28px 0 0;color:rgba(255,255,255,.82);font-family:Georgia,"Times New Roman",serif;font-size:clamp(22px,2.1vw,32px);line-height:1.28}
.mo-wiki-article-meta{margin-top:36px;display:flex;flex-wrap:wrap;gap:10px;color:rgba(255,255,255,.58);font-size:14px;font-weight:800;letter-spacing:.10em;text-transform:uppercase}

.mo-wiki-article-shell{background:#fff;padding:86px 0 120px}
.mo-wiki-article-grid{display:grid;grid-template-columns:minmax(0,850px) minmax(280px,330px);gap:clamp(54px,7vw,100px);align-items:start}
.mo-wiki-main{min-width:0}
.mo-wiki-main p{margin:0 0 22px;color:#394c52;font-size:17px;line-height:1.86}
.mo-wiki-main strong{color:var(--ink)}
.mo-wiki-lead{padding-bottom:70px;border-bottom:1px solid rgba(11,20,28,.15)}
.mo-wiki-lede{font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(18px,calc(3vw - 10px),32px)!important;line-height:1.32!important;color:var(--ink)!important;letter-spacing:-.02em}
.mo-wiki-section{padding:74px 0 12px;scroll-margin-top:110px}
.mo-wiki-section-heading{display:grid;grid-template-columns:50px 1fr;gap:20px;align-items:start;margin-bottom:34px}
.mo-wiki-section-heading>span{padding-top:7px;color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.16em}
.mo-wiki-section-heading h2{max-width:760px;margin:9px 0 0;color:var(--ink);font-size:clamp(38px,4.4vw,64px);line-height:.98;font-weight:500}
.mo-wiki-section h3{margin:44px 0 18px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:30px;line-height:1.12;font-weight:500;letter-spacing:-.025em}

.mo-wiki-callout{margin:34px 0;padding:28px 30px;border:1px solid rgba(11,20,28,.12)}
.mo-wiki-callout strong{display:block;margin-bottom:10px;font-size:14px;letter-spacing:.14em;text-transform:uppercase}
.mo-wiki-callout p{margin:0;font-size:15px;line-height:1.72}
.mo-wiki-callout-mint{background:var(--mint)}
.mo-wiki-callout-mint strong{color:var(--primary)}
.mo-wiki-callout-dark{background:var(--ink);border-color:var(--ink)}
.mo-wiki-callout-dark strong{color:var(--mint)}
.mo-wiki-callout-dark p,.mo-wiki-callout-dark p strong{color:rgba(255,255,255,.82)}

.mo-wiki-timeline{margin:38px 0 46px;border-top:1px solid rgba(11,20,28,.18)}
.mo-wiki-timeline>div{display:grid;grid-template-columns:145px 1fr;gap:30px;padding:22px 0;border-bottom:1px solid rgba(11,20,28,.14)}
.mo-wiki-timeline b{color:var(--primary);font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.mo-wiki-timeline p{margin:0;font-size:15px;line-height:1.72}

.mo-wiki-agave-table-wrap{margin:32px 0 42px;overflow-x:auto;border:1px solid rgba(11,20,28,.15)}
.mo-wiki-agave-table{width:100%;min-width:760px;border-collapse:collapse;background:#fff;color:var(--ink)}
.mo-wiki-agave-table th{padding:16px 18px;text-align:left;background:var(--ink);color:var(--mint);font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.mo-wiki-agave-table td{padding:17px 18px;vertical-align:top;border-bottom:1px solid rgba(11,20,28,.10);font-size:14px;line-height:1.55;color:#43565c}
.mo-wiki-agave-table tr:last-child td{border-bottom:0}
.mo-wiki-agave-table td:first-child{width:18%;color:var(--ink)}
.mo-wiki-agave-table td:nth-child(2){width:28%;color:var(--primary)}

.mo-wiki-process{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:36px 0 46px;border-top:1px solid rgba(11,20,28,.16);border-left:1px solid rgba(11,20,28,.16)}
.mo-wiki-process article{min-height:270px;padding:25px 27px 30px;border-right:1px solid rgba(11,20,28,.16);border-bottom:1px solid rgba(11,20,28,.16)}
.mo-wiki-process article>span{color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.15em}
.mo-wiki-process h3{margin:48px 0 14px;font-size:27px}
.mo-wiki-process p{margin:0;font-size:14px;line-height:1.72}

.mo-wiki-three-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:36px 0 48px;background:rgba(11,20,28,.16);border:1px solid rgba(11,20,28,.16)}
.mo-wiki-three-cards article{min-height:340px;padding:26px;background:var(--mint)}
.mo-wiki-three-cards span{font-size:14px;font-weight:900;letter-spacing:.14em;color:var(--primary)}
.mo-wiki-three-cards h3{margin:72px 0 16px;font-size:27px}
.mo-wiki-three-cards p{margin:0;font-size:14px;line-height:1.7}

.mo-wiki-definition-list{margin:28px 0 38px;border-top:1px solid rgba(11,20,28,.16)}
.mo-wiki-definition-list>div{display:grid;grid-template-columns:190px 1fr;gap:28px;padding:19px 0;border-bottom:1px solid rgba(11,20,28,.14)}
.mo-wiki-definition-list dt{font-family:Georgia,"Times New Roman",serif;font-size:19px;color:var(--ink)}
.mo-wiki-definition-list dd{margin:0;color:#43565c;font-size:14px;line-height:1.68}

.mo-wiki-reg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:38px 0 48px;background:rgba(11,20,28,.14);border:1px solid rgba(11,20,28,.14)}
.mo-wiki-reg-grid>div{min-height:300px;padding:24px;background:#fff}
.mo-wiki-reg-grid span{color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.13em}
.mo-wiki-reg-grid h3{margin:72px 0 14px;font-size:24px}
.mo-wiki-reg-grid p{margin:0;font-size:14px;line-height:1.68}

.mo-wiki-label-grid,.mo-wiki-glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:34px 0;background:rgba(11,20,28,.14);border:1px solid rgba(11,20,28,.14)}
.mo-wiki-label-grid>div,.mo-wiki-glossary>div{min-height:160px;padding:23px;background:#fff}
.mo-wiki-label-grid b,.mo-wiki-glossary b{font-family:Georgia,"Times New Roman",serif;font-size:21px;font-weight:500}
.mo-wiki-label-grid p,.mo-wiki-glossary p{margin:14px 0 0;font-size:14px;line-height:1.65}

.mo-wiki-myths{margin-top:30px;border-top:1px solid rgba(11,20,28,.16)}
.mo-wiki-myths details{border-bottom:1px solid rgba(11,20,28,.15)}
.mo-wiki-myths summary{cursor:pointer;list-style:none;padding:22px 42px 22px 0;position:relative;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:22px}
.mo-wiki-myths summary::-webkit-details-marker{display:none}
.mo-wiki-myths summary::after{content:'+';position:absolute;right:4px;top:18px;font-family:Inter,sans-serif;font-size:25px;font-weight:300;color:var(--primary)}
.mo-wiki-myths details[open] summary::after{content:'–'}
.mo-wiki-myths details p{padding:0 42px 22px 0;margin:0;font-size:14px;line-height:1.72}

.mo-wiki-directory-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:34px}
.mo-wiki-directory-links a{min-height:112px;display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:15px;padding:20px;background:var(--ink);color:#fff;text-decoration:none;transition:transform .2s ease,background .2s ease}
.mo-wiki-directory-links a:hover{transform:translateY(-2px);background:var(--primary)}
.mo-wiki-directory-links i{color:var(--mint);font-size:18px}
.mo-wiki-directory-links span{display:flex;flex-direction:column;gap:5px}
.mo-wiki-directory-links b{color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:20px;font-weight:500}
.mo-wiki-directory-links small{color:rgba(255,255,255,.64);font-size:14px}
.mo-wiki-directory-links em{font-style:normal;font-size:20px}

.mo-wiki-sources ol{margin:30px 0 0;padding:0;list-style:none;counter-reset:source}
.mo-wiki-sources li{counter-increment:source;display:grid;grid-template-columns:36px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid rgba(11,20,28,.12);font-size:14px;line-height:1.6}
.mo-wiki-sources li::before{content:counter(source,decimal-leading-zero);color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.1em;padding-top:3px}
.mo-wiki-sources a{color:var(--primary);text-decoration-thickness:1px;text-underline-offset:3px}
.mo-wiki-source-note{margin-top:28px;padding:22px 24px;background:var(--mint);color:#40545a;font-size:14px;line-height:1.65}

.mo-wiki-entry-footer{margin-top:78px;padding:48px;display:grid;grid-template-columns:1fr auto;gap:34px;align-items:end;background:var(--ink);color:#fff}
.mo-wiki-entry-footer>div>span{color:var(--mint);font-size:14px;font-weight:900;letter-spacing:.16em}
.mo-wiki-entry-footer h2{margin:14px 0 12px;color:#fff;font-size:38px;font-weight:500}
.mo-wiki-entry-footer p{max-width:640px;margin:0;color:rgba(255,255,255,.69);font-size:14px;line-height:1.7}

.mo-wiki-aside{position:sticky;top:108px;display:grid;gap:18px}
.mo-wiki-infobox{background:var(--ink);color:#fff;border:1px solid var(--ink)}
.mo-wiki-infobox-head{padding:26px 25px 22px;border-bottom:1px solid rgba(255,255,255,.14)}
.mo-wiki-infobox-head span{display:block;color:var(--mint);font-size:14px;font-weight:900;letter-spacing:.15em}
.mo-wiki-infobox-head strong{display:block;margin-top:12px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:38px;font-weight:500;letter-spacing:-.03em}
.mo-wiki-infobox dl{margin:0}
.mo-wiki-infobox dl>div{padding:14px 24px 15px;border-bottom:1px solid rgba(255,255,255,.10)}
.mo-wiki-infobox dl>div:last-child{border-bottom:0}
.mo-wiki-infobox dt{margin-bottom:4px;color:rgba(255,255,255,.48);font-size:14px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.mo-wiki-infobox dd{margin:0;color:#fff;font-size:14px;line-height:1.5}
.mo-wiki-toc{padding:22px 24px;background:var(--mint);border:1px solid rgba(11,20,28,.10)}
.mo-wiki-toc>span{display:block;margin-bottom:12px;color:var(--primary);font-size:14px;font-weight:900;letter-spacing:.14em}
.mo-wiki-toc a{display:block;padding:7px 0;color:var(--ink);text-decoration:none;font-size:14px;font-weight:700;border-bottom:1px solid rgba(11,20,28,.08)}
.mo-wiki-toc a:last-child{border-bottom:0}
.mo-wiki-toc a:hover{color:var(--primary)}

@media(max-width:1080px){
  .mo-wiki-article-grid{grid-template-columns:minmax(0,1fr) 290px;gap:48px}
  .mo-wiki-three-cards,.mo-wiki-reg-grid{grid-template-columns:1fr}
  .mo-wiki-three-cards article,.mo-wiki-reg-grid>div{min-height:0}
  .mo-wiki-three-cards h3,.mo-wiki-reg-grid h3{margin-top:36px}
}
@media(max-width:860px){
  .mo-wiki-article-shell{padding-top:64px}
  .mo-wiki-article-grid{grid-template-columns:1fr}
  .mo-wiki-aside{position:static;order:-1;grid-template-columns:1fr 1fr;align-items:start}
  .mo-wiki-process{grid-template-columns:1fr}
  .mo-wiki-entry-footer{grid-template-columns:1fr;align-items:start}
}
@media(max-width:680px){
  .mo-wiki-entry-row{grid-template-columns:46px minmax(0,1fr) 30px;gap:12px;min-height:146px}
  .mo-wiki-entry-row:hover{padding-left:12px;padding-right:12px}
  .mo-wiki-entry-title strong{font-size:34px}
  .mo-wiki-entry-title small{font-size:14px}
  .mo-wiki-article-hero{min-height:600px}
  .mo-wiki-article-hero-inner{padding-top:58px;padding-bottom:50px}
  .mo-wiki-breadcrumb{margin-bottom:35px;flex-wrap:wrap}
  .mo-wiki-article-hero h1{font-size:64px}
  .mo-wiki-article-deck{font-size:21px}
  .mo-wiki-article-grid{gap:46px}
  .mo-wiki-aside{grid-template-columns:1fr}
  .mo-wiki-section{padding-top:60px}
  .mo-wiki-section-heading{grid-template-columns:34px 1fr;gap:12px}
  .mo-wiki-section-heading h2{font-size:30px}
  .mo-wiki-main p{font-size:16px;line-height:1.8}
  .mo-wiki-lede{font-size:18px!important}
  .mo-wiki-timeline>div{grid-template-columns:1fr;gap:8px}
  .mo-wiki-definition-list>div{grid-template-columns:1fr;gap:8px}
  .mo-wiki-label-grid,.mo-wiki-glossary,.mo-wiki-directory-links{grid-template-columns:1fr}
  .mo-wiki-entry-footer{padding:30px 24px}
  .mo-wiki-entry-footer h2{font-size:32px}
  .mo-wiki-callout{padding:22px}
}
.mo-wiki-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:34px;background:rgba(11,20,28,.15);border:1px solid rgba(11,20,28,.15)}
.mo-wiki-related-grid>span{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;background:var(--mint);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:18px}
.mo-wiki-related-grid em{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-style:normal;font-weight:900;letter-spacing:.10em;text-transform:uppercase;color:var(--primary)}
@media(max-width:680px){.mo-wiki-related-grid{grid-template-columns:1fr}.mo-wiki-related-grid>span{min-height:74px;font-size:17px}}

/* Mezcal Wiki landing — compact article index v1.5.0 */
.mo-wiki-simple-list{
  margin-top:34px;
  padding-top:20px;
  border-top:1px solid rgba(11,20,28,.18);
  display:flex;
  align-items:baseline;
  gap:22px;
  flex-wrap:wrap;
}
.mo-wiki-simple-label{
  font-size:0.875rem;
  line-height:1;
  letter-spacing:.16em;
  font-weight:800;
  color:#607274;
}
.mo-wiki-simple-link{
  color:#0B141C;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.12rem;
  text-decoration:none;
  border-bottom:1px solid rgba(11,20,28,.28);
  padding-bottom:2px;
  transition:border-color .2s ease,opacity .2s ease;
}
.mo-wiki-simple-link:hover{
  border-bottom-color:#0B141C;
  opacity:.72;
}
.mo-wiki-simple-link span{
  display:inline-block;
  margin-left:5px;
}
@media (max-width:640px){
  .mo-wiki-simple-list{gap:12px;align-items:flex-start;flex-direction:column}
}


/* ==========================================================
   MEZCAL WIKI — article template v1.6.0
   Full-width reference layout, 14px minimum type, no motion.
   ========================================================== */

/* Wiki pages are intentionally static reference pages. */

html.mo-wiki-no-motion{scroll-behavior:auto!important}
body.mo-wiki-no-motion,
body.mo-wiki-no-motion * ,
body.mo-wiki-no-motion *::before,
body.mo-wiki-no-motion *::after{
  animation:none!important;
  transition:none!important;
  scroll-behavior:auto!important;
}
body.mo-wiki-no-motion .mo-wiki-directory-links a:hover,
body.mo-wiki-no-motion .mo-wiki-entry-row:hover .mo-wiki-entry-arrow{
  transform:none!important;
}

/* Article body uses the viewport instead of the site's centered content container. */
.mo-wiki-article-shell > .mo-wiki-article-grid.container{
  width:100%;
  max-width:none;
  margin:0;
  padding-left:50px;
  padding-right:0;
  grid-template-columns:minmax(0,1fr) minmax(320px,360px);
  gap:60px;
}
.mo-wiki-main{width:100%;max-width:none}

/* Section titles align directly with the body copy: no index-number gutter. */
.mo-wiki-section-heading{
  display:block;
  margin-bottom:34px;
}
.mo-wiki-section-heading h2{
  max-width:none;
  width:100%;
  margin:9px 0 0;
}

/* No Wiki article text may render below 14px. */
.mo-wiki-article .mo-kicker,
.mo-wiki-breadcrumb,
.mo-wiki-article-meta,
.mo-wiki-callout strong,
.mo-wiki-timeline b,
.mo-wiki-agave-table th,
.mo-wiki-process article>span,
.mo-wiki-three-cards span,
.mo-wiki-reg-grid span,
.mo-wiki-directory-links small,
.mo-wiki-sources li,
.mo-wiki-sources li::before,
.mo-wiki-source-note,
.mo-wiki-entry-footer>div>span,
.mo-wiki-infobox-head span,
.mo-wiki-infobox dt,
.mo-wiki-toc>span,
.mo-wiki-toc a,
.mo-wiki-related-grid em,
.mo-wiki-article .mo-btn{
  font-size:14px;
}
.mo-wiki-agave-table td,
.mo-wiki-reg-grid p,
.mo-wiki-label-grid p,
.mo-wiki-glossary p{
  font-size:15px;
}
.mo-wiki-infobox dd{
  font-size:15px;
  line-height:1.55;
}
.mo-wiki-infobox dt{
  line-height:1.35;
}

/* The reference column remains flush with the right edge. */
.mo-wiki-aside{
  justify-self:stretch;
}

/* Override the site's generic nav flex rule: Wiki TOC is a vertical reference list. */
.mo-wiki-toc{
  display:block;
  width:100%;
}
.mo-wiki-toc a{
  display:block;
  width:100%;
  padding:10px 0;
  line-height:1.4;
}

/* Landing page follows the same no-motion / minimum-label-size convention. */
.mo-wiki-landing .mo-kicker,
.mo-wiki-landing .mo-wiki-simple-label{font-size:14px}
.mo-wiki-landing .mo-wiki-simple-link{transition:none!important}

@media(max-width:1080px){
  .mo-wiki-article-shell > .mo-wiki-article-grid.container{
    grid-template-columns:minmax(0,1fr) 300px;
    gap:36px;
    padding-left:36px;
  }
}
@media(max-width:860px){
  .mo-wiki-article-shell > .mo-wiki-article-grid.container{
    grid-template-columns:1fr;
    padding-left:28px;
    padding-right:28px;
  }
  .mo-wiki-aside{justify-self:stretch}
}
@media(max-width:680px){
  .mo-wiki-article-shell > .mo-wiki-article-grid.container{
    padding-left:20px;
    padding-right:20px;
  }
  .mo-wiki-section-heading{display:block}
  .mo-wiki-section-heading h2{width:100%}
}

/* ==========================================================
   MEZCAL WIKI — academic article template v1.7.0
   Typography-led layout: rules + hierarchy, minimal boxes.
   ========================================================== */

/* Each major article section is separated only by a rule and type hierarchy. */
.mo-wiki-lead{
  padding-bottom:70px;
  border-bottom:0;
}
.mo-wiki-section{
  margin-top:0;
  padding:72px 0 18px;
  border-top:1px solid rgba(11,20,28,.18);
}
.mo-wiki-section-heading{
  margin-bottom:34px;
}
.mo-wiki-section-heading .mo-kicker{
  display:block;
  margin-bottom:10px;
  color:var(--primary);
  font-size:14px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.mo-wiki-section-heading h2{
  margin:0;
  max-width:none;
  width:100%;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(30px,calc(4.2vw - 10px),52px);
  line-height:1.02;
  font-weight:500;
  letter-spacing:-.035em;
}

/* Academic notes: plain heading + paragraph, no highlight panel. */
.mo-wiki-note{
  margin:34px 0 40px;
  padding:0;
  background:none;
  border:0;
}
.mo-wiki-note h3{
  margin:0 0 12px;
  font-size:27px;
}
.mo-wiki-note p{
  margin:0;
}

/* Process, categories, regulation, label anatomy and glossary: simple stacked text. */
.mo-wiki-text-list{
  display:block;
  margin:34px 0 46px;
  padding:0;
  background:none;
  border:0;
}
.mo-wiki-text-list article{
  min-height:0;
  margin:0 0 30px;
  padding:0;
  background:none;
  border:0;
}
.mo-wiki-text-list article:last-child{
  margin-bottom:0;
}
.mo-wiki-text-list h3{
  margin:0 0 10px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  line-height:1.15;
  font-weight:500;
  letter-spacing:-.02em;
}
.mo-wiki-text-list p{
  margin:0;
}

/* Neutralize old card/grid visual systems if any legacy markup remains. */
.mo-wiki-process,
.mo-wiki-three-cards,
.mo-wiki-reg-grid,
.mo-wiki-label-grid,
.mo-wiki-glossary{
  display:block;
  margin:34px 0 46px;
  background:none;
  border:0;
}
.mo-wiki-process article,
.mo-wiki-three-cards article,
.mo-wiki-reg-grid>div,
.mo-wiki-label-grid>div,
.mo-wiki-glossary>div{
  min-height:0;
  margin:0 0 30px;
  padding:0;
  background:none;
  border:0;
}
.mo-wiki-process article>span,
.mo-wiki-three-cards span,
.mo-wiki-reg-grid span{
  display:none;
}
.mo-wiki-process h3,
.mo-wiki-three-cards h3,
.mo-wiki-reg-grid h3,
.mo-wiki-label-grid b,
.mo-wiki-glossary b{
  margin:0 0 10px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  line-height:1.15;
  font-weight:500;
  letter-spacing:-.02em;
}
.mo-wiki-process p,
.mo-wiki-three-cards p,
.mo-wiki-reg-grid p,
.mo-wiki-label-grid p,
.mo-wiki-glossary p{
  margin:0;
  font-size:17px;
  line-height:1.86;
}

/* Definition lists remain stacked but lose the two-column/table feeling. */
.mo-wiki-definition-list{
  margin:28px 0 44px;
  border:0;
}
.mo-wiki-definition-list>div{
  display:block;
  padding:0;
  margin:0 0 27px;
  border:0;
}
.mo-wiki-definition-list dt{
  margin:0 0 9px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  line-height:1.15;
  font-weight:500;
}
.mo-wiki-definition-list dd{
  margin:0;
  color:#394c52;
  font-size:17px;
  line-height:1.86;
}

/* Related concepts: one restrained scholarly list, no tiles. */
.mo-wiki-related-list{
  list-style:none;
  margin:30px 0 0;
  padding:0;
}
.mo-wiki-related-list li{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:24px;
  margin:0 0 15px;
  padding:0;
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:21px;
  line-height:1.45;
}
.mo-wiki-related-list em{
  flex:0 0 auto;
  color:var(--primary);
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-size:14px;
  line-height:1.2;
  font-style:normal;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

/* Reference sidebar: infobox stays on the right but is no longer sticky.
   The TOC becomes sticky only after the reader scrolls past the infobox. */
.mo-wiki-aside{
  position:static;
  top:auto;
  display:block;
}
.mo-wiki-infobox{
  position:static;
}
.mo-wiki-toc{
  position:sticky;
  top:108px;
  display:block;
  width:100%;
  margin-top:24px;
  padding:22px 0 0;
  background:transparent;
  border:0;
  border-top:1px solid rgba(11,20,28,.18);
}
.mo-wiki-toc>span{
  margin-bottom:12px;
}
.mo-wiki-toc a{
  padding:8px 0;
  border-bottom:0;
  font-weight:650;
}

/* The highlighted callout system is intentionally suppressed in Wiki articles. */
.mo-wiki-article .mo-wiki-callout{
  margin:34px 0 40px;
  padding:0;
  background:none!important;
  border:0!important;
  color:inherit;
}
.mo-wiki-article .mo-wiki-callout strong{
  margin:0 0 12px;
  color:var(--ink)!important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  line-height:1.15;
  font-weight:500;
  letter-spacing:-.02em;
  text-transform:none;
}
.mo-wiki-article .mo-wiki-callout p{
  color:#394c52!important;
  font-size:17px;
  line-height:1.86;
}

/* Source update is a note, not a colored card. */
.mo-wiki-source-note{
  margin:28px 0 0;
  padding:20px 0 0;
  background:none;
  border-top:1px solid rgba(11,20,28,.14);
  color:#40545a;
  font-size:14px;
  line-height:1.7;
}

/* The article footer should read like an editorial close, not another promo box. */
.mo-wiki-entry-footer{
  margin-top:78px;
  padding:46px 0 0;
  display:grid;
  grid-template-columns:1fr auto;
  gap:34px;
  align-items:end;
  background:none;
  border-top:1px solid rgba(11,20,28,.18);
  color:var(--ink);
}
.mo-wiki-entry-footer>div>span{color:var(--primary);font-size:14px}
.mo-wiki-entry-footer h2{color:var(--ink)}
.mo-wiki-entry-footer p{color:#394c52;font-size:17px;line-height:1.75}

/* Directory cards are deliberately retained as the one strong external-action element. */
.mo-wiki-directory-links a{
  background:var(--ink);
}

@media(max-width:860px){
  .mo-wiki-toc{position:static;top:auto}
  .mo-wiki-entry-footer{grid-template-columns:1fr;align-items:start}
}
@media(max-width:680px){
  .mo-wiki-section{padding-top:58px}
  .mo-wiki-section-heading h2{font-size:30px}
  .mo-wiki-text-list h3,
  .mo-wiki-definition-list dt,
  .mo-wiki-note h3{font-size:25px}
  .mo-wiki-related-list li{display:block;margin-bottom:19px}
  .mo-wiki-related-list em{display:block;margin-top:5px}
  .mo-wiki-entry-footer{padding-top:34px}
}
.mo-wiki-aside{align-self:stretch}
@media(max-width:860px){.mo-wiki-aside{align-self:auto}}


/* ==========================================================
   MEZCAL WIKI — academic article template v1.8.0
   Section rules only + balanced 20px spacing + formal TOC.
   ========================================================== */

/* A rule belongs only between major article sections.
   The previous section contributes 20px before it; the next
   section contributes 20px after it. */
.mo-wiki-lead{
  padding-bottom:20px;
  border-bottom:0;
}
.mo-wiki-section{
  margin-top:0;
  padding:20px 0;
  border-top:1px solid rgba(11,20,28,.18);
}

/* Remove decorative/internal horizontal separators inside a section.
   Genuine tabular borders are intentionally left intact. */
.mo-wiki-timeline{
  border-top:0;
}
.mo-wiki-timeline>div{
  border-bottom:0;
}
.mo-wiki-myths{
  border-top:0;
}
.mo-wiki-myths details{
  border-bottom:0;
}
.mo-wiki-source-note{
  padding-top:0;
  border-top:0;
}

/* The contents panel visually belongs with the reference sidebar. */
.mo-wiki-toc{
  position:sticky;
  top:108px;
  display:block;
  width:100%;
  margin-top:24px;
  padding:26px 24px 24px;
  background:var(--mint);
  border:1px solid rgba(11,20,28,.12);
}
.mo-wiki-toc h2{
  margin:0 0 16px;
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:30px;
  line-height:1.05;
  font-weight:500;
  letter-spacing:-.025em;
}
.mo-wiki-toc a{
  display:block;
  width:100%;
  padding:8px 0;
  color:var(--ink);
  border-bottom:0;
  font-size:14px;
  line-height:1.4;
  font-weight:650;
  text-decoration:none;
}
.mo-wiki-toc a:hover{
  color:var(--primary);
}

@media(max-width:860px){
  .mo-wiki-toc{position:static;top:auto}
}

/* ==========================================================
   MEZCAL WIKI — academic reference content v2.0.0
   Neutral subsection hierarchy + scholarly citations.
   ========================================================== */
.mo-wiki-section-heading-lead{margin-bottom:34px}
.mo-wiki-subsection{
  margin:34px 0 0;
  padding:0;
  border:0;
  background:none;
}
.mo-wiki-subsection:first-of-type{margin-top:24px}
.mo-wiki-subsection h3{
  margin:0 0 12px;
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:29px;
  line-height:1.16;
  font-weight:500;
  letter-spacing:-.02em;
}
.mo-wiki-subsection p:last-child{margin-bottom:0}
.mo-wiki-cite{
  position:relative;
  top:-.15em;
  margin-left:2px;
  font-size:14px;
  line-height:0;
}
.mo-wiki-cite a{
  color:var(--primary);
  font-weight:800;
  text-decoration:none;
}
.mo-wiki-sources li[id]{scroll-margin-top:110px}
.mo-wiki-sources li:target{font-weight:600}
.mo-wiki-agave-table th{font-size:14px;line-height:1.35}
.mo-wiki-agave-table td{font-size:15px;line-height:1.62}
.mo-wiki-text-list.mo-wiki-glossary-list article{margin-bottom:25px}
.mo-wiki-text-list.mo-wiki-glossary-list article h3{font-size:25px}
.mo-wiki-toc{max-height:calc(100vh - 132px);overflow:auto}
.mo-wiki-toc a{padding:7px 0}
@media(max-width:860px){
  .mo-wiki-toc{max-height:none;overflow:visible}
}
@media(max-width:680px){
  .mo-wiki-subsection{margin-top:29px}
  .mo-wiki-subsection h3{font-size:25px}
}

/* Keep horizontal rules exclusive to major Wiki section boundaries. */
.mo-wiki-entry-footer{border-top:0}

/* ==================================================
   v1.3.2 — direct producer ecosystem + ultra-simple onboarding
   ================================================== */

/* The wizard stays visually consistent with the editorial site, but each screen
   has one obvious job and large phone-friendly controls. */
.wizard-shell{
  max-width:900px;
  border-radius:24px;
}
.wizard-step{min-height:340px;}
.wizard-step .primary-field-label{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:16px;
}
.wizard-step .primary-field-label i{font-size:22px;color:#244454;}
.profile-type-choices .choice-option span{gap:10px;min-height:64px;padding:14px 18px;font-size:17px;}
.profile-type-choices .choice-option span i{font-size:20px;}
.optional-fields{margin-top:18px;padding-top:4px;}

.service-choice-grid{
  display:grid;
  grid-template-columns:calc(50% - 6px) calc(50% - 6px);
  gap:12px;
  margin:18px 0 26px;
}
.service-choice{margin:0!important;cursor:pointer;}
.service-choice[hidden]{display:none!important;}
.service-choice input{position:absolute;opacity:0;pointer-events:none;}
.service-choice span{
  min-height:88px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  border:2px solid rgba(11,20,28,.10);
  border-radius:16px;
  background:#f0fff5;
  color:#0b141c;
  transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.service-choice span>i{width:26px;text-align:center;font-size:24px;color:#244454;}
.service-choice span b{font-size:16px;line-height:1.25;}
.service-choice input:checked+span{
  background:#244454;
  border-color:#244454;
  color:#fff;
  box-shadow:0 10px 24px rgba(36,68,84,.18);
  transform:translateY(-1px);
}
.service-choice input:checked+span>i{color:#fff;}
.service-choice input:focus-visible+span{outline:3px solid rgba(36,68,84,.25);outline-offset:2px;}
.appointment-question{padding:20px 22px;background:#f0fff5;border-radius:16px;}
.appointment-question[hidden]{display:none!important;}
.appointment-question>label{margin-top:0;font-size:16px;}
.appointment-question .choice-grid{margin-bottom:0;}

/* Existing-profile matcher */
.match-modal[hidden]{display:none!important;}
.match-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:18px;}
.match-modal-backdrop{position:absolute;inset:0;background:rgba(11,20,28,.78);backdrop-filter:blur(4px);}
.match-modal-card{
  position:relative;
  z-index:1;
  width:min(680px,100%);
  max-height:88vh;
  overflow:auto;
  padding:30px;
  border-radius:22px;
  background:#fff;
  color:#0b141c;
  box-shadow:0 28px 70px rgba(0,0,0,.35);
}
.match-modal-card h3{margin:7px 38px 8px 0!important;}
.match-modal-x{position:absolute;top:14px;right:16px;width:42px;height:42px;border:0;border-radius:50%;background:#f0fff5;color:#0b141c;font-size:28px;line-height:1;cursor:pointer;}
.match-result{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-top:1px solid rgba(11,20,28,.10);}
.match-result>div{min-width:0;}
.match-result strong{display:block;font-size:19px;color:#0b141c;}
.match-result span,.match-result small{display:block;margin-top:3px;color:#607274;}
.match-result .btn{flex:0 0 auto;}
.match-not-mine{width:100%;margin-top:14px;}
body.match-modal-open{overflow:hidden;}

/* WhatsApp is a primary route but retains Mezcal Oaxaca's visual system. */
.whatsapp-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;}
.whatsapp-primary .fa-whatsapp{font-size:20px;}
.whatsapp-verify-panel .verification-code{margin:20px 0;}
.whatsapp-verify-panel .whatsapp-primary{width:100%;min-height:58px;font-size:17px;}
.simple-help{margin-top:18px!important;font-size:14px;}

/* Public producer capabilities */
.direct-service-panel{
  margin:16px 0 28px;
  padding:26px;
  border-radius:20px;
  background:#f0fff5;
  color:#0b141c;
}
.direct-service-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;}
.direct-service-head h3{margin:5px 0 0;font-family:Georgia,serif;font-size:30px;line-height:1.1;color:#0b141c;}
.appointment-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#fff;color:#244454;font-size:14px;font-weight:900;white-space:nowrap;}
.service-public-grid{display:grid;grid-template-columns:calc(50% - 6px) calc(50% - 6px);gap:12px;}
.service-public-action{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:84px;
  padding:15px 17px;
  border-radius:15px;
  background:#fff;
  color:#0b141c;
  text-decoration:none;
  border:1px solid rgba(11,20,28,.08);
  transition:transform .18s ease,box-shadow .18s ease;
}
a.service-public-action:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(36,68,84,.12);}
.service-public-action>i{width:28px;text-align:center;font-size:23px;color:#244454;}
.service-public-action span{display:block;min-width:0;}
.service-public-action b{display:block;font-size:15px;line-height:1.25;}
.service-public-action small{display:block;margin-top:5px;color:#607274;font-weight:700;}
.service-public-action small .fa-whatsapp{margin-right:3px;}
.service-public-action.is-static{opacity:.8;}

/* Directory intent-first filtering + direct WhatsApp */
.directory-intent-bar{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 26px;padding:16px 18px;border-radius:16px;background:#f0fff5;color:#0b141c;}
.directory-intent-bar>span{margin-right:3px;font-weight:900;}
.intent-filter{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border-radius:999px;background:#fff;color:#244454;text-decoration:none;font-size:14px;font-weight:800;border:1px solid rgba(11,20,28,.08);}
.intent-filter.active{background:#244454;color:#fff;}
.intent-filter.clear{background:transparent;border-color:rgba(11,20,28,.16);}
.directory-service-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.directory-service-tags span{padding:6px 9px;border-radius:999px;background:#f0fff5;color:#244454;font-size:14px;font-weight:800;line-height:1.15;}
.directory-whatsapp{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:44px;margin-top:16px;border-radius:11px;background:#244454;color:#fff!important;text-decoration:none;font-size:14px;font-weight:900;}
.directory-whatsapp:hover{background:#0b141c;}
.directory-whatsapp i{font-size:18px;}

@media(max-width:700px){
  .wizard-step{min-height:300px;}
  .service-choice-grid,.service-public-grid{grid-template-columns:100%;}
  .match-modal-card{padding:24px 18px;}
  .match-result{align-items:stretch;flex-direction:column;gap:12px;}
  .match-result .btn{width:100%;}
  .direct-service-panel{padding:20px 16px;}
  .direct-service-head{display:block;}
  .appointment-pill{margin-top:12px;}
  .directory-intent-bar{align-items:stretch;}
  .directory-intent-bar>span{width:100%;}
  .intent-filter{justify-content:center;flex:1 1 calc(50% - 9px);}
}

/* =========================================================
   Producer growth infrastructure v1.3.3
   Free producer tools · referrals · village routes · B2B
   ========================================================= */
.producer-acq-hero{position:relative;background:linear-gradient(110deg,rgba(11,20,28,.96),rgba(36,68,84,.86)),url('/uploads/mezcal-palenques-1.jpg') center/cover no-repeat;color:#fff;padding:110px 0 82px}.producer-acq-grid{display:flex;align-items:flex-end;justify-content:space-between;gap:56px}.producer-acq-grid>div:first-child{max-width:780px}.producer-acq-hero h1{font-size:clamp(52px,7vw,96px);line-height:.94;letter-spacing:-.055em;margin:18px 0 28px}.producer-acq-hero p{font-size:20px;line-height:1.6;max-width:710px}.producer-acq-promise{margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.24);font-size:18px}.founder-count-card{width:260px;min-width:260px;background:#f0fff5;color:#0B141C;padding:32px;border-radius:2px}.founder-count-card small,.founder-count-card span{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:14px;font-weight:800}.founder-count-card strong{display:block;font-size:74px;line-height:1;margin:13px 0}.producer-acq-main{padding-top:66px;padding-bottom:90px}.producer-benefits-grid{display:flex;flex-wrap:wrap;gap:18px}.producer-benefits-grid article{width:calc(25% - 14px);background:#f0fff5;padding:30px;min-height:220px}.producer-benefits-grid i{font-size:28px;color:#244454;margin-bottom:28px}.producer-benefits-grid h2{font-size:23px;margin:0 0 10px}.producer-benefits-grid p{margin:0;color:#607274}.producer-find-panel{max-width:880px;margin:78px auto 0;text-align:center}.producer-find-panel h2{font-size:clamp(38px,5vw,64px);margin:10px 0 14px}.producer-search-form{display:flex;gap:10px;margin-top:30px}.producer-search-form input{flex:1;font-size:19px;padding:18px 20px}.producer-search-results{max-width:880px;margin:40px auto 0}.producer-result-list{display:flex;flex-direction:column;gap:12px}.producer-result-list article{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:#fff;border:1px solid #dce7e0}.producer-result-list h3{margin:8px 0 3px}.producer-result-list p{margin:0;color:#607274}.producer-not-found{text-align:center;background:#f0fff5;padding:42px}.producer-acq-next{text-align:center;margin-top:34px;font-size:18px}.producer-acq-next a{font-weight:800;margin-left:10px}

.producer-tools-page{padding-top:54px;padding-bottom:90px}.producer-tools-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:36px}.producer-tools-head h1{font-size:clamp(42px,6vw,72px);margin:5px 0 8px}.producer-tools-head p{font-size:18px;color:#607274}.founder-badge{background:#0B141C;color:#f0fff5;padding:20px 24px;min-width:185px}.founder-badge small{display:block;font-size:14px;letter-spacing:.1em;font-weight:800}.founder-badge strong{display:block;font-size:36px;margin-top:5px}.producer-quick-setup{background:#f0fff5;padding:42px;margin-bottom:24px}.producer-quick-setup h2,.producer-tools-section h2,.producer-qr-panel h2,.producer-referral-panel h2{font-size:clamp(32px,4vw,50px);margin:8px 0 10px}.producer-toggle-grid{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.producer-toggle{width:calc(33.333% - 8px);cursor:pointer}.producer-toggle input{position:absolute;opacity:0;pointer-events:none}.producer-toggle span{display:flex;align-items:center;gap:12px;min-height:92px;background:#fff;border:2px solid #d6e7dd;padding:17px}.producer-toggle i{font-size:23px;width:30px;color:#244454}.producer-toggle b{flex:1;font-size:17px}.producer-toggle em{font-style:normal;font-weight:900;font-size:14px;text-transform:uppercase;opacity:.35}.producer-toggle input:checked+span{background:#0B141C;color:#fff;border-color:#0B141C}.producer-toggle input:checked+span i{color:#f0fff5}.producer-toggle input:checked+span em{opacity:1;color:#f0fff5}.producer-simple-check{display:flex;align-items:center;gap:10px;font-weight:700;margin:8px 0 22px}.producer-simple-check input{width:22px;height:22px}.wholesale-note textarea{min-height:86px}.producer-save-big{margin-top:18px;min-height:58px;font-size:16px}.producer-proof-strip{display:flex;background:#0B141C;color:#fff;margin:24px 0 70px}.producer-proof-strip>div{width:33.333%;padding:28px 30px;border-right:1px solid rgba(255,255,255,.14)}.producer-proof-strip>div:last-child{border-right:0}.producer-proof-strip strong{display:block;font-size:42px;color:#f0fff5}.producer-proof-strip span{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin-top:6px}.producer-tools-section{margin-bottom:62px}.producer-tool-grid{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.producer-tool-card{width:calc(50% - 7px);display:flex;align-items:center;gap:20px;padding:28px;background:#fff;border:1px solid #dbe4df;color:#0B141C;text-decoration:none;transition:transform .25s ease,background .25s ease}.producer-tool-card:hover{transform:translateY(-3px);background:#f0fff5}.producer-tool-card>i{font-size:28px;color:#244454;width:34px}.producer-tool-card>div{flex:1}.producer-tool-card h3{margin:0 0 4px;font-size:23px}.producer-tool-card p{margin:0;color:#607274}.producer-tool-card>b{font-size:24px}.producer-tool-card.is-muted{opacity:.55;cursor:default}.producer-qr-panel,.producer-referral-panel{display:flex;align-items:center;justify-content:space-between;gap:46px;padding:46px;background:#244454;color:#fff;margin:24px 0}.producer-referral-panel{background:#0B141C}.producer-qr-panel>div:first-child,.producer-referral-panel>div:first-child{max-width:680px}.producer-qr-box{background:#fff;padding:16px;min-width:252px;min-height:252px;display:flex;align-items:center;justify-content:center}.producer-referral-panel .btn{white-space:nowrap}.village-progress-card{background:#f0fff5;padding:40px;margin-top:24px}.village-progress-card>div:first-child{display:flex;justify-content:space-between}.village-progress-card h2{font-size:40px;margin:5px 0 20px}.village-progress-number strong{font-size:46px}.village-progress-number span{display:block;text-transform:uppercase;font-size:14px;letter-spacing:.08em;font-weight:800}.village-progress-bar{height:12px;background:#d9eee0;margin:20px 0}.village-progress-bar i{display:block;height:100%;background:#244454}.village-unlocked{display:flex;align-items:center;justify-content:space-between;gap:22px}.producer-tools-link{font-weight:800}.directory-founder-tag,.profile-founder-badge{display:inline-block;background:#f0fff5;color:#0B141C;padding:5px 8px;font-size:14px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-top:8px}.profile-founder-badge{margin-left:8px;vertical-align:middle}.profile-digital-tools{display:flex;gap:12px;margin:26px 0}.profile-digital-tools>a{width:50%;display:flex;align-items:center;gap:14px;background:#f0fff5;padding:18px;color:#0B141C;text-decoration:none}.profile-digital-tools i{font-size:22px;color:#244454}.profile-digital-tools small{display:block;color:#607274;margin-top:2px}

.catalog-page,.wholesale-page{background:#eef4f0;padding:42px 20px 80px}.catalog-actions{max-width:1040px;margin:0 auto 18px;display:flex;justify-content:space-between;gap:12px}.catalog-sheet,.wholesale-sheet{max-width:1040px;margin:auto;background:#fff;padding:58px;box-shadow:0 20px 60px rgba(11,20,28,.08)}.catalog-header,.wholesale-sheet>header{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;border-bottom:3px solid #0B141C;padding-bottom:26px}.catalog-header small,.wholesale-sheet>header small{font-weight:900;letter-spacing:.11em}.catalog-header h1,.wholesale-sheet>header h1{font-size:52px;line-height:1;margin:10px 0 8px}.catalog-founder{background:#0B141C;color:#fff;padding:12px 16px;font-size:14px;font-weight:900;text-transform:uppercase}.catalog-hero-image{width:100%;height:360px;object-fit:cover;margin:30px 0}.catalog-bilingual-intro,.wholesale-lead{display:flex;gap:38px;padding:34px 0;border-bottom:1px solid #ccd8d1}.catalog-bilingual-intro>div,.wholesale-lead>div{width:50%}.catalog-bilingual-intro b,.wholesale-lead b{font-size:14px;letter-spacing:.12em}.catalog-bilingual-intro p,.wholesale-lead p{font-size:17px;line-height:1.65}.catalog-section-title{margin:38px 0 18px;font-size:14px;font-weight:900;letter-spacing:.12em}.catalog-expression-grid{display:flex;flex-wrap:wrap;gap:14px}.catalog-expression-grid article{width:calc(50% - 7px);background:#f0fff5;padding:25px}.catalog-expression-grid h2{margin:0 0 12px}.catalog-expression-grid article>div{margin-top:14px}.catalog-expression-grid small,.catalog-facts small,.wholesale-data-grid small,.wholesale-note-public small{display:block;font-size:14px;letter-spacing:.1em;font-weight:900;color:#607274}.catalog-facts{display:flex;gap:20px;margin-top:38px;border-top:1px solid #ccd8d1;border-bottom:1px solid #ccd8d1;padding:28px 0}.catalog-facts>div{width:33.333%}.catalog-footer,.wholesale-sheet footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:38px}.catalog-footer h2,.wholesale-sheet footer h2{max-width:600px}.catalog-qr{background:#fff;padding:10px;min-width:170px}.print-only{display:none}.wholesale-sheet>header>strong{background:#0B141C;color:#fff;padding:14px 18px;font-size:14px;letter-spacing:.1em}.wholesale-data-grid{display:flex;flex-wrap:wrap;gap:10px;padding:28px 0}.wholesale-data-grid>div{width:calc(33.333% - 7px);background:#f0fff5;padding:18px}.wholesale-data-grid strong{display:block;margin-top:6px}.wholesale-note-public{padding:24px;background:#244454;color:#fff;margin:10px 0 30px}.wholesale-note-public small{color:#d9eee0}.wholesale-expression-list{display:flex;flex-direction:column;border-top:1px solid #ccd8d1}.wholesale-expression-list article{display:flex;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid #ccd8d1}.wholesale-expression-list strong{width:35%}.wholesale-expression-list span{flex:1;color:#607274}

.route-hero{background:linear-gradient(100deg,rgba(11,20,28,.94),rgba(36,68,84,.78)),url('/uploads/bg1-top-shot-magueyes.webp') center/cover;color:#fff;padding:90px 0}.route-hero h1{font-size:clamp(54px,8vw,100px);margin:10px 0}.route-page{padding-top:60px;padding-bottom:90px}.route-locked{text-align:center;background:#f0fff5;padding:70px 30px}.route-locked>strong{font-size:76px}.route-intro{max-width:700px;margin-bottom:36px}.route-grid{display:flex;flex-wrap:wrap;gap:18px}.route-card{width:calc(50% - 9px);background:#fff;border:1px solid #dbe4df}.route-card>img{width:100%;height:260px;object-fit:cover}.route-card>div{padding:26px}.route-card h3{font-size:30px;margin:14px 0}.route-founder{display:inline-block;margin-left:8px;font-size:14px;font-weight:900;text-transform:uppercase;background:#f0fff5;padding:5px 7px}.mo-founder-countdown{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-top:20px;color:#fff}.mo-founder-countdown strong{font-size:34px;color:#f0fff5}.mo-founder-countdown span{font-size:14px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}

@media(max-width:820px){.producer-acq-grid,.producer-tools-head,.producer-qr-panel,.producer-referral-panel,.catalog-header,.wholesale-sheet>header,.catalog-footer,.wholesale-sheet footer{flex-direction:column;align-items:stretch}.founder-count-card{width:100%;min-width:0}.producer-benefits-grid article,.producer-toggle,.producer-tool-card,.route-card{width:100%}.producer-proof-strip{flex-direction:column}.producer-proof-strip>div{width:100%;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.producer-search-form{flex-direction:column}.producer-quick-setup,.producer-qr-panel,.producer-referral-panel,.village-progress-card{padding:26px}.producer-qr-box{align-self:flex-start}.catalog-sheet,.wholesale-sheet{padding:28px}.catalog-bilingual-intro,.wholesale-lead,.catalog-facts{flex-direction:column}.catalog-bilingual-intro>div,.wholesale-lead>div,.catalog-facts>div,.catalog-expression-grid article,.wholesale-data-grid>div{width:100%}.catalog-header h1,.wholesale-sheet>header h1{font-size:38px}.profile-digital-tools{flex-direction:column}.profile-digital-tools>a{width:100%}.producer-result-list article{align-items:flex-start;flex-direction:column}.village-unlocked{align-items:flex-start;flex-direction:column}}

@media print{.site-header,.site-footer,.no-print{display:none!important}.catalog-page,.wholesale-page{background:#fff;padding:0}.catalog-sheet,.wholesale-sheet{box-shadow:none;max-width:none;padding:25px}.print-only{display:block}.catalog-expression-grid article,.wholesale-data-grid>div{-webkit-print-color-adjust:exact;print-color-adjust:exact}.catalog-hero-image{height:250px}.catalog-sheet a,.wholesale-sheet a{color:#0B141C;text-decoration:none}}
.profile-freshness{margin:12px 0 18px;padding:10px 12px;font-size:14px;font-weight:800;letter-spacing:.02em}.profile-freshness.is-fresh{background:#f0fff5;color:#244454}.profile-freshness.is-stale{background:#f3eee7;color:#6e5439}.profile-freshness i{margin-right:6px}
.producer-invite-origin{margin-top:18px;display:inline-flex;align-items:center;gap:9px;background:rgba(240,255,245,.12);border:1px solid rgba(240,255,245,.28);padding:10px 13px;font-size:14px;font-weight:800}.producer-invite-origin i{color:#f0fff5}

/* v1.3.3 producer tool follow-through */
.producer-tools-secondary{margin-top:18px;text-align:center}
.producer-tools-secondary a{display:inline-block;font-weight:800;text-decoration:underline;text-underline-offset:5px;color:#244454}
.village-share-kit{margin-top:24px}

/* ==================================================
   v1.3.4 — live buyer requests + bilingual intent marketplace
   ================================================== */
.mo-live-requests{padding:86px 0 92px;background:#f0fff5;color:#0B141C}
.mo-live-requests-head{display:flex;align-items:flex-end;justify-content:space-between;gap:54px;margin-bottom:34px}
.mo-live-requests-head>div:first-child{max-width:760px}
.mo-live-requests-head h2,.public-request-board h2,.producer-request-inbox h2{font-size:clamp(40px,5.2vw,72px);line-height:.98;letter-spacing:-.045em;margin:10px 0 18px}
.mo-live-requests-head p,.section-heading-row p{font-size:17px;line-height:1.65;color:#4d6064;max-width:720px}
.mo-live-requests-actions{display:flex;align-items:center;gap:24px;flex:0 0 auto}
.mo-request-grid{display:flex;flex-wrap:wrap;gap:16px}
.mo-request-card{width:calc(33.333% - 11px);display:flex;flex-direction:column;min-height:292px;padding:25px;background:#fff;border:1px solid rgba(11,20,28,.12);color:#0B141C;box-shadow:0 12px 34px rgba(11,20,28,.035)}
.mo-request-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}
.mo-request-type{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#244454}
.mo-request-type i{font-size:15px}
.mo-request-live{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:800;color:#607274;white-space:nowrap}
.mo-request-live i{width:8px;height:8px;border-radius:50%;background:#2f7d57;box-shadow:0 0 0 4px rgba(47,125,87,.11)}
.mo-request-card h3{font-size:26px;line-height:1.08;margin:0 0 18px}
.mo-request-card ul{list-style:none;padding:0;margin:0 0 24px}
.mo-request-card li{padding:6px 0;border-bottom:1px solid rgba(11,20,28,.07);font-size:14px;color:#42575b}
.mo-request-simple{font-size:15px;line-height:1.55;color:#42575b}
.mo-request-card-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(11,20,28,.10)}
.mo-request-card-bottom time{font-size:14px;line-height:1.4;color:#607274}
.mo-request-card-bottom span{font-size:14px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;text-align:right;color:#244454}
.mo-request-respond{display:block;margin:18px -25px -25px;padding:17px 25px;background:#244454;color:#fff;text-decoration:none;font-weight:900;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.mo-request-respond:hover{background:#0B141C}
.mo-request-original-note{margin:18px 0 5px;padding:15px;background:#f0fff5;border-left:3px solid #244454}
.mo-request-original-note strong{display:block;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#607274;margin-bottom:7px}
.mo-request-original-note p{margin:0;font-size:14px;line-height:1.5;color:#0B141C}
.mo-request-empty{width:100%;padding:42px;background:#fff;border:1px solid rgba(11,20,28,.10);font-size:16px;color:#607274;text-align:center}
.mo-live-producer-nudge{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:22px 0;border-top:1px solid rgba(11,20,28,.14)}
.mo-live-producer-nudge strong{font-size:18px}.mo-live-producer-nudge a{font-weight:900;color:#244454;text-decoration:none}

/* Request entry page */
.request-hero,.requests-board-hero{background:linear-gradient(105deg,rgba(11,20,28,.96),rgba(36,68,84,.80)),url('/uploads/bg1-top-shot-magueyes.webp') center/cover;color:#fff}
.request-hero{padding:78px 0}.request-hero h1,.requests-board-hero h1{font-size:clamp(52px,8vw,104px);line-height:.92;letter-spacing:-.055em;margin:10px 0 22px}.request-hero p,.requests-board-hero p{max-width:760px;font-size:19px;line-height:1.6;color:rgba(255,255,255,.82)}
.request-form-section{padding:64px 0 92px;background:#f6faf7}.request-form-container{max-width:980px}.request-wizard{max-width:920px;margin:auto;background:#fff}.request-wizard .wizard-step{min-height:390px}.request-type-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.request-type-option{width:calc(50% - 6px)}.request-type-option span{min-height:78px}.request-type-option span i{font-size:22px;color:#244454}.request-field{margin:18px 0}.request-field[hidden]{display:none!important}.choice-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.choice-row label{margin:0;cursor:pointer}.choice-row input{position:absolute;opacity:0;pointer-events:none}.choice-row span{display:flex;align-items:center;justify-content:center;min-width:100px;min-height:50px;padding:10px 18px;background:#f0fff5;border:2px solid rgba(11,20,28,.10);border-radius:12px;font-weight:800}.choice-row input:checked+span{background:#244454;color:#fff;border-color:#244454}.request-preferred-contact{margin-top:24px;padding:20px;background:#f0fff5}.request-preferred-contact strong{display:block}.request-language-note,.request-confirm-box{display:flex;align-items:flex-start;gap:14px;margin-top:18px;padding:18px;background:#f0fff5;color:#42575b}.request-language-note i,.request-confirm-box i{font-size:22px;color:#244454}.request-language-note span,.request-confirm-box p{margin:0;font-size:14px;line-height:1.55}.request-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.request-success{text-align:center;padding:60px 38px}.request-success-icon{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 20px;border-radius:50%;background:#f0fff5;color:#244454;font-size:34px}.request-success h1,.request-success h2{font-size:44px;margin:0 0 14px}.request-success p{max-width:650px;margin:0 auto 24px;font-size:17px;line-height:1.65}

/* Full live request board */
.requests-board-hero{padding:94px 0 74px}.requests-board-hero .mo-btn{margin-top:16px}.public-request-board,.producer-request-inbox{padding:74px 0 90px}.producer-request-inbox{background:#f0fff5}.public-request-board{background:#fff}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:34px}.section-heading-row>div:first-child{max-width:780px}.section-heading-row form{min-width:230px}.section-heading-row label{font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.section-heading-row select{margin-top:7px}.producer-match-grid .mo-request-card{border-color:rgba(36,68,84,.18)}.request-producer-cta{background:#0B141C;color:#fff;padding:68px 0}.request-producer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.request-producer-cta h2{font-size:clamp(36px,5vw,65px);line-height:1;margin:10px 0 15px;max-width:800px}.request-producer-cta p{max-width:720px;color:rgba(255,255,255,.72);font-size:17px;line-height:1.6}

/* Producer demand proof + live browser notification */
.producer-live-demand{display:flex;align-items:center;justify-content:space-between;gap:38px;margin:24px 0;padding:32px 36px;background:#f0fff5;border:1px solid #d9eee0}.producer-live-demand>div{max-width:720px}.producer-live-demand h2{font-size:32px;margin:6px 0 9px}.producer-live-demand p{margin:0;color:#607274}.producer-live-demand .btn{flex:0 0 auto}.producer-tool-demand{background:#f0fff5}.mo-request-toast{position:fixed;right:22px;bottom:22px;z-index:6000;width:min(390px,calc(100vw - 44px));padding:18px 20px;background:#0B141C;color:#fff;box-shadow:0 20px 55px rgba(0,0,0,.28);transform:translateY(18px);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.mo-request-toast.is-visible{opacity:1;transform:none;pointer-events:auto}.mo-request-toast strong{display:block;color:#f0fff5;font-size:16px}.mo-request-toast span{display:block;margin-top:5px;font-size:14px;color:rgba(255,255,255,.74)}.mo-request-toast a{display:inline-block;margin-top:12px;color:#fff;font-weight:900;text-decoration:underline;text-underline-offset:4px}

@media(max-width:980px){.mo-live-requests-head,.section-heading-row,.request-producer-cta-inner{align-items:flex-start;flex-direction:column}.mo-live-requests-actions{flex-wrap:wrap}.mo-request-card{width:calc(50% - 8px)}.request-type-option{width:100%}.producer-live-demand{align-items:flex-start;flex-direction:column}.producer-live-demand .btn{width:100%;text-align:center}}
@media(max-width:680px){.mo-live-requests{padding:58px 0 64px}.mo-live-requests-head h2,.public-request-board h2,.producer-request-inbox h2{font-size:40px}.mo-request-card{width:100%;min-height:0}.mo-live-requests-actions{width:100%;align-items:flex-start;flex-direction:column}.mo-live-producer-nudge{align-items:flex-start;flex-direction:column}.request-hero,.requests-board-hero{padding:62px 0}.request-hero h1,.requests-board-hero h1{font-size:52px}.request-form-section{padding:36px 0 60px}.request-wizard{border-radius:18px}.request-wizard .wizard-step{min-height:0}.choice-row span{min-width:86px}.public-request-board,.producer-request-inbox{padding:52px 0 64px}.request-producer-cta{padding:54px 0}.producer-live-demand{padding:25px}.mo-request-card-bottom{align-items:flex-start;flex-direction:column}.mo-request-card-bottom span{text-align:left}}

/* =========================================================
   v1.3.5 — request-form polish + rounded visual system
   Surgical visual fixes requested 2026-08-16.
   ========================================================= */

:root{
  --mo-card-radius:22px;
  --mo-control-radius:16px;
  --mo-request-border:#607274;
}

/* Date fields belong to the same 56px form-control system as every other input. */
input[type="date"]{
  display:block;
  width:100% !important;
  height:56px !important;
  min-height:56px !important;
  margin:0;
  padding:0 16px !important;
  border:1px solid #c9d4cf !important;
  border-radius:12px !important;
  background-color:#fff !important;
  color:#0b141c !important;
  box-shadow:0 1px 0 rgba(11,20,28,.03) !important;
  font-size:16px !important;
  font-weight:500;
  line-height:1.2 !important;
  outline:0 !important;
  color-scheme:light;
  transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;
}

/* Let the dark select-button area meet the outer border cleanly. */
select{
  background-origin:border-box !important;
  background-clip:border-box !important;
  background-position:calc(100% - 18px) center,100% center !important;
  background-size:16px 10px,52px 100% !important;
}

/* Request wizard: only show the action that actually belongs to the current step. */
.wizard-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  padding-top:26px;
  margin-top:18px;
  border-top:1px solid rgba(11,20,28,.10);
}
.wizard-actions [data-request-back]{margin-right:auto;}
.wizard-actions [hidden]{display:none !important;}
.wizard-actions .btn{min-width:132px;}

/* Homepage directory numbers: white, static on hover, entrance/count animation preserved. */
.mo-count-band{
  background:#fff;
  border-top:1px solid rgba(11,20,28,.08);
  border-bottom:1px solid rgba(11,20,28,.12);
}
.mo-count-item:hover{
  background:#fff;
  color:var(--ink);
}

/* Rounded is now the site's default surface language. */
.btn,
.mo-btn,
button,
input[type="submit"],
input[type="button"]{
  border-radius:999px;
}
.panel,
.claim-box,
.category-card,
.profile-card,
.directory-card,
.expression-card,
.expression-public-card,
.route-card,
.mo-request-card,
.mo-wiki-infobox,
.match-modal-card,
.direct-service-panel,
.producer-tool-card,
.producer-qr-panel,
.producer-referral-panel,
.village-progress-card,
.founder-count-card,
.founder-badge,
.producer-live-demand,
.producer-quick-setup,
.producer-benefits-grid article,
.producer-result-list article,
.request-preferred-contact,
.request-language-note,
.request-confirm-box,
.mo-request-empty,
.request-success{
  border-radius:var(--mo-card-radius);
}
.choice-option span,
.check-option span,
.choice-row span,
.service-choice span,
.intent-filter,
.directory-whatsapp,
.profile-digital-tools>a,
.producer-toggle span{
  border-radius:var(--mo-control-radius);
}
.producer-qr-box{border-radius:18px;}

/* Live-request cards: stronger visual edge + clear tactile lift on pointer devices. */
.mo-live-requests .mo-request-card{
  border:3px solid var(--mo-request-border);
  border-radius:var(--mo-card-radius);
  box-shadow:0 10px 24px rgba(11,20,28,.08);
  overflow:hidden;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
@media(hover:hover) and (pointer:fine){
  .mo-live-requests .mo-request-card:hover{
    transform:translateY(-7px);
    box-shadow:0 20px 42px rgba(11,20,28,.18);
  }
}

@media(max-width:680px){
  .wizard-actions{
    flex-wrap:wrap;
    gap:12px;
  }
  .wizard-actions [data-request-back]{margin-right:0;}
  .wizard-actions .btn{flex:1 1 calc(50% - 6px);min-width:0;}
}

/* =========================================================
   v1.3.6 — compact full-width live-request rail
   Restore the four ecosystem counters until request volume is meaningful.
   ========================================================= */

/* Demand belongs immediately below the counters: one concise heading, then cards. */
.mo-live-requests{
  padding:28px 0 30px;
  overflow:hidden;
}
.mo-live-requests-title{
  width:100%;
  padding:0 50px;
  margin:0 0 8px;
}
.mo-live-requests-title h2{
  margin:0;
  font-size:clamp(30px,3vw,46px);
  line-height:1;
  letter-spacing:-.035em;
}

/* Full-bleed horizontal request rail. Cards swipe manually and auto-advance with JS. */
.mo-live-request-rail{
  width:100%;
  max-width:none;
  overflow:hidden;
}
.mo-live-requests .mo-request-grid{
  width:100%;
  display:flex;
  flex-wrap:nowrap;
  gap:18px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:12px 50px 24px;
}
.mo-live-requests .mo-request-grid::-webkit-scrollbar{display:none}
.mo-live-requests .mo-request-card{
  flex:0 0 calc((100vw - 136px) / 3);
  width:auto;
  min-width:340px;
  max-width:520px;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.mo-live-requests .mo-request-empty{
  flex:1 0 calc(100vw - 100px);
  width:auto;
}
.mo-live-requests-footer{
  display:flex;
  align-items:center;
  gap:28px;
  padding:0 50px;
  margin:0;
}
.mo-live-requests .mo-live-producer-nudge{
  margin:18px 50px 0;
  padding:18px 0 0;
}

@media(max-width:980px){
  .mo-live-requests-title{padding-left:28px;padding-right:28px}
  .mo-live-requests .mo-request-grid{padding-left:28px;padding-right:28px}
  .mo-live-requests .mo-request-card{
    flex-basis:calc((100vw - 74px) / 2);
    min-width:320px;
  }
  .mo-live-requests .mo-request-empty{flex-basis:calc(100vw - 56px)}
  .mo-live-requests-footer{padding-left:28px;padding-right:28px}
  .mo-live-requests .mo-live-producer-nudge{margin-left:28px;margin-right:28px}
}

@media(max-width:680px){
  .mo-live-requests{padding:24px 0 28px}
  .mo-live-requests-title{padding-left:20px;padding-right:20px;margin-bottom:6px}
  .mo-live-requests-title h2{font-size:34px}
  .mo-live-requests .mo-request-grid{gap:14px;padding:10px 20px 20px}
  .mo-live-requests .mo-request-card{
    flex-basis:calc(100vw - 40px);
    min-width:0;
    max-width:none;
  }
  .mo-live-requests .mo-request-empty{flex-basis:calc(100vw - 40px)}
  .mo-live-requests-footer{padding:0 20px;gap:18px;flex-wrap:wrap}
  .mo-live-requests .mo-live-producer-nudge{margin:16px 20px 0;padding-top:16px}
}

/* =========================================================
   v1.3.7 — demand-first hero + dark live-request board
   ========================================================= */

/* Buttons: rounded rectangles, never pills. */
.btn,
.mo-btn,
button,
input[type="submit"],
input[type="button"],
.editorial-actions .header-profile-cta,
.editorial-actions .header-account-link{
  border-radius:15px !important;
}

/* Header industry CTA should visually belong to the same rounded system. */
.editorial-actions .header-profile-cta,
.editorial-actions .header-account-link{
  overflow:hidden;
}

/* Hero actions are both normal-size buttons with the same 15px corner radius. */
.mo-home-actions{
  gap:14px;
}
.mo-home-actions .mo-btn{
  min-height:52px;
  padding:0 22px;
  border-radius:15px !important;
}
.mo-btn-ghost-light{
  background:rgba(11,20,28,.32);
  color:#fff;
  border-color:rgba(255,255,255,.58);
}
.mo-btn-ghost-light:hover{
  background:#fff;
  color:var(--ink);
  border-color:#fff;
}

/* Live requests are the dark demand board immediately beneath the counters. */
.mo-live-requests{
  background:var(--ink);
  color:#fff;
  padding:26px 0 34px;
}
.mo-live-requests-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  width:100%;
  padding:0 50px 10px;
  margin:0;
}
.mo-live-requests-title h2{
  flex:0 0 auto;
  margin:0;
  color:#fff;
  font-size:clamp(30px,3vw,46px);
  line-height:1;
  letter-spacing:-.035em;
}
.mo-live-requests .mo-live-producer-nudge{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:16px;
  margin:0;
  padding:0;
  border:0;
}
.mo-live-requests .mo-live-producer-nudge strong{
  max-width:560px;
  color:#fff;
  font-size:15px;
  line-height:1.35;
  text-align:right;
}
.mo-live-requests .mo-live-producer-nudge .mo-btn{
  flex:0 0 auto;
  min-height:44px;
  padding:0 18px;
  border-radius:15px !important;
  font-size:14px;
}
.mo-live-requests .mo-request-grid{
  padding-top:10px;
  padding-bottom:8px;
}
.mo-live-requests .mo-request-card{
  background:#fff;
  color:var(--ink);
}

/* The old small text-link footer is intentionally removed from the homepage. */
.mo-live-requests-footer{display:none !important;}

@media(max-width:980px){
  .mo-live-requests-title{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
    padding-left:28px;
    padding-right:28px;
  }
  .mo-live-requests .mo-live-producer-nudge{
    width:100%;
    justify-content:flex-start;
  }
  .mo-live-requests .mo-live-producer-nudge strong{
    text-align:left;
  }
}

@media(max-width:680px){
  .mo-home-actions{
    width:100%;
    align-items:stretch;
    gap:10px;
  }
  .mo-home-actions .mo-btn{
    width:100%;
  }
  .mo-live-requests{
    padding:22px 0 26px;
  }
  .mo-live-requests-title{
    padding-left:20px;
    padding-right:20px;
    padding-bottom:8px;
  }
  .mo-live-requests-title h2{
    font-size:34px;
  }
  .mo-live-requests .mo-live-producer-nudge{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }
  .mo-live-requests .mo-live-producer-nudge .mo-btn{
    width:auto;
  }
}


/* =========================================================
   v1.3.8 — live-request title strip + compact directory invite
   ========================================================= */

/* Only the live-request heading/recruitment strip is dark.
   The moving request cards sit on the official mint surface. */
.mo-live-requests{
  background:var(--mint);
  color:var(--ink);
  padding:0 0 34px;
}
.mo-live-requests-title{
  background:var(--ink);
  color:#fff;
  padding:22px 50px;
  margin:0 0 12px;
}
.mo-live-requests-title h2{
  color:#fff;
}
.mo-live-requests .mo-live-producer-nudge strong{
  color:#fff;
}
.mo-live-requests .mo-request-grid{
  padding-top:12px;
  padding-bottom:10px;
}

/* Replace the oversized editorial intro + directory block with one concise,
   photographic invitation to enter the directory. */
.mo-directory-invite{
  background:#fff;
  padding:72px 0 88px;
}
.mo-directory-invite-inner{
  display:grid;
  grid-template-columns:42% calc(58% - 38px);
  gap:38px;
  align-items:stretch;
}
.mo-directory-invite-photo{
  position:relative;
  min-height:390px;
  border-radius:22px;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(11,20,28,.05),rgba(11,20,28,.38)),
    url('/uploads/mezcal-palenques-1.jpg') center center / cover no-repeat;
  box-shadow:0 18px 38px rgba(11,20,28,.12);
}
.mo-directory-invite-photo span{
  position:absolute;
  left:26px;
  bottom:24px;
  color:#fff;
  font-family:Georgia,serif;
  font-size:34px;
  line-height:.86;
  letter-spacing:.04em;
  text-shadow:0 2px 12px rgba(0,0,0,.28);
}
.mo-directory-invite-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding:26px 18px 26px 20px;
}
.mo-directory-invite-copy h2{
  margin:14px 0 18px;
  max-width:720px;
  color:var(--ink);
  font-size:clamp(42px,4.2vw,64px);
  line-height:.98;
  font-weight:500;
  letter-spacing:-.035em;
}
.mo-directory-invite-copy p{
  max-width:650px;
  margin:0 0 26px;
  color:var(--slate);
  font-size:16px;
  line-height:1.7;
}
.mo-directory-invite-copy .mo-btn{
  min-height:50px;
  padding:0 22px;
  border-radius:15px !important;
}

@media(max-width:980px){
  .mo-live-requests-title{
    padding:20px 28px;
    margin-bottom:10px;
  }
  .mo-directory-invite{
    padding:58px 0 72px;
  }
  .mo-directory-invite-inner{
    grid-template-columns:1fr;
    gap:0;
  }
  .mo-directory-invite-photo{
    min-height:430px;
  }
  .mo-directory-invite-copy{
    padding:36px 0 0;
  }
}

@media(max-width:680px){
  .mo-live-requests{
    padding-bottom:28px;
  }
  .mo-live-requests-title{
    padding:18px 20px;
    margin-bottom:8px;
  }
  .mo-directory-invite{
    padding:46px 0 58px;
  }
  .mo-directory-invite-photo{
    min-height:300px;
    border-radius:18px;
  }
  .mo-directory-invite-photo span{
    left:20px;
    bottom:18px;
    font-size:29px;
  }
  .mo-directory-invite-copy{
    padding-top:28px;
  }
  .mo-directory-invite-copy h2{
    font-size:42px;
  }
}

/* =========================================================
   v1.3.9 — Footer readability
   Larger footer typography while preserving hierarchy.
   ========================================================= */
.editorial-footer{
  font-size:15px;
}
.editorial-footer-brand p{
  font-size:15px;
  line-height:1.7;
}
.footer-column strong{
  font-size:14px;
}
.footer-column a{
  font-size:15px;
  line-height:1.45;
}
.editorial-footer-mark span,
.editorial-footer-mark small{
  font-size:14px;
}
.editorial-footer-mark strong{
  font-size:22px;
}
.editorial-footer-bottom{
  font-size:14px;
  line-height:1.55;
}


/* =========================================================
   v1.3.10 — consolidated live-requests + directory invitation + footer pass
   Dark strip only; mint request rail; old intro removed; photo directory CTA.
   ========================================================= */

/* =========================================================
   v1.4.0 — Live Palenque Network + installable producer app
   ========================================================= */
.nav-live-link{display:inline-flex;align-items:center;gap:7px}.nav-live-link>i{width:8px;height:8px;border-radius:50%;background:#2f7d57;box-shadow:0 0 0 5px rgba(47,125,87,.12)}
.header-update-cta{background:var(--primary)!important;color:#fff!important}

/* Homepage: live discovery becomes the product. */
.live-home-hero .mo-home-hero-media{background-image:linear-gradient(90deg,rgba(8,16,24,.88) 0%,rgba(8,16,24,.58) 48%,rgba(8,16,24,.22) 100%),url('/uploads/Maguey-fields.webp')}
.home-live-now{background:var(--mint);color:var(--ink)}
.home-live-titlebar{width:100%;background:var(--ink);color:#fff;padding:28px 50px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.home-live-titlebar h2{margin:5px 0 0;color:#fff;font-family:Georgia,serif;font-size:clamp(34px,4vw,58px);font-weight:500;line-height:1.02;letter-spacing:-.035em}
.home-live-mint{padding:36px 50px 54px;background:var(--mint)}
.home-live-intro{max-width:1180px;margin:0 auto 28px;display:flex;align-items:flex-end;justify-content:space-between;gap:36px}
.home-live-intro>p{max-width:760px;margin:0;color:var(--slate);font-size:18px;line-height:1.7}
.home-live-stats{display:flex;gap:22px}.home-live-stats span{min-width:100px;text-align:center;color:var(--slate);font-size:14px;text-transform:uppercase;letter-spacing:.08em}.home-live-stats strong{display:block;color:var(--ink);font-family:Georgia,serif;font-size:34px;line-height:1}
.home-live-grid{max-width:1500px;margin:0 auto}.home-live-empty{max-width:850px;margin:0 auto;padding:54px 30px;text-align:center;background:#fff;border:3px solid var(--slate);border-radius:22px;box-shadow:0 16px 34px rgba(11,20,28,.10)}.home-live-empty i{font-size:36px;color:var(--primary)}.home-live-empty p{color:var(--slate);font-size:18px;margin:18px auto 24px;max-width:620px}

.live-palenque-grid{display:flex;flex-wrap:wrap;gap:24px}.live-palenque-card{width:calc(33.333% - 16px);min-width:0;background:#fff;border:3px solid var(--slate);border-radius:22px;overflow:hidden;box-shadow:0 12px 28px rgba(11,20,28,.10);transition:transform .3s ease,box-shadow .3s ease}.live-palenque-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(11,20,28,.16)}
.live-palenque-image{display:block;height:210px;background:linear-gradient(145deg,var(--primary),var(--ink));overflow:hidden;text-decoration:none}.live-palenque-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.live-palenque-card:hover .live-palenque-image img{transform:scale(1.025)}.live-palenque-image.is-placeholder{display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.8);font-size:52px}
.live-palenque-body{padding:22px}.live-palenque-fresh{display:flex;align-items:center;gap:8px;color:#2f7d57;font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.live-palenque-fresh i{width:8px;height:8px;border-radius:50%;background:#2f7d57;box-shadow:0 0 0 4px rgba(47,125,87,.11)}
.live-palenque-body h3{margin:11px 0 5px;font-family:Georgia,serif;font-size:27px;line-height:1.05;color:var(--ink)}.live-palenque-body h3 a{text-decoration:none}.live-palenque-place{margin:0 0 14px;color:var(--slate);font-size:14px}.live-palenque-place i{margin-right:5px}.live-palenque-tags{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.live-palenque-tags span{background:var(--mint);border:1px solid rgba(36,68,84,.18);border-radius:12px;padding:6px 9px;color:var(--primary);font-size:14px;font-weight:750}
.live-palenque-message{margin:16px 0;background:#f8fbf9;border-left:4px solid var(--primary);border-radius:0 12px 12px 0;padding:12px 14px}.live-palenque-message strong,.live-palenque-agaves small{display:block;color:var(--slate);font-size:14px;text-transform:uppercase;letter-spacing:.08em}.live-palenque-message p{margin:5px 0 0;color:var(--ink);font-size:14px;line-height:1.45}.live-palenque-agaves{margin:13px 0}.live-palenque-agaves strong{display:block;margin-top:3px;color:var(--ink);font-size:14px}
.live-palenque-actions{display:flex;align-items:center;gap:10px;margin-top:18px}.live-palenque-actions .mo-btn{min-height:44px;padding:0 15px;font-size:14px}.live-wa{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-size:14px;font-weight:800;text-decoration:none}

.home-live-how{background:#fff;color:var(--ink);padding:92px 0}.home-live-how-head{max-width:850px;margin-bottom:42px}.home-live-how-head h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,68px);line-height:.98;font-weight:500;letter-spacing:-.04em;margin:12px 0}.home-live-how-grid{display:flex;gap:18px}.home-live-how-grid article{position:relative;width:25%;padding:30px 24px;background:var(--mint);border-radius:22px;min-height:270px}.home-live-how-grid article>i{font-size:28px;color:var(--primary)}.home-live-how-grid article>span{position:absolute;right:20px;top:20px;font-family:Georgia,serif;font-size:28px;color:rgba(36,68,84,.25)}.home-live-how-grid h3{font-size:21px;margin:38px 0 10px;color:var(--ink)}.home-live-how-grid p{margin:0;color:var(--slate);font-size:14px;line-height:1.6}

.home-producer-app{position:relative;background:var(--ink);color:#fff;padding:94px 0 72px;overflow:hidden}.home-producer-app-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,20,28,.96),rgba(11,20,28,.86) 55%,rgba(11,20,28,.66)),url('/uploads/mezcal-palenques-1.jpg') center/cover no-repeat;opacity:.95}.home-producer-app-inner,.home-producer-steps{position:relative;z-index:2}.home-producer-app-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.home-producer-app-copy{width:56%}.home-producer-app-copy h2{font-family:Georgia,serif;font-size:clamp(44px,5.5vw,76px);line-height:.96;font-weight:500;letter-spacing:-.04em;margin:14px 0 22px}.home-producer-app-copy p{max-width:690px;font-size:17px;line-height:1.7;color:rgba(255,255,255,.78)}.home-producer-app-actions{display:flex;gap:12px;margin-top:28px}
.home-phone-demo{width:350px;flex:0 0 350px;background:var(--mint);color:var(--ink);border:10px solid #17232b;border-radius:34px;padding:20px 18px 22px;box-shadow:0 28px 60px rgba(0,0,0,.34)}.home-phone-top{display:flex;justify-content:space-between;align-items:center;color:var(--slate);font-size:14px;font-weight:800;letter-spacing:.08em}.home-phone-top i{width:8px;height:8px;background:#2f7d57;border-radius:50%}.home-phone-demo>strong{display:block;font-family:Georgia,serif;font-size:26px;line-height:1.05;margin:28px 0 18px}.home-phone-question{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border-radius:15px;padding:14px;margin:9px 0}.home-phone-question span{font-size:14px;font-weight:700}.home-phone-question b,.home-phone-question em{font-style:normal;background:var(--primary);color:#fff;border-radius:10px;padding:7px 9px;font-size:14px}.home-phone-demo button{width:100%;border:0;border-radius:15px;background:var(--ink);color:#fff;padding:14px;margin-top:14px;font-weight:850;letter-spacing:.05em}
.home-producer-steps{display:flex;gap:18px;margin-top:68px}.home-producer-steps article{width:33.333%;border-top:1px solid rgba(255,255,255,.24);padding:20px 10px 0}.home-producer-steps span{font-family:Georgia,serif;font-size:28px;color:var(--mint)}.home-producer-steps h3{font-size:18px;margin:12px 0 8px}.home-producer-steps p{font-size:14px;color:rgba(255,255,255,.7);margin:0;line-height:1.55}

.home-request-fallback{background:var(--mint);color:var(--ink)}.home-request-title{background:var(--primary);color:#fff;padding:34px 50px;display:flex;align-items:center;justify-content:space-between;gap:30px}.home-request-title h2{font-family:Georgia,serif;font-size:44px;font-weight:500;margin:5px 0;color:#fff}.home-request-title p{margin:0;color:rgba(255,255,255,.75);max-width:740px}.home-request-mint{padding:18px 0 32px}

/* Public live finder */
.live-finder-page{background:#fff;color:var(--ink)}.live-finder-hero{position:relative;min-height:500px;display:flex;align-items:center;color:#fff;overflow:hidden}.live-finder-hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,16,24,.90),rgba(8,16,24,.46)),url('/uploads/bg1-top-shot-magueyes.webp') center/cover no-repeat}.live-finder-hero-inner{position:relative;z-index:2;padding-top:70px;padding-bottom:70px}.live-finder-hero h1{max-width:900px;font-family:Georgia,serif;font-size:clamp(50px,7vw,90px);line-height:.94;font-weight:500;letter-spacing:-.045em;margin:15px 0 24px}.live-finder-hero p{max-width:780px;color:rgba(255,255,255,.8);font-size:18px;line-height:1.7}.live-finder-counts{display:flex;gap:28px;margin-top:34px;flex-wrap:wrap}.live-finder-counts span{display:flex;align-items:baseline;gap:7px;font-size:14px;text-transform:uppercase;letter-spacing:.07em}.live-finder-counts strong{font-family:Georgia,serif;font-size:34px;color:var(--mint)}
.live-finder-controls{background:var(--mint);padding:44px 0}.live-filter-form{background:#fff;border-radius:22px;padding:30px;border:1px solid rgba(11,20,28,.1);box-shadow:0 14px 34px rgba(11,20,28,.08)}.live-filter-form h2{font-family:Georgia,serif;font-size:34px;font-weight:500;margin:0 0 22px}.live-filter-toggles{display:flex;flex-wrap:wrap;gap:10px}.live-filter-toggles label{cursor:pointer}.live-filter-toggles input{position:absolute;opacity:0;pointer-events:none}.live-filter-toggles span{display:flex;align-items:center;gap:8px;padding:12px 15px;border:2px solid rgba(36,68,84,.18);border-radius:15px;color:var(--primary);font-size:14px;font-weight:800}.live-filter-toggles input:checked+span{background:var(--primary);border-color:var(--primary);color:#fff}.live-filter-fields{display:flex;gap:12px;margin-top:20px}.live-filter-fields label{width:33.333%}.live-filter-fields label>span{display:block;font-size:14px;font-weight:800;color:var(--slate);margin:0 0 6px}.live-filter-fields input,.live-filter-fields select{width:100%;height:54px;border:2px solid rgba(36,68,84,.18);border-radius:15px;background:#fff;padding:0 14px;color:var(--ink);font:inherit}.live-filter-submit{margin-top:20px}
.live-finder-results{padding-top:70px;padding-bottom:90px}.live-results-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.live-results-head h2{font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);font-weight:500;margin:8px 0 0}.live-results-head>strong{font-family:Georgia,serif;font-size:54px;color:var(--primary)}.live-empty-state{text-align:center;padding:70px 25px;background:var(--mint);border-radius:22px}.live-empty-state>i{font-size:42px;color:var(--primary)}.live-empty-state h3{max-width:700px;margin:18px auto 26px;font-family:Georgia,serif;font-size:30px;font-weight:500}.live-empty-state>div{display:flex;justify-content:center;gap:10px}.live-producer-callout{background:var(--ink);color:#fff;padding:45px 0}.live-producer-callout>.container{display:flex;align-items:center;justify-content:space-between;gap:30px}.live-producer-callout h2{font-family:Georgia,serif;font-size:36px;font-weight:500;margin:0 0 6px}.live-producer-callout p{margin:0;color:rgba(255,255,255,.72)}

/* Producer installed app — intentionally simpler than the public website. */
.producer-app-shell{max-width:760px;margin:0 auto;padding:30px 18px 110px;color:var(--ink);background:var(--mint);min-height:100vh}.producer-app-shell+ .editorial-footer{display:none}.producer-app-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.producer-app-date{font-size:14px;font-weight:850;color:var(--slate);letter-spacing:.08em}.producer-app-top h1{font-family:Georgia,serif;font-size:38px;line-height:1;margin:7px 0}.producer-app-top p{margin:0;color:var(--slate);font-size:14px}.producer-app-switch span{display:block;font-size:14px;color:var(--slate);font-weight:800}.producer-app-switch select{height:44px;border:2px solid rgba(36,68,84,.18);border-radius:14px;background:#fff;padding:0 10px}
.producer-app-install-card{background:var(--ink);color:#fff;border-radius:22px;padding:18px;margin-bottom:16px}.producer-app-install-card>div:first-child{display:flex;gap:13px;align-items:center}.producer-app-install-card>div:first-child>i{font-size:26px;color:var(--mint)}.producer-app-install-card strong{display:block}.producer-app-install-card span{display:block;color:rgba(255,255,255,.68);font-size:14px;margin-top:3px}.producer-app-install-actions{display:flex;gap:8px;margin-top:15px}.producer-app-install-actions .mo-btn{min-height:44px;padding:0 14px;font-size:14px}.producer-app-install-card small{display:block;color:rgba(255,255,255,.7);margin-top:10px}.producer-app-live-confirm{display:flex;align-items:center;gap:8px;background:#e0f7e8;border:2px solid #2f7d57;border-radius:16px;padding:13px 15px;margin-bottom:16px;font-size:14px}.producer-app-live-confirm>i{width:9px;height:9px;border-radius:50%;background:#2f7d57}.producer-app-live-confirm span{margin-left:auto;color:#2f7d57}
.producer-app-fast-action{background:#fff;border-radius:22px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;border:1px solid rgba(11,20,28,.08)}.producer-app-fast-action strong,.producer-app-fast-action span{display:block}.producer-app-fast-action span{font-size:14px;color:var(--slate)}.producer-app-big-choice{border:0;border-radius:15px;padding:14px 18px;background:#2f7d57;color:#fff;font-weight:900;letter-spacing:.04em;white-space:nowrap}.producer-app-big-choice i{margin-right:7px}
.producer-daily-form{display:flex;flex-direction:column;gap:16px}.producer-question-card{position:relative;background:#fff;border-radius:22px;padding:26px 20px 22px;border:1px solid rgba(11,20,28,.08);box-shadow:0 8px 20px rgba(11,20,28,.05)}.producer-question-number{position:absolute;right:18px;top:14px;font-family:Georgia,serif;font-size:30px;color:rgba(36,68,84,.18)}.producer-question-card h2{font-size:23px;line-height:1.15;margin:0 45px 15px 0;color:var(--ink)}.producer-question-card>p{font-size:14px;color:var(--slate);margin:-7px 40px 17px 0}.producer-question-card h3{font-size:14px;margin:20px 0 9px;color:var(--slate)}
.producer-yesno{display:flex;gap:10px}.producer-yesno label{width:50%;cursor:pointer}.producer-yesno input,.producer-tap-grid input,.producer-activity-grid input,.producer-agave-grid input,.producer-message-expiry input{position:absolute;opacity:0;pointer-events:none}.producer-yesno span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:58px;border-radius:15px;border:2px solid rgba(36,68,84,.16);font-weight:900;color:var(--primary)}.producer-yesno input:checked+span{background:var(--primary);color:#fff;border-color:var(--primary)}
.producer-conditional[hidden]{display:none!important}.producer-tap-grid{display:flex;flex-wrap:wrap;gap:8px}.producer-tap-grid label{cursor:pointer}.producer-tap-grid.two label{width:calc(50% - 4px)}.producer-tap-grid.three label{width:calc(33.333% - 6px)}.producer-tap-grid span,.producer-agave-grid span{display:flex;align-items:center;justify-content:center;min-height:48px;border:2px solid rgba(36,68,84,.14);border-radius:14px;padding:8px;text-align:center;font-size:14px;font-weight:750}.producer-tap-grid input:checked+span,.producer-agave-grid input:checked+span{background:var(--mint);border-color:var(--primary);color:var(--primary)}
.producer-activity-grid{display:flex;flex-wrap:wrap;gap:8px}.producer-activity-grid label{width:calc(50% - 4px);cursor:pointer}.producer-activity-grid span{min-height:72px;display:flex;align-items:center;gap:11px;border:2px solid rgba(36,68,84,.14);border-radius:15px;padding:13px}.producer-activity-grid span i{font-size:21px;color:var(--primary);width:25px;text-align:center}.producer-activity-grid span b{font-size:14px}.producer-activity-grid input:checked+span{background:var(--primary);border-color:var(--primary);color:#fff}.producer-activity-grid input:checked+span i{color:var(--mint)}
.producer-agave-grid{display:flex;flex-wrap:wrap;gap:7px}.producer-agave-grid label{cursor:pointer}.producer-agave-grid span{min-height:42px;padding:8px 12px}.producer-special-message textarea{width:100%;border:2px solid rgba(36,68,84,.16);border-radius:15px;padding:13px;font:inherit;color:var(--ink);resize:vertical}.producer-message-expiry{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:10px}.producer-message-expiry>span{font-size:14px;color:var(--slate);font-weight:800}.producer-message-expiry label{cursor:pointer}.producer-message-expiry label span{display:block;border:1px solid rgba(36,68,84,.18);border-radius:12px;padding:7px 9px;font-size:14px}.producer-message-expiry input:checked+span{background:var(--primary);color:#fff}
.producer-app-save{width:100%;min-height:66px;border:0;border-radius:16px;background:var(--ink);color:#fff;font-size:14px;font-weight:900;letter-spacing:.07em;box-shadow:0 12px 26px rgba(11,20,28,.16)}.producer-app-save i{margin-right:9px;color:var(--mint)}.producer-app-close-card{margin-top:18px;background:#fff;border:2px solid rgba(138,35,66,.18);border-radius:20px;padding:17px;display:flex;justify-content:space-between;align-items:center;gap:14px}.producer-app-close-card strong,.producer-app-close-card span{display:block}.producer-app-close-card span{color:var(--slate);font-size:14px;max-width:430px}.producer-app-close-card button{border:0;border-radius:14px;padding:12px;background:#8a2342;color:#fff;font-size:14px;font-weight:900}.producer-app-bottom-nav{position:fixed;z-index:70;left:50%;bottom:12px;transform:translateX(-50%);width:min(720px,calc(100% - 24px));display:flex;gap:4px;background:var(--ink);border-radius:18px;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.26)}.producer-app-bottom-nav a{width:33.333%;display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;color:#fff;border-radius:13px;padding:11px 5px;font-size:14px;font-weight:800}.producer-app-bottom-nav a:hover{background:var(--primary)}
.producer-app-empty{display:flex;align-items:center;justify-content:center}.producer-app-welcome{text-align:center;background:#fff;border-radius:24px;padding:40px 24px;max-width:600px}.producer-app-mark{font-size:46px;color:var(--primary)}.producer-app-welcome h1{font-family:Georgia,serif;font-size:42px;line-height:1;margin:18px 0}.producer-app-welcome p{color:var(--slate);line-height:1.65}

/* Today's information on public producer profiles. */
.profile-live-today{background:var(--mint);border:3px solid var(--slate);border-radius:22px;padding:22px;margin:22px 0 28px;color:var(--ink)}.profile-live-today.is-closed{background:#f6f6f4}.profile-live-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.profile-live-head>div{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.07em}.profile-live-dot{width:9px;height:9px;border-radius:50%;background:#2f7d57;box-shadow:0 0 0 5px rgba(47,125,87,.12)}.profile-live-head small{color:#2f7d57;font-weight:750}.profile-live-status-grid{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.profile-live-status-grid>div{width:calc(50% - 5px);display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:12px;color:var(--slate)}.profile-live-status-grid>div.is-on{color:var(--ink);border:1px solid rgba(47,125,87,.2)}.profile-live-status-grid i{width:23px;text-align:center;color:var(--primary)}.profile-live-block{margin-top:14px}.profile-live-block>small,.profile-live-message small{display:block;color:var(--slate);font-size:14px;text-transform:uppercase;letter-spacing:.08em}.profile-live-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px}.profile-live-tags span{display:inline-flex;align-items:center;gap:6px;background:#fff;border-radius:12px;padding:8px 10px;font-size:14px;font-weight:750}.profile-live-message{margin:16px 0;background:#fff;border:0;border-left:4px solid var(--primary);border-radius:0 14px 14px 0;padding:13px}.profile-live-message p{margin:5px 0 0}.directory-live-badge{display:inline-flex;align-items:center;gap:7px;margin:0 0 8px;color:#2f7d57;font-size:14px;font-weight:900;letter-spacing:.06em}.directory-live-badge i{width:7px;height:7px;border-radius:50%;background:#2f7d57}.directory-live-badge.is-closed{color:var(--slate)}.directory-live-badge.is-closed i{background:var(--slate)}

@media(max-width:980px){
  .home-live-titlebar,.home-request-title{padding-left:28px;padding-right:28px}.home-live-mint{padding-left:28px;padding-right:28px}.live-palenque-card{width:calc(50% - 12px)}.home-live-intro{align-items:flex-start;flex-direction:column}.home-live-how-grid{flex-wrap:wrap}.home-live-how-grid article{width:calc(50% - 9px)}.home-producer-app-inner{align-items:flex-start}.home-producer-app-copy{width:calc(100% - 330px)}.home-phone-demo{width:310px;flex-basis:310px}.live-filter-fields{flex-wrap:wrap}.live-filter-fields label{width:calc(50% - 6px)}
}
@media(max-width:700px){
  .home-live-titlebar,.home-request-title{padding:22px 20px;align-items:flex-start;flex-direction:column}.home-live-mint{padding:26px 16px 36px}.live-palenque-grid{gap:16px}.live-palenque-card{width:100%}.live-palenque-image{height:190px}.home-live-how{padding:62px 0}.home-live-how-grid{display:block}.home-live-how-grid article{width:100%;min-height:0;margin:10px 0;padding:22px}.home-live-how-grid h3{margin-top:26px}.home-producer-app{padding:64px 0}.home-producer-app-inner{display:block}.home-producer-app-copy{width:100%}.home-producer-app-actions{flex-direction:column;align-items:stretch}.home-phone-demo{width:min(350px,100%);margin:42px auto 0}.home-producer-steps{display:block;margin-top:48px}.home-producer-steps article{width:100%;margin-top:20px}.live-finder-hero{min-height:460px}.live-finder-hero-inner{padding-top:55px;padding-bottom:55px}.live-finder-hero h1{font-size:54px}.live-filter-form{padding:22px 16px}.live-filter-fields{display:block}.live-filter-fields label{display:block;width:100%;margin-top:12px}.live-filter-toggles span{padding:10px 12px}.live-results-head{align-items:flex-start}.live-results-head>strong{font-size:42px}.live-producer-callout>.container{align-items:flex-start;flex-direction:column}.producer-app-shell{padding:20px 12px 105px}.producer-app-top{display:block}.producer-app-switch{display:block;margin-top:14px}.producer-app-fast-action{align-items:stretch;flex-direction:column}.producer-app-big-choice{width:100%}.producer-app-install-actions{flex-direction:column}.producer-yesno span{min-height:54px}.producer-tap-grid.two label,.producer-tap-grid.three label{width:100%}.producer-activity-grid label{width:100%}.producer-app-close-card{align-items:stretch;flex-direction:column}.producer-app-close-card button{width:100%}.producer-app-bottom-nav{bottom:8px}.producer-app-bottom-nav a{flex-direction:column;gap:3px}.profile-live-status-grid>div{width:100%}
}

/* v1.4.0 — producer daily one-question-at-a-time flow */
.producer-daily-progress{position:sticky;top:74px;z-index:8;background:var(--mint);padding:8px 0 14px}.producer-daily-progress>span{display:block;margin-bottom:6px;color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.producer-daily-progress>i{display:block;height:5px;background:rgba(36,68,84,.12);border-radius:8px;overflow:hidden}.producer-daily-progress>i>b{display:block;height:100%;width:0;background:var(--primary);transition:width .25s ease}.producer-question-card[hidden]{display:none!important}.producer-daily-nav{display:flex;gap:9px;align-items:stretch}.producer-daily-nav button[hidden]{display:none!important}.producer-daily-back,.producer-daily-next{min-height:62px;border:0;border-radius:16px;font-size:14px;font-weight:900;letter-spacing:.05em}.producer-daily-back{width:34%;background:#fff;color:var(--primary);border:2px solid rgba(36,68,84,.16)}.producer-daily-next{flex:1;background:var(--primary);color:#fff}.producer-daily-nav .producer-app-save{flex:1}.producer-question-card h2.needs-answer{animation:moNeedAnswer .25s ease 0s 3 alternate;color:#8a2342}@keyframes moNeedAnswer{from{transform:translateX(0)}to{transform:translateX(5px)}}
.producer-tools-live-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;background:var(--mint);color:var(--ink);border-radius:22px;padding:22px 24px;margin:0 0 24px}.producer-tools-live-cta h2{margin:4px 0 6px}.producer-tools-live-cta p{margin:0;color:var(--slate)}@media(max-width:700px){.producer-tools-live-cta{align-items:stretch;flex-direction:column}.producer-tools-live-cta .btn{width:100%;text-align:center}}

.live-grid-zero{width:100%;padding:34px 22px;border:2px dashed rgba(36,68,84,.24);border-radius:18px;text-align:center;color:var(--slate);background:rgba(255,255,255,.55);font-weight:750}

/* =========================================================
   v1.4.1 — homepage alternating section rhythm + image deduplication
   - "Find the experience you want" becomes a dark photographic section
   - top-down maguey image used here with a dark wash
   - tasting photo remains in the Directory invitation only
   - producer-app background switched to a different existing image
   ========================================================= */
.home-live-how{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(110deg,
      rgba(8,16,24,.94) 0%,
      rgba(11,20,28,.88) 38%,
      rgba(36,68,84,.76) 68%,
      rgba(8,16,24,.92) 100%),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat;
  color:#fff;
}
.home-live-how::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 78% 28%,rgba(96,114,116,.16) 0%,rgba(96,114,116,0) 40%),
    linear-gradient(180deg,rgba(255,255,255,.02) 0%,rgba(8,16,24,.16) 100%);
}
.home-live-how .container{
  position:relative;
  z-index:1;
}
.home-live-how-head .mo-kicker{
  color:var(--mint);
}
.home-live-how-head h2{
  color:#fff;
  text-shadow:0 3px 20px rgba(0,0,0,.30);
}
.home-live-how-grid article{
  background:var(--mint);
  box-shadow:0 16px 34px rgba(0,0,0,.20);
}
.home-live-how-grid article>span{
  color:rgba(36,68,84,.28);
}

/* Keep the candid tasting image in the Directory invitation only.
   Use a different existing asset behind the producer-app section. */
.home-producer-app-photo{
  background:
    linear-gradient(90deg,
      rgba(11,20,28,.97) 0%,
      rgba(11,20,28,.91) 45%,
      rgba(11,20,28,.76) 72%,
      rgba(11,20,28,.66) 100%),
    url('/uploads/types-mezcal.webp') center center / cover no-repeat;
}

/* =========================================================
   v1.4.2 — prominent producer-app install CTA on homepage
   ========================================================= */
.home-pwa-install-btn{
  cursor:pointer;
  font:inherit;
}
.home-pwa-install-btn i{
  font-size:15px;
}
.home-pwa-install-status{
  display:block;
  max-width:680px;
  min-height:0;
  margin-top:12px;
  color:rgba(255,255,255,.76);
  font-size:14px;
  line-height:1.5;
}
.home-pwa-install-status:empty{
  display:none;
}
@media(max-width:700px){
  .home-pwa-install-btn{
    width:100%;
  }
}

/* =========================================================
   v1.4.3 — producer app is an app, not the industry dashboard
   + simple in-app claim/create onboarding
   ========================================================= */
.producer-native-header{position:sticky;top:0;z-index:90;height:66px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 max(18px,calc((100vw - 760px)/2 + 18px));background:#fff;border-bottom:1px solid rgba(11,20,28,.09);box-shadow:0 6px 18px rgba(11,20,28,.05)}
.producer-native-brand{display:flex;align-items:baseline;gap:5px;text-decoration:none;color:var(--ink);font-size:14px;letter-spacing:.04em}.producer-native-brand span{font-weight:400}.producer-native-brand b{font-weight:900}.producer-native-account{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:var(--primary);font-size:14px;font-weight:850}.producer-native-account i{font-size:14px}
.producer-app-onboarding{padding-top:34px}.producer-app-setup-card{margin:0 auto;max-width:650px;text-align:left}.producer-app-setup-card .producer-app-mark{text-align:center}.producer-app-setup-card h1{font-size:clamp(36px,7vw,54px)}.producer-app-setup-card>p{font-size:15px}.producer-app-error{margin:18px 0;background:#fff1f3;border:2px solid rgba(138,35,66,.25);border-radius:16px;padding:13px 15px;color:#8a2342;font-size:14px;font-weight:750}
.producer-app-search-form{margin-top:26px}.producer-app-search-form label,.producer-app-create-form>label{display:block;color:var(--slate);font-size:14px;font-weight:850;letter-spacing:.05em}.producer-app-search-form input,.producer-app-create-form input{width:100%;height:58px;margin-top:7px;border:2px solid rgba(36,68,84,.18);border-radius:15px;background:#fff;padding:0 16px;color:var(--ink);font:inherit;font-size:16px}.producer-app-search-form button,.producer-app-create-form>button,.producer-app-not-found>a{width:100%;min-height:58px;margin-top:12px;border:0;border-radius:15px;background:var(--ink);color:#fff;font-size:14px;font-weight:900;letter-spacing:.06em;text-decoration:none;display:flex;align-items:center;justify-content:center}
.producer-app-match-list{max-width:650px;margin:18px auto 0}.producer-app-match-list>h2{font-family:Georgia,serif;font-size:27px;font-weight:500;margin:0 0 12px}.producer-app-match-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:2px solid rgba(36,68,84,.15);border-radius:18px;padding:16px;margin:9px 0}.producer-app-match-list article div{min-width:0}.producer-app-match-list small,.producer-app-match-list strong,.producer-app-match-list span{display:block}.producer-app-match-list small{color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.producer-app-match-list strong{margin-top:4px;color:var(--ink);font-size:17px}.producer-app-match-list span{margin-top:3px;color:var(--slate);font-size:14px}.producer-app-match-list article>a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border-radius:13px;background:var(--primary);color:#fff;text-decoration:none;font-size:14px;font-weight:900}.producer-app-secondary-link{display:block;margin:16px 4px 0;color:var(--primary);font-size:14px;font-weight:850;text-decoration:none}
.producer-app-not-found,.producer-app-create-card{max-width:650px;margin:18px auto 0;background:#fff;border-radius:22px;padding:24px}.producer-app-not-found strong{display:block;font-family:Georgia,serif;font-size:30px}.producer-app-not-found p{color:var(--slate);margin:8px 0}.producer-app-create-card h2{font-family:Georgia,serif;font-size:34px;line-height:1.05;font-weight:500;margin:8px 0 20px}.producer-app-create-form{display:grid;gap:14px}.producer-app-type-choice{display:flex;gap:9px}.producer-app-type-choice label{width:50%;cursor:pointer}.producer-app-type-choice input{position:absolute;opacity:0;pointer-events:none}.producer-app-type-choice span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;border:2px solid rgba(36,68,84,.16);border-radius:15px;color:var(--primary);font-size:14px;font-weight:900}.producer-app-type-choice input:checked+span{background:var(--primary);border-color:var(--primary);color:#fff}.inline-matches{margin:0}.producer-app-onboarding-nav{max-width:650px;margin:24px auto 0;display:flex;justify-content:center;gap:22px}.producer-app-onboarding-nav a{color:var(--slate);font-size:14px;font-weight:800;text-decoration:none}
.producer-app-bottom-nav-four a{width:25%}.producer-app-bottom-nav a.is-active{background:var(--primary)}

@media(max-width:700px){
  .producer-native-header{padding:0 14px}.producer-native-account span{display:none}.producer-app-setup-card,.producer-app-create-card,.producer-app-not-found{padding:24px 18px}.producer-app-match-list article{align-items:flex-start;flex-direction:column}.producer-app-match-list article>a{width:100%}.producer-app-type-choice{flex-direction:column}.producer-app-type-choice label{width:100%}.producer-app-bottom-nav-four a{width:25%}.producer-app-bottom-nav-four a span{font-size:14px}
}

/* Producer app auto-update + database questionnaire admin v1.4.4 */
.producer-custom-question textarea{width:100%;min-height:132px;border:1px solid #cbd5d8;border-radius:14px;padding:15px 16px;font:inherit;background:#fff;color:#0b141c;resize:vertical}
.app-admin-overview .grid{align-items:start}
.app-admin-question-list{display:grid;gap:14px;margin-top:14px}
.app-admin-question{border-radius:18px}
.app-admin-question summary{cursor:pointer;display:flex;gap:16px;align-items:center;justify-content:space-between;list-style:none}
.app-admin-question summary::-webkit-details-marker{display:none}
.app-admin-question summary span{font-size:14px;color:#637178;text-align:right}
.app-admin-question[open] summary{padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid rgba(11,20,28,.1)}
.app-question-form{display:grid;gap:14px}
.app-question-form label{display:grid;gap:7px;font-weight:700}
.app-question-form input,.app-question-form select,.app-question-form textarea{width:100%;border:1px solid #c8d2d5;border-radius:12px;padding:11px 12px;background:#fff;color:#0b141c;font:inherit}
.app-question-two,.app-question-three{display:grid;gap:12px}
.app-question-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.app-question-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.app-question-flags{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.app-question-flags label{display:flex;grid-template-columns:none;gap:8px;align-items:center;font-weight:700}
.app-question-flags input{width:auto}
.app-admin-add{margin-top:16px}
@media(max-width:760px){.app-question-two,.app-question-three{grid-template-columns:1fr}.app-admin-question summary{align-items:flex-start;flex-direction:column;gap:5px}.app-admin-question summary span{text-align:left}}


/* =========================================================
   v1.4.5 — organized tabbed admin
   ========================================================= */
.admin-dashboard{margin-top:34px}
.admin-dashboard>h1{margin-bottom:20px}
.admin-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:7px;margin:0 0 20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);border-radius:16px;scrollbar-width:thin}
.admin-tabs a{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;min-height:46px;padding:0 16px;border-radius:11px;color:rgba(255,255,255,.78);font-size:14px;font-weight:850;letter-spacing:.025em;text-decoration:none;white-space:nowrap;transition:background .18s ease,color .18s ease,transform .18s ease}
.admin-tabs a:hover{background:rgba(255,255,255,.08);color:#fff}
.admin-tabs a.is-active{background:#f0fff5;color:#0b141c;box-shadow:0 8px 22px rgba(0,0,0,.16)}
.admin-tabs a span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:8px;background:rgba(255,255,255,.12);font-size:14px;font-weight:900}
.admin-tabs a.is-active span{background:#244454;color:#fff}
.admin-tab-section{padding-top:18px!important}
.admin-tab-section>h2{margin-top:0}
@media(max-width:760px){
  .admin-dashboard{width:min(100% - 22px,1180px);margin-top:22px}
  .admin-dashboard>h1{font-size:36px;margin-bottom:14px}
  .admin-tabs{margin-left:-2px;margin-right:-2px;padding:6px;border-radius:14px}
  .admin-tabs a{min-height:43px;padding:0 13px;font-size:14px}
  .admin-tab-section{padding-top:12px!important}
}

/* =========================================================
   v1.4.6 — persistent producer sessions + admin messaging/push tools
   ========================================================= */
.admin-app-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;margin:16px 0 24px;padding:6px;background:#f0fff5;border:1px solid rgba(36,68,84,.14);border-radius:15px;scrollbar-width:thin}
.admin-app-tabs a{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;min-height:42px;padding:0 14px;border-radius:10px;color:#244454;text-decoration:none;font-size:14px;font-weight:850;white-space:nowrap}
.admin-app-tabs a:hover{background:rgba(36,68,84,.08)}
.admin-app-tabs a.is-active{background:#0b141c;color:#fff;box-shadow:0 7px 18px rgba(11,20,28,.16)}
.admin-app-subsection{display:grid;gap:16px}
.admin-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}
.admin-panel-heading small{display:block;margin-bottom:5px;color:#607274;font-size:14px;font-weight:900;letter-spacing:.08em}
.admin-panel-heading h3{margin:0;font-family:Georgia,serif;font-size:28px;font-weight:500;color:#0b141c}
.admin-status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border-radius:9px;font-size:14px;font-weight:900;white-space:nowrap}
.admin-status-badge.is-on{background:#f0fff5;color:#244454;border:1px solid rgba(36,68,84,.18)}
.admin-status-badge.is-off{background:#f4f5f5;color:#607274;border:1px solid rgba(96,114,116,.16)}
.admin-message-form{display:grid;gap:14px;margin-top:18px}
.admin-message-form label,.admin-push-test-panel label{display:grid;gap:7px;font-weight:750}
.admin-message-form input,.admin-message-form textarea,.admin-message-form select,.admin-push-test-panel input,.admin-push-test-panel select{width:100%;border:1px solid #c8d2d5;border-radius:12px;padding:11px 12px;background:#fff;color:#0b141c;font:inherit}
.admin-message-form textarea{resize:vertical;min-height:132px}
.admin-message-history-list{display:grid;gap:10px;margin-top:14px}
.admin-message-history-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 15px;background:#f7faf8;border:1px solid rgba(36,68,84,.10);border-radius:14px}
.admin-message-history-list strong,.admin-message-history-list p,.admin-message-history-list small{display:block}
.admin-message-history-list p{margin:5px 0;color:#244454;line-height:1.5}
.admin-message-history-list small{color:#607274}
.admin-message-history-list article>span{flex:0 0 auto;padding:6px 9px;border-radius:8px;background:#0b141c;color:#fff;font-size:14px;font-weight:850}
.admin-session-list{display:grid;gap:10px;margin-top:18px}
.admin-session-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid rgba(36,68,84,.12);border-radius:14px;background:#fff}
.admin-session-list article div{min-width:0}.admin-session-list strong,.admin-session-list span,.admin-session-list small{display:block}.admin-session-list span{margin-top:2px;color:#244454}.admin-session-list small{margin-top:5px;color:#607274}
.producer-admin-messages{display:grid;gap:10px;margin:0 0 18px}
.producer-admin-message{position:relative;display:flex;gap:13px;align-items:flex-start;padding:16px 46px 16px 16px;background:#fff;border:2px solid rgba(36,68,84,.14);border-radius:18px;box-shadow:0 10px 24px rgba(11,20,28,.07)}
.producer-admin-message-icon{display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:#0b141c;color:#f0fff5}
.producer-admin-message-copy{min-width:0}.producer-admin-message-copy small{display:block;color:#607274;font-size:14px;font-weight:900;letter-spacing:.08em}.producer-admin-message-copy strong{display:block;margin-top:4px;color:#0b141c;font-size:17px}.producer-admin-message-copy p{margin:6px 0 0;color:#244454;font-size:14px;line-height:1.55}.producer-admin-message-copy a{display:inline-block;margin-top:8px;color:#244454;font-weight:850;text-decoration:none}
.producer-admin-message-dismiss{position:absolute;right:10px;top:10px}.producer-admin-message-dismiss button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:9px;background:#f0fff5;color:#244454;cursor:pointer}
@media(max-width:760px){
  .admin-app-tabs{margin-left:-2px;margin-right:-2px}.admin-app-tabs a{min-height:40px;padding:0 12px}
  .admin-panel-heading{flex-direction:column;gap:9px}.admin-message-history-list article,.admin-session-list article{flex-direction:column;align-items:stretch}.admin-session-list form .btn{width:100%}
  .producer-admin-message{padding:14px 44px 14px 14px}.producer-admin-message-icon{width:36px;height:36px;flex-basis:36px}
}

/* =========================================================
   v1.4.7 — producer-first onboarding + compact app navigation
   ========================================================= */
.producer-native-menu{position:relative;margin:0}
.producer-native-menu>summary{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 8px;list-style:none;cursor:pointer;color:var(--ink);font-size:14px;font-weight:900;letter-spacing:.055em;user-select:none}
.producer-native-menu>summary::-webkit-details-marker{display:none}
.producer-native-menu>summary i{font-size:18px;font-weight:600}
.producer-native-menu[open]>summary{color:var(--primary)}
.producer-native-menu>nav{position:absolute;right:0;top:48px;width:min(330px,calc(100vw - 24px));max-height:calc(100vh - 86px);overflow:auto;padding:10px;background:#fff;border:1px solid rgba(11,20,28,.12);border-radius:18px;box-shadow:0 22px 50px rgba(11,20,28,.22)}
.producer-native-menu>nav>a,.producer-native-menu-group>a{display:flex;align-items:center;gap:11px;min-height:48px;padding:0 12px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:760}
.producer-native-menu>nav>a:hover,.producer-native-menu-group>a:hover{background:var(--mint)}
.producer-native-menu>nav>a i,.producer-native-menu-group>a i{display:flex;align-items:center;justify-content:center;width:22px;color:var(--primary)}
.producer-native-menu-user{padding:10px 12px 13px;margin-bottom:4px;border-bottom:1px solid rgba(36,68,84,.12)}
.producer-native-menu-user small,.producer-native-menu-user strong,.producer-native-menu-user span{display:block}
.producer-native-menu-user small,.producer-native-menu-group>small{color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.08em}
.producer-native-menu-user strong{margin-top:4px;font-size:16px;color:var(--ink)}
.producer-native-menu-user span{margin-top:2px;color:var(--slate);font-size:14px}
.producer-native-menu-group{padding:7px 0;border-top:1px solid rgba(36,68,84,.09);border-bottom:1px solid rgba(36,68,84,.09)}
.producer-native-menu-group>small{display:block;padding:7px 12px 3px}
.producer-native-menu-logout{margin-top:4px;border-top:1px solid rgba(36,68,84,.1);color:#7d2338!important}
.producer-native-menu-logout i{color:#7d2338!important}

.producer-app-create-direct{display:grid;gap:9px;margin-top:26px;padding-top:22px;border-top:1px solid rgba(36,68,84,.13)}
.producer-app-create-direct>span{color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.08em}
.producer-app-create-direct>a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 14px;border:2px solid var(--primary);border-radius:14px;color:var(--primary);background:#fff;text-decoration:none;font-size:14px;font-weight:900;letter-spacing:.025em}
.producer-app-create-direct>a:first-of-type{background:var(--primary);color:#fff}
.producer-app-result-create{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 4px 0}
.producer-app-result-create>span{width:100%;color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.06em}
.producer-app-result-create>a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border:1px solid rgba(36,68,84,.2);border-radius:11px;background:#fff;color:var(--primary);font-size:14px;font-weight:850;text-decoration:none}
.producer-app-not-found>div{display:grid;gap:9px;margin-top:14px}
.producer-app-not-found>div>a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 14px;border-radius:14px;background:var(--ink);color:#fff;text-decoration:none;font-size:14px;font-weight:900}
.producer-app-not-found>div>a+ a{background:#fff;color:var(--primary);border:2px solid var(--primary)}
.producer-app-create-kind{display:flex;align-items:center;gap:10px;padding:13px 14px;border:2px solid rgba(36,68,84,.14);border-radius:14px;background:var(--mint);color:var(--ink)}
.producer-app-create-kind>i{color:var(--primary);font-size:18px}.producer-app-create-kind>strong{font-size:14px;letter-spacing:.055em}.producer-app-create-kind>a{margin-left:auto;color:var(--primary);font-size:14px;font-weight:850;text-decoration:none}

.producer-app-dayline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 10px;padding:0 2px;color:var(--slate)}
.producer-app-dayline span{font-size:14px;font-weight:900;letter-spacing:.08em}.producer-app-dayline strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:14px}
.producer-app-primary-action{margin-top:0;border-width:3px;box-shadow:0 16px 34px rgba(11,20,28,.1)}
.producer-app-priority-label{display:block!important;margin-bottom:5px;color:var(--slate)!important;font-size:14px!important;font-weight:900!important;letter-spacing:.09em!important}
.producer-app-first-update{margin:0 0 14px;padding:18px;background:#fff;border:2px solid rgba(36,68,84,.15);border-radius:18px}
.producer-app-first-update>span,.producer-app-first-update>strong{display:block}.producer-app-first-update>span{color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.09em}.producer-app-first-update>strong{margin-top:5px;color:var(--ink);font-family:Georgia,serif;font-size:25px;font-weight:500}.producer-app-first-update>p{margin:6px 0 0;color:var(--slate);font-size:14px;line-height:1.5}
.producer-admin-messages{margin-top:18px}

.dashboard.dashboard-compact{padding-top:24px}
.dashboard-main-full{width:100%;min-width:0}
.dashboard-compact .wizard-shell{margin-top:0}
.dashboard-quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.dashboard-quick-actions .btn{margin:0}

@media(max-width:700px){
  .producer-native-menu>summary span{display:inline}
  .producer-native-menu>nav{right:-2px;top:46px}
  .producer-app-onboarding{padding-top:18px}
  .producer-app-create-direct{margin-top:20px;padding-top:18px}
  .producer-app-dayline{margin-bottom:8px}
  .producer-app-primary-action{padding:18px 16px}
  .dashboard.dashboard-compact{padding-top:14px}
  .dashboard-quick-actions{display:grid;grid-template-columns:1fr}
  .dashboard-quick-actions .btn{width:100%}
}
.producer-app-create-back{display:inline-flex;margin:0 0 12px;color:var(--primary);font-size:14px;font-weight:850;text-decoration:none}


/* v1.4.8 — reminder in app menu + search results replace search form */
.producer-native-menu>nav>button.producer-native-menu-action{width:100%;display:flex;align-items:center;gap:11px;min-height:48px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:760;text-align:left;cursor:pointer}
.producer-native-menu>nav>button.producer-native-menu-action:hover{background:var(--mint)}
.producer-native-menu>nav>button.producer-native-menu-action i{display:flex;align-items:center;justify-content:center;width:22px;color:var(--primary)}
.producer-native-menu>nav>button.producer-native-menu-action:disabled{opacity:.55;cursor:not-allowed}
.producer-native-menu-status{display:block;min-height:0;padding:0 12px;color:var(--slate);font-size:14px;font-weight:700;line-height:1.35}
.producer-native-menu-status:not(:empty){padding-top:4px;padding-bottom:10px}
.producer-app-search-summary{margin:8px 0 18px!important;color:var(--slate)}
.producer-app-search-summary strong{color:var(--ink)}
.producer-app-search-replace{margin:8px 0 0;max-width:none}
.producer-app-search-again{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;margin-top:14px;border:2px solid rgba(36,68,84,.16);border-radius:14px;background:#fff;color:var(--primary);text-decoration:none;font-size:14px;font-weight:900;letter-spacing:.035em}
.producer-app-result-create{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(36,68,84,.13)}
.producer-app-result-create>span{grid-column:1/-1;color:var(--slate);font-size:14px;font-weight:900;letter-spacing:.06em}
.producer-app-result-create>a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 12px;border-radius:13px;background:var(--primary);color:#fff;text-decoration:none;font-size:14px;font-weight:900;text-align:center}
.producer-app-result-create>a+a{background:#fff;color:var(--primary);border:2px solid var(--primary)}
.producer-app-create-after-search{margin-top:20px;padding-top:0;border-top:0}
@media(max-width:620px){.producer-app-result-create{grid-template-columns:1fr}.producer-app-result-create>span{grid-column:auto}}

/* =========================================================
   v1.4.9 — producer app dark-mode card system
   Dark cards + slate borders + white fields + mint accents.
   The app shell stays inset so the site background remains visible.
   ========================================================= */

/* App canvas: no mint slab. Leave an inset around the phone UI so the
   underlying site/background can still be seen at the edges. */
.producer-app-shell{
  width:min(760px,calc(100% - 32px));
  max-width:760px;
  margin:22px auto 0;
  padding:28px 18px 116px;
  min-height:calc(100vh - 88px);
  background:transparent;
  color:#fff;
}
.producer-app-onboarding{padding-top:28px}

/* Shared dark card language across onboarding, search, daily flow and utility cards. */
.producer-app-welcome,
.producer-app-create-card,
.producer-app-not-found,
.producer-app-fast-action,
.producer-app-first-update,
.producer-question-card,
.producer-app-close-card,
.producer-app-install-card,
.producer-admin-message{
  background:var(--ink);
  color:#fff;
  border:2px solid var(--slate);
  box-shadow:0 16px 34px rgba(0,0,0,.20);
}

/* Headings and supporting copy inside the app cards. */
.producer-app-welcome h1,
.producer-app-create-card h2,
.producer-app-first-update>strong,
.producer-question-card h2,
.producer-app-close-card strong,
.producer-admin-message-copy strong{
  color:#fff;
}
.producer-app-welcome p,
.producer-app-setup-card>p,
.producer-app-search-summary,
.producer-app-search-summary strong,
.producer-app-first-update>p,
.producer-question-card>p,
.producer-question-card h3,
.producer-app-close-card span,
.producer-admin-message-copy p,
.producer-admin-message-copy small,
.producer-app-install-card span,
.producer-app-install-card small{
  color:rgba(255,255,255,.72);
}
.producer-app-date,
.producer-app-mark,
.producer-app-priority-label,
.producer-app-first-update>span,
.producer-app-create-direct>span,
.producer-app-result-create>span,
.producer-app-dayline span,
.producer-app-create-back,
.producer-app-onboarding-nav a,
.producer-admin-message-copy a{
  color:var(--mint)!important;
}
.producer-app-dayline strong{color:#fff}

/* All real text/select fields stay white for obvious affordance. */
.producer-app-search-form label,
.producer-app-create-form>label{
  color:var(--mint);
}
.producer-app-search-form input,
.producer-app-create-form input,
.producer-special-message textarea,
.producer-custom-question textarea,
.producer-app-switch select{
  background:#fff;
  color:var(--ink);
  border:2px solid #fff;
  box-shadow:inset 0 0 0 1px rgba(11,20,28,.08);
}
.producer-app-search-form input::placeholder,
.producer-app-create-form input::placeholder,
.producer-special-message textarea::placeholder,
.producer-custom-question textarea::placeholder{
  color:#7d858b;
  opacity:1;
}
.producer-app-search-form input:focus,
.producer-app-create-form input:focus,
.producer-special-message textarea:focus,
.producer-custom-question textarea:focus,
.producer-app-switch select:focus{
  outline:3px solid rgba(240,255,245,.25);
  border-color:var(--mint);
}

/* Primary actions: mint is the only non-semantic accent. */
.producer-app-search-form button,
.producer-app-create-form>button,
.producer-app-not-found>a,
.producer-app-save,
.producer-daily-next{
  background:var(--mint);
  color:var(--ink);
  border:2px solid var(--mint);
  box-shadow:none;
}
.producer-app-save i{color:var(--primary)}
.producer-daily-back{
  background:transparent;
  color:var(--mint);
  border:2px solid var(--slate);
}

/* Search result cards and matching records remain dark instead of returning to white. */
.producer-app-match-list article{
  background:var(--ink);
  color:#fff;
  border:2px solid var(--slate);
  box-shadow:none;
}
.producer-app-match-list small{color:var(--mint)}
.producer-app-match-list strong{color:#fff}
.producer-app-match-list span{color:rgba(255,255,255,.68)}
.producer-app-match-list article>a{
  background:var(--mint);
  color:var(--ink);
}
.producer-app-search-again{
  background:transparent;
  color:var(--mint);
  border:2px solid var(--slate);
}

/* Create-profile choices and type indicator. */
.producer-app-create-direct>a,
.producer-app-result-create>a,
.producer-app-not-found>div>a{
  background:var(--mint);
  color:var(--ink);
  border:2px solid var(--mint);
}
.producer-app-create-direct>a+a,
.producer-app-result-create>a+a,
.producer-app-not-found>div>a+a{
  background:transparent;
  color:var(--mint);
  border-color:var(--slate);
}
.producer-app-create-kind{
  background:#102532;
  color:#fff;
  border:2px solid var(--slate);
}
.producer-app-create-kind>i,
.producer-app-create-kind>a{color:var(--mint)}
.producer-app-create-kind>strong{color:#fff}

/* Daily progress and question controls. */
.producer-daily-progress{
  top:74px;
  background:rgba(8,16,24,.96);
  padding:10px 0 15px;
}
.producer-daily-progress>span{color:var(--mint)}
.producer-daily-progress>i{background:rgba(255,255,255,.14)}
.producer-daily-progress>i>b{background:var(--mint)}
.producer-question-number{color:rgba(240,255,245,.20)}

.producer-yesno span,
.producer-tap-grid span,
.producer-agave-grid span,
.producer-activity-grid span,
.producer-message-expiry label span{
  background:#102532;
  color:#fff;
  border:2px solid var(--slate);
}
.producer-yesno input:checked+span,
.producer-tap-grid input:checked+span,
.producer-agave-grid input:checked+span,
.producer-activity-grid input:checked+span,
.producer-message-expiry input:checked+span{
  background:var(--mint);
  color:var(--ink);
  border-color:var(--mint);
}
.producer-activity-grid span i{color:var(--mint)}
.producer-activity-grid input:checked+span i{color:var(--primary)}
.producer-message-expiry>span{color:rgba(255,255,255,.72)}

/* Status/utility cards share the same dark language. */
.producer-app-live-confirm{
  background:var(--ink);
  color:#fff;
  border:2px solid var(--mint);
}
.producer-app-live-confirm>i{background:var(--mint)}
.producer-app-live-confirm span{color:var(--mint)}
.producer-app-install-card>div:first-child>i{color:var(--mint)}
.producer-app-install-card .mo-btn-dark,
.producer-app-install-card .mo-btn-mint{
  background:var(--mint);
  color:var(--ink);
  border:2px solid var(--mint);
}
.producer-admin-message-icon{
  background:var(--mint);
  color:var(--ink);
}
.producer-admin-message-dismiss button{
  background:#102532;
  color:var(--mint);
  border:1px solid var(--slate);
}

/* Keep the app navigation dark too, with mint as the active state. */
.producer-app-bottom-nav{
  background:var(--ink);
  border:2px solid var(--slate);
}
.producer-app-bottom-nav a{color:#fff}
.producer-app-bottom-nav a.is-active,
.producer-app-bottom-nav a:hover{
  background:var(--mint);
  color:var(--ink);
}
.producer-native-menu>nav{
  background:var(--ink);
  border:2px solid var(--slate);
  color:#fff;
}
.producer-native-menu-user{border-bottom-color:rgba(240,255,245,.16)}
.producer-native-menu-user small,
.producer-native-menu-group>small,
.producer-native-menu-user span,
.producer-native-menu-status{color:rgba(255,255,255,.66)}
.producer-native-menu-user strong{color:#fff}
.producer-native-menu>nav>a,
.producer-native-menu-group>a,
.producer-native-menu>nav>button.producer-native-menu-action{color:#fff}
.producer-native-menu>nav>a i,
.producer-native-menu-group>a i,
.producer-native-menu>nav>button.producer-native-menu-action i{color:var(--mint)}
.producer-native-menu>nav>a:hover,
.producer-native-menu-group>a:hover,
.producer-native-menu>nav>button.producer-native-menu-action:hover{
  background:#102532;
  color:var(--mint);
}
.producer-native-menu-group{
  border-top-color:rgba(240,255,245,.12);
  border-bottom-color:rgba(240,255,245,.12);
}
.producer-native-menu-logout{border-top-color:rgba(240,255,245,.12)}

/* The "no visitors" action remains a semantic warning, but its surrounding card
   stays in the new dark system. */
.producer-app-close-card button{
  border:2px solid #8a2342;
}

@media(max-width:700px){
  .producer-app-shell{
    width:calc(100% - 24px);
    margin-top:14px;
    padding:24px 14px 108px;
  }
  .producer-app-onboarding{padding-top:22px}
  .producer-app-welcome,
  .producer-app-create-card,
  .producer-app-not-found,
  .producer-question-card{
    padding-left:18px;
    padding-right:18px;
  }
}


/* =========================================================
   v1.4.11 — emergency static-asset permission hotfix; retains app readability + explicit multi-select controls
   14px is the minimum text size inside the producer app.
   ========================================================= */

/* Readability floor: only selectors that previously rendered below 14px are
   raised, so larger headings and display type keep their existing hierarchy. */
.producer-native-account,
.producer-native-menu>summary,
.producer-native-menu>nav>a,
.producer-native-menu-group>a,
.producer-native-menu>nav>button.producer-native-menu-action,
.producer-native-menu-user small,
.producer-native-menu-group>small,
.producer-native-menu-user span,
.producer-native-menu-status,
.producer-app-error,
.producer-app-search-form label,
.producer-app-create-form>label,
.producer-app-search-form button,
.producer-app-create-form>button,
.producer-app-not-found>a,
.producer-app-match-list small,
.producer-app-match-list span,
.producer-app-match-list article>a,
.producer-app-secondary-link,
.producer-app-type-choice span,
.producer-app-onboarding-nav a,
.producer-app-install-card span,
.producer-app-install-card small,
.producer-app-install-actions .mo-btn,
.producer-app-live-confirm,
.producer-question-card>p,
.producer-question-card h3,
.producer-tap-grid span,
.producer-agave-grid span,
.producer-activity-grid span b,
.producer-message-expiry>span,
.producer-message-expiry label span,
.producer-app-close-card span,
.producer-app-close-card button,
.producer-app-bottom-nav a,
.producer-app-bottom-nav-four a span,
.producer-daily-progress>span,
.producer-daily-back,
.producer-daily-next,
.producer-admin-message-copy small,
.producer-admin-message-copy p,
.producer-app-create-direct>span,
.producer-app-create-direct>a,
.producer-app-result-create>span,
.producer-app-result-create>a,
.producer-app-not-found>div>a,
.producer-app-create-kind>strong,
.producer-app-create-kind>a,
.producer-app-dayline span,
.producer-app-dayline strong,
.producer-app-priority-label,
.producer-app-first-update>span,
.producer-app-first-update>p,
.producer-app-create-back,
.producer-app-search-again,
.producer-app-date,
.producer-app-fast-action span,
.producer-app-switch span{
  font-size:14px!important;
}

/* Keep form entry text comfortably larger than the floor. */
.producer-app-search-form input,
.producer-app-create-form input,
.producer-special-message textarea,
.producer-custom-question textarea,
.producer-app-switch select{
  font-size:16px!important;
}

/* Every group that accepts more than one answer explicitly says so. */
.producer-multi-block{
  margin-top:8px;
}
.producer-multi-help{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 10px;
  padding:9px 11px;
  background:#102532;
  border:1px solid var(--slate);
  border-radius:12px;
}
.producer-multi-help>span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--mint);
  font-size:14px;
  font-weight:750;
  line-height:1.35;
}
.producer-multi-help>span i{
  color:var(--mint);
}
.producer-multi-help>label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  color:#fff;
  font-size:14px;
  font-weight:850;
  white-space:nowrap;
}
.producer-multi-help>label input{
  position:static;
  opacity:1;
  pointer-events:auto;
  width:19px;
  height:19px;
  margin:0;
  accent-color:var(--mint);
}
.producer-multi-help>label span{
  color:#fff;
  font-size:14px;
}

/* Make the quick-close action unmistakable and give it breathing room before
   the install/reminder card below it. */
.producer-app-close-card{
  margin-bottom:22px;
}
.producer-app-close-card form{
  flex:0 0 auto;
}
.producer-app-close-card button{
  min-height:48px;
  cursor:pointer;
}
.producer-app-close-card button:disabled{
  opacity:.7;
  cursor:wait;
}
.producer-app-close-card.is-closed{
  border-color:var(--mint);
}
.producer-app-closed-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:48px;
  padding:0 15px;
  border-radius:14px;
  background:var(--mint);
  color:var(--ink);
  font-size:14px;
  font-weight:900;
  letter-spacing:.04em;
  white-space:nowrap;
}

@media(max-width:700px){
  .producer-multi-help{
    align-items:flex-start;
    flex-direction:column;
  }
  .producer-app-close-card{
    margin-bottom:24px;
  }
  .producer-app-closed-badge{
    width:100%;
  }
}


/* =========================================================
   v1.4.13 — producer app visual hierarchy + photographic canvas
   Instructions are visually distinct from tappable answer controls.
   ========================================================= */

body.producer-app-page{
  min-height:100vh;
  background:
    linear-gradient(110deg,rgba(11,20,28,.93),rgba(11,20,28,.79) 48%,rgba(36,68,84,.73)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top / cover fixed no-repeat;
}
body.producer-app-page .producer-native-header{
  background:#fff;
}
body.producer-app-page .producer-app-shell{
  position:relative;
  z-index:1;
}

/* This row is explanatory text, not a button/card. */
.producer-multi-help{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:4px 0 13px;
  padding:0;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.producer-multi-help>span{
  display:inline-flex;
  align-items:center;
  color:rgba(255,255,255,.72)!important;
  font-size:14px!important;
  font-weight:650;
  line-height:1.45;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  min-height:0!important;
  box-shadow:none!important;
}
.producer-multi-help>span i{display:none!important}
.producer-multi-help>label{
  display:inline-flex!important;
  align-items:center;
  gap:8px;
  min-height:0!important;
  margin:0;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:var(--mint)!important;
  font-size:14px!important;
  font-weight:850;
  line-height:1.3;
  cursor:pointer;
  white-space:nowrap;
}
.producer-multi-help>label input{
  position:static!important;
  opacity:1!important;
  pointer-events:auto!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  accent-color:var(--mint);
}
.producer-multi-help>label span{
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--mint)!important;
  font-size:14px!important;
  font-weight:850;
}

/* Actual options keep the strong tappable-card language. */
.producer-tap-grid span,
.producer-agave-grid span,
.producer-activity-grid span{
  min-height:48px;
  box-shadow:0 5px 14px rgba(0,0,0,.14);
}
.producer-tap-grid label:hover span,
.producer-agave-grid label:hover span,
.producer-activity-grid label:hover span{
  border-color:var(--mint);
}

@media(max-width:700px){
  body.producer-app-page{
    background-attachment:scroll;
    background-position:center top;
  }
  .producer-app-shell{
    width:calc(100% - 24px);
    margin-left:auto;
    margin-right:auto;
  }
}
@media(max-width:460px){
  .producer-multi-help{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
  }
}

/* =========================================================
   v1.4.14 — one-question-per-step daily form + gold form frame
   The outer questionnaire is distinct from the dashboard; inner controls keep
   the existing slate/mint language. Select-all state is unmistakable.
   ========================================================= */

body.producer-app-page{
  --producer-gold:#c8a45c;
}

/* The questionnaire itself now reads as one complete, deliberate object. */
.producer-daily-form{
  position:relative;
  gap:18px;
  margin-top:18px;
  padding:18px;
  background:rgba(11,20,28,.90);
  border:2px solid var(--producer-gold);
  border-radius:28px;
  box-shadow:
    0 20px 48px rgba(0,0,0,.34),
    0 0 0 1px rgba(200,164,92,.10) inset;
}

/* Only the main form frame is gold. Question cards and tappable choices remain slate. */
.producer-daily-form .producer-question-card{
  border-color:var(--slate)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20);
}
.producer-daily-form .producer-question-number{
  display:none!important;
}

.producer-daily-progress{
  position:sticky;
  top:74px;
  z-index:8;
  margin:0;
  padding:12px 14px 15px;
  background:rgba(11,20,28,.98);
  border:1px solid rgba(200,164,92,.38);
  border-radius:16px;
}
.producer-daily-progress>span{
  color:var(--producer-gold)!important;
  font-size:14px!important;
}
.producer-daily-progress>i{
  height:6px;
  background:#102532!important;
  border:1px solid var(--slate);
}
.producer-daily-progress>i>b{
  background:var(--producer-gold)!important;
}

/* Answer buttons keep their mid-tone borders; gold is reserved for the form frame/progress. */
.producer-daily-form .producer-yesno span,
.producer-daily-form .producer-tap-grid span,
.producer-daily-form .producer-agave-grid span,
.producer-daily-form .producer-activity-grid span,
.producer-daily-form .producer-message-expiry label span{
  border-color:var(--slate)!important;
}

/* Select-all is a small utility control, not another answer button. */
.producer-multi-help>label{
  color:var(--producer-gold)!important;
}
.producer-multi-help>label span{
  color:var(--producer-gold)!important;
}
.producer-multi-help>label input[data-select-all]{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:19px!important;
  height:19px!important;
  border:2px solid var(--producer-gold)!important;
  border-radius:4px!important;
  background:#fff!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:14px 14px!important;
  box-shadow:none!important;
}
.producer-multi-help>label input[data-select-all]:checked{
  background-color:var(--producer-gold)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.5l3.5 3.5L16 5.5' fill='none' stroke='%230B141C' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
}
.producer-multi-help>label input[data-select-all]:indeterminate{
  background-color:var(--producer-gold)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10h12' fill='none' stroke='%230B141C' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E")!important;
}

/* One question per card means the card itself can breathe more. */
.producer-daily-form .producer-question-card{
  padding:28px 22px 24px;
}
.producer-daily-form .producer-question-card h2{
  margin-right:0;
}
.producer-message-expiry-step{
  margin-top:8px;
}

.producer-daily-nav{
  padding-top:2px;
}
.producer-daily-back,
.producer-daily-next,
.producer-daily-nav .producer-app-save{
  border:2px solid var(--slate)!important;
}

@media(max-width:700px){
  .producer-daily-form{
    margin-left:0;
    margin-right:0;
    padding:12px;
    border-radius:22px;
  }
  .producer-daily-progress{
    top:64px;
    padding:10px 11px 13px;
  }
  .producer-daily-form .producer-question-card{
    padding:24px 17px 21px;
  }
}


/* =========================================================
   v1.4.16 — centered question transitions + brighter gold hierarchy
   Keep the questionnaire as the visual focus while surrounding utility
   surfaces return to the normal mid-tone site palette.
   ========================================================= */

body.producer-app-page{
  --producer-gold:#dfb85f;
}

/* The questionnaire frame and progress are the only gold structural accents. */
.producer-daily-form{
  border-color:var(--producer-gold)!important;
  box-shadow:
    0 22px 54px rgba(0,0,0,.36),
    0 0 0 1px rgba(223,184,95,.16) inset;
}
.producer-daily-progress{
  border-color:rgba(223,184,95,.52)!important;
}
.producer-daily-progress>span{
  color:var(--producer-gold)!important;
}
.producer-daily-progress>i>b{
  background:var(--producer-gold)!important;
}
.producer-multi-help>label,
.producer-multi-help>label span{
  color:var(--producer-gold)!important;
}
.producer-multi-help>label input[data-select-all]{
  border-color:var(--producer-gold)!important;
}
.producer-multi-help>label input[data-select-all]:checked,
.producer-multi-help>label input[data-select-all]:indeterminate{
  background-color:var(--producer-gold)!important;
}

/* Surrounding dashboard cards should support the gold form, not outshine it. */
.producer-app-fast-action,
.producer-app-first-update,
.producer-app-live-confirm,
.producer-app-close-card,
.producer-app-install-card{
  background:#244454!important;
  border-color:#607274!important;
  color:#fff!important;
}
.producer-app-fast-action strong,
.producer-app-first-update>strong,
.producer-app-live-confirm strong,
.producer-app-close-card strong,
.producer-app-install-card strong{
  color:#fff!important;
}
.producer-app-fast-action span:not(.producer-app-priority-label),
.producer-app-first-update>p,
.producer-app-close-card span,
.producer-app-install-card span,
.producer-app-install-card small{
  color:rgba(255,255,255,.76)!important;
}

/* A step is positioned by JS in the usable viewport between the sticky
   header/progress and bottom navigation. This margin is only a safety net. */
.producer-question-card{
  scroll-margin-top:150px;
  scroll-margin-bottom:110px;
}


/* =========================================================
   v1.4.17 — publish confirmation visibility + completed-first-update state
   ========================================================= */
.producer-app-flash-anchor{
  width:100%;
  scroll-margin-top:110px;
  scroll-margin-bottom:90px;
}
.producer-app-page .producer-app-flash-anchor .flash{
  margin-top:16px;
  margin-bottom:16px;
  border:1px solid rgba(223,184,95,.58);
  box-shadow:0 16px 36px rgba(0,0,0,.28);
}
@media (max-width:700px){
  .producer-app-flash-anchor{
    scroll-margin-top:86px;
    scroll-margin-bottom:72px;
  }
}

/* =========================================================
   v1.4.18 — PUBLIC PROFILE VISUAL SYSTEM
   - top-down maguey photographic background
   - every public profile card uses the dark surface
   - minimum 14px supporting typography
   - owner-facing "Agregar información" link beside the tagline
   ========================================================= */
.profile-public-canvas{
  min-height:calc(100vh - 76px);
  background:
    linear-gradient(105deg,rgba(7,15,22,.88),rgba(11,20,28,.74) 48%,rgba(36,68,84,.70)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top / cover fixed no-repeat;
  border-top:1px solid rgba(255,255,255,.05);
}
.profile-public-canvas .profile-page{
  position:relative;
  z-index:1;
}

/* The public profile uses one consistent dark card language. */
.profile-page .panel,
.profile-page .profile-card,
.profile-page .claim-box,
.profile-page .profile-live-today,
.profile-page .profile-live-today.is-closed{
  background:#0B141C !important;
  color:#fff !important;
  border:1px solid #607274 !important;
  box-shadow:0 18px 42px rgba(0,0,0,.28) !important;
}
.profile-page .panel h1,
.profile-page .panel h2,
.profile-page .panel h3,
.profile-page .panel h4,
.profile-page .panel p,
.profile-page .panel li,
.profile-page .panel strong,
.profile-page .panel label,
.profile-page .claim-box h1,
.profile-page .claim-box h2,
.profile-page .claim-box h3,
.profile-page .claim-box p,
.profile-page .claim-box strong,
.profile-page .profile-card h1,
.profile-page .profile-card h2,
.profile-page .profile-card h3,
.profile-page .profile-card p,
.profile-page .profile-card strong,
.profile-page .profile-aside .panel h3,
.profile-page .profile-aside .panel p,
.profile-page .profile-aside .panel strong{
  color:#fff !important;
}
.profile-page .panel a:not(.btn),
.profile-page .claim-box a:not(.btn),
.profile-page .profile-card a,
.profile-page .profile-aside .panel a:not(.btn){
  color:#f0fff5 !important;
}
.profile-page .panel .muted,
.profile-page .claim-box .muted,
.profile-page .profile-card .muted,
.profile-page .profile-card .meta,
.profile-page .profile-aside .panel small{
  color:rgba(255,255,255,.72) !important;
}

/* Today's live card and all of its inner cards remain dark. */
.profile-page .profile-live-today{
  padding:24px;
  border-width:2px !important;
}
.profile-page .profile-live-head,
.profile-page .profile-live-head strong,
.profile-page .profile-live-today h2,
.profile-page .profile-live-today p,
.profile-page .profile-live-block strong{
  color:#fff !important;
}
.profile-page .profile-live-head small{
  color:#f0fff5 !important;
}
.profile-page .profile-live-dot{
  background:#f0fff5;
  box-shadow:0 0 0 5px rgba(240,255,245,.12);
}
.profile-page .profile-live-status-grid>div{
  background:#10212c !important;
  color:rgba(255,255,255,.74) !important;
  border:1px solid #607274 !important;
  box-shadow:none !important;
}
.profile-page .profile-live-status-grid>div.is-on{
  background:#122b34 !important;
  color:#fff !important;
  border-color:#7f9597 !important;
}
.profile-page .profile-live-status-grid i{
  color:#f0fff5 !important;
}
.profile-page .profile-live-block>small,
.profile-page .profile-live-message small{
  color:rgba(255,255,255,.68) !important;
}
.profile-page .profile-live-tags span{
  background:#10212c !important;
  color:#fff !important;
  border:1px solid #607274;
}
.profile-page .profile-live-tags span i{
  color:#f0fff5;
}
.profile-page .profile-live-message{
  background:#10212c !important;
  color:#fff !important;
  border:1px solid #607274 !important;
  border-left:4px solid #f0fff5 !important;
}

/* Facts remain open typography, but use the same palette and readable type. */
.profile-page .fact{
  color:#fff;
  border-top-color:rgba(96,114,116,.72);
  font-size:16px;
}
.profile-page .fact small{
  color:rgba(255,255,255,.66) !important;
}

/* Owner edit prompt directly beside the short profile description. */
.profile-page .profile-tagline{
  margin:0 0 18px;
  font-size:20px !important;
  line-height:1.45;
  color:rgba(255,255,255,.82) !important;
}
.profile-page .profile-tagline span{
  color:inherit;
}
.profile-page .profile-add-info-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#f0fff5 !important;
  font-size:16px !important;
  font-weight:850;
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-thickness:1px;
}
.profile-page .profile-add-info-link:hover{
  color:#fff !important;
}

/* Public profile minimum typography floor: no 10–13px labels/tags. */
.profile-page small,
.profile-page .badge,
.profile-page .profile-founder-badge,
.profile-page .meta,
.profile-page .muted,
.profile-page .profile-live-head>div,
.profile-page .profile-live-tags span,
.profile-page .profile-live-block>small,
.profile-page .profile-live-message small,
.profile-page .btn.small{
  font-size:14px !important;
  line-height:1.35;
}
.profile-page .profile-live-status-grid b{
  font-size:15px;
}

/* Contact card controls stay within the established slate/mint hierarchy. */
.profile-page .panel .btn,
.profile-page .claim-box .btn{
  background:#244454 !important;
  color:#fff !important;
  border:1px solid #607274 !important;
}
.profile-page .panel .btn.soft,
.profile-page .claim-box .btn.soft{
  background:#0B141C !important;
  color:#fff !important;
  border-color:#607274 !important;
}
.profile-page .panel .btn:hover,
.profile-page .claim-box .btn:hover{
  border-color:#f0fff5 !important;
}

@media(max-width:700px){
  .profile-public-canvas{
    background-attachment:scroll;
    background-position:center top;
  }
  .profile-page{
    padding-top:30px;
    padding-bottom:42px;
  }
  .profile-page .profile-tagline{
    font-size:18px !important;
  }
}

/* =========================================================
   v1.4.19 — UNIFIED PRODUCER WORKSPACE + PROFILE SETUP WIZARD
   One visual language across producer dashboard, setup, tools and claim flows.
   ========================================================= */
:root{
  --producer-surface:#0B141C;
  --producer-surface-2:#10212c;
  --producer-mid:#244454;
  --producer-line:#607274;
  --producer-mint:#f0fff5;
  --producer-gold:#dfb85f;
}

.producer-workspace-canvas,
.claim-page-bg{
  min-height:calc(100vh - 76px);
  background:
    linear-gradient(105deg,rgba(7,15,22,.90),rgba(11,20,28,.78) 48%,rgba(36,68,84,.72)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top / cover fixed no-repeat !important;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.05);
}

.producer-workspace-canvas .dashboard{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
  padding:46px 0 76px;
  color:#fff;
}

/* Typography floor for every producer-facing working screen. */
.producer-workspace-canvas :where(p,label,span,small,a,button,input,select,textarea,td,th,li,summary,em),
.claim-page-bg :where(p,label,span,small,a,button,input,select,textarea,li,summary){
  font-size:14px;
  line-height:1.45;
}

.producer-workspace-canvas .step-kicker,
.claim-page-bg .step-kicker{
  font-size:14px !important;
  line-height:1.35;
}

/* All working cards use the same dark surface + slate border. */
.producer-workspace-canvas .wizard-shell,
.producer-workspace-canvas .panel,
.producer-workspace-canvas .empty,
.producer-workspace-canvas table,
.producer-workspace-canvas .profile-card,
.producer-workspace-canvas .producer-tools-live-cta,
.producer-workspace-canvas .producer-quick-setup,
.producer-workspace-canvas .producer-live-demand,
.producer-workspace-canvas .producer-tool-card,
.producer-workspace-canvas .producer-qr-panel,
.producer-workspace-canvas .producer-referral-panel,
.producer-workspace-canvas .village-progress-card,
.producer-workspace-canvas .founder-badge,
.claim-page-bg .claim-surface,
.claim-page-bg .panel,
.claim-page-bg .notice{
  background:rgba(11,20,28,.95) !important;
  color:#fff !important;
  border:1px solid var(--producer-line) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.30) !important;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

.producer-workspace-canvas .panel :where(h1,h2,h3,h4,p,label,strong,small,li),
.producer-workspace-canvas .empty,
.producer-workspace-canvas table :where(th,td,strong),
.producer-workspace-canvas .profile-card :where(h1,h2,h3,h4,p,strong,small),
.producer-workspace-canvas .producer-tools-page :where(h1,h2,h3,h4,p,strong,b,small,span,label),
.claim-page-bg :where(h1,h2,h3,h4,p,label,strong,small,li){
  color:#fff !important;
}

.producer-workspace-canvas a:not(.btn),
.claim-page-bg a:not(.btn){
  color:var(--producer-mint) !important;
}

/* ---------- Profile setup / edit wizard ---------- */
.producer-workspace-canvas .wizard-shell{
  max-width:860px;
  padding:30px;
  border-radius:22px;
}

.producer-workspace-canvas .wizard-shell h2,
.producer-workspace-canvas .wizard-shell h3,
.producer-workspace-canvas .wizard-shell h4,
.producer-workspace-canvas .wizard-shell label{
  color:#fff !important;
}

.producer-workspace-canvas .wizard-shell h2{
  font-size:36px;
}
.producer-workspace-canvas .wizard-shell h3{
  font-size:32px;
}
.producer-workspace-canvas .wizard-shell .eyebrow{
  color:var(--producer-mint) !important;
  font-size:14px !important;
}
.producer-workspace-canvas .wizard-context{
  margin:8px 0 0;
  color:rgba(255,255,255,.72) !important;
  font-size:15px !important;
  font-weight:700;
}
.producer-workspace-canvas .wizard-top{
  align-items:flex-end;
  border-bottom:1px solid rgba(96,114,116,.72);
}
.producer-workspace-canvas .wizard-progress{
  color:var(--producer-mint) !important;
  font-size:14px !important;
}
.producer-workspace-canvas .wizard-bar{
  height:8px;
  background:rgba(96,114,116,.38);
}
.producer-workspace-canvas .wizard-bar i{
  background:var(--producer-mint);
}

.producer-workspace-canvas .wizard-step{
  min-height:330px;
  margin-top:24px;
  padding:28px;
  background:rgba(16,33,44,.78);
  border:1px solid rgba(96,114,116,.86);
  border-radius:18px;
}
.producer-workspace-canvas .wizard-step .step-kicker{
  color:var(--producer-mint) !important;
}
.producer-workspace-canvas .step-help{
  color:rgba(255,255,255,.72) !important;
  font-size:15px !important;
  max-width:680px;
}
.producer-workspace-canvas .field-note{
  color:rgba(255,255,255,.62) !important;
  font-size:14px !important;
  font-weight:600;
}

/* Inputs stay intentionally white for instant visual recognition. */
.producer-workspace-canvas .wizard-shell input:not([type="checkbox"]):not([type="radio"]),
.producer-workspace-canvas .wizard-shell select,
.producer-workspace-canvas .wizard-shell textarea,
.producer-workspace-canvas .panel input:not([type="checkbox"]):not([type="radio"]),
.producer-workspace-canvas .panel select,
.producer-workspace-canvas .panel textarea,
.claim-page-bg input:not([type="checkbox"]):not([type="radio"]),
.claim-page-bg select,
.claim-page-bg textarea{
  background:#fff !important;
  color:#0B141C !important;
  border:1px solid rgba(255,255,255,.82) !important;
  font-size:16px !important;
}
.producer-workspace-canvas .file-input{
  background:#fff !important;
  color:#0B141C !important;
  border-color:#fff !important;
}

/* Actual choices look interactive; helper/instruction text does not. */
.producer-workspace-canvas .choice-option span,
.producer-workspace-canvas .check-option span,
.producer-workspace-canvas .service-choice span{
  background:var(--producer-surface-2) !important;
  color:#fff !important;
  border:1px solid var(--producer-line) !important;
  box-shadow:none !important;
  font-size:15px !important;
}
.producer-workspace-canvas .choice-option span i,
.producer-workspace-canvas .service-choice span i{
  color:var(--producer-mint) !important;
}
.producer-workspace-canvas .choice-option input:checked + span,
.producer-workspace-canvas .check-option input:checked + span,
.producer-workspace-canvas .service-choice input:checked + span{
  background:var(--producer-mint) !important;
  color:#0B141C !important;
  border-color:var(--producer-mint) !important;
}
.producer-workspace-canvas .choice-option input:checked + span i,
.producer-workspace-canvas .service-choice input:checked + span i{
  color:#0B141C !important;
}
.producer-workspace-canvas .choice-option span:hover,
.producer-workspace-canvas .check-option span:hover,
.producer-workspace-canvas .service-choice span:hover{
  border-color:var(--producer-mint) !important;
}

.producer-workspace-canvas .wizard-optional-details{
  margin-top:22px;
  padding:0;
  border:1px solid var(--producer-line);
  border-radius:14px;
  background:rgba(36,68,84,.26);
  overflow:hidden;
}
.producer-workspace-canvas .wizard-optional-details summary{
  padding:15px 17px;
  color:var(--producer-mint) !important;
  font-weight:800;
  cursor:pointer;
}
.producer-workspace-canvas .wizard-optional-details .optional-fields{
  padding:0 17px 18px;
}

.producer-workspace-canvas .wizard-current-photo{
  display:flex;
  align-items:center;
  gap:16px;
  margin:0 0 18px;
  padding:12px;
  background:rgba(36,68,84,.28);
  border:1px solid var(--producer-line);
  border-radius:14px;
}
.producer-workspace-canvas .wizard-current-photo img{
  width:100px;
  height:74px;
  object-fit:cover;
  border-radius:10px;
}
.producer-workspace-canvas .wizard-current-photo span{
  color:rgba(255,255,255,.78) !important;
  font-weight:800;
}

.producer-workspace-canvas .wizard-nav{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid rgba(96,114,116,.72);
}
.producer-workspace-canvas .wizard-nav .btn{
  min-height:52px;
  border:1px solid var(--producer-line) !important;
  font-size:15px !important;
}
.producer-workspace-canvas .wizard-nav .wizard-next,
.producer-workspace-canvas .wizard-nav .wizard-save{
  background:var(--producer-mint) !important;
  color:#0B141C !important;
  border-color:var(--producer-mint) !important;
}
.producer-workspace-canvas .wizard-nav .wizard-back{
  background:var(--producer-mid) !important;
  color:#fff !important;
}

/* Match modal follows the same working-surface hierarchy. */
.producer-workspace-canvas .match-modal-card{
  background:var(--producer-surface) !important;
  color:#fff !important;
  border:1px solid var(--producer-line);
}
.producer-workspace-canvas .match-modal-card :where(h3,p,strong,span,small){
  color:#fff !important;
}
.producer-workspace-canvas .match-result{
  border-top-color:rgba(96,114,116,.62);
}
.producer-workspace-canvas .match-modal-x{
  background:var(--producer-mid) !important;
  color:#fff !important;
}

/* Dashboard list, manager and expression screens. */
.producer-workspace-canvas table{
  overflow:hidden;
  border-radius:16px;
  border-collapse:separate;
  border-spacing:0;
}
.producer-workspace-canvas table th{
  background:var(--producer-mid) !important;
  color:#fff !important;
  border-bottom:1px solid var(--producer-line);
}
.producer-workspace-canvas table td{
  background:rgba(11,20,28,.96) !important;
  color:#fff !important;
  border-bottom:1px solid rgba(96,114,116,.45);
}
.producer-workspace-canvas .dashboard-delete-link{
  border:0;
  padding:0;
  background:none;
  color:#f4b7b7 !important;
  text-decoration:underline;
  cursor:pointer;
}
.producer-workspace-canvas .dashboard-quick-actions .btn{
  border:1px solid var(--producer-line) !important;
}

/* ---------- Producer tools ---------- */
.producer-workspace-canvas .producer-tools-page{
  padding-top:46px;
  padding-bottom:80px;
}
.producer-workspace-canvas .producer-tools-live-cta,
.producer-workspace-canvas .producer-quick-setup,
.producer-workspace-canvas .producer-live-demand,
.producer-workspace-canvas .producer-qr-panel,
.producer-workspace-canvas .producer-referral-panel,
.producer-workspace-canvas .village-progress-card{
  border-radius:18px;
}
.producer-workspace-canvas .producer-tool-card{
  text-decoration:none;
}
.producer-workspace-canvas .producer-tool-card:hover{
  background:rgba(36,68,84,.92) !important;
  border-color:var(--producer-mint) !important;
}
.producer-workspace-canvas .producer-tool-card>i,
.producer-workspace-canvas .producer-toggle span>i{
  color:var(--producer-mint) !important;
}
.producer-workspace-canvas .producer-toggle span{
  background:var(--producer-surface-2) !important;
  color:#fff !important;
  border:1px solid var(--producer-line) !important;
}
.producer-workspace-canvas .producer-toggle input:checked+span{
  background:var(--producer-mint) !important;
  color:#0B141C !important;
  border-color:var(--producer-mint) !important;
}
.producer-workspace-canvas .producer-toggle input:checked+span :where(i,b,em){
  color:#0B141C !important;
}
.producer-workspace-canvas .producer-simple-check{
  color:#fff !important;
}
.producer-workspace-canvas .producer-proof-strip{
  border:1px solid var(--producer-line);
  border-radius:18px;
  overflow:hidden;
}
.producer-workspace-canvas .producer-qr-box{
  background:#fff !important; /* QR must remain high-contrast for scanning. */
  border:1px solid #fff;
}
.producer-workspace-canvas .village-progress-bar{
  background:rgba(96,114,116,.35) !important;
}
.producer-workspace-canvas .village-progress-bar i{
  background:var(--producer-mint) !important;
}

/* ---------- Claim / verification ---------- */
.claim-page-bg{
  padding:42px 18px 72px;
}
.claim-page-bg .claim-stage{
  margin:0 auto;
}
.claim-page-bg .claim-page-title{
  color:#fff !important;
}
.claim-page-bg .claim-surface,
.claim-page-bg .panel,
.claim-page-bg .notice{
  border-radius:18px;
}
.claim-page-bg .claim-surface h2,
.claim-page-bg .claim-surface label,
.claim-page-bg .claim-surface p{
  color:#fff !important;
}
.claim-page-bg .method-card{
  background:var(--producer-surface-2) !important;
  color:#fff !important;
  border:1px solid var(--producer-line) !important;
}
.claim-page-bg .method-card :where(strong,small){
  color:#fff !important;
}
.claim-page-bg .method-card:has(input:checked){
  background:var(--producer-mint) !important;
  border-color:var(--producer-mint) !important;
}
.claim-page-bg .method-card:has(input:checked) :where(strong,small){
  color:#0B141C !important;
}
.claim-page-bg .verification-code,
.claim-page-bg pre,
.claim-page-bg code{
  background:var(--producer-surface-2) !important;
  color:var(--producer-mint) !important;
  border-color:var(--producer-line) !important;
}

@media(max-width:760px){
  .producer-workspace-canvas,
  .claim-page-bg{
    background-attachment:scroll !important;
    background-position:center top !important;
  }
  .producer-workspace-canvas .dashboard{
    width:calc(100% - 20px);
    padding:24px 0 54px;
  }
  .producer-workspace-canvas .wizard-shell{
    padding:18px;
    border-radius:18px;
  }
  .producer-workspace-canvas .wizard-top{
    align-items:flex-start;
    flex-direction:column;
    gap:16px;
  }
  .producer-workspace-canvas .wizard-progress{
    width:100%;
    max-width:none;
    text-align:left;
  }
  .producer-workspace-canvas .wizard-step{
    min-height:0;
    margin-top:18px;
    padding:20px 16px;
  }
  .producer-workspace-canvas .wizard-shell h2{font-size:30px;}
  .producer-workspace-canvas .wizard-shell h3{font-size:27px;}
  .producer-workspace-canvas .wizard-nav{
    flex-wrap:wrap;
  }
  .producer-workspace-canvas .wizard-nav .btn{
    flex:1 1 calc(50% - 6px);
  }
  .producer-workspace-canvas .wizard-nav .wizard-back{
    margin-right:0;
  }
  .producer-workspace-canvas .dashboard-profile-table{
    display:block;
    overflow-x:auto;
  }
  .claim-page-bg{
    padding:24px 10px 48px;
  }
}
.claim-page-bg .panel :where(h1,h2,h3,h4,p,label,strong,small,li,a:not(.btn)),
.claim-page-bg .notice :where(h1,h2,h3,h4,p,label,strong,small,li,a:not(.btn)){
  color:#fff !important;
}
.claim-page-bg .notice{
  color:#fff !important;
}


/* =========================================================
   v1.4.20 — PROFILE COMPLETION UX + TRUE 14PX TYPOGRAPHY FLOOR
   ========================================================= */

/* The public profile exposes the information just entered and gives owners
   an unmistakable route back into edit mode. */
.profile-page .profile-section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin:30px 0 14px;
}
.profile-page .profile-section-heading h2{
  margin:0;
}
.profile-page .profile-inline-edit{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:0 13px;
  border:1px solid #607274;
  border-radius:12px;
  background:#10212c;
  color:#f0fff5 !important;
  font-size:14px !important;
  font-weight:850;
  text-decoration:none;
}
.profile-page .profile-inline-edit:hover{
  border-color:#f0fff5;
  background:#244454;
}
.profile-page .profile-offers-panel{
  margin-top:20px;
}
.profile-page .profile-offers-panel .profile-section-heading{
  margin:0 0 16px;
}
.profile-page .profile-offer-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.profile-page .profile-offer-grid>span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:9px 12px;
  border:1px solid #607274;
  border-radius:12px;
  background:#10212c;
  color:#fff;
  font-size:14px !important;
  font-weight:800;
}
.profile-page .profile-offer-grid i{
  color:#f0fff5;
}
.profile-page .profile-appointment-note{
  display:flex;
  align-items:center;
  gap:8px;
  margin:14px 0 0 !important;
  color:rgba(255,255,255,.78) !important;
  font-size:14px !important;
}

/* Dashboard tables and utility links never fall below the platform floor,
   even if an older, more specific selector exists earlier in the sheet. */
.dashboard-profile-table :where(th,td,a,strong,button),
.producer-workspace-canvas .dashboard-quick-actions :where(a,button),
.producer-workspace-canvas .wizard-progress,
.producer-workspace-canvas .wizard-context,
.producer-workspace-canvas .step-help{
  font-size:14px !important;
}

@media(max-width:700px){
  .profile-page .profile-section-heading{
    align-items:flex-start;
  }
}

/* =========================================================
   v1.4.23 — PUBLIC PROFILE IDENTITY / PHOTO HERO
   The profile identity lives on the photo; owner/meta actions sit beneath it.
   ========================================================= */
.profile-page .profile-hero-photo{
  position:relative;
  width:100%;
  margin:0 0 14px;
  overflow:hidden;
  border:2px solid #607274;
  border-radius:18px;
  background:#0B141C;
  box-shadow:0 22px 52px rgba(0,0,0,.34);
}
.profile-page .profile-hero-photo::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(11,20,28,.08) 28%,rgba(11,20,28,.34) 58%,rgba(11,20,28,.92) 100%);
}
.profile-page .profile-hero-photo img{
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  max-height:560px;
  object-fit:cover;
  object-position:center;
}
.profile-page .profile-hero-overlay{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  padding:28px 30px 26px;
  color:#fff;
}
.profile-page .profile-hero-badges{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 12px;
}
.profile-page .profile-hero-badges .badge,
.profile-page .profile-hero-badges .profile-founder-badge{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  border:1px solid rgba(240,255,245,.48);
  border-radius:999px;
  background:rgba(11,20,28,.74) !important;
  color:#f0fff5 !important;
  font-size:14px !important;
  font-weight:850;
  line-height:1.2;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.profile-page .profile-hero-overlay h1{
  margin:0;
  max-width:90%;
  color:#fff !important;
  font-size:clamp(38px,5vw,64px);
  line-height:.98;
  text-shadow:0 3px 18px rgba(0,0,0,.72);
}
.profile-page .profile-under-photo-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 24px;
  padding:0 2px;
  color:rgba(255,255,255,.82);
  font-size:16px !important;
  line-height:1.5;
}
.profile-page .profile-under-photo-meta .profile-tagline-text,
.profile-page .profile-under-photo-meta .profile-tagline-separator{
  color:rgba(255,255,255,.82);
  font-size:16px !important;
}
.profile-page .profile-under-photo-meta .profile-add-info-link{
  font-size:16px !important;
}
.profile-page .profile-identity-no-photo{
  margin:0 0 14px;
  padding:26px;
  border:1px solid #607274;
  border-radius:18px;
  background:#0B141C;
  box-shadow:0 18px 42px rgba(0,0,0,.28);
}
.profile-page .profile-identity-no-photo h1{
  margin:8px 0 0;
}

@media(max-width:700px){
  .profile-page .profile-hero-photo{
    border-radius:16px;
  }
  .profile-page .profile-hero-photo img{
    aspect-ratio:4 / 3;
  }
  .profile-page .profile-hero-overlay{
    padding:20px 18px 18px;
  }
  .profile-page .profile-hero-overlay h1{
    max-width:100%;
    font-size:clamp(34px,10vw,48px);
  }
  .profile-page .profile-hero-badges{
    gap:7px;
    margin-bottom:10px;
  }
  .profile-page .profile-under-photo-meta{
    margin-bottom:20px;
  }
}

/* =========================================================
   v1.4.24 — PUBLIC PROFILE CONTACT HIERARCHY
   Removes redundant permanent-offers card and gives Contacto y visita
   a clear title, stacked full-width actions, and one contained report link.
   ========================================================= */
.profile-page .profile-contact-panel,
.profile-page .profile-contact-empty{
  padding:26px;
}
.profile-page .profile-contact-title{
  margin:0 0 22px;
  color:#fff !important;
  font-family:var(--font-serif,Georgia,serif);
  font-size:30px !important;
  line-height:1.05;
  letter-spacing:-.02em;
}
.profile-page .profile-contact-price{
  margin:0 0 18px !important;
  font-size:16px !important;
}
.profile-page .profile-contact-detail{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:15px 0;
  border-top:1px solid rgba(96,114,116,.5);
  color:#fff;
  font-size:15px !important;
  line-height:1.45;
}
.profile-page .profile-contact-detail strong,
.profile-page .profile-contact-detail span,
.profile-page .profile-contact-detail a{
  font-size:15px !important;
}
.profile-page .profile-contact-detail a{
  color:#f0fff5 !important;
  overflow-wrap:anywhere;
}
.profile-page .profile-contact-secondary-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  padding:14px 0 4px;
  border-top:1px solid rgba(96,114,116,.5);
}
.profile-page .profile-contact-secondary-links a{
  color:rgba(240,255,245,.88) !important;
  font-size:14px !important;
  font-weight:750;
}
.profile-page .profile-contact-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
  width:100%;
  margin-top:20px;
}
.profile-page .profile-contact-actions .profile-contact-btn{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:100%;
  min-height:52px;
  padding:0 16px;
  border:1px solid #607274 !important;
  border-radius:13px;
  color:#fff !important;
  font-size:15px !important;
  font-weight:850;
  box-shadow:none;
}
.profile-page .profile-contact-actions .profile-contact-whatsapp{
  background:#244454 !important;
}
.profile-page .profile-contact-actions .profile-contact-website{
  background:#324f5c !important;
}
.profile-page .profile-contact-actions .profile-contact-maps{
  background:#10212c !important;
}
.profile-page .profile-contact-actions .profile-contact-btn:hover{
  border-color:#f0fff5 !important;
  transform:translateY(-1px);
}
.profile-page .profile-contact-report{
  display:flex;
  align-items:center;
  gap:8px;
  width:100%;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(96,114,116,.5);
  color:rgba(255,255,255,.68) !important;
  font-size:14px !important;
  font-weight:700;
  text-decoration:none;
}
.profile-page .profile-contact-report:hover{
  color:#f0fff5 !important;
}
@media(max-width:700px){
  .profile-page .profile-contact-panel,
  .profile-page .profile-contact-empty{
    padding:22px 18px;
  }
  .profile-page .profile-contact-title{
    font-size:28px !important;
  }
}


/* =========================================================
   v1.4.25 — PROFILE SAVE NOTICE + HERO POSITION + PRICE CONTEXT
   - save notice lives over the photographic canvas, then folds away
   - identity overlay is top-left on the profile photo
   - starting price is contextual and sits after contact details
   ========================================================= */
.profile-public-canvas > .profile-transient-flash{
  width:min(1180px,calc(100% - 36px));
  max-height:110px;
  overflow:hidden;
  margin:18px auto 0;
  padding:13px 16px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:11px;
  background:#f0fff5;
  color:#0B141C;
  box-shadow:0 14px 34px rgba(0,0,0,.24);
  opacity:1;
  transition:max-height .48s ease,opacity .30s ease,margin .48s ease,padding .48s ease,border-width .48s ease;
}
.profile-public-canvas > .profile-transient-flash.is-closing{
  max-height:0;
  margin-top:0;
  margin-bottom:0;
  padding-top:0;
  padding-bottom:0;
  border-width:0;
  opacity:0;
}
.profile-page .profile-hero-photo::after{
  background:linear-gradient(180deg,rgba(11,20,28,.94) 0%,rgba(11,20,28,.62) 28%,rgba(11,20,28,.24) 56%,rgba(11,20,28,.06) 100%);
}
.profile-page .profile-hero-overlay{
  top:0;
  bottom:auto;
  padding:26px 30px 28px;
}
.profile-page .profile-contact-price{
  margin:0 !important;
  padding-top:15px;
  padding-bottom:15px;
}
.profile-page .profile-contact-price strong{
  color:rgba(255,255,255,.74) !important;
}
.profile-page .profile-contact-price span{
  color:#f0fff5 !important;
  font-size:16px !important;
  font-weight:850;
}
@media(max-width:700px){
  .profile-public-canvas > .profile-transient-flash{
    width:calc(100% - 24px);
    margin-top:12px;
  }
  .profile-page .profile-hero-overlay{
    top:0;
    bottom:auto;
    padding:18px 18px 20px;
  }
}


/* =========================================================
   v1.4.26 — UNIFIED MEMBER WORKSPACE + PROFILE QUICK CONTROLS
   Dark producer-facing pages, clear profile management cards, and owner
   controls directly beneath Contacto y visita.
   ========================================================= */

/* ---------- Solicitudes: no more mint/white backend bands ---------- */
.requests-board-page{
  min-height:calc(100vh - 76px);
  background:
    linear-gradient(105deg,rgba(7,15,22,.94),rgba(11,20,28,.86) 48%,rgba(36,68,84,.78)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top / cover fixed no-repeat;
  color:#fff;
}
.requests-board-page .requests-board-hero,
.requests-board-page .producer-request-inbox,
.requests-board-page .public-request-board,
.requests-board-page .request-producer-cta{
  background:rgba(11,20,28,.76) !important;
  color:#fff !important;
  border-top:1px solid rgba(96,114,116,.42);
}
.requests-board-page .requests-board-hero{
  background:linear-gradient(105deg,rgba(11,20,28,.88),rgba(36,68,84,.58)) !important;
}
.requests-board-page .producer-request-inbox{
  background:rgba(16,33,44,.84) !important;
}
.requests-board-page .public-request-board{
  background:rgba(11,20,28,.88) !important;
}
.requests-board-page :where(h1,h2,h3,h4,p,strong,b,small,label,span,time,li){
  color:#fff;
}
.requests-board-page .mo-kicker{
  color:#f0fff5 !important;
}
.requests-board-page .section-heading-row p,
.requests-board-page .request-producer-cta p,
.requests-board-page .requests-board-hero p{
  color:rgba(255,255,255,.74) !important;
}
.requests-board-page .section-heading-row select{
  background:#fff !important;
  color:#0B141C !important;
  border:1px solid #607274 !important;
  min-height:48px;
  font-size:15px !important;
}
.requests-board-page .mo-request-card,
.requests-board-page .mo-request-empty{
  background:rgba(11,20,28,.96) !important;
  color:#fff !important;
  border:1px solid #607274 !important;
  box-shadow:0 18px 42px rgba(0,0,0,.26) !important;
  border-radius:18px;
}
.requests-board-page .mo-request-card h3,
.requests-board-page .mo-request-card strong{
  color:#fff !important;
}
.requests-board-page .mo-request-card li{
  color:rgba(255,255,255,.76) !important;
  border-bottom-color:rgba(96,114,116,.42) !important;
}
.requests-board-page .mo-request-card-bottom{
  border-top-color:rgba(96,114,116,.48) !important;
}
.requests-board-page .mo-request-card-bottom time{
  color:rgba(255,255,255,.62) !important;
}
.requests-board-page .mo-request-card-bottom span,
.requests-board-page .mo-request-card a{
  color:#f0fff5 !important;
}
.requests-board-page .mo-request-empty{
  padding:34px;
  color:rgba(255,255,255,.72) !important;
}
.requests-board-page .mo-text-link{
  color:#f0fff5 !important;
  font-weight:850;
}
.requests-board-page :where(p,a,span,small,label,select,button,li,time){
  font-size:14px;
}

/* ---------- Dashboard home: useful cards instead of one dense table row ---------- */
.producer-workspace-canvas .dashboard-home-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin:0 0 24px;
  padding:28px;
  background:rgba(11,20,28,.95);
  border:1px solid var(--producer-line);
  border-radius:20px;
  box-shadow:0 18px 42px rgba(0,0,0,.26);
}
.producer-workspace-canvas .dashboard-home-head>div:first-child{
  max-width:700px;
}
.producer-workspace-canvas .dashboard-home-head h1{
  margin:7px 0 10px;
  color:#fff;
  font-family:var(--font-serif,Georgia,serif);
  font-size:clamp(34px,4.5vw,52px);
  line-height:1;
}
.producer-workspace-canvas .dashboard-home-head p{
  margin:0;
  color:rgba(255,255,255,.72) !important;
  font-size:16px !important;
  line-height:1.55;
}
.producer-workspace-canvas .dashboard-add-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:9px;
  max-width:430px;
}
.producer-workspace-canvas .dashboard-add-actions .btn{
  min-height:46px;
  margin:0;
  border:1px solid var(--producer-line) !important;
  font-size:14px !important;
}
.producer-workspace-canvas .dashboard-profile-manage-grid{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
}
.producer-workspace-canvas .dashboard-profile-manage-card{
  width:calc(50% - 9px);
  padding:24px;
  background:rgba(11,20,28,.96);
  border:1px solid var(--producer-line);
  border-radius:20px;
  box-shadow:0 18px 42px rgba(0,0,0,.28);
}
.producer-workspace-canvas .dashboard-profile-manage-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:20px;
}
.producer-workspace-canvas .dashboard-profile-type{
  color:#f0fff5 !important;
  font-size:14px !important;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.producer-workspace-canvas .dashboard-profile-manage-card h2{
  margin:6px 0 0;
  color:#fff !important;
  font-family:var(--font-serif,Georgia,serif);
  font-size:30px;
  line-height:1.05;
}
.producer-workspace-canvas .dashboard-view-profile{
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  color:#f0fff5 !important;
  font-size:14px !important;
  font-weight:850;
  text-decoration:none;
}
.producer-workspace-canvas .dashboard-completion-block{
  margin:0 0 20px;
  padding:16px;
  background:rgba(36,68,84,.24);
  border:1px solid rgba(96,114,116,.68);
  border-radius:14px;
}
.producer-workspace-canvas .dashboard-completion-block>div:first-child{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.producer-workspace-canvas .dashboard-completion-block strong,
.producer-workspace-canvas .dashboard-completion-block span,
.producer-workspace-canvas .dashboard-completion-block small{
  color:#fff !important;
  font-size:14px !important;
}
.producer-workspace-canvas .dashboard-completion-block span{
  color:#f0fff5 !important;
  font-weight:900;
}
.producer-workspace-canvas .dashboard-completion-block small{
  display:block;
  margin-top:8px;
  color:rgba(255,255,255,.62) !important;
}
.producer-workspace-canvas .dashboard-completion-bar{
  height:8px;
  margin-top:9px;
  overflow:hidden;
  background:rgba(96,114,116,.42);
  border-radius:999px;
}
.producer-workspace-canvas .dashboard-completion-bar i{
  display:block;
  height:100%;
  background:#dfb85f;
  border-radius:999px;
}
.producer-workspace-canvas .dashboard-profile-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.producer-workspace-canvas .dashboard-profile-actions .btn{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  min-height:46px;
  margin:0;
  padding:0 14px;
  border:1px solid var(--producer-line) !important;
  border-radius:12px;
  color:#fff !important;
  font-size:14px !important;
  box-shadow:none;
}
.producer-workspace-canvas .dashboard-profile-actions .dashboard-action-primary{
  background:#244454 !important;
}
.producer-workspace-canvas .dashboard-profile-actions .dashboard-action-today{
  background:#355866 !important;
}
.producer-workspace-canvas .dashboard-profile-actions .dashboard-action-requests{
  background:#17303e !important;
}
.producer-workspace-canvas .dashboard-profile-actions .dashboard-action-tools{
  background:#294b58 !important;
}
.producer-workspace-canvas .dashboard-profile-actions .dashboard-action-expressions{
  background:#10212c !important;
}
.producer-workspace-canvas .dashboard-profile-actions .dashboard-action-managers{
  background:#3a5159 !important;
}
.producer-workspace-canvas .dashboard-profile-actions .btn:hover{
  border-color:#f0fff5 !important;
  transform:translateY(-1px);
}
.producer-workspace-canvas .dashboard-profile-delete-form{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(96,114,116,.42);
}
.producer-workspace-canvas .dashboard-profile-delete-form .dashboard-delete-link{
  font-size:14px !important;
}

/* Workspace flashes should belong to the same dark visual system. */
.producer-workspace-canvas>.dashboard>.flash,
.producer-workspace-canvas .dashboard-main-full>.flash{
  background:rgba(36,68,84,.94) !important;
  color:#fff !important;
  border:1px solid var(--producer-line) !important;
  border-radius:12px;
}

/* ---------- Owner controls on the public profile ---------- */
.profile-page .profile-owner-tools{
  margin-top:16px;
  padding:26px;
  background:#0B141C !important;
  color:#fff !important;
  border:1px solid #607274 !important;
  border-radius:18px;
  box-shadow:0 18px 42px rgba(0,0,0,.26);
}
.profile-page .profile-owner-tools-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.profile-page .profile-owner-tools-head>span{
  padding:7px 9px;
  background:#244454;
  border:1px solid #607274;
  border-radius:9px;
  color:#f0fff5;
  font-size:14px !important;
  font-weight:850;
}
.profile-page .profile-owner-tools-kicker{
  margin-bottom:7px;
  color:#dfb85f;
  font-size:14px !important;
  font-weight:900;
  letter-spacing:.08em;
}
.profile-page .profile-owner-tools .profile-contact-title{
  margin-bottom:0;
}
.profile-page .profile-owner-tools-intro{
  margin:12px 0 18px;
  color:rgba(255,255,255,.68) !important;
  font-size:15px !important;
  line-height:1.5;
}
.profile-page .profile-owner-tools-actions{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.profile-page .profile-owner-tools-actions .profile-owner-tool{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:11px;
  width:100%;
  min-height:50px;
  margin:0;
  padding:0 15px;
  border:1px solid #607274 !important;
  border-radius:12px;
  color:#fff !important;
  font-size:15px !important;
  font-weight:850;
  box-shadow:none;
}
.profile-page .profile-owner-tools-actions .profile-owner-tool i{
  width:18px;
  text-align:center;
}
.profile-page .profile-owner-tool-edit{background:#244454 !important}
.profile-page .profile-owner-tool-today{background:#355866 !important}
.profile-page .profile-owner-tool-requests{background:#17303e !important}
.profile-page .profile-owner-tool-free{background:#294b58 !important}
.profile-page .profile-owner-tool-expressions{background:#10212c !important}
.profile-page .profile-owner-tool-manager{background:#3a5159 !important}
.profile-page .profile-owner-tool-add{background:#203943 !important}
.profile-page .profile-owner-tools-actions .profile-owner-tool:hover{
  border-color:#f0fff5 !important;
  transform:translateY(-1px);
}

@media(max-width:900px){
  .producer-workspace-canvas .dashboard-home-head{
    align-items:stretch;
    flex-direction:column;
  }
  .producer-workspace-canvas .dashboard-add-actions{
    justify-content:flex-start;
    max-width:none;
  }
  .producer-workspace-canvas .dashboard-profile-manage-card{
    width:100%;
  }
}
@media(max-width:700px){
  .requests-board-page{
    background-attachment:scroll;
  }
  .requests-board-page .producer-request-inbox,
  .requests-board-page .public-request-board{
    padding:44px 0 54px;
  }
  .requests-board-page .section-heading-row{
    gap:18px;
  }
  .requests-board-page .section-heading-row h2{
    font-size:36px;
  }
  .producer-workspace-canvas .dashboard-home-head{
    padding:20px 16px;
  }
  .producer-workspace-canvas .dashboard-add-actions .btn{
    width:100%;
  }
  .producer-workspace-canvas .dashboard-profile-manage-card{
    padding:20px 16px;
  }
  .producer-workspace-canvas .dashboard-profile-manage-top{
    flex-direction:column;
  }
  .producer-workspace-canvas .dashboard-profile-actions .btn{
    width:100%;
  }
  .profile-page .profile-owner-tools{
    padding:22px 18px;
  }
  .profile-page .profile-owner-tools-head{
    flex-direction:column;
  }
}

/* =========================================================
   v1.4.27 — PUBLIC PROFILE HIERARCHY REFINEMENT
   Contact/owner rail scrolls normally, profile information gets its own
   medium-tone surface, and hero badges share one aligned visual baseline.
   ========================================================= */

/* Contacto y visita + Gestionar este perfil should travel with the page. */
.profile-page .profile-aside{
  position:static !important;
  top:auto !important;
  align-self:start;
}

/* Permanent profile facts are a real card, not loose text over the photo. */
.profile-page .profile-information-panel{
  margin:24px 0 0;
  padding:24px 26px 26px;
  background:#244454;
  border:1px solid #607274;
  border-radius:18px;
  box-shadow:0 18px 42px rgba(0,0,0,.24);
}
.profile-page .profile-information-panel .profile-section-heading{
  margin:0 0 16px;
}
.profile-page .profile-information-panel .profile-section-heading h2{
  color:#fff !important;
}
.profile-page .profile-information-panel .profile-inline-edit{
  background:#0B141C !important;
  border-color:#607274 !important;
  color:#f0fff5 !important;
}
.profile-page .profile-information-panel .profile-inline-edit:hover{
  background:#10212c !important;
  border-color:#f0fff5 !important;
}
.profile-page .profile-information-panel .fact{
  border-top-color:rgba(240,255,245,.24);
}
.profile-page .profile-information-panel .fact small{
  color:rgba(255,255,255,.70) !important;
}

/* Both hero pills sit on the same vertical baseline and same physical height. */
.profile-page .profile-hero-badges{
  align-items:center !important;
}
.profile-page .profile-hero-badges .badge,
.profile-page .profile-hero-badges .profile-founder-badge{
  margin:0 !important;
  min-height:34px;
  padding:6px 11px;
  line-height:1.2;
}
.profile-page .profile-hero-badges .badge{
  background:rgba(11,20,28,.82) !important;
  border-color:rgba(240,255,245,.52) !important;
}
.profile-page .profile-hero-badges .profile-founder-badge{
  background:rgba(36,68,84,.94) !important;
  border:2px solid #dfb85f !important;
  color:#fff !important;
}

@media(max-width:700px){
  .profile-page .profile-information-panel{
    padding:21px 18px 22px;
  }
}

/* =========================================================
   v1.4.19 — producer app utility menu + toast feedback
   - bottom bar remains the primary navigation
   - top menu contains secondary utilities only, stacked vertically
   - all app success/error feedback appears as visible fixed toasts
   - install-app prompt removed from inside the installed producer app
   ========================================================= */
.producer-native-menu>nav.producer-native-menu-panel{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:4px!important;
  width:min(350px,calc(100vw - 20px))!important;
  padding:10px!important;
  background:#0B141C!important;
  border:1px solid rgba(240,255,245,.18)!important;
  border-radius:18px!important;
  box-shadow:0 24px 60px rgba(0,0,0,.42)!important;
}
.producer-native-menu>nav.producer-native-menu-panel>a,
.producer-native-menu>nav.producer-native-menu-panel>button,
.producer-native-menu>nav.producer-native-menu-panel .producer-native-menu-group>a{
  display:flex!important;
  flex:0 0 auto!important;
  width:100%!important;
  min-height:50px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  margin:0!important;
  padding:0 13px!important;
  border-radius:12px!important;
  text-align:left!important;
  white-space:normal!important;
}
.producer-native-menu>nav.producer-native-menu-panel .producer-native-menu-group{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:3px!important;
  width:100%!important;
  margin:3px 0!important;
}
.producer-native-menu-reminder{
  margin:2px 0 5px!important;
  background:#f0fff5!important;
  color:#0B141C!important;
  border:0!important;
}
.producer-native-menu-reminder i,
.producer-native-menu>nav>button.producer-native-menu-reminder i{
  color:#244454!important;
}
.producer-native-menu-reminder:hover{
  background:#fff!important;
  color:#0B141C!important;
}
.producer-native-menu-reminder.is-enabled{
  background:#dff7e8!important;
}
.producer-native-menu-reminder.is-loading i{
  animation:mo-bell-pulse .7s ease-in-out infinite alternate;
}
@keyframes mo-bell-pulse{from{transform:scale(.92);opacity:.62}to{transform:scale(1.08);opacity:1}}

.producer-app-toast-host{
  position:fixed;
  z-index:10050;
  top:78px;
  right:16px;
  width:min(430px,calc(100vw - 32px));
  display:flex;
  flex-direction:column;
  gap:10px;
  pointer-events:none;
}
.producer-app-toast{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) 30px;
  align-items:start;
  gap:11px;
  min-height:64px;
  padding:15px 13px 15px 16px;
  border:2px solid transparent;
  border-radius:16px;
  color:#fff;
  font-size:15px;
  font-weight:800;
  line-height:1.4;
  box-shadow:0 20px 48px rgba(0,0,0,.34);
  opacity:0;
  transform:translateY(-12px) scale(.98);
  transition:opacity .2s ease,transform .2s ease;
  pointer-events:auto;
}
.producer-app-toast.is-visible{opacity:1;transform:none}
.producer-app-toast[data-server-toast]{opacity:1;transform:none}
.producer-app-toast.is-leaving{opacity:0;transform:translateY(-8px) scale(.98)}
.producer-app-toast.is-success{background:#17623f;border-color:#76c999}
.producer-app-toast.is-error{background:#8a2342;border-color:#ef9eb5}
.producer-app-toast.is-info{background:#244454;border-color:#86a8b8}
.producer-app-toast>i{margin-top:2px;font-size:19px;color:#fff}
.producer-app-toast>span{min-width:0}
.producer-app-toast>button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  padding:0;
  border:0;
  border-radius:8px;
  background:rgba(255,255,255,.14);
  color:#fff;
  cursor:pointer;
}
.producer-app-toast>button:hover{background:rgba(255,255,255,.24)}

/* The bottom bar already owns Today, My page, Requests, and Account. The top
   menu is intentionally not a second copy of that navigation. */
.producer-app-install-card{display:none!important}

@media(max-width:700px){
  .producer-native-menu>nav.producer-native-menu-panel{
    position:fixed!important;
    top:66px!important;
    right:10px!important;
    left:10px!important;
    width:auto!important;
    max-height:calc(100vh - 82px)!important;
    overflow:auto!important;
    border-radius:0 0 18px 18px!important;
  }
  .producer-app-toast-host{
    top:76px;
    right:10px;
    width:calc(100vw - 20px);
  }
  .producer-app-toast{font-size:14px}
}


/* =========================================================
   v1.4.22 — automatic push lifecycle + first-use permission
   - no reminder control hidden in the utility menu
   - one prominent permission card only while permission is unresolved
   - once granted, the phone re-registers automatically on app open
   ========================================================= */
.producer-push-onboarding{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:12px 14px;
  margin:0 0 16px;
  padding:15px;
  background:#f0fff5;
  border:1px solid rgba(11,20,28,.16);
  border-radius:16px;
  color:#0B141C;
  box-shadow:0 14px 32px rgba(0,0,0,.16);
}
.producer-push-onboarding[hidden]{display:none!important}
.producer-push-onboarding-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:13px;
  background:#0B141C;
  color:#f0fff5;
  font-size:20px;
}
.producer-push-onboarding-copy{display:grid;gap:3px;min-width:0}
.producer-push-onboarding-copy strong{font-size:15px;line-height:1.25;color:#0B141C}
.producer-push-onboarding-copy span{font-size:14px;line-height:1.4;color:#244454}
.producer-push-onboarding>button[data-enable-push]{
  min-height:44px;
  padding:0 16px;
  border:0;
  border-radius:12px;
  background:#0B141C;
  color:#fff;
  font:inherit;
  font-size:14px;
  font-weight:900;
  letter-spacing:.035em;
  cursor:pointer;
}
.producer-push-onboarding>button[data-enable-push]:disabled{opacity:.66;cursor:wait}
.producer-push-onboarding-later{
  grid-column:2/4;
  justify-self:end;
  padding:2px 0;
  border:0;
  background:transparent;
  color:#244454;
  font:inherit;
  font-size:14px;
  font-weight:800;
  text-decoration:underline;
  cursor:pointer;
}
.producer-push-onboarding.is-blocked{
  background:#fff4f6;
  border-color:#dba0ad;
}
.producer-push-onboarding.is-blocked .producer-push-onboarding-icon{background:#8a2342;color:#fff}

@media(max-width:700px){
  .producer-push-onboarding{
    grid-template-columns:42px minmax(0,1fr);
    padding:14px;
    gap:10px 12px;
  }
  .producer-push-onboarding-icon{width:42px;height:42px}
  .producer-push-onboarding>button[data-enable-push]{grid-column:1/3;width:100%}
  .producer-push-onboarding-later{grid-column:1/3;justify-self:center}
}

/* Producer push/message reader + delivery diagnostics v1.4.23 */
.producer-message-reader-backdrop{position:fixed;inset:0;z-index:10050;background:rgba(11,20,28,.72);display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(4px)}
.producer-message-reader{width:min(520px,100%);background:#fff;color:#0b141c;border-radius:20px;padding:28px 24px;box-shadow:0 24px 70px rgba(0,0,0,.28);text-align:left}
.producer-message-reader-icon{width:54px;height:54px;border-radius:15px;background:#f0fff5;display:grid;place-items:center;font-size:24px;margin-bottom:18px}
.producer-message-reader small{display:block;font-weight:800;letter-spacing:.08em;font-size:12px;color:#51616d;margin-bottom:7px}
.producer-message-reader h2{font-size:25px;line-height:1.15;margin:0 0 12px;color:#0b141c}
.producer-message-reader p{font-size:17px;line-height:1.55;margin:0 0 22px;color:#263844;white-space:normal}
.producer-message-reader button,.producer-message-reader-button{width:100%;display:flex;align-items:center;justify-content:center;min-height:52px;border:0;border-radius:13px;background:#0b141c;color:#fff;text-decoration:none;font-weight:800;font-size:14px;cursor:pointer}
.admin-push-delivery-list{display:grid;gap:10px;margin-top:16px}
.admin-push-delivery-item{display:grid;grid-template-columns:minmax(180px,1.25fr) repeat(3,minmax(150px,1fr));gap:10px;align-items:center;padding:13px 14px;border:1px solid #dbe4e9;border-radius:14px;background:#fff}
.admin-push-delivery-item>div{display:flex;flex-direction:column;gap:5px;min-width:0}.admin-push-delivery-item small{color:#647480;overflow-wrap:anywhere}
@media(max-width:850px){.admin-push-delivery-item{grid-template-columns:1fr 1fr}.producer-message-reader{padding:24px 20px}.producer-message-reader h2{font-size:23px}}

/* =========================================================
   v1.4.24 — producer inbox + notification badge polish
   ========================================================= */
.admin-push-test-panel .btn{
  gap:11px;
}
.admin-push-test-panel .btn>i{
  flex:0 0 auto;
  margin:0;
  line-height:1;
}
.producer-native-menu-unread,
.producer-native-menu-messages>b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:#8a2342;
  color:#fff;
  font-size:11px;
  font-weight:900;
  line-height:1;
}
.producer-native-menu-unread{margin-left:1px}
.producer-native-menu-messages>span{flex:1}
.producer-native-menu-messages>b{margin-left:auto}

.producer-message-inbox{
  margin-top:16px;
}
.producer-message-inbox-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:22px;
  padding:24px;
  border:2px solid var(--slate);
  border-radius:22px;
  background:var(--ink);
  box-shadow:0 16px 34px rgba(0,0,0,.20);
}
.producer-message-inbox-head>div{max-width:540px}
.producer-message-inbox-head>div>span{
  display:block;
  margin-bottom:5px;
  color:var(--mint);
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}
.producer-message-inbox-head h1{
  margin:0;
  color:#fff;
  font-size:clamp(27px,6vw,38px);
  line-height:1.08;
}
.producer-message-inbox-head p{
  margin:9px 0 0;
  color:rgba(255,255,255,.70);
  font-size:14px;
  line-height:1.55;
}
.producer-message-inbox-clear{flex:0 0 auto}
.producer-message-inbox-clear button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border:2px solid var(--slate);
  border-radius:12px;
  background:#102532;
  color:var(--mint);
  font:inherit;
  font-size:12px;
  font-weight:900;
  letter-spacing:.045em;
  cursor:pointer;
}
.producer-message-inbox-list{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.producer-message-inbox-item{
  position:relative;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 38px;
  gap:13px;
  align-items:start;
  padding:17px;
  border:2px solid var(--slate);
  border-radius:18px;
  background:var(--ink);
  box-shadow:0 12px 28px rgba(0,0,0,.15);
}
.producer-message-inbox-item.is-unread{
  border-color:var(--mint);
}
.producer-message-inbox-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:12px;
  background:#102532;
  color:var(--mint);
  font-size:18px;
}
.producer-message-inbox-item.is-unread .producer-message-inbox-icon{
  background:var(--mint);
  color:var(--ink);
}
.producer-message-inbox-copy{min-width:0}
.producer-message-inbox-meta{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:5px;
}
.producer-message-inbox-meta span{
  color:rgba(255,255,255,.56);
  font-size:12px;
  font-weight:750;
}
.producer-message-inbox-meta b{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:0 7px;
  border-radius:7px;
  background:var(--mint);
  color:var(--ink);
  font-size:10px;
  font-weight:950;
  letter-spacing:.07em;
}
.producer-message-inbox-copy>strong{
  display:block;
  color:#fff;
  font-size:17px;
  line-height:1.28;
}
.producer-message-inbox-copy>p{
  margin:6px 0 0;
  color:rgba(255,255,255,.70);
  font-size:14px;
  line-height:1.5;
}
.producer-message-inbox-copy>a{
  display:inline-block;
  margin-top:10px;
  color:var(--mint);
  text-decoration:none;
  font-size:12px;
  font-weight:900;
  letter-spacing:.035em;
}
.producer-message-inbox-archive button{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border:1px solid var(--slate);
  border-radius:10px;
  background:#102532;
  color:rgba(255,255,255,.72);
  cursor:pointer;
}
.producer-message-inbox-archive button:hover{color:var(--mint);border-color:var(--mint)}
.producer-message-inbox-empty{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:230px;
  margin-top:14px;
  padding:30px;
  border:2px dashed var(--slate);
  border-radius:20px;
  background:rgba(11,20,28,.72);
  text-align:center;
}
.producer-message-inbox-empty>i{font-size:34px;color:var(--mint);margin-bottom:13px}
.producer-message-inbox-empty>strong{color:#fff;font-size:18px}
.producer-message-inbox-empty>span{margin-top:6px;color:rgba(255,255,255,.66);font-size:14px}

@media(max-width:620px){
  .producer-message-inbox-head{align-items:stretch;flex-direction:column;padding:20px 18px}
  .producer-message-inbox-clear button{width:100%}
  .producer-message-inbox-item{grid-template-columns:38px minmax(0,1fr) 34px;gap:10px;padding:14px}
  .producer-message-inbox-icon{width:38px;height:38px}
  .producer-message-inbox-archive button{width:34px;height:34px}
}

/* =========================================================
   v1.4.27 — SEARCH-FIRST DISCOVERY
   Solicitudes retired from the product. Hoy opens on live cards, then a
   compact hotel-style search rail. Public discovery canvases are dark;
   mint remains an accent, never a page/section background.
   ========================================================= */

/* Homepage live section: remove the old mint slab. */
.home-live-now,
.home-live-mint{
  background:#0b141c !important;
  color:#fff !important;
}
.home-live-mint{
  background:
    linear-gradient(rgba(11,20,28,.92),rgba(11,20,28,.92)),
    url('/uploads/bg1-top-shot-magueyes.webp') center/cover fixed no-repeat !important;
}
.home-live-intro>p,
.home-live-stats span{color:rgba(255,255,255,.72) !important}
.home-live-stats strong{color:#fff !important}
.home-live-empty{background:rgba(11,20,28,.94) !important;color:#fff !important;border-color:#607274 !important}
.home-live-empty p{color:rgba(255,255,255,.72) !important}

/* Hoy: dark photographic canvas from the first pixel below the header. */
.live-finder-page{
  background:#0b141c !important;
  color:#fff !important;
}
.live-finder-hero-cards{
  min-height:0 !important;
  padding:34px 0 30px;
  align-items:flex-start;
}
.live-finder-hero-cards .live-finder-hero-bg{
  background:
    linear-gradient(180deg,rgba(7,15,22,.88),rgba(11,20,28,.94)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top/cover no-repeat !important;
}
.live-finder-hero-cards .live-finder-hero-inner{
  padding-top:18px !important;
  padding-bottom:0 !important;
}
.live-finder-now-label{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 17px;
  color:#fff;
  font-size:14px;
  font-weight:900;
  letter-spacing:.14em;
}
.live-finder-now-label i{
  width:9px;height:9px;border-radius:50%;background:#57a477;
  box-shadow:0 0 0 5px rgba(87,164,119,.15);
}
.live-finder-featured-grid{
  position:relative;
  z-index:2;
  flex-wrap:nowrap;
}
.live-finder-featured-grid .live-palenque-card{width:calc(33.333% - 16px)}
.live-finder-no-live{
  position:relative;z-index:2;display:flex;align-items:center;gap:12px;
  padding:28px;border:1px solid rgba(255,255,255,.18);border-radius:18px;
  background:rgba(11,20,28,.86);color:rgba(255,255,255,.75)
}

/* One compact row directly beneath the live cards. */
.live-finder-controls{
  padding:14px 0 18px !important;
  background:#0b141c !important;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.live-filter-form-inline{
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr 1fr auto;
  align-items:end;
  gap:0;
  padding:0 !important;
  overflow:hidden;
  background:#fff !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:15px !important;
  box-shadow:0 16px 36px rgba(0,0,0,.24) !important;
}
.live-filter-form-inline .live-filter-field{
  min-width:0;
  padding:9px 13px 10px;
  border-right:1px solid rgba(11,20,28,.12);
}
.live-filter-form-inline .live-filter-field>span{
  display:block;
  margin:0 0 2px;
  color:#607274;
  font-size:11px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.live-filter-form-inline input,
.live-filter-form-inline select{
  display:block;
  width:100%;
  height:31px;
  padding:0 24px 0 0;
  border:0 !important;
  outline:0;
  background:#fff !important;
  color:#0b141c;
  font:inherit;
  font-size:14px;
  font-weight:750;
}
.live-filter-form-inline input{padding-right:0}
.live-filter-submit-inline{
  align-self:stretch;
  min-height:62px;
  margin:0 !important;
  padding:0 20px;
  border:0 !important;
  border-radius:0 !important;
  background:#244454 !important;
  color:#fff !important;
  white-space:nowrap;
  font-weight:900;
}
.live-filter-submit-inline:hover{background:#0b141c !important}

/* Search results sit directly on the dark top-down maguey canvas. */
.live-finder-results-wrap{
  background:
    linear-gradient(rgba(11,20,28,.90),rgba(11,20,28,.94)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top/cover fixed no-repeat;
}
.live-finder-results{padding-top:42px !important;padding-bottom:74px !important}
.live-results-head h2,
.live-results-head>strong{color:#fff !important}
.live-empty-state{
  background:rgba(11,20,28,.94) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.18);
}
.live-empty-state h3{color:#fff !important}
.live-producer-callout{background:#071018 !important;border-top:1px solid rgba(255,255,255,.12)}

/* Directory/search page: same dark visual language, no mint page bands. */
.directory-discovery-canvas{
  min-height:calc(100vh - 70px);
  background:
    linear-gradient(rgba(11,20,28,.91),rgba(11,20,28,.95)),
    url('/uploads/bg1-top-shot-magueyes.webp') center top/cover fixed no-repeat;
  color:#fff;
}
.directory-discovery-canvas .hero-mini{
  background:transparent !important;
  color:#fff !important;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.directory-discovery-canvas .hero-mini h1{color:#fff !important}
.directory-discovery-canvas .hero-mini .muted{color:rgba(255,255,255,.72) !important}
.directory-discovery-canvas .directory-page{background:transparent !important;color:#fff}
.directory-discovery-canvas .filters{
  padding:14px;
  background:rgba(11,20,28,.86) !important;
  border:1px solid rgba(255,255,255,.16);
  border-radius:15px;
}
.directory-discovery-canvas .filters .input,
.directory-discovery-canvas .filters select{background:#fff !important;color:#0b141c !important}
.directory-discovery-canvas .directory-intent-bar{
  background:rgba(11,20,28,.86) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.14);
}
.directory-discovery-canvas .intent-filter{
  background:#244454 !important;
  color:#fff !important;
  border-color:#607274 !important;
}
.directory-discovery-canvas .intent-filter.active{background:#fff !important;color:#0b141c !important}
.directory-discovery-canvas .empty{background:rgba(11,20,28,.92) !important;color:#fff !important;border-color:#607274 !important}

/* Producer-facing canvases: remove remaining mint slabs while preserving mint
   as an accent for active controls and status text. */
.producer-workspace-canvas .producer-tools-live-cta,
.producer-workspace-canvas .producer-daily-progress,
.producer-app-canvas .producer-daily-progress{
  background:rgba(11,20,28,.94) !important;
  color:#fff !important;
  border:1px solid rgba(96,114,116,.45);
}
.producer-workspace-canvas .producer-tools-live-cta p{color:rgba(255,255,255,.70) !important}
.producer-app-bottom-nav-three a{width:33.333% !important}

@media(max-width:980px){
  .live-filter-form-inline{grid-template-columns:1fr 1fr}
  .live-filter-form-inline .live-filter-field{border-bottom:1px solid rgba(11,20,28,.12)}
  .live-filter-submit-inline{grid-column:1/-1;min-height:54px}
  .live-finder-featured-grid{overflow-x:auto;gap:14px;padding-bottom:5px;scroll-snap-type:x mandatory}
  .live-finder-featured-grid .live-palenque-card{flex:0 0 min(420px,78vw);width:auto;scroll-snap-align:start}
}
@media(max-width:620px){
  .live-finder-hero-cards{padding-top:20px}
  .live-filter-form-inline{grid-template-columns:1fr}
  .live-filter-form-inline .live-filter-field{border-right:0}
  .live-filter-submit-inline{grid-column:auto}
  .live-finder-featured-grid .live-palenque-card{flex-basis:86vw}
  .live-results-head{gap:15px}
}

/* v1.4.27 dark-surface audit: homepage discovery surfaces no longer use mint
   as a large background. Mint is reserved for accents/CTAs/status states. */
.mo-home-live .home-live-how-grid article{
  background:rgba(11,20,28,.94) !important;
  color:#fff !important;
  border:1px solid rgba(96,114,116,.62);
}
.mo-home-live .home-live-how-grid h3{color:#fff !important}
.mo-home-live .home-live-how-grid p{color:rgba(255,255,255,.70) !important}
.mo-home-live .home-live-how-grid article>i{color:#f0fff5 !important}
.mo-home-live .home-live-how-grid article>span{color:rgba(255,255,255,.24) !important}
.mo-home-live .home-phone-demo{
  background:#0b141c !important;
  color:#fff !important;
  border-color:#607274 !important;
}
.mo-home-live .home-phone-top{color:rgba(255,255,255,.66) !important}
.mo-home-live .home-phone-question{background:#10212c !important;color:#fff !important;border:1px solid #607274}
.mo-home-live .mo-directory-invite,
.mo-home-live .mo-about-feature{background:#0b141c !important;color:#fff !important}
.mo-home-live .mo-directory-invite-copy h2,
.mo-home-live .mo-feature-copy h2{color:#fff !important}
.mo-home-live .mo-directory-invite-copy p,
.mo-home-live .mo-feature-copy p{color:rgba(255,255,255,.72) !important}

/* =========================================================
   v1.4.28 — HOY HERO + INTELLIGENT SEARCH RAIL
   Hero is the top-down maguey image with today's live cards directly on it.
   Search is a full-width hotel-style rail. The first answer determines whether
   a second question is useful; village/area always comes last.
   ========================================================= */
.live-finder-page-v1428{
  background:#070b0e !important;
}
.live-finder-page-v1428 .live-finder-hero-cards{
  position:relative;
  min-height:0 !important;
  padding:48px 0 46px !important;
  overflow:hidden;
}
.live-finder-page-v1428 .live-finder-hero-cards .live-finder-hero-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(5,10,14,.54),rgba(5,10,14,.76)),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat !important;
  transform:none !important;
}
.live-finder-page-v1428 .live-finder-hero-inner{
  position:relative;
  z-index:2;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.live-finder-page-v1428 .live-finder-now-label{
  margin-bottom:16px;
  text-shadow:0 2px 10px rgba(0,0,0,.52);
}
.live-finder-page-v1428 .live-finder-featured-grid{
  align-items:stretch;
}
.live-finder-page-v1428 .live-finder-featured-grid .live-palenque-card{
  box-shadow:0 18px 42px rgba(0,0,0,.34);
}

/* Edge-to-edge search rail immediately beneath the hero. */
.live-finder-page-v1428 .live-finder-controls{
  width:100%;
  padding:0 !important;
  background:#070b0e !important;
  border-top:1px solid rgba(255,255,255,.14);
  border-bottom:1px solid rgba(255,255,255,.14);
}
.live-finder-page-v1428 .live-filter-form-inline{
  display:flex !important;
  width:100%;
  max-width:none;
  align-items:stretch;
  gap:8px;
  padding:12px 16px !important;
  overflow:visible;
  background:#0b141c !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.live-finder-page-v1428 .live-filter-form-inline .live-filter-field{
  display:block;
  min-width:0;
  padding:0 !important;
  border:0 !important;
}
.live-finder-page-v1428 .live-filter-intent{flex:1.7 1 360px}
.live-finder-page-v1428 .live-filter-detail{flex:1.35 1 290px}
.live-finder-page-v1428 .live-filter-place{flex:1 1 250px}
.live-finder-page-v1428 .live-filter-detail[hidden]{display:none !important}

.live-finder-page-v1428 .live-select-shell{
  position:relative;
  display:block;
  width:100%;
  height:58px;
  overflow:hidden;
  border:1px solid #c9d2cf;
  border-radius:8px;
  background:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.7) inset;
}
.live-finder-page-v1428 .live-filter-form-inline select{
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  width:100%;
  height:100% !important;
  margin:0;
  padding:0 60px 0 16px !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:#fff !important;
  background-image:none !important;
  color:#0b141c !important;
  font:inherit;
  font-size:15px !important;
  font-weight:750;
  line-height:58px;
  cursor:pointer;
}
.live-finder-page-v1428 .live-select-arrow{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-left:1px solid #c7d0cd;
  background:linear-gradient(180deg,#ffffff 0%,#eef2f0 48%,#dce4e1 100%);
  color:#0b141c;
  font-size:14px;
  pointer-events:none;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 -1px 0 rgba(11,20,28,.05) inset;
}
.live-finder-page-v1428 .live-select-shell:focus-within{
  border-color:#607274;
  box-shadow:0 0 0 3px rgba(96,114,116,.18);
}
.live-finder-page-v1428 .live-filter-place input{
  display:block;
  width:100%;
  height:58px !important;
  margin:0;
  padding:0 16px !important;
  border:1px solid #c9d2cf !important;
  border-radius:8px !important;
  outline:0;
  background:#fff !important;
  color:#0b141c !important;
  font:inherit;
  font-size:15px !important;
  font-weight:750;
}
.live-finder-page-v1428 .live-filter-place input::placeholder{
  color:#56666b;
  opacity:1;
}
.live-finder-page-v1428 .live-filter-place input:focus{
  border-color:#607274 !important;
  box-shadow:0 0 0 3px rgba(96,114,116,.18);
}
.live-finder-page-v1428 .live-filter-submit-inline{
  flex:0 0 auto;
  align-self:stretch;
  min-width:178px;
  min-height:58px !important;
  margin:0 !important;
  padding:0 24px !important;
  border:1px solid #244454 !important;
  border-radius:8px !important;
  background:linear-gradient(180deg,#2f586c 0%,#244454 100%) !important;
  color:#fff !important;
  white-space:nowrap;
  font-size:14px;
  font-weight:900;
  letter-spacing:.035em;
  box-shadow:0 1px 0 rgba(255,255,255,.12) inset;
}
.live-finder-page-v1428 .live-filter-submit-inline:hover{
  background:linear-gradient(180deg,#172934 0%,#0b141c 100%) !important;
}

/* Everything below the rail is a clean black/dark canvas — no second photo. */
.live-finder-page-v1428 .live-finder-results-wrap{
  background:#070b0e !important;
}
.live-finder-page-v1428 .live-finder-results{
  padding-top:46px !important;
  padding-bottom:78px !important;
}
.live-finder-page-v1428 .live-producer-callout{
  background:#05080a !important;
  border-top:1px solid rgba(255,255,255,.12);
}

@media(max-width:1040px){
  .live-finder-page-v1428 .live-filter-form-inline{
    flex-wrap:wrap;
  }
  .live-finder-page-v1428 .live-filter-intent,
  .live-finder-page-v1428 .live-filter-detail,
  .live-finder-page-v1428 .live-filter-place{
    flex:1 1 calc(50% - 8px);
  }
  .live-finder-page-v1428 .live-filter-submit-inline{
    flex:1 1 100%;
  }
}
@media(max-width:620px){
  .live-finder-page-v1428 .live-finder-hero-cards{
    padding:28px 0 30px !important;
  }
  .live-finder-page-v1428 .live-filter-form-inline{
    display:flex !important;
    flex-direction:column;
    gap:8px;
    padding:10px !important;
  }
  .live-finder-page-v1428 .live-filter-intent,
  .live-finder-page-v1428 .live-filter-detail,
  .live-finder-page-v1428 .live-filter-place,
  .live-finder-page-v1428 .live-filter-submit-inline{
    width:100%;
    flex:0 0 auto;
  }
  .live-finder-page-v1428 .live-select-shell,
  .live-finder-page-v1428 .live-filter-place input,
  .live-finder-page-v1428 .live-filter-submit-inline{
    height:56px !important;
    min-height:56px !important;
  }
}

/* =========================================================
   v1.4.31 — ADAPTIVE MULTI-SELECT HOY SEARCH
   Full-width, conditional, multi-select search with a live summary and direct search action.
   ========================================================= */
.live-finder-page-v1430{
  background:#070b0e !important;
}
.live-finder-page-v1430 .live-finder-hero-cards{
  position:relative;
  min-height:0 !important;
  padding:48px 0 46px !important;
  overflow:hidden;
}
.live-finder-page-v1430 .live-finder-hero-cards .live-finder-hero-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(5,10,14,.50),rgba(5,10,14,.78)),
    url('/uploads/bg1-top-shot-magueyes.webp') center center / cover no-repeat !important;
  transform:none !important;
}
.live-finder-page-v1430 .live-finder-hero-inner{
  position:relative;
  z-index:2;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.live-finder-page-v1430 .live-finder-now-label{
  margin-bottom:16px;
  text-shadow:0 2px 10px rgba(0,0,0,.52);
}
.live-finder-page-v1430 .live-finder-featured-grid .live-palenque-card{
  box-shadow:0 20px 46px rgba(0,0,0,.38);
}

/* Search stage */
.live-finder-page-v1430 .live-search-experience{
  position:relative;
  z-index:20;
  width:100%;
  padding:0 !important;
  background:#070b0e !important;
  border-top:1px solid rgba(255,255,255,.11);
  border-bottom:1px solid rgba(255,255,255,.11);
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.live-search-form-v1430{
  position:relative;
  width:100%;
  margin:0;
}
.live-search-rail{
  position:relative;
  display:flex;
  align-items:flex-end;
  gap:10px;
  width:100%;
  padding:15px 18px 17px;
  background:
    linear-gradient(180deg,rgba(19,34,44,.98),rgba(10,19,26,.99));
}
.live-search-rail:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  pointer-events:none;
}
.live-choice-field{
  position:relative;
  min-width:0;
  flex:1 1 215px;
  animation:liveFieldIn .34s cubic-bezier(.2,.72,.2,1) both;
}
.live-choice-intent{flex:1.45 1 330px}
.live-choice-village{flex:1.05 1 235px}
.live-choice-field[hidden]{display:none !important}
@keyframes liveFieldIn{
  from{opacity:0;transform:translateY(7px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
.live-choice-question{
  min-height:19px;
  margin:0 4px 7px;
  overflow:hidden;
  color:rgba(255,255,255,.82);
  font-size:12px;
  line-height:1.25;
  font-weight:850;
  letter-spacing:.015em;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.live-choice-trigger{
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
  height:62px;
  margin:0;
  padding:0 56px 0 17px;
  overflow:hidden;
  border:1px solid #cad3d0;
  border-radius:10px;
  outline:0;
  background:linear-gradient(180deg,#fff 0%,#fbfcfc 100%);
  color:#0b141c;
  text-align:left;
  cursor:pointer;
  box-shadow:
    0 1px 0 rgba(255,255,255,.9) inset,
    0 7px 18px rgba(0,0,0,.12);
  transition:border-color .22s ease,box-shadow .22s ease,transform .18s ease;
}
.live-choice-trigger:hover{
  border-color:#8fa09d;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 24px rgba(0,0,0,.16);
}
.live-choice-trigger:focus-visible,
.live-choice-field.is-open .live-choice-trigger{
  border-color:#607274;
  box-shadow:0 0 0 3px rgba(207,230,218,.17),0 10px 25px rgba(0,0,0,.18);
}
.live-choice-field.is-open .live-choice-trigger{transform:translateY(-1px)}
.live-choice-summary{
  display:block;
  width:100%;
  overflow:hidden;
  color:#0b141c;
  font-size:14px;
  font-weight:800;
  line-height:1.25;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.live-choice-summary.has-selection{color:#16303e}
.live-choice-chevron{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-left:1px solid #c7d0cd;
  background:linear-gradient(180deg,#ffffff 0%,#eef2f0 50%,#dce4e1 100%);
  color:#0b141c;
  font-size:13px;
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset,0 -1px 0 rgba(11,20,28,.06) inset;
}
.live-choice-chevron i{transition:transform .26s cubic-bezier(.2,.75,.2,1)}
.live-choice-field.is-open .live-choice-chevron i{transform:rotate(180deg)}

/* Dropdown surface */
.live-choice-panel{
  position:absolute;
  z-index:100;
  left:0;
  top:calc(100% + 10px);
  width:max(100%,320px);
  max-width:min(440px,calc(100vw - 24px));
  padding:10px;
  visibility:hidden;
  opacity:0;
  transform:translateY(-7px) scale(.985);
  transform-origin:top left;
  pointer-events:none;
  border:1px solid rgba(11,20,28,.13);
  border-radius:14px;
  background:#fff;
  color:#0b141c;
  box-shadow:0 24px 60px rgba(0,0,0,.30),0 2px 6px rgba(0,0,0,.10);
  transition:opacity .20s ease,transform .24s cubic-bezier(.2,.75,.2,1),visibility .20s;
}
.live-choice-village .live-choice-panel{right:0;left:auto;transform-origin:top right}
.live-choice-field.is-open .live-choice-panel{
  visibility:visible;
  opacity:1;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
.live-choice-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:4px 5px 10px;
  border-bottom:1px solid rgba(11,20,28,.09);
}
.live-choice-panel-head strong{
  min-width:0;
  color:#0b141c;
  font-size:13px;
  line-height:1.3;
  font-weight:900;
}
.live-choice-panel-head button{
  flex:0 0 auto;
  padding:4px 2px;
  border:0;
  background:transparent;
  color:#607274;
  font:inherit;
  font-size:11px;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
  cursor:pointer;
}
.live-choice-panel-head button:hover{color:#0b141c}
.live-choice-options{
  display:grid;
  gap:4px;
  padding-top:7px;
}
.live-choice-panel-scroll .live-choice-options{
  max-height:320px;
  overflow:auto;
  scrollbar-width:thin;
  overscroll-behavior:contain;
  padding-right:2px;
}
.live-choice-option{
  position:relative;
  display:grid;
  grid-template-columns:26px 28px minmax(0,1fr);
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:7px 10px;
  border:1px solid transparent;
  border-radius:9px;
  cursor:pointer;
  transition:background .17s ease,border-color .17s ease,transform .17s ease;
}
.live-choice-option:not(:has(.live-choice-option-icon)){
  grid-template-columns:26px minmax(0,1fr);
}
.live-choice-option:hover{
  background:#f5f7f6;
  border-color:#e2e8e5;
  transform:translateX(2px);
}
.live-choice-option input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.live-choice-check{
  width:23px;
  height:23px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1.5px solid #a8b5b1;
  border-radius:6px;
  background:#fff;
  color:#fff;
  font-size:10px;
  transition:background .17s ease,border-color .17s ease,transform .17s ease,box-shadow .17s ease;
}
.live-choice-check i{opacity:0;transform:scale(.55);transition:opacity .15s ease,transform .18s cubic-bezier(.2,.9,.2,1)}
.live-choice-option input:checked~.live-choice-check{
  background:#244454;
  border-color:#244454;
  transform:scale(1.04);
  box-shadow:0 4px 10px rgba(36,68,84,.22);
}
.live-choice-option input:checked~.live-choice-check i{opacity:1;transform:scale(1)}
.live-choice-option input:focus-visible~.live-choice-check{box-shadow:0 0 0 3px rgba(36,68,84,.16)}
.live-choice-option-icon{
  width:27px;
  height:27px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#244454;
  font-size:13px;
}
.live-choice-option-copy{
  min-width:0;
  color:#17242b;
  font-size:13px;
  font-weight:760;
  line-height:1.25;
}
.live-choice-option:has(input:checked){background:#eef3f1;border-color:#d8e1dd}
.live-choice-filter{
  position:relative;
  margin:9px 3px 4px;
}
.live-choice-filter i{
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
  color:#607274;
  font-size:12px;
  pointer-events:none;
}
.live-choice-filter input{
  display:block;
  width:100%;
  height:42px;
  padding:0 12px 0 34px;
  border:1px solid #d6dfdc;
  border-radius:8px;
  outline:0;
  background:#f8faf9;
  color:#0b141c;
  font:inherit;
  font-size:13px;
  font-weight:700;
}
.live-choice-filter input:focus{border-color:#607274;box-shadow:0 0 0 3px rgba(96,114,116,.12)}
.live-choice-no-match{padding:16px 10px;color:#607274;font-size:12px;text-align:center}

/* Search button is exactly the same control height as each input. */
.live-search-review-button{
  flex:0 0 178px;
  height:62px;
  margin:26px 0 0;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  border:1px solid #315a6e;
  border-radius:10px;
  background:linear-gradient(180deg,#315d73 0%,#244454 52%,#193541 100%);
  color:#fff;
  font:inherit;
  font-size:13px;
  font-weight:950;
  letter-spacing:.06em;
  cursor:pointer;
  box-shadow:0 1px 0 rgba(255,255,255,.16) inset,0 9px 22px rgba(0,0,0,.20);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.live-search-review-button:hover{
  transform:translateY(-1px);
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 13px 28px rgba(0,0,0,.26);
  filter:brightness(1.06);
}
.live-search-review-button:active{transform:translateY(1px)}
.live-search-review-button i{font-size:12px;transition:transform .2s ease}
.live-search-review-button:hover i{transform:translateX(3px)}

/* Live summary strip: updates immediately as the visitor changes the search. */
.live-search-review{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:18px;
  margin:0;
  padding:20px 22px;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 0 0,rgba(36,68,84,.28),transparent 34%),
    linear-gradient(180deg,#0c1820,#081118);
  color:#fff;
  animation:liveReviewIn .38s cubic-bezier(.2,.75,.2,1) both;
  transition:background .22s ease,border-color .22s ease;
}
.live-search-review-live{
  position:relative;
  z-index:1;
  min-height:82px;
}
.live-search-rail{z-index:20;}
.live-search-review-live .live-search-review-copy{min-width:0;width:100%;max-width:none}
@keyframes liveReviewIn{
  from{opacity:0;transform:translateY(-10px)}
  to{opacity:1;transform:translateY(0)}
}
.live-search-review-icon{
  width:50px;
  height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:18px;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.live-search-review-kicker{
  margin:0 0 3px;
  color:rgba(255,255,255,.52);
  font-size:10px;
  font-weight:950;
  letter-spacing:.14em;
}
.live-search-review-copy p{
  width:100%;
  max-width:none;
  margin:0;
  color:#fff;
  font-family:Georgia,serif;
  font-size:21px;
  line-height:1.45;
}
/* Dark results canvas remains separate from the hero. */
.live-finder-page-v1430 .live-finder-results-wrap{background:#070b0e !important}
.live-finder-page-v1430 .live-finder-results{padding-top:46px !important;padding-bottom:78px !important}
.live-finder-page-v1430 .live-results-head h2,
.live-finder-page-v1430 .live-results-head>strong{color:#fff !important}
.live-finder-page-v1430 .live-empty-state{
  background:#0b141c !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.16);
}
.live-finder-page-v1430 .live-empty-state h3{color:#fff !important}
.live-finder-page-v1430 .live-producer-callout{background:#05080a !important;border-top:1px solid rgba(255,255,255,.12)}

@media(max-width:1450px){
  .live-search-rail{flex-wrap:wrap}
  .live-choice-field{flex:1 1 230px}
  .live-choice-intent{flex:1.45 1 360px}
  .live-search-review-button{flex:0 0 190px}
}
@media(max-width:980px){
  .live-search-rail{padding:14px}
  .live-choice-field,.live-choice-intent,.live-choice-village{flex:1 1 calc(50% - 10px)}
  .live-search-review-button{flex:1 1 calc(50% - 10px)}
  .live-search-review{grid-template-columns:auto minmax(0,1fr)}
}
@media(max-width:620px){
  .live-finder-page-v1430 .live-finder-hero-cards{padding:28px 0 30px !important}
  .live-search-rail{display:block;padding:11px}
  .live-choice-field,.live-choice-intent,.live-choice-village{width:100%;margin:0 0 10px}
  .live-choice-question{margin-left:2px}
  .live-choice-trigger,.live-search-review-button{height:58px}
  .live-search-review-button{width:100%;margin:0}
  .live-choice-panel,
  .live-choice-village .live-choice-panel{
    position:fixed;
    z-index:220;
    left:10px;
    right:10px;
    top:auto;
    bottom:12px;
    width:auto;
    max-width:none;
    max-height:min(68vh,560px);
    transform:translateY(18px) scale(.99);
    transform-origin:bottom center;
  }
  .live-choice-field.is-open .live-choice-panel{transform:translateY(0) scale(1)}
  .live-choice-panel-scroll .live-choice-options{max-height:46vh}
  .live-search-review{grid-template-columns:1fr;gap:12px;padding:19px 16px}
  .live-search-review-icon{display:none}
  .live-search-review-copy p{font-size:18px}
}

/* =========================================================
   v1.4.33 — HOMEPAGE LIGHT / DARK SECTION RHYTHM
   Restore the directory invitation and closing About feature to light
   surfaces so the homepage alternates cleanly between light and dark.
   ========================================================= */
.mo-home-live .mo-directory-invite,
.mo-home-live .mo-about-feature{
  background:#fff !important;
  color:var(--ink) !important;
}
.mo-home-live .mo-directory-invite-copy h2,
.mo-home-live .mo-about-feature .mo-feature-copy h2{
  color:var(--ink) !important;
}
.mo-home-live .mo-directory-invite-copy p,
.mo-home-live .mo-about-feature .mo-feature-copy p{
  color:var(--slate) !important;
}
