.igbe-city{color:#213344;font-family:inherit}.igbe-wrap{max-width:1180px;margin:auto;padding:0 24px}.igbe-hero{background:linear-gradient(135deg,#073b47,#0d5360);color:#fff;padding:34px 0 44px}.igbe-breadcrumb{font-size:13px;color:#b6d4da;margin-bottom:20px}.igbe-breadcrumb a{color:inherit;text-decoration:none}.igbe-breadcrumb span{padding:0 8px}.igbe-heading{display:flex;justify-content:space-between;gap:40px;align-items:center;margin-bottom:24px}.igbe-heading h1{font-size:clamp(32px,4vw,52px);line-height:1.1;color:white;margin:0 0 14px}.igbe-heading p{font-size:17px;line-height:1.6;color:#d3e6e9;max-width:760px;margin:0}.igbe-townmark{flex:0 0 230px;background:white;color:#153f47;border:6px solid #182e33;border-radius:17px;min-height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-2deg);box-shadow:0 12px 28px #0003}.igbe-townmark span{font-size:24px;font-weight:800}.igbe-search{border:1px solid #3e7a83;background:#103f49;border-radius:18px;padding:22px;margin:22px 0 28px}.igbe-search h2{color:white;font-size:19px;margin:0 0 14px}.igbe-search #internet-udbyder-container{max-width:none!important;width:100%;margin:0!important}.igbe-search #internet-udbyder-container .ig-live-lookup,.igbe-search #internet-udbyder-container .address-info,.igbe-search #internet-udbyder-container .ig-editorial-meta{display:none!important}.igbe-search #internet-udbyder-container .dawa-address-container{margin:0!important;max-width:none!important}.igbe-search #internet-udbyder-container .dawa-input-wrapper{max-width:none!important}.igbe-search #internet-udbyder-container .page-layout{background:#fff;color:#24374a;border-radius:14px;margin-top:20px}.igbe-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.igbe-stats>div{background:#fff;color:#153646;border-radius:15px;padding:21px;min-height:112px;display:flex;flex-direction:column;gap:10px}.igbe-stats span{font-size:12px;letter-spacing:.06em;font-weight:700;color:#607785}.igbe-stats strong{font-size:27px;color:#2876bb}.igbe-stats small{font-size:12px;color:#667d89}.igbe-stats a{color:#1767a4}.igbe-stats .igbe-unavailable{font-size:14px;letter-spacing:0;font-weight:400;color:#667d89}.igbe-body{padding-top:36px;padding-bottom:70px}.igbe-panel{border:1px solid #dfe8ed;background:#fff;border-radius:16px;padding:27px;margin-bottom:22px;box-shadow:0 5px 24px #183d5410}.igbe-panel h2{font-size:25px;color:#153646;margin:0 0 16px}.igbe-panel p{font-size:16px;line-height:1.75}.igbe-panel details{border-top:1px solid #e1e8ec;padding:17px 0}.igbe-panel summary{font-weight:700;cursor:pointer}.igbe-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.igbe-links a{padding:12px 14px;background:#eff6fb;border-radius:9px;color:#1768a6;text-decoration:none;display:flex;justify-content:space-between}.igbe-method{background:#f5f9fc}.igbe-alert{color:#ffdfb3}@media(max-width:760px){.igbe-wrap{padding:0 16px}.igbe-hero{padding-top:20px}.igbe-heading{display:block}.igbe-townmark{display:none}.igbe-search{padding:14px}.igbe-stats{grid-template-columns:1fr}.igbe-stats>div{min-height:85px}.igbe-links{grid-template-columns:1fr}.igbe-panel{padding:20px}.igbe-search #internet-udbyder-container .dawa-input-wrapper{width:100%}}

/* v0.1.1: Break out of theme/Elementor constrained content containers. */
#igbe-main.igbe-city {
  box-sizing:border-box;
  position:relative;
  left:50%;
  width:100vw;
  max-width:none;
  margin-left:-50vw;
  margin-right:0;
  overflow-x:clip;
}
#igbe-main.igbe-city *,#igbe-main.igbe-city *::before,#igbe-main.igbe-city *::after {box-sizing:border-box}
#igbe-main .igbe-wrap {width:100%;max-width:1230px;margin-left:auto;margin-right:auto}
#igbe-main .igbe-search {margin-bottom:24px}
#igbe-main .igbe-search + .igbe-stats {margin-top:24px}
#igbe-main .igbe-search .dawa-address-container {margin-bottom:0!important}
@media(max-width:760px){#igbe-main .igbe-wrap{padding-left:16px;padding-right:16px}#igbe-main .igbe-search + .igbe-stats{margin-top:18px}}

/* v0.1.2 – Internet-guide brand and separated search/stat layout. */
#igbe-main .igbe-hero{background:linear-gradient(135deg,#102d50 0%,#164778 70%,#1c568f 100%)}
#igbe-main .igbe-breadcrumb{color:#d1e3f8}
#igbe-main .igbe-heading p{color:#e0ecfa}
#igbe-main .igbe-townmark{color:#173e66;border-color:#0d2746}
#igbe-main .igbe-search{background:#163c67;border:1px solid #527eac;margin:24px 0 0;padding:22px 24px 28px;position:relative;z-index:1}
#igbe-main .igbe-search #internet-udbyder-container{margin:0!important}
#igbe-main .igbe-search .dawa-address-container{margin:0!important;padding:0!important}
#igbe-main .igbe-stats{position:relative;z-index:0;clear:both;margin:28px 0 0!important;gap:18px}
#igbe-main .igbe-stats>div{border:1px solid #d6e6fa;box-shadow:0 6px 18px #081f3b17;min-height:118px}
#igbe-main .igbe-stats strong{color:#3478c9}
#igbe-main .igbe-body{padding-top:44px}
#igbe-main .igbe-landscape{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center;background:linear-gradient(115deg,#edf5ff,#fff);border-color:#cddff5}
#igbe-main .igbe-landscape-icon{height:180px;border-radius:14px;background:linear-gradient(135deg,#dcecff,#a9cff6);color:#3478c9;display:flex;align-items:center;justify-content:center;font-size:110px;font-weight:300}
#igbe-main .igbe-eyebrow{font-size:12px;font-weight:800;letter-spacing:.1em;color:#3478c9;margin:0 0 6px}
#igbe-main .igbe-landscape h2{margin-bottom:10px}
#igbe-main .igbe-landscape p{margin:0 0 10px}
#igbe-main .igbe-landscape .igbe-landscape-footnote{font-size:13px;color:#58718b;margin-top:12px}
@media(max-width:760px){#igbe-main .igbe-search{padding:18px 15px 22px}#igbe-main .igbe-stats{margin-top:22px!important;gap:12px}#igbe-main .igbe-landscape{grid-template-columns:1fr;gap:14px}#igbe-main .igbe-landscape-icon{height:110px;font-size:72px}}

/* v0.1.3 – city-only autocomplete, contrast and responsive provider cards. */
#igbe-main .igbe-search #internet-udbyder-container .dawa-address-container {
  position:relative;
  z-index:30;
  overflow:visible;
}
#igbe-main .igbe-search #internet-udbyder-container .dawa-input-wrapper {
  position:relative;
  z-index:1;
}
/* Provider stylesheet moves the list 30px upward; reset only on city pages. */
#igbe-main .igbe-search #internet-udbyder-container .dawa-suggestions {
  top:calc(100% + 3px)!important;
  left:0;
  right:0;
  width:100%;
  z-index:10000;
  max-height:min(300px,45vh);
  overflow-y:auto;
  overscroll-behavior:contain;
  background:#fff;
  border-radius:10px;
  box-shadow:0 12px 30px rgba(10,30,55,.22);
}
#igbe-main .igbe-search #internet-udbyder-container .loading-container,
#igbe-main .igbe-search #internet-udbyder-container .loading-container p {
  color:#fff!important;
}
#igbe-main .igbe-search #internet-udbyder-container .page-layout,
#igbe-main .igbe-search #internet-udbyder-container .providers,
#igbe-main .igbe-search #internet-udbyder-container .offers {
  width:100%;
  max-width:100%;
  min-width:0;
}
@media(max-width:760px){
  #igbe-main .igbe-wrap{padding-left:12px;padding-right:12px}
  #igbe-main .igbe-search{padding:16px 10px 20px}
  #igbe-main .igbe-search #internet-udbyder-container{padding:0!important;min-width:0}
  #igbe-main .igbe-search #internet-udbyder-container .page-layout{
    padding:0!important;
    margin-top:18px;
    background:transparent;
  }
  #igbe-main .igbe-search #internet-udbyder-container .providers{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:16px;
    padding:0!important;
  }
  #igbe-main .igbe-search #internet-udbyder-container .offer-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:10px 0!important;
  }
  #igbe-main .igbe-search #internet-udbyder-container .offer-grid{
    width:100%;
    max-width:100%;
    min-width:0;
    padding:24px 12px 16px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:10px;
  }
  #igbe-main .igbe-search #internet-udbyder-container .offer-grid > *{min-width:0;max-width:100%}
  #igbe-main .igbe-search #internet-udbyder-container .offer-link,
  #igbe-main .igbe-search #internet-udbyder-container .offer-link a,
  #igbe-main .igbe-search #internet-udbyder-container .ig-mobile-terms-toggle{
    max-width:100%;
    box-sizing:border-box;
  }
  #igbe-main .igbe-search #internet-udbyder-container .offer-link a{
    width:100%;
    white-space:normal;
  }
  #igbe-main .igbe-search #internet-udbyder-container .dawa-input{min-width:0}
  #igbe-main .igbe-search #internet-udbyder-container .dawa-submit{padding-left:12px;padding-right:12px}
}

/* v0.2.8: editorial city image and comparison section */
#igbe-main .igbe-landscape-media{height:180px;overflow:hidden;border-radius:14px;background:#dcecff}
#igbe-main .igbe-landscape-photo{width:100%;height:100%;object-fit:cover;display:block}
#igbe-main .igbe-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
#igbe-main .igbe-choice-grid>div{border:1px solid #dbe8f4;background:#f4f8fd;border-radius:12px;padding:16px}
#igbe-main .igbe-choice-grid h3{font-size:18px;margin:0 0 8px;color:#173a54}
#igbe-main .igbe-choice-grid p{font-size:15px;margin:0}
@media(max-width:760px){#igbe-main .igbe-landscape-media{height:180px}#igbe-main .igbe-choice-grid{grid-template-columns:1fr}}

/* v0.2.9 – subtle municipal disclaimer and relevant guide cards */
#igbe-main .igbe-landscape .igbe-landscape-footnote{font-size:12px;line-height:1.55;color:#60758a;margin:12px 0 0}
#igbe-main .igbe-info-icon{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border:1px solid #8194a8;border-radius:50%;font-size:10px;font-weight:700;font-style:normal;margin-right:5px}
#igbe-main .igbe-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
#igbe-main .igbe-guide-card{display:flex;flex-direction:column;gap:10px;padding:20px;border-radius:14px;border:1px solid #dbe8f4;background:#f4f8fd;text-decoration:none!important;color:#173a54!important;min-height:150px}
#igbe-main .igbe-guide-card strong{font-size:18px;line-height:1.35}
#igbe-main .igbe-guide-card span{font-size:14px;line-height:1.55;color:#526c80}
#igbe-main .igbe-guide-card em{margin-top:auto;font-style:normal;color:#2675bf;font-weight:700;font-size:14px}
#igbe-main .igbe-guide-card:hover{border-color:#3478c9;background:#edf5ff}
@media(max-width:650px){#igbe-main .igbe-guide-grid{grid-template-columns:1fr}}

/* v0.3.0: denser editorial guide cards without changing the grid */
#igbe-main .igbe-guide-card{min-height:126px;padding:17px 19px;gap:7px}
#igbe-main .igbe-guide-card em{padding-top:9px}

/* v0.3.1 – curated partners */
#igbe-main .igbe-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:17px 0 12px}
#igbe-main .igbe-provider-tile{display:flex;align-items:center;justify-content:center;min-height:82px;padding:13px 17px;background:#fff;border:1px solid #dce6ee;border-radius:13px;transition:transform .15s ease,border-color .15s ease;box-sizing:border-box}
#igbe-main .igbe-provider-tile:hover{transform:translateY(-2px);border-color:#4385c5}
#igbe-main .igbe-provider-tile img{display:block;width:100%;max-width:145px;height:55px;object-fit:contain}
#igbe-main .igbe-provider-note{font-size:12px;color:#60758a;line-height:1.55;margin:12px 0 0}
@media(max-width:600px){#igbe-main .igbe-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#igbe-main .igbe-provider-tile{min-height:74px;padding:10px}}

/* v0.3.2 – scoped provider cards and refined FAQ */
#igbe-main .igbe-provider-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:22px 0 16px!important;align-items:stretch!important}
#igbe-main .igbe-provider-grid .igbe-provider-tile{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;height:112px!important;min-height:112px!important;max-height:112px!important;padding:18px!important;background:#f8fbff!important;border:1px solid #dbe6f1!important;border-radius:14px!important;box-shadow:none!important;overflow:hidden!important;text-decoration:none!important;box-sizing:border-box!important}
#igbe-main .igbe-provider-grid .igbe-provider-tile img{display:block!important;width:auto!important;max-width:75%!important;height:auto!important;max-height:56px!important;object-fit:contain!important;margin:auto!important;position:static!important;transform:none!important}
#igbe-main .igbe-provider-grid .igbe-provider-tile:hover{background:#f0f7ff!important;border-color:#8cb7e0!important;transform:translateY(-2px)}
#igbe-main .igbe-provider-note{font-size:13px!important;line-height:1.6!important;margin-top:12px!important;color:#63798c!important}
#igbe-main .igbe-landscape-copy p:not(.igbe-eyebrow):not(.igbe-landscape-footnote){line-height:1.65;margin:0 0 13px}
#igbe-main .igbe-faq{padding-bottom:26px}
#igbe-main .igbe-faq-item{border:1px solid #dfebf5!important;border-radius:12px!important;background:#f9fbfe!important;margin:12px 0!important;padding:0!important;overflow:hidden!important}
#igbe-main .igbe-faq-item summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;cursor:pointer!important;list-style:none!important;padding:17px 20px!important;font-size:17px!important;font-weight:650!important;color:#18394f!important}
#igbe-main .igbe-faq-item summary::-webkit-details-marker{display:none}
#igbe-main .igbe-faq-chevron{display:block;flex:none;width:10px;height:10px;border-right:2px solid #3179ba;border-bottom:2px solid #3179ba;transform:rotate(45deg);transition:transform .15s ease}
#igbe-main .igbe-faq-item[open] .igbe-faq-chevron{transform:rotate(225deg)}
#igbe-main .igbe-faq-answer{padding:0 20px 18px;color:#334e62;line-height:1.65}
#igbe-main .igbe-faq-answer p{margin:0!important}
#igbe-main .igbe-guide-card{min-height:118px;padding:17px 19px}
@media(max-width:700px){#igbe-main .igbe-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}#igbe-main .igbe-provider-grid .igbe-provider-tile{height:94px!important;min-height:94px!important;max-height:94px!important;padding:12px!important}#igbe-main .igbe-provider-grid .igbe-provider-tile img{max-height:47px!important}#igbe-main .igbe-faq-item summary{font-size:15px!important;padding:15px!important}}

/* v0.4.0: No population figure means two equally wide coverage cards. */
#igbe-main .igbe-stats.igbe-stats--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width:760px) { #igbe-main .igbe-stats.igbe-stats--two { grid-template-columns: 1fr; } }
