/*
Theme Name: CallNegombo
Theme URI: https://callnegombo.com/
Author: CallNegombo
Description: Custom front-end theme for the CallNegombo local information platform.
Version: 0.31.4
Text Domain: callnegombo
*/

:root{
  --cn-bg:#f7f9fc;
  --cn-card:#ffffff;
  --cn-text:#142033;
  --cn-muted:#667085;
  --cn-line:#e5e7eb;
  --cn-primary:#146ef5;
  --cn-primary-dark:#0f56c7;
  --cn-accent:#11b981;
  --cn-danger:#dc2626;
  --cn-shadow:0 14px 40px rgba(20,32,51,.08);
  --cn-radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--cn-text);
  background:var(--cn-bg);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.cn-shell{width:min(1180px,calc(100% - 36px));margin-inline:auto}
.cn-site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(229,231,235,.8);
}
.cn-header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cn-brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:22px;letter-spacing:-.02em}
.cn-brand-mark{
  width:40px;height:40px;border-radius:13px;
  background:linear-gradient(135deg,var(--cn-primary),#6d5dfc);
  display:grid;place-items:center;color:#fff;font-weight:900
}
.cn-nav{display:flex;align-items:center;gap:22px;font-size:15px;font-weight:600}
.cn-nav a:hover{color:var(--cn-primary)}
.cn-header-cta{
  padding:11px 16px;border-radius:999px;background:var(--cn-text);color:#fff
}
.cn-mobile-toggle{display:none;background:none;border:0;font-size:24px}

.cn-hero{
  padding:70px 0 38px;
  background:
    radial-gradient(circle at 85% 18%,rgba(20,110,245,.13),transparent 28%),
    radial-gradient(circle at 14% 25%,rgba(17,185,129,.10),transparent 28%),
    linear-gradient(180deg,#fff 0%,#f8fbff 100%);
}
.cn-hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:50px;align-items:center}
.cn-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:#eaf2ff;color:#0f56c7;font-weight:700;font-size:13px}
.cn-hero h1{font-size:clamp(44px,6vw,74px);line-height:.98;letter-spacing:-.055em;margin:18px 0 20px;max-width:820px}
.cn-hero p{font-size:18px;color:var(--cn-muted);max-width:700px;margin:0 0 28px}
.cn-ai-search{
  background:#fff;border:1px solid var(--cn-line);padding:9px;border-radius:20px;
  display:flex;gap:10px;box-shadow:var(--cn-shadow);max-width:760px
}
.cn-ai-search input{flex:1;border:0;outline:0;font-size:16px;padding:13px 15px;background:transparent}
.cn-ai-search button{
  border:0;background:var(--cn-primary);color:#fff;border-radius:14px;
  font-weight:700;padding:0 22px;cursor:pointer
}
.cn-ai-search button:hover{background:var(--cn-primary-dark)}
.cn-search-hints{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.cn-search-hints span{font-size:13px;color:var(--cn-muted);background:#fff;border:1px solid var(--cn-line);padding:7px 10px;border-radius:999px}
.cn-hero-panel{
  min-height:420px;border-radius:34px;padding:24px;position:relative;overflow:hidden;
  background:linear-gradient(160deg,#142033,#1c3150 58%,#146ef5);
  color:#fff;box-shadow:0 24px 70px rgba(20,32,51,.25)
}
.cn-hero-panel::before{
  content:"";position:absolute;width:280px;height:280px;border-radius:50%;
  background:rgba(255,255,255,.10);right:-70px;top:-50px
}
.cn-hero-panel h3{font-size:28px;margin:8px 0 6px;letter-spacing:-.03em}
.cn-hero-panel p{color:rgba(255,255,255,.72);font-size:15px;margin:0}
.cn-hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.cn-stat{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);padding:18px;border-radius:18px}
.cn-stat strong{font-size:28px;display:block}
.cn-stat span{font-size:13px;color:rgba(255,255,255,.72)}
.cn-hero-list{margin-top:16px;display:grid;gap:10px}
.cn-hero-list-item{display:flex;justify-content:space-between;align-items:center;background:#fff;color:var(--cn-text);padding:12px 14px;border-radius:16px;font-size:14px;font-weight:700}

.cn-category-strip{padding:24px 0 8px}
.cn-category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.cn-category-card{
  background:#fff;border:1px solid var(--cn-line);border-radius:18px;padding:18px 14px;
  text-align:center;transition:.2s ease;min-height:112px;display:flex;flex-direction:column;justify-content:center;gap:7px
}
.cn-category-card:hover{transform:translateY(-3px);box-shadow:var(--cn-shadow);border-color:#cfd8e7}
.cn-category-icon{font-size:25px}
.cn-category-card strong{font-size:14px}

.cn-section{padding:58px 0}
.cn-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.cn-section-head h2{font-size:34px;letter-spacing:-.04em;margin:0 0 5px}
.cn-section-head p{margin:0;color:var(--cn-muted)}
.cn-link{color:var(--cn-primary);font-weight:700;white-space:nowrap}
.cn-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cn-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cn-card{
  background:#fff;border:1px solid var(--cn-line);border-radius:var(--cn-radius);
  overflow:hidden;box-shadow:0 8px 26px rgba(20,32,51,.045)
}
.cn-card-media{aspect-ratio:16/10;background:linear-gradient(135deg,#eaf2ff,#eef8f4);position:relative;overflow:hidden}
.cn-card-media img{width:100%;height:100%;object-fit:cover}
.cn-badge{position:absolute;left:12px;top:12px;padding:7px 10px;border-radius:999px;background:#fff;font-size:12px;font-weight:800;box-shadow:0 4px 16px rgba(0,0,0,.08)}
.cn-card-body{padding:18px}
.cn-card h3{font-size:18px;line-height:1.25;margin:0 0 8px;letter-spacing:-.02em}
.cn-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--cn-muted)}
.cn-price{font-size:20px;font-weight:800;margin-top:13px}
.cn-verified{color:var(--cn-primary);font-size:13px;font-weight:700}
.cn-rating{font-size:13px;font-weight:700}
.cn-promo-countdown{display:flex;gap:6px;margin-top:12px}
.cn-count-box{background:#f4f6f8;border-radius:10px;padding:8px 9px;font-size:12px;font-weight:800}
.cn-empty{background:#fff;border:1px dashed #cfd8e7;border-radius:20px;padding:28px;color:var(--cn-muted)}

.cn-jobs{display:grid;gap:12px}
.cn-job{
  background:#fff;border:1px solid var(--cn-line);border-radius:18px;padding:18px;
  display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center
}
.cn-job h3{margin:0 0 5px;font-size:18px}
.cn-job .cn-meta{margin-top:6px}
.cn-job-action{font-weight:700;color:var(--cn-primary)}

.cn-explore{
  border-radius:30px;padding:34px;
  background:linear-gradient(135deg,#edf5ff,#f2fbf7);
  border:1px solid #dfe8f4
}
.cn-explore-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center}
.cn-explore h2{font-size:38px;line-height:1.04;margin:0 0 12px;letter-spacing:-.04em}
.cn-explore p{color:var(--cn-muted);margin:0 0 22px}
.cn-explore-links{display:flex;gap:10px;flex-wrap:wrap}
.cn-pill{background:#fff;border:1px solid var(--cn-line);padding:10px 14px;border-radius:999px;font-weight:700;font-size:14px}
.cn-explore-art{min-height:220px;border-radius:24px;background:linear-gradient(145deg,#146ef5,#6d5dfc);position:relative;overflow:hidden}
.cn-explore-art::before,.cn-explore-art::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.15)}
.cn-explore-art::before{width:220px;height:220px;right:-60px;top:-40px}
.cn-explore-art::after{width:130px;height:130px;left:22px;bottom:-30px}

.cn-site-footer{margin-top:70px;background:#101826;color:#fff;padding:54px 0 28px}
.cn-footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:30px}
.cn-footer-grid h4{margin:0 0 12px}
.cn-footer-grid a{display:block;color:rgba(255,255,255,.72);margin:7px 0;font-size:14px}
.cn-footer-grid p{color:rgba(255,255,255,.68)}
.cn-footer-bottom{border-top:1px solid rgba(255,255,255,.10);margin-top:32px;padding-top:22px;font-size:13px;color:rgba(255,255,255,.55)}

@media(max-width:980px){
  .cn-hero-grid,.cn-explore-grid{grid-template-columns:1fr}
  .cn-hero-panel{min-height:auto}
  .cn-category-grid{grid-template-columns:repeat(3,1fr)}
  .cn-grid-4{grid-template-columns:repeat(2,1fr)}
  .cn-grid-3{grid-template-columns:repeat(2,1fr)}
  .cn-nav{display:none}
  .cn-mobile-toggle{display:block}
  .cn-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .cn-shell{width:min(100% - 24px,1180px)}
  .cn-header-inner{height:68px}
  .cn-hero{padding-top:40px}
  .cn-hero h1{font-size:44px}
  .cn-ai-search{flex-direction:column}
  .cn-ai-search button{min-height:48px}
  .cn-category-grid{grid-template-columns:repeat(2,1fr)}
  .cn-grid-3,.cn-grid-4{grid-template-columns:1fr}
  .cn-section{padding:42px 0}
  .cn-section-head{align-items:start;flex-direction:column}
  .cn-job{grid-template-columns:1fr}
  .cn-footer-grid{grid-template-columns:1fr}
}

/* ===== CallNegombo v0.5.0 homepage refinement ===== */
.cn-hero-v5{padding:72px 0 62px;background:radial-gradient(circle at 5% 30%,#e8fbf6 0,transparent 28%),radial-gradient(circle at 92% 15%,#eaf1ff 0,transparent 30%),#fff}
.cn-hero-v5 .cn-hero-grid{grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.cn-hero-copy .cn-kicker{background:#eef5ff;color:#1263d6}.cn-hero-copy .cn-kicker i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#1473e6;margin-right:7px}
.cn-hero-v5 h1{font-size:clamp(48px,5.6vw,78px);max-width:850px;margin:20px 0 18px}.cn-hero-v5 h1 span{color:#1b65d8}.cn-hero-v5 .cn-hero-copy>p{font-size:19px;line-height:1.65;max-width:720px}
.cn-search-symbol{font-size:27px;color:#738096;padding-left:13px;align-self:center}.cn-hero-v5 .cn-ai-search{max-width:800px;border-radius:16px;box-shadow:0 14px 38px rgba(25,45,75,.10)}
.cn-search-hints{align-items:center}.cn-search-hints b{font-size:12px;color:#7a8798}.cn-search-hints a{font-size:12px;color:#516176;background:#fff;border:1px solid #e2e7ef;padding:6px 10px;border-radius:99px}
.cn-local-board{background:#101c30;color:#fff;border-radius:28px;padding:26px;box-shadow:0 28px 60px rgba(20,32,51,.2);position:relative;overflow:hidden}.cn-local-board:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:#1f6ee8;opacity:.16;right:-110px;top:-100px}.cn-board-top{display:flex;align-items:center;gap:9px;color:#aebbd0;font-size:11px;letter-spacing:.08em}.cn-board-top span:last-child{margin-left:auto;letter-spacing:0}.cn-live-dot{width:8px;height:8px;border-radius:50%;background:#32d583;box-shadow:0 0 0 5px rgba(50,213,131,.12)}.cn-local-board h2{font-size:28px;margin:20px 0 20px;letter-spacing:-.035em}.cn-board-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative;z-index:1}.cn-board-stats a{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;background:#192a43;border:1px solid #2a3d5a;border-radius:16px;padding:15px;color:#fff}.cn-mini-icon{grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#233b60;margin-right:9px}.cn-mini-icon svg,.cn-job-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cn-board-stats strong{font-size:22px}.cn-board-stats small{color:#9eb0c9}.cn-board-highlight{margin-top:14px;background:#fff;color:#102038;border-radius:15px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.cn-board-highlight span{display:grid;gap:3px}.cn-board-highlight small{font-size:9px;color:#1b6ce0;font-weight:800;letter-spacing:.09em}.cn-board-highlight b{font-size:14px}.cn-board-highlight em{font-size:20px;font-style:normal}
.cn-quicknav{background:#f5f8fc;padding:22px 0;border-top:1px solid #eef1f5;border-bottom:1px solid #e8edf4}.cn-quicknav .cn-category-grid{gap:10px}.cn-quicknav .cn-category-card{min-height:86px;padding:14px;text-align:left;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;border-radius:14px}.cn-quicknav .cn-category-icon{width:42px;height:42px;border-radius:12px;background:#eef5ff;color:#176be0;display:grid;place-items:center}.cn-category-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cn-quicknav .cn-category-card span:nth-child(2){display:grid;gap:2px}.cn-quicknav .cn-category-card small{font-size:10px;color:#7c899a}.cn-quicknav .cn-category-card>b{color:#a1acba;font-size:20px}
.cn-section{padding:64px 0}.cn-white-section{background:#fff}.cn-eyebrow{display:block;color:#176be0;font-size:11px;font-weight:800;letter-spacing:.12em;margin-bottom:8px}.cn-section-head h2{font-size:36px}.cn-section-head p{font-size:15px}.cn-section-head .cn-link{font-size:14px}.cn-card{transition:transform .2s ease,box-shadow .2s ease}.cn-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(20,32,51,.10)}.cn-card-media{aspect-ratio:16/9}.cn-card-body{padding:17px}.cn-card h3{font-size:18px}.cn-card-link{display:block;margin-top:13px;color:#176be0;font-size:13px;font-weight:800}.cn-time-badge{position:absolute;right:12px;bottom:12px;background:#101c30;color:#fff;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:800}.cn-verified-badge{position:absolute;left:12px;bottom:12px;background:#fff;color:#176be0;padding:7px 9px;border-radius:8px;font-size:10px;font-weight:800;box-shadow:0 4px 15px rgba(0,0,0,.1)}.cn-stars{margin-left:auto;color:#e79813}.cn-location-line{font-size:12px;color:#6e7b8d;margin-top:10px}.cn-property-facts{display:flex;gap:10px;flex-wrap:wrap;color:#6d7a8b;font-size:12px;margin-top:12px}.cn-price{border-top:1px solid #edf0f4;padding-top:13px}.cn-price small{font-size:11px;font-weight:500;color:#7b8796}
.cn-split-sections{display:grid;grid-template-columns:1fr 1fr;gap:52px}.cn-mini-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.cn-mini-head h2{font-size:30px;margin:0}.cn-mini-head a{color:#176be0;font-size:13px;font-weight:800}.cn-event-list,.cn-job-list{display:grid;gap:10px}.cn-event-row{display:grid;grid-template-columns:54px 1fr auto;gap:13px;align-items:center;border:1px solid #e4e9f0;border-radius:14px;padding:11px;background:#fff}.cn-date-tile{width:50px;height:50px;border-radius:11px;background:#eef5ff;color:#176be0;display:grid;place-items:center;align-content:center}.cn-date-tile b{font-size:20px;line-height:1}.cn-date-tile small{font-size:9px;font-weight:800}.cn-event-row>span:nth-child(2),.cn-job-row>span:nth-child(2){display:grid;gap:4px}.cn-event-row small,.cn-job-row small{color:#7a8798;font-size:11px}.cn-event-row em{font-size:22px;color:#a3adba;font-style:normal}.cn-job-row{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid #e8ecf1;padding:12px 0}.cn-job-icon{width:40px;height:40px;border-radius:11px;background:#f1f5fb;color:#176be0;display:grid;place-items:center}.cn-job-type{font-size:10px;font-weight:700;color:#546377;background:#f3f6f9;padding:6px 8px;border-radius:99px}
.cn-discover-v5{border:1px solid #dce6f2;border-radius:28px;background:linear-gradient(135deg,#edf6ff,#f1fbf8);padding:42px;display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center}.cn-discover-v5 h2{font-size:40px;line-height:1.05;margin:0 0 14px}.cn-discover-v5 p{color:#66758a;max-width:620px}.cn-pill-primary{background:#176be0;color:#fff;border-color:#176be0}.cn-discover-map{min-height:240px;border-radius:22px;background:linear-gradient(145deg,#176be0,#6759ee);display:grid;place-items:center;align-content:center;color:#fff;position:relative;overflow:hidden}.cn-discover-map:before,.cn-discover-map:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.15);border-radius:50%}.cn-discover-map:before{width:290px;height:290px}.cn-discover-map:after{width:180px;height:180px}.cn-map-pin{width:62px;height:62px;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);background:#fff;color:#176be0;display:grid;place-items:center;font-weight:900;font-size:18px;z-index:1}.cn-map-pin::first-line{transform:rotate(45deg)}.cn-discover-map b,.cn-discover-map small{z-index:1;margin-top:12px}.cn-discover-map small{margin-top:3px;color:#dce8ff}
.cn-cta{padding:0 0 70px}.cn-cta-inner{background:#101c30;color:#fff;border-radius:24px;padding:34px 40px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cn-cta-inner span{font-size:10px;letter-spacing:.12em;color:#8fa7c8;font-weight:800}.cn-cta-inner h2{font-size:30px;margin:5px 0}.cn-cta-inner p{color:#aebbd0;margin:0}.cn-cta-inner>a{background:#fff;color:#102038;border-radius:12px;padding:14px 18px;font-weight:800;white-space:nowrap}
@media(max-width:980px){.cn-hero-v5 .cn-hero-grid,.cn-discover-v5,.cn-split-sections{grid-template-columns:1fr}.cn-quicknav .cn-category-grid{grid-template-columns:repeat(2,1fr)}.cn-hero-v5{padding-top:45px}.cn-cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.cn-hero-v5 h1{font-size:46px}.cn-hero-v5 .cn-hero-grid{gap:38px}.cn-board-stats{grid-template-columns:1fr 1fr}.cn-quicknav .cn-category-grid{grid-template-columns:1fr 1fr}.cn-quicknav .cn-category-card{grid-template-columns:38px 1fr;padding:10px}.cn-quicknav .cn-category-card>b,.cn-quicknav .cn-category-card small{display:none}.cn-discover-v5{padding:26px}.cn-discover-v5 h2{font-size:32px}.cn-cta-inner{padding:28px}.cn-section{padding:48px 0}}

/* v0.5.1 homepage polish */
.cn-hero-v5{padding:58px 0 50px}
.cn-ai-entry{max-width:800px;margin-top:16px;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dce6f5;border-radius:14px;background:#f8fbff;color:#13233b}
.cn-ai-entry .cn-ai-spark{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e9f2ff;color:#176be0;font-size:18px;font-weight:900}
.cn-ai-entry span:nth-child(2){display:flex;flex-direction:column;gap:2px}.cn-ai-entry b{font-size:13px}.cn-ai-entry small{font-size:11px;color:#718096}
.cn-ai-entry em{margin-left:auto;font-style:normal;font-size:10px;font-weight:800;color:#176be0;background:#e9f2ff;padding:6px 9px;border-radius:999px;white-space:nowrap}
.cn-promo-business{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#176be0;margin-bottom:6px}
.cn-card-media:has(img){background:#e8edf5}.cn-card-media img{display:block}
@media(max-width:640px){.cn-hero-v5{padding:38px 0 36px}.cn-ai-entry small{display:none}.cn-ai-entry em{font-size:9px}}

/* ===== CallNegombo v0.6.0 Business Directory + Profile ===== */
.cn-directory-hero{padding:66px 0 38px;background:radial-gradient(circle at 7% 20%,#eafbf6 0,transparent 30%),radial-gradient(circle at 95% 10%,#eaf1ff 0,transparent 28%),#fff;border-bottom:1px solid var(--cn-line)}
.cn-directory-hero h1{font-size:clamp(42px,5vw,68px);letter-spacing:-.055em;line-height:1;margin:8px 0 14px;max-width:850px}.cn-directory-hero>div>p{font-size:18px;color:var(--cn-muted);max-width:760px;line-height:1.6}
.cn-directory-filter{margin-top:28px;display:grid;grid-template-columns:minmax(300px,1.7fr) 1fr 1fr auto;gap:10px;background:#fff;border:1px solid #dfe5ee;border-radius:18px;padding:9px;box-shadow:0 16px 42px rgba(20,32,51,.08)}
.cn-directory-filter input,.cn-directory-filter select{width:100%;border:0;background:#f7f9fc;border-radius:12px;padding:14px 14px;font:inherit;color:var(--cn-text);outline:none}.cn-filter-search{display:grid;grid-template-columns:28px 1fr;align-items:center;background:#f7f9fc;border-radius:12px;padding-left:12px}.cn-filter-search span{font-size:22px;color:#748198}.cn-filter-search input{padding-left:0}.cn-directory-filter button{border:0;border-radius:12px;background:var(--cn-primary);color:#fff;font-weight:800;padding:0 24px;cursor:pointer}
.cn-active-filter{display:flex;justify-content:space-between;gap:15px;margin-top:14px;font-size:13px;color:var(--cn-muted)}.cn-active-filter a{color:var(--cn-primary);font-weight:800}.cn-result-count{font-size:13px;color:var(--cn-muted);background:#fff;border:1px solid var(--cn-line);padding:8px 12px;border-radius:99px}.cn-business-category{display:inline-block;color:var(--cn-primary);font-size:10px;letter-spacing:.08em;font-weight:900;text-transform:uppercase;margin-bottom:8px}.cn-card-description{color:var(--cn-muted);font-size:13px;line-height:1.55;margin:8px 0 15px;min-height:40px}.cn-business-card-foot{display:flex;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid #edf0f4;color:var(--cn-muted);font-size:12px}.cn-business-card-foot strong{color:#d58b12}.cn-media-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#176be0,#6759ee);color:#fff;font-size:44px;font-weight:900}.cn-pagination{display:flex;justify-content:center;gap:7px;margin-top:34px;flex-wrap:wrap}.cn-pagination .page-numbers{padding:9px 13px;background:#fff;border:1px solid var(--cn-line);border-radius:9px;font-size:13px;font-weight:700}.cn-pagination .current{background:var(--cn-primary);border-color:var(--cn-primary);color:#fff}.cn-directory-empty{text-align:center;padding:50px}.cn-directory-empty h3{margin-top:0;color:var(--cn-text)}
.cn-business-profile-hero{padding:38px 0 0;background:#f7f9fc}.cn-business-cover{height:min(45vw,480px);min-height:300px;border-radius:26px;overflow:hidden;background:#eaf1fb}.cn-business-cover img{width:100%;height:100%;object-fit:cover}.cn-profile-heading{margin:-54px 28px 0;position:relative;background:#fff;border:1px solid var(--cn-line);border-radius:22px;padding:24px 28px;display:flex;justify-content:space-between;align-items:end;gap:24px;box-shadow:0 16px 40px rgba(20,32,51,.09)}.cn-profile-heading h1{font-size:clamp(34px,4vw,52px);letter-spacing:-.045em;line-height:1.05;margin:9px 0}.cn-profile-heading p{color:var(--cn-muted);margin:0}.cn-profile-labels{display:flex;gap:8px;flex-wrap:wrap}.cn-profile-labels span,.cn-profile-labels b{font-size:10px;padding:7px 9px;border-radius:99px;background:#eef5ff;color:#176be0;text-transform:uppercase;letter-spacing:.06em}.cn-profile-labels b{background:#eafaf3;color:#137a55}.cn-profile-actions{display:flex;gap:9px;flex-wrap:wrap}.cn-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--cn-primary);color:#fff!important;border-radius:11px;padding:12px 18px;font-weight:800;font-size:13px}.cn-btn-light{background:#fff!important;color:var(--cn-text)!important;border:1px solid var(--cn-line)}
.cn-profile-section{background:#f7f9fc}.cn-profile-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:24px;align-items:start}.cn-profile-box{background:#fff;border:1px solid var(--cn-line);border-radius:20px;padding:26px;margin-bottom:20px}.cn-profile-box h2{font-size:25px;margin:0 0 16px}.cn-profile-box h3{margin-top:0}.cn-lead-copy{font-size:17px;line-height:1.7;color:#4e5d70}.cn-entry-content{line-height:1.75;color:#4e5d70}.cn-business-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cn-business-gallery a{aspect-ratio:4/3;border-radius:13px;overflow:hidden}.cn-business-gallery img{width:100%;height:100%;object-fit:cover}.cn-sticky-card{position:sticky;top:92px}.cn-info-row{padding:14px 0;border-top:1px solid #edf0f4}.cn-info-row small{font-size:9px;letter-spacing:.1em;font-weight:900;color:#8491a2}.cn-info-row p{margin:5px 0 0;color:#445267;line-height:1.5}.cn-info-row a{color:var(--cn-primary);font-weight:700}.cn-map-button{display:block;text-align:center;margin-top:10px;background:#eef5ff;color:#176be0;padding:12px;border-radius:10px;font-size:12px;font-weight:800}.cn-mini-offer{background:#f7f9fc;border:1px solid #e8edf4;border-radius:14px;padding:15px}.cn-mini-offer span{font-size:9px;color:#176be0;font-weight:900;letter-spacing:.08em}.cn-mini-offer h3{font-size:15px;margin:6px 0}.cn-mini-offer small{color:var(--cn-muted)}
@media(max-width:980px){.cn-directory-filter{grid-template-columns:1fr 1fr}.cn-filter-search{grid-column:1/-1}.cn-directory-filter button{min-height:48px}.cn-profile-layout{grid-template-columns:1fr}.cn-sticky-card{position:static}.cn-profile-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.cn-directory-hero{padding-top:44px}.cn-directory-filter{grid-template-columns:1fr}.cn-filter-search{grid-column:auto}.cn-directory-filter button{min-height:48px}.cn-profile-heading{margin:-30px 12px 0;padding:20px}.cn-business-cover{min-height:240px;border-radius:18px}.cn-business-gallery{grid-template-columns:1fr 1fr}.cn-profile-actions{width:100%}.cn-profile-actions .cn-btn{flex:1}.cn-profile-box{padding:20px}}


/* v0.6.1 Business Profile polish */
.cn-business-profile{padding:48px 0 80px}
.cn-business-cover{height:430px;border-radius:28px;overflow:hidden;background:#eaf1f8;border:1px solid var(--cn-line)}
.cn-business-cover img{width:100%;height:100%;object-fit:cover;display:block}
.cn-business-cover.no-image{display:grid;place-items:center;background:linear-gradient(135deg,#eaf2ff,#eef8f4)}
.cn-business-placeholder{text-align:center;color:var(--cn-muted);font-weight:700}
.cn-business-placeholder-mark{width:72px;height:72px;border-radius:22px;background:var(--cn-primary);color:#fff;display:grid;place-items:center;font-size:24px;margin:0 auto 12px}
.cn-business-identity{position:relative;margin:-68px 34px 0;background:#fff;border:1px solid var(--cn-line);border-radius:24px;box-shadow:var(--cn-shadow);padding:28px 32px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.cn-business-identity h1{font-size:clamp(36px,4vw,58px);line-height:1.02;letter-spacing:-.045em;margin:12px 0}
.cn-profile-badges{display:flex;flex-wrap:wrap;gap:8px}
.cn-profile-badge{font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:7px 10px;border-radius:999px;background:#eef5ff;color:#1264db}
.cn-profile-badge.verified{background:#eaf8f1;color:#087443}
.cn-business-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--cn-muted)}
.cn-business-actions{display:flex;gap:10px;flex-wrap:wrap}
.cn-action-btn{padding:14px 20px;border-radius:14px;font-weight:800;border:1px solid var(--cn-line)}
.cn-action-btn.primary{background:var(--cn-primary);color:#fff;border-color:var(--cn-primary)}
.cn-action-btn.secondary{background:#fff;color:var(--cn-text)}
.cn-business-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;margin-top:34px}
.cn-profile-panel,.cn-info-card{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:30px}
.cn-profile-panel{margin-bottom:24px}
.cn-profile-panel h2,.cn-info-card h2{font-size:28px;letter-spacing:-.03em;margin:0 0 22px}
.cn-profile-copy{font-size:17px;color:#3f5068}
.cn-profile-copy p:first-child{margin-top:0}.cn-profile-copy p:last-child{margin-bottom:0}
.cn-info-card{position:sticky;top:96px}
.cn-info-row{padding:16px 0;border-top:1px solid var(--cn-line)}
.cn-info-row:first-of-type{border-top:0}
.cn-info-row small{display:block;text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:11px;color:#7b8798;margin-bottom:7px}
.cn-info-row a{color:var(--cn-primary);font-weight:700}
.cn-business-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cn-business-gallery.count-1{grid-template-columns:1fr}
.cn-business-gallery.count-1 .cn-gallery-item{max-height:520px}
.cn-gallery-item{border-radius:18px;overflow:hidden;min-height:240px;background:#eef3f8}
.cn-gallery-item img{width:100%;height:100%;min-height:240px;object-fit:cover;display:block;transition:transform .2s ease}
.cn-gallery-item:hover img{transform:scale(1.02)}
.cn-profile-panel-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.cn-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cn-offer-card{border:1px solid var(--cn-line);border-radius:18px;overflow:hidden;background:#fff}
.cn-offer-media{height:145px;background:linear-gradient(135deg,#146ef5,#6d5dfc);display:grid;place-items:center;color:#fff;font-weight:900}
.cn-offer-media img{width:100%;height:100%;object-fit:cover}
.cn-offer-body{padding:16px}
.cn-offer-body small{color:var(--cn-primary);font-weight:900;letter-spacing:.08em}
.cn-offer-body h3{font-size:18px;margin:6px 0}
.cn-offer-body p{color:var(--cn-muted);margin:0 0 8px}
.cn-profile-countdown{font-size:12px;font-weight:800;color:#fff;background:#111c2f;border-radius:10px;padding:8px 10px;display:inline-block}
.cn-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cn-related-card{border:1px solid var(--cn-line);border-radius:18px;overflow:hidden}
.cn-related-media{height:150px;background:#eef3f8}
.cn-related-media img{width:100%;height:100%;object-fit:cover}
.cn-related-body{padding:14px;display:flex;flex-direction:column;gap:5px}
.cn-related-body span{font-size:13px;color:var(--cn-muted)}
.cn-mobile-actionbar{display:none}

@media(max-width:980px){
  .cn-business-layout{grid-template-columns:1fr}
  .cn-info-card{position:static}
  .cn-business-cover{height:360px}
  .cn-business-identity{margin:-46px 18px 0;align-items:flex-start;flex-direction:column}
  .cn-offer-grid,.cn-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .cn-business-profile{padding:24px 0 90px}
  .cn-business-cover{height:260px;border-radius:20px}
  .cn-business-identity{margin:-28px 10px 0;padding:22px;border-radius:20px}
  .cn-business-identity h1{font-size:36px}
  .cn-business-actions{width:100%}.cn-business-actions .cn-action-btn{flex:1;text-align:center}
  .cn-profile-panel,.cn-info-card{padding:22px;border-radius:20px}
  .cn-business-gallery,.cn-offer-grid,.cn-related-grid{grid-template-columns:1fr}
  .cn-gallery-item{min-height:210px}
  .cn-mobile-actionbar{position:fixed;display:flex;bottom:0;left:0;right:0;z-index:80;background:#fff;border-top:1px solid var(--cn-line);padding:9px 10px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px rgba(20,32,51,.10)}
  .cn-mobile-actionbar a{flex:1;text-align:center;padding:12px 6px;font-weight:800;color:var(--cn-primary);font-size:13px}
}


/* v0.6.2 visual corrections */
.cn-business-cover.no-image{
  height:360px;
  background:
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.12),transparent 25%),
    radial-gradient(circle at 12% 85%,rgba(255,255,255,.10),transparent 22%),
    linear-gradient(135deg,#13243d 0%,#174b8d 58%,#1677ff 100%);
  border:0;
}
.cn-business-cover.no-image .cn-business-placeholder{
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:34px;
}
.cn-business-cover.no-image .cn-business-placeholder-mark{
  background:#fff;
  color:#1769e8;
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.cn-business-cover.no-image .cn-business-placeholder strong{
  font-size:30px;
  letter-spacing:-.03em;
  text-align:center;
}
.cn-business-cover.no-image .cn-business-placeholder span{
  color:rgba(255,255,255,.72);
  font-weight:600;
}
.cn-business-identity{
  margin-top:-42px;
}

/* Strong countdown contrast across homepage + profile */
.cn-count-box,
.cn-profile-countdown .cn-count-box{
  background:#ffffff !important;
  color:#102039 !important;
  border:1px solid rgba(16,32,57,.12) !important;
  font-weight:900 !important;
  text-shadow:none !important;
  min-width:44px;
  text-align:center;
}
.cn-promo-countdown,
.cn-profile-countdown{
  background:#102039 !important;
  color:#fff !important;
  border-radius:12px;
}
.cn-profile-countdown{
  padding:7px !important;
}
.cn-promo-countdown .cn-count-box{
  padding:8px 9px;
}

@media(max-width:640px){
  .cn-business-cover.no-image{height:245px}
  .cn-business-cover.no-image .cn-business-placeholder strong{font-size:23px}
  .cn-business-identity{margin-top:-22px}
}

.cn-count-box small{font-size:9px;margin-left:2px;color:#64748b;font-weight:800}


/* v0.6.3 — compact marketplace countdown */
.cn-promo-countdown,
.cn-profile-countdown{
  display:block !important;
  background:transparent !important;
  padding:0 !important;
  border-radius:0 !important;
  margin-top:12px;
}
.cn-countdown-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:8px 11px;
  border-radius:999px;
  background:#f2f6fb;
  color:#42526a;
  border:1px solid #e1e8f0;
  font-size:12px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
.cn-countdown-status strong{
  color:#142033;
  font-weight:900;
}
.cn-countdown-clock{
  font-size:15px;
  color:#146ef5;
  line-height:1;
}
.cn-countdown-label{
  color:#69768a;
  font-weight:700;
}
.cn-countdown-status.soon{
  background:#fff7e8;
  border-color:#f7d9a2;
}
.cn-countdown-status.soon .cn-countdown-clock,
.cn-countdown-status.soon strong{
  color:#a85a00;
}
.cn-countdown-status.critical{
  background:#fff0f0;
  border-color:#f3c6c6;
}
.cn-countdown-status.critical .cn-countdown-clock,
.cn-countdown-status.critical strong{
  color:#c62828;
}
.cn-countdown-status.expired{
  background:#f4f4f5;
  border-color:#e4e4e7;
  color:#71717a;
}
.cn-countdown-status.expired .cn-countdown-clock{display:none}
.cn-count-box,
.cn-profile-countdown .cn-count-box{
  display:none !important;
}
@media(max-width:640px){
  .cn-countdown-status{
    font-size:11px;
    padding:8px 10px;
    gap:6px;
  }
}


/* v0.7 Property Directory + Profile */
.cn-directory-hero{padding:58px 0 24px;background:linear-gradient(180deg,#fff,#f7faff)}
.cn-directory-kicker{font-size:12px;font-weight:900;letter-spacing:.12em;color:var(--cn-primary)}
.cn-directory-hero h1{font-size:clamp(42px,5vw,64px);letter-spacing:-.05em;line-height:1;margin:12px 0}
.cn-directory-hero p{font-size:18px;color:var(--cn-muted);max-width:760px}
.cn-directory-section{padding:26px 0 76px}
.cn-directory-filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px;background:#fff;border:1px solid var(--cn-line);padding:14px;border-radius:20px;box-shadow:0 8px 26px rgba(20,32,51,.05)}
.cn-property-filters{grid-template-columns:2fr repeat(4,1fr)}
.cn-property-filters input,.cn-property-filters select,.cn-property-filters button{min-height:46px;border-radius:12px;border:1px solid var(--cn-line);padding:0 12px;background:#fff}
.cn-property-filters button{background:var(--cn-primary);color:#fff;font-weight:800;border-color:var(--cn-primary);cursor:pointer}
.cn-filter-search{grid-column:span 2}.cn-filter-search input{width:100%}
.cn-clear-filters{align-self:center;color:var(--cn-primary);font-weight:800;padding:10px}
.cn-directory-toolbar{display:flex;justify-content:space-between;align-items:center;margin:22px 0;color:var(--cn-muted)}
.cn-directory-help{font-size:13px}
.cn-property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cn-property-card{background:#fff;border:1px solid var(--cn-line);border-radius:22px;overflow:hidden;box-shadow:0 8px 26px rgba(20,32,51,.04)}
.cn-property-card-media{height:250px;position:relative;background:#eaf1f8;overflow:hidden}
.cn-property-card-media img{width:100%;height:100%;object-fit:cover}
.cn-property-card-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#173557,#2471e8);color:#fff;font-size:28px;font-weight:900}
.cn-property-badges{position:absolute;left:12px;top:12px;display:flex;gap:8px;flex-wrap:wrap}
.cn-property-badge{padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900;background:#fff}
.cn-property-badge.primary{color:#173557}.cn-property-badge.featured{background:#fff7e6;color:#9a5a00}
.cn-property-card-body{padding:18px}
.cn-property-card-topline{font-size:12px;color:var(--cn-muted);text-transform:uppercase;letter-spacing:.04em}
.cn-property-card h2{font-size:21px;line-height:1.2;letter-spacing:-.025em;margin:8px 0 10px}
.cn-property-facts{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--cn-muted)}
.cn-property-price{font-size:21px;font-weight:900;margin-top:14px}
.cn-no-results{grid-column:1/-1;background:#fff;border:1px dashed #ccd7e3;border-radius:20px;padding:34px}
.cn-no-results a{color:var(--cn-primary);font-weight:800}
.cn-directory-pagination{margin-top:28px}

.cn-property-profile{padding:48px 0 80px}
.cn-property-profile-cover{height:420px;border-radius:28px;overflow:hidden;background:#eaf1f8}
.cn-property-profile-cover img{width:100%;height:100%;object-fit:cover}
.cn-property-profile-cover.no-image{display:grid;place-items:center;background:linear-gradient(135deg,#13243d,#174b8d 58%,#1677ff)}
.cn-property-profile-placeholder{display:flex;flex-direction:column;align-items:center;color:#fff;gap:8px;text-align:center;padding:30px}
.cn-property-profile-placeholder span{width:72px;height:72px;border-radius:22px;background:#fff;color:#1769e8;display:grid;place-items:center;font-size:24px;font-weight:900}
.cn-property-profile-placeholder strong{font-size:28px}.cn-property-profile-placeholder small{color:rgba(255,255,255,.72);font-size:15px}
.cn-property-summary{position:relative;margin:-48px 34px 0;background:#fff;border:1px solid var(--cn-line);border-radius:24px;box-shadow:var(--cn-shadow);padding:28px 32px;display:flex;justify-content:space-between;gap:24px;align-items:flex-end}
.cn-property-summary h1{font-size:clamp(36px,4vw,54px);letter-spacing:-.045em;line-height:1.02;margin:12px 0}
.cn-property-summary-price{text-align:right}.cn-property-summary-price small{display:block;color:var(--cn-muted);font-weight:700}.cn-property-summary-price strong{font-size:30px;display:block;margin-top:6px}
.cn-property-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;margin-top:34px}
.cn-property-fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cn-property-fact-grid div{background:#f7f9fc;border:1px solid var(--cn-line);border-radius:16px;padding:16px}
.cn-property-fact-grid small{display:block;color:var(--cn-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:5px}
.cn-property-contact-card{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:28px;position:sticky;top:96px}
.cn-property-contact-card h2{margin:0 0 18px;font-size:28px}
.cn-property-contact-btn{display:block;text-align:center;padding:13px 14px;border-radius:13px;margin-bottom:10px;font-weight:900;border:1px solid var(--cn-line)}
.cn-property-contact-btn.primary{background:#142033;color:#fff;border-color:#142033}
.cn-property-contact-btn.whatsapp{background:#146ef5;color:#fff;border-color:#146ef5}
.cn-property-contact-btn.secondary{background:#fff;color:var(--cn-primary)}
@media(max-width:1100px){
  .cn-property-filters{grid-template-columns:repeat(3,1fr)}.cn-filter-search{grid-column:span 2}
  .cn-property-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
  .cn-property-profile-layout{grid-template-columns:1fr}
  .cn-property-contact-card{position:static}
  .cn-property-summary{margin:-36px 18px 0;flex-direction:column;align-items:flex-start}
  .cn-property-summary-price{text-align:left}
}
@media(max-width:640px){
  .cn-property-filters{grid-template-columns:1fr}.cn-filter-search{grid-column:auto}
  .cn-property-grid{grid-template-columns:1fr}.cn-property-card-media{height:230px}
  .cn-directory-toolbar{align-items:flex-start;gap:8px;flex-direction:column}
  .cn-property-profile{padding:24px 0 90px}.cn-property-profile-cover{height:250px;border-radius:20px}
  .cn-property-summary{margin:-22px 10px 0;padding:22px}.cn-property-summary-price strong{font-size:25px}
  .cn-property-fact-grid{grid-template-columns:1fr 1fr}
}


/* v0.8 Promotions & Deals */
.cn-promo-filters{grid-template-columns:2fr 1fr 1fr 1fr auto}
.cn-promo-filters input,.cn-promo-filters select,.cn-promo-filters button{min-height:46px;border-radius:12px;border:1px solid var(--cn-line);padding:0 12px;background:#fff}
.cn-promo-filters button{background:var(--cn-primary);color:#fff;font-weight:800;border-color:var(--cn-primary)}
.cn-promo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cn-promo-card{background:#fff;border:1px solid var(--cn-line);border-radius:22px;overflow:hidden;box-shadow:0 8px 26px rgba(20,32,51,.04)}
.cn-promo-card-media{height:240px;position:relative;overflow:hidden;background:#eef3f8}
.cn-promo-card-media img{width:100%;height:100%;object-fit:cover}
.cn-promo-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#5b43a3,#2d92b7);color:#fff;font-size:30px;font-weight:900}
.cn-promo-card-badges{position:absolute;top:12px;left:12px;display:flex;gap:8px}
.cn-promo-badge{background:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}
.cn-promo-badge.featured{background:#fff6e5;color:#9a5a00}
.cn-promo-card-body{padding:18px}
.cn-promo-business{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--cn-primary);margin-bottom:6px}
.cn-promo-card h2{font-size:21px;line-height:1.2;margin:0 0 10px}
.cn-promo-view{display:inline-block;margin-top:12px;color:var(--cn-primary);font-weight:900}

.cn-promotion-profile{padding:48px 0 80px}
.cn-promotion-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:0;background:#fff;border:1px solid var(--cn-line);border-radius:28px;overflow:hidden;box-shadow:var(--cn-shadow)}
.cn-promotion-visual{min-height:460px;background:#eef3f8}
.cn-promotion-visual img{width:100%;height:100%;min-height:460px;object-fit:cover}
.cn-promotion-placeholder{width:100%;height:100%;min-height:460px;display:grid;place-items:center;background:linear-gradient(135deg,#5b43a3,#2d92b7);color:#fff}
.cn-promotion-placeholder span{font-size:42px;font-weight:900}
.cn-promotion-hero-copy{padding:42px;display:flex;flex-direction:column;justify-content:center}
.cn-promotion-hero-copy h1{font-size:clamp(38px,4vw,56px);line-height:1.02;letter-spacing:-.04em;margin:12px 0}
.cn-promotion-value{font-size:24px;font-weight:900;color:var(--cn-primary);margin:4px 0 12px}
.cn-promotion-main-countdown{margin:18px 0 20px}
.cn-promotion-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;margin-top:28px}
.cn-promotion-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cn-promotion-date-grid div{background:#f7f9fc;border:1px solid var(--cn-line);border-radius:16px;padding:16px}
.cn-promotion-date-grid small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--cn-muted);font-weight:800;margin-bottom:5px}
.cn-promotion-info-card{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:28px;position:sticky;top:96px}
.cn-promotion-info-card h2{margin:0 0 18px;font-size:28px}
.cn-promotion-expired-note{margin-top:14px;background:#f4f4f5;border:1px solid #e4e4e7;border-radius:12px;padding:12px;color:#71717a;font-weight:700}
@media(max-width:980px){
  .cn-promo-grid{grid-template-columns:repeat(2,1fr)}
  .cn-promotion-hero{grid-template-columns:1fr}.cn-promotion-visual,.cn-promotion-visual img,.cn-promotion-placeholder{min-height:340px}
  .cn-promotion-layout{grid-template-columns:1fr}.cn-promotion-info-card{position:static}
}
@media(max-width:700px){
  .cn-promo-filters{grid-template-columns:1fr}.cn-filter-search{grid-column:auto}
  .cn-promo-grid{grid-template-columns:1fr}
  .cn-promotion-profile{padding:24px 0 70px}.cn-promotion-hero{border-radius:20px}
  .cn-promotion-visual,.cn-promotion-visual img,.cn-promotion-placeholder{min-height:260px}
  .cn-promotion-hero-copy{padding:24px}.cn-promotion-date-grid{grid-template-columns:1fr}
}


/* v0.9 Events */
.cn-event-filters{grid-template-columns:2fr 1fr 1fr 1fr auto}
.cn-event-filters input,.cn-event-filters select,.cn-event-filters button{min-height:46px;border-radius:12px;border:1px solid var(--cn-line);padding:0 12px;background:#fff}
.cn-event-filters button{background:var(--cn-primary);color:#fff;border-color:var(--cn-primary);font-weight:800}
.cn-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cn-event-card{background:#fff;border:1px solid var(--cn-line);border-radius:22px;overflow:hidden;box-shadow:0 8px 26px rgba(20,32,51,.04)}
.cn-event-card-media{height:225px;position:relative;overflow:hidden;background:#eef3f8}
.cn-event-card-media img{width:100%;height:100%;object-fit:cover}
.cn-event-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#1d6fd6,#6a5df5);color:#fff;font-size:28px;font-weight:900}
.cn-event-status{position:absolute;left:12px;top:12px;background:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}
.cn-event-status.status-live{background:#eaf8f1;color:#087443}.cn-event-status.status-ended{background:#f4f4f5;color:#71717a}.cn-event-status.status-today{background:#fff4e5;color:#9a5a00}
.cn-event-card-body{padding:18px;display:grid;grid-template-columns:62px 1fr;gap:14px}
.cn-event-date-tile{height:62px;border-radius:15px;background:#eef5ff;color:#146ef5;display:flex;flex-direction:column;align-items:center;justify-content:center}
.cn-event-date-tile strong{font-size:23px;line-height:1}.cn-event-date-tile span{font-size:11px;font-weight:900;margin-top:4px}
.cn-event-card-copy h2{font-size:20px;line-height:1.2;margin:0 0 8px}
.cn-event-time{margin-top:8px;font-size:13px;font-weight:800;color:#42526a}

.cn-event-profile{padding:48px 0 80px}
.cn-event-hero{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--cn-line);border-radius:28px;overflow:hidden;box-shadow:var(--cn-shadow)}
.cn-event-hero-media{min-height:430px;background:#eef3f8}
.cn-event-hero-media img{width:100%;height:100%;min-height:430px;object-fit:cover}
.cn-event-profile-fallback{height:100%;min-height:430px;display:grid;place-items:center;background:linear-gradient(135deg,#1d6fd6,#6a5df5);color:#fff}
.cn-event-profile-fallback span{font-size:40px;font-weight:900}
.cn-event-hero-copy{padding:40px;display:flex;flex-direction:column;justify-content:center}
.cn-event-hero-copy h1{font-size:clamp(38px,4vw,54px);line-height:1.03;letter-spacing:-.04em;margin:14px 0}
.cn-event-hero-date{display:flex;align-items:center;gap:14px;margin:16px 0}
.cn-event-date-big{width:72px;height:72px;border-radius:18px;background:#eef5ff;color:#146ef5;display:flex;flex-direction:column;align-items:center;justify-content:center}
.cn-event-date-big strong{font-size:28px;line-height:1}.cn-event-date-big span{font-size:11px;font-weight:900;margin-top:4px}
.cn-event-hero-date small{display:block;color:var(--cn-muted);margin-bottom:4px}.cn-event-hero-date>div:last-child strong{font-size:18px}
.cn-event-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;margin-top:28px}
.cn-event-info-card{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:28px;position:sticky;top:96px}
.cn-event-info-card h2{margin:0 0 18px;font-size:28px}
@media(max-width:980px){
  .cn-event-grid{grid-template-columns:repeat(2,1fr)}
  .cn-event-hero{grid-template-columns:1fr}.cn-event-hero-media,.cn-event-hero-media img,.cn-event-profile-fallback{min-height:330px}
  .cn-event-layout{grid-template-columns:1fr}.cn-event-info-card{position:static}
}
@media(max-width:700px){
  .cn-event-filters{grid-template-columns:1fr}.cn-filter-search{grid-column:auto}
  .cn-event-grid{grid-template-columns:1fr}
  .cn-event-profile{padding:24px 0 90px}.cn-event-hero{border-radius:20px}
  .cn-event-hero-media,.cn-event-hero-media img,.cn-event-profile-fallback{min-height:250px}
  .cn-event-hero-copy{padding:24px}
}


/* v0.10 Jobs */
.cn-job-filters{grid-template-columns:2fr 1fr 1fr 1fr 1fr auto}
.cn-job-filters input,.cn-job-filters select,.cn-job-filters button{min-height:46px;border-radius:12px;border:1px solid var(--cn-line);padding:0 12px;background:#fff}
.cn-job-filters button{background:var(--cn-primary);color:#fff;border-color:var(--cn-primary);font-weight:800}
.cn-job-list{display:flex;flex-direction:column;gap:14px}
.cn-job-card{background:#fff;border:1px solid var(--cn-line);border-radius:20px;box-shadow:0 8px 26px rgba(20,32,51,.035)}
.cn-job-card>a{display:grid;grid-template-columns:56px 1fr auto;gap:18px;align-items:center;padding:20px}
.cn-job-card-icon{width:56px;height:56px;border-radius:16px;background:#eef5ff;color:#146ef5;display:grid;place-items:center;font-size:22px;font-weight:900}
.cn-job-card-main h2{font-size:22px;line-height:1.2;margin:8px 0}
.cn-job-card-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--cn-muted);font-size:13px}
.cn-job-card-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.cn-job-closing{padding:7px 10px;border-radius:999px;background:#eef5ff;color:#146ef5;font-size:11px;font-weight:900}
.cn-job-closing.expired{background:#f4f4f5;color:#71717a}
.cn-job-view{color:var(--cn-primary);font-weight:900;font-size:13px}

.cn-job-profile{padding:48px 0 80px}
.cn-job-hero{display:grid;grid-template-columns:1fr auto;gap:28px;background:#fff;border:1px solid var(--cn-line);border-radius:28px;padding:38px;box-shadow:var(--cn-shadow);align-items:end}
.cn-job-hero-main h1{font-size:clamp(42px,5vw,64px);line-height:1;letter-spacing:-.05em;margin:14px 0 8px}
.cn-job-company{font-size:20px;font-weight:800;margin-bottom:10px}
.cn-job-hero-side{min-width:240px;display:flex;flex-direction:column;gap:10px;align-items:stretch}
.cn-job-closing-large{align-self:flex-start;padding:9px 12px;border-radius:999px;background:#eef5ff;color:#146ef5;font-size:12px;font-weight:900}
.cn-job-closing-large.expired{background:#f4f4f5;color:#71717a}
.cn-job-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;margin-top:28px}
.cn-job-info-card{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:28px;position:sticky;top:96px}
.cn-job-info-card h2{margin:0 0 18px;font-size:28px}
.cn-job-related-list{display:flex;flex-direction:column;gap:10px}
.cn-job-related-card{border:1px solid var(--cn-line);border-radius:16px;padding:16px;display:flex;justify-content:space-between;gap:18px;align-items:center}
.cn-job-related-card div{display:flex;flex-direction:column;gap:4px}.cn-job-related-card span{color:var(--cn-muted);font-size:13px}
.cn-job-related-card>span{color:var(--cn-primary);font-weight:900}
@media(max-width:1100px){
  .cn-job-filters{grid-template-columns:repeat(3,1fr)}.cn-filter-search{grid-column:span 2}
}
@media(max-width:900px){
  .cn-job-profile{padding-top:30px}
  .cn-job-hero{grid-template-columns:1fr}.cn-job-hero-side{min-width:0}
  .cn-job-layout{grid-template-columns:1fr}.cn-job-info-card{position:static}
}
@media(max-width:700px){
  .cn-job-filters{grid-template-columns:1fr}.cn-filter-search{grid-column:auto}
  .cn-job-card>a{grid-template-columns:48px 1fr}.cn-job-card-icon{width:48px;height:48px}
  .cn-job-card-side{grid-column:1/-1;align-items:flex-start;padding-left:66px}
  .cn-job-hero{padding:24px;border-radius:20px}.cn-job-hero-main h1{font-size:40px}
}


/* v0.10.1 archive query + search-field corrections */
.cn-directory-filters .cn-filter-search{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  background:#f7f9fc;
  border-radius:12px;
  padding-left:12px;
  overflow:hidden;
}
.cn-directory-filters .cn-filter-search span{
  display:block;
  font-size:21px;
  color:#748198;
  line-height:1;
}
.cn-directory-filters .cn-filter-search input{
  width:100% !important;
  min-width:0;
  border:0 !important;
  background:transparent !important;
  padding-left:0 !important;
  outline:none;
}


/* v0.11 Explore / Places */
.cn-place-filters{grid-template-columns:2fr 1fr 1fr auto}
.cn-place-filters input,.cn-place-filters select,.cn-place-filters button{min-height:46px;border-radius:12px;border:1px solid var(--cn-line);padding:0 12px;background:#fff}
.cn-place-filters button{background:var(--cn-primary);color:#fff;border-color:var(--cn-primary);font-weight:800}
.cn-place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cn-place-card{background:#fff;border:1px solid var(--cn-line);border-radius:22px;overflow:hidden;box-shadow:0 8px 26px rgba(20,32,51,.04)}
.cn-place-card-media{height:235px;position:relative;overflow:hidden;background:#edf3f8}
.cn-place-card-media img{width:100%;height:100%;object-fit:cover}
.cn-place-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#174b8d,#1677ff);color:#fff;font-size:28px;font-weight:900}
.cn-place-type{position:absolute;left:12px;top:12px;background:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}
.cn-place-card-body{padding:18px}
.cn-place-card h2{font-size:22px;line-height:1.2;margin:0 0 10px}
.cn-place-view{display:inline-block;margin-top:12px;color:var(--cn-primary);font-weight:900}

.cn-place-profile{padding:48px 0 80px}
.cn-place-hero{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--cn-line);border-radius:28px;overflow:hidden;box-shadow:var(--cn-shadow)}
.cn-place-hero-media{min-height:430px;background:#eef3f8}
.cn-place-hero-media img{width:100%;height:100%;min-height:430px;object-fit:cover}
.cn-place-profile-fallback{height:100%;min-height:430px;display:grid;place-items:center;background:linear-gradient(135deg,#174b8d,#1677ff);color:#fff}
.cn-place-profile-fallback span{width:80px;height:80px;border-radius:22px;background:#fff;color:#1769e8;display:grid;place-items:center;font-size:28px;font-weight:900}
.cn-place-hero-copy{padding:40px;display:flex;flex-direction:column;justify-content:center}
.cn-place-hero-copy h1{font-size:clamp(40px,4vw,56px);line-height:1.02;letter-spacing:-.045em;margin:14px 0}
.cn-place-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;margin-top:28px}
.cn-place-info-card{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:28px;position:sticky;top:96px}
.cn-place-info-card h2{margin:0 0 18px;font-size:28px}
@media(max-width:980px){
  .cn-place-grid{grid-template-columns:repeat(2,1fr)}
  .cn-place-hero{grid-template-columns:1fr}.cn-place-hero-media,.cn-place-hero-media img,.cn-place-profile-fallback{min-height:330px}
  .cn-place-layout{grid-template-columns:1fr}.cn-place-info-card{position:static}
}
@media(max-width:700px){
  .cn-place-filters{grid-template-columns:1fr}.cn-filter-search{grid-column:auto}
  .cn-place-grid{grid-template-columns:1fr}
  .cn-place-profile{padding:24px 0 90px}.cn-place-hero{border-radius:20px}
  .cn-place-hero-media,.cn-place-hero-media img,.cn-place-profile-fallback{min-height:250px}
  .cn-place-hero-copy{padding:24px}
}


/* v0.12 Front-end accounts + submissions */
.cn-page-shell{min-height:70vh;background:#f7f9fc;padding:0 0 70px}
.cn-front-wrap{width:min(1280px,calc(100% - 40px));margin:0 auto;padding:54px 0}
.cn-front-wrap.narrow{width:min(720px,calc(100% - 40px))}
.cn-front-hero{padding:20px 0 32px}
.cn-front-hero.compact{padding-bottom:20px}
.cn-front-hero>span,.cn-front-dashboard-head>div:first-child>span{font-size:12px;font-weight:900;letter-spacing:.13em;color:var(--cn-primary)}
.cn-front-hero h1,.cn-front-dashboard-head h1{font-size:clamp(42px,5vw,64px);line-height:1;letter-spacing:-.05em;margin:12px 0}
.cn-front-hero p,.cn-front-dashboard-head p{font-size:18px;line-height:1.65;color:var(--cn-muted);max-width:850px}
.cn-front-notice{padding:14px 16px;border-radius:14px;margin:0 0 18px;font-weight:700}
.cn-front-notice.success{background:#eaf8f1;color:#087443;border:1px solid #c9ead9}
.cn-front-notice.error{background:#fff0f0;color:#b42318;border:1px solid #f2c7c3}
.cn-front-notice a{font-weight:900;text-decoration:underline}
.cn-front-login-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fff;border:1px solid var(--cn-line);border-radius:20px;padding:20px 22px;margin-bottom:24px}
.cn-front-login-strip>div:first-child{display:flex;flex-direction:column;gap:4px}.cn-front-login-strip span{color:var(--cn-muted)}
.cn-front-login-strip>div:last-child{display:flex;gap:8px}
.cn-front-btn,.cn-front-submit{display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--cn-primary);color:#fff;border-radius:13px;padding:13px 18px;font-weight:900;cursor:pointer}
.cn-front-btn.secondary{background:#fff;color:var(--cn-text);border:1px solid var(--cn-line)}
.cn-listing-type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.cn-listing-type-card{background:#fff;border:1px solid var(--cn-line);border-radius:22px;padding:22px;min-height:210px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 8px 26px rgba(20,32,51,.035);transition:.18s ease}
.cn-listing-type-card:hover{transform:translateY(-3px);box-shadow:0 14px 38px rgba(20,32,51,.08)}
.cn-listing-type-icon{width:50px;height:50px;border-radius:14px;background:#eef5ff;display:grid;place-items:center;font-size:24px;margin-bottom:22px}
.cn-listing-type-card strong{font-size:20px}.cn-listing-type-card small{color:var(--cn-muted);margin:6px 0 auto}.cn-listing-type-card b{color:var(--cn-primary);font-size:13px}
.cn-front-info-panel{background:#142033;color:#fff;border-radius:22px;padding:22px 24px;margin-top:22px}.cn-front-info-panel p{margin:6px 0 0;color:#cbd5e1}
.cn-front-form{background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:26px;box-shadow:0 10px 32px rgba(20,32,51,.04)}
.cn-auth-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cn-front-field{display:flex;flex-direction:column;gap:7px}.cn-front-field.full{grid-column:1/-1}
.cn-front-field label{font-size:13px;font-weight:800;color:#334155}
.cn-front-field input,.cn-front-field select,.cn-front-field textarea{width:100%;border:1px solid #dce3ec;background:#fff;border-radius:12px;padding:13px 14px;font:inherit;color:var(--cn-text);outline:none}
.cn-front-field input:focus,.cn-front-field select:focus,.cn-front-field textarea:focus{border-color:#8ab8fa;box-shadow:0 0 0 3px #edf5ff}
.cn-front-field small{font-size:12px;color:var(--cn-muted);line-height:1.5}
.cn-check{grid-column:1/-1;font-size:13px;color:var(--cn-muted)}
.cn-auth-form .cn-front-submit{grid-column:1/-1;min-height:50px}
.cn-auth-foot{text-align:center;color:var(--cn-muted)}.cn-auth-foot a{color:var(--cn-primary);font-weight:900}
.cn-listing-form{display:block;padding:0;background:transparent;border:0;box-shadow:none}
.cn-form-section{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#fff;border:1px solid var(--cn-line);border-radius:24px;padding:26px;margin-bottom:18px}
.cn-form-section-head{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--cn-line);padding-bottom:16px;margin-bottom:4px}
.cn-form-section-head strong{font-size:20px}.cn-form-section-head span{font-size:12px;color:var(--cn-muted)}
.cn-submit-confirm{background:#142033;color:#fff;border-radius:22px;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.cn-submit-confirm>div{display:flex;flex-direction:column}.cn-submit-confirm span{color:#cbd5e1;font-size:13px}
.cn-front-dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:24px}
.cn-dashboard-actions{display:flex;gap:10px;margin-bottom:10px}
.cn-account-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.cn-account-summary>div{background:#fff;border:1px solid var(--cn-line);border-radius:18px;padding:18px}.cn-account-summary small{display:block;color:var(--cn-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.cn-account-summary strong{display:block;font-size:22px;margin-top:5px}
.cn-dashboard-list{display:flex;flex-direction:column;gap:10px}
.cn-dashboard-row{display:grid;grid-template-columns:54px 1fr auto auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--cn-line);border-radius:18px;padding:16px 18px}
.cn-dashboard-type{width:54px;height:54px;border-radius:15px;background:#eef5ff;display:grid;place-items:center;font-size:23px}
.cn-dashboard-main{display:flex;flex-direction:column;gap:3px}.cn-dashboard-main small{color:var(--cn-muted)}.cn-dashboard-main strong{font-size:18px}
.cn-dashboard-status{padding:7px 10px;border-radius:999px;background:#eef5ff;color:#146ef5;font-size:11px;font-weight:900;white-space:nowrap}
.cn-dashboard-status.status-publish{background:#eaf8f1;color:#087443}.cn-dashboard-status.status-cn_rejected{background:#fff0f0;color:#b42318}.cn-dashboard-status.status-cn_expired{background:#f4f4f5;color:#71717a}
.cn-dashboard-row-actions{display:flex;gap:10px}.cn-dashboard-row-actions a{color:var(--cn-primary);font-weight:900;font-size:13px}
.cn-rejection-reason{margin:5px 0 0;color:#b42318;font-size:13px}
.cn-front-empty,.cn-front-login-required{background:#fff;border:1px dashed #cfd8e4;border-radius:22px;padding:34px}.cn-front-empty h2,.cn-front-login-required h2{margin-top:0}
.cn-ticket-options>small{margin-bottom:8px}.cn-ticket-row{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-bottom:8px}
.cn-ticket-public-list{display:flex;flex-direction:column;gap:8px}.cn-ticket-public-list span{display:flex;justify-content:space-between;gap:16px}.cn-ticket-public-list strong{color:var(--cn-primary)}
/* Business directory search-button correction */
.cn-directory-filter .cn-filter-search{grid-column:auto!important}
.cn-directory-filter button{min-height:48px!important;white-space:nowrap}
@media(max-width:1180px){.cn-listing-type-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){
  .cn-front-wrap{width:min(100% - 24px,1280px);padding:34px 0}.cn-front-login-strip,.cn-front-dashboard-head,.cn-submit-confirm{align-items:flex-start;flex-direction:column}
  .cn-listing-type-grid{grid-template-columns:1fr 1fr}.cn-auth-form,.cn-form-section{grid-template-columns:1fr}.cn-front-field.full,.cn-form-section-head{grid-column:auto}
  .cn-account-summary{grid-template-columns:1fr 1fr}.cn-dashboard-row{grid-template-columns:46px 1fr}.cn-dashboard-type{width:46px;height:46px}.cn-dashboard-status,.cn-dashboard-row-actions{grid-column:2}
}
@media(max-width:520px){.cn-listing-type-grid,.cn-account-summary{grid-template-columns:1fr}.cn-ticket-row{grid-template-columns:1fr}}


/* v0.13 AI-assisted submission */
.cn-ai-assistant{
  background:linear-gradient(135deg,#101d33 0%,#183a73 58%,#176ff2 100%);
  color:#fff;border-radius:28px;padding:30px;margin-bottom:22px;
  box-shadow:0 20px 55px rgba(17,34,68,.16);position:relative;overflow:hidden
}
.cn-ai-assistant:after{
  content:"";position:absolute;width:360px;height:360px;border-radius:50%;
  right:-150px;top:-200px;background:rgba(255,255,255,.07);pointer-events:none
}
.cn-ai-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;position:relative;z-index:1}
.cn-ai-kicker{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.14em;color:#8fc2ff;margin-bottom:8px}
.cn-ai-head h2{font-size:32px;letter-spacing:-.035em;margin:0 0 8px;color:#fff}
.cn-ai-head p{color:#d6e1f3;line-height:1.65;max-width:850px;margin:0}
.cn-ai-badge{white-space:nowrap;padding:8px 11px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);border-radius:999px;font-size:11px;font-weight:800}
.cn-ai-compose{position:relative;z-index:1;margin-top:22px;background:#fff;border-radius:20px;padding:10px;color:#142033}
.cn-ai-compose textarea{width:100%;border:0!important;box-shadow:none!important;resize:vertical;padding:14px 15px;font:inherit;min-height:122px;outline:0}
.cn-ai-compose-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #edf0f5;padding:10px 10px 2px}
.cn-ai-image-note{font-size:12px;color:#667085}
.cn-ai-analyse-btn{border:0;background:#176ff2;color:#fff;border-radius:13px;padding:13px 18px;font-weight:900;cursor:pointer;white-space:nowrap}
.cn-ai-analyse-btn:disabled{opacity:.65;cursor:wait}
.cn-ai-status{position:relative;z-index:1;margin-top:14px;padding:13px 15px;border-radius:13px;font-weight:700;font-size:13px}
.cn-ai-status.loading{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);color:#e7effc}
.cn-ai-status.error{background:#fff0f0;border:1px solid #ffc9c4;color:#a9281d}
.cn-ai-result{position:relative;z-index:1;margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px}
.cn-ai-result-main,.cn-ai-missing,.cn-ai-ready{border-radius:16px;padding:17px 18px}
.cn-ai-result-main{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14)}
.cn-ai-result small{display:block;font-size:10px;letter-spacing:.12em;font-weight:900;color:#8fc2ff;margin-bottom:6px}
.cn-ai-result-main p{margin:0;color:#fff;line-height:1.55}
.cn-ai-missing{background:#fff;color:#142033}
.cn-ai-missing small{color:#e68a00}
.cn-ai-missing strong{display:block;line-height:1.35;margin-bottom:6px}
.cn-ai-missing span{display:block;color:#667085;font-size:12px}
.cn-ai-ready{background:#e8f8f0;color:#096a42;display:flex;flex-direction:column;justify-content:center}
.cn-ai-ready strong{margin-bottom:4px}.cn-ai-ready span{font-size:12px;color:#32785d}
@media(max-width:850px){
  .cn-ai-head{flex-direction:column}.cn-ai-badge{align-self:flex-start}
  .cn-ai-result{grid-template-columns:1fr}
  .cn-ai-compose-bottom{align-items:flex-start;flex-direction:column}
  .cn-ai-analyse-btn{width:100%}
}
@media(max-width:520px){
  .cn-ai-assistant{padding:20px;border-radius:22px}.cn-ai-head h2{font-size:27px}
}


/* v0.14.1 — Missing-detail attention + hidden-state fix */

/* Important: author CSS had display:flex on .cn-ai-ready, which could override
   the browser's [hidden] behavior. Keep AI states mutually exclusive. */
.cn-ai-missing[hidden],
.cn-ai-ready[hidden],
.cn-ai-result[hidden],
.cn-ai-status[hidden]{
  display:none !important;
}

/* Strong but professional attention state for a missing mandatory field. */
.cn-ai-missing:not([hidden]){
  position:relative;
  background:#fff4f4;
  color:#7f1d1d;
  border:2px solid #ef4444;
  box-shadow:0 0 0 0 rgba(239,68,68,.30);
  animation:cnMissingPulse 1.55s ease-in-out infinite;
}

.cn-ai-missing:not([hidden]) small{
  color:#dc2626;
}

.cn-ai-missing:not([hidden]) strong{
  color:#991b1b;
  font-size:17px;
}

.cn-ai-missing:not([hidden]) span{
  color:#7f1d1d;
}

.cn-ai-missing:not([hidden]):before{
  content:"!";
  position:absolute;
  right:14px;
  top:14px;
  width:26px;
  height:26px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#dc2626;
  color:#fff;
  font-weight:900;
  font-size:15px;
  box-shadow:0 4px 12px rgba(220,38,38,.28);
}

@keyframes cnMissingPulse{
  0%,100%{
    transform:translateY(0);
    box-shadow:0 0 0 0 rgba(239,68,68,.25);
  }
  50%{
    transform:translateY(-1px);
    box-shadow:0 0 0 7px rgba(239,68,68,0);
  }
}

/* Accessibility: do not animate for users who prefer reduced motion. */
@media (prefers-reduced-motion: reduce){
  .cn-ai-missing:not([hidden]){
    animation:none;
  }
}


/* v0.15.1 — AI upload beside text analysis */
.cn-ai-workspace{
  position:relative;z-index:1;display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);
  gap:14px;margin-top:22px
}
.cn-ai-workspace .cn-ai-compose{margin-top:0;height:100%}
.cn-ai-workspace .cn-ai-compose textarea{min-height:220px;height:100%;box-sizing:border-box}

.cn-ai-upload-card{
  background:#fff;color:#142033;border-radius:20px;padding:22px;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  border:1px solid rgba(255,255,255,.14)
}
.cn-ai-upload-icon{
  width:42px;height:42px;border-radius:13px;background:#eef5ff;color:#176ff2;
  display:grid;place-items:center;font-size:26px;font-weight:900;margin-bottom:12px
}
.cn-ai-upload-card>strong{font-size:18px;margin-bottom:5px}
.cn-ai-upload-card>p{font-size:13px;line-height:1.5;color:#667085;margin:0 0 14px}
.cn-ai-upload-card input[type=file]{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;clip-path:inset(50%)
}
.cn-ai-upload-button{
  display:inline-flex;align-items:center;justify-content:center;
  background:#176ff2;color:#fff!important;border-radius:11px;
  min-height:42px;padding:0 16px;font-weight:900;cursor:pointer;text-decoration:none
}
.cn-ai-upload-help{font-size:10px;color:#7b8494;margin-top:9px}
.cn-ai-upload-count{
  margin-top:12px;padding-top:11px;border-top:1px solid #edf0f5;width:100%;
  font-size:12px;font-weight:800;color:#344054
}
.cn-ai-upload-preview{
  display:grid;grid-template-columns:repeat(5,1fr);gap:5px;width:100%;margin-top:8px
}
.cn-ai-preview-thumb{
  display:block;width:100%;aspect-ratio:1/1;object-fit:cover;
  border-radius:8px;border:1px solid #e1e6ed
}

.cn-ai-actionbar{
  position:relative;z-index:1;display:flex;align-items:center;
  justify-content:space-between;gap:16px;margin-top:12px
}
.cn-ai-actionbar .cn-ai-image-note{color:#d6e1f3}
.cn-ai-actionbar .cn-ai-analyse-btn{
  min-width:190px;box-shadow:0 8px 20px rgba(0,0,0,.14)
}

.cn-images-selected-note{
  border:1px solid #d9e5f6;background:#f7faff;border-radius:13px;
  padding:15px 16px;display:flex;gap:6px;flex-direction:column
}
.cn-images-selected-note strong{color:#142033}
.cn-images-selected-note span{font-size:12px;color:#667085}
.cn-back-to-ai{font-size:12px;font-weight:900;color:#176ff2;text-decoration:none;margin-top:3px}

@media(max-width:900px){
  .cn-ai-workspace{grid-template-columns:1fr}
  .cn-ai-workspace .cn-ai-compose textarea{min-height:160px}
  .cn-ai-upload-card{justify-content:flex-start}
}
@media(max-width:600px){
  .cn-ai-actionbar{flex-direction:column;align-items:stretch}
  .cn-ai-actionbar .cn-ai-analyse-btn{width:100%}
  .cn-ai-upload-preview{grid-template-columns:repeat(4,1fr)}
}


/* =========================================================
   v0.15.2 — CallNegombo Front-end App UI Refresh
   Compact, premium, internationally familiar form system
   ========================================================= */

:root{
  --cn-app-bg:#f5f7fb;
  --cn-app-card:#ffffff;
  --cn-app-line:#e5eaf1;
  --cn-app-line-strong:#d7dee8;
  --cn-app-text:#142033;
  --cn-app-muted:#667085;
  --cn-app-soft:#f8fafc;
  --cn-app-blue:#1769e8;
  --cn-app-blue-dark:#0f56c7;
  --cn-app-success:#087443;
  --cn-app-danger:#c62828;
  --cn-app-radius:18px;
  --cn-app-radius-sm:12px;
  --cn-app-shadow:0 8px 28px rgba(20,32,51,.055);
}

.cn-page-shell{
  background:var(--cn-app-bg);
  padding-bottom:56px;
}

.cn-front-wrap{
  width:min(1180px,calc(100% - 32px));
  padding:38px 0;
}

.cn-front-wrap.narrow{
  width:min(620px,calc(100% - 32px));
}

/* ---------- Page heading ---------- */
.cn-front-hero{
  padding:4px 0 22px;
}
.cn-front-hero.compact{
  padding-bottom:18px;
}
.cn-front-hero>span,
.cn-front-dashboard-head>div:first-child>span{
  font-size:10px;
  letter-spacing:.14em;
  font-weight:900;
  color:var(--cn-app-blue);
}
.cn-front-hero h1,
.cn-front-dashboard-head h1{
  font-size:clamp(34px,4vw,48px);
  margin:8px 0 8px;
  line-height:1.03;
  letter-spacing:-.04em;
}
.cn-front-hero p,
.cn-front-dashboard-head p{
  font-size:15px;
  line-height:1.6;
  max-width:760px;
}

/* ---------- Global panels ---------- */
.cn-front-form,
.cn-form-section,
.cn-front-login-strip,
.cn-account-summary>div,
.cn-dashboard-row,
.cn-listing-type-card,
.cn-front-empty,
.cn-front-login-required{
  border-color:var(--cn-app-line);
  box-shadow:var(--cn-app-shadow);
}

.cn-front-form{
  border-radius:var(--cn-app-radius);
  padding:22px;
}

.cn-form-section{
  border-radius:var(--cn-app-radius);
  padding:20px;
  gap:13px;
  margin-bottom:14px;
}

.cn-form-section-head{
  padding-bottom:12px;
  margin-bottom:2px;
  align-items:center;
}
.cn-form-section-head strong{
  font-size:17px;
  letter-spacing:-.01em;
}
.cn-form-section-head span{
  font-size:11px;
}

/* ---------- Inputs ---------- */
.cn-front-field{
  gap:5px;
}
.cn-front-field label{
  font-size:12px;
  color:#344054;
  font-weight:800;
}
.cn-front-field input,
.cn-front-field select,
.cn-front-field textarea{
  border:1px solid var(--cn-app-line-strong);
  border-radius:10px;
  padding:10px 12px;
  min-height:42px;
  background:#fff;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.cn-front-field textarea{
  line-height:1.55;
}
.cn-front-field input:hover,
.cn-front-field select:hover,
.cn-front-field textarea:hover{
  border-color:#c5ceda;
}
.cn-front-field input:focus,
.cn-front-field select:focus,
.cn-front-field textarea:focus{
  border-color:#8fb9f5;
  box-shadow:0 0 0 3px rgba(23,105,232,.09);
}
.cn-front-field small{
  font-size:11px;
  line-height:1.45;
}

/* ---------- AI assistant ---------- */
.cn-ai-assistant{
  background:var(--cn-app-card);
  color:var(--cn-app-text);
  border:1px solid var(--cn-app-line);
  border-radius:22px;
  padding:22px;
  margin-bottom:16px;
  box-shadow:0 12px 34px rgba(20,32,51,.07);
}
.cn-ai-assistant:after{
  display:none;
}
.cn-ai-head{
  align-items:flex-start;
}
.cn-ai-kicker{
  color:var(--cn-app-blue);
  margin-bottom:5px;
}
.cn-ai-head h2{
  color:var(--cn-app-text);
  font-size:26px;
  margin-bottom:5px;
}
.cn-ai-head p{
  color:var(--cn-app-muted);
  font-size:13px;
  line-height:1.55;
  max-width:760px;
}
.cn-ai-badge{
  background:#eef5ff;
  color:var(--cn-app-blue);
  border:1px solid #dce9fb;
  padding:7px 10px;
}

.cn-ai-workspace{
  margin-top:16px;
  gap:12px;
  grid-template-columns:minmax(0,1.6fr) minmax(250px,.65fr);
}
.cn-ai-workspace .cn-ai-compose{
  background:var(--cn-app-soft);
  border:1px solid var(--cn-app-line);
  border-radius:15px;
  padding:8px;
}
.cn-ai-workspace .cn-ai-compose textarea{
  background:transparent;
  min-height:168px;
  padding:10px 11px;
  color:var(--cn-app-text);
}
.cn-ai-upload-card{
  border:1px dashed #cdd7e4;
  border-radius:15px;
  background:#fbfcfe;
  padding:17px;
}
.cn-ai-upload-icon{
  width:36px;
  height:36px;
  border-radius:10px;
  font-size:21px;
  margin-bottom:9px;
}
.cn-ai-upload-card>strong{
  font-size:15px;
}
.cn-ai-upload-card>p{
  font-size:11px;
  margin-bottom:10px;
}
.cn-ai-upload-button{
  min-height:38px;
  padding:0 13px;
  border-radius:9px;
  font-size:12px;
}
.cn-ai-upload-help{
  margin-top:7px;
}
.cn-ai-upload-count{
  margin-top:9px;
  padding-top:9px;
  font-size:11px;
}
.cn-ai-upload-preview{
  grid-template-columns:repeat(4,1fr);
  gap:5px;
}

.cn-ai-actionbar{
  margin-top:10px;
}
.cn-ai-actionbar .cn-ai-image-note{
  color:var(--cn-app-muted);
  font-size:11px;
}
.cn-ai-actionbar .cn-ai-analyse-btn{
  min-width:170px;
  padding:11px 16px;
  border-radius:10px;
  background:var(--cn-app-blue);
  box-shadow:none;
}
.cn-ai-actionbar .cn-ai-analyse-btn:hover{
  background:var(--cn-app-blue-dark);
}

.cn-ai-status{
  margin-top:10px;
  border-radius:11px;
  padding:11px 13px;
  font-size:12px;
}
.cn-ai-status.loading{
  background:#eef5ff;
  border:1px solid #dbe8fb;
  color:#1f4f8d;
}
.cn-ai-result{
  margin-top:12px;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:10px;
}
.cn-ai-result-main,
.cn-ai-missing,
.cn-ai-ready{
  border-radius:13px;
  padding:14px 15px;
}
.cn-ai-result-main{
  background:#f6f8fb;
  border:1px solid var(--cn-app-line);
  color:var(--cn-app-text);
}
.cn-ai-result small{
  color:var(--cn-app-blue);
}
.cn-ai-result-main p{
  color:var(--cn-app-text);
  font-size:13px;
}

/* Missing state keeps attention, but more refined */
.cn-ai-missing:not([hidden]){
  background:#fff7f7;
  border:1px solid #f2b8b5;
  box-shadow:none;
  animation:cnMissingPulseCompact 1.8s ease-in-out infinite;
}
.cn-ai-missing:not([hidden]):before{
  width:22px;
  height:22px;
  font-size:12px;
  right:11px;
  top:11px;
}
@keyframes cnMissingPulseCompact{
  0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,.10)}
  50%{box-shadow:0 0 0 5px rgba(220,38,38,0)}
}
.cn-ai-ready{
  background:#eef9f3;
  border:1px solid #cfeadd;
}

/* ---------- Listing steps ---------- */
.cn-submit-confirm{
  background:#fff;
  color:var(--cn-app-text);
  border:1px solid var(--cn-app-line);
  box-shadow:var(--cn-app-shadow);
  border-radius:16px;
  padding:16px 18px;
}
.cn-submit-confirm span{
  color:var(--cn-app-muted);
}
.cn-submit-confirm .cn-front-submit{
  min-width:180px;
}

.cn-front-btn,
.cn-front-submit{
  min-height:42px;
  border-radius:10px;
  padding:10px 16px;
  font-size:13px;
}
.cn-front-btn.secondary{
  background:#fff;
  border-color:var(--cn-app-line-strong);
}

/* ---------- Account/dashboard ---------- */
.cn-front-login-strip{
  padding:16px 18px;
  border-radius:16px;
}
.cn-listing-type-grid{
  grid-template-columns:repeat(5,1fr);
  gap:12px;
}
.cn-listing-type-card{
  min-height:165px;
  border-radius:16px;
  padding:17px;
}
.cn-listing-type-icon{
  width:42px;
  height:42px;
  border-radius:12px;
  margin-bottom:14px;
  font-size:21px;
}
.cn-listing-type-card strong{
  font-size:17px;
}
.cn-listing-type-card small{
  font-size:11px;
}
.cn-listing-type-card b{
  font-size:12px;
}

.cn-front-info-panel{
  border-radius:16px;
  padding:17px 18px;
  margin-top:14px;
}

.cn-account-summary{
  gap:10px;
}
.cn-account-summary>div{
  border-radius:14px;
  padding:15px;
}
.cn-account-summary strong{
  font-size:19px;
}
.cn-dashboard-row{
  border-radius:14px;
  padding:13px 15px;
}
.cn-dashboard-type{
  width:46px;
  height:46px;
  border-radius:12px;
}

/* ---------- Image moved note ---------- */
.cn-images-selected-note{
  border-radius:11px;
  padding:12px 13px;
  background:#f7faff;
}

/* ---------- Auth ---------- */
.cn-auth-form{
  gap:12px;
}
.cn-auth-form .cn-front-submit{
  min-height:44px;
}

/* ---------- Mobile/tablet ---------- */
@media(max-width:1050px){
  .cn-listing-type-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:850px){
  .cn-ai-workspace{grid-template-columns:1fr}
  .cn-ai-result{grid-template-columns:1fr}
  .cn-ai-actionbar{align-items:stretch}
}
@media(max-width:700px){
  .cn-front-wrap{width:min(100% - 22px,1180px);padding:28px 0}
  .cn-form-section{padding:16px}
  .cn-form-section-head{align-items:flex-start;flex-direction:column;gap:4px}
  .cn-listing-type-grid{grid-template-columns:1fr 1fr}
  .cn-ai-assistant{padding:17px}
  .cn-ai-head{gap:12px}
  .cn-ai-head h2{font-size:23px}
}
@media(max-width:480px){
  .cn-listing-type-grid{grid-template-columns:1fr}
}


/* =========================================================
   v0.16.0 — PREMIUM INTERNATIONAL SUBMISSION EXPERIENCE
   Modern marketplace / SaaS form language
   ========================================================= */

.cn-page-shell{
  background:
    radial-gradient(circle at 8% 3%,rgba(28,111,242,.055),transparent 24rem),
    linear-gradient(#f7f9fc,#f3f6fa);
}

.cn-front-wrap{
  width:min(1240px,calc(100% - 42px));
  padding:42px 0 72px;
}

/* ---- Editorial page intro ---- */
.cn-front-hero.compact{
  max-width:920px;
  padding:2px 0 20px;
}
.cn-front-hero>span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid #dbe8fb;
  background:#f1f6ff;
  border-radius:999px;
}
.cn-front-hero h1{
  max-width:850px;
  font-size:clamp(42px,5vw,62px);
  margin-top:14px;
}
.cn-front-hero p{
  font-size:16px;
  max-width:820px;
}

/* ---- Premium progress ---- */
.cn-submit-progress{
  display:flex;
  align-items:center;
  width:min(900px,100%);
  margin:0 0 20px;
  padding:12px 14px;
  background:rgba(255,255,255,.86);
  border:1px solid #e4e9f1;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(20,32,51,.045);
  backdrop-filter:blur(12px);
}
.cn-progress-item{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:128px;
}
.cn-progress-item>span{
  width:30px;height:30px;border-radius:9px;
  display:grid;place-items:center;
  border:1px solid #dde4ed;background:#f7f9fc;color:#667085;
  font-size:11px;font-weight:900;
}
.cn-progress-item strong{display:block;font-size:12px;color:#344054}
.cn-progress-item small{display:block;font-size:9px;color:#98a2b3;margin-top:1px}
.cn-progress-item.active>span{
  background:#1769e8;border-color:#1769e8;color:#fff;
  box-shadow:0 5px 13px rgba(23,105,232,.22)
}
.cn-progress-item.active strong{color:#1769e8}
.cn-submit-progress>i{
  flex:1;height:1px;background:#e5eaf1;margin:0 8px
}

/* ---- AI: richer but compact ---- */
.cn-ai-assistant{
  border-radius:26px;
  padding:0;
  overflow:hidden;
  border:1px solid #dfe6ef;
  box-shadow:0 24px 70px rgba(25,39,65,.08);
  background:#fff;
}
.cn-ai-head{
  padding:22px 24px 17px;
  background:
    radial-gradient(circle at 92% 0,rgba(23,105,232,.14),transparent 15rem),
    linear-gradient(135deg,#fbfdff,#f3f7fd);
  border-bottom:1px solid #e5eaf1;
}
.cn-ai-kicker{font-size:10px}
.cn-ai-head h2{font-size:27px}
.cn-ai-badge{
  box-shadow:0 3px 10px rgba(23,105,232,.08)
}
.cn-ai-workspace{
  padding:18px 20px 0;
  margin:0;
  gap:14px;
}
.cn-ai-workspace .cn-ai-compose{
  border-radius:16px;
  background:#fff;
  border:1px solid #dfe5ed;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.cn-ai-workspace .cn-ai-compose:focus-within{
  border-color:#8eb8f3;
  box-shadow:0 0 0 4px rgba(23,105,232,.07)
}
.cn-ai-workspace .cn-ai-compose textarea{
  min-height:156px;
  font-size:15px;
  line-height:1.62;
}
.cn-ai-upload-card{
  min-height:156px;
  justify-content:center;
  border:1px dashed #c8d5e6;
  background:
    linear-gradient(180deg,#fbfdff,#f7faff);
}
.cn-ai-upload-card:hover{
  border-color:#8fb7ef;
  background:#f5f9ff
}
.cn-ai-upload-icon{
  background:#eaf3ff;
  width:40px;height:40px
}
.cn-ai-upload-button{
  background:#142033;
}
.cn-ai-upload-button:hover{
  background:#1d2c45;
}
.cn-ai-actionbar{
  padding:12px 20px 18px;
  margin:0;
}
.cn-ai-actionbar .cn-ai-analyse-btn{
  border-radius:12px;
  min-height:44px;
  min-width:184px;
  font-size:13px;
  background:linear-gradient(135deg,#1769e8,#287cff);
  box-shadow:0 8px 18px rgba(23,105,232,.18)
}
.cn-ai-result{
  padding:0 20px 20px;
  margin-top:0;
}

/* ---- Main form surface ---- */
.cn-front-form.cn-listing-form{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  display:block;
}
.cn-form-section{
  position:relative;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px 16px;
  background:#fff;
  border:1px solid #e2e7ee;
  border-radius:22px;
  padding:22px 24px 24px;
  margin-bottom:16px;
  box-shadow:0 14px 40px rgba(20,32,51,.05);
}
.cn-form-section:before{
  content:"";
  position:absolute;
  left:0;top:22px;bottom:22px;width:3px;
  border-radius:0 3px 3px 0;
  background:linear-gradient(#1769e8,#78aef9);
  opacity:.72
}
.cn-form-section-head{
  grid-column:1/-1;
  min-height:54px;
  padding:0 0 16px;
  margin:0 0 4px;
  border-bottom:1px solid #edf0f4;
}
.cn-section-title{
  display:flex;align-items:center;gap:12px
}
.cn-section-title>b{
  width:38px;height:38px;border-radius:12px;
  display:grid;place-items:center;
  background:#edf5ff;color:#1769e8;
  font-size:11px;letter-spacing:.04em
}
.cn-section-title strong{
  font-size:18px;
  letter-spacing:-.015em
}
.cn-section-title small{
  display:block;color:#98a2b3;font-size:10px;margin-top:2px
}

/* ---- Grid intelligence ---- */
.cn-front-field{
  grid-column:span 6;
  min-width:0;
}
.cn-front-field.full{
  grid-column:1/-1;
}
.cn-field-half{grid-column:span 6}
.cn-field-title{grid-column:1/-1}
.cn-field-compact{grid-column:span 3}
.cn-field-date{grid-column:span 4}
.cn-field-number{max-width:none}
.cn-field-contact{grid-column:span 4}

/* inputs */
.cn-front-field label{
  margin-bottom:2px;
  font-size:11px;
  text-transform:none;
  letter-spacing:.005em
}
.cn-front-field input,
.cn-front-field select,
.cn-front-field textarea{
  min-height:46px;
  border-radius:12px;
  border-color:#dbe2eb;
  background:#fbfcfe;
  font-size:14px;
  padding:11px 13px;
}
.cn-front-field input[type="datetime-local"],
.cn-front-field input[type="date"]{
  width:100%;
  max-width:320px;
  font-variant-numeric:tabular-nums;
}
.cn-front-field input[type="number"]{
  max-width:280px
}
.cn-front-field textarea{
  min-height:112px;
  resize:vertical
}
.cn-field-title input{
  min-height:52px;
  font-size:16px;
  font-weight:700;
  background:#fff
}
.cn-front-field select{
  appearance:auto;
}

/* ---- Rich subpanels inside listing details ---- */
.cn-rich-subpanel{
  grid-column:1/-1;
  border:1px solid #e7ebf1;
  border-radius:16px;
  background:#fafbfd;
  padding:16px;
}
.cn-rich-subpanel+.cn-rich-subpanel{margin-top:0}
.cn-rich-subpanel-head{
  display:flex;align-items:center;gap:10px;
  margin-bottom:13px
}
.cn-rich-icon{
  width:34px;height:34px;border-radius:10px;
  display:grid;place-items:center;
  background:#eaf3ff;color:#1769e8;
  font-weight:900;font-size:14px
}
.cn-rich-subpanel-head strong{
  display:block;font-size:14px;color:#142033
}
.cn-rich-subpanel-head small{
  display:block;font-size:10px;color:#98a2b3;margin-top:1px
}
.cn-rich-grid{
  display:grid;
  gap:12px;
}
.cn-rich-grid .cn-front-field{
  grid-column:auto;
}
.cn-rich-grid-4{
  grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(145px,.75fr));
}
.cn-rich-grid-period{
  grid-template-columns:repeat(2,minmax(220px,320px));
}
.cn-rich-grid-period .cn-field-date{
  grid-column:auto;
}
.cn-rich-grid-action{
  grid-template-columns:minmax(220px,.8fr) minmax(360px,1.7fr);
  align-items:start
}
.cn-rich-grid-action .cn-front-field.full{
  grid-column:auto;
}
.cn-rich-grid-action textarea{min-height:80px}

/* ---- Contact section layout ---- */
.cn-form-section:nth-of-type(3) .cn-front-field{
  grid-column:span 4
}

/* ---- Package / images ---- */
.cn-images-selected-note{
  padding:15px 16px;
  background:linear-gradient(135deg,#f7faff,#eef5ff);
  border:1px solid #dae7f9;
}
.cn-front-field select[name="package"]{
  max-width:330px
}

/* ---- Submit bar ---- */
.cn-submit-confirm{
  position:sticky;
  bottom:14px;
  z-index:20;
  margin-top:18px;
  padding:14px 16px;
  border-radius:17px;
  background:rgba(20,32,51,.96);
  color:#fff;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 18px 45px rgba(20,32,51,.22);
  backdrop-filter:blur(14px)
}
.cn-submit-confirm strong{color:#fff}
.cn-submit-confirm span{color:#bdc8d9}
.cn-submit-confirm .cn-front-submit{
  min-width:210px;
  background:#fff;
  color:#142033;
  border:0;
  box-shadow:none
}
.cn-submit-confirm .cn-front-submit:hover{
  background:#edf4ff;
  color:#1769e8
}

/* ---- Tablet ---- */
@media(max-width:1000px){
  .cn-rich-grid-4{grid-template-columns:1fr 1fr}
  .cn-rich-grid-action{grid-template-columns:1fr}
  .cn-rich-grid-action .cn-front-field.full{grid-column:1}
  .cn-front-field,.cn-field-contact{grid-column:span 6}
  .cn-field-compact,.cn-field-date{grid-column:span 6}
}

/* ---- Mobile ---- */
@media(max-width:700px){
  .cn-front-wrap{width:min(100% - 20px,1240px)}
  .cn-front-hero h1{font-size:38px}
  .cn-submit-progress{
    overflow:auto;
    gap:5px;
    padding:10px
  }
  .cn-progress-item{min-width:105px}
  .cn-submit-progress>i{min-width:20px}
  .cn-ai-head{padding:18px}
  .cn-ai-workspace{padding:14px 14px 0}
  .cn-ai-actionbar{padding:10px 14px 14px}
  .cn-ai-result{padding:0 14px 14px}
  .cn-form-section{
    grid-template-columns:1fr;
    padding:18px 16px 20px;
    border-radius:18px
  }
  .cn-front-field,
  .cn-front-field.full,
  .cn-field-half,
  .cn-field-compact,
  .cn-field-date,
  .cn-field-contact,
  .cn-field-title{
    grid-column:1
  }
  .cn-rich-grid-4,
  .cn-rich-grid-period,
  .cn-rich-grid-action{
    grid-template-columns:1fr
  }
  .cn-front-field input[type="datetime-local"],
  .cn-front-field input[type="date"],
  .cn-front-field input[type="number"]{
    max-width:none
  }
  .cn-submit-confirm{
    position:static;
    flex-direction:column;
    align-items:stretch
  }
  .cn-submit-confirm .cn-front-submit{width:100%}
}


/* v0.16.1 — Event / multi-ticket form refinements */
.cn-ticket-options{
  grid-column:1/-1;
  padding:16px;
  border:1px solid #e7ebf1;
  background:#fafbfd;
  border-radius:16px;
}
.cn-ticket-options>label{
  font-size:14px;
  color:#142033;
}
.cn-ticket-options>small{
  margin-bottom:8px;
}
.cn-ticket-row{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(140px,220px);
  gap:10px;
  max-width:720px;
  margin-top:8px;
}
.cn-ticket-row input{
  min-height:44px;
  border:1px solid #dbe2eb;
  border-radius:11px;
  background:#fff;
  padding:10px 12px;
}
.cn-ticket-row input:focus{
  outline:none;
  border-color:#8fb9f5;
  box-shadow:0 0 0 3px rgba(23,105,232,.08)
}

@media(max-width:650px){
  .cn-ticket-row{grid-template-columns:1fr}
}


/* v0.16.2 — Job Vacancy AI / form */
.cn-rich-grid-job-top{
  grid-template-columns:minmax(220px,1.4fr) minmax(150px,.7fr) minmax(190px,.9fr) minmax(110px,.45fr) minmax(180px,.75fr);
}
.cn-rich-grid-job-profile{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.cn-rich-grid-job-profile .cn-front-field.full{
  grid-column:span 1;
}
.cn-rich-grid-job-text{
  grid-template-columns:1fr 1fr;
}
.cn-rich-grid-job-text .cn-front-field.full{
  grid-column:span 1;
}
.cn-rich-grid-job-contact{
  grid-template-columns:1fr 1fr 1.2fr;
}
.cn-rich-grid-job-contact .cn-front-field{
  grid-column:auto;
}

/* public Job detail additions */
.cn-job-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.cn-job-detail-grid>div{
  background:#f7f9fc;
  border:1px solid var(--cn-line);
  border-radius:16px;
  padding:16px;
}
.cn-job-detail-grid small{
  display:block;
  color:var(--cn-muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
  margin-bottom:6px;
}
.cn-job-detail-grid strong{
  font-size:15px;
  color:var(--cn-text);
}
.cn-job-apply-url{
  display:block;
  text-align:center;
  padding:13px 14px;
  border-radius:13px;
  margin-top:10px;
  font-weight:900;
  background:#142033;
  color:#fff;
}

@media(max-width:1100px){
  .cn-rich-grid-job-top{grid-template-columns:1fr 1fr}
  .cn-rich-grid-job-profile{grid-template-columns:1fr 1fr}
  .cn-rich-grid-job-contact{grid-template-columns:1fr 1fr}
}
@media(max-width:750px){
  .cn-rich-grid-job-top,
  .cn-rich-grid-job-profile,
  .cn-rich-grid-job-text,
  .cn-rich-grid-job-contact,
  .cn-job-detail-grid{
    grid-template-columns:1fr;
  }
  .cn-rich-grid-job-profile .cn-front-field.full,
  .cn-rich-grid-job-text .cn-front-field.full{
    grid-column:1;
  }
}


/* =========================================================
   v0.17.0 — MY CALLNEGOMBO DASHBOARD V2
   ========================================================= */

.cn-account-v2{max-width:1240px}

.cn-account-hero{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
  padding:30px 32px;
  border-radius:26px;
  background:
    radial-gradient(circle at 92% 10%,rgba(95,156,255,.28),transparent 17rem),
    linear-gradient(135deg,#11203a,#173e75 62%,#1769e8);
  color:#fff;
  box-shadow:0 22px 60px rgba(20,43,80,.16);
  margin-bottom:18px
}
.cn-account-hero:after{
  content:"";
  position:absolute;
  width:240px;height:240px;border-radius:50%;
  right:-80px;bottom:-150px;
  border:35px solid rgba(255,255,255,.05)
}
.cn-account-hero-copy,.cn-account-hero-actions{position:relative;z-index:1}
.cn-account-eyebrow{
  font-size:10px;letter-spacing:.14em;font-weight:900;color:#8fc2ff
}
.cn-account-hero h1{
  color:#fff;
  font-size:clamp(38px,4vw,54px);
  letter-spacing:-.045em;
  line-height:1;
  margin:10px 0 8px
}
.cn-account-hero p{
  color:#d7e2f3;
  font-size:14px;
  line-height:1.55;
  max-width:680px;
  margin:0
}
.cn-account-identity{
  display:flex;gap:8px;flex-wrap:wrap;margin-top:16px
}
.cn-account-identity>span{
  display:inline-flex;align-items:center;
  min-height:30px;padding:0 10px;border-radius:999px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.11);
  font-size:11px;color:#e8f0fb
}
.cn-account-verify.verified{background:rgba(32,201,151,.18);color:#d9fff1}
.cn-account-hero-actions{
  display:flex;gap:9px;flex-wrap:wrap
}
.cn-account-primary-btn,.cn-account-ghost-btn{
  min-height:44px;padding:0 16px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:900;font-size:12px;text-decoration:none
}
.cn-account-primary-btn{background:#fff;color:#142033}
.cn-account-ghost-btn{border:1px solid rgba(255,255,255,.18);color:#fff;background:rgba(255,255,255,.06)}

/* stats */
.cn-account-stats{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin-bottom:18px
}
.cn-account-stats>a{
  display:flex;align-items:center;gap:12px;
  background:#fff;border:1px solid #e3e8ef;
  border-radius:17px;padding:15px;
  box-shadow:0 8px 24px rgba(20,32,51,.035);
  text-decoration:none;color:#142033;
  transition:.16s ease
}
.cn-account-stats>a:hover,.cn-account-stats>a.active{
  transform:translateY(-1px);
  border-color:#b9d2f5;
  box-shadow:0 10px 30px rgba(20,73,145,.08)
}
.cn-stat-icon{
  width:39px;height:39px;border-radius:11px;
  display:grid;place-items:center;
  font-weight:900;font-size:15px
}
.cn-stat-icon.all{background:#edf4ff;color:#1769e8}
.cn-stat-icon.published{background:#eaf8f1;color:#087443}
.cn-stat-icon.pending{background:#fff6df;color:#a46500}
.cn-stat-icon.rejected{background:#fff0f0;color:#b42318}
.cn-stat-icon.expired{background:#f1f3f6;color:#667085}
.cn-account-stats small{
  display:block;font-size:9px;text-transform:uppercase;
  letter-spacing:.07em;color:#98a2b3;font-weight:800
}
.cn-account-stats strong{
  display:block;font-size:22px;line-height:1.1;margin-top:2px
}

/* listing manager */
.cn-account-manager{
  background:#fff;
  border:1px solid #e2e7ee;
  border-radius:23px;
  padding:22px;
  box-shadow:0 16px 45px rgba(20,32,51,.045)
}
.cn-account-manager-head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:20px;margin-bottom:14px
}
.cn-account-manager-head>div:first-child>span{
  font-size:9px;letter-spacing:.13em;color:#1769e8;font-weight:900
}
.cn-account-manager-head h2{
  margin:4px 0 0;font-size:26px;letter-spacing:-.025em
}
.cn-account-result-count{
  background:#f5f7fa;border:1px solid #e7ebf1;
  border-radius:999px;padding:6px 10px;
  font-size:10px;font-weight:800;color:#667085
}

.cn-account-filters{
  display:grid;
  grid-template-columns:minmax(260px,1fr) 190px 190px auto auto;
  gap:8px;
  padding:10px;
  border:1px solid #e6eaf0;
  background:#f8fafc;
  border-radius:15px;
  margin-bottom:12px
}
.cn-account-search{
  display:grid;grid-template-columns:24px 1fr;align-items:center;
  min-height:42px;background:#fff;border:1px solid #dfe5ed;
  border-radius:10px;padding:0 10px;color:#98a2b3
}
.cn-account-search input{
  border:0!important;box-shadow:none!important;background:transparent!important;
  width:100%;min-width:0
}
.cn-account-filters select{
  min-height:42px;border:1px solid #dfe5ed;border-radius:10px;
  background:#fff;padding:0 10px
}
.cn-account-filters button{
  min-height:42px;border:0;border-radius:10px;
  background:#142033;color:#fff;font-weight:900;padding:0 15px;cursor:pointer
}
.cn-account-filters>a{
  min-height:42px;display:flex;align-items:center;
  color:#667085;font-size:11px;font-weight:800;padding:0 8px
}

.cn-account-type-tabs{
  display:flex;gap:6px;overflow:auto;
  padding:0 0 13px;margin-bottom:2px;
  scrollbar-width:thin
}
.cn-account-type-tabs a{
  white-space:nowrap;
  padding:7px 11px;border-radius:999px;
  border:1px solid #e2e7ee;background:#fff;
  color:#667085;text-decoration:none;
  font-size:10px;font-weight:800
}
.cn-account-type-tabs a.active{
  background:#142033;border-color:#142033;color:#fff
}

/* cards */
.cn-account-list{
  display:flex;flex-direction:column;gap:10px
}
.cn-account-listing-card{
  display:grid;
  grid-template-columns:125px minmax(0,1fr);
  min-height:150px;
  border:1px solid #e4e8ef;
  border-radius:18px;
  overflow:visible;
  background:#fff;
  transition:.16s ease
}
.cn-account-listing-card:hover{
  border-color:#ccd7e6;
  box-shadow:0 10px 28px rgba(20,32,51,.045)
}
.cn-account-listing-media{
  position:relative;
  overflow:hidden;
  min-height:150px;
  border-radius:17px 0 0 17px;
  background:linear-gradient(135deg,#eaf3ff,#f5f8fc);
  display:grid;place-items:center
}
.cn-account-listing-media img{
  width:100%;height:100%;object-fit:cover;position:absolute;inset:0
}
.cn-account-listing-media>span{
  font-size:34px
}
.cn-account-listing-media>b{
  position:absolute;left:9px;bottom:9px;
  padding:5px 7px;border-radius:7px;
  background:rgba(20,32,51,.86);color:#fff;
  font-size:9px;z-index:1
}
.cn-account-listing-content{
  padding:16px 18px
}
.cn-account-listing-top{
  display:flex;justify-content:space-between;gap:20px
}
.cn-account-listing-top h3{
  font-size:19px;letter-spacing:-.018em;margin:8px 0 4px;color:#142033
}
.cn-account-listing-meta{
  font-size:11px;color:#667085;margin:0
}
.cn-account-updated{
  flex:0 0 auto;color:#98a2b3;font-size:9px;padding-top:3px
}
.cn-account-badges{
  display:flex;gap:5px;flex-wrap:wrap
}
.cn-dashboard-status,.cn-package-pill,.cn-time-pill{
  display:inline-flex;align-items:center;
  min-height:23px;padding:0 8px;border-radius:999px;
  font-size:9px;font-weight:900
}
.cn-dashboard-status{background:#eef5ff;color:#1769e8}
.cn-dashboard-status.status-publish{background:#eaf8f1;color:#087443}
.cn-dashboard-status.status-cn_rejected{background:#fff0f0;color:#b42318}
.cn-dashboard-status.status-cn_expired{background:#f1f3f6;color:#667085}
.cn-dashboard-status.status-draft{background:#f4f5f7;color:#667085}
.cn-package-pill.free{background:#f4f5f7;color:#667085}
.cn-package-pill.requested{background:#fff5df;color:#986000}
.cn-package-pill.featured{background:#efe8ff;color:#6938b8}
.cn-time-pill{background:#f7f9fc;color:#667085;border:1px solid #e6eaf0}
.cn-account-package-detail{
  display:inline-block;margin-top:7px;
  color:#98a2b3;font-size:9px
}
.cn-account-rejection{
  display:flex;flex-direction:column;gap:3px;
  margin-top:10px;padding:9px 11px;
  border:1px solid #f1c8c5;background:#fff7f7;
  border-radius:10px
}
.cn-account-rejection strong{font-size:10px;color:#b42318}
.cn-account-rejection span{font-size:11px;line-height:1.45;color:#7a3632}

/* actions */
.cn-account-card-actions{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;
  margin-top:12px
}
.cn-account-card-actions>a,
.cn-account-card-actions>form button,
.cn-account-more>summary{
  min-height:32px;padding:0 10px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #dfe5ed;background:#fff;color:#344054;
  border-radius:9px;font-size:10px;font-weight:900;
  text-decoration:none;cursor:pointer;font-family:inherit
}
.cn-account-card-actions>a.primary{
  background:#142033;border-color:#142033;color:#fff
}
.cn-account-card-actions .renew{
  border-color:#bcd5f7;color:#1769e8;background:#f4f8ff
}
.cn-account-card-actions .featured-request{
  border-color:#dbcdf5;color:#6b3db0;background:#faf7ff
}
.cn-account-more{position:relative}
.cn-account-more>summary{
  list-style:none
}
.cn-account-more>summary::-webkit-details-marker{display:none}
.cn-account-more[open]>summary{background:#f5f7fa}
.cn-account-more>div{
  position:absolute;
  z-index:30;
  right:0;top:38px;
  min-width:130px;
  padding:6px;
  border:1px solid #dde3eb;
  border-radius:11px;background:#fff;
  box-shadow:0 12px 35px rgba(20,32,51,.14)
}
.cn-account-more>div form{margin:0}
.cn-account-more>div button{
  width:100%;min-height:34px;
  padding:0 9px;border:0;background:#fff;
  text-align:left;justify-content:flex-start;
  border-radius:7px
}
.cn-account-more>div button:hover{background:#f5f7fa}
.cn-account-more>div button.danger{color:#b42318}

.cn-account-empty-v2{
  text-align:center;padding:55px 20px;border:1px dashed #d7dfe9;
  border-radius:17px;background:#fafbfd
}
.cn-account-empty-v2>span{
  width:48px;height:48px;border-radius:14px;background:#edf4ff;color:#1769e8;
  display:grid;place-items:center;margin:0 auto 12px;font-size:24px
}
.cn-account-empty-v2 h3{font-size:20px;margin:0 0 5px}
.cn-account-empty-v2 p{color:#667085;font-size:12px;margin:0 0 14px}
.cn-account-empty-v2 .cn-account-primary-btn{background:#1769e8;color:#fff}

.cn-account-coming{
  margin-top:14px;
  border:1px solid #dfe6ef;
  border-radius:17px;
  background:linear-gradient(135deg,#f9fbff,#f4f7fc);
  padding:17px 19px
}
.cn-account-coming span{
  display:block;font-size:9px;letter-spacing:.12em;color:#1769e8;font-weight:900
}
.cn-account-coming strong{display:block;margin:4px 0;font-size:14px}
.cn-account-coming p{margin:0;color:#667085;font-size:11px;line-height:1.5}

/* responsive */
@media(max-width:1000px){
  .cn-account-stats{grid-template-columns:repeat(3,1fr)}
  .cn-account-filters{grid-template-columns:1fr 1fr 1fr auto}
  .cn-account-filters>a{grid-column:1/-1}
}
@media(max-width:760px){
  .cn-account-hero{align-items:flex-start;flex-direction:column;padding:24px}
  .cn-account-stats{grid-template-columns:1fr 1fr}
  .cn-account-manager{padding:14px}
  .cn-account-filters{grid-template-columns:1fr}
  .cn-account-listing-card{grid-template-columns:90px minmax(0,1fr)}
  .cn-account-listing-media{min-height:170px}
  .cn-account-listing-content{padding:13px}
  .cn-account-listing-top{flex-direction:column;gap:3px}
  .cn-account-updated{order:-1}
}
@media(max-width:520px){
  .cn-account-stats{grid-template-columns:1fr}
  .cn-account-listing-card{grid-template-columns:1fr}
  .cn-account-listing-media{min-height:145px;border-radius:17px 17px 0 0}
  .cn-account-card-actions{align-items:stretch}
  .cn-account-card-actions>a,
  .cn-account-card-actions>form,
  .cn-account-card-actions>form button{
    flex:1
  }
}


/* =========================================================
   v0.17.1 — APPROVED CALLNEGOMBO DASHBOARD VISUAL
   ========================================================= */
.cn-account-shell{
  max-width:1460px;
  margin:24px auto 50px;
  padding:0 18px;
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:22px;
}
.cn-account-sidebar{
  position:sticky;top:18px;align-self:start;
  background:#fff;border:1px solid #edf0f5;border-radius:22px;
  padding:18px 12px;
  box-shadow:0 18px 50px rgba(31,53,86,.06);
}
.cn-side-brand{
  display:flex;align-items:center;gap:10px;
  font-size:17px;color:#13203a;padding:2px 8px 18px;
  border-bottom:1px solid #edf0f5
}
.cn-side-brand-mark{
  width:38px;height:38px;border-radius:13px;
  display:grid;place-items:center;color:#fff;font-weight:900;
  background:linear-gradient(135deg,#2768ff,#6258f7)
}
.cn-side-nav{display:flex;flex-direction:column;gap:4px;padding:14px 0}
.cn-side-nav>a,.cn-side-nav>span{
  min-height:39px;border-radius:10px;padding:0 10px;
  display:flex;align-items:center;gap:10px;
  color:#344054;text-decoration:none;font-size:11px;font-weight:800
}
.cn-side-nav>a:hover,.cn-side-nav>a.active{background:#eef4ff;color:#155eef}
.cn-side-nav>span.disabled{color:#98a2b3;cursor:default}
.cn-side-nav b{margin-left:auto;font-size:8px;background:#f2f4f7;padding:3px 5px;border-radius:99px;color:#98a2b3}
.cn-side-upgrade{
  margin-top:8px;padding:16px 12px;text-align:center;
  border-radius:16px;background:linear-gradient(160deg,#f8f5ff,#fff5f2);
  border:1px solid #efe8ff
}
.cn-side-upgrade-icon{font-size:30px;color:#f79009;margin-bottom:4px}
.cn-side-upgrade strong{font-size:13px}
.cn-side-upgrade p,.cn-side-help p{font-size:9px;line-height:1.5;color:#667085}
.cn-side-upgrade a{
  display:block;margin-top:9px;padding:9px;border-radius:9px;color:#fff;
  font-size:10px;font-weight:900;background:linear-gradient(90deg,#1769e8,#8c3cf2)
}
.cn-side-help{margin-top:12px;padding:13px;border:1px solid #edf0f5;border-radius:14px}
.cn-side-help strong{font-size:11px}
.cn-side-help a{
  display:flex;justify-content:center;margin-top:8px;padding:8px;border:1px solid #dce5f2;border-radius:8px;
  color:#1769e8;font-size:9px;font-weight:900;text-decoration:none
}

.cn-account-main{min-width:0}
.cn-account-hero.approved-visual{
  min-height:245px;align-items:center;padding:28px 32px;
  background:linear-gradient(115deg,#1268ee 0%,#263ee8 55%,#4e20d9 100%);
}
.cn-account-hero.approved-visual h1{font-size:clamp(38px,4vw,58px);line-height:.98}
.cn-account-hero-scene{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.cn-account-hero-scene .sun{
  position:absolute;width:220px;height:220px;border-radius:50%;right:160px;bottom:-70px;
  background:rgba(255,255,255,.06);box-shadow:0 0 0 35px rgba(255,255,255,.025)
}
.cn-account-hero-scene .tower{
  position:absolute;right:105px;bottom:0;width:32px;height:120px;
  background:linear-gradient(#8a86ff,#5251c9);clip-path:polygon(35% 0,65% 0,78% 100%,22% 100%);
  opacity:.35
}
.cn-account-hero-scene .tower:before,.cn-account-hero-scene .tower:after{
  content:"";position:absolute;left:0;right:0;height:10px;background:rgba(20,32,70,.55)
}
.cn-account-hero-scene .tower:before{top:35px}.cn-account-hero-scene .tower:after{top:72px}
.cn-account-hero-scene .palm{
  position:absolute;width:95px;height:120px;bottom:-3px;opacity:.24
}
.cn-account-hero-scene .palm:before{
  content:"";position:absolute;width:8px;height:90px;background:#112b7a;bottom:0;left:44px;transform:rotate(5deg)
}
.cn-account-hero-scene .palm:after{
  content:"✦";font-size:76px;position:absolute;top:-2px;left:7px;color:#132d82
}
.cn-account-hero-scene .p1{right:245px}.cn-account-hero-scene .p2{right:28px;transform:scale(.72)}

.approved-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.approved-stats>a{padding:17px 15px;min-height:112px;align-items:flex-start}
.approved-stats em{
  display:block;font-size:9px;color:#98a2b3;font-style:normal;margin-top:7px;line-height:1.3
}
.approved-stats .cn-stat-icon{width:45px;height:45px;font-size:21px}

.approved-manager{padding:22px 22px 14px}
.cn-account-manager-head.approved{align-items:center}
.cn-account-manager-head.approved h2{font-size:25px}
.cn-account-manager-head.approved p{font-size:10px;color:#667085;margin:3px 0 0}
.cn-manager-new{
  padding:11px 14px;border-radius:10px;background:linear-gradient(90deg,#1769e8,#7a3ff2);
  color:#fff;text-decoration:none;font-size:10px;font-weight:900
}
.approved-filter{
  grid-template-columns:minmax(260px,1fr) 190px 190px 100px;
  background:#fff;border:0;padding:0;margin-top:16px
}
.approved-filter .cn-account-search,.approved-filter select{background:#fff;border:1px solid #dfe5ed}
.approved-filter button{background:#102446}
.approved-tabs{margin-top:13px}
.approved-tabs a{background:#fff}

.approved-card{
  grid-template-columns:150px minmax(0,1fr);
  min-height:165px;
  border-radius:16px;
  overflow:visible
}
.cn-account-listing-media.square{
  width:150px;height:150px;min-height:150px;aspect-ratio:1/1;
  margin:8px;border-radius:13px;overflow:hidden
}
.cn-account-listing-media.square img{width:100%;height:100%;object-fit:cover}
.cn-account-listing-media.square b{left:8px;bottom:8px;background:#d22d3e}

.cn-approved-title-block h3{font-size:19px;margin-top:8px}
.cn-approved-right{display:flex;align-items:flex-start;gap:8px}
.compact-more>summary{
  width:32px;min-width:32px;height:32px;padding:0;border-radius:8px;font-size:18px
}
.cn-standard-label{display:block;color:#98a2b3;font-size:9px;margin-top:5px}

.cn-approved-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(100px,1fr));
  max-width:650px;
  margin-top:13px;padding-top:11px;border-top:1px solid #edf0f5
}
.cn-approved-metrics>div{padding:0 14px;border-right:1px solid #edf0f5}
.cn-approved-metrics>div:first-child{padding-left:0}
.cn-approved-metrics>div:last-child{border-right:0}
.cn-approved-metrics small{display:block;color:#98a2b3;font-size:8px;margin-bottom:3px}
.cn-approved-metrics strong{font-size:11px;color:#23324a}

.approved-actions{margin-top:12px}
.approved-actions .edit-btn{background:#1769e8!important;border-color:#1769e8!important;color:#fff!important}
.approved-actions .featured-request{
  background:linear-gradient(90deg,#6b36e8,#8a42ef)!important;
  border-color:transparent!important;color:#fff!important
}
.approved-actions .duplicate-btn{
  background:#fff!important;color:#344054!important;border:1px solid #dfe5ed!important
}
.cn-dashboard-status.status-pending{background:#fff3dc;color:#b15d00}
.approved-card .cn-package-pill.free{background:#eaf8ef;color:#20844d}
.approved-card .cn-time-pill{background:#fff0f1;color:#c93643;border-color:#ffd6d9}

.cn-approved-footer{
  display:flex;align-items:center;justify-content:space-between;
  padding:13px 4px 0;margin-top:8px;border-top:1px solid #edf0f5;
  color:#667085;font-size:9px
}
.cn-fake-pagination{display:flex;gap:5px}
.cn-fake-pagination button{
  width:30px;height:30px;border:1px solid #dfe5ed;background:#fff;border-radius:8px;color:#98a2b3
}
.cn-fake-pagination button.active{background:#1769e8;color:#fff;border-color:#1769e8}

@media(max-width:1180px){
  .cn-account-shell{grid-template-columns:180px minmax(0,1fr)}
  .approved-stats{grid-template-columns:repeat(3,1fr)}
  .approved-filter{grid-template-columns:1fr 1fr}
  .approved-filter button{grid-column:auto}
}
@media(max-width:860px){
  .cn-account-shell{display:block}
  .cn-account-sidebar{position:static;margin-bottom:14px}
  .cn-side-nav{display:grid;grid-template-columns:repeat(2,1fr)}
  .cn-side-upgrade,.cn-side-help{display:none}
  .approved-card{grid-template-columns:115px minmax(0,1fr)}
  .cn-account-listing-media.square{width:115px;height:115px;min-height:115px}
  .cn-approved-metrics{grid-template-columns:1fr 1fr}
  .cn-approved-metrics>div:nth-child(2){border-right:0}
}
@media(max-width:620px){
  .cn-account-shell{padding:0 10px}
  .cn-side-nav{grid-template-columns:1fr 1fr}
  .approved-stats{grid-template-columns:1fr 1fr}
  .approved-card{grid-template-columns:1fr}
  .cn-account-listing-media.square{
    width:100%;height:auto;min-height:0;aspect-ratio:1/1;margin:0;border-radius:16px 16px 0 0
  }
  .cn-account-listing-content{padding:14px}
  .cn-approved-right{position:absolute;right:12px;top:12px}
  .cn-account-listing-content{position:relative}
  .cn-approved-metrics{grid-template-columns:1fr 1fr}
  .approved-filter{grid-template-columns:1fr}
}


/* v0.18.0 — Featured Packages & Manual Payments */
.cn-upgrade-page{max-width:1240px}
.cn-upgrade-head{position:relative;overflow:hidden;padding:34px 36px;margin-bottom:18px;border-radius:26px;background:linear-gradient(125deg,#10203b,#163e78 55%,#216ff0);color:#fff;box-shadow:0 20px 55px rgba(20,43,80,.13)}
.cn-upgrade-head:after{content:"★";position:absolute;right:44px;top:10px;font-size:145px;color:rgba(255,255,255,.06);transform:rotate(12deg)}
.cn-upgrade-head>span{font-size:10px;letter-spacing:.14em;color:#91c1ff;font-weight:900}
.cn-upgrade-head h1{color:#fff;font-size:clamp(36px,4vw,58px);line-height:1;letter-spacing:-.045em;margin:10px 0}
.cn-upgrade-head p{color:#dce8f8;font-size:14px;max-width:720px;line-height:1.55}
.cn-upgrade-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}
.cn-upgrade-main,.cn-bank-card{background:#fff;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 12px 36px rgba(20,32,51,.045)}
.cn-upgrade-main{padding:22px}
.cn-upgrade-listing{display:flex;align-items:center;gap:14px;padding:0 0 18px;border-bottom:1px solid #edf0f5;margin-bottom:18px}
.cn-upgrade-listing img,.cn-upgrade-placeholder{width:76px;height:76px;aspect-ratio:1/1;border-radius:16px;object-fit:cover}
.cn-upgrade-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#1769e8,#6050ee);color:#fff;font-size:20px;font-weight:900}
.cn-upgrade-listing small{font-size:9px;text-transform:uppercase;color:#667085;font-weight:900}
.cn-upgrade-listing h2{font-size:21px;margin:4px 0;color:#142033}
.cn-featured-live,.cn-featured-pending{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:900}
.cn-featured-live{background:#efe8ff;color:#6938b8}.cn-featured-pending{background:#fff4dc;color:#986000}
.cn-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cn-package-option{position:relative;display:block;cursor:pointer;border:1px solid #dfe5ed;border-radius:17px;padding:18px;background:#fff;min-height:180px;transition:.16s ease}
.cn-package-option:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(20,43,80,.07)}
.cn-package-option input{position:absolute;opacity:0;pointer-events:none}
.cn-package-check{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:#f1f4f8;color:#98a2b3;margin-bottom:24px;font-size:12px}
.cn-package-option strong{display:block;font-size:15px;color:#142033}
.cn-package-option b{display:block;font-size:24px;color:#1769e8;margin:6px 0}
.cn-package-option small{display:block;font-size:10px;color:#667085;line-height:1.45}
.cn-package-option:has(input:checked){border:2px solid #1769e8;background:linear-gradient(180deg,#f7faff,#fff)}
.cn-package-option:has(input:checked) .cn-package-check{background:#1769e8;color:#fff}
.cn-payment-proof{margin-top:16px;padding:18px;border:1px solid #e3e8ef;border-radius:17px;background:#f9fbfd}
.cn-payment-proof h3{font-size:16px;margin:0 0 12px}
.cn-payment-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cn-payment-fields label>span{display:block;font-size:10px;font-weight:900;color:#344054;margin-bottom:5px}
.cn-payment-fields input[type=text],.cn-payment-fields input[type=file]{width:100%;min-height:46px;border:1px solid #dce3ec;border-radius:11px;background:#fff;padding:10px 12px}
.cn-slip-upload small{display:block;color:#98a2b3;font-size:9px;margin-top:4px}
.cn-upgrade-submit{width:100%;min-height:48px;margin-top:14px;border:0;border-radius:12px;background:linear-gradient(90deg,#1769e8,#604bea);color:#fff;font-weight:900;font-size:12px;cursor:pointer}
.cn-bank-card{padding:22px;position:sticky;top:18px}
.cn-bank-card>span{font-size:9px;letter-spacing:.13em;color:#1769e8;font-weight:900}
.cn-bank-card h3{font-size:22px;margin:6px 0 14px}
.cn-bank-card>div{padding:12px 0;border-top:1px solid #edf0f5}
.cn-bank-card small{display:block;color:#98a2b3;font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.06em}
.cn-bank-card strong{display:block;font-size:14px;margin-top:3px;color:#142033;word-break:break-word}
.cn-bank-card p{margin:12px 0 0;padding:12px;border-radius:12px;background:#f4f8ff;color:#526174;font-size:10px;line-height:1.55}
.cn-upgrade-empty{padding:28px;border:1px dashed #ced8e6;border-radius:16px;text-align:center;background:#fafbfd}
.cn-upgrade-empty h3{margin:0 0 6px;font-size:18px}.cn-upgrade-empty p{margin:0;color:#667085;font-size:11px;line-height:1.55}
@media(max-width:900px){.cn-upgrade-layout{grid-template-columns:1fr}.cn-bank-card{position:static}}
@media(max-width:680px){.cn-package-grid{grid-template-columns:1fr}.cn-payment-fields{grid-template-columns:1fr}.cn-upgrade-head{padding:26px 22px}}


/* v0.19.0 — Dynamic package manager front-end */
.cn-package-option{min-height:240px}
.cn-package-option.recommended{box-shadow:0 12px 32px rgba(93,63,210,.10)}
.cn-package-badge{
  position:absolute;right:12px;top:12px;
  display:inline-flex;padding:5px 8px;border-radius:999px;
  background:#fff2d8;color:#a15c00;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.05em
}
.cn-package-facts{
  display:flex;flex-direction:column;gap:6px;margin:12px 0 0;padding-top:10px;border-top:1px solid #edf0f5
}
.cn-package-facts span{font-size:9px;color:#536176;font-weight:700}
.cn-package-option ul{
  list-style:none;margin:12px 0 0;padding:0;
  display:flex;flex-direction:column;gap:5px
}
.cn-package-option li{font-size:9px;color:#536176;line-height:1.4}
.cn-payment-proof h3 small{font-size:9px;color:#98a2b3;font-weight:600;margin-left:5px}
.cn-package-pill.paid{background:#e8f2ff;color:#175cd3}
.cn-package-pill.rejected{background:#fff0f0;color:#b42318}


/* =========================================================
   v0.20.0 — PACKAGE SELECTION INSIDE SUBMISSION FORMS
   ========================================================= */
.cn-package-section{overflow:visible}
.cn-submit-package-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:4px 0 18px
}
.cn-submit-package-card{
  position:relative;
  min-height:235px;
  display:flex;
  flex-direction:column;
  padding:20px;
  border:1px solid #dfe5ed;
  border-radius:18px;
  background:#fff;
  cursor:pointer;
  transition:.18s ease;
  box-shadow:0 7px 22px rgba(23,43,77,.035)
}
.cn-submit-package-card:hover{
  transform:translateY(-2px);
  border-color:#b9c8dc;
  box-shadow:0 13px 32px rgba(23,43,77,.075)
}
.cn-submit-package-card input{
  position:absolute;
  opacity:0;
  pointer-events:none
}
.cn-submit-package-card:has(input:checked){
  border:2px solid #1769e8;
  background:linear-gradient(180deg,#f6f9ff,#fff);
  box-shadow:0 14px 36px rgba(23,105,232,.11)
}
.cn-submit-package-card.recommended{
  background:linear-gradient(180deg,#fbf9ff,#fff)
}
.cn-submit-package-radio{
  width:34px;height:34px;
  display:grid;place-items:center;
  border-radius:10px;
  background:#f1f4f8;color:#98a2b3;
  font-weight:900;margin-bottom:24px
}
.cn-submit-package-card:has(input:checked) .cn-submit-package-radio{
  color:#fff;background:#1769e8
}
.cn-submit-package-badge{
  position:absolute;right:14px;top:14px;
  padding:5px 9px;border-radius:999px;
  background:#fff2d8;color:#9a5c00;
  font-size:8px;font-weight:900;
  text-transform:uppercase;letter-spacing:.04em
}
.cn-submit-package-card>strong{
  color:#142033;font-size:17px;line-height:1.25
}
.cn-submit-package-card>b{
  color:#1769e8;font-size:25px;margin:7px 0 11px
}
.cn-submit-package-facts{
  display:flex;flex-direction:column;gap:6px;
  padding-top:11px;border-top:1px solid #edf0f5
}
.cn-submit-package-facts span{
  color:#536176;font-size:10px;font-weight:700
}
.cn-submit-package-card ul{
  list-style:none;padding:0;margin:13px 0 0;
  display:flex;flex-direction:column;gap:5px
}
.cn-submit-package-card li{
  font-size:9px;color:#667085;line-height:1.45
}

.cn-inline-payment-panel{
  margin:12px 0 22px;
  padding:20px;
  border:1px solid #dbe5f2;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fbff,#f4f7ff);
  box-shadow:0 12px 30px rgba(23,43,77,.045)
}
.cn-inline-payment-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  padding-bottom:15px;border-bottom:1px solid #dfe7f2
}
.cn-inline-payment-head span{
  display:block;color:#1769e8;font-size:8px;letter-spacing:.12em;font-weight:900
}
.cn-inline-payment-head h3{
  margin:5px 0 0;font-size:18px;color:#142033
}
.cn-inline-payment-head>strong{
  color:#1769e8;font-size:22px;white-space:nowrap
}
.cn-inline-payment-grid{
  display:grid;grid-template-columns:320px minmax(0,1fr);
  gap:18px;padding-top:16px
}
.cn-inline-bank{
  display:grid;grid-template-columns:110px 1fr;gap:8px 12px;
  padding:15px;border-radius:14px;background:#fff;border:1px solid #e4e9f0
}
.cn-inline-bank small{
  color:#98a2b3;font-size:8px;text-transform:uppercase;font-weight:900
}
.cn-inline-bank strong{
  color:#25324a;font-size:11px;word-break:break-word
}
.cn-inline-proof{
  display:grid;grid-template-columns:1fr 1fr;gap:12px
}
.cn-inline-proof label>span{
  display:block;font-size:10px;font-weight:900;color:#344054;margin-bottom:6px
}
.cn-inline-proof input{
  width:100%;min-height:48px;
  border:1px solid #dce3ec;border-radius:11px;
  background:#fff;padding:10px 12px
}
.cn-inline-proof small{
  display:block;color:#98a2b3;font-size:8px;margin-top:5px
}
.cn-inline-payment-panel>p{
  margin:14px 0 0;color:#667085;font-size:9px;line-height:1.5
}
.cn-form-package-empty{
  padding:22px;border:1px dashed #e5b8b8;border-radius:15px;
  background:#fff7f7;display:flex;flex-direction:column;gap:5px
}
.cn-form-package-empty strong{color:#9d2424}
.cn-form-package-empty span{color:#667085;font-size:10px}
.cn-current-package-note{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:17px 18px;margin-bottom:18px;
  border:1px solid #dce5f0;border-radius:14px;background:#f8fbff
}
.cn-current-package-note small{
  display:block;color:#1769e8;font-size:8px;font-weight:900;letter-spacing:.1em
}
.cn-current-package-note strong{display:block;margin-top:3px;color:#142033}
.cn-current-package-note a{
  padding:9px 12px;border-radius:9px;background:#fff;border:1px solid #dce5f0;
  color:#1769e8;text-decoration:none;font-size:9px;font-weight:900
}
.cn-front-submit:disabled{
  opacity:.45;cursor:not-allowed
}
@media(max-width:980px){
  .cn-submit-package-grid{grid-template-columns:1fr 1fr}
  .cn-inline-payment-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .cn-submit-package-grid{grid-template-columns:1fr}
  .cn-inline-proof{grid-template-columns:1fr}
  .cn-inline-payment-head{flex-direction:column}
  .cn-inline-bank{grid-template-columns:95px 1fr}
}


/* =========================================================
   v0.21.0 — PREMIUM PUBLIC BUSINESS EXPERIENCE
   ========================================================= */

/* Archive hero */
.cn-biz-archive-hero{
  padding:58px 0 26px;
  background:
    radial-gradient(circle at 88% 8%,rgba(77,115,255,.17),transparent 24rem),
    radial-gradient(circle at 3% 100%,rgba(0,190,150,.09),transparent 22rem),
    linear-gradient(135deg,#101b31,#15335d 58%,#164f8f);
  color:#fff
}
.cn-biz-hero-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 220px;
  align-items:end;gap:40px
}
.cn-biz-kicker{
  display:inline-flex;padding:6px 10px;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  color:#98c9ff;font-size:9px;font-weight:900;letter-spacing:.13em
}
.cn-biz-archive-hero h1{
  margin:15px 0 12px;color:#fff;
  font-size:clamp(42px,5vw,68px);
  line-height:.98;letter-spacing:-.05em
}
.cn-biz-archive-hero h1 em{
  color:#8bc5ff;font-style:normal
}
.cn-biz-archive-hero p{
  max-width:740px;color:#d5e1f0;font-size:15px;line-height:1.65;margin:0
}
.cn-biz-hero-stat{
  padding:20px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07);
  border-radius:20px;backdrop-filter:blur(10px)
}
.cn-biz-hero-stat span,.cn-biz-hero-stat small{
  display:block;color:#b9c9dd;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800
}
.cn-biz-hero-stat strong{
  display:block;font-size:44px;color:#fff;line-height:1;margin:10px 0 5px
}

/* Search */
.cn-biz-searchbar{
  display:grid;
  grid-template-columns:minmax(260px,1.45fr) minmax(170px,.7fr) minmax(170px,.7fr) auto;
  gap:8px;
  margin-top:32px;padding:9px;
  border-radius:17px;background:#fff;
  box-shadow:0 18px 48px rgba(0,0,0,.15)
}
.cn-biz-searchbar label{
  min-width:0;padding:7px 11px;border-right:1px solid #edf0f4
}
.cn-biz-searchbar label>span{
  display:block;color:#98a2b3;font-size:8px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-bottom:2px
}
.cn-biz-search-main{
  display:grid!important;
  grid-template-columns:24px 1fr;align-items:center
}
.cn-biz-search-main>span{font-size:19px!important;margin:0!important}
.cn-biz-searchbar input,.cn-biz-searchbar select{
  width:100%;border:0!important;box-shadow:none!important;
  background:transparent!important;min-height:34px;padding:0!important;color:#25324a
}
.cn-biz-searchbar button{
  border:0;border-radius:11px;padding:0 18px;
  background:linear-gradient(90deg,#1769e8,#5358eb);color:#fff;
  font-weight:900;cursor:pointer
}
.cn-biz-category-chips{
  display:flex;align-items:center;gap:6px;overflow:auto;
  margin-top:18px;padding-bottom:2px
}
.cn-biz-category-chips>span{
  color:#aebed1;font-size:9px;text-transform:uppercase;font-weight:900;letter-spacing:.07em;margin-right:4px
}
.cn-biz-category-chips a{
  white-space:nowrap;text-decoration:none;
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);
  color:#dbe6f4;font-size:9px;font-weight:800
}
.cn-biz-category-chips a:hover,.cn-biz-category-chips a.active{
  background:#fff;color:#174b89
}

/* Archive content */
.cn-biz-directory{padding:34px 0 64px;background:#f5f7fa}
.cn-biz-directory-head{
  display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px
}
.cn-biz-directory-head h2{font-size:30px;letter-spacing:-.03em;margin:5px 0}
.cn-biz-directory-head p{margin:0;color:#667085;font-size:11px}
.cn-biz-clear,.cn-biz-list-cta{
  display:inline-flex;align-items:center;min-height:38px;padding:0 12px;
  border-radius:10px;text-decoration:none;font-size:10px;font-weight:900
}
.cn-biz-clear{background:#fff;border:1px solid #dfe5ed;color:#667085}
.cn-biz-list-cta{background:#142033;color:#fff}

.cn-biz-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px
}
.cn-biz-card{
  position:relative;overflow:hidden;background:#fff;
  border:1px solid #e1e6ed;border-radius:20px;
  box-shadow:0 9px 30px rgba(20,32,51,.045);
  transition:.18s ease
}
.cn-biz-card:hover{
  transform:translateY(-3px);
  border-color:#c9d6e7;
  box-shadow:0 18px 42px rgba(20,32,51,.09)
}
.cn-biz-card.is-featured{
  border-color:#cfc3ef;
  box-shadow:0 12px 34px rgba(86,63,168,.08)
}
.cn-biz-card-main{display:block;text-decoration:none;color:inherit}
.cn-biz-card-media{
  position:relative;aspect-ratio:1/1;overflow:hidden;background:#eef3f8
}
.cn-biz-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cn-biz-card:hover .cn-biz-card-media img{transform:scale(1.025)}
.cn-biz-card-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:
    radial-gradient(circle at 25% 20%,rgba(255,255,255,.8),transparent 16rem),
    linear-gradient(135deg,#eaf2ff,#f4f7fb)
}
.cn-biz-card-placeholder span{
  width:80px;height:80px;border-radius:24px;
  display:grid;place-items:center;
  background:#fff;color:#1769e8;font-size:28px;font-weight:900;
  box-shadow:0 12px 35px rgba(23,105,232,.11)
}
.cn-biz-card-badges{
  position:absolute;left:12px;top:12px;display:flex;gap:5px;flex-wrap:wrap
}
.cn-biz-card-badges span,.cn-biz-package{
  display:inline-flex;align-items:center;padding:6px 8px;border-radius:999px;
  font-size:8px;font-weight:900;backdrop-filter:blur(8px)
}
.cn-biz-card-badges .featured{background:#6538b8;color:#fff}
.cn-biz-card-badges .verified{background:rgba(255,255,255,.94);color:#087443}
.cn-biz-package{
  position:absolute;right:12px;bottom:12px;background:rgba(20,32,51,.84);color:#fff
}
.cn-biz-card-content{padding:16px 17px}
.cn-biz-card-labels{display:flex;justify-content:space-between;align-items:center;gap:10px}
.cn-biz-card-labels span{
  color:#1769e8;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:900
}
.cn-biz-card-labels strong{color:#f79009;font-size:10px}
.cn-biz-card h3{
  color:#142033;font-size:20px;line-height:1.2;letter-spacing:-.02em;margin:8px 0 7px
}
.cn-biz-card-content p{
  min-height:42px;color:#667085;font-size:11px;line-height:1.55;margin:0 0 11px
}
.cn-biz-card-location{font-size:10px;color:#667085}
.cn-biz-card-actions{
  display:grid;grid-template-columns:1fr auto auto;
  gap:6px;padding:10px 12px;border-top:1px solid #edf0f4;background:#fbfcfd
}
.cn-biz-card-actions a{
  min-height:35px;padding:0 10px;display:flex;align-items:center;justify-content:center;
  border-radius:9px;text-decoration:none;font-size:9px;font-weight:900
}
.cn-biz-card-actions .view{background:#142033;color:#fff}
.cn-biz-card-actions .call{background:#edf4ff;color:#1769e8}
.cn-biz-card-actions .whatsapp{background:#eaf8f0;color:#087443}
.cn-biz-pagination{margin-top:28px}
.cn-biz-empty{
  text-align:center;padding:60px 20px;border:1px dashed #cfd8e5;
  border-radius:18px;background:#fff
}
.cn-biz-empty>span{
  width:48px;height:48px;border-radius:14px;
  display:grid;place-items:center;margin:0 auto 12px;
  background:#edf4ff;color:#1769e8;font-size:22px
}
.cn-biz-empty h3{font-size:21px;margin:0 0 5px}
.cn-biz-empty p{color:#667085;margin:0 0 15px}
.cn-biz-empty a{
  display:inline-flex;padding:10px 13px;border-radius:9px;background:#1769e8;color:#fff;text-decoration:none;font-weight:900
}

/* Bottom CTA */
.cn-biz-bottom-cta{
  padding:0 0 56px;background:#f5f7fa
}
.cn-biz-bottom-cta .cn-shell{
  display:flex;align-items:center;justify-content:space-between;gap:30px;
  padding:30px 34px;border-radius:23px;
  background:
    radial-gradient(circle at 92% 20%,rgba(87,117,255,.27),transparent 18rem),
    linear-gradient(125deg,#14233f,#1b4275);
  color:#fff
}
.cn-biz-bottom-cta span{font-size:9px;letter-spacing:.12em;color:#91c1ff;font-weight:900}
.cn-biz-bottom-cta h2{color:#fff;font-size:30px;margin:6px 0}
.cn-biz-bottom-cta p{color:#cdd9e9;margin:0;font-size:11px}
.cn-biz-bottom-cta a{
  flex:0 0 auto;padding:13px 16px;border-radius:11px;background:#fff;color:#142033;text-decoration:none;font-size:10px;font-weight:900
}

/* Single profile */
.cn-biz-profile-hero{
  padding:18px 0 0;background:#f3f6fa
}
.cn-biz-breadcrumb{
  display:flex;align-items:center;gap:7px;padding:4px 0 13px;
  color:#98a2b3;font-size:9px
}
.cn-biz-breadcrumb a{color:#667085;text-decoration:none}
.cn-biz-profile-cover{
  position:relative;height:360px;border-radius:24px;overflow:hidden;
  background:linear-gradient(135deg,#dfe9f7,#edf3fa)
}
.cn-biz-profile-cover>img{width:100%;height:100%;object-fit:cover}
.cn-biz-profile-cover-fallback{
  width:100%;height:100%;
  display:grid;place-items:center;
  background:
    radial-gradient(circle at 20% 10%,rgba(255,255,255,.9),transparent 24rem),
    linear-gradient(135deg,#dfeaff,#eef3fb)
}
.cn-biz-profile-cover-fallback span{
  width:120px;height:120px;border-radius:36px;display:grid;place-items:center;
  background:#fff;color:#1769e8;font-size:40px;font-weight:900;
  box-shadow:0 18px 50px rgba(23,105,232,.12)
}
.cn-biz-cover-shade{
  position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(9,19,36,.42))
}
.cn-biz-cover-badges{
  position:absolute;left:18px;bottom:18px;display:flex;gap:6px;flex-wrap:wrap
}
.cn-biz-cover-badges span{
  padding:7px 10px;border-radius:999px;font-size:9px;font-weight:900;backdrop-filter:blur(8px)
}
.cn-biz-cover-badges .featured{background:#6c3ac0;color:#fff}
.cn-biz-cover-badges .verified{background:rgba(255,255,255,.94);color:#087443}
.cn-biz-cover-badges .package{background:rgba(20,32,51,.86);color:#fff}

.cn-biz-profile-heading{
  position:relative;z-index:2;
  display:grid;grid-template-columns:106px minmax(0,1fr) auto;
  gap:18px;align-items:center;
  margin:-34px 24px 0;padding:20px 22px;
  border:1px solid #e0e6ee;border-radius:20px;background:#fff;
  box-shadow:0 16px 46px rgba(20,32,51,.10)
}
.cn-biz-avatar{
  width:106px;height:106px;aspect-ratio:1/1;border-radius:22px;
  overflow:hidden;background:#edf4ff;
  border:5px solid #fff;box-shadow:0 8px 24px rgba(20,32,51,.10)
}
.cn-biz-avatar img{width:100%;height:100%;object-fit:cover}
.cn-biz-avatar span{width:100%;height:100%;display:grid;place-items:center;color:#1769e8;font-size:27px;font-weight:900}
.cn-biz-heading-kicker{display:flex;gap:6px;flex-wrap:wrap}
.cn-biz-heading-kicker span{
  display:inline-flex;padding:5px 8px;border-radius:999px;background:#f1f5fb;color:#526174;
  font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em
}
.cn-biz-heading-copy h1{
  margin:7px 0 5px;font-size:34px;letter-spacing:-.035em;color:#142033
}
.cn-biz-heading-copy>p{
  max-width:680px;color:#667085;font-size:11px;line-height:1.5;margin:0
}
.cn-biz-trustline{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.cn-biz-trustline span{font-size:9px;color:#667085}
.cn-biz-trustline .rating{color:#f79009;font-weight:900}
.cn-biz-trustline small{color:#98a2b3}
.cn-biz-heading-actions{
  display:grid;grid-template-columns:repeat(3,auto);gap:6px
}
.cn-biz-heading-actions a{
  min-height:42px;padding:0 12px;border-radius:10px;
  display:flex;align-items:center;gap:5px;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-biz-heading-actions .call{background:#edf4ff;color:#1769e8}
.cn-biz-heading-actions .whatsapp{background:#087443;color:#fff}
.cn-biz-heading-actions .direction{background:#142033;color:#fff}

.cn-biz-profile-body{padding:28px 0 70px;background:#f3f6fa}
.cn-biz-profile-layout{
  display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);
  gap:18px;align-items:start
}
.cn-biz-profile-main{display:flex;flex-direction:column;gap:15px}
.cn-biz-panel{
  padding:22px;border:1px solid #e0e6ed;border-radius:18px;background:#fff;
  box-shadow:0 8px 28px rgba(20,32,51,.035)
}
.cn-biz-panel-title{margin-bottom:13px}
.cn-biz-panel-title.row{display:flex;justify-content:space-between;align-items:end;gap:15px}
.cn-biz-panel-title>span,.cn-biz-panel-title>div>span{
  display:block;color:#1769e8;font-size:8px;letter-spacing:.12em;font-weight:900
}
.cn-biz-panel-title h2{margin:4px 0 0;font-size:22px;letter-spacing:-.02em}
.cn-biz-panel-title small{color:#98a2b3;font-size:9px}
.cn-biz-panel-title a{font-size:9px;font-weight:900;text-decoration:none;color:#1769e8}
.cn-profile-copy{color:#465568;font-size:12px;line-height:1.75}

/* Gallery */
.cn-biz-gallery{
  display:grid;grid-template-columns:1.4fr .7fr .7fr;grid-auto-rows:150px;gap:8px
}
.cn-biz-gallery-item{
  position:relative;border-radius:12px;overflow:hidden;background:#eef2f6
}
.cn-biz-gallery-item.primary{grid-row:span 2}
.cn-biz-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.cn-biz-gallery-item:hover img{transform:scale(1.025)}
.cn-biz-gallery-item span{
  position:absolute;left:10px;bottom:10px;padding:6px 8px;border-radius:8px;
  background:rgba(20,32,51,.82);color:#fff;font-size:8px;font-weight:900
}

/* Offers */
.cn-biz-offers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cn-biz-offer-card{
  overflow:hidden;border:1px solid #e4e9ef;border-radius:14px;background:#fff;
  text-decoration:none;color:inherit
}
.cn-biz-offer-media{position:relative;aspect-ratio:1.25/1;background:#f2f4f7;display:grid;place-items:center}
.cn-biz-offer-media img{width:100%;height:100%;object-fit:cover}
.cn-biz-offer-media>b{
  position:absolute;left:8px;bottom:8px;padding:5px 7px;border-radius:7px;background:#d92d20;color:#fff;font-size:8px
}
.cn-biz-offer-card>div:last-child{padding:11px}
.cn-biz-offer-card small{font-size:7px;color:#d92d20;font-weight:900;letter-spacing:.08em}
.cn-biz-offer-card h3{font-size:13px;margin:4px 0 8px;color:#142033}
.cn-biz-offer-card .cn-profile-countdown{font-size:8px;color:#667085}

/* Related */
.cn-biz-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cn-biz-related-card{text-decoration:none;color:inherit}
.cn-biz-related-card>div{
  aspect-ratio:1/1;border-radius:13px;overflow:hidden;background:#edf4ff;
  display:grid;place-items:center;margin-bottom:7px
}
.cn-biz-related-card img{width:100%;height:100%;object-fit:cover}
.cn-biz-related-card>div>span{font-size:22px;color:#1769e8;font-weight:900}
.cn-biz-related-card strong{display:block;font-size:11px;color:#142033}
.cn-biz-related-card small{display:block;color:#98a2b3;font-size:8px;margin-top:2px}

/* Sidebar */
.cn-biz-profile-sidebar{position:sticky;top:18px;display:flex;flex-direction:column;gap:12px}
.cn-biz-contact-card,.cn-biz-map-card,.cn-biz-report-card{
  background:#fff;border:1px solid #e0e6ed;border-radius:18px;padding:19px;
  box-shadow:0 8px 28px rgba(20,32,51,.035)
}
.cn-biz-contact-card-head span{
  color:#1769e8;font-size:8px;letter-spacing:.11em;font-weight:900
}
.cn-biz-contact-card-head h2{font-size:20px;margin:5px 0 14px}
.cn-biz-info-item{
  display:grid;grid-template-columns:35px minmax(0,1fr);gap:10px;
  padding:10px 0;border-top:1px solid #edf0f4
}
.cn-biz-info-item .icon{
  width:35px;height:35px;border-radius:10px;display:grid;place-items:center;
  background:#f0f5fb;color:#1769e8
}
.cn-biz-info-item small{
  display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;letter-spacing:.06em;font-weight:900
}
.cn-biz-info-item strong{
  display:block;color:#344054;font-size:10px;line-height:1.5;margin-top:2px;font-weight:700
}
.cn-biz-info-item a{color:inherit;text-decoration:none}
.cn-biz-sidebar-actions{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:13px
}
.cn-biz-sidebar-actions a{
  min-height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-biz-sidebar-actions .call{background:#edf4ff;color:#1769e8}
.cn-biz-sidebar-actions .whatsapp{background:#087443;color:#fff}
.cn-biz-sidebar-actions .maps{grid-column:1/-1;background:#142033;color:#fff}

.cn-biz-map-art{
  min-height:145px;border-radius:13px;background:
    linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),
    linear-gradient(135deg,#dfeaff,#f2f5f9);
  background-size:28px 28px,28px 28px,auto;
  display:flex;flex-direction:column;align-items:center;justify-content:center
}
.cn-biz-map-art>span{
  width:42px;height:42px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);
  background:#1769e8;color:#fff;display:grid;place-items:center;font-size:18px
}
.cn-biz-map-art>span::first-letter{transform:rotate(45deg)}
.cn-biz-map-art strong{margin-top:10px;color:#142033}
.cn-biz-map-art small{color:#667085;font-size:8px}
.cn-biz-map-card>a{
  display:block;text-align:center;margin-top:8px;padding:9px;border-radius:9px;
  background:#f4f7fb;color:#1769e8;text-decoration:none;font-size:9px;font-weight:900
}
.cn-biz-report-card small{color:#344054;font-weight:900}
.cn-biz-report-card p{margin:5px 0 0;color:#98a2b3;font-size:9px;line-height:1.5}

.cn-biz-mobile-actions{display:none}

/* Responsive */
@media(max-width:1050px){
  .cn-biz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cn-biz-profile-heading{grid-template-columns:90px minmax(0,1fr)}
  .cn-biz-avatar{width:90px;height:90px}
  .cn-biz-heading-actions{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}
  .cn-biz-profile-layout{grid-template-columns:minmax(0,1.4fr) 300px}
}
@media(max-width:850px){
  .cn-biz-searchbar{grid-template-columns:1fr 1fr}
  .cn-biz-search-main{grid-column:1/-1}
  .cn-biz-searchbar button{min-height:44px}
  .cn-biz-profile-layout{grid-template-columns:1fr}
  .cn-biz-profile-sidebar{position:static}
}
@media(max-width:700px){
  .cn-biz-hero-grid{grid-template-columns:1fr}
  .cn-biz-hero-stat{display:none}
  .cn-biz-archive-hero{padding-top:38px}
  .cn-biz-archive-hero h1{font-size:44px}
  .cn-biz-grid{grid-template-columns:1fr}
  .cn-biz-directory-head{align-items:flex-start;flex-direction:column}
  .cn-biz-bottom-cta .cn-shell{align-items:flex-start;flex-direction:column}
  .cn-biz-profile-cover{height:240px;border-radius:18px}
  .cn-biz-profile-heading{
    margin:-24px 10px 0;padding:16px;
    grid-template-columns:70px minmax(0,1fr);gap:12px
  }
  .cn-biz-avatar{width:70px;height:70px;border-radius:16px}
  .cn-biz-heading-copy h1{font-size:25px}
  .cn-biz-heading-copy>p{display:none}
  .cn-biz-trustline{display:none}
  .cn-biz-heading-actions{grid-template-columns:1fr 1fr 1fr}
  .cn-biz-heading-actions a{padding:0 7px}
  .cn-biz-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:130px}
  .cn-biz-gallery-item.primary{grid-column:1/-1;grid-row:span 2}
  .cn-biz-offers,.cn-biz-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .cn-biz-searchbar{grid-template-columns:1fr}
  .cn-biz-search-main{grid-column:1}
  .cn-biz-searchbar label{border-right:0;border-bottom:1px solid #edf0f4}
  .cn-biz-card-actions{grid-template-columns:1fr 1fr}
  .cn-biz-card-actions .view{grid-column:1/-1}
  .cn-biz-profile-heading{
    grid-template-columns:60px minmax(0,1fr);
    margin-left:0;margin-right:0;border-radius:16px
  }
  .cn-biz-avatar{width:60px;height:60px}
  .cn-biz-heading-actions{grid-template-columns:1fr 1fr}
  .cn-biz-heading-actions .direction{grid-column:1/-1}
  .cn-biz-offers,.cn-biz-related-grid{grid-template-columns:1fr}
  .cn-biz-panel{padding:17px}
  .cn-biz-mobile-actions{display:flex}
}


/* =========================================================
   v0.22.0 — PREMIUM PROPERTY PUBLIC EXPERIENCE
   ========================================================= */

/* Archive hero */
.cn-prop-archive-hero{
  padding:58px 0 25px;
  background:
    radial-gradient(circle at 88% 10%,rgba(104,130,255,.19),transparent 25rem),
    radial-gradient(circle at 3% 100%,rgba(0,179,148,.10),transparent 20rem),
    linear-gradient(135deg,#102039,#14345d 58%,#164e89);
  color:#fff
}
.cn-prop-hero-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:40px
}
.cn-prop-kicker{
  display:inline-flex;padding:6px 10px;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  color:#9bcaff;font-size:9px;font-weight:900;letter-spacing:.13em
}
.cn-prop-archive-hero h1{
  color:#fff;font-size:clamp(42px,5vw,68px);line-height:.98;letter-spacing:-.05em;margin:15px 0 12px
}
.cn-prop-archive-hero h1 em{font-style:normal;color:#8bc5ff}
.cn-prop-archive-hero p{
  max-width:760px;color:#d6e2f0;font-size:15px;line-height:1.65;margin:0
}
.cn-prop-hero-stat{
  padding:20px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);
  border-radius:20px;backdrop-filter:blur(10px)
}
.cn-prop-hero-stat span,.cn-prop-hero-stat small{
  display:block;color:#bac9da;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800
}
.cn-prop-hero-stat strong{display:block;color:#fff;font-size:44px;line-height:1;margin:9px 0 4px}

/* Search */
.cn-prop-search{
  position:relative;
  display:grid;
  grid-template-columns:minmax(270px,1.4fr) minmax(150px,.6fr) minmax(180px,.72fr) minmax(170px,.68fr) auto;
  gap:8px;margin-top:32px;padding:9px;border-radius:17px;background:#fff;
  box-shadow:0 18px 48px rgba(0,0,0,.15)
}
.cn-prop-search>label{
  min-width:0;padding:7px 11px;border-right:1px solid #edf0f4
}
.cn-prop-search>label>span{
  display:block;color:#98a2b3;font-size:8px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-bottom:2px
}
.cn-prop-search-keyword{display:grid!important;grid-template-columns:24px 1fr;align-items:center}
.cn-prop-search-keyword>span{font-size:19px!important;margin:0!important}
.cn-prop-search input,.cn-prop-search select{
  width:100%;border:0!important;box-shadow:none!important;background:transparent!important;
  min-height:34px;padding:0!important;color:#25324a
}
.cn-prop-search>button{
  border:0;border-radius:11px;padding:0 17px;background:linear-gradient(90deg,#1769e8,#5358eb);
  color:#fff;font-weight:900;cursor:pointer
}
.cn-prop-more-filters{
  grid-column:1/-1;border-top:1px solid #edf0f4;margin-top:2px;padding:5px 4px 1px
}
.cn-prop-more-filters>summary{
  cursor:pointer;display:inline-flex;align-items:center;gap:6px;list-style:none;
  color:#526174;font-size:9px;font-weight:900;padding:5px
}
.cn-prop-more-filters>summary::-webkit-details-marker{display:none}
.cn-prop-more-filters>summary b{
  min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;background:#1769e8;color:#fff;font-size:8px
}
.cn-prop-more-filters>div{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:8px;padding-top:9px
}
.cn-prop-more-filters label{
  border:1px solid #e1e6ed!important;border-radius:10px!important;padding:7px 9px!important
}
.cn-prop-more-filters label span{
  display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900
}
.cn-prop-more-filters button{
  border:0;border-radius:10px;background:#142033;color:#fff;font-weight:900;padding:0 12px
}
.cn-prop-quick-links{
  display:flex;align-items:center;gap:6px;overflow:auto;margin-top:17px
}
.cn-prop-quick-links>span{
  color:#acbdd0;font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-right:4px
}
.cn-prop-quick-links a{
  white-space:nowrap;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.06);color:#dbe6f3;font-size:9px;font-weight:800;text-decoration:none
}
.cn-prop-quick-links a.active,.cn-prop-quick-links a:hover{background:#fff;color:#174b89}

/* Directory */
.cn-prop-directory{padding:35px 0 64px;background:#f5f7fa}
.cn-prop-directory-head{
  display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px
}
.cn-prop-directory-head h2{font-size:30px;letter-spacing:-.03em;margin:5px 0}
.cn-prop-directory-head p{margin:0;color:#667085;font-size:11px}
.cn-prop-directory-actions{display:flex;gap:7px;flex-wrap:wrap}
.cn-prop-directory-actions a{
  min-height:38px;padding:0 12px;border-radius:10px;display:flex;align-items:center;
  text-decoration:none;font-size:10px;font-weight:900
}
.cn-prop-directory-actions .clear{background:#fff;border:1px solid #dfe5ed;color:#667085}
.cn-prop-directory-actions .list{background:#142033;color:#fff}

.cn-prop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cn-prop-card{
  position:relative;overflow:hidden;background:#fff;border:1px solid #e1e6ed;border-radius:20px;
  box-shadow:0 9px 30px rgba(20,32,51,.045);transition:.18s ease
}
.cn-prop-card:hover{
  transform:translateY(-3px);border-color:#c9d6e7;box-shadow:0 18px 42px rgba(20,32,51,.09)
}
.cn-prop-card.is-featured{border-color:#cfc3ef;box-shadow:0 12px 34px rgba(86,63,168,.08)}
.cn-prop-card-main{display:block;color:inherit;text-decoration:none}
.cn-prop-card-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#eef3f8}
.cn-prop-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cn-prop-card:hover .cn-prop-card-media img{transform:scale(1.025)}
.cn-prop-card-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:radial-gradient(circle at 20% 18%,rgba(255,255,255,.9),transparent 16rem),linear-gradient(135deg,#e7effa,#f4f7fb)
}
.cn-prop-card-placeholder span{
  width:80px;height:80px;border-radius:24px;background:#fff;color:#1769e8;
  display:grid;place-items:center;font-size:28px;font-weight:900;box-shadow:0 12px 35px rgba(23,105,232,.11)
}
.cn-prop-card-badges{position:absolute;left:12px;top:12px;display:flex;gap:5px;flex-wrap:wrap}
.cn-prop-card-badges span,.cn-prop-package{
  display:inline-flex;align-items:center;padding:6px 8px;border-radius:999px;font-size:8px;font-weight:900;backdrop-filter:blur(8px)
}
.cn-prop-card-badges .offer{background:rgba(255,255,255,.95);color:#174b89}
.cn-prop-card-badges .featured{background:#6538b8;color:#fff}
.cn-prop-package{position:absolute;right:12px;bottom:12px;background:rgba(20,32,51,.84);color:#fff}
.cn-prop-card-content{padding:16px 17px}
.cn-prop-card-topline{display:flex;justify-content:space-between;gap:10px;align-items:center}
.cn-prop-card-topline>span{
  color:#1769e8;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:900
}
.cn-prop-card-topline small{color:#98a2b3;font-size:8px}
.cn-prop-card h3{font-size:20px;line-height:1.2;letter-spacing:-.02em;color:#142033;margin:8px 0 5px}
.cn-prop-location{font-size:10px;color:#667085}
.cn-prop-card-facts{
  display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 0;padding-top:10px;border-top:1px solid #edf0f4
}
.cn-prop-card-facts span{
  padding:6px 8px;border-radius:8px;background:#f6f8fb;color:#667085;font-size:8px
}
.cn-prop-card-facts b{color:#344054}
.cn-prop-card-content p{
  min-height:40px;color:#667085;font-size:10px;line-height:1.5;margin:11px 0
}
.cn-prop-price{
  color:#142033;font-size:19px;font-weight:900;letter-spacing:-.02em
}
.cn-prop-card-actions{
  display:grid;grid-template-columns:1fr auto auto;gap:6px;padding:10px 12px;border-top:1px solid #edf0f4;background:#fbfcfd
}
.cn-prop-card-actions a{
  min-height:35px;padding:0 10px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-prop-card-actions .view{background:#142033;color:#fff}
.cn-prop-card-actions .call{background:#edf4ff;color:#1769e8}
.cn-prop-card-actions .whatsapp{background:#eaf8f0;color:#087443}
.cn-prop-pagination{margin-top:28px}
.cn-prop-empty{
  text-align:center;padding:60px 20px;border:1px dashed #cfd8e5;border-radius:18px;background:#fff
}
.cn-prop-empty>span{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin:0 auto 12px;
  background:#edf4ff;color:#1769e8;font-size:22px
}
.cn-prop-empty h3{font-size:21px;margin:0 0 5px}
.cn-prop-empty p{color:#667085;margin:0 0 15px}
.cn-prop-empty a{
  display:inline-flex;padding:10px 13px;border-radius:9px;background:#1769e8;color:#fff;text-decoration:none;font-weight:900
}

/* Bottom CTA */
.cn-prop-bottom-cta{padding:0 0 56px;background:#f5f7fa}
.cn-prop-bottom-cta .cn-shell{
  display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 34px;border-radius:23px;
  background:radial-gradient(circle at 92% 20%,rgba(87,117,255,.27),transparent 18rem),linear-gradient(125deg,#14233f,#1b4275);
  color:#fff
}
.cn-prop-bottom-cta span{font-size:9px;letter-spacing:.12em;color:#91c1ff;font-weight:900}
.cn-prop-bottom-cta h2{color:#fff;font-size:30px;margin:6px 0}
.cn-prop-bottom-cta p{color:#cdd9e9;margin:0;font-size:11px}
.cn-prop-bottom-cta a{
  flex:0 0 auto;padding:13px 16px;border-radius:11px;background:#fff;color:#142033;text-decoration:none;font-size:10px;font-weight:900
}

/* Property single */
.cn-prop-profile-hero{padding:18px 0 0;background:#f3f6fa}
.cn-prop-breadcrumb{
  display:flex;align-items:center;gap:7px;padding:4px 0 13px;color:#98a2b3;font-size:9px
}
.cn-prop-breadcrumb a{color:#667085;text-decoration:none}

.cn-prop-gallery-hero{
  display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.72fr);
  gap:8px;height:470px
}
.cn-prop-gallery-primary{
  position:relative;border-radius:22px;overflow:hidden;background:#e8eef6
}
.cn-prop-gallery-primary>img{width:100%;height:100%;object-fit:cover}
.cn-prop-hero-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.9),transparent 24rem),linear-gradient(135deg,#dfeaff,#eef3fb)
}
.cn-prop-hero-placeholder span{
  width:120px;height:120px;border-radius:36px;background:#fff;color:#1769e8;
  display:grid;place-items:center;font-size:40px;font-weight:900;box-shadow:0 18px 50px rgba(23,105,232,.12)
}
.cn-prop-gallery-badges{
  position:absolute;left:16px;bottom:16px;display:flex;gap:6px;flex-wrap:wrap
}
.cn-prop-gallery-badges span{
  padding:7px 10px;border-radius:999px;font-size:9px;font-weight:900;backdrop-filter:blur(8px)
}
.cn-prop-gallery-badges .offer{background:rgba(255,255,255,.95);color:#174b89}
.cn-prop-gallery-badges .featured{background:#6c3ac0;color:#fff}
.cn-prop-gallery-badges .package{background:rgba(20,32,51,.86);color:#fff}
.cn-prop-gallery-thumbs{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}
.cn-prop-gallery-thumbs a{
  position:relative;border-radius:15px;overflow:hidden;background:#edf2f7
}
.cn-prop-gallery-thumbs img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.cn-prop-gallery-thumbs a:hover img{transform:scale(1.025)}
.cn-prop-gallery-thumbs span{
  position:absolute;inset:0;display:grid;place-items:center;background:rgba(20,32,51,.55);
  color:#fff;font-weight:900;font-size:15px
}
.cn-prop-gallery-hero.single{grid-template-columns:1fr}
.cn-prop-gallery-hero.single .cn-prop-gallery-thumbs{display:none}

.cn-prop-profile-heading{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;
  margin:16px 0 0;padding:22px 24px;border:1px solid #e0e6ee;border-radius:19px;background:#fff;
  box-shadow:0 12px 34px rgba(20,32,51,.06)
}
.cn-prop-heading-kicker{display:flex;gap:6px;flex-wrap:wrap}
.cn-prop-heading-kicker span{
  padding:5px 8px;border-radius:999px;background:#f1f5fb;color:#526174;
  font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em
}
.cn-prop-heading-copy h1{font-size:34px;letter-spacing:-.035em;margin:8px 0 5px;color:#142033}
.cn-prop-heading-copy>p{max-width:720px;color:#667085;font-size:11px;line-height:1.5;margin:0}
.cn-prop-heading-facts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.cn-prop-heading-facts span{
  padding:7px 9px;border-radius:9px;background:#f7f9fc;color:#667085;font-size:9px
}
.cn-prop-heading-facts b{color:#344054}
.cn-prop-heading-price{text-align:right}
.cn-prop-heading-price small{
  display:block;color:#98a2b3;font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.06em
}
.cn-prop-heading-price strong{
  display:block;color:#142033;font-size:29px;letter-spacing:-.03em;margin:4px 0
}
.cn-prop-heading-price span{font-size:8px;color:#98a2b3}

.cn-prop-profile-body{padding:22px 0 70px;background:#f3f6fa}
.cn-prop-profile-layout{
  display:grid;grid-template-columns:minmax(0,1.62fr) minmax(300px,.72fr);gap:18px;align-items:start
}
.cn-prop-profile-main{display:flex;flex-direction:column;gap:15px}
.cn-prop-panel{
  padding:22px;border:1px solid #e0e6ed;border-radius:18px;background:#fff;
  box-shadow:0 8px 28px rgba(20,32,51,.035)
}
.cn-prop-panel-title{margin-bottom:13px}
.cn-prop-panel-title.row{display:flex;justify-content:space-between;align-items:end;gap:15px}
.cn-prop-panel-title>span,.cn-prop-panel-title>div>span{
  display:block;color:#1769e8;font-size:8px;letter-spacing:.12em;font-weight:900
}
.cn-prop-panel-title h2{font-size:22px;letter-spacing:-.02em;margin:4px 0 0}
.cn-prop-panel-title small{color:#98a2b3;font-size:9px}

.cn-prop-fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.cn-prop-fact-grid>div{
  display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:10px;
  padding:13px;border:1px solid #e5eaf0;border-radius:13px;background:#fafbfd
}
.cn-prop-fact-grid>div>span{
  grid-row:1/3;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#edf4ff;color:#1769e8;font-weight:900
}
.cn-prop-fact-grid small{color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900;letter-spacing:.05em}
.cn-prop-fact-grid strong{color:#344054;font-size:11px;margin-top:2px}

/* Property gallery */
.cn-prop-gallery-grid{
  display:grid;grid-template-columns:1.4fr .7fr .7fr;grid-auto-rows:150px;gap:8px
}
.cn-prop-gallery-grid a{position:relative;border-radius:12px;overflow:hidden;background:#eef2f6}
.cn-prop-gallery-grid a.primary{grid-row:span 2}
.cn-prop-gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.cn-prop-gallery-grid a:hover img{transform:scale(1.025)}
.cn-prop-gallery-grid a span{
  position:absolute;left:10px;bottom:10px;padding:6px 8px;border-radius:8px;background:rgba(20,32,51,.82);
  color:#fff;font-size:8px;font-weight:900
}

/* Location */
.cn-prop-location-card{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px}
.cn-prop-location-card>div{
  padding:14px;border-radius:13px;background:#f8fafc;border:1px solid #e5eaf0
}
.cn-prop-location-card p{margin:0;padding:9px 0;border-bottom:1px solid #e9edf2}
.cn-prop-location-card p:last-child{border-bottom:0}
.cn-prop-location-card small{display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900}
.cn-prop-location-card strong{display:block;color:#344054;font-size:10px;margin-top:3px}
.cn-prop-map-art{
  min-height:180px;border-radius:13px;text-decoration:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),
    linear-gradient(135deg,#dfeaff,#f2f5f9);
  background-size:28px 28px,28px 28px,auto;
  display:flex;flex-direction:column;align-items:center;justify-content:center
}
.cn-prop-map-art>span{
  width:46px;height:46px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);
  background:#1769e8;color:#fff;display:grid;place-items:center;font-size:19px
}
.cn-prop-map-art strong{margin-top:12px;color:#142033}
.cn-prop-map-art small{color:#667085;font-size:8px}

/* Related */
.cn-prop-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cn-prop-related-card{text-decoration:none;color:inherit}
.cn-prop-related-card>div{
  position:relative;aspect-ratio:1/1;border-radius:13px;overflow:hidden;background:#edf4ff;display:grid;place-items:center;margin-bottom:7px
}
.cn-prop-related-card img{width:100%;height:100%;object-fit:cover}
.cn-prop-related-card>div>span{font-size:22px;color:#1769e8;font-weight:900}
.cn-prop-related-card>div>b{
  position:absolute;left:7px;bottom:7px;padding:4px 6px;border-radius:6px;background:rgba(20,32,51,.82);color:#fff;font-size:7px
}
.cn-prop-related-card>strong{display:block;font-size:11px;color:#142033}
.cn-prop-related-card>small{display:block;color:#98a2b3;font-size:8px;margin-top:2px}
.cn-prop-related-card>em{display:block;font-style:normal;color:#1769e8;font-size:10px;font-weight:900;margin-top:4px}

/* Sidebar */
.cn-prop-profile-sidebar{position:sticky;top:18px;display:flex;flex-direction:column;gap:12px}
.cn-prop-contact-card,.cn-prop-safety-card{
  background:#fff;border:1px solid #e0e6ed;border-radius:18px;padding:19px;box-shadow:0 8px 28px rgba(20,32,51,.035)
}
.cn-prop-contact-price{padding-bottom:13px;border-bottom:1px solid #edf0f4}
.cn-prop-contact-price small{
  display:block;color:#98a2b3;font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.06em
}
.cn-prop-contact-price strong{display:block;color:#142033;font-size:25px;letter-spacing:-.025em;margin-top:4px}
.cn-prop-contact-person{padding:13px 0;border-bottom:1px solid #edf0f4}
.cn-prop-contact-person span{display:block;color:#1769e8;font-size:7px;letter-spacing:.08em;font-weight:900}
.cn-prop-contact-person strong{display:block;font-size:14px;color:#344054;margin-top:4px}
.cn-prop-contact-person small{display:block;color:#98a2b3;font-size:8px;margin-top:3px}
.cn-prop-contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:13px}
.cn-prop-contact-actions a{
  min-height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-prop-contact-actions .call{grid-column:1/-1;background:#1769e8;color:#fff}
.cn-prop-contact-actions .whatsapp{background:#087443;color:#fff}
.cn-prop-contact-actions .maps{background:#142033;color:#fff}
.cn-prop-contact-note{
  margin-top:13px;padding:11px;border-radius:11px;background:#f6f8fb;color:#667085
}
.cn-prop-contact-note strong{font-size:9px;color:#344054}
.cn-prop-contact-note p{font-size:8px;line-height:1.5;margin:4px 0 0}
.cn-prop-validity{
  margin-top:10px;padding-top:10px;border-top:1px solid #edf0f4
}
.cn-prop-validity small{display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900}
.cn-prop-validity strong{display:block;color:#344054;font-size:10px;margin-top:3px}
.cn-prop-safety-card{display:grid;grid-template-columns:34px 1fr;gap:10px}
.cn-prop-safety-card>span{
  width:34px;height:34px;border-radius:10px;background:#eaf8f1;color:#087443;display:grid;place-items:center;font-weight:900
}
.cn-prop-safety-card strong{display:block;font-size:10px;color:#344054}
.cn-prop-safety-card p{font-size:8px;line-height:1.5;color:#98a2b3;margin:4px 0 0}

.cn-prop-mobile-actions{display:none}

/* Responsive */
@media(max-width:1080px){
  .cn-prop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cn-prop-search{grid-template-columns:1fr 1fr 1fr}
  .cn-prop-search-keyword{grid-column:1/-1}
  .cn-prop-search>button{min-height:44px}
  .cn-prop-more-filters>div{grid-template-columns:1fr 1fr 1fr}
  .cn-prop-gallery-hero{height:410px}
  .cn-prop-profile-layout{grid-template-columns:minmax(0,1.4fr) 300px}
}
@media(max-width:850px){
  .cn-prop-hero-grid{grid-template-columns:1fr}
  .cn-prop-hero-stat{display:none}
  .cn-prop-gallery-hero{grid-template-columns:1fr;height:auto}
  .cn-prop-gallery-primary{height:360px}
  .cn-prop-gallery-thumbs{grid-template-columns:repeat(4,1fr);grid-template-rows:110px}
  .cn-prop-profile-layout{grid-template-columns:1fr}
  .cn-prop-profile-sidebar{position:static}
  .cn-prop-location-card{grid-template-columns:1fr}
}
@media(max-width:700px){
  .cn-prop-archive-hero{padding-top:38px}
  .cn-prop-archive-hero h1{font-size:44px}
  .cn-prop-search{grid-template-columns:1fr 1fr}
  .cn-prop-search-keyword{grid-column:1/-1}
  .cn-prop-more-filters>div{grid-template-columns:1fr 1fr}
  .cn-prop-grid{grid-template-columns:1fr}
  .cn-prop-directory-head{align-items:flex-start;flex-direction:column}
  .cn-prop-bottom-cta .cn-shell{align-items:flex-start;flex-direction:column}
  .cn-prop-gallery-primary{height:280px}
  .cn-prop-profile-heading{grid-template-columns:1fr}
  .cn-prop-heading-price{text-align:left;padding-top:12px;border-top:1px solid #edf0f4}
  .cn-prop-fact-grid{grid-template-columns:1fr 1fr}
  .cn-prop-gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:130px}
  .cn-prop-gallery-grid a.primary{grid-column:1/-1;grid-row:span 2}
  .cn-prop-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .cn-prop-search{grid-template-columns:1fr}
  .cn-prop-search-keyword{grid-column:1}
  .cn-prop-search>label{border-right:0;border-bottom:1px solid #edf0f4}
  .cn-prop-more-filters>div{grid-template-columns:1fr}
  .cn-prop-card-actions{grid-template-columns:1fr 1fr}
  .cn-prop-card-actions .view{grid-column:1/-1}
  .cn-prop-gallery-thumbs{grid-template-columns:1fr 1fr;grid-template-rows:100px 100px}
  .cn-prop-heading-copy h1{font-size:26px}
  .cn-prop-fact-grid{grid-template-columns:1fr}
  .cn-prop-related-grid{grid-template-columns:1fr}
  .cn-prop-panel{padding:17px}
  .cn-prop-mobile-actions{display:flex}
}


/* =========================================================
   v0.23.0 — PREMIUM PROMOTIONS & DEALS EXPERIENCE
   ========================================================= */

/* Archive hero */
.cn-deal-archive-hero{
  padding:58px 0 25px;
  background:
    radial-gradient(circle at 87% 13%,rgba(128,92,246,.24),transparent 25rem),
    radial-gradient(circle at 5% 100%,rgba(255,124,70,.12),transparent 20rem),
    linear-gradient(135deg,#17182b,#2a2458 57%,#4a2482);
  color:#fff
}
.cn-deal-hero-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:40px
}
.cn-deal-kicker{
  display:inline-flex;padding:6px 10px;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  color:#d2baff;font-size:9px;font-weight:900;letter-spacing:.13em
}
.cn-deal-archive-hero h1{
  color:#fff;font-size:clamp(42px,5vw,68px);line-height:.98;letter-spacing:-.05em;margin:15px 0 12px
}
.cn-deal-archive-hero h1 em{font-style:normal;color:#d1b4ff}
.cn-deal-archive-hero p{
  max-width:760px;color:#ddd8ed;font-size:15px;line-height:1.65;margin:0
}
.cn-deal-hero-stat{
  padding:20px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);
  border-radius:20px;backdrop-filter:blur(10px)
}
.cn-deal-hero-stat span,.cn-deal-hero-stat small{
  display:block;color:#c9c0dc;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800
}
.cn-deal-hero-stat strong{display:block;color:#fff;font-size:44px;line-height:1;margin:9px 0 4px}

/* Search */
.cn-deal-search{
  display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(160px,.65fr) minmax(170px,.68fr) minmax(145px,.55fr) auto;
  gap:8px;margin-top:32px;padding:9px;border-radius:17px;background:#fff;
  box-shadow:0 18px 48px rgba(0,0,0,.18)
}
.cn-deal-search>label{
  min-width:0;padding:7px 11px;border-right:1px solid #edf0f4
}
.cn-deal-search>label>span{
  display:block;color:#98a2b3;font-size:8px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-bottom:2px
}
.cn-deal-search-keyword{display:grid!important;grid-template-columns:24px 1fr;align-items:center}
.cn-deal-search-keyword>span{font-size:19px!important;margin:0!important}
.cn-deal-search input,.cn-deal-search select{
  width:100%;border:0!important;box-shadow:none!important;background:transparent!important;
  min-height:34px;padding:0!important;color:#25324a
}
.cn-deal-search button{
  border:0;border-radius:11px;padding:0 17px;
  background:linear-gradient(90deg,#7a3ee8,#9f3fd1);color:#fff;font-weight:900;cursor:pointer
}
.cn-deal-category-chips{
  display:flex;align-items:center;gap:6px;overflow:auto;margin-top:17px
}
.cn-deal-category-chips>span{
  color:#c1b9d3;font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-right:4px
}
.cn-deal-category-chips a{
  white-space:nowrap;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.06);color:#e6dff0;font-size:9px;font-weight:800;text-decoration:none
}
.cn-deal-category-chips a.active,.cn-deal-category-chips a:hover{background:#fff;color:#6631ab}

/* Directory */
.cn-deal-directory{padding:35px 0 64px;background:#f7f6f9}
.cn-deal-directory-head{
  display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px
}
.cn-deal-directory-head h2{font-size:30px;letter-spacing:-.03em;margin:5px 0}
.cn-deal-directory-head p{margin:0;color:#667085;font-size:11px}
.cn-deal-directory-actions{display:flex;gap:7px;flex-wrap:wrap}
.cn-deal-directory-actions a{
  min-height:38px;padding:0 12px;border-radius:10px;display:flex;align-items:center;
  text-decoration:none;font-size:10px;font-weight:900
}
.cn-deal-directory-actions .clear{background:#fff;border:1px solid #dfe5ed;color:#667085}
.cn-deal-directory-actions .list{background:#2e2149;color:#fff}

.cn-deal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cn-deal-card{
  position:relative;overflow:hidden;background:#fff;border:1px solid #e4e1e8;border-radius:20px;
  box-shadow:0 9px 30px rgba(32,24,47,.045);transition:.18s ease
}
.cn-deal-card:hover{
  transform:translateY(-3px);border-color:#d1c6df;box-shadow:0 18px 42px rgba(39,25,61,.10)
}
.cn-deal-card.is-featured{border-color:#cdbbe8;box-shadow:0 12px 34px rgba(100,62,157,.10)}
.cn-deal-card.is-ended{opacity:.82}
.cn-deal-card-main{display:block;color:inherit;text-decoration:none}
.cn-deal-card-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f0ecf5}
.cn-deal-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cn-deal-card:hover .cn-deal-card-media img{transform:scale(1.025)}
.cn-deal-card-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:radial-gradient(circle at 20% 18%,rgba(255,255,255,.86),transparent 15rem),linear-gradient(135deg,#efe6ff,#f8f4fc)
}
.cn-deal-card-placeholder span{
  width:84px;height:84px;border-radius:26px;background:#fff;color:#7a3ee8;
  display:grid;place-items:center;font-size:23px;font-weight:900;box-shadow:0 12px 35px rgba(122,62,232,.12)
}
.cn-deal-card-badges{position:absolute;left:12px;top:12px;display:flex;gap:5px;flex-wrap:wrap}
.cn-deal-card-badges span,.cn-deal-package{
  display:inline-flex;align-items:center;padding:6px 8px;border-radius:999px;font-size:8px;font-weight:900;backdrop-filter:blur(8px)
}
.cn-deal-card-badges .active{background:#087443;color:#fff}
.cn-deal-card-badges .ended{background:rgba(20,32,51,.85);color:#fff}
.cn-deal-card-badges .featured{background:#7137bd;color:#fff}
.cn-deal-discount{
  position:absolute;left:12px;bottom:12px;max-width:70%;
  padding:7px 10px;border-radius:9px;background:#d92d20;color:#fff;
  font-size:11px;font-weight:900;box-shadow:0 8px 24px rgba(217,45,32,.22)
}
.cn-deal-package{
  position:absolute;right:12px;bottom:12px;background:rgba(20,32,51,.84);color:#fff
}
.cn-deal-card-content{padding:16px 17px}
.cn-deal-business-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cn-deal-business-row>span{
  color:#7137bd;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:900
}
.cn-deal-business-row small{color:#98a2b3;font-size:8px}
.cn-deal-card h3{font-size:20px;line-height:1.2;letter-spacing:-.02em;color:#142033;margin:8px 0 7px}
.cn-deal-card-content>p{min-height:40px;color:#667085;font-size:10px;line-height:1.5;margin:0 0 12px}

/* Countdown: deliberately compact and readable */
.cn-deal-countdown-box{
  min-height:60px;padding:10px 11px;border-radius:11px;
  background:linear-gradient(135deg,#f7f2ff,#fbf8ff);
  border:1px solid #eadffa
}
.cn-deal-countdown-box>small{
  display:block;color:#8b62c2;font-size:7px;letter-spacing:.09em;font-weight:900;margin-bottom:4px
}
.cn-deal-countdown-box .cn-promo-countdown{
  min-height:auto!important;
  margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;
  color:#442770!important;font-size:10px!important;font-weight:900!important;
  line-height:1.35!important
}
.cn-deal-countdown-box.ended{background:#f5f6f7;border-color:#e5e7eb}
.cn-deal-countdown-box.ended>small{color:#98a2b3}
.cn-deal-countdown-box.ended>strong{font-size:10px;color:#667085}
.cn-deal-card-actions{
  display:grid;grid-template-columns:1fr auto auto;gap:6px;padding:10px 12px;border-top:1px solid #efecf1;background:#fcfbfd
}
.cn-deal-card-actions a{
  min-height:35px;padding:0 10px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-deal-card-actions .view{background:#2e2149;color:#fff}
.cn-deal-card-actions .call{background:#f1edff;color:#7137bd}
.cn-deal-card-actions .whatsapp{background:#eaf8f0;color:#087443}
.cn-deal-pagination{margin-top:28px}
.cn-deal-empty{
  text-align:center;padding:60px 20px;border:1px dashed #d4cedc;border-radius:18px;background:#fff
}
.cn-deal-empty>span{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin:0 auto 12px;
  background:#f2ebff;color:#7137bd;font-size:22px
}
.cn-deal-empty h3{font-size:21px;margin:0 0 5px}
.cn-deal-empty p{color:#667085;margin:0 0 15px}
.cn-deal-empty a{
  display:inline-flex;padding:10px 13px;border-radius:9px;background:#7137bd;color:#fff;text-decoration:none;font-weight:900
}

/* Bottom CTA */
.cn-deal-bottom-cta{padding:0 0 56px;background:#f7f6f9}
.cn-deal-bottom-cta .cn-shell{
  display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 34px;border-radius:23px;
  background:radial-gradient(circle at 90% 20%,rgba(157,89,255,.31),transparent 18rem),linear-gradient(125deg,#201a35,#44306b);
  color:#fff
}
.cn-deal-bottom-cta span{font-size:9px;letter-spacing:.12em;color:#d2baff;font-weight:900}
.cn-deal-bottom-cta h2{color:#fff;font-size:30px;margin:6px 0}
.cn-deal-bottom-cta p{color:#d9d2e2;margin:0;font-size:11px}
.cn-deal-bottom-cta a{
  flex:0 0 auto;padding:13px 16px;border-radius:11px;background:#fff;color:#39265c;text-decoration:none;font-size:10px;font-weight:900
}

/* Single profile */
.cn-deal-profile-hero{padding:18px 0 26px;background:#f6f4f8}
.cn-deal-breadcrumb{
  display:flex;align-items:center;gap:7px;padding:4px 0 13px;color:#98a2b3;font-size:9px
}
.cn-deal-breadcrumb a{color:#667085;text-decoration:none}
.cn-deal-profile-grid{
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:0;overflow:hidden;border:1px solid #e1dce7;border-radius:23px;background:#fff;
  box-shadow:0 15px 45px rgba(38,28,52,.08)
}
.cn-deal-profile-visual{
  position:relative;aspect-ratio:1/1;min-height:520px;background:#eee8f3;overflow:hidden
}
.cn-deal-profile-visual>img{width:100%;height:100%;object-fit:cover}
.cn-deal-profile-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:radial-gradient(circle at 22% 16%,rgba(255,255,255,.88),transparent 20rem),linear-gradient(135deg,#ece3fa,#f7f3fb)
}
.cn-deal-profile-placeholder span{
  width:120px;height:120px;border-radius:36px;background:#fff;color:#7137bd;
  display:grid;place-items:center;font-size:34px;font-weight:900;box-shadow:0 18px 50px rgba(113,55,189,.13)
}
.cn-deal-profile-badges{
  position:absolute;left:16px;top:16px;display:flex;gap:6px;flex-wrap:wrap
}
.cn-deal-profile-badges span{
  padding:7px 10px;border-radius:999px;font-size:9px;font-weight:900;backdrop-filter:blur(8px)
}
.cn-deal-profile-badges .active{background:#087443;color:#fff}
.cn-deal-profile-badges .ended{background:rgba(20,32,51,.86);color:#fff}
.cn-deal-profile-badges .featured{background:#7137bd;color:#fff}
.cn-deal-profile-badges .package{background:rgba(255,255,255,.94);color:#5c377f}
.cn-deal-profile-summary{
  padding:38px 36px;display:flex;flex-direction:column;justify-content:center
}
.cn-deal-profile-kicker{display:flex;gap:6px;flex-wrap:wrap}
.cn-deal-profile-kicker span{
  padding:5px 8px;border-radius:999px;background:#f6f2fa;color:#6b567d;
  font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em
}
.cn-deal-profile-business{
  margin-top:18px;color:#7137bd;font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:900
}
.cn-deal-profile-summary h1{
  color:#142033;font-size:clamp(34px,4vw,52px);line-height:1.02;letter-spacing:-.045em;margin:8px 0 12px
}
.cn-deal-profile-value{
  display:inline-flex;align-self:flex-start;max-width:100%;
  padding:9px 12px;border-radius:11px;background:#d92d20;color:#fff;
  font-size:18px;font-weight:900;box-shadow:0 9px 25px rgba(217,45,32,.16)
}
.cn-deal-profile-intro{color:#667085;font-size:12px;line-height:1.6;margin:14px 0 0}
.cn-deal-profile-countdown{
  margin-top:20px;padding:15px 16px;border:1px solid #e4d8f4;border-radius:14px;
  background:linear-gradient(135deg,#f8f3ff,#fcfaff)
}
.cn-deal-profile-countdown>span{
  display:block;color:#8c62c2;font-size:8px;letter-spacing:.10em;font-weight:900;margin-bottom:6px
}
.cn-deal-profile-countdown .cn-promo-countdown{
  min-height:auto!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;color:#442770!important;
  font-size:14px!important;font-weight:900!important;line-height:1.4!important
}
.cn-deal-profile-countdown.ended{background:#f6f7f8;border-color:#e4e7eb}
.cn-deal-profile-countdown.ended>span{color:#98a2b3}
.cn-deal-profile-countdown.ended>strong{display:block;color:#667085;font-size:13px}
.cn-deal-profile-countdown.ended>small{display:block;color:#98a2b3;font-size:8px;margin-top:3px}
.cn-deal-profile-actions{
  display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px
}
.cn-deal-profile-actions a{
  min-height:43px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-deal-profile-actions .call{background:#f1edff;color:#7137bd}
.cn-deal-profile-actions .whatsapp{background:#087443;color:#fff}
.cn-deal-profile-actions .maps{grid-column:1/-1;background:#2e2149;color:#fff}

/* Body */
.cn-deal-profile-body{padding:0 0 70px;background:#f6f4f8}
.cn-deal-profile-layout{
  display:grid;grid-template-columns:minmax(0,1.62fr) minmax(300px,.72fr);gap:18px;align-items:start
}
.cn-deal-profile-main{display:flex;flex-direction:column;gap:15px}
.cn-deal-panel{
  padding:22px;border:1px solid #e2dde7;border-radius:18px;background:#fff;
  box-shadow:0 8px 28px rgba(34,25,48,.035)
}
.cn-deal-panel-title{margin-bottom:13px}
.cn-deal-panel-title.row{display:flex;justify-content:space-between;align-items:end;gap:15px}
.cn-deal-panel-title>span,.cn-deal-panel-title>div>span{
  display:block;color:#7137bd;font-size:8px;letter-spacing:.12em;font-weight:900
}
.cn-deal-panel-title h2{font-size:22px;letter-spacing:-.02em;margin:4px 0 0}
.cn-deal-panel-title small{color:#98a2b3;font-size:9px}

.cn-deal-date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.cn-deal-date-grid>div{
  padding:14px;border:1px solid #e6e1eb;border-radius:13px;background:#faf8fc
}
.cn-deal-date-grid span{
  display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;letter-spacing:.06em;font-weight:900
}
.cn-deal-date-grid strong{display:block;color:#344054;font-size:11px;margin-top:5px}
.cn-deal-date-grid strong.active{color:#087443}
.cn-deal-date-grid strong.ended{color:#b42318}

.cn-deal-gallery{
  display:grid;grid-template-columns:1.4fr .7fr .7fr;grid-auto-rows:150px;gap:8px
}
.cn-deal-gallery a{position:relative;border-radius:12px;overflow:hidden;background:#f0ecf4}
.cn-deal-gallery a.primary{grid-row:span 2}
.cn-deal-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.cn-deal-gallery a:hover img{transform:scale(1.025)}
.cn-deal-gallery a span{
  position:absolute;left:10px;bottom:10px;padding:6px 8px;border-radius:8px;
  background:rgba(32,24,48,.82);color:#fff;font-size:8px;font-weight:900
}
.cn-deal-terms{
  padding:15px;border-radius:13px;background:#faf8fc;border-left:4px solid #7137bd;
  color:#526174;font-size:11px;line-height:1.65
}
.cn-deal-terms p:last-child{margin-bottom:0}

/* Related */
.cn-deal-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cn-deal-related-card{text-decoration:none;color:inherit}
.cn-deal-related-card>div{
  position:relative;aspect-ratio:1/1;border-radius:13px;overflow:hidden;background:#f1ecf6;
  display:grid;place-items:center;margin-bottom:7px
}
.cn-deal-related-card img{width:100%;height:100%;object-fit:cover}
.cn-deal-related-card>div>span{font-size:22px;color:#7137bd;font-weight:900}
.cn-deal-related-card>div>b{
  position:absolute;left:7px;bottom:7px;padding:4px 6px;border-radius:6px;color:#fff;font-size:7px
}
.cn-deal-related-card>div>b.active{background:#087443}
.cn-deal-related-card>div>b.ended{background:#667085}
.cn-deal-related-card>strong{display:block;font-size:11px;color:#142033}
.cn-deal-related-card>small{display:block;color:#98a2b3;font-size:8px;margin-top:2px}
.cn-deal-related-card>em{display:block;color:#d92d20;font-size:10px;font-style:normal;font-weight:900;margin-top:4px}

/* Sidebar */
.cn-deal-profile-sidebar{position:sticky;top:18px;display:flex;flex-direction:column;gap:12px}
.cn-deal-info-card,.cn-deal-reminder-card{
  background:#fff;border:1px solid #e2dde7;border-radius:18px;padding:19px;
  box-shadow:0 8px 28px rgba(34,25,48,.035)
}
.cn-deal-info-head>span{
  display:block;color:#7137bd;font-size:8px;letter-spacing:.10em;font-weight:900
}
.cn-deal-info-head h2{font-size:19px;margin:5px 0 14px}
.cn-deal-info-highlight{
  padding:14px;border-radius:13px;background:linear-gradient(135deg,#fff0ef,#fff8f7);
  border:1px solid #f3d2cf;margin-bottom:10px
}
.cn-deal-info-highlight small{display:block;color:#b42318;font-size:7px;font-weight:900;letter-spacing:.08em}
.cn-deal-info-highlight strong{display:block;color:#d92d20;font-size:20px;margin-top:4px}
.cn-deal-info-row{padding:10px 0;border-top:1px solid #efecf1}
.cn-deal-info-row small{display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900}
.cn-deal-info-row strong{display:block;color:#344054;font-size:10px;line-height:1.45;margin-top:3px}
.cn-deal-sidebar-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:13px}
.cn-deal-sidebar-actions a{
  min-height:39px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:9px;font-weight:900
}
.cn-deal-sidebar-actions .call{background:#f1edff;color:#7137bd}
.cn-deal-sidebar-actions .whatsapp{background:#087443;color:#fff}
.cn-deal-sidebar-actions .maps{grid-column:1/-1;background:#2e2149;color:#fff}
.cn-deal-ended-note{
  margin-top:12px;padding:10px;border-radius:10px;background:#fff3f2;color:#9f2d27;
  border:1px solid #f1d1ce;font-size:9px;line-height:1.5
}
.cn-deal-reminder-card{display:grid;grid-template-columns:34px 1fr;gap:10px}
.cn-deal-reminder-card>span{
  width:34px;height:34px;border-radius:10px;background:#f1edff;color:#7137bd;display:grid;place-items:center;font-weight:900
}
.cn-deal-reminder-card strong{display:block;font-size:10px;color:#344054}
.cn-deal-reminder-card p{font-size:8px;line-height:1.5;color:#98a2b3;margin:4px 0 0}
.cn-deal-mobile-actions{display:none}

@media(max-width:1080px){
  .cn-deal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cn-deal-search{grid-template-columns:1fr 1fr 1fr}
  .cn-deal-search-keyword{grid-column:1/-1}
  .cn-deal-search button{min-height:44px}
  .cn-deal-profile-grid{grid-template-columns:1fr 1fr}
  .cn-deal-profile-visual{min-height:460px}
  .cn-deal-profile-layout{grid-template-columns:minmax(0,1.4fr) 300px}
}
@media(max-width:850px){
  .cn-deal-hero-grid{grid-template-columns:1fr}
  .cn-deal-hero-stat{display:none}
  .cn-deal-profile-grid{grid-template-columns:1fr}
  .cn-deal-profile-visual{min-height:0;aspect-ratio:1/1}
  .cn-deal-profile-layout{grid-template-columns:1fr}
  .cn-deal-profile-sidebar{position:static}
}
@media(max-width:700px){
  .cn-deal-archive-hero{padding-top:38px}
  .cn-deal-archive-hero h1{font-size:44px}
  .cn-deal-search{grid-template-columns:1fr 1fr}
  .cn-deal-search-keyword{grid-column:1/-1}
  .cn-deal-grid{grid-template-columns:1fr}
  .cn-deal-directory-head{align-items:flex-start;flex-direction:column}
  .cn-deal-bottom-cta .cn-shell{align-items:flex-start;flex-direction:column}
  .cn-deal-profile-summary{padding:27px 22px}
  .cn-deal-date-grid{grid-template-columns:1fr}
  .cn-deal-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:130px}
  .cn-deal-gallery a.primary{grid-column:1/-1;grid-row:span 2}
  .cn-deal-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .cn-deal-search{grid-template-columns:1fr}
  .cn-deal-search-keyword{grid-column:1}
  .cn-deal-search>label{border-right:0;border-bottom:1px solid #edf0f4}
  .cn-deal-card-actions{grid-template-columns:1fr 1fr}
  .cn-deal-card-actions .view{grid-column:1/-1}
  .cn-deal-profile-summary h1{font-size:31px}
  .cn-deal-profile-actions{grid-template-columns:1fr 1fr}
  .cn-deal-related-grid{grid-template-columns:1fr}
  .cn-deal-panel{padding:17px}
  .cn-deal-mobile-actions{display:flex}
}


/* =========================================================
   v0.23.1 — TODAY'S DEALS + CREATIVE FIT FIX
   ========================================================= */

/* Promotions use artwork, so preserve the entire creative instead of cropping text */
.cn-deal-card-media{
  background:#f2eef7;
  display:flex;
  align-items:center;
  justify-content:center;
}
.cn-deal-card-media img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff;
}
.cn-deal-profile-visual{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f2eef7;
}
.cn-deal-profile-visual>img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff;
}

/* Today quick filters */
.cn-deal-fast-filters{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:14px
}
.cn-deal-fast-filters a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);
  color:#e8e1f2;
  text-decoration:none;
  font-size:9px;
  font-weight:900
}
.cn-deal-fast-filters a:hover,
.cn-deal-fast-filters a.active{
  background:#fff;
  color:#5f2c9d
}

/* Today's Deals section */
.cn-deal-today-section{
  padding:34px 0 36px;
  background:
    radial-gradient(circle at 93% 10%,rgba(255,122,64,.10),transparent 18rem),
    linear-gradient(180deg,#fff9f4,#f9f6fb)
}
.cn-deal-section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:17px
}
.cn-deal-section-head>div>span{
  display:block;
  color:#d65a16;
  font-size:9px;
  font-weight:900;
  letter-spacing:.11em
}
.cn-deal-section-head h2{
  margin:5px 0 4px;
  font-size:30px;
  letter-spacing:-.03em
}
.cn-deal-section-head p{
  margin:0;
  color:#667085;
  font-size:11px
}
.cn-deal-section-head>a{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  padding:0 12px;
  border-radius:10px;
  background:#fff;
  border:1px solid #e9dde8;
  color:#7137bd;
  text-decoration:none;
  font-size:9px;
  font-weight:900
}
.cn-deal-grid-today .cn-deal-card{
  border-color:#ead7c8;
  box-shadow:0 12px 34px rgba(147,76,26,.07)
}
.cn-deal-card-badges .today{
  background:#f97316;
  color:#fff
}

/* Urgency for offers ending today */
.cn-deal-countdown-box.urgent{
  background:linear-gradient(135deg,#fff1e8,#fff8f3);
  border-color:#f1c7ab
}
.cn-deal-countdown-box.urgent>small{
  color:#c64f0d
}
.cn-deal-countdown-box.urgent .cn-promo-countdown{
  color:#9f3d06!important
}

/* Give title block enough room and stop overlap from tall artwork badges */
.cn-deal-card-content{
  position:relative;
  z-index:2;
  min-height:230px;
}
.cn-deal-card h3{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
  min-height:48px;
}
.cn-deal-card-content>p{
  min-height:42px;
}

/* Keep archive sections visually separated */
.cn-deal-today-section + .cn-deal-directory{
  border-top:1px solid #eee8f1
}

@media(max-width:700px){
  .cn-deal-section-head{
    align-items:flex-start;
    flex-direction:column
  }
}


/* =========================================================
   v0.23.2 — PROMOTIONS DIRECTORY VISUAL REBUILD
   Inspired by the approved CallNegombo mock-up.
   ========================================================= */

.cn-deal-v2-hero{
  padding:42px 0 0;
  background:
    radial-gradient(circle at 89% 35%,rgba(144,75,235,.24),transparent 21rem),
    radial-gradient(circle at 4% 100%,rgba(125,65,220,.12),transparent 20rem),
    linear-gradient(125deg,#15172d 0%,#262053 58%,#4d2885 100%);
  color:#fff
}
.cn-deal-v2-hero-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:42px;align-items:center
}
.cn-deal-v2-kicker{
  display:inline-flex;padding:6px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);
  color:#d8c0ff;font-size:9px;font-weight:900;letter-spacing:.11em
}
.cn-deal-v2-hero h1{
  margin:14px 0 11px;color:#fff;font-size:clamp(40px,5vw,65px);
  line-height:1;letter-spacing:-.05em
}
.cn-deal-v2-hero h1 em{font-style:normal;color:#cda7ff}
.cn-deal-v2-hero p{max-width:730px;margin:0;color:#e2dceb;font-size:14px;line-height:1.65}

.cn-deal-v2-stat{
  display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;
  padding:20px;border:1px solid rgba(255,255,255,.12);
  border-radius:20px;background:rgba(255,255,255,.07);backdrop-filter:blur(10px)
}
.cn-deal-v2-stat>span{
  width:52px;height:52px;border-radius:14px;background:rgba(166,84,255,.22);
  display:grid;place-items:center;color:#dfc8ff;font-size:22px
}
.cn-deal-v2-stat small,.cn-deal-v2-stat b{
  display:block;color:#c9c0da;font-size:8px;font-weight:900;letter-spacing:.06em
}
.cn-deal-v2-stat strong{display:block;color:#fff;font-size:42px;line-height:1;margin:3px 0 5px}

.cn-deal-v2-search{
  position:relative;z-index:3;
  display:grid;grid-template-columns:minmax(270px,1.25fr) minmax(150px,.62fr) minmax(150px,.62fr) minmax(150px,.62fr) auto;
  gap:0;margin-top:28px;transform:translateY(28px);
  padding:9px;border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(15,13,27,.18)
}
.cn-deal-v2-search label{
  min-width:0;padding:7px 12px;border-right:1px solid #ececf2
}
.cn-deal-v2-search label>span{
  display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900;letter-spacing:.05em;margin-bottom:2px
}
.cn-deal-v2-search .keyword{display:grid;grid-template-columns:24px 1fr;align-items:center}
.cn-deal-v2-search .keyword>span{font-size:18px;margin:0}
.cn-deal-v2-search input,.cn-deal-v2-search select{
  width:100%;min-height:34px;border:0!important;box-shadow:none!important;background:transparent!important;
  padding:0!important;color:#344054
}
.cn-deal-v2-search button{
  border:0;border-radius:11px;padding:0 18px;
  background:linear-gradient(90deg,#7538df,#9638d2);color:#fff;font-weight:900;cursor:pointer
}

.cn-deal-v2-nav{
  padding:44px 0 18px;background:#f8f8fb
}
.cn-deal-v2-nav .cn-shell{display:flex;gap:8px;flex-wrap:wrap}
.cn-deal-v2-nav a{
  min-height:38px;padding:0 17px;border-radius:999px;display:inline-flex;align-items:center;
  border:1px solid #e2e3e9;background:#fff;color:#344054;text-decoration:none;font-size:9px;font-weight:900
}
.cn-deal-v2-nav a.active{
  border-color:transparent;background:linear-gradient(90deg,#6f34d7,#8d39d6);color:#fff;
  box-shadow:0 8px 20px rgba(120,55,214,.16)
}

/* Sections */
.cn-deal-v2-today{padding:14px 0 42px;background:linear-gradient(180deg,#fffaf6,#fbf8fb)}
.cn-deal-v2-more{padding:32px 0 52px;background:#f8f8fb}
.cn-deal-v2-section-head{
  display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:17px
}
.cn-deal-v2-section-head>div>span{
  display:block;color:#7a39ca;font-size:9px;font-weight:900;letter-spacing:.09em
}
.cn-deal-v2-today .cn-deal-v2-section-head>div>span{color:#df5c14}
.cn-deal-v2-section-head h2{margin:5px 0 3px;font-size:29px;letter-spacing:-.03em}
.cn-deal-v2-section-head p{margin:0;color:#667085;font-size:10px}
.cn-deal-v2-section-head>a,.cn-deal-v2-section-actions a{
  display:inline-flex;align-items:center;min-height:37px;padding:0 11px;border-radius:9px;
  border:1px solid #ded4eb;background:#fff;color:#6f34c4;text-decoration:none;font-size:9px;font-weight:900
}
.cn-deal-v2-section-actions{display:flex;gap:7px;flex-wrap:wrap}
.cn-deal-v2-section-actions a:not(.secondary){background:#7034c9;color:#fff;border-color:#7034c9}
.cn-deal-v2-section-actions .secondary{color:#667085;border-color:#e0e3e8}

.cn-deal-v2-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

/* Shared card shell */
.cn-deal-card-v2{
  overflow:hidden;border-radius:17px;background:#fff;border:1px solid #e3e3e8;
  box-shadow:0 10px 30px rgba(28,24,39,.055);transition:.18s ease
}
.cn-deal-card-v2:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(32,24,48,.095)}
.cn-deal-card-v2.is-featured{border-color:#d7c6eb}
.cn-deal-card-v2.is-ended{opacity:.78}
.cn-deal-card-v2-main{text-decoration:none;color:inherit;display:block}
.cn-deal-card-v2-media{position:relative;aspect-ratio:1.38/1;overflow:hidden;background:#eae7ef}
.cn-deal-card-v2-media img{
  width:100%;height:100%;object-fit:cover!important;object-position:center!important;transition:transform .35s ease
}
.cn-deal-card-v2:hover .cn-deal-card-v2-media img{transform:scale(1.025)}
.cn-deal-v2-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:linear-gradient(135deg,#2d1d55,#6d36a8)
}
.cn-deal-v2-placeholder span{font-size:30px;font-weight:900;color:#fff}
.cn-deal-v2-badges{
  position:absolute;left:12px;top:12px;z-index:3;display:flex;gap:5px;flex-wrap:wrap
}
.cn-deal-v2-badges span{
  padding:5px 7px;border-radius:999px;color:#fff;font-size:7px;font-weight:900;box-shadow:0 4px 10px rgba(0,0,0,.08)
}
.cn-deal-v2-badges .today{background:#ff6715}
.cn-deal-v2-badges .active{background:#07824c}
.cn-deal-v2-badges .featured{background:#7139cb}
.cn-deal-v2-badges .ended{background:#667085}

.cn-deal-v2-actions{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:10px;border-top:1px solid #efeff2
}
.cn-deal-v2-actions a{
  min-height:37px;border-radius:8px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:8px;font-weight:900
}
.cn-deal-v2-actions .call{border:1px solid #cab5ec;color:#6e35bf;background:#fff}
.cn-deal-v2-actions .whatsapp{background:#079657;color:#fff}
.cn-deal-v2-actions .view{background:linear-gradient(90deg,#6332ba,#8634ca);color:#fff}

/* Today cards: text on artwork */
.cn-deal-card-v2.today-card .cn-deal-card-v2-media{aspect-ratio:1.05/1}
.cn-deal-v2-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(11,14,18,.83) 0%,rgba(11,14,18,.50) 48%,rgba(11,14,18,.08) 78%)
}
.cn-deal-v2-hero-copy{
  position:absolute;left:14px;bottom:14px;z-index:2;width:59%;color:#fff
}
.cn-deal-v2-hero-copy h3{
  color:#fff;font-size:25px;line-height:1.02;letter-spacing:-.035em;margin:0 0 8px
}
.cn-deal-v2-hero-copy p{color:#fff;font-size:10px;line-height:1.45;margin:0 0 9px}
.cn-deal-v2-hero-copy b{
  display:inline-flex;padding:7px 9px;border-radius:7px;background:#e93427;color:#fff;font-size:9px
}
.cn-deal-v2-time{
  position:absolute;right:12px;bottom:12px;z-index:3;
  width:78px;height:78px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:#fff;color:#142033;border:3px solid #ed3a2c;box-shadow:0 6px 20px rgba(0,0,0,.18)
}
.cn-deal-v2-time span,.cn-deal-v2-time small{
  display:block;color:#d62f25;font-size:6px;font-weight:900;line-height:1.05
}
.cn-deal-v2-time strong{display:block;font-size:25px;line-height:1;margin:2px 0;color:#142033}

.cn-deal-card-v2.today-card .cn-deal-v2-meta{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px 12px
}
.cn-deal-v2-meta .business{
  color:#7034c9;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em
}
.cn-deal-v2-meta .location{color:#98a2b3;font-size:8px;text-align:right}
.cn-deal-v2-meta .category{grid-column:1/-1;color:#667085;font-size:8px}

/* Standard / more cards */
.cn-deal-v2-discount{
  position:absolute;left:12px;bottom:12px;padding:6px 8px;border-radius:7px;
  background:#e93427;color:#fff;font-size:8px;font-weight:900
}
.cn-deal-v2-content{padding:14px 14px 10px}
.cn-deal-v2-content h3{
  color:#142033;font-size:18px;line-height:1.15;letter-spacing:-.02em;margin:0 0 7px
}
.cn-deal-v2-content>p{min-height:38px;margin:0 0 13px;color:#667085;font-size:9px;line-height:1.5}
.cn-deal-card-v2.standard-card .cn-deal-v2-meta{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding-top:10px;border-top:1px solid #eeeef2
}

/* Trust strip */
.cn-deal-v2-trust{padding:0 0 48px;background:#f8f8fb}
.cn-deal-v2-trust .cn-shell{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:18px 20px;border:1px solid #e3e4e9;border-radius:14px;background:#fff
}
.cn-deal-v2-trust .intro{display:flex;align-items:center;gap:10px}
.cn-deal-v2-trust .intro>span{
  width:34px;height:34px;border-radius:10px;background:#f2edff;color:#7137bd;display:grid;place-items:center
}
.cn-deal-v2-trust strong{display:block;color:#344054;font-size:9px}
.cn-deal-v2-trust small{display:block;color:#98a2b3;font-size:8px;margin-top:2px}
.cn-deal-v2-trust .points{display:flex;gap:16px;flex-wrap:wrap;color:#667085;font-size:8px}
.cn-deal-v2-trust .points span{white-space:nowrap}

/* Responsive */
@media(max-width:1080px){
  .cn-deal-v2-search{grid-template-columns:1fr 1fr 1fr}
  .cn-deal-v2-search .keyword{grid-column:1/-1}
  .cn-deal-v2-search button{min-height:44px}
  .cn-deal-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .cn-deal-v2-hero{padding-top:32px}
  .cn-deal-v2-hero-grid{grid-template-columns:1fr}
  .cn-deal-v2-stat{display:none}
  .cn-deal-v2-hero h1{font-size:43px}
  .cn-deal-v2-search{grid-template-columns:1fr 1fr}
  .cn-deal-v2-search .keyword{grid-column:1/-1}
  .cn-deal-v2-section-head{align-items:flex-start;flex-direction:column}
  .cn-deal-v2-grid{grid-template-columns:1fr}
  .cn-deal-v2-trust .cn-shell{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .cn-deal-v2-search{grid-template-columns:1fr}
  .cn-deal-v2-search .keyword{grid-column:1}
  .cn-deal-v2-search label{border-right:0;border-bottom:1px solid #ececf2}
  .cn-deal-v2-hero-copy{width:62%}
  .cn-deal-v2-hero-copy h3{font-size:22px}
  .cn-deal-v2-time{width:70px;height:70px}
  .cn-deal-v2-time strong{font-size:22px}
  .cn-deal-v2-actions{grid-template-columns:1fr 1fr}
  .cn-deal-v2-actions .view{grid-column:1/-1}
}


/* =========================================================
   v0.23.3 — CLEAN 1:1 PROMOTION ARTWORK
   ========================================================= */

/* Every promotion image is displayed in a true 1:1 square. */
.cn-deal-card-v2-media,
.cn-deal-card-v2.today-card .cn-deal-card-v2-media,
.cn-deal-card-v2.standard-card .cn-deal-card-v2-media{
  aspect-ratio:1 / 1 !important;
  height:auto !important;
  background:#fff !important;
}

/* Preserve the uploaded artwork without black shading or forced cropping. */
.cn-deal-card-v2-media img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fff !important;
  filter:none !important;
  opacity:1 !important;
  text-shadow:none !important;
}

/* Remove the dark overlay from Today cards completely. */
.cn-deal-v2-overlay{
  display:none !important;
  background:none !important;
  opacity:0 !important;
}

/* No text is overlaid across the image. */
.cn-deal-v2-hero-copy{
  display:none !important;
}

/* Keep badges light and compact so the artwork stays visible. */
.cn-deal-v2-badges{
  left:10px !important;
  top:10px !important;
}
.cn-deal-v2-badges span{
  box-shadow:0 3px 10px rgba(0,0,0,.08) !important;
  text-shadow:none !important;
}

/* Circular expiry stays visible but does not darken the image. */
.cn-deal-v2-time{
  right:10px !important;
  bottom:10px !important;
  width:72px !important;
  height:72px !important;
  background:rgba(255,255,255,.97) !important;
  box-shadow:0 5px 18px rgba(20,32,51,.14) !important;
  text-shadow:none !important;
}

/* Today's title and offer now sit below the clean artwork. */
.cn-deal-v2-today-content{
  padding:14px 14px 10px !important;
}
.cn-deal-v2-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.cn-deal-v2-title-row h3{
  margin:0 !important;
  color:#142033 !important;
  font-size:19px !important;
  line-height:1.15 !important;
  letter-spacing:-.02em !important;
  text-shadow:none !important;
}
.cn-deal-v2-offer-badge{
  flex:0 0 auto;
  display:inline-flex;
  max-width:48%;
  padding:6px 8px;
  border-radius:7px;
  background:#e93427;
  color:#fff;
  font-size:8px;
  line-height:1.2;
  font-weight:900;
  text-align:center;
  text-shadow:none !important;
}
.cn-deal-v2-today-content>p{
  min-height:38px;
  margin:8px 0 12px;
  color:#667085;
  font-size:9px;
  line-height:1.5;
}

/* Standard cards also keep their artwork square and clear. */
.cn-deal-card-v2.standard-card .cn-deal-v2-discount{
  box-shadow:0 5px 14px rgba(233,52,39,.16);
  text-shadow:none !important;
}

/* Remove any inherited shadows from text within promotion cards. */
.cn-deal-card-v2 h3,
.cn-deal-card-v2 p,
.cn-deal-card-v2 strong,
.cn-deal-card-v2 b,
.cn-deal-card-v2 span,
.cn-deal-card-v2 small,
.cn-deal-card-v2 em{
  text-shadow:none !important;
}

@media(max-width:520px){
  .cn-deal-v2-title-row{
    flex-direction:column;
  }
  .cn-deal-v2-offer-badge{
    max-width:100%;
  }
}


/* =========================================================
   v0.23.4 — APPROVED PROMOTIONS CARD SYSTEM
   Clean 1:1 imagery + equal cards + international directory UI
   ========================================================= */

/* Make the page brighter and closer to the approved mockup */
.cn-deal-v2-hero{
  padding:34px 0 0 !important;
  background:
    radial-gradient(circle at 82% 18%,rgba(118,65,230,.10),transparent 26rem),
    radial-gradient(circle at 96% 80%,rgba(170,96,255,.08),transparent 20rem),
    linear-gradient(180deg,#fbf9ff,#f8f8fc) !important;
  color:#142033 !important;
  border-bottom:1px solid #ececf2;
}
.cn-deal-v2-kicker{
  border:0 !important;
  background:transparent !important;
  color:#6129d0 !important;
  padding:0 !important;
  font-size:11px !important;
}
.cn-deal-v2-hero h1{
  color:#142033 !important;
  font-size:clamp(38px,4.4vw,58px) !important;
  line-height:1.02 !important;
  margin:10px 0 10px !important;
}
.cn-deal-v2-hero h1 em{color:#6426d8 !important}
.cn-deal-v2-hero p{
  max-width:660px !important;
  color:#667085 !important;
  font-size:13px !important;
  line-height:1.6 !important;
}
.cn-deal-v2-stat{
  background:#fff !important;
  border:1px solid #e6e4ee !important;
  box-shadow:0 10px 30px rgba(45,31,70,.06) !important;
}
.cn-deal-v2-stat>span{
  background:#f0e9ff !important;
  color:#6d30d5 !important;
}
.cn-deal-v2-stat small,.cn-deal-v2-stat b{color:#667085 !important}
.cn-deal-v2-stat strong{color:#142033 !important}

/* Search stays compact, white and easy to use */
.cn-deal-v2-search{
  transform:translateY(24px) !important;
  border:1px solid #e6e6ec;
  box-shadow:0 14px 38px rgba(32,26,43,.08) !important;
}
.cn-deal-v2-search button{
  background:linear-gradient(90deg,#6328d2,#7f2dde) !important;
}
.cn-deal-v2-nav{
  padding-top:40px !important;
  background:#fff !important;
}
.cn-deal-v2-nav a{
  box-shadow:0 6px 16px rgba(30,28,40,.035);
}
.cn-deal-v2-nav a.active{
  background:linear-gradient(90deg,#5820ca,#7225da) !important;
}

/* Sections */
.cn-deal-v2-today{
  background:#fff !important;
  padding-top:18px !important;
}
.cn-deal-v2-more{
  background:#f8f9fb !important;
}
.cn-deal-v2-section-head h2{
  font-size:27px !important;
}
.cn-deal-v2-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

/* NEW APPROVED CARD */
.cn-deal-card-v3{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  overflow:hidden;
  border-radius:16px;
  background:#fff;
  border:1px solid #e3e4ea;
  box-shadow:0 10px 28px rgba(26,28,42,.055);
  transition:.18s ease;
}
.cn-deal-card-v3:hover{
  transform:translateY(-3px);
  border-color:#d5c8e9;
  box-shadow:0 17px 38px rgba(46,31,70,.10);
}
.cn-deal-card-v3.is-featured{
  border-color:#d7c5ef;
}

.cn-deal-card-v3-body{
  display:grid;
  grid-template-columns:minmax(0,46%) minmax(0,54%);
  flex:1 1 auto;
  min-height:0;
}

/* CRITICAL: every image area is a TRUE 1:1 square */
.cn-deal-card-v3-media{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:1 / 1 !important;
  align-self:start;
  overflow:hidden;
  background:#f4f4f7;
  text-decoration:none;
}
.cn-deal-card-v3-media img{
  width:100% !important;
  height:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block;
  filter:none !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.cn-deal-v3-placeholder{
  width:100%;
  height:100%;
  aspect-ratio:1 / 1;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#e9e0fb,#f4f1fa);
}
.cn-deal-v3-placeholder span{
  color:#6d30d5;
  font-size:26px;
  font-weight:900;
}

.cn-deal-v3-badges{
  position:absolute;
  top:10px;
  left:10px;
  right:10px;
  display:flex;
  gap:5px;
  flex-wrap:wrap;
  z-index:2;
}
.cn-deal-v3-badges span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  color:#fff;
  font-size:7px;
  font-weight:900;
  box-shadow:0 4px 10px rgba(0,0,0,.08);
  text-shadow:none !important;
}
.cn-deal-v3-badges .today{background:#ff6518}
.cn-deal-v3-badges .active{background:#07834d}
.cn-deal-v3-badges .featured{background:#7035cf}
.cn-deal-v3-badges .ended{background:#667085}

.cn-deal-v3-expiry{
  position:absolute;
  left:10px;
  bottom:10px;
  width:68px;
  height:68px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.97);
  border:3px solid #ef3c31;
  box-shadow:0 5px 16px rgba(20,32,51,.13);
  z-index:2;
}
.cn-deal-v3-expiry span,.cn-deal-v3-expiry small{
  color:#d92d20;
  font-size:6px;
  line-height:1;
  font-weight:900;
}
.cn-deal-v3-expiry strong{
  color:#142033;
  font-size:23px;
  line-height:1;
  margin:2px 0;
}

/* Clean content panel - fixed layout = equal size */
.cn-deal-card-v3-content{
  min-width:0;
  padding:14px 14px 12px;
  display:flex;
  flex-direction:column;
}
.cn-deal-v3-business{
  color:#6b2ec8;
  font-size:8px;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cn-deal-v3-location{
  margin-top:3px;
  color:#98a2b3;
  font-size:8px;
}
.cn-deal-v3-title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:12px;
  color:#142033;
  text-decoration:none;
  font-size:18px;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.02em;
  min-height:42px;
}
.cn-deal-card-v3-content>p{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:9px 0 10px;
  min-height:42px;
  color:#667085;
  font-size:9px;
  line-height:1.55;
}
.cn-deal-v3-offer{
  align-self:flex-start;
  max-width:100%;
  margin-top:auto;
  padding:6px 8px;
  border-radius:6px;
  background:#e73529;
  color:#fff;
  font-size:8px;
  line-height:1.25;
  font-weight:900;
}
.cn-deal-v3-footer-meta{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
  margin-top:11px;
  padding-top:9px;
  border-top:1px solid #eeeef2;
  color:#667085;
  font-size:7px;
}
.cn-deal-v3-footer-meta span{
  white-space:nowrap;
}

/* Equal bottom buttons */
.cn-deal-v3-actions{
  display:grid;
  grid-template-columns:1fr 1.25fr 1.25fr;
  gap:6px;
  padding:10px;
  border-top:1px solid #eeeef2;
  background:#fff;
}
.cn-deal-v3-actions a{
  min-height:38px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:8px;
  font-weight:900;
}
.cn-deal-v3-actions .call{
  color:#6e35bf;
  border:1px solid #cdb9eb;
  background:#fff;
}
.cn-deal-v3-actions .whatsapp{
  color:#fff;
  background:#079857;
}
.cn-deal-v3-actions .view{
  color:#fff;
  background:linear-gradient(90deg,#6030ba,#8032ca);
}

/* Keep standard and today cards identical in outer sizing */
.cn-deal-card-v3.today-card,
.cn-deal-card-v3.standard-card{
  min-height:305px;
}

/* Remove older promotion card system from layout */
.cn-deal-card-v2{
  display:none !important;
}

/* Trust strip */
.cn-deal-v2-trust .cn-shell{
  border-radius:12px !important;
  box-shadow:0 8px 24px rgba(30,30,42,.035);
}

/* Responsive */
@media(max-width:1180px){
  .cn-deal-v2-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:760px){
  .cn-deal-v2-grid{
    grid-template-columns:1fr !important;
  }
  .cn-deal-card-v3-body{
    grid-template-columns:180px minmax(0,1fr);
  }
}
@media(max-width:520px){
  .cn-deal-card-v3-body{
    grid-template-columns:1fr;
  }
  .cn-deal-card-v3-media{
    width:100%;
    aspect-ratio:1 / 1 !important;
  }
  .cn-deal-v3-actions{
    grid-template-columns:1fr 1fr;
  }
  .cn-deal-v3-actions .view{
    grid-column:1/-1;
  }
}


/* =========================================================
   v0.24.0 — PREMIUM JOBS PUBLIC EXPERIENCE
   ========================================================= */
.cn-job-v2-hero{
  padding:54px 0 24px;
  background:
    radial-gradient(circle at 88% 12%,rgba(61,105,255,.14),transparent 25rem),
    linear-gradient(180deg,#fbfcff,#f6f8fc);
  border-bottom:1px solid #e8ebf0
}
.cn-job-v2-hero-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:40px;align-items:end
}
.cn-job-v2-kicker{
  color:#1769e8;font-size:10px;font-weight:900;letter-spacing:.12em
}
.cn-job-v2-hero h1{
  margin:12px 0 10px;color:#142033;font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:-.05em
}
.cn-job-v2-hero h1 em{font-style:normal;color:#1769e8}
.cn-job-v2-hero p{max-width:760px;margin:0;color:#667085;font-size:14px;line-height:1.65}
.cn-job-v2-stat{
  padding:20px;border:1px solid #dde4ee;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(20,32,51,.05)
}
.cn-job-v2-stat span,.cn-job-v2-stat small{
  display:block;color:#98a2b3;font-size:8px;font-weight:900;letter-spacing:.06em
}
.cn-job-v2-stat strong{display:block;color:#142033;font-size:43px;line-height:1;margin:7px 0 4px}

.cn-job-v2-search{
  display:grid;grid-template-columns:minmax(270px,1.25fr) repeat(4,minmax(145px,.62fr)) auto;
  gap:0;margin-top:30px;padding:9px;border:1px solid #e1e6ed;border-radius:17px;background:#fff;
  box-shadow:0 14px 40px rgba(20,32,51,.07)
}
.cn-job-v2-search label{min-width:0;padding:7px 11px;border-right:1px solid #edf0f4}
.cn-job-v2-search label>span{
  display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;letter-spacing:.05em;font-weight:900;margin-bottom:2px
}
.cn-job-v2-search .keyword{display:grid;grid-template-columns:24px 1fr;align-items:center}
.cn-job-v2-search .keyword>span{font-size:18px;margin:0}
.cn-job-v2-search input,.cn-job-v2-search select{
  width:100%;min-height:34px;border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;color:#344054
}
.cn-job-v2-search button{
  border:0;border-radius:11px;padding:0 17px;background:linear-gradient(90deg,#1769e8,#3151d8);color:#fff;font-weight:900
}
.cn-job-v2-chips{display:flex;gap:6px;align-items:center;overflow:auto;margin-top:14px}
.cn-job-v2-chips>span{color:#98a2b3;font-size:8px;text-transform:uppercase;font-weight:900;margin-right:3px}
.cn-job-v2-chips a{
  white-space:nowrap;padding:6px 10px;border-radius:999px;border:1px solid #e1e6ed;background:#fff;color:#526174;text-decoration:none;font-size:8px;font-weight:800
}
.cn-job-v2-chips a.active,.cn-job-v2-chips a:hover{background:#1769e8;color:#fff;border-color:#1769e8}

.cn-job-v2-directory{padding:34px 0 60px;background:#f7f9fc}
.cn-job-v2-directory-head{
  display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px
}
.cn-job-v2-directory-head h2{font-size:30px;letter-spacing:-.03em;margin:5px 0}
.cn-job-v2-directory-head p{margin:0;color:#667085;font-size:10px}
.cn-job-v2-head-actions{display:flex;gap:7px;flex-wrap:wrap}
.cn-job-v2-head-actions a{
  min-height:38px;padding:0 12px;border-radius:10px;display:flex;align-items:center;text-decoration:none;font-size:9px;font-weight:900
}
.cn-job-v2-head-actions .clear{background:#fff;border:1px solid #dfe5ed;color:#667085}
.cn-job-v2-head-actions .post{background:#142033;color:#fff}

.cn-job-v2-list{display:flex;flex-direction:column;gap:10px}
.cn-job-v2-card{
  overflow:hidden;border-radius:16px;background:#fff;border:1px solid #e0e6ed;box-shadow:0 8px 26px rgba(20,32,51,.035);transition:.18s ease
}
.cn-job-v2-card:hover{transform:translateY(-2px);border-color:#cfd9e6;box-shadow:0 14px 34px rgba(20,32,51,.07)}
.cn-job-v2-card.is-featured{border-color:#cbd7f6}
.cn-job-v2-card.is-expired{opacity:.76}
.cn-job-v2-card-main{
  display:grid;grid-template-columns:82px minmax(0,1fr) 220px;gap:16px;align-items:center;padding:16px 18px;text-decoration:none;color:inherit
}
.cn-job-v2-logo{
  width:82px;height:82px;aspect-ratio:1/1;border-radius:16px;overflow:hidden;background:#edf4ff;display:grid;place-items:center
}
.cn-job-v2-logo img{width:100%;height:100%;object-fit:cover}
.cn-job-v2-logo span{color:#1769e8;font-size:22px;font-weight:900}
.cn-job-v2-badges{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:7px}
.cn-job-v2-badges span{padding:5px 7px;border-radius:999px;font-size:7px;font-weight:900}
.cn-job-v2-badges .type{background:#edf4ff;color:#1769e8}
.cn-job-v2-badges .featured{background:#eaf8f0;color:#087443}
.cn-job-v2-badges .package{background:#f4edff;color:#7137bd}
.cn-job-v2-card-content h3{font-size:20px;line-height:1.15;letter-spacing:-.02em;margin:0 0 4px;color:#142033}
.cn-job-v2-company{color:#344054;font-size:10px;font-weight:800}
.cn-job-v2-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:7px;color:#98a2b3;font-size:8px}
.cn-job-v2-card-content p{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  max-width:760px;margin:8px 0 0;color:#667085;font-size:9px;line-height:1.5
}
.cn-job-v2-card-side{text-align:right}
.cn-job-v2-card-side .salary small{
  display:block;color:#98a2b3;font-size:7px;font-weight:900;letter-spacing:.06em
}
.cn-job-v2-card-side .salary strong{display:block;color:#142033;font-size:15px;margin-top:3px}
.cn-job-v2-card-side .closing{
  display:inline-flex;margin-top:10px;padding:6px 8px;border-radius:999px;background:#edf4ff;color:#1769e8;font-size:8px;font-weight:900
}
.cn-job-v2-card-side .closing.expired{background:#fff0ef;color:#b42318}
.cn-job-v2-card-side .view{display:block;margin-top:10px;color:#1769e8;font-size:9px;font-weight:900}

.cn-job-v2-empty{text-align:center;padding:55px 20px;background:#fff;border:1px dashed #cfd8e5;border-radius:17px}
.cn-job-v2-empty>span{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;margin:0 auto 12px;background:#edf4ff;color:#1769e8;font-size:22px}
.cn-job-v2-empty h3{font-size:21px;margin:0 0 5px}
.cn-job-v2-empty p{color:#667085;margin:0 0 15px}
.cn-job-v2-empty a{display:inline-flex;padding:10px 13px;border-radius:9px;background:#1769e8;color:#fff;text-decoration:none;font-weight:900}
.cn-job-v2-pagination{margin-top:28px}

.cn-job-v2-cta{padding:0 0 56px;background:#f7f9fc}
.cn-job-v2-cta .cn-shell{
  display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 34px;border-radius:22px;
  background:radial-gradient(circle at 90% 18%,rgba(76,128,255,.25),transparent 18rem),linear-gradient(125deg,#14233f,#1c4b89);color:#fff
}
.cn-job-v2-cta span{font-size:9px;letter-spacing:.12em;color:#9bc7ff;font-weight:900}
.cn-job-v2-cta h2{color:#fff;font-size:29px;margin:6px 0}
.cn-job-v2-cta p{color:#d1dfef;margin:0;font-size:10px}
.cn-job-v2-cta a{flex:0 0 auto;padding:13px 16px;border-radius:11px;background:#fff;color:#142033;text-decoration:none;font-size:9px;font-weight:900}

/* Single */
.cn-job-v2-profile-hero{padding:18px 0 22px;background:#f6f8fb}
.cn-job-v2-breadcrumb{display:flex;gap:7px;align-items:center;padding:4px 0 13px;color:#98a2b3;font-size:8px}
.cn-job-v2-breadcrumb a{color:#667085;text-decoration:none}
.cn-job-v2-profile-card{
  display:grid;grid-template-columns:120px minmax(0,1fr) 320px;gap:22px;align-items:center;
  padding:24px;border:1px solid #dfe5ed;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(20,32,51,.055)
}
.cn-job-v2-profile-logo{
  width:120px;height:120px;aspect-ratio:1/1;border-radius:22px;overflow:hidden;background:#edf4ff;display:grid;place-items:center
}
.cn-job-v2-profile-logo img{width:100%;height:100%;object-fit:cover}
.cn-job-v2-profile-logo span{color:#1769e8;font-size:30px;font-weight:900}
.cn-job-v2-profile-copy h1{font-size:36px;line-height:1.05;letter-spacing:-.035em;margin:7px 0 6px;color:#142033}
.cn-job-v2-profile-copy .company{color:#344054;font-size:13px;font-weight:900}
.cn-job-v2-profile-copy .meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;color:#98a2b3;font-size:8px}
.cn-job-v2-profile-copy>p{max-width:720px;color:#667085;font-size:10px;line-height:1.5;margin:10px 0 0}
.cn-job-v2-profile-side{text-align:right}
.cn-job-v2-profile-side .salary small{display:block;color:#98a2b3;font-size:7px;font-weight:900}
.cn-job-v2-profile-side .salary strong{display:block;color:#142033;font-size:22px;margin-top:3px}
.cn-job-v2-profile-side .closing{display:inline-flex;margin-top:10px;padding:7px 9px;border-radius:999px;background:#edf4ff;color:#1769e8;font-size:8px;font-weight:900}
.cn-job-v2-profile-side .closing.expired{background:#fff0ef;color:#b42318}
.cn-job-v2-profile-side .actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:13px}
.cn-job-v2-profile-side .actions a{
  min-height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:8px;font-weight:900
}
.cn-job-v2-profile-side .actions .whatsapp{grid-column:1/-1;background:#087443;color:#fff}
.cn-job-v2-profile-side .actions .email{background:#edf4ff;color:#1769e8}
.cn-job-v2-profile-side .actions .online{background:#142033;color:#fff}
.cn-job-v2-closed{margin-top:12px;padding:10px;border-radius:10px;background:#fff0ef;color:#b42318;font-size:9px;font-weight:800}

.cn-job-v2-profile-body{padding:0 0 70px;background:#f6f8fb}
.cn-job-v2-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr);gap:18px;align-items:start}
.cn-job-v2-main{display:flex;flex-direction:column;gap:15px}
.cn-job-v2-panel{padding:22px;border:1px solid #e0e6ed;border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(20,32,51,.03)}
.cn-job-v2-panel-title{margin-bottom:13px}
.cn-job-v2-panel-title span{display:block;color:#1769e8;font-size:8px;letter-spacing:.11em;font-weight:900}
.cn-job-v2-panel-title h2{font-size:22px;letter-spacing:-.02em;margin:4px 0 0}
.cn-job-v2-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.cn-job-v2-facts>div{padding:13px;border:1px solid #e5eaf0;border-radius:12px;background:#fafbfd}
.cn-job-v2-facts .wide{grid-column:1/-1}
.cn-job-v2-facts small{display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900}
.cn-job-v2-facts strong{display:block;color:#344054;font-size:10px;line-height:1.5;margin-top:4px}
.cn-job-v2-related{display:flex;flex-direction:column;gap:7px}
.cn-job-v2-related>a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px;border:1px solid #e6eaf0;border-radius:11px;text-decoration:none}
.cn-job-v2-related strong{display:block;color:#142033;font-size:10px}
.cn-job-v2-related small{display:block;color:#98a2b3;font-size:8px;margin-top:2px}
.cn-job-v2-related>a>span{color:#1769e8;font-size:8px;font-weight:900}

.cn-job-v2-sidebar{position:sticky;top:18px;display:flex;flex-direction:column;gap:12px}
.cn-job-v2-info-card,.cn-job-v2-reminder{background:#fff;border:1px solid #e0e6ed;border-radius:18px;padding:19px;box-shadow:0 8px 28px rgba(20,32,51,.03)}
.cn-job-v2-info-card .head span{display:block;color:#1769e8;font-size:8px;letter-spacing:.09em;font-weight:900}
.cn-job-v2-info-card .head h2{font-size:18px;margin:5px 0 13px}
.cn-job-v2-info-card .row{padding:9px 0;border-top:1px solid #edf0f4}
.cn-job-v2-info-card .row small{display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900}
.cn-job-v2-info-card .row strong{display:block;color:#344054;font-size:9px;margin-top:3px}
.cn-job-v2-info-card .row a{color:#1769e8;text-decoration:none}
.cn-job-v2-side-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:13px}
.cn-job-v2-side-actions a{min-height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:8px;font-weight:900}
.cn-job-v2-side-actions .whatsapp{grid-column:1/-1;background:#087443;color:#fff}
.cn-job-v2-side-actions .email{background:#edf4ff;color:#1769e8}
.cn-job-v2-side-actions .online{background:#142033;color:#fff}
.cn-job-v2-reminder{display:grid;grid-template-columns:34px 1fr;gap:10px}
.cn-job-v2-reminder>span{width:34px;height:34px;border-radius:10px;background:#eaf8f1;color:#087443;display:grid;place-items:center;font-weight:900}
.cn-job-v2-reminder strong{display:block;color:#344054;font-size:9px}
.cn-job-v2-reminder p{margin:4px 0 0;color:#98a2b3;font-size:8px;line-height:1.5}
.cn-job-v2-mobile-actions{display:none}

@media(max-width:1080px){
  .cn-job-v2-search{grid-template-columns:1fr 1fr 1fr}
  .cn-job-v2-search .keyword{grid-column:1/-1}
  .cn-job-v2-search button{min-height:44px}
  .cn-job-v2-profile-card{grid-template-columns:100px minmax(0,1fr) 280px}
}
@media(max-width:850px){
  .cn-job-v2-hero-grid{grid-template-columns:1fr}
  .cn-job-v2-stat{display:none}
  .cn-job-v2-card-main{grid-template-columns:72px minmax(0,1fr)}
  .cn-job-v2-card-side{grid-column:2;text-align:left;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .cn-job-v2-profile-card{grid-template-columns:90px minmax(0,1fr)}
  .cn-job-v2-profile-side{grid-column:1/-1;text-align:left;padding-top:14px;border-top:1px solid #edf0f4}
  .cn-job-v2-layout{grid-template-columns:1fr}
  .cn-job-v2-sidebar{position:static}
}
@media(max-width:700px){
  .cn-job-v2-hero h1{font-size:44px}
  .cn-job-v2-search{grid-template-columns:1fr 1fr}
  .cn-job-v2-search .keyword{grid-column:1/-1}
  .cn-job-v2-directory-head{align-items:flex-start;flex-direction:column}
  .cn-job-v2-cta .cn-shell{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .cn-job-v2-search{grid-template-columns:1fr}
  .cn-job-v2-search .keyword{grid-column:1}
  .cn-job-v2-search label{border-right:0;border-bottom:1px solid #edf0f4}
  .cn-job-v2-card-main{grid-template-columns:58px minmax(0,1fr);padding:13px}
  .cn-job-v2-logo{width:58px;height:58px;border-radius:12px}
  .cn-job-v2-card-content h3{font-size:17px}
  .cn-job-v2-profile-card{grid-template-columns:70px minmax(0,1fr);padding:17px}
  .cn-job-v2-profile-logo{width:70px;height:70px;border-radius:15px}
  .cn-job-v2-profile-copy h1{font-size:27px}
  .cn-job-v2-facts{grid-template-columns:1fr}
  .cn-job-v2-facts .wide{grid-column:auto}
  .cn-job-v2-mobile-actions{display:flex}
}


/* =========================================================
   v0.25.0 — Premium Places / Explore directory
   ========================================================= */
.cn-explore-hero{padding:72px 0 54px;background:
 radial-gradient(circle at 84% 16%,rgba(20,110,245,.15),transparent 28%),
 linear-gradient(135deg,#f8fbff 0%,#f1f6ff 58%,#eef7f5 100%);border-bottom:1px solid #e5edf7}
.cn-explore-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) 330px;gap:70px;align-items:center}
.cn-explore-kicker,.cn-explore-heading>div>span,.cn-place-v2 .eyebrow{font-size:11px;letter-spacing:.16em;font-weight:900;color:#146ef5}
.cn-explore-hero h1{font-size:clamp(52px,5.5vw,82px);line-height:.94;letter-spacing:-.065em;margin:16px 0 20px;color:#142033}
.cn-explore-hero h1 em{font-style:normal;color:#146ef5}
.cn-explore-hero p{font-size:17px;line-height:1.65;color:#5f6f85;max-width:760px}
.cn-explore-quick{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.cn-explore-quick a{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #dce6f2;border-radius:999px;padding:9px 13px;color:#26364d;font-size:12px;font-weight:800;box-shadow:0 5px 18px rgba(30,55,90,.04)}
.cn-explore-quick a:hover{border-color:#9dc4ff;color:#146ef5;transform:translateY(-1px)}
.cn-explore-quick b{width:25px;height:25px;border-radius:8px;background:#edf5ff;color:#146ef5;display:grid;place-items:center}
.cn-explore-stat{background:#14233a;color:#fff;border-radius:28px;padding:30px;box-shadow:0 24px 60px rgba(20,35,58,.18);position:relative;overflow:hidden}
.cn-explore-stat:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;background:#146ef5;opacity:.2;right:-80px;top:-70px}
.cn-explore-stat>span{font-size:10px;letter-spacing:.16em;font-weight:900;color:#9fb9de}.cn-explore-stat strong{display:block;font-size:64px;line-height:1;margin:20px 0 2px}.cn-explore-stat small{color:#bdcbe0}.cn-explore-stat-line{height:1px;background:#31445f;margin:24px 0}.cn-explore-stat p{font-size:12px;color:#c4d0df;margin:0}
.cn-explore-search-wrap{padding:0 0 10px;background:#f7f9fc}.cn-explore-search{transform:translateY(-1px);display:grid;grid-template-columns:1.65fr .8fr .8fr auto;background:#fff;border:1px solid #dce4ef;border-radius:20px;box-shadow:0 16px 40px rgba(20,32,51,.08);overflow:hidden}
.cn-explore-search>label{min-height:84px;padding:15px 18px;border-right:1px solid #e8edf4;display:flex;flex-direction:column;justify-content:center;position:relative}.cn-explore-search label small{font-size:9px;letter-spacing:.1em;color:#8a98ab;font-weight:900;margin-bottom:6px}
.cn-explore-searchbox span{position:absolute;left:18px;bottom:25px;color:#8795a8}.cn-explore-searchbox input{padding-left:27px!important}
.cn-explore-search input,.cn-explore-search select{width:100%;border:0!important;background:transparent!important;outline:0!important;padding:0!important;min-height:auto!important;font-size:15px;color:#17243a;box-shadow:none!important}
.cn-explore-search button{margin:11px;border:0;border-radius:14px;background:#146ef5;color:#fff;padding:0 25px;font-weight:900;font-size:15px;cursor:pointer}
.cn-explore-filter-pills{display:flex;gap:8px;flex-wrap:wrap;padding:16px 0 8px}.cn-explore-filter-pills a{padding:8px 12px;border:1px solid #dce4ee;background:#fff;border-radius:999px;font-size:11px;font-weight:800;color:#56667b}.cn-explore-filter-pills a.active{background:#14233a;color:#fff;border-color:#14233a}.cn-explore-filter-pills a.emergency{background:#fff0f0;color:#c52d2d;border-color:#ffd0d0}
.cn-explore-results{padding:42px 0 80px;background:#f7f9fc}.cn-explore-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.cn-explore-heading h2{font-size:38px;letter-spacing:-.04em;margin:7px 0 4px}.cn-explore-heading p{margin:0;color:#718096;font-size:13px}
.cn-explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cn-explore-card{background:#fff;border:1px solid #dde5ef;border-radius:22px;overflow:hidden;box-shadow:0 10px 30px rgba(20,32,51,.05);display:flex;flex-direction:column;min-width:0;transition:.2s ease}
.cn-explore-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(20,32,51,.09);border-color:#c8d8ec}.cn-explore-card.is-featured{border-color:#b9d2ff}
.cn-explore-media{aspect-ratio:1/1;position:relative;overflow:hidden;background:#eaf1f8;display:block}.cn-explore-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.cn-explore-card:hover .cn-explore-media img{transform:scale(1.025)}
.cn-explore-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#163f77,#146ef5);color:#fff}.cn-explore-fallback span{width:74px;height:74px;border-radius:22px;background:rgba(255,255,255,.15);display:grid;place-items:center;font-size:26px;font-weight:900}
.cn-explore-badges{position:absolute;left:14px;top:14px;right:14px;display:flex;gap:6px;flex-wrap:wrap}.cn-explore-badges span{font-size:9px;font-weight:900;padding:7px 9px;border-radius:999px;box-shadow:0 4px 12px rgba(0,0,0,.08)}.cn-explore-badges .type{background:#fff;color:#18314f}.cn-explore-badges .important{background:#e5362d;color:#fff}.cn-explore-badges .featured{background:#6f36d9;color:#fff}
.cn-explore-card-body{padding:19px;display:flex;flex-direction:column;flex:1}.cn-explore-location{font-size:10px;font-weight:800;color:#6f36d9;text-transform:uppercase;letter-spacing:.06em}.cn-explore-card h2{font-size:22px;line-height:1.15;letter-spacing:-.025em;margin:7px 0 0}.cn-explore-card h2 a{color:#142033}.cn-explore-card-body>p{font-size:13px;line-height:1.55;color:#68778b;margin:12px 0;min-height:40px}
.cn-explore-infochips{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:4px}.cn-explore-infochips span{font-size:10px;background:#f4f7fb;border:1px solid #e7edf4;color:#5d6c7f;padding:7px 8px;border-radius:8px}
.cn-explore-actions{display:grid;grid-template-columns:auto auto 1fr;gap:7px;border-top:1px solid #edf1f5;margin:16px -19px -19px;padding:12px 19px}.cn-explore-actions a{min-height:38px;border-radius:10px;display:grid;place-items:center;padding:0 12px;font-size:11px;font-weight:900}.cn-explore-actions .call{border:1px solid #cddcff;color:#146ef5}.cn-explore-actions .map{background:#edf8f4;color:#087b52}.cn-explore-actions .view{background:#14233a;color:#fff}
.cn-explore-empty{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #cad5e2;border-radius:22px;padding:55px}.cn-explore-empty>b{width:56px;height:56px;border-radius:18px;background:#edf5ff;color:#146ef5;display:grid;place-items:center;margin:auto;font-size:24px}.cn-explore-empty h2{margin:14px 0 5px}.cn-explore-empty p{color:#718096}.cn-explore-empty a{display:inline-block;margin-top:10px;background:#146ef5;color:#fff;border-radius:10px;padding:10px 14px;font-weight:800}

/* Place single */
.cn-place-v2{padding:30px 0 80px;background:#f7f9fc}.cn-place-breadcrumb{display:flex;gap:8px;align-items:center;color:#7a899c;font-size:12px;margin:4px 0 18px}.cn-place-breadcrumb a{color:#146ef5;font-weight:800}
.cn-place-v2-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.82fr);background:#fff;border:1px solid #dce5ef;border-radius:28px;overflow:hidden;box-shadow:0 16px 46px rgba(20,32,51,.08)}
.cn-place-v2-media{aspect-ratio:1/1;max-height:620px;background:#eaf1f8}.cn-place-v2-media img{width:100%;height:100%;object-fit:cover;display:block}.cn-place-v2-fallback{height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#163f77,#146ef5);color:#fff;font-size:50px;font-weight:900}
.cn-place-v2-copy{padding:46px;display:flex;flex-direction:column;justify-content:center}.cn-place-v2-badges{display:flex;gap:7px;flex-wrap:wrap}.cn-place-v2-badges span{padding:7px 10px;border-radius:999px;background:#edf5ff;color:#146ef5;font-size:10px;font-weight:900}.cn-place-v2-badges .important{background:#fff0ef;color:#c9312a}.cn-place-v2-badges .featured{background:#f3ecff;color:#7134cf}
.cn-place-v2-copy h1{font-size:clamp(42px,4.5vw,66px);line-height:.98;letter-spacing:-.055em;margin:18px 0}.cn-place-v2-address{font-size:15px!important;color:#627287!important;margin:0 0 20px!important}.cn-place-hours{display:grid;gap:5px;padding:15px 17px;background:#f6f9fd;border:1px solid #e5ebf3;border-radius:14px;margin-bottom:20px}.cn-place-hours b{font-size:11px;color:#146ef5}.cn-place-hours span{font-size:13px;line-height:1.5;color:#4e5f74}
.cn-place-v2-actions{display:flex;gap:8px;flex-wrap:wrap}.cn-place-v2-actions a{padding:12px 15px;border-radius:11px;font-size:12px;font-weight:900}.cn-place-v2-actions .call{border:1px solid #bcd2ff;color:#146ef5}.cn-place-v2-actions .wa{background:#0a9f63;color:#fff}.cn-place-v2-actions .map{background:#14233a;color:#fff}
.cn-place-v2-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;margin-top:26px}.cn-place-v2-panel,.cn-place-v2-info{background:#fff;border:1px solid #dde5ee;border-radius:22px;padding:28px}.cn-place-v2-panel+.cn-place-v2-panel{margin-top:20px}.cn-place-v2-panel h2,.cn-place-v2-info h2{font-size:28px;letter-spacing:-.035em;margin:7px 0 18px}
.cn-place-v2-info{position:sticky;top:94px}.cn-place-v2-info>div{padding:13px 0;border-bottom:1px solid #edf1f5;display:grid;gap:4px}.cn-place-v2-info small{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#8b98a9;font-weight:900}.cn-place-v2-info b{font-size:13px;color:#25354a;line-height:1.5}.cn-place-v2-info b a{color:#146ef5}.cn-place-outlink,.cn-place-mapbtn{display:block;text-align:center;margin-top:12px;border-radius:11px;padding:12px;font-size:12px;font-weight:900}.cn-place-outlink{border:1px solid #cdd9e8;color:#146ef5}.cn-place-mapbtn{background:#14233a;color:#fff}
.cn-place-related-v2{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cn-place-related-v2 a{border:1px solid #e2e8f0;border-radius:15px;overflow:hidden;background:#fff;padding-bottom:12px}.cn-place-related-v2 a>div{aspect-ratio:1/1;background:#edf3f8;display:grid;place-items:center}.cn-place-related-v2 img{width:100%;height:100%;object-fit:cover}.cn-place-related-v2 b,.cn-place-related-v2 small{display:block;padding:0 12px}.cn-place-related-v2 b{font-size:13px;margin-top:10px;color:#17243a}.cn-place-related-v2 small{font-size:10px;color:#8190a2;margin-top:3px}

@media(max-width:980px){
 .cn-explore-hero-grid{grid-template-columns:1fr}.cn-explore-stat{display:none}
 .cn-explore-search{grid-template-columns:1fr 1fr}.cn-explore-searchbox{grid-column:1/-1}.cn-explore-search button{min-height:52px}
 .cn-explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cn-place-v2-hero{grid-template-columns:1fr}.cn-place-v2-media{max-height:none}.cn-place-v2-layout{grid-template-columns:1fr}.cn-place-v2-info{position:static}
}
@media(max-width:640px){
 .cn-explore-hero{padding:42px 0 34px}.cn-explore-hero h1{font-size:48px}.cn-explore-hero p{font-size:14px}.cn-explore-quick{gap:6px}.cn-explore-quick a{font-size:10px;padding:7px 9px}
 .cn-explore-search{grid-template-columns:1fr;border-radius:16px}.cn-explore-searchbox{grid-column:auto}.cn-explore-search>label{min-height:70px;border-right:0;border-bottom:1px solid #edf1f5}.cn-explore-search button{margin:9px}
 .cn-explore-results{padding-top:28px}.cn-explore-heading h2{font-size:31px}.cn-explore-grid{grid-template-columns:1fr}.cn-explore-actions{grid-template-columns:1fr 1fr}.cn-explore-actions .view{grid-column:1/-1}
 .cn-place-v2{padding-top:18px}.cn-place-v2-hero{border-radius:20px}.cn-place-v2-copy{padding:24px}.cn-place-v2-copy h1{font-size:42px}.cn-place-v2-layout{gap:16px}.cn-place-v2-panel,.cn-place-v2-info{padding:21px}.cn-place-related-v2{grid-template-columns:1fr 1fr}
}


/* =========================================================
   v0.25.1 — Explore cache-bust + defensive layout reset
   ========================================================= */
.cn-explore-hero *,
.cn-explore-search-wrap *,
.cn-explore-results *,
.cn-place-v2 *{
  box-sizing:border-box;
}
.cn-explore-quick a,
.cn-explore-filter-pills a,
.cn-explore-actions a,
.cn-place-v2-actions a,
.cn-place-outlink,
.cn-place-mapbtn{
  text-decoration:none !important;
}
.cn-explore-grid > .cn-explore-card{
  width:100%;
  min-width:0;
}
.cn-explore-media{
  width:100%;
  aspect-ratio:1 / 1 !important;
}
.cn-explore-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}


/* =========================================================
   v0.25.2 — Explore heading + title alignment correction
   ========================================================= */

/* Prevent the results heading from sitting too close to the section edge/header. */
.cn-explore-results{
  padding-top:56px !important;
}
.cn-explore-heading{
  margin-bottom:28px !important;
}
.cn-explore-heading > div{
  width:100%;
}
.cn-explore-heading h2{
  margin:8px 0 6px !important;
  line-height:1.08 !important;
  padding-top:2px;
}

/* Keep every listing title aligned consistently across a row. */
.cn-explore-card-top{
  min-height:72px;
}
.cn-explore-card h2{
  margin:8px 0 0 !important;
  min-height:50px;
  line-height:1.18 !important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.cn-explore-card h2 a{
  display:block;
  color:#142033 !important;
}

/* Keep location label and title spacing identical on every card. */
.cn-explore-location{
  display:block;
  min-height:15px;
  line-height:1.2;
}

/* Mobile spacing */
@media(max-width:640px){
  .cn-explore-results{
    padding-top:38px !important;
  }
  .cn-explore-card-top{
    min-height:auto;
  }
  .cn-explore-card h2{
    min-height:auto;
  }
}


/* =========================================================
   v0.25.3 — Explore image crop/alignment correction
   ========================================================= */

/*
 * The card media remains a true 1:1 square.
 * The uploaded artwork itself is no longer cropped.
 * This fixes titles/text embedded inside landscape demo artwork
 * being cut off at the left/right edges.
 */
.cn-explore-media{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  background:#f3f6fa !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.cn-explore-media img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
  transform:none !important;
}
.cn-explore-card:hover .cn-explore-media img{
  transform:none !important;
}

/* Apply the same rule on single Place page */
.cn-place-v2-media{
  aspect-ratio:1 / 1 !important;
  background:#f3f6fa !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.cn-place-v2-media img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
}

/* Related-place images also stay square without cropping embedded text */
.cn-place-related-v2 a>div{
  aspect-ratio:1 / 1 !important;
  background:#f3f6fa !important;
}
.cn-place-related-v2 img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fff !important;
}


/* =========================================================
   v0.26.0 — Premium Events public experience
   ========================================================= */
.cn-event-v2-hero{
  padding:56px 0 24px;
  background:
    radial-gradient(circle at 90% 18%,rgba(255,124,72,.12),transparent 26rem),
    radial-gradient(circle at 10% 100%,rgba(104,61,210,.10),transparent 24rem),
    linear-gradient(180deg,#fbfbff,#f8f7fc);
  border-bottom:1px solid #ebe8f0
}
.cn-event-v2-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:42px;align-items:end}
.cn-event-v2-kicker{font-size:10px;letter-spacing:.14em;font-weight:900;color:#6e34cc}
.cn-event-v2-hero h1{margin:12px 0 11px;font-size:clamp(44px,5vw,68px);line-height:.98;letter-spacing:-.055em;color:#142033}
.cn-event-v2-hero h1 em{font-style:normal;color:#6e34cc}
.cn-event-v2-hero p{max-width:760px;color:#667085;font-size:14px;line-height:1.65;margin:0}
.cn-event-v2-stat{padding:20px;border:1px solid #e3ddee;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(40,25,65,.05)}
.cn-event-v2-stat span,.cn-event-v2-stat small{display:block;color:#98a2b3;font-size:8px;font-weight:900;letter-spacing:.07em}
.cn-event-v2-stat strong{display:block;color:#142033;font-size:44px;line-height:1;margin:7px 0 4px}

.cn-event-v2-search{
  display:grid;grid-template-columns:minmax(270px,1.35fr) repeat(3,minmax(150px,.62fr)) auto;
  gap:0;margin-top:30px;padding:9px;border:1px solid #e2dfe8;border-radius:17px;background:#fff;box-shadow:0 15px 42px rgba(33,25,46,.07)
}
.cn-event-v2-search label{min-width:0;padding:7px 12px;border-right:1px solid #efedf2}
.cn-event-v2-search label>span{display:block;color:#98a2b3;font-size:7px;letter-spacing:.06em;font-weight:900;margin-bottom:2px}
.cn-event-v2-search .keyword{display:grid;grid-template-columns:24px 1fr;align-items:center}
.cn-event-v2-search .keyword>span{font-size:18px;margin:0}
.cn-event-v2-search input,.cn-event-v2-search select{
  width:100%;min-height:34px;border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;color:#344054
}
.cn-event-v2-search button{border:0;border-radius:11px;padding:0 17px;background:linear-gradient(90deg,#6933ca,#8d3dd4);color:#fff;font-weight:900}
.cn-event-v2-fastfilters{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.cn-event-v2-fastfilters a,.cn-event-v2-chips a{
  padding:7px 10px;border-radius:999px;border:1px solid #e3dfea;background:#fff;color:#5f6877;text-decoration:none;font-size:8px;font-weight:900
}
.cn-event-v2-fastfilters a.active{background:#142033;color:#fff;border-color:#142033}
.cn-event-v2-chips{display:flex;gap:6px;align-items:center;overflow:auto;margin-top:10px}
.cn-event-v2-chips>span{color:#98a2b3;font-size:8px;text-transform:uppercase;font-weight:900;margin-right:3px}
.cn-event-v2-chips a{white-space:nowrap}
.cn-event-v2-chips a:hover{background:#6e34cc;color:#fff;border-color:#6e34cc}

.cn-event-v2-results{padding:36px 0 64px;background:#f8f8fb}
.cn-event-v2-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.cn-event-v2-head h2{font-size:30px;letter-spacing:-.03em;margin:5px 0}
.cn-event-v2-head p{margin:0;color:#667085;font-size:10px}
.cn-event-v2-actions-head{display:flex;gap:7px;flex-wrap:wrap}
.cn-event-v2-actions-head a{min-height:38px;padding:0 12px;border-radius:10px;display:flex;align-items:center;text-decoration:none;font-size:9px;font-weight:900}
.cn-event-v2-actions-head .clear{background:#fff;border:1px solid #e1dde8;color:#667085}
.cn-event-v2-actions-head .post{background:#142033;color:#fff}

.cn-event-v2-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.cn-event-v2-card{
  display:flex;flex-direction:column;overflow:hidden;border:1px solid #e2dfe7;border-radius:19px;background:#fff;
  box-shadow:0 9px 28px rgba(32,25,44,.045);transition:.18s ease
}
.cn-event-v2-card:hover{transform:translateY(-3px);border-color:#d7c9e7;box-shadow:0 18px 40px rgba(35,24,51,.09)}
.cn-event-v2-card.is-featured{border-color:#d5c5ec}
.cn-event-v2-card.is-ended{opacity:.78}
.cn-event-v2-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f2eff6;display:block}
.cn-event-v2-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.cn-event-v2-card:hover .cn-event-v2-media img{transform:scale(1.02)}
.cn-event-v2-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#30225a,#8450c7)}
.cn-event-v2-fallback span{width:80px;height:80px;border-radius:25px;background:rgba(255,255,255,.15);display:grid;place-items:center;color:#fff;font-size:24px;font-weight:900}
.cn-event-v2-badges{position:absolute;left:12px;top:12px;right:12px;display:flex;gap:5px;flex-wrap:wrap;z-index:2}
.cn-event-v2-badges span{padding:6px 8px;border-radius:999px;color:#fff;font-size:7px;font-weight:900;box-shadow:0 4px 10px rgba(0,0,0,.08)}
.cn-event-v2-badges .status-upcoming{background:#1769e8}.cn-event-v2-badges .status-today{background:#f97316}.cn-event-v2-badges .status-live{background:#087443}.cn-event-v2-badges .status-ended{background:#667085}
.cn-event-v2-badges .featured{background:#7137bd}.cn-event-v2-badges .package{background:rgba(255,255,255,.95);color:#62407e}
.cn-event-v2-date{position:absolute;left:12px;bottom:12px;width:62px;height:68px;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(20,20,30,.14)}
.cn-event-v2-date strong{font-size:25px;line-height:1;color:#6e34cc}.cn-event-v2-date span{font-size:8px;font-weight:900;color:#6e34cc;margin-top:3px}

.cn-event-v2-card-body{padding:16px 17px;display:flex;flex-direction:column;flex:1}
.cn-event-v2-topmeta{display:flex;justify-content:space-between;gap:10px}.cn-event-v2-topmeta>span{font-size:8px;color:#6e34cc;text-transform:uppercase;font-weight:900;letter-spacing:.05em}.cn-event-v2-topmeta small{color:#98a2b3;font-size:8px}
.cn-event-v2-card h3{font-size:20px;line-height:1.16;letter-spacing:-.02em;margin:8px 0 8px;min-height:46px}.cn-event-v2-card h3 a{color:#142033}
.cn-event-v2-venue b{display:block;color:#344054;font-size:10px}.cn-event-v2-venue span{display:block;color:#98a2b3;font-size:8px;margin-top:3px}
.cn-event-v2-card-body>p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#667085;font-size:9px;line-height:1.5;min-height:28px;margin:10px 0 13px}
.cn-event-v2-card-foot{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}
.cn-event-v2-card-foot>div{padding:10px 11px;border:1px solid #ebe7ef;border-radius:11px;background:#faf9fc}
.cn-event-v2-card-foot small{display:block;color:#98a2b3;font-size:7px;font-weight:900}.cn-event-v2-card-foot strong{display:block;color:#344054;font-size:10px;line-height:1.35;margin-top:3px}.cn-event-v2-card-foot .countdown.live{background:#ecf8f1;border-color:#d3eadc}.cn-event-v2-card-foot .countdown.live strong{color:#087443}
.cn-event-v2-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px;border-top:1px solid #efedf2}
.cn-event-v2-card-actions a{min-height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#142033;color:#fff;text-decoration:none;font-size:8px;font-weight:900}
.cn-event-v2-card-actions .secondary{background:#f2edff;color:#6e34cc}
.cn-event-v2-empty{text-align:center;padding:58px 20px;border:1px dashed #d2cbdc;border-radius:18px;background:#fff}.cn-event-v2-empty>span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin:0 auto 12px;background:#f2edff;color:#6e34cc;font-size:21px}.cn-event-v2-empty h3{font-size:21px;margin:0 0 5px}.cn-event-v2-empty p{color:#667085;margin:0 0 15px}.cn-event-v2-empty a{display:inline-flex;padding:10px 13px;border-radius:9px;background:#6e34cc;color:#fff;text-decoration:none;font-weight:900}

.cn-event-v2-cta{padding:0 0 56px;background:#f8f8fb}.cn-event-v2-cta .cn-shell{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px 34px;border-radius:22px;background:radial-gradient(circle at 90% 20%,rgba(148,87,237,.28),transparent 18rem),linear-gradient(125deg,#24203d,#4d2b72);color:#fff}.cn-event-v2-cta span{font-size:9px;letter-spacing:.12em;color:#d6bcff;font-weight:900}.cn-event-v2-cta h2{color:#fff;font-size:29px;margin:6px 0}.cn-event-v2-cta p{color:#ddd5e6;margin:0;font-size:10px}.cn-event-v2-cta a{flex:0 0 auto;padding:13px 16px;border-radius:11px;background:#fff;color:#39265c;text-decoration:none;font-size:9px;font-weight:900}

/* Single event */
.cn-event-v2-profile{padding:20px 0 72px;background:#f7f8fb}
.cn-event-v2-breadcrumb{display:flex;gap:7px;align-items:center;padding:4px 0 13px;color:#98a2b3;font-size:8px}.cn-event-v2-breadcrumb a{color:#6e34cc;text-decoration:none}
.cn-event-v2-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(370px,.9fr);overflow:hidden;border:1px solid #e0dce7;border-radius:24px;background:#fff;box-shadow:0 14px 42px rgba(30,24,42,.06)}
.cn-event-v2-profile-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f1eef5}.cn-event-v2-profile-media img{width:100%;height:100%;object-fit:cover;display:block}.cn-event-v2-profile-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#30225a,#8450c7)}.cn-event-v2-profile-fallback span{color:#fff;font-size:34px;font-weight:900}
.cn-event-v2-profile-copy{padding:38px 34px;display:flex;flex-direction:column;justify-content:center}
.cn-event-v2-profile-date{display:flex;align-items:center;gap:12px}.cn-event-v2-profile-date>div{width:64px;height:72px;border-radius:15px;background:#f2edff;display:flex;flex-direction:column;align-items:center;justify-content:center}.cn-event-v2-profile-date strong{font-size:26px;line-height:1;color:#6e34cc}.cn-event-v2-profile-date span{font-size:8px;color:#6e34cc;font-weight:900}.cn-event-v2-profile-date p{margin:0}.cn-event-v2-profile-date p small,.cn-event-v2-profile-date p b{display:block}.cn-event-v2-profile-date p small{color:#98a2b3;font-size:9px}.cn-event-v2-profile-date p b{font-size:13px;color:#142033;margin-top:3px}
.cn-event-v2-profile-cat{margin-top:17px;color:#6e34cc;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.cn-event-v2-profile-copy h1{font-size:clamp(36px,4vw,52px);line-height:1.02;letter-spacing:-.045em;color:#142033;margin:8px 0 11px}
.cn-event-v2-profile-meta{display:flex;gap:10px;flex-wrap:wrap;color:#667085;font-size:9px}
.cn-event-v2-profile-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.cn-event-v2-profile-summary>div{padding:12px;border-radius:12px;background:#faf9fc;border:1px solid #ebe7ef}.cn-event-v2-profile-summary small{display:block;color:#98a2b3;font-size:7px;font-weight:900}.cn-event-v2-profile-summary strong{display:block;color:#344054;font-size:11px;margin-top:4px}
.cn-event-v2-profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:16px}.cn-event-v2-profile-actions a{min-height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:8px;font-weight:900}.cn-event-v2-profile-actions .call{background:#f2edff;color:#6e34cc}.cn-event-v2-profile-actions .wa{background:#087443;color:#fff}.cn-event-v2-profile-actions .map{grid-column:1/-1;background:#142033;color:#fff}

.cn-event-v2-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr);gap:18px;margin-top:18px;align-items:start}
.cn-event-v2-panel,.cn-event-v2-info{background:#fff;border:1px solid #e0dfe6;border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(30,25,40,.03)}
.cn-event-v2-panel+.cn-event-v2-panel{margin-top:15px}.cn-event-v2-panel .eyebrow,.cn-event-v2-info .eyebrow{display:block;color:#6e34cc;font-size:8px;letter-spacing:.11em;font-weight:900}.cn-event-v2-panel h2,.cn-event-v2-info h2{font-size:22px;letter-spacing:-.02em;margin:4px 0 14px}
.cn-event-v2-schedule{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cn-event-v2-schedule>div{padding:13px;border:1px solid #e7e3eb;border-radius:12px;background:#faf9fc}.cn-event-v2-schedule small{display:block;color:#98a2b3;font-size:7px;font-weight:900}.cn-event-v2-schedule strong{display:block;color:#344054;font-size:10px;line-height:1.45;margin-top:4px}

.cn-event-v2-tickets{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.cn-event-v2-tickets>div{padding:15px;border:1px solid #e4dced;border-radius:13px;background:linear-gradient(135deg,#fbf8ff,#fff)}.cn-event-v2-tickets span,.cn-event-v2-tickets strong,.cn-event-v2-tickets small{display:block}.cn-event-v2-tickets span{font-size:9px;color:#6e34cc;font-weight:900;text-transform:uppercase}.cn-event-v2-tickets strong{font-size:18px;color:#142033;margin-top:5px}.cn-event-v2-tickets small{font-size:8px;color:#98a2b3;margin-top:5px;line-height:1.4}.cn-event-v2-ticket-single{padding:16px;border:1px solid #e4dced;border-radius:13px;background:#faf8ff}.cn-event-v2-ticket-single span{display:block;color:#6e34cc;font-size:8px;font-weight:900}.cn-event-v2-ticket-single strong{display:block;font-size:20px;color:#142033;margin-top:5px}.cn-event-v2-ticket-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.cn-event-v2-ticket-actions a{padding:10px 12px;border-radius:9px;background:#087443;color:#fff;text-decoration:none;font-size:8px;font-weight:900}.cn-event-v2-ticket-actions .secondary{background:#f2edff;color:#6e34cc}

.cn-event-v2-related{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cn-event-v2-related a{text-decoration:none;color:inherit}.cn-event-v2-related .media{aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:#f1eef5;display:grid;place-items:center}.cn-event-v2-related img{width:100%;height:100%;object-fit:cover}.cn-event-v2-related .media span{color:#6e34cc;font-weight:900}.cn-event-v2-related b{display:block;color:#142033;font-size:10px;margin-top:7px}.cn-event-v2-related small{display:block;color:#98a2b3;font-size:8px;margin-top:2px}
.cn-event-v2-info{position:sticky;top:18px}.cn-event-v2-info>div{padding:9px 0;border-top:1px solid #efedf2}.cn-event-v2-info>div small{display:block;color:#98a2b3;font-size:7px;text-transform:uppercase;font-weight:900}.cn-event-v2-info>div strong{display:block;color:#344054;font-size:9px;margin-top:3px}.cn-event-v2-info a{color:#6e34cc;text-decoration:none}.cn-event-v2-info-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px;padding-top:12px!important}.cn-event-v2-info-actions a{min-height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:900}.cn-event-v2-info-actions .wa{background:#087443;color:#fff}.cn-event-v2-info-actions .map{background:#142033;color:#fff}.cn-event-v2-ended-note{margin-top:12px!important;padding:10px!important;border:1px solid #f0d2cf!important;border-radius:10px;background:#fff3f2;color:#a62c26;font-size:8px;line-height:1.5}
.cn-event-v2-mobile-actions{display:none}

@media(max-width:1050px){
  .cn-event-v2-search{grid-template-columns:1fr 1fr 1fr}.cn-event-v2-search .keyword{grid-column:1/-1}.cn-event-v2-search button{min-height:44px}
  .cn-event-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .cn-event-v2-hero-grid{grid-template-columns:1fr}.cn-event-v2-stat{display:none}
  .cn-event-v2-profile-hero{grid-template-columns:1fr}.cn-event-v2-layout{grid-template-columns:1fr}.cn-event-v2-info{position:static}
}
@media(max-width:700px){
  .cn-event-v2-hero h1{font-size:43px}.cn-event-v2-search{grid-template-columns:1fr 1fr}.cn-event-v2-search .keyword{grid-column:1/-1}
  .cn-event-v2-head{align-items:flex-start;flex-direction:column}.cn-event-v2-grid{grid-template-columns:1fr}
  .cn-event-v2-cta .cn-shell{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .cn-event-v2-search{grid-template-columns:1fr}.cn-event-v2-search .keyword{grid-column:1}.cn-event-v2-search label{border-right:0;border-bottom:1px solid #efedf2}
  .cn-event-v2-profile-copy{padding:25px 20px}.cn-event-v2-profile-copy h1{font-size:31px}
  .cn-event-v2-schedule{grid-template-columns:1fr}.cn-event-v2-tickets{grid-template-columns:1fr}.cn-event-v2-related{grid-template-columns:1fr 1fr}
  .cn-event-v2-mobile-actions{display:flex}
}


/* =========================================================
   v0.27.0 — Global visual system + homepage polish
   ========================================================= */
:root{
  --cn-surface:#ffffff;
  --cn-soft:#f6f8fc;
  --cn-soft-blue:#eef5ff;
  --cn-ink:#142033;
  --cn-blue:#1769e8;
  --cn-blue-2:#0d56c7;
  --cn-green:#087443;
  --cn-orange:#f97316;
  --cn-purple:#6e34cc;
  --cn-radius:18px;
  --cn-shadow-soft:0 10px 30px rgba(20,32,51,.055);
  --cn-shadow-lift:0 18px 42px rgba(20,32,51,.10);
}
body.cn-theme{background:#f7f9fc;color:var(--cn-ink)}
.cn-shell{width:min(1180px,calc(100% - 36px))}

/* Header: clearer navigation and stronger conversion action */
.cn-site-header{background:rgba(255,255,255,.96);border-bottom:1px solid #e8edf4;box-shadow:0 5px 20px rgba(20,32,51,.035);backdrop-filter:blur(12px)}
.cn-header-inner{min-height:72px}
.cn-brand img{max-height:48px;width:auto}
.cn-nav{gap:4px;align-items:center}
.cn-nav>a:not(.cn-header-cta),.cn-nav .menu-item>a{padding:9px 10px;border-radius:9px;transition:.18s ease}
.cn-nav>a:not(.cn-header-cta):hover,.cn-nav .menu-item>a:hover{background:#f1f5fb;color:var(--cn-blue)}
.cn-header-cta{margin-left:8px!important;padding:11px 16px!important;border-radius:11px!important;background:linear-gradient(135deg,var(--cn-blue),#3a7cf0)!important;color:#fff!important;box-shadow:0 8px 18px rgba(23,105,232,.20)}

/* Homepage hero */
.home .cn-hero-v5{position:relative;overflow:hidden;padding:66px 0 58px;background:radial-gradient(circle at 85% 12%,rgba(73,132,246,.13),transparent 28rem),linear-gradient(180deg,#f7faff 0%,#f2f6fc 100%)}
.home .cn-hero-v5:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;left:-220px;top:70px;background:rgba(23,105,232,.055)}
.home .cn-hero-grid{position:relative;z-index:1;gap:46px;align-items:center}
.home .cn-hero-copy h1{max-width:720px;font-size:clamp(46px,5.7vw,74px);line-height:.99;letter-spacing:-.055em;margin:15px 0 19px}
.home .cn-hero-copy h1 span{color:var(--cn-blue)}
.home .cn-hero-copy>p{max-width:690px;font-size:16px;line-height:1.65;color:#5e6d82}
.home .cn-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;background:#eaf2ff;color:var(--cn-blue);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.home .cn-kicker i{width:7px;height:7px;border-radius:50%;background:#17a66a;box-shadow:0 0 0 4px rgba(23,166,106,.10)}
.home .cn-ai-search{margin-top:25px;max-width:720px;padding:6px;border:1px solid #dbe4f0;border-radius:16px;background:#fff;box-shadow:0 14px 34px rgba(20,32,51,.075)}
.home .cn-ai-search input{min-height:48px;font-size:14px}
.home .cn-ai-search button{min-width:108px;min-height:48px;border-radius:11px;background:linear-gradient(135deg,var(--cn-blue),#397df1);box-shadow:0 7px 16px rgba(23,105,232,.18)}
.home .cn-search-hints{margin-top:12px;gap:8px}.home .cn-search-hints a{padding:6px 9px;border-radius:999px;background:#fff;border:1px solid #e1e7f0}
.home .cn-ai-entry{max-width:720px;margin-top:18px;border:1px solid #dfe7f2;background:rgba(255,255,255,.72);border-radius:14px}
.home .cn-local-board{border:1px solid #dbe4f0;border-radius:24px;background:#fff;box-shadow:0 24px 60px rgba(25,49,86,.11);padding:24px}
.home .cn-local-board h2{font-size:26px;letter-spacing:-.035em;margin:13px 0 18px}
.home .cn-board-stats{gap:8px}.home .cn-board-stats a{border:1px solid #e8edf4;border-radius:14px;background:#fafcff;transition:.18s ease}.home .cn-board-stats a:hover{transform:translateY(-2px);border-color:#cadcf7;background:#f5f9ff}
.home .cn-board-highlight{margin-top:12px;border-radius:14px;background:linear-gradient(135deg,#14233f,#2456a1)}

/* Compact colourful category navigation */
.home .cn-quicknav{padding:20px 0 10px;background:#fff;border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6}
.home .cn-category-grid{gap:9px}
.home .cn-category-card{min-height:86px;border:1px solid #e4eaf2;border-radius:15px;background:#fff;box-shadow:0 5px 16px rgba(20,32,51,.025);transition:.18s ease}
.home .cn-category-card:hover{transform:translateY(-3px);box-shadow:var(--cn-shadow-soft);border-color:#cfdaea}
.home .cn-category-card:nth-child(1) .cn-category-icon{background:#eaf2ff;color:#1769e8}
.home .cn-category-card:nth-child(2) .cn-category-icon{background:#eaf8f1;color:#087443}
.home .cn-category-card:nth-child(3) .cn-category-icon{background:#fff2e8;color:#d95f0b}
.home .cn-category-card:nth-child(4) .cn-category-icon{background:#f2edff;color:#6e34cc}
.home .cn-category-card:nth-child(5) .cn-category-icon{background:#eaf7fb;color:#087c99}
.home .cn-category-card:nth-child(6) .cn-category-icon{background:#fff4d9;color:#a66b00}
.home .cn-category-icon{border-radius:13px}

/* Homepage rhythm — less unused white space */
.home .cn-section{padding:54px 0}
.home .cn-white-section{background:#fff}
.home .cn-section-head{margin-bottom:22px;align-items:end}
.home .cn-section-head h2,.home .cn-mini-head h2{font-size:clamp(27px,3vw,36px);letter-spacing:-.035em;margin:4px 0 3px}
.home .cn-section-head p{margin:0;color:#718096;font-size:12px}
.home .cn-eyebrow{font-size:8px;letter-spacing:.13em;font-weight:900;color:var(--cn-blue)}
.home .cn-link,.home .cn-mini-head>a{display:inline-flex;align-items:center;gap:5px;padding:9px 11px;border-radius:9px;background:#eef5ff;color:var(--cn-blue);font-size:9px;font-weight:900}

/* Consistent homepage listing cards. Image area is ALWAYS true 1:1. */
.home .cn-grid-3,.home .cn-grid-4{gap:16px;align-items:stretch}
.home .cn-card{height:100%;overflow:hidden;border:1px solid #e1e7ef;border-radius:18px;background:#fff;box-shadow:var(--cn-shadow-soft);transition:.2s ease}
.home .cn-card:hover{transform:translateY(-4px);box-shadow:var(--cn-shadow-lift);border-color:#cfdae8}
.home .cn-card>a{height:100%;display:flex;flex-direction:column}
.home .cn-card-media{position:relative;width:100%;aspect-ratio:1/1;height:auto!important;min-height:0!important;overflow:hidden;background:#eef3f8}
.home .cn-card-media img{display:block;width:100%;height:100%;object-fit:cover;transform:none!important;filter:none!important}
.home .cn-card:hover .cn-card-media img{transform:none!important}
.home .cn-card-body{padding:16px 17px 17px;display:flex;flex-direction:column;flex:1}
.home .cn-card-body h3{font-size:18px;line-height:1.2;letter-spacing:-.02em;margin:7px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home .cn-meta,.home .cn-location-line,.home .cn-property-facts{font-size:9px;color:#7b8798}
.home .cn-card-link{margin-top:auto;padding-top:11px;color:var(--cn-blue);font-size:9px;font-weight:900}
.home .cn-badge,.home .cn-verified-badge,.home .cn-time-badge{box-shadow:0 5px 14px rgba(20,32,51,.10);backdrop-filter:blur(6px)}
.home .cn-price{margin-top:auto;padding-top:11px;font-size:18px;color:#142033;font-weight:900}
.home .cn-price small{font-size:9px;color:#8a96a7;font-weight:700}
.home .cn-promo-section{background:linear-gradient(180deg,#f7f9fc,#f3f6fb)}
.home .cn-promo-card{border-color:#dce5f0}

/* Events + jobs: denser, more scannable */
.home .cn-split-sections{gap:18px}
.home .cn-half{padding:22px;border:1px solid #e2e8f0;border-radius:19px;background:#fff;box-shadow:0 8px 25px rgba(20,32,51,.035)}
.home .cn-mini-head{margin-bottom:13px}
.home .cn-event-row,.home .cn-job-row{min-height:72px;border-radius:12px;border:1px solid transparent;padding:10px;transition:.16s ease}
.home .cn-event-row:hover,.home .cn-job-row:hover{background:#f7faff;border-color:#e0e8f4}
.home .cn-date-tile{border-radius:11px;background:#f2edff;color:var(--cn-purple)}
.home .cn-job-icon{border-radius:11px;background:#eaf2ff;color:var(--cn-blue)}
.home .cn-job-type{border-radius:999px;background:#edf7f2;color:#087443;padding:6px 8px}

/* Discovery and conversion areas */
.home .cn-discover-v5{border-radius:24px;padding:38px;background:radial-gradient(circle at 90% 15%,rgba(71,132,246,.16),transparent 22rem),linear-gradient(135deg,#f0f6ff,#fff);border:1px solid #dce7f5;box-shadow:var(--cn-shadow-soft)}
.home .cn-discover-v5 h2{font-size:clamp(31px,4vw,46px);letter-spacing:-.045em}
.home .cn-discover-map{border:1px solid #dbe5f2;box-shadow:0 12px 30px rgba(20,32,51,.07)}
.home .cn-cta{padding:0 0 58px;background:#f7f9fc}
.home .cn-cta-inner{border-radius:23px;padding:32px 36px;background:radial-gradient(circle at 86% 20%,rgba(66,127,244,.28),transparent 18rem),linear-gradient(125deg,#14233f,#244a88);box-shadow:0 18px 44px rgba(20,35,63,.16)}
.home .cn-cta-inner h2{font-size:30px;color:#fff;margin:6px 0}.home .cn-cta-inner p{color:#d9e3f3;margin:0}.home .cn-cta-inner>div>span{color:#9bc0ff;font-size:8px;font-weight:900;letter-spacing:.12em}
.home .cn-cta-inner>a{padding:13px 17px;border-radius:11px;background:#fff;color:#173c76;font-size:9px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.10)}

/* Shared button / filter polish without changing module logic */
.cn-directory-filter button,.cn-event-v2-search button,.cn-job-v2-search button,.cn-place-v2-search button,.cn-promo-v2-search button,.cn-property-v2-search button{border-radius:10px;box-shadow:0 6px 15px rgba(20,32,51,.07)}
.cn-pagination .page-numbers{transition:.16s ease}.cn-pagination .page-numbers:hover{border-color:#bfd3f2;color:var(--cn-blue)}

@media(max-width:1050px){
  .home .cn-hero-grid{gap:28px}
  .home .cn-category-grid{grid-template-columns:repeat(3,1fr)}
  .home .cn-grid-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
  .home .cn-hero-v5{padding:42px 0}.home .cn-hero-grid{grid-template-columns:1fr}.home .cn-local-board{max-width:none}
  .home .cn-section{padding:42px 0}.home .cn-split-sections{grid-template-columns:1fr}.home .cn-discover-v5{grid-template-columns:1fr;padding:28px}
  .home .cn-cta-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:640px){
  .cn-shell{width:min(100% - 24px,1180px)}
  .home .cn-hero-v5{padding:32px 0 34px}.home .cn-hero-copy h1{font-size:43px}.home .cn-hero-copy>p{font-size:14px}
  .home .cn-ai-search{border-radius:13px}.home .cn-ai-search button{min-width:82px}.home .cn-search-hints{align-items:flex-start}
  .home .cn-local-board{padding:18px;border-radius:19px}.home .cn-board-stats{grid-template-columns:1fr 1fr}
  .home .cn-category-grid{grid-template-columns:1fr 1fr}.home .cn-category-card{min-height:80px;padding:11px}.home .cn-category-card small{display:none}
  .home .cn-section{padding:36px 0}.home .cn-section-head{align-items:flex-start;gap:13px;flex-direction:column}
  .home .cn-grid-3,.home .cn-grid-4{grid-template-columns:1fr 1fr;gap:10px}.home .cn-card{border-radius:14px}.home .cn-card-body{padding:12px}.home .cn-card-body h3{font-size:15px}.home .cn-card-link{padding-top:8px}
  .home .cn-half{padding:15px}.home .cn-job-type{display:none}.home .cn-discover-v5{padding:23px;border-radius:19px}.home .cn-discover-map{min-height:210px}
  .home .cn-cta{padding-bottom:34px}.home .cn-cta-inner{padding:25px 22px;border-radius:19px}.home .cn-cta-inner h2{font-size:25px}
}
@media(max-width:430px){
  .home .cn-grid-3,.home .cn-grid-4{grid-template-columns:1fr}
  .home .cn-category-grid{grid-template-columns:1fr 1fr}
}


/* =========================================================
   v0.28.0 — Homepage quality & data-integration refinement
   ========================================================= */

/* More compact first impression without changing the content hierarchy. */
.home .cn-hero-v5{padding:52px 0 46px}
.home .cn-hero-grid{gap:38px}
.home .cn-hero-copy h1{font-size:clamp(44px,5.2vw,68px);margin:13px 0 16px}
.home .cn-hero-copy>p{font-size:15px;line-height:1.58}
.home .cn-ai-search{margin-top:21px}
.home .cn-ai-entry{margin-top:14px}

/* The v0.27 white Local Board inherited white text from the original dark board.
   These explicit colours restore readable contrast. */
.home .cn-local-board{color:#142033}
.home .cn-board-top{color:#8190a5}
.home .cn-board-top b{color:#60718a}
.home .cn-local-board h2{color:#142033}
.home .cn-board-stats a{color:#142033}
.home .cn-board-stats strong{color:#142033}
.home .cn-board-stats small{color:#718096}
.home .cn-mini-icon{background:#203a63;color:#fff}
.home .cn-board-highlight{color:#fff}
.home .cn-board-highlight small{color:#75aaff}
.home .cn-board-highlight b{color:#fff}
.home .cn-board-highlight em{color:#fff}

/* Clean placeholder for listings that do not yet have a real uploaded image.
   Demo artwork is intentionally hidden on the homepage. */
.home .cn-home-media-fallback{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:12px;text-align:center;padding:28px;color:#29405f;
  background:
    radial-gradient(circle at 82% 18%,rgba(23,105,232,.10),transparent 30%),
    linear-gradient(145deg,#f4f8fd,#eaf1f9);
}
.home .cn-home-media-fallback span{
  width:62px;height:62px;border-radius:18px;display:grid;place-items:center;
  background:#fff;box-shadow:0 10px 26px rgba(35,59,91,.10)
}
.home .cn-home-media-fallback svg{
  width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round
}
.home .cn-home-media-fallback b{
  font-size:13px;line-height:1.35;letter-spacing:-.01em;color:#526174
}
.home .cn-home-media-fallback.business span{color:#087443}
.home .cn-home-media-fallback.property span{color:#1769e8}
.home .cn-home-media-fallback.promotion span{color:#6e34cc}

/* Keep every homepage media area strict 1:1 while ensuring overlay badges never
   collide with placeholder content. */
.home .cn-card-media{isolation:isolate}
.home .cn-card-media>.cn-badge,
.home .cn-card-media>.cn-verified-badge,
.home .cn-card-media>.cn-time-badge{z-index:3}

/* Stronger content geometry. Titles no longer visually collide with old artwork,
   and text cards keep equal heights. */
.home .cn-card-body{min-height:154px}
.home .cn-business-card .cn-card-body{min-height:140px}
.home .cn-promo-card .cn-card-body{min-height:164px}
.home .cn-property-card .cn-card-body{min-height:164px}
.home .cn-promo-business{
  color:#6e34cc;font-size:9px;font-weight:900;letter-spacing:.07em;
  text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.home .cn-card-body h3{max-width:100%;overflow-wrap:anywhere}
.home .cn-property-facts{min-height:18px}
.home .cn-location-line{margin-top:auto;padding-top:8px}

/* Section balance */
.home .cn-section{padding:48px 0}
.home .cn-section-head{margin-bottom:19px}
.home .cn-quicknav{padding:16px 0}
.home .cn-category-card{min-height:80px}

/* Events/jobs: lock the primary text column so long names cannot push metadata. */
.home .cn-event-row>span:nth-child(2),
.home .cn-job-row>span:nth-child(2){min-width:0}
.home .cn-event-row>span:nth-child(2)>b,
.home .cn-job-row>span:nth-child(2)>b{
  display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.home .cn-event-row>span:nth-child(2)>small,
.home .cn-job-row>span:nth-child(2)>small{
  display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.home .cn-job-type{white-space:nowrap}

/* Slightly stronger action hierarchy. */
.home .cn-link,.home .cn-mini-head>a{transition:.16s ease}
.home .cn-link:hover,.home .cn-mini-head>a:hover{background:#ddeaff;transform:translateY(-1px)}
.home .cn-card-link{transition:.16s ease}
.home .cn-card:hover .cn-card-link{color:#0f55bb}

/* Tablet/mobile tightening */
@media(max-width:800px){
  .home .cn-hero-v5{padding:38px 0}
  .home .cn-hero-copy h1{font-size:clamp(41px,8vw,58px)}
  .home .cn-card-body{min-height:145px}
}
@media(max-width:640px){
  .home .cn-hero-v5{padding:29px 0 31px}
  .home .cn-hero-copy h1{font-size:40px}
  .home .cn-section{padding:33px 0}
  .home .cn-card-body,
  .home .cn-business-card .cn-card-body,
  .home .cn-promo-card .cn-card-body,
  .home .cn-property-card .cn-card-body{min-height:0}
  .home .cn-home-media-fallback span{width:52px;height:52px;border-radius:15px}
  .home .cn-home-media-fallback svg{width:25px;height:25px}
}


/* =========================================================
   v0.29.0 — Homepage events slider + quick date filters
   ========================================================= */

.home .cn-home-lists-v29{align-items:stretch}
.home .cn-events-panel{overflow:hidden}
.home .cn-events-head{margin-bottom:14px}
.home .cn-events-head p,
.home .cn-half .cn-mini-head p{
  margin:7px 0 0;color:#718096;font-size:12px;line-height:1.45
}

.home .cn-event-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin:0 0 16px
}
.home .cn-event-filters{
  display:flex;gap:7px;align-items:center;flex-wrap:wrap
}
.home .cn-event-filter{
  appearance:none;border:1px solid #dce5f0;background:#f8fbff;color:#526174;
  min-height:34px;padding:0 13px;border-radius:999px;font-size:10px;font-weight:800;
  cursor:pointer;transition:.16s ease
}
.home .cn-event-filter:hover{
  border-color:#b9cff0;background:#eef5ff;color:#1769e8
}
.home .cn-event-filter.is-active{
  background:#1769e8;border-color:#1769e8;color:#fff;
  box-shadow:0 7px 18px rgba(23,105,232,.18)
}
.home .cn-event-nav{display:flex;gap:7px}
.home .cn-event-arrow{
  appearance:none;width:34px;height:34px;border-radius:11px;border:1px solid #dce5f0;
  background:#fff;color:#172033;font-size:20px;line-height:1;cursor:pointer;
  transition:.16s ease
}
.home .cn-event-arrow:hover{background:#eef5ff;border-color:#bfd4f4;color:#1769e8}
.home .cn-event-arrow:disabled{opacity:.35;cursor:not-allowed}

.home .cn-event-slider{
  overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
  -ms-overflow-style:none;border-radius:16px
}
.home .cn-event-slider::-webkit-scrollbar{display:none}
.home .cn-event-track{
  display:flex;gap:12px;align-items:stretch
}
.home .cn-event-slide{
  flex:0 0 calc(50% - 6px);scroll-snap-align:start;min-width:0
}
.home .cn-event-slide[hidden]{display:none!important}
.home .cn-event-slide>a{
  height:100%;min-height:230px;display:flex;flex-direction:column;text-decoration:none;
  color:#172033;border:1px solid #e1e7f0;border-radius:17px;background:#fff;
  padding:18px;transition:.18s ease;box-shadow:0 8px 24px rgba(31,50,79,.045)
}
.home .cn-event-slide>a:hover{
  transform:translateY(-2px);border-color:#c7d9f2;
  box-shadow:0 14px 30px rgba(31,50,79,.08)
}
.home .cn-event-slide-date{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px
}
.home .cn-event-slide .cn-date-tile{
  width:61px;height:61px;flex:0 0 61px;border-radius:15px
}
.home .cn-event-live-chip{
  display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 9px;
  border-radius:999px;background:#e9f8f0;color:#087443;font-size:9px;font-weight:900;
  letter-spacing:.05em
}
.home .cn-event-slide-copy{padding-top:17px;min-width:0}
.home .cn-event-slide-copy h3{
  margin:0;color:#172033;font-size:18px;line-height:1.24;letter-spacing:-.02em
}
.home .cn-event-slide-copy p{
  margin:8px 0 0;color:#718096;font-size:11px;line-height:1.5
}
.home .cn-event-slide-copy small{
  display:block;margin-top:8px;color:#1769e8;font-size:10px;font-weight:800
}
.home .cn-event-open{
  display:block;margin-top:auto;padding-top:18px;color:#1769e8;font-size:10px;font-weight:900
}
.home .cn-event-empty-filter{
  padding:22px;border-radius:14px;background:#f7f9fc;border:1px dashed #dce5f0;
  color:#718096;font-size:12px;text-align:center
}

/* Jobs remain visually aligned with the slightly richer events panel. */
.home .cn-home-lists-v29 .cn-half{min-height:490px}
.home .cn-home-lists-v29 .cn-job-list{margin-top:20px}
.home .cn-home-lists-v29 .cn-job-row{min-height:86px}

/* Responsive */
@media(max-width:1100px){
  .home .cn-event-slide{flex-basis:72%}
}
@media(max-width:800px){
  .home .cn-home-lists-v29 .cn-half{min-height:0}
  .home .cn-event-slide{flex-basis:78%}
}
@media(max-width:560px){
  .home .cn-event-toolbar{align-items:flex-start;flex-direction:column}
  .home .cn-event-slide{flex-basis:92%}
  .home .cn-event-nav{align-self:flex-end}
  .home .cn-event-filter{padding:0 11px}
}


/* =========================================================
   v0.30.0 — Event slider image upgrade
   ========================================================= */

.home .cn-event-slide>a{
  padding:0;
  overflow:hidden;
}

.home .cn-event-slide-media{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#edf3fa;
  border-bottom:1px solid #e2e8f0;
}

.home .cn-event-slide-media>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.home .cn-event-image-fallback{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  color:#526174;
  background:
    radial-gradient(circle at 82% 18%,rgba(112,49,206,.11),transparent 31%),
    linear-gradient(145deg,#f6f2ff,#eef3fb);
}

.home .cn-event-image-fallback span{
  width:62px;
  height:62px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:#fff;
  color:#7031ce;
  box-shadow:0 10px 26px rgba(44,42,84,.10);
}

.home .cn-event-image-fallback svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.home .cn-event-image-fallback b{
  color:#526174;
  font-size:13px;
  line-height:1.35;
}

.home .cn-event-slide-date{
  position:absolute;
  top:14px;
  left:14px;
  right:14px;
  z-index:3;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
}

.home .cn-event-slide .cn-date-tile{
  width:61px;
  height:61px;
  flex:0 0 61px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.74);
  box-shadow:0 8px 22px rgba(23,32,51,.12);
  backdrop-filter:blur(8px);
}

.home .cn-event-live-chip{
  background:rgba(8,116,67,.94);
  color:#fff;
  box-shadow:0 8px 20px rgba(8,116,67,.16);
}

.home .cn-event-slide-copy{
  padding:17px 18px 0;
}

.home .cn-event-open{
  padding:18px;
  margin-top:auto;
}

.home .cn-event-slide>a{
  min-height:0;
}

@media(max-width:560px){
  .home .cn-event-slide .cn-date-tile{
    width:56px;
    height:56px;
    flex-basis:56px;
  }
  .home .cn-event-slide-copy{
    padding:15px 16px 0;
  }
  .home .cn-event-open{
    padding:16px;
  }
}


/* =========================================================
   v0.31.0 — Homepage Smart Search
   ========================================================= */
.home .cn-ai-search-live{margin-top:22px;position:relative;z-index:6}
.home .cn-ai-search-box{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;
  padding:8px 8px 8px 14px;border-radius:16px;background:#fff;
  box-shadow:0 16px 38px rgba(6,26,58,.18)
}
.home .cn-ai-search-box .cn-search-symbol{color:#70839b;font-size:19px}
.home .cn-ai-search-box input{
  width:100%;min-width:0;min-height:42px;padding:0 3px!important;border:0!important;
  outline:0!important;box-shadow:none!important;background:transparent!important;color:#172033;font-size:13px
}
.home .cn-ai-search-box input::placeholder{color:#96a3b5}
.home .cn-ai-search-box button{
  min-height:42px;padding:0 19px;border:0;border-radius:11px;background:#1769e8;color:#fff;
  font-size:11px;font-weight:900;cursor:pointer;transition:.16s ease
}
.home .cn-ai-search-box button:hover{background:#1058c3;transform:translateY(-1px)}
.home .cn-ai-search-box button:disabled{opacity:.6;cursor:wait;transform:none}

.home .cn-ai-quick-prompts{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px}
.home .cn-ai-quick-prompts>b{color:#a9c3e8;font-size:9px}
.home .cn-ai-quick-prompts button{
  appearance:none;min-height:28px;padding:0 10px;border:1px solid rgba(255,255,255,.18);
  border-radius:999px;background:rgba(255,255,255,.08);color:#dfeaff;font-size:9px;font-weight:800;
  cursor:pointer;transition:.15s ease
}
.home .cn-ai-quick-prompts button:hover{background:rgba(255,255,255,.16);color:#fff}

.home .cn-ai-entry-live{margin-top:12px}
.home .cn-ai-entry-live em{background:#e8f8ef!important;color:#087443!important}

.home .cn-ai-status{
  margin-top:12px;padding:11px 13px;border-radius:11px;background:rgba(255,255,255,.10);
  color:#fff;font-size:11px;line-height:1.45
}
.home .cn-ai-status.error{background:#fff0ef;color:#b42318}

.home .cn-ai-results{
  margin-top:14px;padding:18px;border-radius:18px;background:#fff;color:#172033;
  box-shadow:0 20px 46px rgba(6,22,48,.22)
}
.home .cn-ai-results-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:14px}
.home .cn-ai-results-head span{display:block;color:#1769e8;font-size:8px;font-weight:900;letter-spacing:.1em}
.home .cn-ai-results-head h3{margin:4px 0 0;color:#172033;font-size:18px;line-height:1.25}
.home .cn-ai-clear{
  min-height:31px;padding:0 10px;border:1px solid #dce5f0;border-radius:10px;background:#f8fbff;
  color:#526174;font-size:9px;font-weight:900;cursor:pointer
}

.home .cn-ai-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.home .cn-ai-result-card{
  min-width:0;border:1px solid #e1e7f0;border-radius:15px;overflow:hidden;background:#fff;
  box-shadow:0 6px 18px rgba(29,48,76,.04);transition:.17s ease
}
.home .cn-ai-result-card:hover{transform:translateY(-2px);border-color:#c8d9f2;box-shadow:0 12px 28px rgba(29,48,76,.08)}
.home .cn-ai-result-media{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:#edf3fa}
.home .cn-ai-result-media img{width:100%;height:100%;object-fit:cover;display:block}
.home .cn-ai-card-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#eff4fb,#e7eef7)}
.home .cn-ai-card-fallback span{
  width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#fff;color:#1769e8;
  font-weight:900;box-shadow:0 8px 22px rgba(29,48,76,.08)
}
.home .cn-ai-type-badge,.home .cn-ai-featured-badge{
  position:absolute;top:10px;display:inline-flex;align-items:center;min-height:24px;padding:0 8px;
  border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.03em
}
.home .cn-ai-type-badge{left:10px;background:rgba(255,255,255,.95);color:#172033}
.home .cn-ai-featured-badge{right:10px;background:#fff1c8;color:#8c5b00}
.home .cn-ai-result-body{padding:13px}
.home .cn-ai-result-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:7px}
.home .cn-ai-result-meta span{
  display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;
  background:#f2f6fb;color:#617189;font-size:8px;font-weight:800
}
.home .cn-ai-result-body h4{margin:0;font-size:15px;line-height:1.27}
.home .cn-ai-result-body h4 a{color:#172033;text-decoration:none}
.home .cn-ai-result-facts{margin:7px 0 0;color:#1769e8;font-size:10px;font-weight:800;line-height:1.4}
.home .cn-ai-result-excerpt{
  margin:8px 0 0;color:#718096;font-size:9px;line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
.home .cn-ai-view-link{display:inline-block;margin-top:10px;color:#1769e8;text-decoration:none;font-size:9px;font-weight:900}
.home .cn-ai-no-results{
  grid-column:1/-1;padding:22px;border:1px dashed #dce5f0;border-radius:12px;background:#f7f9fc;
  color:#718096;text-align:center;font-size:11px
}
.home .cn-ai-results-foot{display:flex;justify-content:center;margin-top:14px}
.home .cn-ai-more{
  min-height:36px;padding:0 14px;border:1px solid #c9d9ef;border-radius:11px;background:#eef5ff;
  color:#1769e8;font-size:9px;font-weight:900;cursor:pointer
}

@media(max-width:850px){
  .home .cn-ai-result-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .home .cn-ai-search-box{grid-template-columns:auto minmax(0,1fr);padding:8px}
  .home .cn-ai-search-box button{grid-column:1/-1;width:100%}
  .home .cn-ai-results{padding:14px}
}


/* =========================================================
   v0.31.1 — Homepage Smart Search layout correction
   Fixes conflict with legacy .cn-ai-search hero styles.
   ========================================================= */

.home .cn-ai-search.cn-ai-search-live{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:22px 0 0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  grid-template-columns:none !important;
  align-items:initial !important;
  overflow:visible !important;
}

.home .cn-ai-search-live .cn-ai-search-box{
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) 136px !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  min-height:76px !important;
  padding:8px 8px 8px 14px !important;
  margin:0 !important;
  background:#fff !important;
  border:1px solid #dbe5f2 !important;
  border-radius:20px !important;
  box-shadow:0 14px 34px rgba(30,62,113,.10) !important;
  box-sizing:border-box !important;
}

.home .cn-ai-search-live .cn-search-symbol{
  display:grid !important;
  place-items:center !important;
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  color:#73849b !important;
  font-size:22px !important;
  line-height:1 !important;
}

.home .cn-ai-search-live .cn-ai-search-box input{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  height:52px !important;
  min-height:52px !important;
  margin:0 !important;
  padding:0 10px !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#1d2a3d !important;
  font-size:15px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
}

.home .cn-ai-search-live .cn-ai-search-box input::placeholder{
  color:#738096 !important;
  opacity:1 !important;
}

.home .cn-ai-search-live .cn-ai-search-box > button[data-cn-ai-submit]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:136px !important;
  height:52px !important;
  min-height:52px !important;
  margin:0 !important;
  padding:0 20px !important;
  border:0 !important;
  border-radius:15px !important;
  background:#2f74e9 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  box-shadow:0 8px 18px rgba(47,116,233,.22) !important;
}

.home .cn-ai-search-live .cn-ai-search-box > button[data-cn-ai-submit]:hover{
  background:#1e64d8 !important;
}

.home .cn-ai-search-live .cn-ai-quick-prompts{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  width:100% !important;
  margin:11px 0 0 !important;
  padding:0 !important;
}

.home .cn-ai-search-live .cn-ai-popular-label{
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  color:#6e8098 !important;
  font-size:11px !important;
  font-weight:800 !important;
}

.home .cn-ai-search-live .cn-ai-quick-prompts button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  width:auto !important;
  min-height:34px !important;
  margin:0 !important;
  padding:0 13px !important;
  border:1px solid #d9e3ef !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#4f627a !important;
  box-shadow:none !important;
  font-size:10px !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.home .cn-ai-search-live .cn-ai-quick-prompts button:hover{
  border-color:#b8cff0 !important;
  background:#f5f9ff !important;
  color:#1769e8 !important;
}

.home .cn-ai-search-live .cn-ai-status{
  width:100% !important;
  box-sizing:border-box !important;
}

.home .cn-ai-search-live .cn-ai-results{
  width:100% !important;
  box-sizing:border-box !important;
  margin-top:14px !important;
}

/* The separate LIVE information card was removed in v0.31.1. */
.home .cn-ai-entry-live{
  display:none !important;
}

@media(max-width:700px){
  .home .cn-ai-search-live .cn-ai-search-box{
    grid-template-columns:38px minmax(0,1fr) !important;
    min-height:0 !important;
    padding:10px !important;
  }

  .home .cn-ai-search-live .cn-search-symbol{
    width:38px !important;
    height:46px !important;
  }

  .home .cn-ai-search-live .cn-ai-search-box input{
    height:46px !important;
    min-height:46px !important;
    font-size:14px !important;
  }

  .home .cn-ai-search-live .cn-ai-search-box > button[data-cn-ai-submit]{
    grid-column:1/-1 !important;
    width:100% !important;
    height:46px !important;
    min-height:46px !important;
  }

  .home .cn-ai-search-live .cn-ai-quick-prompts{
    gap:6px !important;
  }

  .home .cn-ai-search-live .cn-ai-popular-label{
    width:100% !important;
    min-height:auto !important;
    margin-bottom:1px !important;
  }
}


/* =========================================================
   v0.31.3 — Dedicated compact Smart Search preview renderer
   Uses unique classes so archive/listing-card CSS cannot leak in.
   ========================================================= */
.home .cn-ai-results{
  width:100% !important;
  margin-top:14px !important;
  padding:16px 18px !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 16px 38px rgba(18,43,78,.14) !important;
}
.home .cn-ai-results-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:0 0 11px !important;
}
.home .cn-ai-results-head span{font-size:8px !important}
.home .cn-ai-results-head h3{margin:3px 0 0 !important;font-size:16px !important;line-height:1.2 !important}
.home button.cn-ai-clear{
  width:auto !important;min-width:0 !important;min-height:0 !important;height:auto !important;
  margin:0 !important;padding:5px 7px !important;border:0 !important;border-radius:7px !important;
  background:transparent !important;color:#66778e !important;box-shadow:none !important;
  font-size:9px !important;font-weight:800 !important;text-decoration:none !important;
}
.home button.cn-ai-clear:hover{background:#f1f5fa !important;color:#1769e8 !important}
.home .cn-ai-result-grid{display:flex !important;flex-direction:column !important;gap:8px !important}
.home .cn-smart-preview-card{
  display:grid !important;grid-template-columns:86px minmax(0,1fr) auto !important;align-items:center !important;
  min-height:82px !important;margin:0 !important;border:1px solid #e2e9f2 !important;border-radius:13px !important;
  overflow:hidden !important;background:#fff !important;box-shadow:none !important;transition:.16s ease !important;
}
.home .cn-smart-preview-card:hover{border-color:#bfd3ef !important;box-shadow:0 7px 18px rgba(29,48,76,.07) !important;transform:translateY(-1px)}
.home .cn-smart-preview-thumb{
  display:block !important;width:86px !important;height:82px !important;min-width:86px !important;overflow:hidden !important;
  background:#edf3fa !important;border-right:1px solid #e7edf5 !important;
}
.home .cn-smart-preview-thumb img{display:block !important;width:100% !important;height:100% !important;object-fit:cover !important}
.home .cn-smart-preview-fallback{display:grid !important;place-items:center !important;width:100% !important;height:100% !important;background:#eef4fb !important}
.home .cn-smart-preview-fallback span{display:grid !important;place-items:center !important;width:34px !important;height:34px !important;border-radius:10px !important;background:#fff !important;color:#1769e8 !important;font-size:10px !important;font-weight:900 !important}
.home .cn-smart-preview-content{min-width:0 !important;padding:9px 11px !important}
.home .cn-smart-preview-tags{display:flex !important;align-items:center !important;gap:5px !important;flex-wrap:wrap !important;margin:0 0 5px !important}
.home .cn-smart-preview-tags span{display:inline-flex !important;align-items:center !important;min-height:18px !important;padding:0 6px !important;border-radius:999px !important;background:#f2f6fb !important;color:#65768b !important;font-size:7px !important;font-weight:800 !important;line-height:1 !important}
.home .cn-smart-preview-tags .cn-smart-preview-type{background:#eaf2ff !important;color:#1769e8 !important}
.home .cn-smart-preview-tags .cn-smart-preview-featured{background:#fff3d5 !important;color:#8b5a00 !important}
.home .cn-smart-preview-content h4{margin:0 !important;font-size:12.5px !important;line-height:1.25 !important;font-weight:850 !important}
.home .cn-smart-preview-content h4 a{color:#172033 !important;text-decoration:none !important}
.home .cn-smart-preview-meta{margin:4px 0 0 !important;color:#61738a !important;font-size:8.5px !important;line-height:1.35 !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}
.home .cn-smart-preview-open{
  display:inline-flex !important;align-items:center !important;gap:4px !important;margin:0 12px 0 4px !important;padding:7px 8px !important;
  border-radius:8px !important;background:#f3f7fd !important;color:#1769e8 !important;text-decoration:none !important;font-size:8px !important;font-weight:900 !important;white-space:nowrap !important;
}
.home .cn-smart-preview-open:hover{background:#e7f0ff !important}
.home .cn-ai-results-foot{display:flex !important;justify-content:center !important;margin:10px 0 0 !important}
.home .cn-ai-results-foot[hidden]{display:none !important}
.home button.cn-ai-more{
  width:auto !important;min-width:0 !important;min-height:32px !important;height:32px !important;margin:0 !important;padding:0 13px !important;
  border:1px solid #d7e5f8 !important;border-radius:9px !important;background:#eef5ff !important;color:#1769e8 !important;
  box-shadow:none !important;font-size:8.5px !important;font-weight:900 !important;
}
.home button.cn-ai-more:hover{background:#e2eeff !important}
@media(max-width:600px){
  .home .cn-ai-results{padding:13px !important}
  .home .cn-smart-preview-card{grid-template-columns:70px minmax(0,1fr) !important;min-height:72px !important}
  .home .cn-smart-preview-thumb{width:70px !important;height:72px !important;min-width:70px !important}
  .home .cn-smart-preview-content{padding:8px 9px !important}
  .home .cn-smart-preview-open{display:none !important}
  .home .cn-smart-preview-content h4{font-size:11.5px !important}
  .home .cn-smart-preview-meta{font-size:8px !important}
}


/* =========================================================
   v0.31.4 — PROMOTIONS ARCHIVE FIX + CLEAN CARD LAYOUT
   ========================================================= */

/*
 * Promotion cards now use a classic directory layout:
 * clean square artwork on top, readable content below.
 * This replaces the cramped split-image/text layout.
 */
.cn-deal-v2-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}

.cn-deal-card-v3{
  border-radius:20px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid #e1e5ec !important;
  box-shadow:0 10px 28px rgba(20,32,51,.055) !important;
}

.cn-deal-card-v3:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 18px 42px rgba(31,38,60,.10) !important;
}

.cn-deal-card-v3-body{
  display:flex !important;
  flex-direction:column !important;
  min-height:0 !important;
}

.cn-deal-card-v3-media{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  flex:none !important;
  overflow:hidden !important;
  background:#f5f6f8 !important;
}

.cn-deal-card-v3-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

.cn-deal-card-v3-content{
  padding:18px 18px 16px !important;
  min-height:236px !important;
}

.cn-deal-v3-business{
  font-size:10px !important;
  letter-spacing:.06em !important;
  line-height:1.3 !important;
}

.cn-deal-v3-location{
  margin-top:5px !important;
  font-size:10px !important;
}

.cn-deal-v3-title{
  margin-top:13px !important;
  min-height:50px !important;
  font-size:21px !important;
  line-height:1.18 !important;
  -webkit-line-clamp:2 !important;
}

.cn-deal-card-v3-content>p{
  margin:10px 0 14px !important;
  min-height:44px !important;
  font-size:11px !important;
  line-height:1.55 !important;
  -webkit-line-clamp:3 !important;
}

.cn-deal-v3-offer{
  padding:8px 10px !important;
  border-radius:8px !important;
  font-size:10px !important;
}

.cn-deal-v3-footer-meta{
  margin-top:14px !important;
  padding-top:12px !important;
  font-size:9px !important;
  gap:12px !important;
}

.cn-deal-v3-actions{
  grid-template-columns:1fr 1fr 1.1fr !important;
  padding:12px !important;
  gap:8px !important;
}

.cn-deal-v3-actions a{
  min-height:43px !important;
  font-size:10px !important;
  border-radius:10px !important;
}

.cn-deal-v3-badges{
  top:12px !important;
  left:12px !important;
  right:12px !important;
}

.cn-deal-v3-badges span{
  min-height:27px !important;
  padding:0 10px !important;
  font-size:8px !important;
}

.cn-deal-v3-expiry{
  left:auto !important;
  right:12px !important;
  bottom:12px !important;
  width:76px !important;
  height:76px !important;
}

.cn-deal-v3-expiry strong{
  font-size:25px !important;
}

/* Give archive headings more breathing room and legibility. */
.cn-deal-v2-more{
  padding-top:40px !important;
}
.cn-deal-v2-section-head{
  margin-bottom:22px !important;
}
.cn-deal-v2-section-head h2{
  font-size:34px !important;
  line-height:1.1 !important;
}
.cn-deal-v2-section-head p{
  margin-top:6px !important;
  font-size:12px !important;
  line-height:1.5 !important;
}

/* Today's Deals means any promotion whose date/time interval overlaps today. */
.cn-deal-v2-nav a{
  min-height:43px !important;
  padding:0 20px !important;
  font-size:10px !important;
}

@media(max-width:1180px){
  .cn-deal-v2-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:760px){
  .cn-deal-v2-grid{
    grid-template-columns:1fr !important;
  }
  .cn-deal-card-v3-content{
    min-height:0 !important;
  }
  .cn-deal-v3-title,
  .cn-deal-card-v3-content>p{
    min-height:0 !important;
  }
}

@media(max-width:520px){
  .cn-deal-v3-actions{
    grid-template-columns:1fr 1fr !important;
  }
  .cn-deal-v3-actions .view{
    grid-column:1/-1 !important;
  }
}
