/* DIRECPRO v0.27.9 — Marketplace Premium Structure */
:root{
  --dp279-navy:#071d46;
  --dp279-blue:#0b6dff;
  --dp279-blue-2:#1854d8;
  --dp279-sky:#45b7ff;
  --dp279-gold:#f0c64f;
  --dp279-ink:#0a214e;
  --dp279-muted:#687b96;
  --dp279-line:#dbe6f3;
  --dp279-surface:#f3f7fc;
  --dp279-white:#fff;
  --dp279-shadow:0 18px 48px rgba(7,35,80,.10);
}

/* Public navigation: no administrative affordance in the marketplace. */
.dp-nav .dp-nav-cta{background:#fff!important;color:#0b59cf!important;border:1px solid rgba(255,255,255,.75)!important;box-shadow:0 7px 20px rgba(2,26,67,.16)!important}
.dp-nav .dp-nav-cta:hover{background:#eff6ff!important;color:#084db7!important}

/* Full-width editorial featured shelf. */
.dp279-featured-showcase{padding:34px 0 38px;background:linear-gradient(180deg,#fff 0%,#f7faff 100%);border-bottom:1px solid #e5edf7}
.dp279-featured-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin-bottom:22px}
.dp279-featured-head h2{margin:4px 0 7px;color:var(--dp279-navy);font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.04em}
.dp279-featured-head p{margin:0;max-width:760px;color:var(--dp279-muted);font-size:14px;line-height:1.65}
.dp279-featured-meta{min-width:132px;padding:13px 15px;border:1px solid var(--dp279-line);border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(7,35,80,.06);text-align:center}
.dp279-featured-meta strong{display:block;color:var(--dp279-blue);font-size:25px;line-height:1}
.dp279-featured-meta span{display:block;margin-top:5px;color:#70819a;font-size:10px;font-weight:700}
.dp279-featured-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch}
.dp279-featured-grid .dp-card-v0263{height:100%;min-width:0}

/* Marketplace content after featured section gets more breathing room. */
.dp-market-shell{padding-top:26px!important;background:linear-gradient(180deg,#f4f7fb 0%,#eef4fb 100%)!important}
.dp-market-layout{align-items:start!important;gap:24px!important}
.dp-market-sidebar{position:sticky!important;top:92px!important;align-self:start!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 18px 44px rgba(7,35,80,.10)!important}
.dp-market-results{padding-bottom:12px}
.dp-market-category-strip{margin-top:0!important}
.dp-market-directory{margin-top:38px!important}

/* Card typography is intentionally readable: never shrink content to make the grid fit. */
.dp-card-v0263 .dp-card-meta{font-size:8.5px!important;line-height:1.35!important}
.dp-card-v0263 h3{font-size:18px!important;line-height:1.15!important}
.dp-card-v0263 .dp-card-title{font-size:10.5px!important;line-height:1.45!important}
.dp-card-v0263 .dp-card-membership-v0264 small{font-size:7px!important}
.dp-card-v0263 .dp-card-membership-v0264 strong{font-size:9px!important}
.dp-card-v0263 .dp-summary{font-size:9.5px!important;line-height:1.55!important}
.dp-card-v0263 .dp-tags span{font-size:7.5px!important}
.dp-card-v0263 .dp-card-footer .dp-link{font-size:9px!important}
.dp-card-v0263 .dp-services-count{font-size:8px!important}

/* Promotion labels represent exposure context, never the membership itself. */
.dp-card-v0263 .dp-badge-promotion{padding:6px 9px!important;border-radius:999px!important;font-size:7.5px!important;font-weight:900!important;letter-spacing:.045em!important;text-transform:uppercase!important}
.dp-card-v0263 .dp-badge-promotion.featured{background:linear-gradient(135deg,#092659,#123f83)!important;color:#ffe06f!important;border:1px solid rgba(255,224,111,.5)!important}
.dp-card-v0263 .dp-badge-promotion.campaign{background:linear-gradient(135deg,#075de2,#0b83ff)!important;color:#fff!important;border:1px solid rgba(255,255,255,.45)!important}
.dp-card-v0263 .dp-badge-promotion.partner{background:linear-gradient(135deg,#5f46d9,#8a68ff)!important;color:#fff!important}
.dp-card-v0263 .dp-badge-verified{font-size:7.5px!important;background:#e9faf2!important;color:#087650!important;border:1px solid #bfe8d5!important}
.dp-card-v0263 .dp-type{font-size:7px!important;background:rgba(7,29,70,.9)!important;color:#fff!important}

/* Membership tier is a subtle visual accent, not a promotional claim. */
.dp-card-v0263:before{background:linear-gradient(90deg,#9fb0c4,#dce5ef)!important}
.dp-card-v0263.dp-plan-esencial:before{background:linear-gradient(90deg,#37b27d,#87d7b7)!important}
.dp-card-v0263.dp-plan-pro:before{background:linear-gradient(90deg,#0b6dff,#54c8ff)!important}
.dp-card-v0263.dp-plan-negocios:before{background:linear-gradient(90deg,#3156c8,#755ee8)!important}
.dp-card-v0263.dp-plan-autoridad:before{background:linear-gradient(90deg,#c99721,#ffe176,#0b6dff)!important}

/* Editorial cards use a consistent professional media ratio. */
.dp279-featured-grid .dp-card-media,.dp-market-card-grid .dp-card-media,.dp-promo-zone-grid .dp-card-media{aspect-ratio:4/4.9!important;min-height:0!important}
.dp279-featured-grid .dp-card-media img,.dp-market-card-grid .dp-card-media img,.dp-promo-zone-grid .dp-card-media img{width:100%!important;height:100%!important;object-fit:cover!important}

/* Promotion area: premium blue only for temporary visibility. */
.dp279-promo-zone{position:relative!important;overflow:hidden!important;margin-top:30px!important;padding:26px!important;border:0!important;border-radius:28px!important;background:
  radial-gradient(circle at 82% 20%,rgba(89,190,255,.26),transparent 28%),
  linear-gradient(132deg,#071f53 0%,#0a47ba 45%,#0b78ff 100%)!important;
  box-shadow:0 24px 54px rgba(5,50,135,.18)!important;color:#fff!important}
.dp279-promo-zone:after{content:"";position:absolute;width:330px;height:330px;right:-130px;bottom:-170px;border:50px solid rgba(255,255,255,.055);border-radius:50%;pointer-events:none}
.dp279-promo-zone-head{position:relative;z-index:1;align-items:start!important;margin-bottom:20px!important}
.dp279-promo-zone-head .dp-kicker{color:#ffdf6b!important}
.dp279-promo-zone-head h2{margin:3px 0 6px!important;color:#fff!important;font-size:clamp(26px,3vw,40px)!important;line-height:1.03!important;letter-spacing:-.035em!important}
.dp279-promo-zone-head p{max-width:720px!important;color:#d9e9ff!important;font-size:13px!important;line-height:1.6!important}
.dp279-promo-zone .dp-promo-zone-tag{background:rgba(255,255,255,.13)!important;color:#fff!important;border:1px solid rgba(255,255,255,.24)!important;padding:8px 11px!important}
.dp279-promo-zone .dp-promo-zone-grid{position:relative;z-index:1;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,280px))!important;gap:18px!important}
.dp279-promo-zone .dp-card-v0263{box-shadow:0 20px 46px rgba(2,18,54,.24)!important}

/* A single promoted profile becomes a deliberate spotlight, not a tiny card in empty blue space. */
.dp279-promo-solo{position:relative;z-index:1;display:grid;grid-template-columns:minmax(235px,285px) minmax(0,1fr);gap:24px;align-items:stretch}
.dp279-promo-solo .dp-promo-zone-grid{display:block!important}
.dp279-promo-solo .dp-card-v0263{height:100%}
.dp279-promo-explain{display:flex;flex-direction:column;justify-content:center;padding:24px 26px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px)}
.dp279-promo-explain>span{color:#ffe071;font-size:9px;font-weight:900;letter-spacing:.14em}
.dp279-promo-explain h3{margin:8px 0 8px;color:#fff;font-size:clamp(23px,2.7vw,34px);line-height:1.05;letter-spacing:-.035em}
.dp279-promo-explain p{margin:0;max-width:650px;color:#d9e9ff;font-size:12px;line-height:1.7}
.dp279-promo-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.dp279-promo-facts div{padding:12px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.07)}
.dp279-promo-facts b{display:block;color:#ffe071;font-size:11px}
.dp279-promo-facts span{display:block;margin-top:3px;color:#fff;font-size:10px;font-weight:700;line-height:1.35}
.dp279-promo-explain a{align-self:flex-start;color:#fff;font-size:10px;font-weight:900;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}

/* Directory grid scales with profile growth without creating microscopic cards. */
.dp-market-card-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.dp-market-card-grid .dp-card-v0263{min-width:0;height:100%}

/* Stronger separation between editorial selection, paid/temporary exposure, and organic directory. */
.dp279-featured-showcase + .dp-market-shell{border-top:0!important}
.dp-bottom-promotions{padding:34px 0!important;background:#eef4fb!important}
.dp-bottom-promotions .dp279-promo-zone{margin-top:0!important}

@media (max-width:1180px){
  .dp279-featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dp-market-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:900px){
  .dp279-featured-head{grid-template-columns:1fr}.dp279-featured-meta{justify-self:start}
  .dp279-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dp-market-sidebar{position:fixed!important;top:0!important}
  .dp279-promo-solo{grid-template-columns:1fr}
  .dp279-promo-solo .dp-promo-zone-grid{max-width:320px}
}
@media (max-width:620px){
  .dp279-featured-showcase{padding:25px 0 28px}
  .dp279-featured-head h2{font-size:29px}
  .dp279-featured-grid,.dp-market-card-grid{grid-template-columns:1fr!important}
  .dp279-featured-grid .dp-card-v0263,.dp-market-card-grid .dp-card-v0263{max-width:100%!important}
  .dp279-promo-zone{padding:20px 16px!important;border-radius:22px!important}
  .dp279-promo-solo .dp-promo-zone-grid{max-width:none}
  .dp279-promo-facts{grid-template-columns:1fr}
  .dp279-promo-explain{padding:20px 18px}
}
