@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-Bold.woff2') format('woff2');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-BoldItalic.woff2') format('woff2');
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-Italic.woff2') format('woff2');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-Regular.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-LightItalic.woff2') format('woff2');
  font-weight: 300;
  font-style: italic;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-SmBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'IberPangea';
  src: url('/o/iberdrola-corporativo-theme/fonts/iberpangea/IberPangea-SmBoldItalic.woff2') format('woff2');
  font-weight: 600;
  font-style: italic;
}

:root {
    --buses-white: #FFFEFF;
    --buses-black: #3A3735;
    --buses-green: #00A443;
    --buses-forest: #00402A;
    --buses-brown: #615D5A;
    --buses-border: #D8CFC7;
    --buses-orange: #FF9C1A;
    --buses-sand: #FFF5EC;
}

#buses {
    width: 100%;
    max-width: 980px;
    padding: 44px 16px;
    margin: 20px auto;
    text-align: left;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 15px;
    background-color: var(--buses-white);
    border: 1px solid var(--buses-border);
}

#buses * {
    font-family: 'IberPangea' !important;
    font-style: normal;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

#buses h2 {
    margin-top: 0 !important;
}

#buses ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#buses ul li:before {
    content: none !important;
    display: none !important;
}

#buses picture,
#buses img {
    display: block;
    width: 100%;
}

#buses .buses_title {
    color: var(--buses-green) !important;
    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.13;
    text-align: left;
    margin-bottom: 20px;
}

#buses .buses_title strong {
    font-weight: 600;
}

#buses .buses_box-2 {
    max-width: 290px;
    margin-left: auto;
    margin-right: auto;
}

#buses .buses_box-1,
#buses .buses_box-3 {
    border-radius: 15px;
    background: var(--buses-sand);
    padding: 20px 12px;
}

#buses .buses_box-1 {
    margin-bottom: 20px;
    
}

#buses .buses_box-1 img {
    max-width: 115px;
    margin: 20px auto 0;
}

#buses .buses_media {
    max-width: 260px;
    margin: 0 auto 20px;
    position: relative;
}

#buses .buses_building {
    position: absolute;
    max-width: 162px;
    z-index: 1;
    top: -30px;
    left: 3px;
}

#buses .buses_molino {
    position: absolute;
    max-width: 22px;
    transform: scale(-1, 1);
    z-index: 1;
}

#buses .buses_molino-1 {
    top: 148px;
    left: 18px;
}

#buses .buses_molino-2 {
    top: 136px;
    left: 37px;
}

#buses .buses_molino-3 {
    top: 126px;
    left: 56px;
}

#buses .buses_molino-4 {
    top: 163px;
    left: 38px;
}

#buses .buses_molino-5 {
    top: 150px;
    left: 58px;
}

#buses .buses_molino-6 {
    top: 138px;
    left: 79px;
}

#buses .buses_subtitle {
    color: var(--buses-green) !important;
    font-size: 18px;
    line-height: 1.22;
    font-style: normal;
    font-weight: 500;
    text-align: left;
    display: flex;
    width: 100%;
    margin-bottom: 10px;
}

#buses .buses_text {
    color: var(--buses-brown) !important;
    font-size: 16px;
    line-height: 1.25;
    font-style: normal;
    font-weight: 400;
    text-align: left;
    text-wrap: balance;
    max-width: 590px;
    margin-bottom: 20px;
}

#buses .buses_number {
    display: flex;
    width: 24px;
    min-width: 24px;
    height: 24px;
    padding: 2px;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    background-color: var(--buses-orange);
    color: var(--buses-white) !important;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    margin: auto 8px auto 0;
}

#buses .buses_number-2 {
    position: absolute;
    top: 120px;
    right: 50px;
}

#buses .buses_number-3 {
    position: absolute;
    top: 365px;
    left: 103px;
}

#buses .buses_box-2 {
    position: relative;
    margin-bottom: 14px;
}

#buses .buses_box-2 .buses_subtitle {
    max-width: 240px;
    justify-content: center;
}

#buses .buses_box-2 .buses_text {
    max-width: 240px;
    text-align: center;
}

#buses .buses_box-2 .buses_subtitle:nth-of-type(1) {
    max-width: 100%;
    justify-content: flex-end;
}

#buses .buses_box-2 .buses_text:nth-of-type(2) {
    max-width: 100%;
    text-align: right;
    padding-left: 35px;
    margin-bottom: 28px;
}

#buses .buses_box-3 img {
    max-width: 115px;
    margin: 0 auto 20px;
}

#buses .buses_box-3 .buses_text {
    margin-bottom: 0;
}

#buses .show-only-mobile {
    display: block;
}

#buses .show-only-tablet {
    display: none;
}

#buses .show-only-desktop {
    display: none;
}

@media (min-width: 700px) {

    #buses {
        padding: 44px 30px;
    }

    #buses .buses_title {
        font-size: 32px;
        line-height: 1.12;
        text-wrap: balance;
        margin-bottom: 28px;
    }

    #buses .buses_box {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    #buses .buses_box-1,
    #buses .buses_box-3 {
        padding: 34px 20px;
        max-width: 823px;
        margin-left: auto;
        margin-right: auto;
    }

    #buses .buses_box-1 {
        min-height: 160px;
        margin-bottom: 33px;
        padding-right: 210px;
        position: relative;
    }
    
    #buses .buses_box-1 img {
        max-width: 150px;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        margin: 0;
    }

    #buses .buses_box-1 .buses_text {
        margin-bottom: 0;
    }

    #buses .buses_box-2 .buses_subtitle,
    #buses .buses_box-2 .buses_text {
        margin-left: auto;
        margin-right: auto;
    }

    #buses .buses_box-2 {
        width: 100%;
        max-width: 499px;
        margin-bottom: 30px;
    }

    #buses .buses_box-2 .buses_subtitle:nth-of-type(1) {
        justify-content: flex-start;
    }

    #buses .buses_box-2 .buses_subtitle:nth-of-type(1),
    #buses .buses_box-2 .buses_text:nth-of-type(2) {
        width: 100%;
        max-width: 225px;
        text-align: left;
        margin-left: auto;
        margin-right: 0;
        padding-left: 0;
    }

    #buses .buses_box-2 .buses_text:nth-of-type(2) {
        margin-bottom: 5px;
    }

    #buses .buses_media {
        max-width: 468px;
        margin-bottom: 8px;
    }
    
    #buses .buses_number-2 {
        top: 117px;
        right: 39%;
        z-index: 1;
    }

    #buses .buses_number-3 {
        top: 413px;
        left: 50%;
        transform: translateX(-50%);
    }

    #buses .buses_box-3 {
        min-height: 210px;
        padding-left: 215px;
        padding-right: 20px;
        padding-top: 20px;
        position: relative;
    }
    
    #buses .buses_box-3 img {
        max-width: 150px;
        position: absolute;
        top: 50%;
        left: 20px;
        transform: translateY(-50%);
        margin: 0;
    }

    #buses .buses_building {
        position: absolute;
        max-width: 262px;
        z-index: 1;
        top: -73px;
        left: 3px;
    }

    #buses .buses_molino {
        max-width: 34px;
    }

    #buses .buses_molino-1 {
        top: 209px;
        left: 35px;
    }

    #buses .buses_molino-2 {
        top: 195px;
        left: 62px;
    }

    #buses .buses_molino-3 {
        top: 177px;
        left: 90px;
    }

    #buses .buses_molino-4 {
        top: 235px;
        left: 66px;
    }

    #buses .buses_molino-5 {
        top: 214px;
        left: 93px;
    }

    #buses .buses_molino-6 {
        top: 199px;
        left: 126px;
    }

    #buses .show-only-mobile {
        display: none;
    }
    
    #buses .show-only-tablet {
        display: block;
    }

}

@media (min-width: 1080px) {

    #buses .buses_title {
        margin-bottom: 64px;
    }

    #column-2 #buses .buses_title {
        margin-bottom: 28px;
    }

    #buses .show-only-desktop {
        display: block;
    }
    
    #buses .show-only-tablet {
        display: none;
    }

    #column-2 #buses .show-only-desktop {
        display: none;
    }
    
    #column-2 #buses .show-only-tablet {
        display: block;
    }

    #buses .buses_box-2 {
        max-width: 100%;
    }

    #column-2 #buses .buses_box-2 {
        max-width: 499px;
    }

    #buses .buses_media {
        max-width: 887px;
        transform: translateY(-45px) translateX(-20px);
        margin-bottom: -66px;
    }

    #column-2 #buses .buses_media {
        max-width: 468px;
        transform: none;
        margin-bottom: 8px;
    }

    #buses .buses_building {
        max-width: 342px;
        top: -94px;
        left: 3px;
    }

    #column-2 #buses .buses_building {
        max-width: 262px;
        top: -73px;
        left: 3px;
    }

    #buses .buses_number-3 {
        top: 363px;
        left: calc(50% + 20px);
    }

    #column-2 #buses .buses_number-3 {
        top: 413px;
        left: calc(50% + 0px);
    }

    #buses .buses_box-2 .buses_subtitle:nth-of-type(3),
    #buses .buses_box-2 .buses_text:nth-of-type(4) {
        transform: translateX(20px) translateY(10px);
    }

    #column-2 #buses .buses_box-2 .buses_subtitle:nth-of-type(3),
    #column-2 #buses .buses_box-2 .buses_text:nth-of-type(4) {
        transform: none;
    }

    #buses .buses_box-2 .buses_subtitle:nth-of-type(1),
    #buses .buses_box-2 .buses_text:nth-of-type(2) {
        max-width: 378px;
    }

    #column-2 #buses .buses_box-2 .buses_subtitle:nth-of-type(1),
    #column-2 #buses .buses_box-2 .buses_text:nth-of-type(2) {
        max-width: 225px;
    }

    #buses .buses_box-2 .buses_text:nth-of-type(2) {
        margin-bottom: 25px;
    }

    #column-2 #buses .buses_box-2 .buses_text:nth-of-type(2) {
        margin-bottom: 5px;
    }

    #buses .buses_number-2 {
        top: 82px;
        right: 49%;
    }
    
    #column-2 #buses .buses_number-2 {
        top: 117px;
        right: 39%;
    }

    #buses .buses_molino {
        max-width: 40px;
    }

    #buses .buses_molino-1 {
        top: 73px;
        left: 660px;
    }

    #buses .buses_molino-2 {
        top: 53px;
        left: 695px;
    }

    #buses .buses_molino-3 {
        top: 31px;
        left: 732px;
    }

    #buses .buses_molino-4 {
        top: 103px;
        left: 702px;
    }

    #buses .buses_molino-5 {
        top: 78px;
        left: 733px;
    }

    #buses .buses_molino-6 {
        top: 57px;
        left: 773px;
    }

    #column-2 #buses .buses_molino {
        max-width: 34px;
    }

    #column-2 #buses .buses_molino-1 {
        top: 209px;
        left: 35px;
    }

    #column-2 #buses .buses_molino-2 {
        top: 195px;
        left: 62px;
    }

    #column-2 #buses .buses_molino-3 {
        top: 177px;
        left: 90px;
    }

    #column-2 #buses .buses_molino-4 {
        top: 235px;
        left: 66px;
    }

    #column-2 #buses .buses_molino-5 {
        top: 214px;
        left: 93px;
    }

    #column-2 #buses .buses_molino-6 {
        top: 199px;
        left: 126px;
    }

}