:root {
  --bg: #f5f3ef;
  --panel: #ffffff;
  --ink: #1f2f4b;
  --muted: #6b7890;
  --brand: #ff6a2b;
  --brand-2: #1f3560;
  --line: #d9e0ea;
  --success: #1aa98a;
  --shadow: 0 20px 50px rgba(31, 53, 96, 0.12);
  --radius: 22px;
  --radius-sm: 14px;
  --max: 1180px;
}

/* PrecioGas editorial theme */
:root {
  --navy: #172a4b;
  --navy-2: #22385d;
  --orange: #ff6336;
  --orange-dark: #f05127;
  --mint: #15b991;
  --cream: #f5f4f1;
  --soft-line: #e5e8ee;
}

body {
  font-family: "Trebuchet MS", "Segoe UI", sans-serif;
  background: #fff;
  color: var(--navy);
}

.site-header { position: sticky; min-height: 58px; background: var(--navy); border: 0; box-shadow: none; }
.site-header__inner { min-height: 58px; }
.site-header .brand { color: #fff; font-size: .88rem; letter-spacing: -.02em; }
.site-header .brand__mark, .footer .brand__mark { width: 26px; height: 26px; border-radius: 7px; font-size: .72rem; box-shadow: none; background: var(--orange); }
.site-header .nav { gap: 3px; }
.site-header .nav a { color: #fff; padding: 8px 11px; font-size: .72rem; font-weight: 600; }
.site-header .nav a:hover { border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.08); }
.site-header .nav .nav-cta { border: 1px solid rgba(255,255,255,.85); border-radius: 5px; margin-left: 12px; }

.landing-hero { color: #fff; background: var(--orange); text-align: center; }
.landing-hero__inner { padding: 82px 16px 72px; }
.hero-label { display: none; }
.landing-hero h1 { margin: 0 auto 16px; max-width: 780px; font-size: clamp(2rem, 4.2vw, 3.35rem); line-height: 1.08; letter-spacing: -.045em; }
.landing-hero p { max-width: 680px; margin: 0 auto; color: rgba(255,255,255,.82); font-size: .96rem; line-height: 1.6; }
.landing-search { display: flex; align-items: center; width: min(100%, 590px); margin: 28px auto 18px; padding: 5px 6px 5px 16px; border-radius: 999px; background: #fff; box-shadow: 0 10px 25px rgba(90,30,10,.16); }
.landing-search span { color: #778196; font-size: 1.2rem; }
.landing-search input { min-width: 0; flex: 1; border: 0; outline: 0; padding: 12px; color: var(--navy); }
.landing-search button { border: 0; border-radius: 999px; background: var(--orange); color: #fff; padding: 11px 25px; font-weight: 700; cursor: pointer; }
.popular { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; font-size: .69rem; }
.popular a { padding: 6px 11px; border-radius: 999px; background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.18); }

.price-strip { padding: 36px 0 25px; background: #fff; }
.price-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
.mini-price { padding: 14px 15px; border: 1px solid var(--soft-line); border-radius: 7px; box-shadow: 0 5px 15px rgba(23,42,75,.05); }
.mini-price small { display: block; color: #6e788b; font-size: .59rem; font-weight: 800; text-transform: uppercase; }
.mini-price strong { display: inline-block; margin-top: 6px; font-size: 1.12rem; }
.mini-price span { margin-left: 5px; color: var(--mint); font-size: .57rem; font-weight: 800; }
.price-date { grid-column: 1 / -1; margin: 6px 0 0; text-align: center; color: #8991a0; font-size: .61rem; }
.price-date strong { color: var(--mint); }

.landing-section { padding: 70px 0; }
.landing-section.soft { background: var(--cream); }
.center-head { text-align: center; margin: 0 auto 38px; }
.center-head h2, .info-layout h2, .subscribe h2 { margin: 0 0 10px; color: var(--navy); font-size: clamp(1.55rem, 2.7vw, 2.25rem); letter-spacing: -.045em; }
.center-head p { margin: 0; color: #7a8495; font-size: .86rem; }
.steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.step-card { position: relative; min-height: 190px; padding: 26px; border: 1px solid var(--soft-line); border-radius: 9px; background: #fff; }
.step-card b { position: absolute; top: 27px; right: 25px; color: #ffd4c8; font-size: 1.5rem; }
.step-icon { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 50%; background: #fff0eb; color: var(--orange); font-size: 1.2rem; }
.step-card h3 { margin: 22px 0 8px; font-size: 1rem; }
.step-card p { margin: 0; color: #727c8e; font-size: .76rem; line-height: 1.55; }

.state-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.state-card { padding: 18px; border: 1px solid var(--soft-line); border-radius: 5px; background: #fff; }
.state-card small { color: #8a93a2; font-size: .55rem; font-weight: 800; }
.state-card h3 { margin: 8px 0 3px; font-size: .88rem; }
.state-card strong { font-size: 1rem; }
.state-card span { display: block; margin-top: 11px; color: var(--orange); font-size: .68rem; font-weight: 700; }
.center-action { margin-top: 30px; text-align: center; }
.outline-action { display: inline-block; padding: 11px 20px; border: 1px solid var(--orange); border-radius: 5px; color: var(--orange); font-size: .75rem; font-weight: 800; }

.landing-section.navy { background: var(--navy); }
.center-head.light h2 { color: #fff; }
.center-head.light p { color: rgba(255,255,255,.55); }
.provider-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.provider { display: grid; grid-template-columns: 58px 1fr; gap: 20px; padding: 24px; border-radius: 8px; background: #fff; }
.avatar { display: grid; width: 54px; height: 54px; place-items: center; border-radius: 50%; color: #fff; font-size: 1.5rem; font-weight: 800; }
.avatar.green { background: #12b883; }.avatar.aqua { background: #28bead; }
.provider small { float: right; color: var(--orange); font-size: .51rem; font-weight: 800; }
.provider h3 { margin: 1px 0 6px; font-size: 1rem; }
.provider p { min-height: 38px; margin: 0 0 8px; color: #778092; font-size: .7rem; line-height: 1.45; }
.provider b { display: block; font-size: .75rem; }
.provider a { display: block; margin-top: 12px; padding: 9px; border-radius: 5px; text-align: center; background: var(--orange); color: #fff; font-size: .7rem; font-weight: 800; }

.brand-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.brand-row { display: flex; align-items: center; gap: 13px; padding: 15px; border-radius: 7px; background: #fff; border: 1px solid #eceef1; }
.brand-row > span { display:grid; flex:none; width:40px; height:40px; place-items:center; overflow:hidden; border-radius:50%; background:var(--navy); color:#fff; font-size:.72rem; font-weight:800; }
.brand-row__avatar.brand-avatar--image { border:1px solid #e2e7ed; background:#fff; }
.brand-row__avatar img,.provider-brand-avatar img { display:block; width:100%; height:100%; padding:5px; object-fit:contain; border-radius:50%; }
.provider-brand-avatar { display:grid; width:48px; height:48px; place-items:center; overflow:hidden; border-radius:50%; background:var(--navy); color:#fff; font-weight:900; }
.provider-brand-avatar.brand-avatar--image { border:1px solid #e2e7ed; background:#fff; }
.brand-row h3 { margin: 0; font-size: .79rem; }.brand-row p { margin: 4px 0 0; color: #748093; font-size: .64rem; }

.info-layout { display: grid; grid-template-columns: 2fr 1fr; gap: 58px; align-items: start; }
.info-layout article > p { color: #687386; font-size: .8rem; line-height: 1.7; }
.info-layout aside { padding: 26px; border-radius: 12px; background: var(--cream); }
.info-layout aside h3 { margin: 0 0 18px; font-size: .92rem; }
.info-layout ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.info-layout li { position: relative; padding-left: 20px; color: #657084; font-size: .72rem; line-height: 1.5; }
.info-layout li::before { content: '✓'; position: absolute; left: 0; color: var(--mint); font-weight: 900; }

.explore-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.explore-card { overflow:hidden; border:1px solid var(--soft-line); border-radius:12px; background:#fff; padding-bottom:20px; box-shadow:0 8px 24px rgba(23,42,75,.04); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.explore-card:hover { border-color:rgba(255,99,54,.35); box-shadow:0 16px 35px rgba(23,42,75,.1); transform:translateY(-4px); }
.explore-card > .explore-card__visual { display:flex; height:116px; padding:18px; align-items:center; justify-content:space-between; background:#f5f7f8; }
.explore-card__visual b { align-self:flex-start; padding:6px 8px; border:1px solid rgba(23,42,75,.08); border-radius:999px; color:#52647b; background:rgba(255,255,255,.72); font-size:.57rem; letter-spacing:.03em; }
.explore-icon { display:grid; width:66px; height:66px; margin:0!important; place-items:center; border-radius:18px; color:#fff; box-shadow:0 12px 24px rgba(23,42,75,.14); }
.explore-icon svg { display:none; }
.explore-icon::before { font:var(--fa-font-solid); font-size:2rem; line-height:1; }
.explore-card.map .explore-icon::before { content:"\f5a0"; }
.explore-card.city .explore-icon::before { content:"\f64f"; }
.explore-card.chart .explore-icon::before { content:"\f201"; }
.explore-card.scale .explore-icon::before { content:"\f48b"; }
.explore-card.map .explore-card__visual { background:linear-gradient(135deg,#e9f8f5,#d2eee8); }.explore-card.map .explore-icon { background:#18a584; }
.explore-card.city .explore-card__visual { background:linear-gradient(135deg,#fff4ee,#ffe0d3); }.explore-card.city .explore-icon { background:#ff6336; }
.explore-card.chart .explore-card__visual { background:linear-gradient(135deg,#e9f0f8,#cfdeee); }.explore-card.chart .explore-icon { background:#24466f; }
.explore-card.scale .explore-card__visual { background:linear-gradient(135deg,#f3f0e8,#e7dfcb); }.explore-card.scale .explore-icon { background:#b8842e; }
.explore-card > small,.explore-card > h3,.explore-card > p,.explore-card > span { display:block; margin-left:18px; margin-right:18px; }
.explore-card > small { margin-top:16px; color:var(--orange); font-size:.54rem; font-weight:800; }.explore-card > h3 { margin-top:8px; margin-bottom:7px; font-size:.9rem; }.explore-card > p { color:#778092; font-size:.68rem; line-height:1.5; }.explore-card > span { color:var(--orange); font-size:.67rem; font-weight:800; }

.news-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.news-grid article small { display: block; margin-top: 13px; color: var(--mint); font-size: .57rem; font-weight: 800; }.news-grid h3 { margin: 8px 0; font-size: .94rem; line-height: 1.3; }.news-grid p { color: #727d8e; font-size: .7rem; line-height: 1.5; }.news-grid a { color: var(--orange); font-size: .68rem; font-weight: 800; }
.news-image { border-radius: 8px; }.news-image.industrial { background: linear-gradient(135deg,#233b51,#8e9da8); }.news-image.building { background: linear-gradient(145deg,#d7e8f3,#376f96); }.news-image.kitchen { background: linear-gradient(145deg,#f1eee8,#9ba096); }

.subscribe { padding: 62px 0; text-align: center; color: #fff; background: var(--orange-dark); }.subscribe h2 { color: #fff; }.subscribe p { font-size: .78rem; color: rgba(255,255,255,.75); }.subscribe form { display: flex; width: min(100%,480px); margin: 20px auto 0; padding: 4px; border-radius: 999px; background: #fff; }.subscribe input { flex: 1; min-width: 0; padding: 10px 15px; border: 0; outline: 0; }.subscribe button { padding: 9px 22px; border: 0; border-radius: 999px; background: var(--navy); color: #fff; font-size: .7rem; font-weight: 800; }

.footer { padding: 55px 0 25px; background: var(--navy); }.footer__grid { grid-template-columns: 1.5fr repeat(3,1fr); }.footer strong { font-size: .65rem; color: #fff; }.footer-links { display: grid; gap: 9px; margin-top: 16px; }.footer-links a { color: rgba(255,255,255,.62); font-size: .68rem; }.footer__note { max-width: 280px; margin-top: 15px; font-size: .7rem; }.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 42px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.08); color: rgba(255,255,255,.4); font-size: .58rem; }

@media (max-width: 980px) {
  .price-grid,.state-grid,.explore-grid { grid-template-columns: repeat(2,1fr); }
  .steps-grid,.brand-list,.news-grid { grid-template-columns: 1fr; }
  .provider-grid,.info-layout { grid-template-columns: 1fr; }
  .site-header__inner { align-items: center; flex-direction: row; padding: 8px 0; }
  .site-header .nav { display: none; }
  .landing-hero__inner { padding: 62px 16px; }
}

@media (max-width: 560px) {
  .landing-section { padding: 48px 0; }
  .price-grid,.state-grid,.explore-grid,.footer__grid { grid-template-columns: 1fr; }
  .landing-search { padding-left: 12px; }.landing-search button { padding-inline: 18px; }
  .popular span { width: 100%; }
  .provider { grid-template-columns: 44px 1fr; padding: 18px; }.avatar { width: 42px; height: 42px; }
  .footer-bottom { flex-direction: column; }
}

.municipality-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.price-calc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.info-note { margin:24px 0; padding:18px 20px; border-left:4px solid var(--orange); border-radius:6px; background:#fff3ee; color:#596579; line-height:1.6; }
.search-page { border:1px solid var(--soft-line); }
.result-count { margin:25px 0 12px; color:#697589; }
.request-brand { margin-top:40px; }
.brand-profile { max-width:760px; margin:0 auto; }.brand-profile .avatar { margin-bottom:18px; }.brand-profile .btn { margin-top:20px; }
.article-page { padding:65px 0; }.article-wrap { max-width:820px; }.article-wrap > h1 { font-size:clamp(2rem,4vw,3.4rem); line-height:1.05; letter-spacing:-.05em; }.article-lead { color:#6b7688; font-size:1.1rem; line-height:1.7; }.article-wrap > img { width:100%; max-height:480px; object-fit:cover; border-radius:12px; margin:28px 0; }.article-content { font-family:Georgia,serif; font-size:1.03rem; line-height:1.85; color:#34425a; }.article-content h2,.article-content h3 { font-family:"Trebuchet MS",sans-serif; color:var(--navy); }
.password-field { display:flex; }.password-field input { border-radius:var(--radius-sm) 0 0 var(--radius-sm); }.password-field button { padding:0 15px; border:1px solid var(--line); border-left:0; border-radius:0 var(--radius-sm) var(--radius-sm) 0; background:#f5f6f8; color:var(--navy); font-weight:700; }
.admin-nav { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px; padding:10px; border-radius:9px; background:var(--navy); }.admin-nav a { padding:9px 13px; border-radius:5px; color:#fff; font-size:.75rem; font-weight:700; }.admin-nav a:hover { background:rgba(255,255,255,.12); }
.admin-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr); gap:30px; align-items:start; }
.admin-form { display:grid; gap:15px; padding:24px; }.admin-form label { display:grid; gap:7px; font-size:.78rem; font-weight:800; }.admin-form input,.admin-form textarea,.admin-form select { width:100%; padding:12px 13px; border:1px solid var(--soft-line); border-radius:6px; background:#fff; color:var(--navy); }.admin-form textarea { resize:vertical; line-height:1.5; }.admin-form fieldset { border:1px solid var(--soft-line); border-radius:6px; }.admin-form .check { display:flex; grid-template-columns:auto 1fr; align-items:center; }.admin-form .check input,.checkbox-grid input { width:auto; }.checkbox-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-top:10px; }.checkbox-grid label { display:flex; align-items:center; gap:6px; font-weight:500; }.danger { border:0; background:transparent; color:#b53b2c; cursor:pointer; }.legal-tabs { display:flex; gap:10px; margin:20px 0; }.legal-tabs a { padding:9px 13px; border:1px solid var(--soft-line); border-radius:5px; }.upload-form { max-width:700px; margin:25px 0; }.preview-box { margin:30px 0; }.table-scroll { overflow:auto; margin-bottom:20px; }.table-scroll table { width:100%; border-collapse:collapse; font-size:.75rem; }.table-scroll th,.table-scroll td { padding:9px; border:1px solid var(--soft-line); text-align:left; white-space:nowrap; }

@media(max-width:980px){.price-calc-grid{grid-template-columns:repeat(2,1fr)}.admin-layout{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.municipality-grid,.price-calc-grid,.checkbox-grid{grid-template-columns:1fr}.admin-nav{overflow-x:auto;flex-wrap:nowrap}.admin-nav a{white-space:nowrap}}

/* Final shared-shell overrides must remain after the legacy template rules. */
body { background:#fff; color:var(--navy); font-family:"Trebuchet MS","Segoe UI",sans-serif; }
.site-header { position:sticky; top:0; z-index:50; min-height:58px; background:var(--navy); border:0; box-shadow:none; backdrop-filter:none; }
.site-header__inner { min-height:58px; }
.site-header .brand { color:#fff; font-size:.88rem; }
.site-header .brand__mark,.footer .brand__mark { width:26px; height:26px; border-radius:7px; font-size:.72rem; box-shadow:none; background:var(--orange); }
.site-header .nav { gap:3px; }
.site-header .nav a { color:#fff; padding:8px 11px; font-size:.72rem; }
.site-header .nav .nav-cta { border:1px solid rgba(255,255,255,.85); border-radius:5px; margin-left:12px; }
.footer { padding:55px 0 25px; color:#d9e0ea; background:var(--navy); }
.footer__grid { grid-template-columns:1.5fr repeat(3,1fr); }
.footer .brand { color:#fff; }
@media(max-width:980px){.site-header__inner{align-items:center;flex-direction:row;padding:8px 0}.site-header .nav{display:none}.footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer__grid{grid-template-columns:1fr}}

/* Final logo overrides must remain last. */
.site-header .brand--logo,.footer .brand--logo,.cms-brand img { background:transparent; }
.cms-brand img { padding:0; border-radius:0; }
.site-header .site-logo,.footer .site-logo,.cms-brand img { filter:grayscale(1) brightness(0) invert(1); }

/* Transparent monochrome brand treatment on dark surfaces. */
.site-header .brand--logo,.footer .brand--logo { padding:0; background:transparent; border-radius:0; }
.site-header .site-logo,.footer .site-logo,.cms-brand img { filter:grayscale(1) brightness(0) invert(1); }
.cms-brand img { padding:0; background:transparent; border-radius:0; }
.footer-bottom { display:flex; align-items:center; flex-wrap:wrap; gap:14px 24px; }
.footer-powered { display:inline-flex; align-items:center; gap:8px; margin-left:auto; color:rgba(255,255,255,.68); text-decoration:none; }
.footer-powered>span { font-size:.68rem; white-space:nowrap; }
.footer-powered img { display:block; width:auto; height:18px; }
.footer-powered:hover { color:#fff; opacity:1; }
@media(max-width:700px){.footer-powered{width:100%;margin-left:0}.footer-bottom{align-items:flex-start;flex-direction:column}}

/* Predictive location search */
.predictive-search { position:relative; }
.suggestions { position:absolute; z-index:80; top:calc(100% + 9px); left:0; width:100%; max-height:360px; overflow:auto; padding:7px; border:1px solid #dce3ed; border-radius:15px; background:#fff; box-shadow:0 18px 45px rgba(15,35,65,.2); text-align:left; }
.suggestions[hidden] { display:none; }
.suggestions a { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:11px 12px; color:#172a4b; border-radius:10px; text-decoration:none; }
.suggestions a:hover,.suggestions a:focus { background:#f4f7fb; outline:none; }
.suggestions a span { display:grid; gap:2px; }
.suggestions b { font-size:.92rem; }
.suggestions small { color:#68778d; font-size:.76rem; }
.suggestions em { flex:none; padding:4px 7px; color:#d74821; background:#fff0eb; border-radius:999px; font-size:.65rem; font-style:normal; font-weight:800; text-transform:uppercase; }

/* CMS workspace */
.cms-body { margin:0; min-height:100vh; color:#1d2b3f; background:#f4f6f9; font-family:"Segoe UI",Tahoma,sans-serif; }
.cms-body * { box-sizing:border-box; }
.cms-shell { min-height:100vh; }
.cms-sidebar { position:fixed; inset:0 auto 0 0; z-index:110; display:flex; width:248px; flex-direction:column; padding:22px 14px 16px; color:#d8e1ef; background:#172a4b; box-shadow:8px 0 30px rgba(20,38,68,.08); }
.cms-brand { display:flex; align-items:center; gap:11px; padding:0 10px 24px; color:#fff; text-decoration:none; }
.cms-brand>span { display:grid; width:38px; height:38px; place-items:center; border-radius:11px; background:#ff6336; font-weight:900; }
.cms-brand div,.cms-user div { display:grid; gap:2px; }
.cms-brand strong { font-size:1rem; }
.cms-brand small { color:#91a3bd; font-size:.67rem; letter-spacing:.07em; text-transform:uppercase; }
.cms-navigation { display:grid; gap:4px; }
.cms-navigation p { margin:14px 11px 8px; color:#7489a8; font-size:.64rem; font-weight:800; letter-spacing:.14em; }
.cms-navigation a { display:flex; align-items:center; gap:11px; min-height:44px; padding:8px 11px; color:#c9d4e4; border-radius:9px; font-size:.88rem; font-weight:650; text-decoration:none; }
.cms-navigation a>span { display:grid; width:26px; height:26px; place-items:center; border:1px solid rgba(255,255,255,.12); border-radius:7px; font-size:.62rem; }
.cms-navigation a:hover { color:#fff; background:rgba(255,255,255,.06); }
.cms-navigation a.active { color:#fff; background:#ff6336; box-shadow:0 8px 20px rgba(255,99,54,.22); }
.cms-navigation a b { margin-left:auto; min-width:22px; padding:3px 6px; color:#172a4b; background:#fff; border-radius:999px; font-size:.68rem; text-align:center; }
.cms-sidebar-footer { display:grid; gap:12px; margin-top:auto; padding:16px 8px 0; border-top:1px solid rgba(255,255,255,.1); }
.cms-user { display:flex; align-items:center; gap:9px; }
.cms-user>span { display:grid; width:34px; height:34px; place-items:center; color:#172a4b; background:#dce7f6; border-radius:50%; font-weight:800; }
.cms-user strong { max-width:150px; overflow:hidden; color:#fff; font-size:.78rem; text-overflow:ellipsis; white-space:nowrap; }
.cms-user small,.cms-sidebar-footer>a { color:#91a3bd; font-size:.7rem; text-transform:capitalize; }
.cms-sidebar-footer>a { text-decoration:none; }
.cms-workspace { min-height:100vh; margin-left:248px; }
.cms-topbar { position:sticky; top:0; z-index:90; display:flex; align-items:center; min-height:70px; padding:10px 32px; border-bottom:1px solid #e2e7ee; background:rgba(255,255,255,.96); backdrop-filter:blur(10px); }
.cms-topbar>div:first-of-type { display:grid; gap:2px; }
.cms-topbar small { color:#8a97a9; font-size:.62rem; font-weight:800; letter-spacing:.13em; }
.cms-topbar strong { color:#172a4b; font-size:.98rem; }
.cms-top-actions { display:flex; align-items:center; gap:12px; margin-left:auto; }
.cms-top-actions a { color:#53657c; font-size:.8rem; font-weight:700; text-decoration:none; }
.cms-top-actions .cms-create { padding:9px 13px; color:#fff; background:#ff6336; border-radius:8px; }
.cms-menu-toggle { display:none; margin-right:10px; padding:8px 10px; color:#172a4b; background:#edf1f6; border:0; border-radius:7px; font-weight:700; }
.cms-content { padding:30px 32px 60px; }
.cms-content>.section { padding:0; }
.cms-body .site-wrap { width:100%; max-width:1480px; margin:0 auto; padding:0; }
.cms-body .admin-nav { display:none; }
.cms-page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:24px; }
.cms-page-heading h1,.cms-body .section h1 { margin:2px 0 5px; color:#172a4b; font-size:clamp(1.55rem,2vw,2rem); }
.cms-page-heading p { max-width:680px; margin:0; color:#69788d; line-height:1.55; }
.cms-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:20px; }
.cms-metrics>a { display:flex; align-items:center; gap:13px; min-height:118px; padding:18px; color:inherit; border:1px solid #e3e8ef; border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(19,39,70,.04); text-decoration:none; }
.cms-metrics>a:hover { transform:translateY(-2px); box-shadow:0 10px 26px rgba(19,39,70,.08); }
.cms-metric-icon { display:grid; width:44px; height:44px; flex:none; place-items:center; border-radius:11px; font-size:.65rem; font-weight:900; }
.cms-metric-icon.orange { color:#d74a22; background:#fff0eb; }.cms-metric-icon.blue { color:#2775bd; background:#e9f4ff; }.cms-metric-icon.green { color:#138064; background:#e8f7f2; }.cms-metric-icon.navy { color:#fff; background:#172a4b; }
.cms-metrics div { display:grid; gap:3px; min-width:0; }
.cms-metrics small,.cms-panel-head small { color:#8b98a9; font-size:.62rem; font-weight:800; letter-spacing:.11em; }
.cms-metrics strong { color:#172a4b; font-size:1.05rem; }
.cms-metrics p { margin:0; color:#76859a; font-size:.72rem; }
.cms-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr); gap:18px; }
.cms-panel { overflow:hidden; border:1px solid #e2e7ee; border-radius:14px; background:#fff; box-shadow:0 5px 18px rgba(19,39,70,.035); }
.cms-panel-head { display:flex; align-items:center; justify-content:space-between; padding:19px 21px; border-bottom:1px solid #edf0f4; }
.cms-panel-head h2 { margin:3px 0 0; color:#172a4b; font-size:1rem; }
.cms-panel-head>a { color:#e6532a; font-size:.76rem; font-weight:800; text-decoration:none; }
.cms-content-list>a,.cms-quick-actions>a { display:flex; align-items:center; gap:12px; padding:13px 20px; color:#24344a; border-bottom:1px solid #edf0f4; text-decoration:none; }
.cms-content-list>a:last-child,.cms-quick-actions>a:last-child { border-bottom:0; }
.cms-content-list>a:hover,.cms-quick-actions>a:hover { background:#f8fafc; }
.cms-doc-icon,.cms-quick-actions>a>span { display:grid; width:32px; height:32px; flex:none; place-items:center; color:#d84e28; background:#fff0eb; border-radius:8px; font-size:.7rem; font-weight:900; }
.cms-content-list div,.cms-quick-actions div { display:grid; min-width:0; gap:3px; }
.cms-content-list strong,.cms-quick-actions strong { overflow:hidden; font-size:.82rem; text-overflow:ellipsis; white-space:nowrap; }
.cms-content-list small,.cms-quick-actions small { color:#8793a4; font-size:.7rem; }
.cms-status { margin-left:auto; padding:5px 8px; color:#8a6c1f; background:#fff7dd; border-radius:999px; font-size:.62rem; font-weight:800; text-transform:uppercase; }
.cms-status.published { color:#137457; background:#e6f7f0; }
.cms-body .card,.cms-list-card { border:1px solid #e2e7ee; border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(19,39,70,.035); }
.cms-body .admin-layout { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr); gap:20px; align-items:start; }
.cms-body .admin-form { padding:22px; }
.cms-body .admin-form label { color:#34465e; font-size:.8rem; font-weight:700; }
.cms-body input,.cms-body textarea,.cms-body select { border:1px solid #ced7e2; border-radius:8px; background:#fff; }
.cms-body input:focus,.cms-body textarea:focus,.cms-body select:focus { border-color:#ff6336; outline:3px solid rgba(255,99,54,.12); }
.cms-body .list { overflow:hidden; border:1px solid #e2e7ee; border-radius:11px; background:#fff; }
.cms-body .list__item { padding:13px 15px; }
.cms-body table { width:100%; background:#fff; }
.cms-overlay { display:none; }

@media(max-width:1120px){.cms-metrics{grid-template-columns:1fr 1fr}.cms-body .admin-layout,.cms-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:760px){
  .cms-sidebar{transform:translateX(-105%);transition:transform .22s ease}.cms-workspace{margin-left:0}.cms-body.cms-menu-open .cms-sidebar{transform:none}
  .cms-menu-toggle{display:block}.cms-topbar{padding:10px 15px}.cms-top-actions>a:first-child{display:none}.cms-content{padding:22px 15px 45px}
  .cms-overlay{position:fixed;inset:0;z-index:100;border:0;background:rgba(10,24,45,.45)}.cms-body.cms-menu-open .cms-overlay{display:block}
  .cms-metrics{grid-template-columns:1fr}.cms-page-heading{align-items:flex-start;flex-direction:column}.cms-page-heading .btn{width:100%}
}

/* Search-intent support block shared by public pages */
.service-query-section { padding:64px 0; border-top:1px solid #e8ebef; background:linear-gradient(135deg,#f6f4f1 0%,#fff 54%,#fff3ee 100%); }
.service-query-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); gap:40px; align-items:end; margin-bottom:24px; }
.service-query-heading h2 { max-width:650px; margin:5px 0 0; color:#172a4b; font-size:clamp(1.55rem,3vw,2.35rem); line-height:1.12; }
.service-query-heading>p { margin:0; color:#66758a; line-height:1.7; }
.service-query-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.service-query-grid article { position:relative; min-height:220px; padding:24px; border:1px solid #e1e6ed; border-radius:14px; background:rgba(255,255,255,.92); box-shadow:0 8px 25px rgba(20,40,70,.05); }
.service-query-grid article>span { display:grid; width:34px; height:34px; place-items:center; color:#df4d25; background:#fff0eb; border-radius:9px; font-size:.7rem; font-weight:900; }
.service-query-grid h3 { margin:20px 0 8px; color:#172a4b; font-size:1rem; }
.service-query-grid p { margin:0 0 17px; color:#6b788a; font-size:.86rem; line-height:1.62; }
.service-query-grid a { color:#e6532a; font-size:.8rem; font-weight:800; text-decoration:none; }
.service-query-faq { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:16px; color:#56667b; font-size:.75rem; }
.service-query-faq strong { margin-right:4px; color:#172a4b; }
.service-query-faq span { padding:6px 9px; border:1px solid #dfe5ec; border-radius:999px; background:#fff; }
@media(max-width:860px){.service-query-heading{grid-template-columns:1fr;gap:14px}.service-query-grid{grid-template-columns:1fr}.service-query-grid article{min-height:0}.service-query-section{padding:48px 0}}

/* Official PrecioGas identity */
.brand--logo { display:inline-flex; width:max-content; padding:3px 8px; border-radius:9px; background:#fff; }
.site-logo { display:block; width:178px; height:auto; object-fit:contain; }
.site-header .brand--logo { flex:none; }
.footer-logo { padding:7px 10px; border-radius:11px; }
.footer-logo .site-logo { width:196px; }
.cms-brand { display:grid; gap:6px; padding:7px 10px 18px; }
.cms-brand img { display:block; width:100%; height:auto; padding:0; border-radius:0; background:transparent; }
.cms-brand>small { color:#91a3bd; font-size:.62rem; font-weight:800; letter-spacing:.16em; text-align:center; text-transform:uppercase; }
@media(max-width:560px){.site-logo{width:146px}.brand--logo{padding:3px 6px}.site-header__inner{min-height:54px}}
.editor-toolbar{display:flex;gap:6px;padding:8px;border:1px solid var(--soft-line);border-bottom:0;border-radius:6px 6px 0 0;background:#f5f6f8}.editor-toolbar button{padding:6px 9px;border:1px solid var(--soft-line);border-radius:4px;background:#fff;color:var(--navy);font-weight:700}.rich-editor{min-height:260px;padding:16px;border:1px solid var(--soft-line);border-radius:0 0 6px 6px;background:#fff;line-height:1.7}.media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.media-grid figure{margin:0;padding:10px;border:1px solid var(--soft-line);border-radius:7px}.media-grid img{width:100%;height:140px;object-fit:cover;border-radius:5px}.media-grid figcaption{margin-top:8px;overflow-wrap:anywhere;font-size:.65rem}@media(max-width:700px){.media-grid{grid-template-columns:repeat(2,1fr)}}

/* Editorial widgets and local landing pages */
.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}
.widget-eyebrow{display:block;margin-bottom:9px;color:var(--orange);font-size:.68rem;font-weight:900;letter-spacing:.13em}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px;color:#758096;font-size:.72rem}.breadcrumbs a:last-child{color:var(--navy);font-weight:800}.breadcrumbs span{opacity:.5}
.block-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.block-heading h2{margin:0;color:var(--navy);font-size:clamp(1.45rem,2.5vw,2.15rem);letter-spacing:-.045em}.block-heading p{margin:8px 0 0;color:#778195}.block-heading>a{color:var(--orange);font-size:.75rem;font-weight:900}
.search-widget{border-radius:14px}.search-widget>div h2{margin:0 0 7px;font-size:1.35rem;letter-spacing:-.04em}.search-widget>div p{margin:0;color:#727d8f;font-size:.78rem;line-height:1.5}.search-widget form{display:flex;padding:5px;border-radius:9px;background:#fff;border:1px solid var(--soft-line);box-shadow:0 12px 30px rgba(23,42,75,.08)}.search-widget input{min-width:0;flex:1;padding:12px 14px;border:0;outline:0}.search-widget button{padding:11px 18px;border:0;border-radius:6px;background:var(--orange);color:#fff;font-weight:900;cursor:pointer}.search-widget--inline{display:grid;grid-template-columns:1fr 1.25fr;gap:28px;align-items:center;margin-bottom:54px;padding:26px;background:#fff}.search-widget--sidebar,.search-widget--article{display:block;padding:22px;background:#f5f4f1}.search-widget--sidebar form,.search-widget--article form{margin-top:16px;display:grid}.search-widget--footer{display:grid;grid-template-columns:1fr 1.15fr;gap:30px;align-items:center;padding:34px max(16px,calc((100% - 1180px)/2));border-radius:0;background:#ff6336;color:#fff}.search-widget--footer .widget-eyebrow,.search-widget--footer p{color:rgba(255,255,255,.75)}.search-widget--footer h2{color:#fff}.search-widget--hero{display:grid;grid-template-columns:1fr 1.25fr;gap:28px;align-items:center;margin-top:34px;padding:24px;background:#fff;color:var(--navy);text-align:left}
.local-hero,.directory-hero,.blog-hero,.faq-hero,.search-results-hero,.brand-request-hero,.brand-profile-hero,.article-hero{padding:38px 0 58px;background:linear-gradient(135deg,#fff7f3,#f7f7f4)}
.local-hero{color:#fff;background:linear-gradient(130deg,#172a4b,#263f68)}.local-hero .breadcrumbs a,.local-hero .breadcrumbs{color:rgba(255,255,255,.68)}.local-hero .breadcrumbs a:last-child{color:#fff}.local-hero__grid{display:grid;grid-template-columns:1.45fr .75fr;gap:55px;align-items:center}.local-hero h1,.directory-hero h1,.blog-hero h1,.faq-hero h1,.search-results-hero h1,.brand-request-hero h1,.article-hero h1{margin:0;font-size:clamp(2.2rem,4.7vw,4.1rem);line-height:1.02;letter-spacing:-.06em}.local-hero p{max-width:650px;color:rgba(255,255,255,.72);line-height:1.7}.headline-price{padding:27px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(255,255,255,.09);box-shadow:0 24px 60px rgba(0,0,0,.12)}.headline-price small,.headline-price span{display:block;color:rgba(255,255,255,.65);font-size:.69rem}.headline-price strong{display:block;margin:8px 0;font-size:3rem;letter-spacing:-.06em}.hero-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-facts span{padding:8px 11px;border-radius:5px;background:rgba(255,255,255,.09);font-size:.7rem}.hero-action{display:inline-block;margin-top:14px;padding:10px 15px;border-radius:5px;background:var(--orange);font-weight:900;font-size:.75rem}
.price-widget{padding:19px;border:1px solid var(--soft-line);border-radius:9px;background:#fff;box-shadow:0 9px 25px rgba(23,42,75,.05)}.price-widget small{display:block;color:#8a93a2;font-size:.58rem;text-transform:uppercase}.price-widget h3{margin:9px 0 5px;font-size:.83rem}.price-widget strong{font-size:1.45rem;letter-spacing:-.04em}.source-widget{margin-top:20px;padding:20px 23px;border-radius:9px;background:#f5f4f1}.source-widget p{margin:7px 0;color:#697589;font-size:.75rem;line-height:1.6}.source-widget a{color:var(--orange);font-size:.72rem;font-weight:900}
.section--soft{background:#f5f4f1}.municipalities-heading{margin-top:8px}.municipality-grid--dense{max-height:620px;overflow:auto;padding-right:8px}.municipality-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--soft-line);border-radius:7px;background:#fff}.municipality-link strong,.municipality-link small{display:block}.municipality-link small{margin-top:3px;color:#8992a1;font-size:.62rem}.municipality-link>span:last-child{color:var(--orange);font-size:.7rem;font-weight:900}
.content-block{margin:22px 0;padding:28px;border:1px solid var(--soft-line);border-radius:11px;background:#fff}.content-block h2{margin-top:0;letter-spacing:-.035em}.provider-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.provider-cards article{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:19px;border:1px solid var(--soft-line);border-radius:9px}.provider-cards h3{margin:0 0 6px}.provider-cards p{color:#727d8f;font-size:.73rem;line-height:1.5}.small-action{color:var(--orange);font-size:.72rem;font-weight:900}.coverage-notice{margin-bottom:18px;padding:14px 16px;border-radius:7px;background:#fff3ee;color:#745e58;font-size:.72rem;line-height:1.55}.empty-directory{padding:24px;border:1px dashed #cfd5df;border-radius:9px;text-align:center;background:#fff}.empty-directory h2,.empty-directory h3{margin-top:0}.empty-directory p{color:#737e90;line-height:1.6}.empty-directory--large{padding:48px}.seo-copy-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:40px;margin-top:45px}.seo-copy-grid article p,.seo-copy-grid article li{color:#657186;line-height:1.75}.seo-copy-grid aside,.useful-card{padding:25px;border-radius:10px;background:#f5f4f1}.seo-copy-grid aside a{display:block;padding:11px 0;border-bottom:1px solid #dde1e7;font-size:.75rem;font-weight:800}.useful-card div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #dde1e7}.useful-card>a{display:block;margin-top:17px;color:var(--orange);font-weight:900;font-size:.75rem}.related-widget{margin-top:48px}.related-links{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.related-links a{padding:14px;border:1px solid var(--soft-line);border-radius:7px;font-weight:800}.related-links span{display:block;margin-top:6px;color:#7a8495;font-size:.68rem}
.directory-hero p,.blog-hero p,.faq-hero>div>p,.brand-request-hero p,.article-hero p{max-width:720px;color:#667286;line-height:1.7}.directory-hero__grid{display:grid;grid-template-columns:1.4fr .6fr;gap:45px;align-items:end}.hero-cta-card{display:grid;gap:8px;padding:24px;border-radius:10px;background:var(--navy);color:#fff}.hero-cta-card span{color:#ff9a78;font-size:.75rem;font-weight:900}.updated-badge{padding:8px 11px;border-radius:5px;background:#e7faf5;color:#0a8e70;font-size:.67rem;font-weight:900}.state-grid--directory .state-card h2{margin:8px 0 3px;font-size:.88rem}.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-cards article{padding:25px;border:1px solid var(--soft-line);border-radius:10px;background:#fff}.info-cards article>span{color:#ffc9b8;font-size:1.7rem;font-weight:900}.info-cards h2{font-size:1rem}.info-cards p{color:#727e90;font-size:.75rem;line-height:1.65}.info-cards a{color:var(--orange);font-size:.72rem;font-weight:900}
.home-order-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-order-grid>div{padding:25px;border:1px solid rgba(255,255,255,.14);border-radius:9px;color:#fff;background:rgba(255,255,255,.06)}.home-order-grid span{color:#ff9a78;font-size:1.4rem;font-weight:900}.home-order-grid p{color:rgba(255,255,255,.65);font-size:.75rem;line-height:1.6}.outline-action--light{border-color:#fff;color:#fff}
.blog-layout,.article-layout,.faq-layout,.search-layout,.request-layout,.brand-profile-layout{display:grid;grid-template-columns:minmax(0,1.5fr) 320px;gap:38px;align-items:start}.post-featured{display:grid;grid-template-columns:1fr 1.05fr;gap:28px;margin-bottom:32px;padding:18px;border:1px solid var(--soft-line);border-radius:12px}.post-featured .post-cover{height:100%;min-height:260px}.post-featured h2{font-size:1.7rem;letter-spacing:-.04em}.post-featured p,.post-card p{color:#707b8d;line-height:1.6}.post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.post-card{overflow:hidden;border:1px solid var(--soft-line);border-radius:10px;background:#fff}.post-card>div:last-child{padding:19px}.post-card h2{font-size:1rem;line-height:1.35}.post-card small{color:#11a984;font-size:.62rem}.post-card a:last-child{color:var(--orange);font-size:.72rem;font-weight:900}.post-cover{height:160px;background-size:cover}.post-cover.industrial{background:linear-gradient(135deg,#203a50,#8799a7)}.post-cover.building{background:linear-gradient(145deg,#d7e8f3,#376f96)}.post-cover.kitchen{background:linear-gradient(145deg,#f1eee8,#9ba096)}.blog-sidebar,.article-sidebar{display:grid;gap:18px;position:sticky;top:80px}.sidebar-box{display:grid;gap:2px;padding:23px;border:1px solid var(--soft-line);border-radius:10px;background:#fff}.sidebar-box h2{font-size:1rem}.sidebar-box a{padding:10px 0;border-bottom:1px solid #e5e8ed;font-size:.75rem;font-weight:800}.sidebar-box p,.sidebar-box li{color:#6f7a8c;font-size:.75rem;line-height:1.6}.sidebar-box--accent{border:0;background:var(--navy);color:#fff}.sidebar-box--accent h2{color:#fff}.sidebar-box--accent p{color:rgba(255,255,255,.68)}.sidebar-box--accent a{color:#ff9a78}.pagination{display:flex;flex-wrap:wrap;gap:7px;margin-top:34px}.pagination a{padding:9px 12px;border:1px solid var(--soft-line);border-radius:5px;font-size:.72rem;font-weight:800}.pagination a.active{background:var(--navy);color:#fff}
.article-hero h1{max-width:900px}.article-meta{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px;color:#7a8494;font-size:.69rem}.article-content .search-widget{font-family:"Trebuchet MS",sans-serif;margin-top:35px}.editorial-note{margin-top:30px;padding:19px;border-left:4px solid var(--orange);background:#fff3ee;font-family:"Trebuchet MS",sans-serif;font-size:.78rem}.related-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.related-posts article{padding:22px;border-radius:9px;background:#fff}.related-posts h3{font-size:.95rem}.related-posts p{color:#727d8f;font-size:.73rem;line-height:1.5}.related-posts>a,.related-posts article>a{color:var(--orange);font-size:.7rem;font-weight:900}
.brand-directory{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.brand-directory article{display:grid;grid-template-columns:55px 1fr;gap:17px;padding:24px;border:1px solid var(--soft-line);border-radius:10px}.brand-directory h2{margin:0;font-size:1.05rem}.brand-directory p{color:#727d8f;font-size:.74rem;line-height:1.55}.brand-avatar{display:grid;width:48px;height:48px;place-items:center;overflow:hidden;border-radius:50%;background:var(--navy);color:#fff;font-weight:900}.brand-avatar--image{border:1px solid #e2e7ed;border-radius:50%;background:#fff}.brand-avatar--image img{display:block;width:100%;height:100%;padding:6px;object-fit:contain;border-radius:50%}.brand-avatar__fallback{display:grid;width:100%;height:100%;place-items:center;border-radius:inherit}.brand-avatar__fallback[hidden]{display:none!important}.brand-avatar--large{width:72px;height:72px;font-size:1.6rem}.brand-avatar--large.brand-avatar--image{border-radius:50%}.brand-tags{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}.brand-tags span{padding:6px 8px;border-radius:4px;background:#f5f4f1;font-size:.61rem}.brand-request-hero{text-align:center}.brand-request-hero p{margin-inline:auto}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.process-steps article{padding:18px;border:1px solid var(--soft-line);border-radius:8px}.process-steps span{color:var(--orange);font-weight:900}.process-steps h2{font-size:.85rem}.process-steps p{color:#758094;font-size:.67rem}.brand-request-form{display:grid;gap:20px}.brand-request-form fieldset{padding:24px;border:1px solid var(--soft-line);border-radius:10px}.brand-request-form legend{padding:0 8px;font-weight:900}.brand-request-form label{display:grid;gap:7px;font-size:.74rem;font-weight:800}.brand-request-form input,.brand-request-form textarea{width:100%;padding:12px;border:1px solid var(--soft-line);border-radius:6px}.form-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:15px}.national-check,.consent-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:start!important}.national-check input,.consent-check input,.public-checkboxes input{width:auto}.success-message{padding:34px;border-radius:10px;background:#e9faf5}.success-message a{color:#087a62;font-weight:900}
.brand-profile-heading{display:flex;align-items:center;gap:20px}.brand-avatar--large{width:72px;height:72px;font-size:1.6rem}.brand-profile-heading h1{margin:2px 0;font-size:2.5rem}.coverage-states{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.coverage-states a,.national-coverage{padding:11px;border-radius:6px;background:#f5f4f1;font-size:.72rem;font-weight:800}.contact-card{display:grid;padding:23px;border-radius:10px;background:var(--navy);color:#fff}.contact-card h2{color:#fff}.contact-card a{display:grid;gap:3px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact-card span{color:rgba(255,255,255,.6);font-size:.64rem}.contact-card strong{font-size:.78rem}
.brand-intro>p,.brand-order-guide>p,.brand-coverage-content>p{color:#647187;line-height:1.75}.brand-order-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.brand-order-steps article{display:flex;min-height:190px;flex-direction:column;padding:18px;border:1px solid var(--soft-line);border-radius:10px;background:#fff}.brand-order-steps article>span{color:var(--orange);font-size:.67rem;font-weight:900;letter-spacing:.08em}.brand-order-steps h3{margin:10px 0 7px;font-size:.88rem}.brand-order-steps p{margin:0 0 15px;color:#6d788b;font-size:.7rem;line-height:1.55}.brand-order-steps a{margin-top:auto;color:var(--orange);font-size:.69rem;font-weight:850}.brand-coverage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.brand-coverage-grid a{display:grid;gap:5px;padding:14px;border:1px solid var(--soft-line);border-radius:8px;background:#fff;transition:border-color .2s ease,transform .2s ease}.brand-coverage-grid a:hover{border-color:rgba(255,99,54,.45);transform:translateY(-2px)}.brand-coverage-grid strong{font-size:.75rem}.brand-coverage-grid span{color:#748096;font-size:.63rem;line-height:1.45}.brand-query-links{display:grid;gap:0}.brand-query-links a{padding:10px 0;border-bottom:1px solid var(--soft-line);color:#425470;font-size:.7rem;font-weight:750}.brand-query-links a:last-child{border-bottom:0}.brand-faq-list{display:grid;gap:10px}.brand-faq-list details{border:1px solid var(--soft-line);border-radius:9px;background:#fff}.brand-faq-list summary{position:relative;padding:17px 48px 17px 18px;cursor:pointer;font-size:.78rem;font-weight:850;list-style:none}.brand-faq-list summary::-webkit-details-marker{display:none}.brand-faq-list summary::after{content:'+';position:absolute;top:13px;right:18px;color:var(--orange);font-size:1.25rem}.brand-faq-list details[open] summary::after{content:'−'}.brand-faq-list p{margin:0;padding:0 18px 18px;color:#68758a;font-size:.72rem;line-height:1.7}.brand-profile-layout [id]{scroll-margin-top:90px}
@media(max-width:900px){.brand-order-steps{grid-template-columns:1fr}.brand-coverage-grid{grid-template-columns:1fr}.brand-profile-heading{align-items:flex-start}.brand-profile-heading h1{font-size:clamp(1.65rem,7vw,2.5rem)}}
.faq-list{display:grid;gap:10px}.faq-list details{padding:0 20px;border:1px solid var(--soft-line);border-radius:9px;background:#fff}.faq-list summary{display:flex;justify-content:space-between;gap:15px;padding:18px 0;cursor:pointer;font-weight:900;list-style:none}.faq-list summary span{color:var(--orange);font-size:1.2rem}.faq-list p{margin:0;padding:0 0 20px;color:#687487;line-height:1.7}.location-search-large{display:flex;max-width:720px;margin-top:28px;padding:6px;border:1px solid var(--soft-line);border-radius:9px;background:#fff}.location-search-large input{flex:1;min-width:0;padding:13px;border:0;outline:0}.location-search-large button{padding:11px 22px;border:0;border-radius:6px;background:var(--orange);color:#fff;font-weight:900}.search-result-list{display:grid;gap:9px}.search-result-list>a{display:grid;grid-template-columns:1fr auto 20px;gap:16px;align-items:center;padding:16px;border:1px solid var(--soft-line);border-radius:8px}.search-result-list strong,.search-result-list small{display:block}.search-result-list small{margin-top:4px;color:#818b9a;font-size:.65rem}
@media(max-width:980px){.local-hero__grid,.directory-hero__grid,.blog-layout,.article-layout,.faq-layout,.search-layout,.request-layout,.brand-profile-layout,.seo-copy-grid{grid-template-columns:1fr}.blog-sidebar,.article-sidebar{position:static}.state-grid--directory{grid-template-columns:repeat(3,1fr)}.price-calc-grid{grid-template-columns:repeat(4,1fr)}.related-links{grid-template-columns:repeat(2,1fr)}.search-widget--footer{padding-inline:16px}}
@media(max-width:700px){.search-widget--inline,.search-widget--footer,.search-widget--hero,.post-featured{grid-template-columns:1fr}.search-widget form,.location-search-large{display:grid}.local-hero__grid{gap:28px}.headline-price strong{font-size:2.4rem}.price-calc-grid,.state-grid--directory,.provider-cards,.info-cards,.home-order-grid,.post-grid,.related-posts,.brand-directory,.process-steps,.form-columns,.coverage-states{grid-template-columns:1fr}.municipality-grid{grid-template-columns:1fr}.block-heading{align-items:start;flex-direction:column}.blog-hero h1,.faq-hero h1,.directory-hero h1,.search-results-hero h1,.brand-request-hero h1,.article-hero h1,.local-hero h1{font-size:2.35rem}.article-meta{display:grid}.search-result-list>a{grid-template-columns:1fr auto}.search-result-list>a>b{display:none}}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at top left, rgba(255, 106, 43, 0.12), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, var(--bg) 100%);
}

main { min-height: 58vh; }

input, select, textarea, button { font: inherit; }

.form-grid { display: grid; gap: 16px; margin-top: 24px; }
.form-grid label { display: grid; gap: 8px; font-weight: 700; }
.form-grid input { width: 100%; padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: #fff; color: var(--ink); }
.auth-section { padding-top: 56px; }
.auth-card { width: min(100%, 520px); margin: 0 auto; }
.alert { padding: 12px 14px; border-radius: var(--radius-sm); color: #8a2b18; background: #fff0eb; border: 1px solid #ffd1c2; }
.admin-bar { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 28px; }
.metric { margin: 18px 0 2px; font-size: 2.8rem; letter-spacing: -0.06em; }
.admin-grid { margin-top: 24px; }

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  display: block;
}

.site-wrap {
  width: min(100% - 32px, var(--max));
  margin: 0 auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(14px);
  background: rgba(255, 255, 255, 0.88);
  border-bottom: 1px solid rgba(31, 53, 96, 0.08);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 76px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.brand__mark {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--brand), #ff8f57);
  color: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 12px 24px rgba(255, 106, 43, 0.28);
}

.nav {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.nav a,
.nav button {
  border: 1px solid transparent;
  background: transparent;
  color: var(--ink);
  padding: 11px 14px;
  border-radius: 999px;
  font-size: 0.95rem;
  font-weight: 600;
}

.nav a:hover,
.nav button:hover {
  border-color: rgba(255, 106, 43, 0.28);
  background: rgba(255, 106, 43, 0.08);
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 20px;
  border-radius: 999px;
  font-weight: 700;
  border: 1px solid transparent;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.btn:hover {
  transform: translateY(-1px);
}

.btn--brand {
  background: var(--brand);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255, 106, 43, 0.26);
}

.btn--ghost {
  border-color: rgba(31, 53, 96, 0.16);
  background: rgba(255, 255, 255, 0.8);
}

.hero {
  padding: 48px 0 28px;
}

.hero__panel {
  background: linear-gradient(180deg, #ff6a2b 0%, #ff7a42 100%);
  color: #fff;
  border-radius: 30px;
  padding: 44px 28px;
  box-shadow: 0 26px 80px rgba(255, 106, 43, 0.24);
}

.hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.92rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
  opacity: 0.9;
}

.hero__title {
  margin: 18px 0 12px;
  font-size: clamp(2.2rem, 5vw, 4.3rem);
  line-height: 0.98;
  letter-spacing: -0.05em;
  max-width: 11ch;
}

.hero__lead {
  margin: 0;
  max-width: 65ch;
  font-size: clamp(1rem, 1.6vw, 1.15rem);
  line-height: 1.7;
  opacity: 0.92;
}

.searchbar {
  display: flex;
  gap: 12px;
  padding: 10px;
  background: #fff;
  border-radius: 999px;
  box-shadow: var(--shadow);
  margin-top: 28px;
}

.searchbar input,
.searchbar select {
  border: 0;
  outline: 0;
  background: transparent;
  padding: 0 18px;
  flex: 1;
  font-size: 1rem;
  min-width: 0;
}

.searchbar .btn {
  padding-inline: 24px;
}

.section {
  padding: 24px 0 64px;
}

.section__head {
  margin-bottom: 22px;
}

.section__kicker {
  color: var(--brand);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 800;
  font-size: 0.8rem;
}

.section__title {
  margin: 8px 0 10px;
  font-size: clamp(1.5rem, 3vw, 2.5rem);
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.section__text {
  margin: 0;
  color: var(--muted);
  max-width: 72ch;
  line-height: 1.7;
}

.grid {
  display: grid;
  gap: 18px;
}

.grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: 0 14px 40px rgba(31, 53, 96, 0.06);
  overflow: hidden;
}

.card__body {
  padding: 22px;
}

.card__title {
  margin: 0 0 8px;
  font-size: 1.08rem;
  line-height: 1.25;
}

.card__meta {
  color: var(--muted);
  font-size: 0.95rem;
  line-height: 1.6;
}

.pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(255, 106, 43, 0.12);
  color: var(--brand);
  font-size: 0.85rem;
  font-weight: 700;
}

.sidebar-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: start;
}

.sidebar {
  display: grid;
  gap: 18px;
}

.sidebar .card {
  position: sticky;
  top: 96px;
}

.list {
  display: grid;
  gap: 10px;
}

.list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--line);
}

.list__item strong {
  font-size: 0.98rem;
}

.list__item span {
  color: var(--muted);
  font-size: 0.9rem;
}

.footer {
  padding: 42px 0;
  color: #d9e0ea;
  background: var(--brand-2);
}

.footer a {
  color: #fff;
  opacity: 0.92;
}

.footer__grid {
  display: grid;
  gap: 22px;
  grid-template-columns: 2fr 1fr 1fr 1fr;
}

.footer__note {
  margin-top: 24px;
  color: rgba(255, 255, 255, 0.66);
  font-size: 0.92rem;
  line-height: 1.6;
}

@media (max-width: 980px) {
  .grid--4,
  .grid--3,
  .grid--2,
  .footer__grid,
  .sidebar-layout {
    grid-template-columns: 1fr;
  }

  .site-header__inner {
    flex-direction: column;
    align-items: flex-start;
    padding: 14px 0;
  }

  .nav {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .hero__panel {
    padding: 28px 18px;
  }

  .searchbar {
    flex-direction: column;
    border-radius: 24px;
  }

  .admin-bar { align-items: flex-start; flex-direction: column; }
}

/* Shared shell overrides: keep this block last. */
body { background:#fff; color:var(--navy); font-family:"Trebuchet MS","Segoe UI",sans-serif; }
.site-header { position:sticky; top:0; z-index:50; min-height:58px; background:#172a4b; border:0; box-shadow:none; backdrop-filter:none; }
.site-header__inner { min-height:58px; }
.site-header .brand { color:#fff; font-size:.88rem; }
.site-header .brand__mark,.footer .brand__mark { width:26px; height:26px; border-radius:7px; font-size:.72rem; box-shadow:none; background:#ff6336; }
.site-header .nav { gap:3px; }
.site-header .nav a { color:#fff; padding:8px 11px; font-size:.72rem; }
.site-header .nav .nav-cta { border:1px solid rgba(255,255,255,.85); border-radius:5px; margin-left:12px; }
.footer { padding:55px 0 25px; color:#d9e0ea; background:#172a4b; }
.footer__grid { grid-template-columns:1.5fr repeat(3,1fr); }
.footer .brand { color:#fff; }
@media(max-width:980px){.site-header__inner{align-items:center;flex-direction:row;padding:8px 0}.site-header .nav{display:none}.footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer__grid{grid-template-columns:1fr}}

/* Professional CMS layout */
.cms-breadcrumbs { display:flex; align-items:center; gap:8px; max-width:1480px; margin:0 auto 18px; color:#8a97a9; font-size:.72rem; }
.cms-breadcrumbs a { color:#53657c; font-weight:750; text-decoration:none; }
.cms-breadcrumbs a:hover { color:#e6532a; }
.cms-breadcrumbs span:last-child { color:#25364d; font-weight:750; }
.cms-module { padding:0; }
.cms-body .section>.site-wrap,.cms-module>.site-wrap { width:100%; max-width:1480px; padding:0; }
.cms-body .section__text { max-width:760px; margin:-4px 0 22px; color:#6d7c90; line-height:1.6; }
.cms-body .section>.site-wrap>h1 { margin:0 0 8px; }
.cms-body .section>.site-wrap>h2 { margin:30px 0 14px; color:#172a4b; font-size:1.12rem; }
.cms-body .admin-layout>div,.cms-body .admin-layout>aside { min-width:0; }
.cms-body .admin-layout>aside { position:sticky; top:94px; padding:18px; border:1px solid #e2e7ee; border-radius:14px; background:#fff; }
.cms-body .admin-layout>aside>h2 { margin:0 0 14px; font-size:1rem; }
.cms-body .upload-form { max-width:none; margin:18px 0 28px; }
.cms-body .preview-box { padding:20px; border:1px solid #e2e7ee; border-radius:14px; background:#fff; }
.cms-body .legal-tabs { padding:5px; border:1px solid #e2e7ee; border-radius:10px; background:#fff; }
.cms-body .legal-tabs a { border:0; border-radius:7px; }
.cms-body .legal-tabs a:hover { color:#fff; background:#172a4b; }

.cms-editor-form { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:20px; align-items:start; }
.cms-editor-main,.cms-editor-sidebar { display:grid; gap:20px; min-width:0; }
.cms-editor-sidebar { position:sticky; top:94px; }
.cms-form-panel,.cms-publish-panel,.cms-image-panel { overflow:visible; }
.cms-panel-body { display:grid; gap:18px; padding:21px; }
.cms-field { display:grid; gap:7px; color:#34465e; font-size:.78rem; font-weight:750; }
.cms-field>span { display:flex; align-items:center; justify-content:space-between; }
.cms-field input,.cms-field textarea,.cms-field select { width:100%; padding:11px 12px; color:#203149; border:1px solid #ccd6e2; border-radius:8px; background:#fff; font:inherit; font-weight:500; }
.cms-field input:focus,.cms-field textarea:focus,.cms-field select:focus { border-color:#ff6336; outline:3px solid rgba(255,99,54,.12); }
.cms-field--title input { padding:14px 15px; font-size:1.18rem; font-weight:750; }
.cms-slug-field { display:flex; align-items:center; overflow:hidden; border:1px solid #ccd6e2; border-radius:8px; background:#f7f9fb; }
.cms-slug-field:focus-within { border-color:#ff6336; outline:3px solid rgba(255,99,54,.12); }
.cms-slug-field input { flex:1; min-width:0; border:0; border-radius:0; outline:0!important; }
.cms-slug-field small { padding:0 10px; color:#7b899b; font-weight:650; }
.field-help { color:#8a97a8; font-size:.68rem; font-weight:500; text-align:right; }
.cms-seo-fields { grid-template-columns:1fr 1fr; align-items:start; }
.cms-alert { margin-bottom:18px; padding:13px 16px; border-radius:9px; font-size:.8rem; font-weight:700; }
.cms-alert--success { color:#126b51; border:1px solid #bfe7d8; background:#eaf8f3; }
.cms-alert--error { color:#9a3027; border:1px solid #f0c4bf; background:#fff0ee; }
.cms-save-button { width:100%; justify-content:center; }
.cms-publish-meta { margin:0; padding:10px 12px; color:#65758a; border-radius:8px; background:#f5f7fa; font-size:.72rem; }

.rich-editor-shell { overflow:hidden; border:1px solid #ccd6e2; border-radius:10px; background:#fff; }
.editor-toolbar { display:flex; flex-wrap:wrap; gap:5px; padding:8px; border:0; border-bottom:1px solid #e0e6ed; border-radius:0; background:#f7f9fb; }
.editor-toolbar button { padding:6px 9px; color:#33465e; border:1px solid #d8e0e9; border-radius:6px; background:#fff; font-size:.7rem; font-weight:750; cursor:pointer; }
.editor-toolbar button:hover,.editor-toolbar button:focus { color:#fff; border-color:#172a4b; background:#172a4b; outline:0; }
.rich-editor { min-height:420px; padding:24px; color:#28394f; border:0; border-radius:0; background:#fff; font-size:.94rem; font-weight:400; line-height:1.75; outline:0; }
.rich-editor:empty::before { color:#9aa5b3; content:attr(data-placeholder); }
.rich-editor h2 { margin:1.6em 0 .55em; font-size:1.45rem; }.rich-editor h3 { margin:1.35em 0 .45em; font-size:1.15rem; }
.rich-editor blockquote { margin:1.2em 0; padding:12px 16px; border-left:4px solid #ff6336; background:#fff5f1; }
.editor-footer { display:flex; justify-content:space-between; padding:7px 11px; color:#8491a2; border-top:1px solid #edf0f4; background:#fafbfc; font-size:.65rem; font-weight:600; }

.featured-image-preview { display:grid; overflow:hidden; aspect-ratio:16/9; place-items:center; border:1px solid #dce3eb; border-radius:10px; background:#edf1f5; }
.featured-image-preview img { width:100%; height:100%; object-fit:cover; }
.featured-image-preview>div { display:grid; gap:4px; color:#7b899a; text-align:center; }
.featured-image-preview>div strong { color:#52647a; font-size:.82rem; }.featured-image-preview>div span { font-size:.68rem; }
.cms-upload-control { display:grid; gap:7px; padding:12px; border:1px dashed #bdc9d7; border-radius:9px; color:#34465e; background:#fafbfd; font-size:.76rem; font-weight:750; cursor:pointer; }
.cms-upload-control input { width:100%; font-size:.7rem; }.cms-upload-control small { color:#8491a2; font-weight:500; }
.cms-check { display:flex; align-items:center; gap:7px; color:#66768a; font-size:.72rem; }.cms-check input { width:auto; }

.cms-post-list-panel { margin-top:22px; }
.cms-post-list { display:grid; }
.cms-post-list article { display:grid; grid-template-columns:104px minmax(0,1fr) auto 105px; gap:15px; align-items:center; padding:13px 20px; border-bottom:1px solid #edf0f4; }
.cms-post-list article:last-child { border-bottom:0; }
.cms-post-thumb { display:grid; overflow:hidden; width:104px; aspect-ratio:16/9; place-items:center; color:#8a97a8; border-radius:7px; background:#edf1f5; font-size:.62rem; text-decoration:none; }
.cms-post-thumb img { width:100%; height:100%; object-fit:cover; }
.cms-post-list h3 { margin:0 0 4px; font-size:.85rem; }.cms-post-list h3 a { color:#203149; text-decoration:none; }
.cms-post-list p { max-width:720px; margin:0 0 4px; overflow:hidden; color:#718095; font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.cms-post-list small { color:#8b97a7; font-size:.65rem; }
.cms-row-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; font-size:.7rem; }.cms-row-actions>a { color:#315b87; font-weight:750; text-decoration:none; }

.post-cover-link,.post-card-media,.news-image-link { display:block; overflow:hidden; }
.post-cover-link { min-height:260px; border-radius:8px; }
.post-cover,.news-image { display:block; width:100%; object-fit:cover; }
.post-featured .post-cover { height:100%; min-height:260px; }
.post-card .post-cover { height:180px; }
.post-cover--fallback { background:linear-gradient(135deg,#203a50,#8ca1b1); }
.news-image-link { border-radius:8px; }.news-image { height:160px; transition:transform .3s ease; }.news-image-link:hover .news-image { transform:scale(1.025); }

@media(max-width:1050px){.cms-editor-form{grid-template-columns:1fr}.cms-editor-sidebar{position:static;grid-template-columns:1fr 1fr}.cms-seo-fields{grid-template-columns:1fr}.cms-post-list article{grid-template-columns:90px minmax(0,1fr) auto}.cms-row-actions{grid-column:2/4;justify-content:flex-start}}
@media(max-width:700px){.cms-editor-sidebar{grid-template-columns:1fr}.cms-post-list article{grid-template-columns:78px minmax(0,1fr);padding:12px}.cms-post-thumb{width:78px}.cms-post-list .cms-status{grid-column:2}.cms-row-actions{grid-column:2}.editor-toolbar{position:static}.rich-editor{min-height:320px;padding:17px}.cms-panel-body{padding:16px}}
.cms-media-upload { grid-template-columns:minmax(0,1fr) auto; align-items:end; }.cms-media-upload .btn { min-height:43px; }
.cms-media-library { margin-top:20px; }.cms-media-library .media-grid { padding:18px; grid-template-columns:repeat(5,minmax(0,1fr)); }
.cms-media-library .media-grid figure { overflow:hidden; padding:0; border-color:#e0e6ed; border-radius:10px; background:#fff; }
.cms-media-library .media-grid img { height:150px; border-radius:0; }
.cms-media-library figcaption { display:grid; gap:7px; padding:9px; }.cms-media-library figcaption span { overflow:hidden; color:#68788d; text-overflow:ellipsis; white-space:nowrap; }
.cms-media-library figcaption button { padding:6px; color:#315b87; border:0; border-radius:5px; background:#edf4fb; font-size:.65rem; font-weight:750; cursor:pointer; }
.cms-empty-state { padding:50px 20px; color:#718095; text-align:center; }.cms-empty-state strong { color:#34465e; }
@media(max-width:1100px){.cms-media-library .media-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.cms-media-upload{grid-template-columns:1fr}.cms-media-library .media-grid{grid-template-columns:repeat(2,1fr);padding:12px}}

/* Social sharing */
.social-share { padding:34px 0; border-top:1px solid #e4e9ef; background:#fff; }
.social-share__inner { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.social-share__inner>div:first-child { max-width:650px; }.social-share h2 { margin:4px 0 6px; color:#172a4b; font-size:1.18rem; }.social-share p { margin:0; color:#718095; font-size:.78rem; line-height:1.55; }
.social-share__links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.social-share__button { display:inline-flex; align-items:center; gap:7px; min-height:38px; padding:8px 11px; color:#fff; border-radius:8px; font-size:.68rem; font-weight:800; text-decoration:none; transition:transform .18s ease,box-shadow .18s ease; }
.social-share__button:hover { color:#fff; transform:translateY(-2px); box-shadow:0 7px 16px rgba(25,42,68,.16); }
.social-share__button svg { width:17px; height:17px; fill:currentColor; }
.social-share__button--whatsapp { background:#1f9d61; }.social-share__button--facebook { background:#3168b2; }.social-share__button--x { background:#111827; }.social-share__button--telegram { background:#248bc1; }.social-share__button--linkedin { background:#176ca4; }.social-share__button--correo { background:#e6532a; }

/* 404 page */
.error-page { display:grid; min-height:calc(100vh - 58px); place-items:center; padding:70px 0; background:radial-gradient(circle at 50% 15%,#fff 0,#f7f8fa 46%,#eef2f6 100%); text-align:center; }
.error-page__inner { max-width:920px; }.error-page__code { display:flex; align-items:center; justify-content:center; gap:5px; height:116px; margin-bottom:14px; color:#172a4b; font-size:7rem; font-weight:900; letter-spacing:-.09em; line-height:1; }
.error-page__code i { position:relative; display:block; width:84px; height:104px; border-radius:50% 50% 55% 55%; background:#ff4f1f; transform:rotate(45deg); }.error-page__code i::after { position:absolute; right:18px; bottom:17px; width:42px; height:55px; border-radius:50%; background:#fff; content:""; }
.error-page h1 { margin:6px 0 12px; color:#172a4b; font-size:clamp(2rem,5vw,3.4rem); letter-spacing:-.045em; }.error-page__inner>p { max-width:680px; margin:0 auto 26px; color:#68788d; line-height:1.7; }
.error-page .search-widget { margin:0 auto 22px; text-align:left; }.error-page__links { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }.error-page__links a { padding:9px 12px; color:#34506f; border:1px solid #d9e1e9; border-radius:8px; background:#fff; font-size:.72rem; font-weight:800; text-decoration:none; }.error-page__links a:hover { color:#fff; border-color:#172a4b; background:#172a4b; }
@media(max-width:820px){.social-share__inner{align-items:flex-start;flex-direction:column}.social-share__links{justify-content:flex-start}.social-share__button span{display:none}.social-share__button{width:40px;justify-content:center;padding:8px}.error-page__code{height:90px;font-size:5rem}.error-page__code i{width:62px;height:78px}}

/* Compact brand manager */
.cms-brands-module .cms-page-heading { margin-bottom:18px; }
.cms-brand-form { grid-template-columns:minmax(0,1fr) 310px; }
.cms-brand-form .cms-panel-body { gap:14px; padding:18px; }
.cms-panel-hint { align-self:center; color:#8794a5; font-size:.66rem; font-weight:650; }
.cms-compact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cms-compact-grid .cms-field--wide { grid-column:1/-1; }
.cms-compact-grid textarea { min-height:92px; resize:vertical; }
.cms-national-toggle { display:flex; align-items:center; gap:12px; padding:13px 15px; border:1px solid #ccd7e3; border-radius:9px; background:#f8fafc; cursor:pointer; }
.cms-national-toggle input { width:18px; height:18px; accent-color:#ff6336; }
.cms-national-toggle span { display:grid; gap:2px; }.cms-national-toggle strong { color:#2a3d55; font-size:.78rem; }.cms-national-toggle small { color:#7c899a; font-size:.66rem; }
.cms-state-selector { overflow:hidden; border:1px solid #e0e6ed; border-radius:10px; transition:opacity .2s ease; }
.cms-state-selector.is-disabled { opacity:.48; }
.cms-state-selector-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:11px 13px; border-bottom:1px solid #e6ebf0; background:#f8fafc; }
.cms-state-selector-head>div:first-child { display:grid; gap:2px; }.cms-state-selector-head strong { color:#34465e; font-size:.75rem; }.cms-state-selector-head small { color:#8794a5; font-size:.63rem; }
.cms-state-selector-head>div:last-child { display:flex; gap:5px; }.cms-state-selector-head button { padding:5px 8px; color:#365d87; border:1px solid #d7e1eb; border-radius:5px; background:#fff; font-size:.61rem; font-weight:750; cursor:pointer; }
.cms-state-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; max-height:236px; overflow:auto; padding:7px; }
.cms-state-grid label { display:flex; align-items:center; gap:7px; padding:7px 8px; border-radius:6px; color:#53647a; font-size:.67rem; cursor:pointer; }
.cms-state-grid label:hover { background:#f1f5f8; }.cms-state-grid input { flex:none; width:14px; height:14px; accent-color:#ff6336; }
.brand-logo-preview { display:grid; height:132px; place-items:center; overflow:hidden; padding:16px; border:1px solid #dce3eb; border-radius:10px; background:#f2f5f8; }
.brand-logo-preview img { width:100%; height:100%; object-fit:contain; }.brand-logo-preview>div { display:grid; gap:4px; color:#8a97a8; text-align:center; }.brand-logo-preview strong { color:#52647a; font-size:.8rem; }.brand-logo-preview span { font-size:.65rem; }
.cms-secondary-action { display:block; color:#315b87; font-size:.7rem; font-weight:750; text-align:center; text-decoration:none; }
.cms-brand-list-panel { margin-top:20px; }.cms-brand-list-panel>.cms-panel-head>a { color:#315b87; font-size:.7rem; font-weight:750; text-decoration:none; }
.cms-brand-list { display:grid; }.cms-brand-list article { display:grid; grid-template-columns:52px minmax(0,1fr) auto 105px; gap:14px; align-items:center; padding:11px 18px; border-bottom:1px solid #edf0f4; }
.cms-brand-list article:last-child { border-bottom:0; }.cms-brand-thumb { display:grid; width:52px; height:52px; place-items:center; overflow:hidden; border:1px solid #e0e6ed; border-radius:9px; color:#fff; background:#172a4b; font-size:.69rem; font-weight:850; text-decoration:none; }
.cms-brand-thumb img { display:block; width:100%; height:100%; padding:5px; object-fit:contain; border-radius:50%; background:#fff; }.cms-brand-thumb.brand-avatar--image { background:#fff; }.cms-brand-list article>a { display:block; border-radius:50%; text-decoration:none; }.cms-brand-list h3 { margin:0 0 3px; font-size:.82rem; }.cms-brand-list h3 a { color:#203149; text-decoration:none; }
.cms-brand-thumb { border-radius:50%; }
.cms-brand-list p { margin:0 0 3px; color:#718095; font-size:.68rem; }.cms-brand-list small { color:#8b97a7; font-size:.63rem; }
.cms-heading-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.cms-heading-actions .btn { margin:0; }
.cms-import-layout { display:grid; grid-template-columns:1fr 1fr; gap:20px; }.cms-import-layout .btn { margin-top:0; }.cms-download-template { width:100%; justify-content:center; }
.cms-import-preview { margin-top:20px; }.cms-import-preview .table-scroll { margin:0; padding:18px; }.cms-import-publish { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 20px; border-top:1px solid #edf0f4; }.cms-import-publish p { margin:0; color:#627287; font-size:.75rem; }.cms-import-publish .btn { flex:none; margin:0; }
.cms-import-issues { margin:18px; padding:15px 17px; color:#8b3c30; border:1px solid #f0c4bf; border-radius:9px; background:#fff3f1; font-size:.72rem; }.cms-import-issues ul { display:grid; gap:5px; max-height:230px; margin:10px 0 0; padding-left:18px; overflow:auto; }
@media(max-width:1100px){.cms-brand-form{grid-template-columns:1fr}.cms-brand-form .cms-editor-sidebar{grid-template-columns:1fr 1fr}.cms-state-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.cms-import-layout{grid-template-columns:1fr}.cms-import-publish{align-items:stretch;flex-direction:column}.cms-import-publish .btn{width:100%}}
@media(max-width:700px){.cms-brand-form .cms-editor-sidebar,.cms-compact-grid{grid-template-columns:1fr}.cms-state-grid{grid-template-columns:repeat(2,1fr)}.cms-state-selector-head{align-items:flex-start;flex-direction:column}.cms-brand-list article{grid-template-columns:46px minmax(0,1fr) auto;padding:10px 12px}.cms-brand-thumb{width:46px;height:46px}.cms-brand-list .cms-row-actions{grid-column:2/4}.cms-panel-hint{display:none}.cms-heading-actions{width:100%;justify-content:stretch}.cms-heading-actions .btn{flex:1}}

/* Responsive public navigation */
.mobile-menu-toggle,.mobile-menu-overlay { display:none; }
.mobile-menu-toggle { position:relative; z-index:104; width:42px; height:42px; padding:10px; place-items:center; border:1px solid rgba(255,255,255,.22); border-radius:9px; background:rgba(255,255,255,.08); cursor:pointer; }
.mobile-menu-toggle span { display:block; width:20px; height:2px; margin:2px 0; border-radius:2px; background:#fff; transition:transform .22s ease,opacity .18s ease; }
@media(max-width:980px){
  body.site-menu-open { overflow:hidden; }
  .site-header__inner { position:relative; }
  .site-header .brand { position:relative; z-index:104; }
  .mobile-menu-toggle { display:grid; }
  .site-header .nav { display:flex!important; position:fixed; z-index:103; inset:0 0 0 auto; width:min(86vw,360px); padding:88px 22px 30px; align-items:stretch; align-content:flex-start; flex-direction:column; flex-wrap:nowrap; gap:5px; overflow-y:auto; background:#172a4b; box-shadow:-20px 0 60px rgba(4,15,34,.28); transform:translateX(105%); visibility:hidden; pointer-events:none; transition:transform .24s ease,visibility 0s linear .24s; }
  .site-header .nav::before { margin-bottom:8px; color:#91a3bd; content:"NAVEGACIÓN"; font-size:.63rem; font-weight:850; letter-spacing:.14em; }
  .site-header .nav a { width:100%; padding:13px 12px; border-bottom:1px solid rgba(255,255,255,.09); border-radius:7px; font-size:.84rem; }
  .site-header .nav .nav-cta { margin:12px 0 0; padding:13px; border-color:#ff6336; background:#ff6336; text-align:center; }
  .mobile-menu-overlay { position:fixed; z-index:101; inset:0; width:100%; height:100%; border:0; background:rgba(5,17,36,.58); opacity:0; cursor:pointer; pointer-events:none; transition:opacity .22s ease; }
  .site-menu-open .site-header .nav { transform:none; visibility:visible; pointer-events:auto; transition:transform .24s ease; }
  .site-menu-open .mobile-menu-overlay { display:block; opacity:1; pointer-events:auto; }
  .site-menu-open .mobile-menu-toggle span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
  .site-menu-open .mobile-menu-toggle span:nth-child(2) { opacity:0; }
  .site-menu-open .mobile-menu-toggle span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
}
@media(prefers-reduced-motion:reduce){.site-header .nav,.mobile-menu-overlay,.mobile-menu-toggle span{transition:none!important}}
/* Contextual freshness message used across public, indexable pages. */
.seo-today{background:#f4f7fb;border-bottom:1px solid #dbe3ee;color:#172a4b}
.seo-today__inner{display:flex;align-items:center;justify-content:center;gap:.65rem 1.15rem;min-height:42px;font-size:.9rem;text-align:center}
.seo-today__inner strong{font-weight:800}
.seo-today__inner span{color:#53647a}
.seo-today__inner span::before{content:'·';margin-right:1.15rem;color:#9aa8b9}
@media (max-width:640px){.seo-today__inner{flex-direction:column;gap:.1rem;padding:.5rem 1rem}.seo-today__inner span::before{content:none}}

/* CMS UX: navigation, searchable records and contextual batch actions. */
.cms-navigation a>span{font-size:.78rem}.cms-navigation a>span i{line-height:1}.cms-sidebar-footer>a,.cms-top-actions a,.cms-menu-toggle,.cms-breadcrumbs a{display:inline-flex;align-items:center;gap:7px}
.cms-top-actions .cms-create{box-shadow:0 7px 18px rgba(255,99,54,.2)}.cms-menu-toggle span{display:inline}.cms-breadcrumbs>span[aria-hidden]{font-size:.55rem}
.cms-body a:focus-visible,.cms-body button:focus-visible,.cms-body input:focus-visible,.cms-body select:focus-visible,.cms-body textarea:focus-visible{outline:3px solid rgba(255,99,54,.28);outline-offset:2px}
.cms-brands-module>.site-wrap{display:flex;flex-direction:column}.cms-brands-module .cms-page-heading,.cms-brands-module .cms-alert{order:0}.cms-brands-module .cms-brand-list-panel{order:1;margin:0 0 22px}.cms-brands-module .cms-brand-form{order:2}.cms-brands-module.is-editing .cms-brand-form{order:1}.cms-brands-module.is-editing .cms-brand-list-panel{order:2;margin:22px 0 0}
.cms-brand-list-panel>.cms-panel-head p{margin:4px 0 0;color:#8290a2;font-size:.68rem}.cms-brand-list-panel>.cms-panel-head>a{display:inline-flex;align-items:center;gap:6px}
.cms-table-toolbar{display:flex;align-items:center;gap:9px;padding:12px 16px;border-bottom:1px solid #e6ebf0;background:#f8fafc}.cms-brand-search{position:relative;display:flex;flex:1;min-width:220px;align-items:center}.cms-brand-search>i{position:absolute;left:13px;color:#8391a3;font-size:.8rem}.cms-brand-search input{width:100%;min-height:42px;padding:10px 38px;border-color:#cbd5e1!important;background:#fff!important}.cms-status-filter{position:relative;display:flex;align-items:center}.cms-status-filter>i{position:absolute;left:12px;z-index:1;color:#718095;font-size:.72rem}.cms-status-filter select{min-height:42px;padding:9px 32px 9px 34px;color:#34465e;background:#fff}.cms-toolbar-button,.cms-clear-filter{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border:1px solid #172a4b;border-radius:8px;color:#fff;background:#172a4b;font-size:.74rem;font-weight:800;cursor:pointer}.cms-clear-filter{color:#52647a;border-color:#d2dae4;background:#fff;text-decoration:none}
.cms-list-columns{display:grid;grid-template-columns:34px 52px minmax(0,1fr) 100px 120px;gap:12px;align-items:center;padding:9px 18px;color:#7b899b;border-bottom:1px solid #e6ebf0;background:#fff;font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.cms-list-columns label{display:grid;place-items:center}.cms-list-columns>span:first-of-type{grid-column:2/4}.cms-list-columns input,.cms-row-select input{width:17px;height:17px;accent-color:#ff6336;cursor:pointer}
.cms-batch-bar{display:flex;min-height:50px;align-items:center;gap:10px;padding:8px 16px;color:#fff;background:#172a4b}.cms-batch-bar[hidden]{display:none}.cms-batch-bar strong{margin-right:auto;font-size:.78rem}.cms-batch-bar select{min-height:34px;padding:6px 30px 6px 10px;border-color:rgba(255,255,255,.3);font-size:.72rem}.cms-batch-bar button{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:6px 11px;color:#172a4b;border:0;border-radius:6px;background:#fff;font-size:.7rem;font-weight:800;cursor:pointer}.cms-batch-bar .cms-batch-cancel{color:#fff;background:rgba(255,255,255,.12)}
.cms-brand-list article{grid-template-columns:34px 52px minmax(0,1fr) 100px 120px;padding:11px 18px;transition:background .15s ease,box-shadow .15s ease}.cms-brand-list article:hover{background:#f8fafc}.cms-brand-list article.is-selected{background:#fff5f1;box-shadow:inset 3px 0 #ff6336}.cms-row-select{display:grid;place-items:center}.cms-brand-list small i{margin-right:4px;color:#8795a7}.cms-row-actions{gap:5px}.cms-row-actions>a,.cms-row-actions button{display:inline-flex;align-items:center;gap:5px;padding:7px 8px;border:0;border-radius:6px;font-size:.68rem;font-weight:800;cursor:pointer}.cms-row-actions>a{color:#315b87;background:#edf4fb}.cms-row-actions button.danger{color:#a33a30;background:#fff0ee}.cms-row-actions form{margin:0}.cms-empty-state>i{display:grid;width:44px;height:44px;margin:0 auto 12px;place-items:center;color:#66768a;border-radius:11px;background:#eef2f6}.cms-empty-state a{display:inline-block;margin-top:7px;color:#315b87;font-size:.74rem;font-weight:800}
.cms-brand-list-panel>.pagination{padding:0 18px 18px}.cms-heading-actions .btn--brand{box-shadow:none}.cms-save-button i,.cms-secondary-action i{margin-right:5px}
@media(max-width:850px){.cms-table-toolbar{flex-wrap:wrap}.cms-brand-search{flex-basis:100%}.cms-list-columns{display:none}.cms-brand-list article{grid-template-columns:28px 48px minmax(0,1fr) auto}.cms-brand-thumb{width:48px;height:48px}.cms-brand-list article>.cms-status{grid-column:3}.cms-row-actions{grid-column:3/5;justify-content:flex-start}.cms-batch-bar{flex-wrap:wrap}.cms-batch-bar strong{flex:1 0 100%}}
@media(max-width:560px){.cms-table-toolbar>*{width:100%}.cms-status-filter select,.cms-toolbar-button,.cms-clear-filter{width:100%}.cms-brand-list article{gap:10px;padding:12px}.cms-row-actions span{display:none}.cms-row-actions>a,.cms-row-actions button{width:34px;height:34px;justify-content:center}.cms-batch-bar label{flex:1}.cms-batch-bar select{width:100%}}

/* Public embeddable widget configurator. */
.widget-page-hero{padding:58px 0;color:#fff;background:linear-gradient(135deg,#172a4b 0%,#244e7d 100%)}
.widget-page-hero__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:50px;align-items:center}.widget-page-hero h1{max-width:760px;margin:8px 0 14px;font-size:clamp(2rem,5vw,3.65rem);line-height:1.02;letter-spacing:-.045em}.widget-page-hero p{max-width:720px;margin:0;color:#d9e4ef;font-size:1.03rem;line-height:1.7}.widget-page-features{display:grid;grid-template-columns:1fr 1fr;gap:10px}.widget-page-features span{padding:13px 14px;border:1px solid rgba(255,255,255,.17);border-radius:10px;background:rgba(255,255,255,.07);font-size:.78rem;font-weight:750}
.widget-builder__layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:28px;align-items:start}.widget-config,.widget-output{padding:22px;border:1px solid #dfe6ee;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(23,42,75,.07)}.widget-config{display:grid;gap:14px}.widget-config [hidden]{display:none!important}.widget-config .block-heading,.widget-output .block-heading{margin-bottom:2px}.widget-config label{display:grid;gap:7px;color:#34465e;font-size:.74rem;font-weight:800}.widget-config select{width:100%;min-height:41px;padding:8px 34px 8px 11px;color:#253b56;border:1px solid #cbd6e1;border-radius:8px;background:#fff;font:inherit}.widget-config fieldset{margin:0;padding:0;border:0}.widget-config legend{margin-bottom:9px;color:#34465e;font-size:.76rem;font-weight:800}.widget-config-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:4px;border-radius:10px;background:#eef2f6}.widget-config-tabs button{min-height:36px;padding:7px 8px;color:#607187;border:0;border-radius:7px;background:transparent;font-size:.69rem;font-weight:850;cursor:pointer}.widget-config-tabs button[aria-selected="true"]{color:#fff;background:#172a4b;box-shadow:0 4px 10px rgba(23,42,75,.16)}.widget-config-tabs button:focus-visible{outline:3px solid rgba(255,99,54,.28);outline-offset:1px}.widget-config-panel{display:grid;gap:14px;min-width:0}.widget-checks{display:grid;grid-template-columns:1fr 1fr;gap:6px}.widget-checks label{display:flex;min-width:0;align-items:center;gap:7px;padding:8px;border:1px solid #e1e7ed;border-radius:8px;background:#f8fafc;font-size:.67rem;cursor:pointer}.widget-checks input{width:15px;height:15px;flex:0 0 auto;accent-color:#ff6336}.widget-config__row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.widget-config .widget-switch{display:flex;min-height:41px;align-items:center;gap:8px;padding:8px 11px;border:1px solid #dce4ec;border-radius:8px}.widget-switch input{width:17px;height:17px;accent-color:#ff6336}
.widget-output{position:sticky;top:18px}.widget-preview{min-height:230px;padding:26px;border-radius:13px;background-color:#eef3f7;background-image:linear-gradient(45deg,rgba(23,42,75,.035) 25%,transparent 25%),linear-gradient(-45deg,rgba(23,42,75,.035) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(23,42,75,.035) 75%),linear-gradient(-45deg,transparent 75%,rgba(23,42,75,.035) 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}.widget-code-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:27px 0 10px}.widget-code-head h2{margin:2px 0 0;font-size:1.3rem}.copy-widget-code{padding:9px 14px;color:#fff;border:0;border-radius:8px;background:#ff6336;font-size:.72rem;font-weight:850;cursor:pointer}.widget-code{display:block;width:100%;min-height:150px;padding:14px;resize:vertical;color:#dce9f7;border:1px solid #233b5a;border-radius:10px;background:#12243d;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.widget-code-note{margin:9px 0 0;color:#718095;font-size:.7rem;line-height:1.55}.widget-code-note code,.useful-card code{padding:2px 5px;border-radius:4px;background:#edf1f5;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.widget-config .widget-customization{padding-top:15px;border-top:1px solid #e4e9ef}.widget-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.widget-show-presets,.widget-palette-presets{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.widget-show-presets button,.widget-palette-presets button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:7px;padding:7px 10px;color:#53647a;border:1px solid #d7e0e8;border-radius:8px;background:#fff;font-size:.66rem;font-weight:800;cursor:pointer}.widget-show-presets button:hover,.widget-palette-presets button:hover{border-color:#9aabba}.widget-show-presets button.is-active,.widget-palette-presets button.is-active{color:#172a4b;border-color:#ff6336;box-shadow:0 0 0 2px rgba(255,99,54,.12)}.widget-palette-presets i{display:block;width:15px;height:15px;border-radius:50%;background:#172a4b;box-shadow:inset 0 0 0 4px #234b79}.widget-palette-presets [data-palette="morado"] i{background:#4c1d95;box-shadow:inset 0 0 0 4px #7c3aed}.widget-palette-presets [data-palette="gris"] i{background:#1f2937;box-shadow:inset 0 0 0 4px #6b7280}.widget-palette-presets [data-palette="verde"] i{background:#064e3b;box-shadow:inset 0 0 0 4px #10b981}.widget-palette-presets [data-palette="naranja"] i{background:#7c2d12;box-shadow:inset 0 0 0 4px #f97316}.widget-color-help{margin:-2px 0 9px;color:#718095;font-size:.66rem;line-height:1.45}.widget-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.widget-color-grid label{min-width:0;font-size:.64rem}.widget-color-grid input[type="color"]{display:block;width:100%;height:38px;padding:3px;border:1px solid #ccd7e3;border-radius:7px;background:#fff;cursor:pointer}.reset-widget-colors{justify-self:start;padding:7px 10px;color:#51647b;border:1px solid #d5dee7;border-radius:7px;background:#f7f9fb;font-size:.66rem;font-weight:800;cursor:pointer}.widget-code{cursor:copy}.widget-code:focus{outline:3px solid rgba(255,99,54,.22);outline-offset:2px}.widget-code-note strong{color:#334a65}
/* Location picker: one or many states and municipalities. */
.widget-config-tabs{grid-template-columns:repeat(4,1fr)}
.widget-scope{padding:0}.widget-scope-options{display:grid;gap:8px}.widget-radio{display:flex!important;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #dce4ec;border-radius:9px;background:#fff;cursor:pointer}.widget-radio:has(input:checked){border-color:#ff6336;background:#fff8f5;box-shadow:0 0 0 2px rgba(255,99,54,.12)}.widget-radio input{width:17px;height:17px;margin-top:1px;flex:0 0 auto;accent-color:#ff6336}.widget-radio span{display:grid;gap:2px}.widget-radio strong{color:#22364f;font-size:.76rem}.widget-radio small{color:#7a8798;font-size:.66rem;font-weight:650}
.widget-picker{display:grid;gap:10px;padding:14px;border:1px solid #e2e8ef;border-radius:11px;background:#f8fafc}.widget-picker[hidden]{display:none!important}.widget-picker__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.widget-picker__row button{min-height:41px;padding:8px 12px;color:#fff;border:0;border-radius:8px;background:#172a4b;font-size:.68rem;font-weight:850;white-space:nowrap;cursor:pointer}.widget-picker__row button:hover:not(:disabled){background:#22406b}.widget-picker__row button:disabled{color:#8b98a8;background:#e5eaf0;cursor:not-allowed}
.widget-selection{display:grid;gap:8px;padding-top:4px;border-top:1px solid #e2e8ef}.widget-selection__title{color:#5b6b80;font-size:.66rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.widget-selection__title b{display:inline-grid;min-width:19px;height:19px;place-items:center;margin-left:5px;padding:0 5px;color:#fff;border-radius:20px;background:#ff6336;font-size:.62rem}
.widget-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.widget-chips__empty{color:#8894a5;font-size:.68rem;line-height:1.5}.widget-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 6px 6px 10px;border:1px solid #cfdae6;border-radius:8px;background:#fff}.widget-chip.is-state{border-color:#ffb59c;background:#fff6f2}.widget-chip span{display:grid;gap:1px;line-height:1.2}.widget-chip strong{color:#22364f;font-size:.7rem}.widget-chip small{color:#7d8a9b;font-size:.6rem;font-weight:700}.widget-chip button{display:grid;width:22px;height:22px;place-items:center;color:#6b7a8d;border:0;border-radius:6px;background:#eef2f6;font-size:.9rem;line-height:1;cursor:pointer}.widget-chip button:hover{color:#fff;background:#d8492a}
.widget-clear-selection{justify-self:start;padding:6px 9px;color:#51647b;border:1px solid #d5dee7;border-radius:7px;background:#fff;font-size:.64rem;font-weight:800;cursor:pointer}
.widget-amount-add{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(0,1.3fr) auto;gap:8px;align-items:end}.widget-config input[type="number"]{width:100%;min-height:41px;padding:8px 10px;color:#253b56;border:1px solid #cbd6e1;border-radius:8px;background:#fff;font:inherit}.widget-amount-add button{min-height:41px;padding:8px 13px;color:#fff;border:0;border-radius:8px;background:#ff6336;font-size:.68rem;font-weight:850;white-space:nowrap;cursor:pointer}.widget-amount-add button:hover{background:#e5512a}
.widget-amount-error{margin:0;color:#a63a24;font-size:.66rem;font-weight:800}.widget-amount-error[hidden]{display:none}
.widget-chip.is-liters{border-color:#bcd7f0;background:#f2f8fd}
.widget-scope-hint{margin:0;padding:11px 12px;border-left:3px solid #ff6336;border-radius:0 8px 8px 0;background:#fff5f1;color:#5c5049;font-size:.69rem;line-height:1.55}.widget-scope-hint strong{color:#2c3d54}
.widget-preview-scope{align-self:center;padding:5px 9px;border:1px solid #cfe3d8;border-radius:20px;background:#eef8f3;color:#1c6a52;font-size:.62rem;font-weight:850;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.widget-preview-scope.is-single{border-color:#cfdcee;background:#eef3fb;color:#1f4272}
.widget-output .block-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.widget-preview{min-height:180px;padding:20px}.widget-code{min-height:118px;max-height:240px}.copy-widget-code.is-copied{background:#0f9d70}
@media(max-width:920px){.widget-page-hero__grid,.widget-builder__layout{grid-template-columns:1fr}.widget-page-features{max-width:520px}.widget-output{position:static}}
@media(max-width:560px){.widget-page-hero{padding:42px 0}.widget-page-features,.widget-checks,.widget-config__row,.widget-control-grid,.widget-picker__row,.widget-amount-add{grid-template-columns:1fr}.widget-config-tabs{grid-template-columns:repeat(2,1fr)}.widget-chip{width:100%;justify-content:space-between}.widget-output .block-heading{align-items:flex-start;flex-direction:column}.widget-show-presets button{flex:1 1 calc(50% - 7px)}.widget-palette-presets button{flex:1 1 calc(33.333% - 7px)}.widget-color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.widget-config,.widget-output{padding:17px}.widget-preview{padding:12px}.widget-code-head{align-items:flex-start;flex-direction:column}.copy-widget-code{width:100%}}

/* Contextual calls to the embeddable price widget. */
.widget-config__row{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}
.widget-embed-cta{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:9px 13px;border:1px solid #ff6336;border-radius:7px;color:#d84b25!important;background:#fff;font-size:.7rem!important;font-weight:850!important;line-height:1.2;text-decoration:none!important;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.widget-embed-cta__icon{display:inline-grid;width:25px;height:21px;flex:0 0 25px;place-items:center;border-radius:5px;color:#fff!important;background:#ff6336;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.widget-embed-cta__label{display:block!important;min-width:0;width:auto!important;height:auto!important;color:inherit!important;background:transparent!important;font:inherit!important;overflow-wrap:anywhere}.widget-embed-cta:hover{background:#fff8f5;box-shadow:0 7px 18px rgba(255,99,54,.15);transform:translateY(-1px)}
.widget-embed-cta--hero{width:100%;margin-top:16px;color:#172a4b!important;border-color:#fff;background:#fff}.widget-embed-cta--hero:hover{background:#f7fafc}.widget-embed-cta--inline{background:transparent}.source-widget__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.source-widget__actions>a:first-child{white-space:nowrap}
.price-strip__widget-cta{grid-column:1/-1;display:flex;justify-content:center;margin-top:4px}.widget-embed-cta--strip{color:#172a4b!important;border-color:#fff;background:#fff}.widget-embed-cta--strip:hover{background:#f7fafc}.directory-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.sidebar-box .widget-embed-cta{margin-top:8px}
@media(max-width:700px){.source-widget__actions,.directory-heading-actions{align-items:stretch;flex-direction:column}.source-widget__actions>a:first-child{white-space:normal}.widget-embed-cta{width:100%}.directory-heading-actions{width:100%}.updated-badge{text-align:center}}

/* Widget subscriptions, adapted from Orliv's dashboard language. */
.pricing-hero{padding:70px 0 62px;color:#fff;background:radial-gradient(circle at 85% 15%,rgba(126,224,189,.2),transparent 28%),linear-gradient(135deg,#172a4b,#244e7d)}
.pricing-hero .section__kicker{color:#7ee0bd}.pricing-hero h1{max-width:780px;margin:8px 0 14px;font-size:clamp(2.1rem,5vw,4rem);line-height:1.02;letter-spacing:-.045em}.pricing-hero p:last-child{max-width:720px;margin:0;color:#d8e5f1;font-size:1.05rem;line-height:1.65}
.pricing-section{background:#f5f7fa}.pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}.pricing-card{position:relative;display:flex;min-width:0;flex-direction:column;gap:20px;padding:25px;border:1px solid #dfe6ee;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(23,42,75,.055)}.pricing-card.is-featured{border:2px solid #ff6336;box-shadow:0 18px 42px rgba(255,99,54,.13)}.pricing-badge{position:absolute;top:-12px;right:18px;padding:5px 10px;color:#fff;border-radius:30px;background:#ff6336;font-size:.62rem;font-weight:900;letter-spacing:.07em}.pricing-domain-count{margin:0;color:#ff6336;font-size:2.7rem;font-weight:900;line-height:1}.pricing-card h2{margin:2px 0 0;color:#172a4b;font-size:1.05rem}.pricing-price{display:grid;gap:3px;margin:0}.pricing-price strong{color:#172a4b;font-size:2rem;letter-spacing:-.04em}.pricing-price span{color:#77869a;font-size:.72rem;font-weight:750}.pricing-card ul{display:grid;gap:10px;margin:0 0 auto;padding:0;list-style:none}.pricing-card li{position:relative;padding-left:20px;color:#52647a;font-size:.76rem;line-height:1.45}.pricing-card li:before{position:absolute;left:0;color:#15906c;content:'✓';font-weight:900}.pricing-card form,.pricing-card .btn{width:100%}.pricing-card .btn{min-height:45px}.pricing-note{max-width:820px;margin:28px auto 0;color:#718095;font-size:.72rem;line-height:1.6;text-align:center}
.account-auth{min-height:70vh;background:#f5f7fa}.account-auth-card{max-width:490px;margin:auto;padding:32px;border:1px solid #dfe6ee;border-radius:18px;background:#fff;box-shadow:0 18px 48px rgba(23,42,75,.09)}.account-auth-card h1{margin:5px 0 8px;color:#172a4b;font-size:2rem}.account-auth-card>p:not(.section__kicker):not(.alert){color:#68798f;line-height:1.55}.account-form{display:grid;gap:15px;margin-top:24px}.account-form label,.domain-add label{display:grid;gap:7px;color:#34465e;font-size:.75rem;font-weight:800}.account-form input,.domain-add input,.widget-license-field input{width:100%;min-height:44px;padding:10px 12px;color:#172a4b;border:1px solid #cbd6e1;border-radius:8px;background:#fff;font:inherit}.account-form small,.widget-license-field small{color:#7a899b;font-size:.66rem;font-weight:600;line-height:1.45}.account-auth-link{margin:20px 0 0!important;font-size:.74rem;text-align:center}.account-auth-link a{color:#df4d25;font-weight:800}
.account-dashboard{min-height:75vh;padding:44px 0 70px;background:#f3f6f9}.account-dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.account-dashboard-head h1{margin:3px 0 5px;color:#172a4b;font-size:clamp(1.8rem,4vw,2.5rem)}.account-dashboard-head p{margin:0;color:#68798e}.account-dashboard-head>a{color:#53657c;font-size:.75rem;font-weight:800}.account-notice,.account-success{margin:0 0 18px;padding:13px 15px;border-radius:9px;font-size:.75rem;line-height:1.5}.account-notice{color:#315679;border:1px solid #c9deef;background:#edf6fd}.account-success{color:#12694f;border:1px solid #bfe4d5;background:#ecf9f4}.account-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.account-metrics article{position:relative;display:grid;gap:4px;min-height:125px;padding:20px 20px 20px 74px;border:1px solid #dfe6ed;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(23,42,75,.045)}.account-metrics article>span{position:absolute;top:22px;left:20px;display:grid;width:40px;height:40px;place-items:center;color:#df4d25;border-radius:11px;background:#fff0eb}.account-metrics small,.account-panel small{color:#8997a8;font-size:.62rem;font-weight:850;letter-spacing:.1em}.account-metrics strong{color:#172a4b;font-size:1.15rem}.account-metrics p{margin:0;color:#748398;font-size:.7rem}.account-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px}.account-panel{padding:21px;border:1px solid #dfe6ed;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(23,42,75,.045)}.account-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.account-panel h2{margin:3px 0 0;color:#172a4b;font-size:1.15rem}.account-panel-head>b{padding:5px 9px;color:#172a4b;border-radius:20px;background:#edf2f7;font-size:.68rem}.license-reveal{display:grid;gap:8px;margin-bottom:15px;padding:14px;border:1px solid #bde3d4;border-radius:10px;background:#effaf6}.license-reveal>strong{color:#11684f;font-size:.8rem}.license-reveal p,.license-summary p{margin:0;color:#6b7d8e;font-size:.67rem}.license-reveal code,.license-summary code{display:block;overflow:auto;padding:11px;color:#dbe8f6;border-radius:8px;background:#152944;font:12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}.license-reveal button{justify-self:start;padding:6px 10px;color:#fff;border:0;border-radius:6px;background:#167f61;font-size:.68rem;font-weight:800;cursor:pointer}.license-summary{display:grid;gap:8px;margin-bottom:16px}.domain-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-bottom:15px}.domain-add .btn{min-height:44px}.domain-list{display:grid}.domain-list>div{display:flex;min-height:49px;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ebeff3}.domain-list>div>span{display:flex;align-items:center;gap:9px;color:#344a64;font-size:.76rem}.domain-list i{color:#8090a3}.domain-list form{margin:0}.domain-list button{display:grid;width:36px;height:36px;place-items:center;color:#a74232;border:0;border-radius:8px;background:#fff0ee;cursor:pointer}.empty-row{margin:0;padding:20px 0;color:#8190a2;font-size:.72rem;text-align:center}.integration-panel{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:18px}.integration-panel p{max-width:700px;margin:7px 0 0;color:#6b7b8f;font-size:.74rem;line-height:1.55}.integration-panel code{padding:2px 5px;border-radius:4px;background:#edf1f5}.integration-panel .btn{flex:none}.stripe-portal{margin-top:15px;text-align:right}.stripe-portal button{padding:8px 0;color:#52657c;border:0;background:transparent;font-size:.7rem;font-weight:750;cursor:pointer}.account-empty{display:grid;max-width:620px;justify-items:center;margin:35px auto;padding:42px;border:1px solid #dfe6ed;border-radius:16px;background:#fff;text-align:center}.account-empty>span{display:grid;width:55px;height:55px;place-items:center;color:#df4d25;border-radius:15px;background:#fff0eb;font-size:1.3rem}.account-empty h2{margin:16px 0 7px;color:#172a4b}.account-empty p{margin:0 0 20px;color:#6e7e91}
.widget-license-field{padding:12px;border:1px solid #bed9ee;border-radius:10px;background:#f2f8fd}.widget-license-field input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:.72rem!important}
.cms-business-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 20px}.cms-business-strip>div{position:relative;display:grid;min-height:108px;gap:3px;padding:17px 17px 17px 65px;color:#d9e6f3;border-radius:13px;background:linear-gradient(135deg,#172a4b,#234b79)}.cms-business-strip>div>span{position:absolute;top:18px;left:17px;display:grid;width:36px;height:36px;place-items:center;color:#172a4b;border-radius:10px;background:#7ee0bd}.cms-business-strip small{color:#9eb0c5;font-size:.59rem;font-weight:850;letter-spacing:.1em}.cms-business-strip strong{color:#fff;font-size:1.15rem}.cms-business-strip p,.cms-business-strip a{margin:0;color:#aebed0;font-size:.67rem}.cms-business-strip a{font-weight:800}.cms-subscription-overview{margin-top:18px}.cms-subscription-list>div{display:grid;grid-template-columns:38px minmax(0,1fr) auto 90px;gap:12px;align-items:center;padding:12px 18px;border-top:1px solid #e8edf2}.cms-subscription-list>div>div{display:grid;gap:3px}.cms-subscription-list strong{color:#283c55;font-size:.75rem}.cms-subscription-list small{color:#8190a2;font-size:.66rem}.cms-filter-tabs{display:flex;gap:7px;margin:0 0 16px;overflow-x:auto}.cms-filter-tabs a{padding:8px 11px;color:#66778c;border:1px solid #dce3ea;border-radius:8px;background:#fff;font-size:.7rem;font-weight:800;white-space:nowrap}.cms-filter-tabs a.active{color:#fff;border-color:#172a4b;background:#172a4b}.cms-subscriptions-row{display:grid;grid-template-columns:minmax(180px,1.4fr) .7fr .7fr .7fr .8fr 1fr;gap:12px;align-items:center;padding:12px 18px;border-top:1px solid #e8edf2;color:#53657a;font-size:.72rem}.cms-subscriptions-row.is-head{color:#7d8b9d;background:#f8fafc;font-size:.61rem;font-weight:850;letter-spacing:.06em}.cms-subscriptions-row span:first-child{display:grid;gap:3px}.cms-subscriptions-row strong{color:#253a54}.cms-subscriptions-row small{color:#8190a2}
@media(max-width:1050px){.pricing-grid{grid-template-columns:repeat(2,1fr)}.cms-subscriptions-table{overflow-x:auto}.cms-subscriptions-row{min-width:900px}}
@media(max-width:780px){.account-metrics,.cms-business-strip{grid-template-columns:1fr}.account-grid{grid-template-columns:1fr}.integration-panel{align-items:flex-start;flex-direction:column}.integration-panel .btn{width:100%}.account-dashboard-head{align-items:flex-start;flex-direction:column}.cms-subscription-list>div{grid-template-columns:38px minmax(0,1fr) auto}.cms-subscription-list>div>strong:last-child{grid-column:2}}
@media(max-width:560px){.pricing-grid{grid-template-columns:1fr}.pricing-card{padding:22px}.account-auth-card{padding:23px}.account-dashboard{padding-top:30px}.account-metrics article{padding-left:70px}.domain-add{grid-template-columns:1fr}.domain-add .btn{width:100%}.cms-business-strip>div{padding-left:62px}}

/* Private API documentation and integration choices. */
.integration-actions{display:flex;flex:none;gap:9px}.integration-actions .btn{white-space:nowrap}
.api-docs{min-height:75vh;padding:44px 0 72px;background:#f3f6f9}.api-docs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.api-docs-head h1{margin:3px 0 6px;color:#172a4b;font-size:clamp(1.9rem,4vw,2.65rem)}.api-docs-head p{max-width:720px;margin:0;color:#68798e;line-height:1.55}.api-docs-head>a{color:#52657c;font-size:.74rem;font-weight:800}.api-docs-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px;align-items:start}.api-docs-nav{position:sticky;top:90px;display:grid;overflow:hidden;border:1px solid #dfe6ed;border-radius:13px;background:#fff}.api-docs-nav a{padding:12px 15px;color:#52657a;border-bottom:1px solid #e8edf2;font-size:.72rem;font-weight:800}.api-docs-nav a:last-child{border:0}.api-docs-nav a:hover{color:#df4d25;background:#fff6f2}.api-docs-content{display:grid;gap:16px}.api-docs-content .account-panel{scroll-margin-top:90px}.api-docs-content h2{margin:4px 0 9px}.api-docs-content p{color:#64768b;font-size:.77rem;line-height:1.65}.api-docs-content code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.api-docs-content p code,.api-params code{padding:2px 5px;color:#203b5c;border-radius:4px;background:#eaf1f7}.api-docs-content pre{max-width:100%;margin:15px 0 0;padding:16px;overflow:auto;color:#dce8f6;border:1px solid #263e5d;border-radius:10px;background:#142740;font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}.api-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.api-facts>span{display:grid;gap:5px;padding:12px;border:1px solid #e0e7ee;border-radius:9px;background:#f8fafc}.api-facts b{color:#7b899a;font-size:.62rem;letter-spacing:.06em}.api-facts code,.api-facts strong{color:#223a57;font-size:.76rem}.api-params{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:15px}.api-params>div,.api-error-list>div{padding:12px;border:1px solid #e2e8ee;border-radius:9px;background:#f9fbfc}.api-params p,.api-error-list p{margin:7px 0 0;font-size:.69rem}.api-error-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.api-error-list b{color:#df4d25;font-size:.85rem}
@media(max-width:780px){.integration-actions{width:100%;flex-direction:column}.integration-actions .btn{width:100%}.api-docs-head{align-items:flex-start;flex-direction:column}.api-docs-layout{grid-template-columns:1fr}.api-docs-nav{position:static;grid-template-columns:repeat(3,1fr)}.api-docs-nav a{text-align:center}}
@media(max-width:560px){.api-docs{padding-top:30px}.api-docs-nav{grid-template-columns:repeat(2,1fr)}.api-facts,.api-params,.api-error-list{grid-template-columns:1fr}}

.account-simulation-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding:13px 16px;color:#fff;border-radius:11px;background:linear-gradient(135deg,#172a4b,#244e7d);box-shadow:0 10px 24px rgba(23,42,75,.16);font-size:.75rem}.account-simulation-bar span{display:flex;align-items:center;gap:8px}.account-simulation-bar form{margin:0}.account-simulation-bar button{min-height:40px;padding:8px 13px;color:#172a4b;border:0;border-radius:7px;background:#fff;font-weight:850;cursor:pointer;white-space:nowrap}@media(max-width:620px){.account-simulation-bar{align-items:stretch;flex-direction:column}.account-simulation-bar button{width:100%}}

/* Bootstrap-backed administration modules. Custom properties keep PrecioGas branding. */
.cms-body{--bs-primary:#172a4b;--bs-primary-rgb:23,42,75;--bs-link-color:#d94d27;--bs-link-hover-color:#b83e1f}
.cms-body .btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;text-decoration:none}
.cms-alert.success{color:#12694f;border-color:#bfe4d5;background:#ecf9f4}
.cms-admin-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:18px;align-items:start}
.cms-editor-form{margin-top:20px;scroll-margin-top:90px}.cms-editor-form>label,.cms-panel.admin-form>label{display:grid;gap:7px;margin-top:14px}
.cms-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cms-form-grid label,.admin-form>label{display:grid;gap:7px;color:#34465e;font-size:.75rem;font-weight:800}
.cms-form-grid input,.cms-form-grid select,.cms-form-grid textarea,.admin-form>label input,.admin-form>label textarea{width:100%;min-height:44px;padding:10px 12px;color:#172a4b;border:1px solid #cbd6e1;border-radius:8px;background:#fff;font:inherit}.cms-form-grid textarea{min-height:88px}.cms-form-grid small{color:#7a899b;font-size:.66rem;line-height:1.45}
.cms-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:17px;border-top:1px solid #e5eaf0}.cms-form-actions .btn{min-height:44px}
.cms-check-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.cms-switch{display:flex!important;align-items:flex-start;gap:10px;padding:13px;border:1px solid #dce3ea;border-radius:10px;background:#f8fafc;cursor:pointer}.cms-switch input{width:18px!important;min-height:18px!important;margin-top:2px;accent-color:#ff6336}.cms-switch span{display:grid;gap:3px}.cms-switch strong{color:#263c57}.cms-switch small{color:#75859a;font-size:.66rem;font-weight:600;line-height:1.4}
.cms-plan-list{display:grid;gap:12px}.cms-plan-row{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(135px,.3fr) auto;gap:15px;align-items:center;padding:18px;border:1px solid #dfe6ed;border-radius:13px;background:#fff;box-shadow:0 6px 20px rgba(23,42,75,.04)}.cms-plan-row.is-disabled{opacity:.67}.cms-plan-icon{display:grid;width:44px;height:44px;place-items:center;color:#df4d25;border-radius:11px;background:#fff0eb}.cms-plan-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cms-plan-title h2{margin:0;color:#172a4b;font-size:1rem}.cms-plan-row p{margin:4px 0;color:#65778c;font-size:.72rem}.cms-plan-row small{color:#8492a3;font-size:.65rem}.cms-plan-price{display:grid;text-align:right}.cms-plan-price strong{color:#172a4b;font-size:1.1rem}.cms-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.cms-row-actions form{margin:0}.cms-row-actions .btn{min-height:38px;padding:7px 10px;font-size:.68rem;white-space:nowrap}
.cms-mini-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px}.cms-mini-metrics article{display:grid;gap:5px;padding:16px;border:1px solid #dfe6ed;border-radius:11px;background:#fff}.cms-mini-metrics small{color:#8190a2;font-size:.61rem;font-weight:850;letter-spacing:.08em}.cms-mini-metrics strong{color:#172a4b;font-size:1.35rem}.cms-filters{display:grid;grid-template-columns:minmax(190px,1fr) 180px 160px auto auto;gap:9px;margin-bottom:15px;padding:13px;border:1px solid #dfe6ed;border-radius:11px;background:#fff}.cms-filters input,.cms-filters select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #ccd7e2;border-radius:7px;background:#fff}.cms-table-wrap{max-width:100%;overflow:auto;border:1px solid #dfe6ed;border-radius:12px;background:#fff}.cms-table{width:100%;margin:0;border-collapse:collapse}.cms-table th{padding:11px 13px;color:#76869a;background:#f7f9fb;font-size:.62rem;letter-spacing:.05em;text-transform:uppercase}.cms-table td{padding:12px 13px;color:#53657a;border-top:1px solid #e8edf2;font-size:.72rem;vertical-align:middle}.cms-table td>small{display:block;margin-top:3px;color:#8492a3}.cms-person{display:flex;align-items:center;gap:10px}.cms-person>span{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;color:#fff;border-radius:10px;background:#172a4b;font-weight:850}.cms-person div{display:grid;gap:2px}.cms-person strong{color:#263b55}.cms-health-list{display:grid}.cms-health-list>div{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #e8edf2}.cms-health-list>div:last-child{border:0}.cms-health-list div div{display:grid;gap:2px}.cms-health-list strong{color:#263b55;font-size:.76rem}.cms-health-list small{color:#7b899b;font-size:.66rem}.cms-health-dot{width:12px;height:12px;flex:0 0 12px;border:3px solid #f4cbc2;border-radius:50%;background:#d84b2a}.cms-health-dot.ok{border-color:#c5ebde;background:#15906c}.cms-security-note{display:flex;gap:9px;margin:14px 0 0;padding:12px;color:#496179;border-radius:9px;background:#edf5fb;font-size:.68rem;line-height:1.5}
@media(max-width:1050px){.cms-admin-grid{grid-template-columns:1fr}.cms-plan-row{grid-template-columns:46px minmax(0,1fr) auto}.cms-plan-price{grid-column:2;text-align:left}.cms-row-actions{grid-column:3;grid-row:1/3}.cms-filters{grid-template-columns:1fr 1fr 1fr}.cms-filters .btn{width:100%}}
@media(max-width:760px){.cms-form-grid,.cms-check-row{grid-template-columns:1fr}.cms-mini-metrics{grid-template-columns:repeat(2,1fr)}.cms-plan-row{grid-template-columns:42px minmax(0,1fr)}.cms-plan-price{grid-column:2}.cms-row-actions{grid-column:1/-1;grid-row:auto;justify-content:stretch}.cms-row-actions>*{flex:1}.cms-row-actions .btn{width:100%}.cms-filters{grid-template-columns:1fr}.cms-table thead{display:none}.cms-table,.cms-table tbody,.cms-table tr,.cms-table td{display:block;width:100%}.cms-table tr{padding:10px 12px;border-top:1px solid #e2e8ee}.cms-table tr:first-child{border:0}.cms-table td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border:0}.cms-table td:before{content:attr(data-label);color:#8190a2;font-size:.6rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.cms-table td.cms-row-actions:before{display:none}}
@media(max-width:390px){.cms-mini-metrics{grid-template-columns:1fr 1fr}.cms-form-actions{flex-direction:column-reverse}.cms-form-actions .btn{width:100%}}

/* ---------------------------------------------------------------------------
   Barra de guardado del generador de widgets (pública y panel de cliente)
   --------------------------------------------------------------------------- */
.widget-savebar{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:14px 18px;margin:0 0 26px;padding:18px 20px;border:1px solid #dce5ee;border-radius:14px;background:#f8fafc}
.widget-savebar__field{display:grid;gap:6px;min-width:0}
.widget-savebar__field label{color:#172a4b;font-size:.72rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.widget-savebar__field input{width:100%;padding:10px 12px;border:1px solid #cfd9e6;border-radius:9px;background:#fff;color:#172a4b;font:inherit}
.widget-savebar__field input:focus-visible{outline:2px solid #ff6336;outline-offset:1px;border-color:#ff6336}
.widget-savebar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.widget-savebar__status{grid-column:1/-1;margin:0;color:#617188;font-size:.8rem;line-height:1.45}
.widget-savebar__status[data-tone=ok]{color:#0f7b53;font-weight:700}
.widget-savebar__status[data-tone=error]{color:#c0392b;font-weight:700}
.widget-savebar__status[data-tone=dirty]{color:#a35b12;font-weight:700}
.widget-savebar--anon{grid-template-columns:1fr auto;background:#fff8f5;border-color:#ffd9cc}
.widget-savebar--anon p{grid-column:1;margin:0;color:#172a4b;font-size:.9rem;line-height:1.5}
.widget-license-note{margin:0 0 18px;padding:12px 14px;border:1px solid #dce5ee;border-radius:10px;background:#f8fafc;color:#48566b;font-size:.82rem;line-height:1.5}
@media(max-width:720px){.widget-savebar,.widget-savebar--anon{grid-template-columns:1fr}.widget-savebar__actions .btn{flex:1 1 auto}}

/* La vista previa acompaña al formulario mientras se ajusta la configuración. */
@media(min-width:1080px){.widget-builder__layout>.widget-output{position:sticky;top:16px;align-self:start;max-height:calc(100vh - 32px);overflow:auto}}

/* ------------------------------------------------------------------ planes */
/* Dos familias de licencia (sólo widget / widget + API) con un conmutador que
   funciona sin JavaScript: radios ocultos delante de los bloques. */
.pricing-switcher{position:relative}
.pricing-switcher__input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.pricing-switcher__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-width:660px;margin:0 auto 30px;padding:6px;border:1px solid #dbe3ec;border-radius:16px;background:#fff;box-shadow:0 10px 26px -18px rgba(23,42,75,.5)}
.pricing-switcher__tab{display:grid;gap:3px;padding:12px 14px;border-radius:11px;text-align:center;cursor:pointer;transition:background .18s ease,color .18s ease}
.pricing-switcher__tab strong{color:#172a4b;font-size:.95rem;font-weight:800}
.pricing-switcher__tab small{color:#6b7c92;font-size:.72rem;line-height:1.35}
.pricing-switcher__tab:hover{background:#f2f6fa}
#familia-widget:checked~.pricing-switcher__tabs label[for=familia-widget],#familia-api:checked~.pricing-switcher__tabs label[for=familia-api]{background:#172a4b}
#familia-widget:checked~.pricing-switcher__tabs label[for=familia-widget] strong,#familia-api:checked~.pricing-switcher__tabs label[for=familia-api] strong{color:#fff}
#familia-widget:checked~.pricing-switcher__tabs label[for=familia-widget] small,#familia-api:checked~.pricing-switcher__tabs label[for=familia-api] small{color:#c8d6e6}
#familia-widget:focus-visible~.pricing-switcher__tabs label[for=familia-widget],#familia-api:focus-visible~.pricing-switcher__tabs label[for=familia-api]{outline:3px solid rgba(255,99,54,.35);outline-offset:2px}
.pricing-family{display:none}
#familia-widget:checked~.pricing-family[data-family=widget],#familia-api:checked~.pricing-family[data-family=api]{display:block}

.pricing-compare{margin-top:46px}
.pricing-compare h2{margin:0 0 16px;color:#172a4b;font-size:1.3rem}
.table-scroll{overflow-x:auto;border:1px solid #dce5ee;border-radius:14px;background:#fff}
.compare-table{width:100%;min-width:620px;border-collapse:collapse;font-size:.86rem}
.compare-table th,.compare-table td{padding:12px 14px;border-bottom:1px solid #eef2f7;text-align:center;vertical-align:middle}
.compare-table thead th{background:#f7fafc;color:#172a4b;font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.compare-table tbody th{color:#31405a;font-weight:700;text-align:left}
.compare-table tbody tr:last-child th,.compare-table tbody tr:last-child td{border-bottom:0}
.compare-table tbody tr:hover{background:#fbfdff}
.compare-yes{display:inline-block;color:#0f7b53;vertical-align:middle}
.compare-no{color:#b3bfcd;font-weight:800}
.compare-text{color:#48566b;font-weight:700}
@media(max-width:720px){.pricing-switcher__tabs{grid-template-columns:1fr}}

/* -------------------------------------------------- landing del widget (/widget-gas-lp/) */
.wl-hero{padding:56px 0 44px;background:linear-gradient(135deg,#0f1f3a,#1d3d63 58%,#24507f);color:#fff}
.wl-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:38px}
.wl-hero__copy .widget-eyebrow{color:#7ee0bd}
.wl-hero h1{margin:8px 0 14px;font-size:clamp(2rem,4.2vw,3rem);line-height:1.06;letter-spacing:-.03em;text-wrap:balance}
.wl-hero__copy>p{max-width:34rem;margin:0;color:#cfdcea;font-size:1.02rem;line-height:1.6}
.wl-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 24px}
.wl-hero__actions .btn--outline{border-color:rgba(255,255,255,.5);color:#fff}
.wl-hero__actions .btn--outline:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.wl-hero__facts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:0;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.16);list-style:none}
.wl-hero__facts li{display:grid;gap:1px}
.wl-hero__facts strong{color:#fff;font-size:1.02rem}
.wl-hero__facts span{color:#a9bed6;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase}
.wl-hero__demo{display:grid;gap:9px}
.wl-hero__caption{margin:0;color:#a9bed6;font-size:.75rem;text-align:center}

.wl-showcase__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:20px;margin-top:22px}
.wl-showcase__grid figure{display:grid;align-content:start;gap:9px;margin:0;padding:16px;border:1px solid #e2e9f1;border-radius:16px;background:#f8fafc}
.wl-showcase__grid figcaption{color:#5c6d84;font-size:.74rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}

.wl-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(290px,100%),1fr));gap:18px;margin-top:24px;align-items:start}
.wl-plan{position:relative;display:grid;align-content:start;gap:12px;padding:24px;border:1px solid #dce5ee;border-radius:18px;background:#fff}
.wl-plan.is-featured{border-color:#ff6336;box-shadow:0 18px 44px -26px rgba(255,99,54,.65)}
.wl-plan .pricing-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%)}
.wl-plan h3{margin:0;color:#172a4b;font-size:1.12rem}
.wl-plan__price{display:flex;align-items:baseline;gap:7px;margin:0}
.wl-plan__price strong{color:#172a4b;font-size:2rem;font-weight:850;letter-spacing:-.035em}
.wl-plan__price span{color:#6b7c92;font-size:.74rem;font-weight:700}
.wl-plan__pitch{margin:0;color:#48566b;font-size:.86rem;line-height:1.55}
.wl-plan ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.wl-plan li{position:relative;padding-left:22px;color:#31405a;font-size:.84rem;line-height:1.45}
/* La palomita va en SVG: el carácter ✓ falta en algunas pilas de fuentes. */
.wl-plan li::before{position:absolute;top:.24em;left:0;width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.6l3.9 3.9L16 6.4' fill='none' stroke='%230f7b53' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat;content:""}
.wl-plan li.is-off{color:#95a3b5}
.wl-plan li.is-off::before{top:.1em;width:auto;height:auto;background:none;color:#c3ccd8;content:"–";font-weight:900}
.wl-plan__note{margin:0;color:#7a8798;font-size:.74rem}
.wl-plan .btn{justify-content:center;text-align:center}

.wl-api-teaser{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:26px;align-items:center;margin-top:34px;padding:26px;border:1px solid #dce5ee;border-radius:18px;background:#fff}
.wl-api-teaser h3{margin:6px 0 10px;color:#172a4b;font-size:1.25rem}
.wl-api-teaser p{margin:0 0 16px;color:#48566b;font-size:.9rem;line-height:1.6}
.wl-api-teaser__code{overflow-x:auto;margin:0;padding:18px;border-radius:14px;background:#0f1f3a;color:#d7e3f2;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;line-height:1.65}
@media(max-width:960px){.wl-hero__grid,.wl-api-teaser{grid-template-columns:1fr}.wl-hero{padding:40px 0 34px}}

/* --------------------------------------------- documentación: demos y probador */
.doc-demo{display:grid;gap:12px;margin:0 0 26px;padding:18px;border:1px solid #e2e9f1;border-radius:16px;background:#fbfdff}
.doc-demo figcaption{display:grid;gap:2px}
.doc-demo figcaption strong{color:#172a4b;font-size:.94rem}
.doc-demo figcaption span{color:#6b7c92;font-size:.78rem;line-height:1.45}
.doc-demo__stage{padding:16px;border:1px dashed #d7e0ea;border-radius:12px;background:repeating-linear-gradient(45deg,#fff,#fff 9px,#f6f9fc 9px,#f6f9fc 18px)}
.doc-demo .doc-code{margin:0}

.doc-tester{display:grid;gap:14px;margin-bottom:16px;padding:18px;border:1px solid #dce5ee;border-radius:16px;background:#f8fafc}
.doc-tester__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}
.doc-tester label{display:grid;gap:5px;color:#31405a;font-size:.8rem;font-weight:700}
.doc-tester select,.doc-tester input{padding:9px 11px;border:1px solid #ccd7e3;border-radius:9px;background:#fff;color:#172a4b;font:inherit;font-size:.85rem;font-weight:500}
.doc-tester select:focus-visible,.doc-tester input:focus-visible{outline:3px solid rgba(255,99,54,.25);outline-offset:1px}
.doc-tester small{color:#7a8798;font-size:.7rem;font-weight:500;line-height:1.4}
.doc-tester__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.doc-tester__status{color:#5c6d84;font-size:.78rem;font-weight:700}
.doc-tester__result{display:grid;gap:12px}
.doc-tester__result pre{max-height:22rem;overflow:auto}
.doc-tester__result code,[data-tester-curl]{white-space:pre-wrap;word-break:break-word}
.doc-demo__tag{justify-self:start;margin-top:3px;padding:2px 8px;border-radius:999px;background:#fff1ec;color:#c2410c;font-size:.66rem;font-style:normal;font-weight:800;letter-spacing:.04em;text-transform:uppercase}

/* ============================================================ generador (wb) */
/* Aplicación de tres zonas: ajustes agrupados, lienzo de vista previa con
   tamaños de dispositivo y el código listo para copiar. */
.wb{--wb-side:340px;--wb-line:#e3eaf3;--wb-ink:#172a4b;--wb-soft:#64748b;
  overflow:hidden;margin:0 auto;max-width:1320px;border:1px solid var(--wb-line);border-radius:20px;background:#fff;
  box-shadow:0 24px 60px -40px rgba(23,42,75,.55)}
.wb__bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--wb-line);background:#f8fafc}
.wb__bar-title{display:grid;gap:1px;margin-right:auto}
.wb__eyebrow{color:#ff6336;font-size:.64rem;font-weight:800;letter-spacing:.12em}
.wb__bar-title b{color:var(--wb-ink);font-size:.95rem}
.wb__bar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.wb__name input{min-width:200px;padding:9px 12px;border:1px solid #ccd7e3;border-radius:10px;background:#fff;color:var(--wb-ink);font:inherit;font-size:.85rem}
.wb__name input:focus-visible{outline:3px solid rgba(255,99,54,.25);outline-offset:1px}
.wb__hint{color:var(--wb-soft);font-size:.78rem}
.wb__status{flex-basis:100%;margin:0;color:var(--wb-soft);font-size:.76rem}
.wb__status[data-tone=ok]{color:#0f7b53;font-weight:700}
.wb__status[data-tone=error]{color:#c0392b;font-weight:700}
.wb__status[data-tone=dirty]{color:#a35b12;font-weight:700}

.wb__body{display:grid;grid-template-columns:var(--wb-side) minmax(0,1fr);align-items:stretch}
.wb__side{display:grid;overflow:hidden;grid-template-rows:auto minmax(0,1fr);border-right:1px solid var(--wb-line);background:#fbfdff}
.wb__nav{display:grid;gap:3px;padding:12px;border-bottom:1px solid var(--wb-line)}
.wb__nav button{display:flex;align-items:center;gap:11px;padding:10px 12px;border:0;border-radius:12px;background:none;color:var(--wb-ink);font:inherit;text-align:left;cursor:pointer}
.wb__nav button i{flex:0 0 auto;font-size:1.15rem;color:#8298b2}
.wb__nav button span{display:grid;gap:1px;min-width:0}
.wb__nav button strong{font-size:.86rem;font-weight:700}
.wb__nav button small{color:var(--wb-soft);font-size:.7rem;line-height:1.3}
.wb__nav button:hover{background:#eef4fa}
.wb__nav button[aria-selected=true]{background:var(--wb-ink);color:#fff}
.wb__nav button[aria-selected=true] i,.wb__nav button[aria-selected=true] small{color:rgba(255,255,255,.72)}
.wb__nav button:focus-visible{outline:3px solid rgba(255,99,54,.35);outline-offset:1px}

.wb .widget-config{display:block;overflow-y:auto;max-height:min(72vh,760px);padding:16px;border:0;background:none;box-shadow:none}
.wb__panel{display:grid;gap:16px}
.wb-group{display:grid;gap:11px;margin:0;padding:14px;border:1px solid var(--wb-line);border-radius:14px;background:#fff}
.wb-group legend{padding:0 6px;color:var(--wb-ink);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.wb-field{display:grid;gap:5px;min-width:0}
.wb-field__label{color:#41506a;font-size:.76rem;font-weight:700}
.wb-field select,.wb-field input[type=text],.wb-field input[type=number]{width:100%;padding:9px 11px;border:1px solid #ccd7e3;border-radius:10px;background:#fff;color:var(--wb-ink);font:inherit;font-size:.84rem}
.wb-field select:focus-visible,.wb-field input:focus-visible{outline:3px solid rgba(255,99,54,.25);outline-offset:1px}
.wb-field small{color:var(--wb-soft);font-size:.7rem;line-height:1.4}
.wb-field--key{padding:12px;border:1px solid #cfe4dd;border-radius:12px;background:#f2fbf7}
.wb-note{margin:0 0 14px;padding:12px 13px;border:1px solid #ffd9cc;border-radius:12px;background:#fff8f5;color:#7a4a35;font-size:.78rem;line-height:1.5}
.wb-hint{margin:0;color:var(--wb-soft);font-size:.74rem;line-height:1.45}
.wb-error{margin:0;color:#c0392b;font-size:.74rem;font-weight:700}
.wb-choice{display:grid;gap:8px}
.wb-choice label{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #d9e3ee;border-radius:12px;background:#fff;cursor:pointer}
.wb-choice label:has(input:checked){border-color:#ff6336;box-shadow:0 0 0 2px rgba(255,99,54,.14)}
.wb-choice span{display:grid;gap:1px}
.wb-choice strong{color:var(--wb-ink);font-size:.82rem}
.wb-choice small{color:var(--wb-soft);font-size:.72rem}
.wb-checks{display:grid;gap:8px}
.wb-checks label{display:flex;align-items:center;gap:8px;color:#31405a;font-size:.82rem}
.wb-switch{display:flex;align-items:center;gap:9px;color:#31405a;font-size:.82rem;font-weight:600}
.wb-amount{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.wb-add{grid-column:1/-1;padding:9px 12px;border:1px dashed #b9c8d8;border-radius:10px;background:#fff;color:#41506a;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}
.wb-add:hover:not(:disabled){border-color:#ff6336;color:#ff6336}
.wb-add:disabled{opacity:.5;cursor:not-allowed}
.wb-presets{display:flex;flex-wrap:wrap;gap:6px}
.wb-presets button{padding:6px 10px;border:1px solid #d7e0e8;border-radius:9px;background:#fff;color:#53647a;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}
.wb-presets button:hover{border-color:#9aabba}
.wb-presets button.is-active{color:var(--wb-ink);border-color:#ff6336;box-shadow:0 0 0 2px rgba(255,99,54,.12)}
.wb-selection{display:grid;gap:8px}
.wb-selection__title{color:#41506a;font-size:.74rem;font-weight:700}
.wb-clear{justify-self:start;padding:6px 11px;border:1px solid #d7e0e8;border-radius:9px;background:#fff;color:#53647a;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}
.wb-palettes{display:flex;flex-wrap:wrap;gap:6px}
.wb-palettes button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #d7e0e8;border-radius:9px;background:#fff;color:#53647a;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}
.wb-palettes button.is-active{border-color:#ff6336;color:var(--wb-ink);box-shadow:0 0 0 2px rgba(255,99,54,.12)}
.wb-palettes i{display:block;width:14px;height:14px;border-radius:50%;background:#172a4b}
.wb-palettes [data-palette=morado] i{background:#4c1d95}.wb-palettes [data-palette=gris] i{background:#1f2937}
.wb-palettes [data-palette=verde] i{background:#065f46}.wb-palettes [data-palette=naranja] i{background:#9a3412}
.wb-colors{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:9px}
.wb-colors label{display:grid;gap:5px;min-width:0}
.wb-colors span{color:var(--wb-soft);font-size:.7rem;font-weight:600;line-height:1.3}
.wb-colors input[type=color]{width:100%;height:34px;padding:3px;border:1px solid #ccd7e3;border-radius:9px;background:#fff;cursor:pointer}

.wb__main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0}
.wb__canvas-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;border-bottom:1px solid var(--wb-line);background:#fff}
.wb__devices{display:inline-flex;padding:3px;border:1px solid var(--wb-line);border-radius:11px;background:#f3f7fb}
.wb__devices button{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:0;border-radius:8px;background:none;color:#5c6d84;font:inherit;font-size:.76rem;font-weight:700;cursor:pointer}
.wb__devices button.is-active{background:#fff;color:var(--wb-ink);box-shadow:0 1px 3px rgba(23,42,75,.14)}
.wb__canvas-meta{display:inline-flex;align-items:center;gap:10px}
.wb__scope{color:var(--wb-soft);font-size:.74rem;font-weight:700}
.wb__bg{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--wb-line);border-radius:10px;background:#fff;color:#5c6d84;font:inherit;font-size:.76rem;font-weight:700;cursor:pointer}
.wb__bg:hover{border-color:#9aabba}

.wb__canvas{display:grid;align-content:center;justify-items:center;gap:14px;padding:30px 24px;min-height:360px;
  background-color:#eef2f7;
  background-image:linear-gradient(45deg,rgba(255,255,255,.65) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.65) 75%),
    linear-gradient(45deg,rgba(255,255,255,.65) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.65) 75%);
  background-position:0 0,11px 11px;background-size:22px 22px}
.wb__canvas.is-dark{background-color:#101828;background-image:linear-gradient(45deg,rgba(255,255,255,.04) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.04) 75%),linear-gradient(45deg,rgba(255,255,255,.04) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.04) 75%)}
.wb__frame{width:100%;max-width:100%;transition:max-width .25s ease}
.wb__canvas[data-device-width=tablet] .wb__frame{max-width:768px}
.wb__canvas[data-device-width=mobile] .wb__frame{max-width:390px}
.wb__frame [data-attribution]{margin-top:9px}

.wb__code{border-top:1px solid var(--wb-line);background:#f8fafc;padding:14px 16px}
.wb__code-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.wb__code-head strong{display:block;color:var(--wb-ink);font-size:.86rem}
.wb__code-head small{display:block;color:var(--wb-soft);font-size:.74rem}
.wb__code-area{width:100%;min-height:92px;padding:12px 13px;border:1px solid #d5dfea;border-radius:12px;background:#0f1f3a;color:#d7e3f2;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem;line-height:1.6;resize:vertical;cursor:copy}
.wb__code-area:focus-visible{outline:3px solid rgba(255,99,54,.3);outline-offset:2px}
.wb__code-note{margin:8px 0 0;color:var(--wb-soft);font-size:.72rem;line-height:1.5}
.wb__code-note code{padding:1px 5px;border-radius:5px;background:#e8eef6;font-size:.9em}

@media(max-width:1024px){
  .wb__body{grid-template-columns:1fr}
  .wb__side{border-right:0;border-bottom:1px solid var(--wb-line)}
  .wb__nav{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
  .wb__nav button small{display:none}
  .wb .widget-config{max-height:none}
  .wb__canvas{padding:20px 14px;min-height:280px}
}
.wb-choice input[type=radio]{flex:0 0 auto;margin-top:3px;width:auto}
.wb-checks input[type=checkbox],.wb-switch input[type=checkbox]{flex:0 0 auto;width:auto;margin:0}

/* Catálogo de planes agrupado por familia y enlaces privados de contratación. */
.cms-plan-family{margin-bottom:26px}
.cms-plan-family__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.cms-plan-family__head h2{display:flex;align-items:center;gap:9px;margin:0;color:#172a4b;font-size:1.05rem}
.cms-plan-family__head p{margin:2px 0 0;color:#6b7c92;font-size:.78rem}
.cms-offer-url{width:min(320px,100%);padding:6px 9px;border:1px solid #d5dfea;border-radius:8px;background:#fff;color:#41506a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem}
.offer-card{position:relative;display:grid;gap:11px;max-width:520px;margin:0 auto 34px;padding:26px;border:1px solid #ff6336;border-radius:18px;background:#fff;box-shadow:0 20px 46px -30px rgba(255,99,54,.7)}
.offer-card .pricing-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%)}
.offer-card h2{margin:0;color:#172a4b;font-size:1.2rem}
.offer-card p{margin:0;color:#48566b;font-size:.88rem;line-height:1.55}
.offer-card__price{display:flex;align-items:baseline;gap:8px}
.offer-card__price strong{color:#172a4b;font-size:2rem;font-weight:850;letter-spacing:-.035em}
.offer-card__price span{color:#6b7c92;font-size:.74rem;font-weight:700}
.offer-card ul{display:grid;gap:6px;margin:0;padding-left:18px;color:#31405a;font-size:.85rem}
.offer-card__note{color:#7a8798;font-size:.75rem}
.wb-limit{padding:9px 11px;border:1px solid #ffd9cc;border-radius:10px;background:#fff8f5;color:#7a4a35}
