/*
 * Portada: hero con buscador y mapa de España con los cuadrados del logotipo.
 * Mismo lenguaje que la banda del directorio (azul marino, degradado del logotipo en el filete
 * y en el lugar del titular). Solo se carga en la portada. Author: Presencia en internet.
 */
body.wl-brand .wlh-hero {
    --wlh-navy: #01274c;
    --wlh-cyan: #32c4f0;
    --wlh-soft: #c9d8ea;
    --wl-focus: #32c4f0;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--wlh-navy);
    color: #fff;
}
body.wl-brand .wlh-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(900px 520px at 86% 6%, rgb(50 196 240 / 20%) 0, rgb(8 134 242 / 7%) 46%, rgb(1 39 76 / 0%) 72%),
        radial-gradient(760px 460px at -4% 104%, rgb(138 203 69 / 9%) 0, rgb(1 39 76 / 0%) 70%);
    pointer-events: none;
}
body.wl-brand .wlh-hero::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 6px;
    background: linear-gradient(90deg, #3cc8f4, #0086f2 34%, #8acb45 62%, #0782be);
}
body.wl-brand .wlh-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
    gap: 64px;
    align-items: center;
    padding-top: 72px;
    padding-bottom: 86px;
}
body.wl-brand .wlh-copy { min-width: 0; }

/* Titular */
body.wl-brand .wlh-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin: 0 0 24px;
    padding: 8px 16px 8px 11px;
    border: 1px solid rgb(50 196 240 / 32%);
    border-radius: 30px;
    background: rgb(50 196 240 / 10%);
    color: var(--wlh-cyan);
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .15em;
    line-height: 1.4;
    text-transform: uppercase;
}
body.wl-brand .wlh-eyebrow-rule {
    flex: 0 0 auto;
    width: 24px;
    height: 4px;
    border-radius: 2px;
    background: linear-gradient(90deg, #3cc8f4, #0086f2, #8acb45);
}
body.wl-brand .wlh-hero h1 {
    margin: 0 0 22px;
    padding: 0;
    color: #fff;
    font-size: clamp(42px, 4.6vw, 64px);
    font-weight: 800;
    letter-spacing: -.045em;
    line-height: 1.03;
    text-wrap: balance;
}
body.wl-brand .wlh-accent { display: inline-block; color: var(--wlh-cyan); }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
    body.wl-brand .wlh-accent {
        background: linear-gradient(98deg, #3cc8f4, #0086f2 48%, #8acb45);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
    }
}
@media (forced-colors: active) {
    body.wl-brand .wlh-accent { background: none; color: inherit; }
}
body.wl-brand .wlh-lead {
    max-width: 560px;
    margin: 0 0 32px;
    padding: 0;
    color: var(--wlh-soft);
    font-size: 18.5px;
    line-height: 1.6;
}

/* Buscador */
body.wl-brand .wlh-search {
    display: grid;
    /* Los servicios tienen nombres más largos que las provincias */
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
    gap: 12px;
    align-items: end;
    max-width: 720px;
    margin: 0;
    padding: 0;
}
body.wl-brand .wlh-field { display: grid; gap: 8px; min-width: 0; }
body.wl-brand .wlh-field label {
    margin: 0;
    padding: 0;
    color: var(--wlh-soft);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
}
body.wl-brand .wlh-field select {
    width: 100%;
    min-height: 58px;
    margin: 0;
    padding: 0 46px 0 18px;
    border: 0;
    border-radius: 12px;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23082c50' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-position: right 16px center;
    background-repeat: no-repeat;
    background-size: 18px;
    box-shadow: 0 10px 30px rgb(0 0 0 / 22%);
    color: #082c50;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    text-overflow: ellipsis;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
}
body.wl-brand .wlh-search button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 58px;
    margin: 0;
    padding: 0 28px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #0669e3, #0062b9);
    box-shadow: 0 14px 34px rgb(0 0 0 / 30%);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    /* Debajo de los dos desplegables: en fila recortaban los nombres de los servicios */
    grid-column: 1 / -1;
}
body.wl-brand .wlh-search button:is(:hover, :focus-visible, :active) { background: linear-gradient(135deg, #0560cf, #00539c); color: #fff; }
body.wl-brand .wlh-search button .wlb-icon { width: 18px; height: 18px; }

/* Provincias más buscadas y accesos secundarios */
body.wl-brand .wlh-popular {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    margin-top: 26px;
}
body.wl-brand .wlh-popular p { margin: 0; padding: 0; color: var(--wlh-soft); font-size: 13.5px; font-weight: 600; }
body.wl-brand .wlh-popular ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
body.wl-brand .wlh-popular li { margin: 0; padding: 0; }
body.wl-brand .wlh-popular a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 0 14px;
    border: 1px solid rgb(255 255 255 / 18%);
    border-radius: 999px;
    background: rgb(255 255 255 / 6%);
    color: #eef4fb;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
body.wl-brand .wlh-popular a:hover { border-color: rgb(50 196 240 / 60%); background: rgb(255 255 255 / 11%); color: #fff; }
body.wl-brand .wlh-chip-count { color: var(--wlh-cyan); font-size: 12.5px; font-weight: 700; font-variant-numeric: tabular-nums; }
body.wl-brand .wlh-more {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 26px;
    margin: 22px 0 0;
    padding: 0;
    font-size: 14.5px;
    line-height: 1.5;
}
body.wl-brand .wlh-more a { color: #9be3ff; font-weight: 600; }
body.wl-brand .wlh-more a:hover { color: #fff; }
body.wl-brand .wlh-sr {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

/* Mapa y cifras */
body.wl-brand .wlh-coverage {
    margin: 0;
    padding: 32px 32px 24px;
    border: 1px solid rgb(255 255 255 / 11%);
    border-radius: 24px;
    background: linear-gradient(180deg, rgb(255 255 255 / 6%), rgb(255 255 255 / 2%));
    box-shadow: 0 30px 80px rgb(0 0 0 / 24%);
}
body.wl-brand .wlh-map {
    display: grid;
    grid-template-columns: repeat(22, minmax(0, 1fr));
    gap: clamp(2px, .28vw, 4px);
    max-width: 440px;
    margin: 0 auto;
}
body.wl-brand .wlh-map i { display: block; aspect-ratio: 1; border-radius: 22%; }
body.wl-brand .wlh-map .s { background: rgb(255 255 255 / 8%); }
body.wl-brand :is(.wlh-map, .wlh-legend) .l1 { background: #1d5b98; }
body.wl-brand :is(.wlh-map, .wlh-legend) .l2 { background: #0b7ae6; }
body.wl-brand :is(.wlh-map, .wlh-legend) .l3 { background: #32c4f0; }
body.wl-brand :is(.wlh-map, .wlh-legend) .l4 { background: linear-gradient(135deg, #3cc8f4, #8acb45); }
body.wl-brand .wlh-map .l4 { box-shadow: 0 0 10px rgb(60 200 244 / 30%); }
body.wl-brand .wlh-coverage figcaption {
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid rgb(255 255 255 / 11%);
}
body.wl-brand .wlh-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}
body.wl-brand .wlh-stats li { margin: 0; padding: 0; }
body.wl-brand .wlh-stats strong {
    display: block;
    color: #fff;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}
body.wl-brand .wlh-stats span { display: block; margin-top: 5px; color: #b9cbe0; font-size: 13px; line-height: 1.35; }
body.wl-brand .wlh-legend {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 18px 0 0;
    padding: 0;
    color: #b9cbe0;
    font-size: 12px;
    line-height: 1.3;
}
body.wl-brand .wlh-legend i { display: block; width: 12px; height: 12px; border-radius: 3px; }
body.wl-brand .wlh-legend i:first-of-type { margin-left: 4px; }
body.wl-brand .wlh-legend i:last-of-type { margin-right: 4px; }

/* Entrada suave de las provincias, solo si no se ha pedido menos movimiento */
@media (prefers-reduced-motion: no-preference) {
    body.wl-brand .wlh-map :is(.l1, .l2, .l3, .l4) { animation: wlh-in .6s cubic-bezier(.2, .7, .2, 1) both; }
    body.wl-brand .wlh-map .l2 { animation-delay: .08s; }
    body.wl-brand .wlh-map .l3 { animation-delay: .16s; }
    body.wl-brand .wlh-map .l4 { animation-delay: .24s; }
}
@keyframes wlh-in {
    from { opacity: 0; transform: scale(.4); }
    to { opacity: 1; transform: none; }
}

/* La sección siguiente ya no necesita separarse de un buscador suelto */
body.wl-brand .wlh-hero + .wlb-platform-section { padding-top: 72px; }

/* ¿Qué necesitas hoy? con seis accesos (0.8.0: Vídeos y Recursos): 6 columnas; 3 × 2 en pantallas
   medianas; 2 × 3 en el móvil. Los bordes interiores se ajustan a cada rejilla. */
body.wl-brand .wlb-editorial-platform--6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 1100px) {
    body.wl-brand .wlb-editorial-platform--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    body.wl-brand .wlb-editorial-platform--6 > a { border-bottom: 1px solid #e0e7ee; }
    body.wl-brand .wlb-editorial-platform--6 > a:nth-child(3n) { border-right: 0; }
    body.wl-brand .wlb-editorial-platform--6 > a:nth-child(n+4) { border-bottom: 0; }
}
@media (max-width: 580px) {
    body.wl-brand .wlb-editorial-platform--6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.wl-brand .wlb-editorial-platform--6 > a:nth-child(3n) { border-right: 1px solid #e0e7ee; }
    body.wl-brand .wlb-editorial-platform--6 > a:nth-child(2n) { border-right: 0; }
    body.wl-brand .wlb-editorial-platform--6 > a:nth-child(n+4) { border-bottom: 1px solid #e0e7ee; }
    body.wl-brand .wlb-editorial-platform--6 > a:nth-child(n+5) { border-bottom: 0; }
    body.wl-brand .wlb-editorial-platform--6 > a:last-child { grid-column: auto; display: flex; align-items: flex-start; }
    body.wl-brand .wlb-editorial-platform--6 > a:last-child .wlb-editorial-platform-icon { grid-row: auto; }
    body.wl-brand .wlb-editorial-platform--6 > a:last-child strong { margin-top: 5px; }
}

/* Vídeos: banda oscura con los tres últimos (0.8.0). */
body.wl-brand .wlh-videos { background: #01274c; }
/* Solo el encabezado va sobre azul: las tarjetas son blancas y conservan sus colores y su foco azul. */
body.wl-brand .wlh-videos .wlb-editorial-section-heading { --wl-focus: #32c4f0; }
body.wl-brand .wlh-videos .wlb-editorial-section-heading h2 { color: #fff; }
body.wl-brand .wlh-videos .wlb-editorial-section-heading p { color: #c9d8ea; }
body.wl-brand .wlh-videos .wlb-editorial-eyebrow { color: #7fdcf8; }
body.wl-brand .wlh-videos .wlb-editorial-heading-row > .wlb-editorial-text-link { color: #fff; }
body.wl-brand .wlh-videos .wlb-editorial-heading-row > .wlb-editorial-text-link:hover { color: #7fdcf8; }
body.wl-brand .wlh-videos + .wlh-resources { padding-top: 72px; }

/* Recursos: una tarjeta por tipo de documento, con cuántos hay (0.8.0). */
body.wl-brand .wlh-resource-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
body.wl-brand .wlh-resource-tiles a { position: relative; display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 24px 22px 22px; border: 1px solid #e0e7ee; border-radius: 14px; background: #fff; color: #082c50; text-decoration: none; transition: border-color .16s ease, background-color .16s ease; }
body.wl-brand .wlh-resource-tiles a:hover { border-color: #8bbafd; background: #f6faff; }
body.wl-brand .wlh-tile-icon { color: #0565d7; line-height: 0; }
body.wl-brand .wlh-tile-icon svg { width: 28px; height: 28px; }
body.wl-brand .wlh-resource-tiles strong { margin-top: 6px; font-size: 16px; line-height: 1.3; }
body.wl-brand .wlh-tile-count { color: #56687f; font-size: 13px; }
body.wl-brand .wlh-tile-arrow { position: absolute; top: 22px; right: 20px; color: #56687f; font-size: 16px; }
@media (max-width: 580px) {
    body.wl-brand .wlh-resource-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    body.wl-brand .wlh-resource-tiles a { padding: 18px 16px; }
}
@media (prefers-reduced-motion: reduce) { body.wl-brand .wlh-resource-tiles a { transition: none; } }

/* Próximas ferias (0.9.4): tres tarjetas con el día de inicio, como las de Recursos. Se pintan cinco y se ven tres
   (las otras dos, por si una termina mientras la portada está en caché: brand.js). */
body.wl-brand .wlh-fairs-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
body.wl-brand .wlh-fairs-list > li[hidden] { display: none; }
body.wl-brand .wlh-fairs-list a { position: relative; display: flex; align-items: flex-start; gap: 16px; height: 100%; padding: 22px 46px 22px 20px; border: 1px solid #e0e7ee; border-radius: 14px; background: #fff; color: #082c50; text-decoration: none; transition: border-color .16s ease, background-color .16s ease; }
body.wl-brand .wlh-fairs-list a:hover { border-color: #8bbafd; background: #f6faff; }
body.wl-brand .wlh-fair-badge { flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 60px; min-height: 64px; padding: 8px 4px; border-radius: 12px; background: #eaf3ff; color: #0565d7; line-height: 1; text-align: center; }
body.wl-brand .wlh-fair-day { font-size: 24px; font-weight: 700; letter-spacing: -.01em; }
body.wl-brand .wlh-fair-month { margin-top: 6px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
body.wl-brand .wlh-fair-copy { display: flex; flex-direction: column; gap: 5px; min-width: 0; padding-top: 2px; }
body.wl-brand .wlh-fair-copy strong { font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
body.wl-brand .wlh-fair-when,
body.wl-brand .wlh-fair-sector { color: #56687f; font-size: 13.5px; line-height: 1.45; }
body.wl-brand .wlh-fair-status { display: inline-block; margin-right: 2px; padding: 1px 8px; border-radius: 20px; background: #fdecea; color: #a1260d; font-size: 12px; font-weight: 700; }
body.wl-brand .wlh-fair-arrow { position: absolute; top: 22px; right: 20px; color: #56687f; font-size: 16px; }
@media (max-width: 900px) {
    body.wl-brand .wlh-fairs-list { grid-template-columns: minmax(0, 1fr); gap: 12px; }
}
@media (max-width: 580px) {
    body.wl-brand .wlh-fairs-list a { gap: 14px; padding: 18px 40px 18px 16px; }
    body.wl-brand .wlh-fair-badge { width: 54px; min-height: 58px; }
    body.wl-brand .wlh-fair-day { font-size: 22px; }
    body.wl-brand .wlh-fair-arrow { top: 18px; right: 16px; }
}
@media (prefers-reduced-motion: reduce) { body.wl-brand .wlh-fairs-list a { transition: none; } }

/* Empresas por provincia (0.9.5): las 12 con más empresas a la vista y el resto, por orden alfabético, en un desplegable
   nativo, como en el directorio. */
body.wl-brand .wlh-provinces-list { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
body.wl-brand .wlh-provinces-list > li { margin: 0; padding: 0; }
body.wl-brand .wlh-provinces-list a { display: flex; align-items: center; justify-content: space-between; gap: 10px; height: 100%; min-height: 48px; padding: 10px 14px; border: 1px solid #e0e7ee; border-radius: 12px; background: #fff; color: #082c50; font-size: 15px; font-weight: 600; line-height: 1.3; text-decoration: none; transition: border-color .16s ease, background-color .16s ease; }
body.wl-brand .wlh-provinces-list a:hover { border-color: #8bbafd; background: #f6faff; }
body.wl-brand .wlh-province-name { min-width: 0; overflow-wrap: anywhere; }
body.wl-brand .wlh-province-count { flex: none; color: #56687f; font-size: 13px; font-weight: 500; font-variant-numeric: tabular-nums; }
body.wl-brand .wlh-provinces-more { margin-top: 14px; }
body.wl-brand .wlh-provinces-more > summary { display: inline-flex; align-items: center; gap: 12px; min-height: 46px; padding: 0 18px; border: 1.5px solid #d6e1ec; border-radius: 10px; background: #fff; color: #0565d7; font-size: 14px; font-weight: 700; list-style: none; cursor: pointer; }
body.wl-brand .wlh-provinces-more > summary::-webkit-details-marker { display: none; }
body.wl-brand .wlh-provinces-more > summary::after { content: ""; width: 8px; height: 8px; margin-top: -4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
body.wl-brand .wlh-provinces-more > summary:hover { border-color: #9dbcdc; }
body.wl-brand .wlh-provinces-more[open] > summary { margin-bottom: 14px; }
body.wl-brand .wlh-provinces-more[open] > summary::after { margin-top: 4px; transform: rotate(-135deg); }
body.wl-brand .wlh-provinces-close,
body.wl-brand .wlh-provinces-more[open] .wlh-provinces-open { display: none; }
body.wl-brand .wlh-provinces-more[open] .wlh-provinces-close { display: inline; }
@media (max-width: 1100px) { body.wl-brand .wlh-provinces-list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 760px) { body.wl-brand .wlh-provinces-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 560px) {
    body.wl-brand .wlh-provinces-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    body.wl-brand .wlh-provinces-list a { min-height: 44px; padding: 9px 12px; font-size: 14px; }
}
/* En móviles de 320 px (y con zoom al 400 %), «Guadalajara» cabe entera junto a su cifra. */
@media (max-width: 359px) { body.wl-brand .wlh-provinces-list a { gap: 6px; padding-inline: 10px; font-size: 13.5px; } }
@media (prefers-reduced-motion: reduce) { body.wl-brand .wlh-provinces-list a { transition: none; } }

/* Zonas de publicidad del plugin (0.7.0): «portada» bajo el hero y «socios» antes del bloque final,
   dentro del ancho de la página. El plugin reserva la medida del hueco: sin saltos al cargar. */
body.wl-brand .wlh-ad .wl-ad { margin: 0 auto; }
body.wl-brand .wlh-ad--portada { padding-top: 44px; }
body.wl-brand .wlh-ad--portada + .wlb-platform-section { padding-top: 56px; }
body.wl-brand .wlh-ad--socios { padding-top: 56px; }
body.wl-brand .wlh-ad--socios + .wlb-editorial-section { padding-top: 48px; }

@media (max-width: 1100px) {
    body.wl-brand .wlh-inner { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 40px; padding-top: 60px; padding-bottom: 72px; }
    body.wl-brand .wlh-coverage { padding: 26px 24px 22px; }
    body.wl-brand .wlh-stats strong { font-size: 24px; }
}
@media (max-width: 860px) {
    body.wl-brand .wlh-inner { grid-template-columns: minmax(0, 1fr); gap: 30px; padding-top: 44px; padding-bottom: 56px; }
    body.wl-brand .wlh-coverage { padding: 20px 22px; border-radius: 18px; }
    body.wl-brand .wlh-map,
    body.wl-brand .wlh-legend { display: none; }
    body.wl-brand .wlh-coverage figcaption { margin-top: 0; padding-top: 0; border-top: 0; }
    body.wl-brand .wlh-hero + .wlb-platform-section { padding-top: 48px; }
    body.wl-brand .wlh-ad--portada,
    body.wl-brand .wlh-ad--socios { padding-top: 32px; }
    body.wl-brand .wlh-ad--portada + .wlb-platform-section,
    body.wl-brand .wlh-ad--socios + .wlb-editorial-section { padding-top: 40px; }
}
@media (max-width: 560px) {
    body.wl-brand .wlh-eyebrow { margin-bottom: 20px; padding-left: 14px; font-size: 10.5px; letter-spacing: .1em; }
    body.wl-brand .wlh-eyebrow-rule { display: none; }
    /* «Empresas de limpieza» mide 9,37 veces el cuerpo: así cabe en una línea en cualquier móvil */
    body.wl-brand .wlh-hero h1 { font-size: min(42px, calc((100vw - 44px) / 9.6)); }
    body.wl-brand .wlh-lead { margin-bottom: 26px; font-size: 17px; }
    body.wl-brand .wlh-search { grid-template-columns: minmax(0, 1fr); }
    body.wl-brand .wlh-field select,
    body.wl-brand .wlh-search button { min-height: 54px; }
    body.wl-brand .wlh-popular { margin-top: 22px; }
    body.wl-brand .wlh-popular a { min-height: 36px; padding: 0 12px; font-size: 13.5px; }
    body.wl-brand .wlh-stats { gap: 10px; }
    body.wl-brand .wlh-stats strong { font-size: 22px; }
    body.wl-brand .wlh-stats span { font-size: 12px; }
    body.wl-brand .wlh-hero + .wlb-platform-section { padding-top: 40px; }
}
