/*.roboto-light {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.roboto-regular {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.roboto-bold {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: normal;
}*/

.bg-yellow {
    background:#FFF0C9;
}

.bg-orange {
    background:#FF7000;
}

html, body {
    height: 100%;
}

body {
    display: flex;
    overflow-x: hidden;
    flex-direction: column;
    /*font-family: "Roboto", sans-serif;*/
    font-family: "Inter", sans-serif;
    background: #FFF0C9;
    color: #787878;
}   

h1, h2, h3, h4, h5, h6,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: #FF7000; 
}

img {
    max-width:100%;
}

hr {
    border: 1px solid #fff;
    opacity: 1;
}

.bg-orange h2 {
    color: #FFF0C9;
}

.publications a {
    color:#fff;
}

.features p a {
    color:#787878;
}

.claim {
    margin-bottom:30px;
}

.claim,
.start h2 {
    padding-left:12px;
    padding-right:12px;
}

.footer {
    background: #45ABFF;
    margin-top: auto;
    font-size:20px;
}

.bg-orange {
    color: #fff;
}

.start i {
    font-size: 2em;
}

.start.we h3 {
    color: #ffffff;
}

.start {
    font-size: 18px;
}

.footer .nav {
    margin-left:-10px;
}

.footer .nav-link {
    border-bottom: 2px dashed white;
    padding: 0 0 3px 0;
    display: inline-block;
    margin-bottom: 3px;
}

.footer .nav .nav-link {
    margin:0 10px;
}

table td p:last-child {
    margin-bottom: 0;
}

/* btn */

.btn {
    border: none;
    border-radius: 100vw;
    position: relative;
    max-width: max-content;
    transition: none;
}

.btn-secondary ~ .btn-secondary {
    margin-right:0;
    margin-left: 15px;
}

.btn::after {
    position: absolute;
    content: '';
    top:-10px;
    left: -10px;
    right: -10px;
    bottom:-10px;
    border-radius: 100vw;    
}


/* btn-primary LARGE */

.btn-primary {
    background: #45ABFF;
    padding: 10px 25px;
    margin: 10px;
}

.btn-primary::after {
    border: 2px dashed  #45ABFF;
}

.btn-primary:focus,
.btn-primary:active:focus,
.btn-primary:active,
.btn-primary:hover {
    background: #4092d6;   
    padding: 15px 30px;
    margin-top: 5px;
    margin-bottom: 5px !important;
    border-color: transparent;
    margin-left: 5px;
    margin-right: 5px; 
}

.btn-primary:focus::after,
.btn-primary:active:focus::after,
.btn-primary:active::after,
.btn-primary:hover::after {    
    border-color: #4092d6;   
    top: -5px;
    bottom: -5px;    
    left: -5px;
    right: -5px; 
}


/* btn-orange LARGE */

.btn-orange {
    background: #FF7000;
    color: #ffffff;
    padding: 10px 25px;
    margin: 10px;
}

.btn-orange::after {
    border: 2px dashed  #FF7000;
}

.btn-orange:focus,
.btn-orange:active:focus,
.btn-orange:active,
.btn-orange:hover {
    background: #d75f1b;
    color: #ffffff;
    padding: 15px 30px;
    margin-top: 5px;
    margin-bottom: 5px !important;
    border-color: transparent;
    margin-left: 5px;
    margin-right: 5px;
}

.btn-orange:focus::after,
.btn-orange:active:focus::after,
.btn-orange:active::after,
.btn-orange:hover::after {    
    border-color: #d75f1b; 
    color: #ffffff;   
    top: -5px;
    bottom: -5px;    
    left: -5px;
    right: -5px;
}

/* btn-menu */
.btn-menu {
    padding: 0;    
}

.btn-menu:focus,
.btn-menu:active:focus,
.btn-menu:active,
.btn-menu:hover {
    padding: 5px;
}

#menu_modal .btn {
    background: #FFF0C9;
    color: #ffffff;
    padding:0;   
    margin: 10px;
}

#menu_modal .btn::after {
    border: 2px dashed  #FFF0C9;
}

#menu_modal .btn:focus,
#menu_modal .btn:active:focus,
#menu_modal .btn:active,
#menu_modal .btn:hover {
    padding: 5px;
    margin-top: 5px;
    margin-bottom: 5px !important;
    border-color: transparent;
    margin-left: 5px;
    margin-right: 5px;
}

#menu_modal .btn:focus::after,
#menu_modal .btn:active:focus::after,
#menu_modal .btn:active::after,
#menu_modal .btn:hover::after {    
    border-color: #FFF0C9; 
    color: #ffffff;   
    top: -5px;
    bottom: -5px;    
    left: -5px;
    right: -5px;
}

#menu_modal .modal-content {
    background: #FF7000;
}

#menu_modal .modal-header {
    border:0;
}

#menu_modal .nav {
    margin-top:-100px;
    display:flex;
    flex-direction: column;
}

#menu_modal .nav-item > a {    
    color:#fff;
    font-size:28px;
    text-decoration:none;
    font-weight:300;
    transition:.2s all;
}

#menu_modal .nav-item > a:hover {    
    color:#FFF0C9;
}


/* btn-secondary */

.btn-secondary {
    background: #FFFFFF;
    border: 2px dashed  #FF7000;
    color: #FF7000;
    font-size: 16px;
    padding: 8px 14px;
}

.btn-secondary:focus,
.btn-secondary:active:focus,
.btn-secondary:active,
.btn-secondary:hover,
.btn.show {
    background: #feeada !important;
    color: #FF7000 !important;
    border: 2px dashed  #FF7000 !important;
}

.btn-group .btn-secondary:first-child {
    border-right: none !important;
}

.btn-group .btn-secondary:last-child {
    border-left: none !important;
}


/* btn-link */

.btn-link,
.btn-link:focus,
.btn-link:active:focus,
.btn-link:active,
.btn-link:hover {
    color: #45ABFF;
    text-decoration: none;
    border-bottom: 2px dashed #45ABFF;
    border-radius: 0;
    font-size: 16px;
    padding: 0;
    margin: 0px 14px;
}

.btn-group .btn,
.btn-group .btn:focus,
.btn-group .btn:active:focus,
.btn-group .btn:active,
.btn-group .btn:hover {
    padding: 8px 14px;
    margin: 0 !important;
    font-size: 16px;
}

.btn-secondary::after,
.btn-secondary:focus::after,
.btn-secondary:active:focus::after,
.btn-secondary:active::after,
.btn-secondary:hover::after,
.btn-link::after,
.btn-link:focus::after,
.btn-link:active:focus::after,
.btn-link:active::after,
.btn-link:hover::after,
.btn-group .btn::after,
.btn-group .btn:focus::after,
.btn-group .btn:active:focus::after,
.btn-group .btn:active::after,
.btn-group .btn:hover::after {
    display:none;
}

/* list-group */

.list-group.social .list-group-item {
    border-radius: 100vw !important;
    border: 2px solid #fff;
    margin-right: 15px !important;
    color: #787878;
}

.carousel-item::before,
.carousel-item::after {        
    transform: scale(.75);
}

.carousel {
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.carousel-item {
    padding-top: 3rem;
}

.carousel-indicators {
    position: relative;
    margin: 0;
    justify-content: flex-start;
}

.carousel-indicators [data-bs-target] {
    background-color: #FFF0C9;
    height: 25px;
    border-radius: 100%;
    width: 25px;
    opacity: 1;
    margin: 0 5px;
}

.carousel-indicators [data-bs-target].active {
    background-color: #45ABFF;
}

.carousel-item .blockquote-footer {
    font-size: 26px;
    color: #ffffff;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 0;
}

.carousel-item .blockquote-footer cite {
    font-size: 20px;
    display: block;
    font-style: normal;
    font-weight: 400;
}

.carousel-item img {
    border-radius: 50%;
    z-index: 1;
    padding: 10px;
    margin-left: -10px;
}

.carousel-item img + span {
    background: #ffffff;
    position: absolute;
    aspect-ratio: 1/1;
    bottom: 0;
    left: calc(var(--bs-gutter-x) * .5);
    right: calc(var(--bs-gutter-x) * .5);
    border-radius: 50%;
}

.blockquote-footer::before {
    display:none;
}

.we-logo {
    border-radius: 50%;
    background: #ff8b33;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 15px;
    aspect-ratio: 1 / 1;
}

.we a {
    color: #ffffff;
}

.timeline .card-body {
    padding:30px 40px;   
}

.timeline .card {
    background-color: #FF7000;
    color: #ffffff;
    border-radius: 50px;
}

.timeline .card h3,
.timeline .card a {    
    color: #ffffff;
}

.timeline .card p:last-child,
.timeline .card ul:last-child {    
    margin-bottom: 0;
}

.partner-logo {
    border-radius: 50%;
    background: #ffffff;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 15px;
    aspect-ratio: 1 / 1;
}

.keyvisual {
    width: 70%;
    position: relative;
}

.keyvisual .kinder {
    width: 64%;
    margin-right: 90px;
    margin-left: auto;
}

.keyvisual .kinder-bubble {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.feedback-latch {
    display:none;
    position: absolute;
    top: 50%;
    transform: translateX(60px) translateY(-50%) rotate(-90deg);
    z-index: 1029;
    right: 0;
    font-weight: 500;
    font-size: 19px;
}

.feedback-latch > a {
    border-radius: 50px 50px 0px 0px;
    padding: 20px 30px 15px 25px;
    color: white;
    background-color: #45ABFF;
    text-decoration:none;
}

.feedback-latch > a::after {
    position: absolute;
    content: '';
    top: -25px;
    left: -7px;
    right: -7px;
    bottom: -15px;
    border-radius: 55px 55px 0px 0px;
    border: 2px dashed #45ABFF;
    pointer-events: none;
}

.feedback-latch > a:hover::after {
    border-color:#FF7000;
}

.feedback-latch > a:hover {
    background-color: #FF7000;
}

.feedback-latch > a > i {
    transform: rotate(90deg);
    margin-right: 5px;
}


.embed-content {
    --bs-aspect-ratio: 56.25%;
    position:relative;
    width: 100%;
}

.embed-content::before {
    display: block;
    padding-top: var(--bs-aspect-ratio);
    content: "";
}

.embed-content > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sponsor-blocker {
    background: #45ABFF;
}



/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {    
    h1 {
        font-size: 60px;
        font-weight: 300;        
    }

    h2, h3 {        
        font-weight: 300;        
    }

    h6 {
        font-size: 24px;
        font-weight: 300;        
    }
    
    h1, h2, h3, h4, h5, h6 {
        margin-bottom: 30px;
    }

    .support h2, 
    .support h3 {
        margin-top: 35px;
        margin-bottom: 10px;
    }

    .support a {
        color:#FE7B14;
    }
    
    #menu_modal .nav-item > a {    
        font-size:60px;
    }
    
    .start h2,
    .claim {
        padding:0;
    }
    
    .claim {
        margin-bottom:0;
        font-size: 60px;
        font-weight: 300;
        width: 40%;
        margin-left: 45px;
        position: absolute;
        top: 22vw;
        line-height: 73px;
    }
    
    .btn {
        font-size: 21px;
    }
    
    .btn-secondary,
    .btn-link {
        font-size: 16px;
    }        
    
    .timeline .top {
        background: #FF7000;
        border-radius: 50% / 100%;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        height: 200px;
        width: 400px;
        margin-top: -13rem;
        margin-left: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-right: -8%;
        margin-bottom: 5rem;
    }
    
    .timeline .card-side {
        border-radius: 50%;
        background: #FF7000;
        content:'';
        position: absolute;
        width: 50px;
        height: 50px;
        right: -26px;
        top: 30px;
    }

    .timeline .card-side::after {
        border: 1px dashed #FF7000;
        content:'';
        position:absolute;
        left: -5px;
        right: -5px;
        bottom: -5px;
        top: -5px;
        border-radius: 50%;
    }

    .timeline .right .card-side {
        width: 50px;
        height: 50px;
        left: -26px;
        top: 30px;
    }
    
    .timeline .left .card {
        margin-right: 40px;    
    }

    .timeline .right .card {
        margin-left: 40px;    
    }

    .timeline .left {
        border-right: 2px solid #ffffff;
        margin-left: 1px;
    }

    .timeline .right {
        border-left: 2px solid #ffffff;
        margin-right: 1px;
    }
    
    .intro .top {
        background: #FF7000;
        border-radius: 50% / 100%;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        height: 200px;
        width: 65%;
        margin-top: -200px;
        margin-left: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-right: -100px;
    }

    .features .top {
        background: #FFF0C9;
        border-radius: 50% / 100%;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        height: 200px;
        width: 60%;
        margin-top: -12rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-left: -5%;
    }

    .footer .top {
        background: #FFF0C9;
        border-radius: 50% / 100%;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        height: 150px;
        width: 50%;
        margin-top: -6rem;
        margin-left: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-right: -3%;
    }
    
    .start h2 {
        margin-left: 45px;
    }

    .start h3 {
        font-size:26px;
    }
    
    .start.we h3 {
        color: #787878;
    }
    
    .carousel-item .blockquote {
        font-size: 35px;    
        margin-bottom: 3rem;
    }    
    
    .carousel-item::before,
    .carousel-item::after {        
        transform: scale(.75);
    }

    .carousel-item::before {
        content: url('/filer/canonical/1720178011/37/');
        position: absolute;
        bottom: 3rem;
        left:0;
        color: #45ABFF;
        width: 50px;
    }

    .carousel-item::after {
        content: url('/filer/canonical/1720178014/38/');
        position: absolute;
        top: 0;
        right: 0;
        color: #45ABFF;
    }
    
    .carousel-item figure {
        margin-bottom: 4rem;
    }
    
    .we-bubble-full > span:first-child {
        background-image: url(/filer/canonical/1719841092/21/);
        height: 100%;
        width: 80%;
        position: absolute;
        top: 0;
        background-repeat: no-repeat;    
        background-size: 100%;
        left: 10%;
        background-size: cover;
        background-position: left center;
    }

    .we-bubble-full > span:last-child {
        background: #FFF0C9;
        position: absolute;
        top: 0;
        width: 50%;
        height: 100%;
        right: 0;
    }    
    
    .we {
        color: #787878;
        position: relative;
        z-index: -1;
    }
    
    .we a {
        color: #787878;
    }
    
    .we-logo {
         background:#FE7B14;
    }
    
    .carousel-item .blockquote-footer {
        text-align: right;
    }
    
    .carousel-item .blockquote-footer {
        margin: 0 3rem 0;
    }
    
    .feedback-latch {
        display:block;
    }
    
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { ... }

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { ... }

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { ... }

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) { ... }



