:root {
  --ink: #102f37;
  --ink2: #24464d;
  --paper: #f5f1e8;
  --paper2: #fcfaf5;
  --white: #fff;
  --red: #e45745;
  --red2: #c84434;
  --teal: #2d8a7b;
  --line: rgba(16, 47, 55, .13);
  --muted: #6e7f82;
  --shadow: 0 18px 55px rgba(16, 47, 55, .11);
  --radius: 21px;
  --max: 1180px;
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  color: var(--ink);
  background: var(--paper2);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--paper2); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.container { width: min(var(--max), calc(100% - 40px)); margin-inline: auto; }
.narrow { max-width: 960px; }
.topbar { background: var(--ink); color: #bed0d2; font-size: 11px; letter-spacing: .04em; }
.topbar .container { height: 34px; display: flex; align-items: center; justify-content: space-between; }
.header { position: sticky; z-index: 20; top: 0; border-bottom: 1px solid var(--line); background: rgba(252, 250, 245, .95); backdrop-filter: blur(16px); }
.nav { height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: flex; align-items: center; gap: 10px; font-size: 20px; font-weight: 850; letter-spacing: -.04em; }
.brand-mark { position: relative; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; background: var(--ink); color: #fff; font-size: 16px; }
.brand-mark::after { content: "★"; position: absolute; right: 4px; top: 2px; color: var(--red); font-size: 7px; }
.nav-links, .nav-actions, .row-actions, .admin-event-actions { display: flex; align-items: center; gap: 8px; }
.nav-links a { padding: 10px 13px; border-radius: 999px; color: var(--ink2); font-size: 13px; font-weight: 700; }
.nav-links a.active, .nav-links a:hover { background: #e9e6dd; }
.nav-actions form, .row-actions form, .admin-event-actions form { margin: 0; }
.lang { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--line); border-radius: 50%; background: #fff; font-size: 11px; font-weight: 800; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 45px; padding: 0 18px; border: 1px solid transparent; border-radius: 11px; font-size: 13px; font-weight: 800; transition: .18s ease; }
.button:hover { transform: translateY(-1px); }
.button.primary { background: var(--red); color: #fff; }
.button.primary:hover { background: var(--red2); }
.button.ghost { border-color: var(--line); background: #fff; color: var(--ink); }
.button.small { min-height: 38px; padding-inline: 14px; font-size: 11px; }
.alert { margin-top: 16px; padding: 13px 16px; border-radius: 11px; font-size: 13px; }
.alert.success { background: #ddf1e9; color: #17634e; }
.alert.error { background: #f7dfdb; color: #9f3027; }
.eyebrow { margin: 0 0 16px; color: var(--red); font-size: 11px; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }

.hero { position: relative; overflow: hidden; background: var(--ink); color: #fff; }
.hero::after { content: ""; position: absolute; width: 540px; height: 540px; right: -170px; top: -300px; border: 80px solid rgba(255, 255, 255, .04); border-radius: 50%; }
.hero-grid { position: relative; z-index: 1; min-height: 560px; display: grid; grid-template-columns: 1.35fr .65fr; align-items: center; gap: 70px; padding-block: 75px; }
.hero h1 { max-width: 790px; margin: 0; font-size: clamp(43px, 6vw, 73px); line-height: 1; letter-spacing: -.065em; }
.hero p:not(.eyebrow) { max-width: 680px; color: #b9cacd; font-size: 17px; line-height: 1.65; }
.stats { border-left: 1px solid rgba(255, 255, 255, .14); padding-left: 30px; }
.stats div { display: flex; justify-content: space-between; align-items: baseline; padding: 18px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.stats strong { font-size: 30px; }
.stats span { color: #9db2b5; font-size: 12px; }

.directory { padding: 82px 0 100px; }
.section-title { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 26px; }
.section-title h2 { margin: 0; font-size: clamp(32px, 4vw, 48px); letter-spacing: -.05em; }
.section-title > p { max-width: 410px; margin: 0; color: var(--muted); line-height: 1.55; }
.filters { display: grid; grid-template-columns: 1.25fr 170px 190px 150px auto; gap: 9px; padding: 12px; border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: 0 10px 35px rgba(16, 47, 55, .05); }
input, select, textarea { width: 100%; border: 1px solid var(--line); border-radius: 10px; padding: 0 12px; background: #fff; color: var(--ink); outline: 0; }
input, select { height: 47px; }
textarea { padding: 12px; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(45, 138, 123, .11); }
.filters input, .filters select { border-color: transparent; background: #f7f5ef; }
.result-count { margin: 22px 2px 14px; color: var(--muted); font-size: 13px; }
.result-count a { color: var(--red2); font-weight: 800; }
.event-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.event-card { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; transition: .2s; }
.event-card:hover { transform: translateY(-5px); border-color: transparent; box-shadow: var(--shadow); }
.event-cover { position: relative; height: 155px; display: grid; place-items: center; overflow: hidden; background: var(--accent); color: rgba(255, 255, 255, .2); font-size: 72px; font-weight: 900; }
.event-cover::after { content: ""; position: absolute; right: -50px; bottom: -100px; width: 180px; height: 180px; border: 30px solid rgba(255, 255, 255, .14); border-radius: 50%; }
.event-cover img { width: 100%; height: 100%; object-fit: cover; }
.event-cover em { position: absolute; z-index: 2; left: 17px; top: 16px; padding: 6px 9px; border-radius: 999px; background: rgba(255, 255, 255, .88); color: var(--ink); font-size: 9px; font-style: normal; font-weight: 850; text-transform: uppercase; }
.event-body { min-height: 264px; display: flex; flex-direction: column; padding: 21px; }
.event-body small { color: var(--red2); font-size: 11px; font-weight: 850; }
.event-body h3 { margin: 10px 0 8px; font-size: 20px; line-height: 1.2; letter-spacing: -.035em; }
.event-body p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.event-place { margin-top: 13px; color: var(--ink2); font-size: 12px; }
.event-meta { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: 18px; }
.event-meta span { padding: 7px 9px; border-radius: 8px; background: #eef1ee; font-size: 10px; font-weight: 800; }
.event-meta b { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: var(--ink); color: #fff; }
.empty { grid-column: 1/-1; padding: 70px 20px; border: 1px dashed var(--line); border-radius: var(--radius); color: var(--muted); text-align: center; }

.event-hero { padding: 46px 0 58px; background: var(--ink); color: #fff; }
.back { display: inline-block; margin-bottom: 38px; color: #9bb0b4; font-size: 13px; font-weight: 700; }
.event-hero-grid { display: grid; grid-template-columns: 1fr 270px; gap: 50px; align-items: end; }
.pills { display: flex; gap: 7px; flex-wrap: wrap; }
.pills span { padding: 6px 9px; border-radius: 999px; background: rgba(255, 255, 255, .11); font-size: 9px; font-weight: 850; text-transform: uppercase; }
.event-hero h1 { max-width: 830px; margin: 16px 0 14px; font-size: clamp(39px, 5.7vw, 66px); line-height: 1; letter-spacing: -.06em; }
.event-hero p { max-width: 730px; margin: 0; color: #b7c7ca; line-height: 1.65; }
.event-hero aside { padding: 21px; border: 1px solid rgba(255, 255, 255, .15); border-radius: 16px; background: rgba(255, 255, 255, .06); }
.event-hero aside strong, .event-hero aside span { display: block; }
.event-hero aside span { margin-top: 9px; color: #aabec1; font-size: 12px; line-height: 1.5; }
.event-detail { padding: 65px 0 95px; }
.detail-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 55px; align-items: start; }
.detail-grid h2, .interest-card h2 { margin: 0 0 17px; font-size: 27px; letter-spacing: -.04em; }
.lead { color: var(--muted); font-size: 16px; line-height: 1.75; }
.detail-grid dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 30px 0; }
.detail-grid dl div { padding: 17px; border-radius: 13px; background: var(--paper); }
dt { color: var(--muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
dd { margin: 7px 0 0; font-size: 12px; font-weight: 800; }
.interest-card { position: sticky; top: 104px; padding: 25px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }

.form-stack { display: grid; gap: 13px; }
.form-stack label, .event-form label { display: grid; gap: 6px; font-size: 11px; font-weight: 800; }
.form-stack small, .event-form small { color: var(--muted); font-weight: 500; }
.form-two, .form-three { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.form-three { grid-template-columns: repeat(3, 1fr); }
.check-line { grid-template-columns: 20px 1fr !important; align-items: start; font-weight: 500 !important; line-height: 1.4; }
.check-line input { width: 17px; height: 17px; margin: 0; }
.auth-page { min-height: calc(100vh - 110px); display: grid; grid-template-columns: 1fr 1fr; }
.auth-page > section { padding: 85px max(45px, calc((100vw - var(--max))/2)); padding-right: 65px; background: var(--ink); color: #fff; }
.auth-page > section h1 { max-width: 570px; margin: 0; font-size: clamp(42px, 5vw, 64px); line-height: 1.02; letter-spacing: -.06em; }
.auth-page > section > p:not(.eyebrow) { max-width: 520px; color: #b7c8ca; line-height: 1.7; }
.auth-card { align-self: center; width: min(430px, calc(100% - 50px)); margin: 55px auto; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.auth-card h2 { margin: 0 0 8px; font-size: 28px; letter-spacing: -.04em; }
.auth-card .alert { margin: 0; }
.center { text-align: center; color: var(--muted); font-size: 12px; }
.center a { color: var(--red2); font-weight: 800; }

.dashboard, .editor { min-height: calc(100vh - 110px); padding: 50px 0 90px; background: #f1f2ee; }
.dashboard-head { display: flex; justify-content: space-between; align-items: end; gap: 25px; }
.dashboard h1, .editor h1 { margin: 0; font-size: 40px; letter-spacing: -.05em; }
.approval-box { margin-top: 30px; padding: 30px; border: 1px solid #e6ce98; border-radius: 18px; background: #fff6df; }
.approval-box h2 { margin-top: 0; }
.approval-box p { margin-bottom: 0; color: #746342; }
.metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 11px; margin: 28px 0; }
.metrics div { padding: 19px; border: 1px solid var(--line); border-radius: 15px; background: #fff; }
.metrics span { color: var(--muted); font-size: 11px; }
.metrics strong { display: block; margin-top: 12px; font-size: 27px; }
.dashboard-grid, .admin-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 13px; }
.admin-grid { grid-template-columns: 1fr; margin-top: 14px; }
.panel { padding: 22px; border: 1px solid var(--line); border-radius: 17px; background: #fff; }
.panel-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 13px; }
.panel h2 { margin: 0; font-size: 19px; }
.panel-head > a { color: var(--red2); font-size: 11px; font-weight: 800; }
.muted { color: var(--muted); font-size: 13px; }
.listing, .admin-row { display: grid; grid-template-columns: 1fr auto auto; gap: 12px; align-items: center; padding: 14px 0; border-top: 1px solid var(--line); }
.listing:first-of-type, .admin-row:first-of-type { border-top: 0; }
.listing strong, .listing span, .admin-row strong, .admin-row span, .inquiry strong, .inquiry span, .inquiry small { display: block; }
.listing strong, .admin-row strong, .inquiry strong { font-size: 13px; }
.listing > div > span, .admin-row > div > span, .inquiry span { margin-top: 4px; color: var(--muted); font-size: 10px; }
.status { padding: 6px 8px; border-radius: 999px; background: #eceeea; color: #51656a; font-size: 9px; font-weight: 850; text-transform: uppercase; }
.status.approved, .status.published { background: #ddf1e9; color: #17634e; }
.status.pending { background: #fff0cc; color: #825d16; }
.status.rejected { background: #f8dfdb; color: #9f3027; }
.status.draft { background: #e8ebed; color: #56666a; }
.row-actions a, .row-actions button { border: 0; padding: 0; background: transparent; color: var(--teal); font-size: 10px; font-weight: 800; }
.row-actions button, .row-actions .danger { color: var(--red2); }
.reject-reason { grid-column: 1/-1; color: var(--red2); }
.inquiry { padding: 12px 0; border-top: 1px solid var(--line); }
.inquiry small { margin-top: 5px; color: var(--red2); }
.admin-event { padding: 16px 0; border-top: 1px solid var(--line); }
.admin-event:first-of-type { border-top: 0; }
.admin-event > div > strong, .admin-event > div > span { display: block; }
.admin-event > div > span { margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.admin-event > a { display: inline-block; margin-top: 8px; color: var(--teal); font-size: 11px; font-weight: 800; }
.admin-event-actions { margin-top: 10px; }
.reject-form { display: flex; gap: 7px; flex: 1; }
.reject-form input { height: 38px; }
.editor .back { margin-bottom: 24px; color: var(--ink2); }
.editor-head { margin-bottom: 26px; }
.editor-head > p:last-child { color: var(--muted); }
.event-form { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.event-form fieldset { display: grid; gap: 13px; margin: 0; padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.event-form fieldset.full { grid-column: 1/-1; }
.event-form legend { padding: 0 7px; font-size: 13px; font-weight: 850; }
.submit-bar { position: sticky; z-index: 10; bottom: 12px; grid-column: 1/-1; display: flex; justify-content: flex-end; gap: 8px; padding: 12px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255, 255, 255, .92); box-shadow: var(--shadow); backdrop-filter: blur(12px); }
.current-image { width: 220px; height: 120px; object-fit: cover; border-radius: 10px; }
.simple-page { min-height: 60vh; padding: 80px 0; }
.footer { padding: 36px 0; background: #09262d; color: #a4b8bb; }
.footer .container { display: flex; justify-content: space-between; align-items: center; }
.footer strong { color: #fff; }
.footer p { margin: 5px 0 0; font-size: 11px; }
.footer span { font-size: 11px; }

.setup-body { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: var(--ink); }
.setup-card { width: min(100%, 560px); padding: 32px; border-radius: 22px; background: #fff; box-shadow: 0 28px 90px rgba(0, 0, 0, .3); }
.setup-card .brand { margin-bottom: 28px; }
.setup-card h1 { margin: 0 0 10px; font-size: 34px; letter-spacing: -.045em; }
.setup-card > p:not(.eyebrow) { color: var(--muted); line-height: 1.55; }

@media (max-width: 980px) {
  .hero-grid { grid-template-columns: 1fr; gap: 35px; }
  .stats { display: grid; grid-template-columns: repeat(3, 1fr); padding: 15px 0 0; border-left: 0; border-top: 1px solid rgba(255, 255, 255, .14); }
  .stats div { display: block; border: 0; }
  .stats span { display: block; margin-top: 5px; }
  .filters { grid-template-columns: 1fr 1fr; }
  .filters .button { grid-column: 1/-1; }
  .event-grid { grid-template-columns: repeat(2, 1fr); }
  .detail-grid, .dashboard-grid { grid-template-columns: 1fr; }
  .interest-card { position: static; }
  .auth-page { grid-template-columns: 1fr; }
  .auth-page > section { padding: 65px max(30px, calc((100vw - var(--max))/2)); }
}

@media (max-width: 720px) {
  .container { width: min(var(--max), calc(100% - 26px)); }
  .topbar, .nav-links, .nav-actions .button { display: none; }
  .nav { height: 67px; }
  .hero-grid { min-height: auto; padding: 70px 0 52px; }
  .hero h1 { font-size: 43px; }
  .section-title { display: block; }
  .section-title > p { margin-top: 14px; }
  .filters, .event-grid, .event-hero-grid, .detail-grid dl, .form-two, .form-three { grid-template-columns: 1fr; }
  .auth-page > section h1 { font-size: 41px; }
  .metrics { grid-template-columns: repeat(2, 1fr); }
  .dashboard-head { display: block; }
  .dashboard-head > .button { margin-top: 18px; }
  .listing, .admin-row { grid-template-columns: 1fr auto; }
  .row-actions { grid-column: 1/-1; }
  .event-form { grid-template-columns: 1fr; }
  .event-form fieldset.full, .submit-bar { grid-column: 1; }
  .submit-bar { display: grid; }
  .footer .container { display: block; }
  .footer span { display: block; margin-top: 18px; }
}
/* MoroccoExpos v3 — search-first homepage and ecosystem */
.search-intro{padding:58px 0 34px;background:var(--ink);color:#fff}.search-intro h1{max-width:820px;margin:10px 0 12px;font-size:clamp(42px,6vw,72px);line-height:.98;letter-spacing:-.06em}.search-intro>div>p:not(.eyebrow){max-width:720px;color:#b7c8ca;font-size:16px;line-height:1.65}.hero-search{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:9px;margin-top:30px;padding:10px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.07)}.hero-search input,.hero-search select{background:#fff;border:0}.featured-strip{padding:58px 0 20px;background:#f7f7f3}.ecosystem{padding:76px 0;background:#0b3038;color:#fff}.ecosystem .section-title h2{color:#fff}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.feature-grid>a{min-height:230px;padding:28px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.04);color:#fff}.feature-grid b{color:var(--red);font-size:12px}.feature-grid h3{margin:45px 0 10px;font-size:24px}.feature-grid p{margin:0;color:#aec0c3;line-height:1.6}.newsletter{padding:70px 0;background:#eceee9}.newsletter-grid{display:grid;grid-template-columns:1fr 460px;gap:60px;align-items:center}.newsletter h2{margin:8px 0 12px;font-size:38px;letter-spacing:-.05em}.newsletter p{color:var(--muted);line-height:1.6}.newsletter form{display:grid;grid-template-columns:1fr auto;gap:8px}.page-intro{max-width:850px;margin-bottom:38px}.page-intro h1{margin:8px 0 14px;font-size:clamp(38px,5vw,60px);letter-spacing:-.055em;line-height:1}.page-intro>p:last-child{max-width:700px;color:var(--muted);font-size:16px;line-height:1.65}.supplier-filters{grid-template-columns:1fr 1fr auto}.supplier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:25px}.supplier-card{padding:24px;border:1px solid var(--line);border-radius:17px;background:#fff}.supplier-card small{color:var(--red2);font-weight:800;text-transform:uppercase}.supplier-card h3{margin:13px 0 10px;font-size:22px}.supplier-card p{color:var(--muted);line-height:1.6}.supplier-card a,.text-link{color:var(--teal);font-weight:800}.guide-page{background:#f4f5f1}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.guide-grid article{min-height:220px;padding:25px;border:1px solid var(--line);border-radius:17px;background:#fff}.guide-grid span{color:var(--red2);font-weight:900}.guide-grid h3{margin:38px 0 10px;font-size:21px}.guide-grid p{color:var(--muted);line-height:1.6}.full-button{display:block;margin-top:18px;text-align:center}.interest-card hr{margin:22px 0;border:0;border-top:1px solid var(--line)}
@media(max-width:980px){.hero-search{grid-template-columns:1fr 1fr}.hero-search input{grid-column:1/-1}.feature-grid,.supplier-grid,.guide-grid{grid-template-columns:repeat(2,1fr)}.newsletter-grid{grid-template-columns:1fr}.newsletter form{max-width:600px}}
@media(max-width:720px){.search-intro{padding-top:42px}.hero-search,.feature-grid,.supplier-grid,.guide-grid,.newsletter form,.supplier-filters{grid-template-columns:1fr}.hero-search input{grid-column:auto}.feature-grid>a{min-height:190px}.newsletter{padding:50px 0}.newsletter h2{font-size:31px}}
.admin-tabs{display:flex;gap:.6rem;margin:1.25rem 0}.admin-tabs a{padding:.7rem 1rem;border:1px solid var(--line,#d9dedc);border-radius:999px;text-decoration:none;background:#fff}.admin-tabs b{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;border-radius:999px;background:#e45745;color:#fff;font-size:.75rem}.compact-form{padding-bottom:1.25rem;border-bottom:1px solid #e4e8e6;margin-bottom:1rem}.discovery-source{align-items:center}.discovery-card{padding:1rem 0;border-bottom:1px solid #e4e8e6;display:grid;grid-template-columns:1fr auto;gap:1rem}.discovery-card h3{margin:.25rem 0}.discovery-card p{margin:.25rem 0 .5rem;color:#64706c}.discovery-actions form{display:flex;gap:.4rem;flex-wrap:wrap}@media(max-width:760px){.discovery-card{grid-template-columns:1fr}.admin-tabs{overflow:auto}}
/* v3.2 fixes */
.event-page-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.event-page-actions .back{margin:0}.hero-search{grid-template-columns:2fr 1fr 1.25fr 1fr auto}.filters{grid-template-columns:1.35fr 1fr 1.2fr 1fr 1fr auto}@media(max-width:980px){.hero-search,.filters{grid-template-columns:1fr 1fr}.hero-search input,.filters input{grid-column:1/-1}}@media(max-width:720px){.event-page-actions{align-items:flex-start;flex-direction:column}.hero-search,.filters{grid-template-columns:1fr}}

/* v3.4 event detail refinements */
.event-main-image{display:block;width:min(100%,760px);max-height:360px;object-fit:cover;border-radius:18px;margin:0 auto 30px;box-shadow:0 12px 28px rgba(7,35,42,.10)}
.event-page-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.event-page-actions .button{position:static!important;float:none!important;transform:none!important;z-index:auto!important;display:inline-flex!important;visibility:visible!important;opacity:1!important}

.event-bottom-edit{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.event-detail article .lead{font-size:17px;line-height:1.85;white-space:normal}
.event-form textarea[name="description_fr"],.event-form textarea[name="description_en"]{min-height:240px;line-height:1.6}

/* v3.6 event actions, social links and monetization */
.event-main-image{display:none!important}
.event-actions,.event-secondary-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 28px}.event-secondary-actions{margin:28px 0 0}
.social-link{display:inline-flex;align-items:center;min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--teal);font-size:12px;font-weight:800}
.interest-card .full-button{display:flex;width:100%;align-items:center;justify-content:center;text-align:center;line-height:1.25;padding-top:10px;padding-bottom:10px}
.ad-unit{overflow:hidden;text-align:center}.ad-banner{width:min(var(--max),calc(100% - 40px));min-height:90px;margin:28px auto}.ad-square{width:100%;min-height:250px;margin-top:18px}
@media(max-width:720px){.event-actions .button{flex:1 1 auto}.ad-banner{width:calc(100% - 26px)}}

/* v3.7 event actions, logo and newsletter */
.button,.full-button,.event-actions .button,.event-bottom-edit .button{box-sizing:border-box;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.2!important;vertical-align:middle;text-decoration:none}
.full-button{display:flex!important;width:100%;min-height:56px;padding:14px 22px!important}
.event-bottom-edit .full-button{min-height:52px}
.event-actions .button{min-height:46px}
.event-logo-wrap{width:300px;max-width:100%;height:200px;margin:0 0 24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px;overflow:hidden}
.event-logo{display:block;max-width:300px;max-height:200px;width:auto;height:auto;object-fit:contain}
.current-logo{display:block;max-width:300px;max-height:200px;width:auto;height:auto;object-fit:contain;margin-top:10px;border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}
.subscriber-table-wrap{overflow-x:auto}.subscriber-table{width:100%;border-collapse:collapse}.subscriber-table th,.subscriber-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.subscriber-table th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}

/* v3.8 precision UI fixes */
.event-main-button,
.interest-card .event-main-button,
.event-bottom-edit .event-main-button{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  padding:0 54px!important;
  line-height:1!important;
  text-align:center!important;
}
.event-main-button .button-label{display:block;width:100%;text-align:center;line-height:1.15}
.event-main-button .button-icon{position:absolute;right:22px;top:50%;transform:translateY(-50%);line-height:1;font-size:20px}
.event-bottom-edit .event-main-button{height:54px!important;min-height:54px!important}
.event-actions .event-action-control{
  display:grid!important;place-items:center!important;min-height:48px!important;padding:0 20px!important;text-align:center!important;line-height:1!important
}
.event-actions .event-action-control span{display:block;text-align:center;line-height:1.15}
.event-logo-wrap{width:300px!important;height:200px!important;max-width:300px!important;padding:0!important;background:#fff}
.event-logo{width:300px!important;height:200px!important;max-width:300px!important;max-height:200px!important;object-fit:contain!important;object-position:center!important}
.current-logo{width:300px!important;height:200px!important;max-width:300px!important;max-height:200px!important;object-fit:contain!important}

.newsletter-admin{padding:18px 0 54px}
.newsletter-admin-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:34px 38px;border-radius:24px;background:var(--ink);color:#fff;box-shadow:var(--shadow)}
.newsletter-admin-hero h1{margin:7px 0 10px;font-size:clamp(34px,5vw,52px);letter-spacing:-.055em;line-height:1}
.newsletter-admin-hero p:not(.eyebrow){max-width:660px;margin:0;color:#b7c8ca;line-height:1.6}
.newsletter-export-button{flex:0 0 auto;min-width:170px;height:52px;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px}
.newsletter-export-button b{font-size:19px}
.newsletter-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.newsletter-stats article{padding:22px 24px;border:1px solid var(--line);border-radius:17px;background:#fff}
.newsletter-stats span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.newsletter-stats strong{display:block;margin-top:10px;font-size:31px;letter-spacing:-.04em}
.newsletter-list-card{overflow:hidden;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:0 10px 35px rgba(16,47,55,.05)}
.newsletter-list-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 28px;border-bottom:1px solid var(--line)}
.newsletter-list-head h2{margin:0 0 5px;font-size:23px;letter-spacing:-.035em}
.newsletter-list-head p{margin:0;color:var(--muted);font-size:13px}
.newsletter-count{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border-radius:999px;background:#edf3f0;color:var(--teal);font-weight:900}
.subscriber-table-wrap{overflow:auto}
.subscriber-table{width:100%;border-collapse:collapse}
.subscriber-table th{padding:13px 24px;background:#f6f5f0;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em;text-align:left}
.subscriber-table td{padding:17px 24px;border-top:1px solid var(--line);font-size:13px;vertical-align:middle}
.subscriber-table tbody tr:hover{background:#fbfaf6}
.lang-badge,.subscriber-status{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:850;text-transform:uppercase}
.lang-badge{background:#eef0ec;color:var(--ink2)}
.subscriber-status.active{background:#dff1e9;color:#17634e}.subscriber-status.unsubscribed{background:#f1e8e6;color:#8a4a42}
.newsletter-empty{padding:52px 28px;text-align:center}.newsletter-empty strong{font-size:18px}.newsletter-empty p{margin:7px 0 0;color:var(--muted)}
@media(max-width:760px){.newsletter-admin-hero{align-items:stretch;flex-direction:column;padding:28px}.newsletter-export-button{width:100%}.newsletter-stats{grid-template-columns:1fr 1fr}.subscriber-table th,.subscriber-table td{padding-left:16px;padding-right:16px}}

/* MoroccoExpos v3.9 — editorial event detail page */
.event-page-v39{background:#f7f6f1}.event-hero-v39{padding:34px 0 0;min-height:520px;display:flex;align-items:flex-end;position:relative;background-position:center!important}.event-hero-v39:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,31,36,.95) 0%,rgba(6,31,36,.82) 48%,rgba(6,31,36,.52) 100%);pointer-events:none}.event-hero-v39 .container{position:relative;z-index:1;width:100%}.event-back{display:inline-flex;color:rgba(255,255,255,.72);font-size:14px;text-decoration:none;margin-bottom:36px}.event-back:hover{color:#fff}.event-hero-content{padding-bottom:0}.event-title-block{display:flex;gap:32px;align-items:center;max-width:960px;padding-bottom:38px}.event-brand-logo{display:block;width:auto!important;height:auto!important;max-width:260px!important;max-height:160px!important;object-fit:contain!important;flex:0 0 auto;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}.event-title-copy{min-width:0}.event-pills{margin:0 0 14px}.event-title-copy h1{font-size:clamp(42px,5.6vw,72px);line-height:.98;letter-spacing:-.055em;margin:0 0 18px;max-width:850px}.event-title-copy>p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.75);max-width:760px}.event-facts-bar{display:grid;grid-template-columns:1.25fr 1.4fr 1fr 1fr;background:rgba(5,28,33,.78);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.13);padding:22px 26px;margin-top:12px}.event-fact{display:flex;gap:13px;align-items:flex-start;padding:0 22px;border-right:1px solid rgba(255,255,255,.16)}.event-fact:first-child{padding-left:0}.event-fact:last-child{border-right:0}.fact-icon{color:#ef5947;font-size:22px;line-height:1}.event-fact small,.event-fact strong,.event-fact span{display:block}.event-fact small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.48);margin-bottom:5px}.event-fact strong{font-size:13px;color:#fff;line-height:1.4}.event-fact div>span{font-size:12px;color:rgba(255,255,255,.55);margin-top:3px}.event-detail-v39{padding:68px 0 100px}.event-layout-v39{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:56px;align-items:start}.event-main-content{min-width:0}.event-section-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#e95745;margin-bottom:12px}.event-main-content h2{font-size:clamp(30px,3vw,43px);letter-spacing:-.04em;margin:0 0 22px;color:var(--ink)}.event-description{font-size:17px;line-height:1.9;color:#586b6f;max-width:820px}.event-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:38px 0}.event-info-tile{padding:22px;border:1px solid #dde3e1;border-radius:16px;background:rgba(255,255,255,.58)}.event-info-tile>span{font-size:11px;color:#e95745;font-weight:800}.event-info-tile small,.event-info-tile strong{display:block}.event-info-tile small{margin:14px 0 5px;color:#829093;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.event-info-tile strong{font-size:14px;color:var(--ink)}.event-download{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-top:1px solid #dde3e1;border-bottom:1px solid #dde3e1}.event-download small,.event-download strong{display:block}.event-download small{font-size:10px;letter-spacing:.14em;color:#8a989a}.event-download strong{margin-top:4px;color:var(--ink)}.event-sidebar-v39{display:flex;flex-direction:column;gap:22px}.event-side-card{background:#fff;border:1px solid #e4e8e7;border-radius:22px;padding:26px;box-shadow:0 14px 40px rgba(10,42,47,.06)}.official-card .eyebrow{margin:0 0 18px;color:#e95745}.event-primary-action{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:64px;padding:14px 52px 14px 24px;background:#e95745;color:#fff;border-radius:14px;text-decoration:none;font-weight:800;text-align:center;line-height:1.25;box-sizing:border-box}.event-primary-action:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(233,87,69,.22)}.event-primary-action>b{position:absolute;right:22px;font-size:20px;font-weight:400}.event-utility-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 0}.event-utility-button{appearance:none;display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;padding:10px 12px;border:1px solid #dce2e1;border-radius:12px;background:#fff;color:#17363b;text-decoration:none;font:inherit;font-size:13px;font-weight:750;cursor:pointer;text-align:center}.event-utility-button:hover{border-color:#b9c8c6;background:#fbfcfb}.utility-icon{font-size:19px;color:#178777}.event-social-block,.event-claim-block{border-top:1px solid #e5e9e8;margin-top:20px;padding-top:20px}.event-social-block>small,.event-claim-block>small{display:block;font-weight:700;color:#40585c;margin-bottom:12px}.event-social-row{display:flex;gap:9px;flex-wrap:wrap}.event-social-row a{display:inline-flex;align-items:center;gap:7px;border:1px solid #e0e5e4;border-radius:10px;padding:9px 12px;text-decoration:none;color:#17363b;font-size:12px;font-weight:700}.social-dot{display:inline-grid;place-items:center;min-width:20px;height:20px;color:#178777;font-weight:900}.event-claim-block p{font-size:13px;line-height:1.55;color:#7b898b;margin:0 0 10px}.event-claim-block>a{color:#168878;font-weight:800;text-decoration:none}.event-edit-action{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:56px;margin-top:20px;border:1px solid #dce2e1;border-radius:12px;text-decoration:none;color:#17363b;font-weight:800;text-align:center}.event-edit-action:hover{background:#f7faf9;border-color:#bdcbc9}.event-details-card h3{margin:0 0 20px;font-size:19px;color:var(--ink)}.detail-row{display:flex;gap:13px;padding:14px 0;border-top:1px solid #edf0ef}.detail-row:first-of-type{border-top:0;padding-top:0}.detail-icon{width:28px;flex:0 0 28px;color:#178777;font-size:20px}.detail-row small,.detail-row strong,.detail-row div>span{display:block}.detail-row small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#899698;margin-bottom:4px}.detail-row strong{font-size:13px;color:#17363b;line-height:1.45}.detail-row div>span{font-size:12px;color:#8a9799;margin-top:3px}.event-compact-button{min-height:42px!important;padding:8px 15px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
@media(max-width:980px){.event-layout-v39{grid-template-columns:1fr}.event-sidebar-v39{order:-1}.event-facts-bar{grid-template-columns:1fr 1fr;gap:18px}.event-fact{border-right:0;padding:0}.event-title-block{align-items:flex-start}.event-brand-logo{max-width:210px!important;max-height:130px!important}.event-sidebar-v39{display:grid;grid-template-columns:1fr 1fr}.event-sidebar-v39>.ad-slot{grid-column:1/-1}}
@media(max-width:680px){.event-hero-v39{min-height:0;padding-top:24px}.event-title-block{display:block}.event-brand-logo{max-width:180px!important;max-height:110px!important;margin:0 0 24px}.event-title-copy h1{font-size:40px}.event-facts-bar{grid-template-columns:1fr;margin-left:-18px;margin-right:-18px;padding:20px 18px;gap:16px}.event-fact{padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}.event-fact:last-child{border-bottom:0;padding-bottom:0}.event-layout-v39{gap:34px}.event-sidebar-v39{display:flex}.event-utility-actions,.event-info-grid{grid-template-columns:1fr}.event-side-card{padding:20px}.event-download{align-items:flex-start;flex-direction:column}.event-detail-v39{padding-top:38px}}

/* MoroccoExpos v4.1 — official generated brand */
.brand-logo-link{display:flex;align-items:center;flex:0 0 auto;line-height:0;text-decoration:none}
.site-brand-logo{display:block;width:190px;height:auto;max-height:52px;object-fit:contain;object-position:left center}
@media(max-width:900px){.site-brand-logo{width:165px;max-height:48px}}
@media(max-width:640px){.site-brand-logo{width:145px;max-height:42px}.nav{gap:12px}}


/* v4.2 account, contact and organizer administration */
.forgot-row{text-align:right;margin-top:-8px}.forgot-row a,.account-security-link{font-size:13px;font-weight:750;color:#168878;text-decoration:none}.security-layout,.contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);gap:64px;align-items:start}.security-card,.contact-card{padding:30px}.contact-page{padding-top:72px}.contact-layout h1{font-size:clamp(38px,5vw,64px);line-height:1}.contact-layout section>p{max-width:560px;color:#687b7e;line-height:1.7}.contact-email{display:inline-block;margin-top:18px;font-weight:800;color:#e95745;text-decoration:none}.organizer-admin-page{padding-top:8px}.organizer-admin-hero{display:flex;justify-content:space-between;gap:30px;align-items:end;padding:28px 0 30px}.organizer-admin-hero h1{font-size:clamp(34px,4vw,52px);margin:4px 0 10px}.organizer-admin-hero p{max-width:700px;color:#718083}.organizer-hero-stat{min-width:130px;padding:18px 22px;border:1px solid #dde5e3;border-radius:18px;background:#fff;text-align:center}.organizer-hero-stat strong,.organizer-hero-stat span{display:block}.organizer-hero-stat strong{font-size:34px;color:#17363b}.organizer-hero-stat span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#849294}.organizer-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.organizer-account-card{background:#fff;border:1px solid #e1e7e5;border-radius:20px;padding:22px;box-shadow:0 12px 34px rgba(10,42,47,.045)}.organizer-card-top{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center}.organizer-avatar{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#edf7f4;color:#168878;font-size:20px;font-weight:900}.organizer-card-top h3{margin:0;font-size:17px}.organizer-card-top p{margin:3px 0 0;color:#7c8b8d;font-size:13px}.organizer-meta{display:grid;gap:7px;padding:18px 0;margin-top:16px;border-top:1px solid #edf0ef;border-bottom:1px solid #edf0ef;font-size:13px;color:#66777a}.organizer-meta a{color:#17363b;font-weight:750;text-decoration:none}.organizer-card-actions{display:flex;gap:9px;padding-top:16px}.organizer-card-actions form{margin:0}.organizer-card-actions .button{min-height:38px}.dashboard .row-actions form[data-confirm]{display:none!important}
@media(max-width:800px){.security-layout,.contact-layout{grid-template-columns:1fr;gap:28px}.organizer-account-grid{grid-template-columns:1fr}.organizer-admin-hero{align-items:flex-start;flex-direction:column}.organizer-hero-stat{width:100%}}
/* v4.3 public event polish */
.event-detail-v39{padding-top:58px}.event-main-content{background:#fff;border:1px solid #e6ebe9;border-radius:24px;padding:38px;box-shadow:0 18px 50px rgba(10,42,47,.055)}
.event-sidebar-v39{position:sticky;top:96px}.official-card{padding:30px}.organizer-panel{margin-top:40px;padding:28px;border-radius:18px;background:#f5f8f7;border:1px solid #e0e8e5}.organizer-panel h3{font-size:24px;margin:0 0 8px;color:var(--ink)}.co-organizer{margin:0 0 18px;color:#65777a}.organizer-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.organizer-contact-grid a{display:block;padding:15px;border-radius:12px;background:#fff;border:1px solid #e0e7e5;text-decoration:none;min-width:0}.organizer-contact-grid small,.organizer-contact-grid strong{display:block}.organizer-contact-grid small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#849295;margin-bottom:5px}.organizer-contact-grid strong{font-size:13px;color:#17363b;overflow-wrap:anywhere}.event-details-card{display:none!important}
@media(max-width:980px){.event-sidebar-v39{position:static}.event-main-content{padding:28px}.organizer-contact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.event-main-content{padding:22px;border-radius:18px}.organizer-contact-grid{grid-template-columns:1fr}}
\n\n/* v4.4 legal/footer/AdSense */\n.footer-layout{display:grid!important;grid-template-columns:minmax(220px,1fr) auto;gap:20px 42px;align-items:start!important}\n.footer-legal{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end}\n.footer-legal a{color:#d7e2e4;text-decoration:none;font-size:12px;font-weight:700}\n.footer-legal a:hover{text-decoration:underline}\n.footer-copy{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:11px;color:#91a9ad}\n.legal-shell{max-width:900px}\n.legal-page h1{max-width:760px}.legal-updated{color:var(--muted);margin-bottom:30px}\n.legal-page section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 28px;margin:18px 0}\n.legal-page section h2{margin-top:0}.legal-page section p{line-height:1.75;color:#42575b}\n.code-textarea{min-height:210px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;background:#071f25;color:#e9f3f4;border-color:#21434a}\n.form-help{font-size:12px;color:var(--muted);margin-top:-4px}\n@media(max-width:760px){.footer-layout{grid-template-columns:1fr!important}.footer-legal{justify-content:flex-start;flex-direction:column;gap:10px}.legal-page section{padding:20px}}\n\n\n/* v4.4.1 refined footer */
.footer{padding:26px 0 18px;background:#08272d;color:#9eb3b7}
.footer .container.footer-layout{display:grid!important;grid-template-columns:minmax(230px,1fr) auto;grid-template-areas:"brand links" "copy copy";gap:20px 48px;align-items:center!important}
.footer-brand{grid-area:brand;min-width:0}
.footer-brand strong{display:block;color:#fff;font-size:16px;line-height:1.2;letter-spacing:-.01em}
.footer-brand p{margin:5px 0 0!important;max-width:390px;color:#9eb3b7;font-size:11px!important;line-height:1.55}
.footer-legal{grid-area:links;display:flex!important;align-items:center;justify-content:flex-end;gap:0!important;flex-wrap:wrap}
.footer-legal a{position:relative;display:inline-flex;align-items:center;color:#c5d3d5;text-decoration:none;font-size:11px!important;line-height:1.3;font-weight:600;white-space:nowrap;padding:4px 12px}
.footer-legal a:first-child{padding-left:0}
.footer-legal a:last-child{padding-right:0}
.footer-legal a+a:before{content:"";position:absolute;left:0;top:50%;width:1px;height:11px;background:rgba(255,255,255,.18);transform:translateY(-50%)}
.footer-legal a:hover{color:#fff;text-decoration:none}
.footer-copy{grid-area:copy;display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.10);padding-top:14px!important;color:#78969b!important;font-size:10px!important;line-height:1.4}
.footer-copy span{font-size:10px!important;margin:0!important}
@media(max-width:760px){
 .footer{padding:24px 0 16px}
 .footer .container.footer-layout{grid-template-columns:1fr!important;grid-template-areas:"brand" "links" "copy";gap:16px}
 .footer-legal{justify-content:flex-start;gap:8px 0!important}
 .footer-legal a{padding:3px 10px}
 .footer-legal a:first-child{padding-left:0}
 .footer-copy{display:block}
 .footer-copy span{display:inline!important;margin:0!important}
 .footer-copy span+span:before{content:" · ";}
}


/* v4.5 compact footer + one-link event discovery */
.footer{padding:20px 0 12px!important;background:#08272d!important}
.footer .container.footer-layout{display:grid!important;grid-template-columns:1fr auto!important;grid-template-areas:"brand links" "copy copy"!important;gap:12px 34px!important;align-items:end!important}
.footer-brand strong{font-size:14px!important;font-weight:800}.footer-brand p{font-size:10px!important;margin:3px 0 0!important;color:#8da7ab!important}
.footer-legal{display:flex!important;gap:18px!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important}
.footer-legal a{padding:0!important;font-size:10px!important;font-weight:600!important;color:#b9cbce!important}.footer-legal a+a:before{display:none!important}.footer-legal a:hover{color:#fff!important}
.footer-copy{display:block!important;border-top:1px solid rgba(255,255,255,.08)!important;padding-top:10px!important;font-size:9px!important;color:#6f9095!important}.footer-copy span{display:inline!important;font-size:9px!important}.footer-copy span+span:before{content:" · ";}
.ai-import-page{max-width:1040px;margin:0 auto}.ai-import-hero{padding:10px 0 22px}.ai-import-hero h1{margin:5px 0 8px;max-width:760px}.ai-import-hero p{max-width:760px;color:var(--muted);line-height:1.65}.ai-url-card{background:linear-gradient(135deg,#0b343b,#0d4645);border-radius:22px;padding:28px;margin-bottom:24px;box-shadow:0 16px 42px rgba(5,34,39,.12)}.ai-url-form label{display:block;color:#fff;font-size:12px;font-weight:800;margin-bottom:9px}.ai-url-line{display:grid;grid-template-columns:1fr auto;gap:10px}.ai-url-line input{min-height:54px;border:0;border-radius:13px;padding:0 17px;font-size:14px;background:#fff}.ai-url-line .button{min-height:54px;border-radius:13px;padding:0 22px}.ai-url-form>p{font-size:10px;color:#a9c5c6;margin:10px 0 0}.ai-results{margin-top:0}.ai-empty{padding:28px;text-align:center;color:var(--muted)}.ai-discovery-card{border:1px solid var(--line);border-radius:16px;padding:18px;margin:12px 0;background:#fff}.ai-discovery-card h3{margin:5px 0 6px}.ai-discovery-card p{margin:4px 0}
@media(max-width:760px){.footer .container.footer-layout{grid-template-columns:1fr!important;grid-template-areas:"brand" "links" "copy"!important}.footer-legal{justify-content:flex-start!important;gap:8px 16px!important}.ai-url-card{padding:18px}.ai-url-line{grid-template-columns:1fr}.ai-url-line .button{width:100%}}
/* v4.6 discovery preview */
.ai-preview-media{display:flex;gap:12px;align-items:center;margin:12px 0}.ai-preview-logo{width:110px;height:72px;object-fit:contain;border:1px solid var(--line);border-radius:10px;background:#fff;padding:7px}.ai-preview-photo{width:190px;height:105px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.ai-preview-desc{max-width:760px;line-height:1.55;color:#4e5d59}.ai-contact-preview{display:flex;gap:12px;flex-wrap:wrap;margin:7px 0 10px;font-size:12px;color:var(--muted)}@media(max-width:620px){.ai-preview-media{align-items:flex-start;flex-direction:column}.ai-preview-photo{width:100%;height:170px}}


/* v4.8 consolidated admin + filters + newsletter */
.site-brand-logo{height:44px!important;width:auto!important;max-width:250px!important}.account-links{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.link-button{border:0;background:none;padding:0;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.profile-edit-card{margin:18px 0}.organizer-edit-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.organizer-card-actions{flex-wrap:wrap}.button.danger{background:#fff1ef!important;color:#b63b2e!important;border-color:#f0c7c1!important}.newsletter-compose{margin:20px 0}.newsletter-send-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}@media(max-width:760px){.site-brand-logo{height:38px!important}.newsletter-send-row{grid-template-columns:1fr}.newsletter-send-row .button{width:100%}}

/* v4.8.2 search layout repair + larger brand */
.site-brand-logo{height:56px!important;width:auto!important;max-width:310px!important}
.hero-search{display:grid!important;grid-template-columns:minmax(280px,2fr) minmax(180px,1fr) minmax(210px,1.15fr) auto!important;gap:10px!important;align-items:stretch!important;width:100%!important;overflow:visible!important}
.hero-search>input,.hero-search>select,.hero-search>button{display:block!important;visibility:visible!important;opacity:1!important;min-width:0!important;margin:0!important}
.hero-search>button{white-space:nowrap!important;min-width:128px!important}
@media(max-width:980px){
 .site-brand-logo{height:50px!important;max-width:275px!important}
 .hero-search{grid-template-columns:1fr 1fr!important}
 .hero-search>input{grid-column:1/-1!important}
 .hero-search>button{width:100%!important}
}
@media(max-width:720px){
 .site-brand-logo{height:43px!important;max-width:235px!important}
 .hero-search{grid-template-columns:1fr!important}
 .hero-search>input{grid-column:auto!important}
 .hero-search>button{width:100%!important}
}

/* v4.8.4 homepage search hard reset */
.mx-home-search{display:grid!important;grid-template-columns:minmax(300px,2fr) minmax(190px,1fr) minmax(220px,1.15fr) 150px!important;gap:10px!important;align-items:stretch!important;width:100%!important;max-width:none!important;overflow:visible!important;box-sizing:border-box!important}
.mx-home-search>.mx-search-field{display:block!important;visibility:visible!important;opacity:1!important;min-width:0!important;width:auto!important}
.mx-home-search>.mx-search-field>input,.mx-home-search>.mx-search-field>select{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:58px!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;padding:0 18px!important;border:0!important;border-radius:10px!important;background:#fff!important;color:#12383d!important;font:inherit!important}
.mx-home-search>.mx-search-field>select{appearance:auto!important;-webkit-appearance:menulist!important}
.mx-home-search>.mx-search-submit{display:flex!important;visibility:visible!important;opacity:1!important;width:150px!important;height:58px!important;min-width:150px!important;margin:0!important;align-items:center!important;justify-content:center!important;border-radius:10px!important}
.site-brand-logo{height:64px!important;width:auto!important;max-width:310px!important;object-fit:contain!important}
.header .nav{min-width:0!important}.nav-links,.nav-actions{min-width:0!important}
@media(max-width:1050px){.mx-home-search{grid-template-columns:1fr 1fr!important}.mx-home-search>.mx-search-keyword{grid-column:1/-1!important}.mx-home-search>.mx-search-submit{width:100%!important;grid-column:1/-1!important}.site-brand-logo{height:56px!important}}
@media(max-width:680px){.mx-home-search{grid-template-columns:1fr!important}.mx-home-search>.mx-search-keyword,.mx-home-search>.mx-search-submit{grid-column:auto!important}.mx-home-search>.mx-search-submit{width:100%!important}.site-brand-logo{height:48px!important;max-width:230px!important}}
