:root{
  --bg:#f4f7fb;
  --card:#fff;
  --text:#172235;
  --muted:#667085;
  --primary:#63bdca;
  --primary-dark:#197386;
  --border:#dbe4ef;
  --shadow:0 18px 50px rgba(15,23,42,.10);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(16px,4vw,46px);background:rgba(255,255,255,.88);border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#e9f8fb;color:var(--primary-dark);font-size:32px;font-weight:900;line-height:1}
.brand-logo{display:block;width:210px;height:52px;max-width:min(210px,45vw);object-fit:contain;object-position:left center}
.brand strong{display:block;font-size:26px;line-height:1;color:#55b9c7}
.brand small{display:block;margin-top:-2px;color:#777;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.top-nav{display:flex;align-items:center;gap:8px;overflow:auto}
.top-nav a{padding:10px 12px;border:1px solid transparent;border-radius:999px;color:#344054;font-size:14px;font-weight:750;white-space:nowrap}
.top-nav a:hover{border-color:var(--border);background:#fff}
.catalog-banner-carousel{position:relative;width:100%;aspect-ratio:2200/449;overflow:hidden;background:#eef3f6}.catalog-banner-slide{position:absolute;inset:0;display:block;opacity:0;pointer-events:none;transition:opacity .5s ease}.catalog-banner-slide.active{opacity:1;pointer-events:auto}.catalog-banner-slide img{display:block;width:100%;height:100%;object-fit:contain}.catalog-banner-dots{position:absolute;z-index:2;left:0;right:0;bottom:8px;display:flex;justify-content:center;gap:6px}.catalog-banner-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.72);box-shadow:0 1px 5px rgba(0,0,0,.24);cursor:pointer}.catalog-banner-dots button.active{background:var(--primary-dark)}
main{width:min(1180px,100%);margin:0 auto;padding:22px clamp(14px,3vw,28px) 36px}
.hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(310px,.72fr);gap:22px;align-items:stretch;padding:28px;border:1px solid var(--border);border-radius:28px;background:radial-gradient(circle at top left,#dff8fc 0,transparent 32%),linear-gradient(135deg,#fff 0%,#eef8fb 100%);box-shadow:var(--shadow)}
.hero-intro{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:22px}.hero-intro h1{max-width:none;margin:0 0 9px;font-size:clamp(30px,4.2vw,54px);line-height:1.05}.hero-intro p{max-width:850px;margin-bottom:0}.hero-socials{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:5px}.social-icon{display:grid;place-items:center;width:40px;height:40px;color:#344054;transition:transform .18s ease,opacity .18s ease}.social-icon:hover{transform:translateY(-2px);opacity:.82}.social-icon svg{display:block;width:30px;height:30px;fill:currentColor;stroke:none}.social-instagram{color:#d62976}.social-instagram svg,.social-whatsapp svg,.social-tiktok svg,.social-x svg,.social-link svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.social-instagram .fill-dot{fill:currentColor;stroke:none}.social-facebook{color:#1877f2}.social-whatsapp{color:#25d366}.social-youtube{color:#ff0000}.social-youtube .play{fill:#fff}.social-tiktok,.social-x{color:#111}.social-link{color:var(--primary-dark)}
.eyebrow{margin:0 0 8px;color:var(--primary-dark);font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1{max-width:760px;margin-bottom:12px;font-size:clamp(34px,6vw,68px);line-height:.98;letter-spacing:-.055em}
.hero p{max-width:680px;color:#475467;font-size:18px;line-height:1.55}
.hero-product-carousel{position:relative;min-width:0;min-height:420px;overflow:hidden;border:1px solid var(--border);border-radius:22px;background:#fff}
.hero-product-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .45s ease}
.hero-product-slide.active{opacity:1;pointer-events:auto}
.hero-product-slide img{display:block;width:100%;height:100%;object-fit:contain;padding:12px 12px 48px}
.hero-product-controls{position:absolute;z-index:3;left:0;right:0;bottom:9px;display:flex;align-items:center;justify-content:center;gap:10px}.hero-product-controls>button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:9px;background:#fff;color:#172235;font-size:20px;cursor:pointer}.hero-product-dots{display:flex;gap:5px}.hero-product-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#cbd5e1}.hero-product-dots button.active{background:var(--primary-dark)}.hero-product-empty{display:grid;place-items:center;min-height:420px;padding:24px;color:var(--muted);text-align:center}
.hero-actions,.business-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border:1px solid var(--border);border-radius:13px;background:#fff;color:#172235;font-weight:850;box-shadow:0 4px 16px rgba(15,23,42,.06)}
.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}
.hero-panel{display:grid;gap:12px}
.hero-card{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--border);border-radius:20px;background:rgba(255,255,255,.82)}
.hero-card.active{border-color:#9adce5;background:#fff;box-shadow:0 10px 30px rgba(99,189,202,.18)}
.hero-card span{font-size:30px}
.hero-card strong{display:block}
.hero-card small{display:block;margin-top:3px;color:var(--muted)}
.section{margin-top:34px}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}
.section-title h2{margin:0;font-size:28px;letter-spacing:-.03em}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.access-card,.mini-card{min-height:220px;padding:20px;border:1px solid var(--border);border-radius:22px;background:var(--card);box-shadow:0 8px 26px rgba(15,23,42,.05)}
.access-card{display:flex;flex-direction:column}
.access-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.access-card .icon,.mini-card span{font-size:34px}
.access-card h3,.mini-card h3{margin:16px 0 8px;font-size:21px}
.access-card p,.mini-card p{color:var(--muted);line-height:1.5}
.access-card strong{margin-top:auto;color:var(--primary-dark)}
.business-feature{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px;overflow:hidden;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.05)}
.business-image{display:grid;place-items:center;min-height:330px;background:linear-gradient(135deg,#eef2f7,#dff8fc);font-size:98px}
.business-image.locksmith{background:radial-gradient(circle at 70% 20%,#ffe8b4 0,transparent 34%),linear-gradient(135deg,#1f2937,#0f7185);color:#fff}
.business-info{padding:24px}
.tag{display:inline-flex;margin-bottom:10px;padding:6px 10px;border-radius:999px;background:#e9f8fb;color:var(--primary-dark);font-size:12px;font-weight:900}
.business-info h3{font-size:30px;margin-bottom:8px}
.business-info p,.business-info li{color:#475467;line-height:1.55}
.business-info ul{display:grid;gap:7px;margin:14px 0 0;padding:0;list-style:none}
.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:12px;overflow:auto;padding:4px 0 12px;scroll-snap-type:x mandatory}
.slide{scroll-snap-align:start;display:flex;align-items:center;gap:12px;min-height:92px;padding:16px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.slide span{font-size:32px}
.slide strong{font-size:17px}
.site-footer{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;padding:26px 16px;border-top:1px solid var(--border);color:#667085;background:#fff}
.site-footer p{flex:0 0 100%;margin:0;text-align:center}.site-footer nav{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.site-footer a{color:#27364a;font-size:11px;font-weight:800;text-decoration:none}.site-footer a:hover{text-decoration:underline}
.finance-weather{width:min(900px,calc(100% - 24px));margin:12px auto 0;padding:16px;border:1px solid #dce3ea;border-radius:12px;background:#fff;box-sizing:border-box}.finance-weather>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.finance-weather h2{margin:0 0 4px;font-size:20px}.finance-weather header p,.finance-weather>footer{margin:0;color:#667085;font-size:11px}.finance-weather>header>small{padding:5px 8px;border-radius:20px;background:#eef7f8;color:#197386;font-weight:800;white-space:nowrap}.finance-weather-grid{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px}.finance-market,.weather-card{min-width:0;padding:12px;border:1px solid #e2e8ef;border-radius:10px;background:#fafcfd}.finance-market>strong,.weather-card strong,.weather-card b,.weather-card small{display:block}.finance-market-labels{margin:3px 0 8px;color:#667085;font-size:11px}.tradingview-widget-copyright{margin-top:3px;color:#98a2b3;font-size:9px}.tradingview-widget-copyright a{color:#197386}.weather-card{display:flex;align-items:center;gap:11px}.weather-icon{font-size:34px}.weather-card b{margin:4px 0;color:#172235;font-size:19px}.weather-card small{color:#667085}.finance-weather>footer{margin-top:9px}@media(max-width:700px){.finance-weather-grid{grid-template-columns:1fr}.finance-weather{padding:12px}.finance-weather>header{align-items:flex-start;flex-direction:column}.weather-card{min-height:68px}}
code{padding:2px 5px;border:1px solid var(--border);border-radius:7px;background:#f8fafc}
@media(max-width:820px){
  .site-header{align-items:flex-start;flex-direction:column}
  .hero{grid-template-columns:1fr;padding:22px}
  .hero-intro{grid-template-columns:1fr}
  .hero-product-carousel,.hero-product-empty{min-height:310px}
  .cards-grid{grid-template-columns:1fr}
  .business-feature{grid-template-columns:1fr}
  .business-image{min-height:220px}
  .mini-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .brand-logo{width:165px;height:44px;max-width:45vw}
  .brand strong{font-size:22px}
  .top-nav{width:100%}
  h1{font-size:36px}
  .hero p{font-size:15px}
  .section-title{display:block}
  .carousel{grid-auto-columns:78%}
}

/* Apariencia alineada con el catálogo público: limpia, ligera y consistente. */
body{background:#f5f7fa;color:#172235}
.site-header{position:sticky;top:0;width:100%;max-width:none;margin:0;padding:7px max(14px,calc((100vw - 1000px)/2));border:0;border-bottom:1px solid #e4e7ec;border-radius:0;background:rgba(255,255,255,.96);box-shadow:none}
.brand-logo{width:200px;height:48px}
.top-nav{gap:7px}.top-nav a{min-height:34px;padding:7px 11px;border:1px solid #d7dee7;border-radius:9px;background:#fff;color:#27364a;font-size:12px}.top-nav a:hover{border-color:var(--primary);background:#f7fcfd;color:var(--primary-dark)}
.catalog-banner-carousel{width:min(1000px,calc(100% - 24px));margin:10px auto 0;border:1px solid #e0e6ed;border-radius:12px;background:#edf2f5;box-shadow:none}
.page-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;width:min(1000px,calc(100% - 24px));margin:12px auto 0;padding:4px 0}.page-intro h1{margin:0 0 4px;font-size:clamp(26px,3vw,36px);line-height:1.08;letter-spacing:-.03em}.page-intro p{margin:0;color:#667085;font-size:14px;line-height:1.45}.page-intro .btn{margin-top:12px}
.feature-links{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(2,142px);gap:12px;width:min(1000px,calc(100% - 24px));margin:12px auto 0}.feature-link{display:grid;grid-template-columns:142px minmax(0,1fr);align-items:stretch;min-height:142px;overflow:hidden;border:1px solid #dce3ea;border-radius:12px;background:#fff;color:#172235}.feature-link:first-child{position:relative;display:block;grid-row:1/3;min-height:296px}.feature-media{display:block;min-width:0;overflow:hidden;background:#edf2f5}.feature-link:not(:first-child) .feature-media{width:142px;height:142px}.feature-link:first-child .feature-media{position:absolute;inset:0}.feature-link img,.feature-placeholder{display:block;width:100%;height:100%;object-fit:cover}.feature-placeholder{display:grid;place-items:center;color:#98a2b3;font-size:44px}.feature-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:14px}.feature-copy strong{display:block;font-size:17px;line-height:1.2}.feature-copy small{display:block;margin-top:6px;color:#667085;font-size:12px;line-height:1.45}.feature-link:first-child .feature-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;display:block;padding:42px 15px 14px;background:linear-gradient(transparent,rgba(15,23,42,.84));color:#fff}.feature-link:first-child .feature-copy strong{font-size:18px}.feature-link:first-child .feature-copy small{display:none}.image-strip{width:min(1000px,calc(100% - 24px));margin:12px auto 28px;overflow:hidden}.image-strip h2{margin:0 0 9px;color:#27364a;font-size:20px;line-height:1.2}.image-strip-track{display:flex;gap:10px;overflow-x:auto;padding:0 0 7px;scroll-snap-type:x mandatory;scrollbar-width:thin}.image-strip-track a{flex:0 0 190px;aspect-ratio:1/1;overflow:hidden;border:1px solid #dce3ea;border-radius:12px;background:#fff;scroll-snap-align:start}.image-strip-track img{display:block;width:100%;height:100%;object-fit:cover}
main{width:min(1000px,100%);padding:12px 12px 32px}
.hero{gap:12px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.hero-intro{gap:12px;padding:6px 0 2px;border-bottom:0}.hero-intro h1{margin-bottom:5px;font-size:clamp(26px,3vw,36px);line-height:1.08;letter-spacing:-.03em}.hero-intro p{color:#667085;font-size:14px;line-height:1.45}.hero-actions{margin-top:12px}.btn{min-height:36px;padding:0 14px;border-radius:9px;box-shadow:none;font-size:12px}.btn.primary{background:var(--primary);border-color:var(--primary)}
.hero-socials{gap:7px;padding-top:0}.social-icon{width:36px;height:36px}.social-icon svg{width:27px;height:27px}
.hero-product-carousel{min-height:330px;border-color:#dce3ea;border-radius:12px;background:#fff}.hero-panel{gap:9px}.hero-card{min-height:0;padding:12px;border-color:#dce3ea;border-radius:10px;background:#fff;box-shadow:none}.hero-card.active{border-color:#9adce5;box-shadow:none}.hero-card span{font-size:23px}.hero-card small{color:#667085;font-size:12px}
.section{margin-top:24px}.section-title{margin-bottom:10px}.section-title h2{font-size:23px;color:#27364a}.section-title .eyebrow{display:none}
.cards-grid{gap:12px}.access-card,.mini-card{min-height:170px;padding:16px;border-color:#dce3ea;border-radius:14px;box-shadow:0 4px 14px rgba(30,52,72,.05)}.access-card:hover{box-shadow:0 7px 18px rgba(30,52,72,.09)}.access-card h3,.mini-card h3{margin:12px 0 6px;font-size:18px}
.business-list{display:grid;gap:14px}.business-feature{grid-template-columns:240px minmax(0,1fr);border-color:#dce3ea;border-radius:15px;box-shadow:0 4px 14px rgba(30,52,72,.05)}.business-image,.business-image.locksmith{min-height:240px;background:#f2f4f6;color:#27364a;font-size:70px}.business-info{padding:18px}.business-info h3{font-size:24px}.tag{background:#e9f8fb;color:var(--primary-dark)}
.carousel{gap:10px}.slide{min-height:78px;padding:13px;border-color:#dce3ea;border-radius:12px;box-shadow:0 4px 12px rgba(30,52,72,.04)}.slide span{font-size:27px}.slide strong{font-size:15px}
.site-footer{gap:14px;padding:22px 16px;border-top-color:#dce3ea;background:#fff;font-size:13px}
@media(max-width:820px){.site-header{padding:7px 12px}.catalog-banner-carousel{width:calc(100% - 20px);margin-top:10px;border-radius:12px}.hero{padding:0}.hero-product-carousel,.hero-product-empty{min-height:300px}.business-feature{grid-template-columns:1fr}.business-image,.business-image.locksmith{min-height:180px}}
@media(max-width:520px){main{padding:10px 10px 28px}.site-header{align-items:center;flex-direction:row}.brand-logo{width:150px;height:42px}.top-nav{justify-content:flex-end;width:auto}.top-nav a{min-height:34px;padding:6px 8px;font-size:11px}.hero-intro h1{font-size:29px}.hero-product-carousel,.hero-product-empty{min-height:265px}.cards-grid{grid-template-columns:1fr}.section-title h2{font-size:20px}}
@media(max-width:520px){.page-intro{align-items:start;margin-top:9px}.page-intro h1{font-size:27px}.page-intro p{font-size:13px}.page-intro .hero-socials{padding-top:2px}.page-intro .social-icon{width:32px;height:32px}.page-intro .social-icon svg{width:24px;height:24px}}
@media(max-width:620px){.feature-links{grid-template-columns:1fr;grid-template-rows:auto;gap:8px}.feature-link:first-child{grid-row:auto;min-height:230px}.feature-link:not(:first-child){grid-template-columns:112px minmax(0,1fr);min-height:112px}.feature-link:not(:first-child) .feature-media{width:112px;height:112px}.feature-copy{padding:10px}.feature-copy strong{font-size:15px}.feature-copy small{font-size:11px}.image-strip-track a{flex-basis:145px}}

/* Barra con logo y redes; información principal debajo del banner. */
.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px}.header-socials{justify-content:flex-end;min-width:0;padding:0}.catalog-banner-carousel{margin-top:8px}.page-intro{grid-template-columns:minmax(0,1fr) auto;margin-top:10px;padding:3px 0;border:0;border-radius:0;background:transparent}.page-intro-action{align-self:center;margin:0!important;white-space:nowrap}
@media(max-width:760px){.site-header{grid-template-columns:minmax(0,1fr) auto;gap:9px}.brand-logo{width:145px;height:42px}.header-socials{gap:2px}.header-socials .social-icon{width:29px;height:29px}.header-socials .social-icon svg{width:22px;height:22px}}
@media(max-width:520px){.site-header{grid-template-columns:minmax(0,1fr) auto;padding:6px 8px}.brand-logo{width:102px;height:34px}.header-socials .social-icon{width:25px;height:25px}.header-socials .social-icon svg{width:19px;height:19px}.page-intro{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:2px 0}.page-intro h1{font-size:21px}.page-intro-action{min-height:34px;padding:0 10px}}

/* Ancho compacto y navegación compartida con el catálogo. */
.site-header{padding-right:max(12px,calc((100vw - 900px)/2));padding-left:max(12px,calc((100vw - 900px)/2))}.portal-nav,.page-intro,.feature-links,.catalog-banner-carousel,.image-strip,.business-directory{width:min(900px,calc(100% - 24px))}.portal-nav{display:flex;gap:7px;margin:9px auto 0;padding-bottom:8px;border-bottom:1px solid #e4e7ec}.portal-nav a{display:inline-flex;align-items:center;min-height:34px;padding:6px 11px;border:1px solid #d7dee7;border-radius:9px;background:#fff;color:#27364a;font-size:12px;font-weight:700}.portal-nav a:hover,.portal-nav a.active{border-color:var(--primary);color:var(--primary-dark)}.business-directory{margin:14px auto 32px}.business-directory h1{margin:0 0 12px;font-size:26px}.business-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-business-card{padding:16px;border:1px solid #dce3ea;border-radius:12px;background:#fff}.public-business-card .business-card-icon{font-size:32px}.public-business-card h2{margin:9px 0 5px;font-size:18px}.public-business-card p{margin:0 0 10px;color:#667085;font-size:13px;line-height:1.5}.public-business-card ul{margin:0;padding:0;list-style:none;color:#475467;font-size:12px;line-height:1.65}.public-business-card a{color:var(--primary-dark);font-weight:700}@media(max-width:620px){.business-directory-grid{grid-template-columns:1fr}}
.public-business-image{display:block;width:100%;height:190px;border-radius:9px;object-fit:cover;background:#edf2f5}.business-map{display:block;width:100%;height:190px;margin-top:12px;border:0;border-radius:9px;background:#edf2f5}.business-map-empty{display:grid;place-items:center;height:90px;margin-top:12px;border-radius:9px;background:#edf2f5;color:#667085;font-size:12px}.business-map-link{display:inline-block;margin-top:8px;font-size:12px}

/* Directorio: cuatro columnas en escritorio. */
.business-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-business-image{height:130px}.business-map{height:145px}.public-business-card{min-width:0;padding:12px}.public-business-card h2{font-size:16px;overflow-wrap:anywhere}
@media(max-width:760px){.business-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.business-directory-grid{grid-template-columns:1fr}.public-business-image{height:180px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.directory-header-search{display:block;width:min(390px,46vw)}.directory-header-search input{width:100%;min-height:36px;padding:7px 11px;border:1px solid #d7dee7;border-radius:9px;background:#fff;color:#27364a;font:inherit}.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}.directory-heading h1{margin:0}.directory-heading label{display:flex;align-items:center;gap:8px;color:#475467;font-size:12px;font-weight:700}.directory-heading select{min-height:36px;padding:6px 30px 6px 10px;border:1px solid #d7dee7;border-radius:9px;background:#fff;color:#27364a}.directory-empty{padding:24px;text-align:center;color:#667085}@media(max-width:620px){.directory-header-search{width:min(220px,55vw)}.directory-heading{align-items:stretch;flex-direction:column}.directory-heading label{justify-content:space-between}.directory-heading select{flex:1}}
.public-business-card.compact{display:flex;align-items:flex-start;flex-direction:column;min-height:168px;padding:14px;cursor:pointer;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.public-business-card.compact:hover,.public-business-card.compact:focus{border-color:#69c3d0;outline:0;box-shadow:0 7px 18px rgba(30,52,72,.09);transform:translateY(-2px)}.business-category{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eaf9fb;color:#167b8b;font-size:11px;font-weight:800}.public-business-card.compact h2{margin:10px 0 6px;font-size:17px}.business-phone{margin:0!important}.public-business-card.compact .business-map-link,.business-map-unavailable{margin-top:auto;padding-top:12px;font-size:12px}.business-map-unavailable{color:#98a2b3}.modal-open{overflow:hidden}.business-modal[hidden]{display:none!important}.business-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:18px}.business-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}.business-modal-dialog{position:relative;z-index:1;width:min(680px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:20px;border-radius:16px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.3)}.business-modal-close{position:absolute;z-index:2;top:10px;right:10px;width:36px;height:36px;padding:0;border:1px solid #d7dee7;border-radius:50%;background:#fff;font-size:24px;line-height:1}.business-modal-image{display:block;width:100%;max-height:310px;margin-bottom:14px;border-radius:11px;object-fit:cover}.business-modal-dialog h2{margin:9px 44px 8px 0;font-size:25px}.business-modal-dialog p,.business-modal-dialog address{color:#475467;font-size:14px;line-height:1.55}.business-modal-dialog address{margin:10px 0;font-style:normal}.business-modal-links{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.business-modal-links a,.business-modal-dialog>.business-map-link{display:inline-flex;min-height:34px;align-items:center;padding:6px 10px;border:1px solid #d7dee7;border-radius:8px}.business-modal-dialog .business-map{height:260px}@media(max-width:520px){.business-modal{padding:8px}.business-modal-dialog{max-height:calc(100vh - 16px);padding:14px}.business-modal-dialog .business-map{height:210px}}
.site-header.directory-header{grid-template-columns:200px minmax(0,1fr) auto}.directory-header .directory-header-search{width:100%}.directory-header-title{margin:0;color:#27364a;font-size:21px;line-height:1.1}.directory-heading.category-only{justify-content:flex-end}.directory-heading.category-only label{min-width:280px}@media(max-width:620px){.site-header.directory-header{grid-template-columns:105px minmax(0,1fr) auto;gap:7px}.directory-header-title{font-size:14px}.directory-heading.category-only label{width:100%;min-width:0}}
.public-business-card.compact{display:grid;grid-template-columns:38% minmax(0,1fr);align-items:stretch;min-height:168px;padding:0}.business-card-thumb{display:grid;place-items:center;min-width:0;overflow:hidden;background:#edf2f5;font-size:30px}.business-card-thumb img{display:block;width:100%;height:100%;object-fit:cover}.business-card-summary{display:flex;align-items:flex-start;flex-direction:column;min-width:0;padding:12px}.business-card-summary h2{overflow-wrap:anywhere}.business-card-summary .business-map-link,.business-card-summary .business-map-unavailable{margin-top:auto}@media(max-width:760px){.public-business-card.compact{grid-template-columns:34% minmax(0,1fr);min-height:150px}}@media(max-width:520px){.public-business-card.compact{grid-template-columns:38% minmax(0,1fr);min-height:145px}}
.feature-links{grid-template-rows:none;grid-auto-rows:142px}.feature-link:first-child{grid-row:span 2}.business-phone{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.network-icon,.business-modal-links .network-icon{display:inline-grid;width:32px;height:32px;min-height:32px;padding:0;place-items:center;border-radius:50%;background:#eef2f6;color:#344054;font-size:14px;font-weight:900;line-height:1;text-decoration:none}.network-icon.network-wa{border-color:#25d366;background:#25d366;color:#fff}.network-icon.network-f{border-color:#1877f2;background:#1877f2;color:#fff}.network-icon.network-ig{border-color:#d62976;background:#d62976;color:#fff}.network-icon.network-yt{border-color:#f00;background:#f00;color:#fff}.network-icon.network-in{border-color:#0a66c2;background:#0a66c2;color:#fff}.network-icon.network-x,.network-icon.network-tt{border-color:#111;background:#111;color:#fff}.network-icon.network-tg{border-color:#229ed9;background:#229ed9;color:#fff}
.network-icon svg{width:20px;height:20px;fill:currentColor}
.application-dialog fieldset{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0;padding:13px;border:1px solid #dce3ea;border-radius:11px}.application-dialog legend{padding:0 6px;color:#27364a;font-size:14px;font-weight:800}.application-dialog label small{color:#667085;font-weight:400}.application-image-preview{height:150px;overflow:hidden;border-radius:9px;background:#edf2f5}.application-image-preview img{display:block;width:100%;height:100%;object-fit:contain}@media(max-width:620px){.application-dialog fieldset{grid-template-columns:1fr}.application-dialog fieldset .wide{grid-column:auto}}
.application-dialog label:has(input[name="imageFile"])::after{content:"Medida recomendada: 1000 × 1000 px.";color:#167b8b;font-size:12px;font-weight:700}
.directory-page-invite{margin-bottom:32px}.directory-page-invite .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.social-icon.social-facebook,.social-icon.social-instagram,.social-icon.social-tiktok,.social-icon.social-whatsapp,.social-icon.social-threads,.network-icon.network-f,.network-icon.network-ig,.network-icon.network-tt,.network-icon.network-wa,.network-icon.network-th{border:0!important;background-color:transparent!important;background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;color:transparent!important}.social-icon.social-facebook,.network-icon.network-f{background-image:url('/assets/social/facebook.svg')!important}.social-icon.social-instagram,.network-icon.network-ig{background-image:url('/assets/social/instagram.svg')!important}.social-icon.social-threads,.network-icon.network-th{background-image:url('/assets/social/threads.svg')!important}.social-icon.social-tiktok,.network-icon.network-tt{background-image:url('/assets/social/tiktok.svg')!important}.social-icon.social-whatsapp,.network-icon.network-wa{background-image:url('/assets/social/whatsapp.svg')!important}.social-icon.social-facebook svg,.social-icon.social-instagram svg,.social-icon.social-threads svg,.social-icon.social-tiktok svg,.social-icon.social-whatsapp svg,.network-icon.network-f svg,.network-icon.network-ig svg,.network-icon.network-th svg,.network-icon.network-tt svg,.network-icon.network-wa svg{visibility:hidden!important}.network-icon.network-f,.network-icon.network-ig,.network-icon.network-th,.network-icon.network-tt,.network-icon.network-wa{font-size:0!important}
.header-socials .social-icon{width:26px;height:26px}.directory-page-invite{margin-bottom:0}.network-icon.network-wa,.business-modal-links .network-icon.network-wa{background-image:url('/assets/social/whatsapp.svg')!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important}@media(max-width:760px){.header-socials .social-icon{width:22px;height:22px}}@media(max-width:520px){.header-socials .social-icon{width:20px;height:20px}}
.public-business-card .network-icon.network-wa{width:23px!important;height:23px!important;min-height:23px!important;background-size:23px 23px!important}.business-modal-links .network-icon.network-wa{width:30px!important;height:30px!important;min-height:30px!important;background-size:30px 30px!important}
.business-directory-grid>.public-business-card[hidden]{display:none!important}
@media(max-width:620px){.feature-link:first-child{height:230px;min-height:230px;max-height:230px}.feature-link:not(:first-child){height:112px;min-height:112px;max-height:112px;overflow:hidden}.feature-link:not(:first-child) .feature-copy{height:112px;overflow:hidden;box-sizing:border-box}.feature-link:not(:first-child) .feature-copy strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.feature-link:not(:first-child) .feature-copy small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}}
@media(max-width:620px){.feature-links{gap:3px;margin-top:6px}.feature-link:first-child{height:190px;min-height:190px;max-height:190px}.feature-link:not(:first-child),.feature-link:not(:first-child) .feature-copy{height:96px;min-height:96px;max-height:96px}.feature-link:not(:first-child){grid-template-columns:96px minmax(0,1fr)}.feature-link:not(:first-child) .feature-media{width:96px;height:96px}.business-modal{place-items:start center;padding:calc(env(safe-area-inset-top,0px) + 22px) 8px 10px}.business-modal-dialog{max-height:calc(100dvh - env(safe-area-inset-top,0px) - 34px)}}
@media(max-width:620px){.feature-links{grid-template-rows:none;grid-auto-rows:auto;align-content:start}.feature-link:first-child{grid-row:auto}}
.public-business-card.compact{grid-template-columns:168px minmax(0,1fr)}.business-card-thumb,.business-card-thumb img{width:168px;height:168px;aspect-ratio:1/1}.business-card-thumb img{object-fit:cover;object-position:center}.business-modal-image{width:min(100%,420px);height:auto;aspect-ratio:1/1;margin:0 auto 14px;object-fit:cover;object-position:center}.portal-business-slide{grid-template-columns:90px minmax(0,1fr)}.portal-business-photo,.portal-business-photo img{width:90px;height:90px;aspect-ratio:1/1}.portal-business-photo img{object-fit:cover;object-position:center}@media(max-width:760px){.public-business-card.compact{grid-template-columns:150px minmax(0,1fr)}.business-card-thumb,.business-card-thumb img{width:150px;height:150px}}@media(max-width:520px){.public-business-card.compact{grid-template-columns:145px minmax(0,1fr)}.business-card-thumb,.business-card-thumb img{width:145px;height:145px}}
.public-business-card.compact{height:168px;min-height:168px}.business-card-thumb{height:168px}.business-card-summary h2{display:-webkit-box;min-height:2.4em;max-height:2.4em;overflow:hidden;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}.network-icon.network-wa,.business-modal-links .network-icon.network-wa{width:30px;height:30px;min-height:30px;padding:0;border:0;background:transparent;color:#25d366;border-radius:0}.network-icon.network-wa svg{width:27px;height:27px}
.portal-business-carousel,.directory-invite{width:min(900px,calc(100% - 24px));margin:12px auto 0}.portal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.portal-section-heading h2{margin:0;font-size:20px}.portal-section-heading a{color:var(--primary-dark);font-size:12px;font-weight:800}.portal-business-track{display:flex;gap:10px;overflow-x:auto;padding-bottom:7px;scroll-snap-type:x mandatory;scrollbar-width:thin}.portal-business-slide{display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;flex:0 0 270px;min-height:90px;overflow:hidden;border:1px solid #dce3ea;border-radius:12px;background:#fff;color:#172235;scroll-snap-align:start}.portal-business-photo{display:block;width:82px;height:90px;background:#edf2f5}.portal-business-photo img{display:block;width:100%;height:100%;object-fit:cover}.portal-business-slide>span:last-child{min-width:0;padding:10px}.portal-business-slide strong,.portal-business-slide small{display:block}.portal-business-slide strong{display:-webkit-box;overflow:hidden;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.portal-business-slide small{margin-top:6px;color:#667085}.directory-invite{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px;border:1px solid #dce3ea;border-radius:12px;background:#fff}.directory-invite h2{margin:0 0 5px;font-size:21px}.directory-invite p{margin:0;color:#667085;font-size:13px}.directory-invite .btn{flex:0 0 auto}.application-modal[hidden]{display:none!important}.application-modal{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:16px}.application-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58)}.application-dialog{position:relative;z-index:1;width:min(640px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:20px;border-radius:15px;background:#fff}.application-close{position:absolute;top:10px;right:10px;width:34px;height:34px;padding:0;border-radius:50%;font-size:22px}.application-dialog h2{margin:0 42px 5px 0}.application-dialog>p{margin:0 0 15px;color:#667085;font-size:13px}.application-dialog form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.application-dialog label{display:flex;flex-direction:column;gap:5px;color:#344054;font-size:12px;font-weight:700}.application-dialog input,.application-dialog select,.application-dialog textarea{width:100%;min-height:40px;box-sizing:border-box}.application-dialog .wide,.application-actions{grid-column:1/-1}.application-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.application-actions span{color:#167b8b;font-size:12px}@media(max-width:760px){.public-business-card.compact,.business-card-thumb{height:150px;min-height:150px}.directory-invite{align-items:flex-start;flex-direction:column}.application-dialog form{grid-template-columns:1fr}.application-dialog .wide,.application-actions{grid-column:auto}}@media(max-width:520px){.public-business-card.compact,.business-card-thumb{height:145px;min-height:145px}.portal-business-slide{flex-basis:250px}}
.feature-links-additional{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(900px,calc(100% - 24px));margin:12px auto 0}.feature-link-additional{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:112px;overflow:hidden;border:1px solid #dce3ea;border-radius:12px;background:#fff;color:#172235}.feature-link-additional .feature-media{width:112px;height:112px}.feature-link-additional .feature-copy{padding:11px}.feature-link-additional .feature-copy strong{font-size:15px}.feature-link-additional .feature-copy small{font-size:11px}@media(max-width:760px){.feature-links-additional{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.feature-links-additional{grid-template-columns:1fr}}
.portal-business-slide{grid-template-columns:90px minmax(0,1fr)}.portal-business-photo,.portal-business-photo img{width:90px;height:90px;aspect-ratio:1/1}.portal-business-photo img{object-fit:cover;object-position:center}
.public-business-card.compact{grid-template-columns:30% minmax(0,70%)}.public-business-card.compact .business-card-thumb,.public-business-card.compact .business-card-thumb img{width:100%;height:100%;min-height:0;aspect-ratio:auto}.public-business-card.compact .business-card-thumb img{object-fit:cover;object-position:center}
.directory-mobile-search{display:none}@media(max-width:620px){.site-header.directory-header .directory-header-search{display:none}.directory-mobile-search{display:block;width:min(900px,calc(100% - 24px));margin:10px auto 0}.directory-mobile-search input{width:100%;min-height:40px;padding:8px 12px;border:1px solid #d7dee7;border-radius:9px;background:#fff;color:#27364a;font:inherit}}
.directory-header-title{justify-self:end;text-align:right;white-space:nowrap}.public-business-card.compact{overflow:hidden}.public-business-card.compact .business-card-thumb{max-width:100%;overflow:hidden}.public-business-card.compact .business-card-thumb img{max-width:100%;max-height:100%}
.site-header .brand-logo{width:220px;height:58px;max-width:100%;object-fit:contain}.site-header .header-socials .social-icon{width:26px;height:26px}.site-header.directory-header{grid-template-columns:220px minmax(180px,1fr) auto}.site-header.directory-header .brand{min-width:0;overflow:hidden}@media(max-width:720px){.site-header .brand-logo{width:min(195px,55vw);height:58px}.site-header .header-socials .social-icon{width:20px;height:20px}.site-header .header-socials .social-icon svg{width:20px;height:20px}.site-header.directory-header{grid-template-columns:minmax(105px,195px) minmax(70px,1fr) auto}.site-header.directory-header .brand-logo{width:100%;max-width:195px}}
.template-promo{display:flex;align-items:stretch;width:min(900px,calc(100% - 24px));height:142px;box-sizing:border-box;margin:12px auto 0;overflow:hidden;border:1px solid #d7e0ea;border-radius:13px;background:linear-gradient(135deg,#fff,#edf9fa)}.template-promo-image{flex:0 0 50%;width:50%;height:142px;object-fit:cover;background:#edf2f5}.template-promo-content{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;flex:1;padding:14px}.template-promo h2{min-width:0;margin:0;color:#172235;font-size:18px}.template-promo-action{display:flex;align-items:center;gap:10px;white-space:nowrap}.template-promo-action span{color:#667085;font-size:12px}.template-promo-action strong{color:#16877f;font-size:18px}@media(max-width:640px){.template-promo{height:112px}.template-promo-image{height:112px}.template-promo-content{align-items:flex-start;flex-direction:column;justify-content:center;gap:7px;padding:9px}.template-promo h2{font-size:14px;line-height:1.2}.template-promo-action span{display:none}.template-promo .btn{padding:7px 9px;font-size:11px}}
