:root {
    --black: #000;
    --white: #fff;
    --pink: #E61674;
    --blue: #36A9E1;
    --yellow: #FAB436;
    --lighter-yellow: #FCCD78;
    --navy: #28265A;
    --beige: #F9FBFB;
    --grey: #EAE9EF;
}

/*general*/
* {
    font-family: "AnekKannada", Sans-Serif, serif;
    transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out, opacity 0.25s ease-in-out, text-decoration-color 0.25s ease-in-out, max-height 0.25s ease-in-out;
}
html {
    scroll-behavior: smooth;
}
body {
    margin: 0;
    overflow-x: hidden;
    color: var(--navy);
}
p, h1, h2, h3 {
    margin: 0;
}
p, h1, h2, span, a {
    padding-top: 5px;
}
p, button, .primary-btn, .secondary-btn, .tertiary-btn {
    font-size: 20px;
    font-weight: 600;
    line-height: 150%;
}
button, .primary-btn, .secondary-btn, .tertiary-btn {
    display: block;
    padding: 15px 24px 10px;
    width: fit-content;
    color: var(--navy);
    background-color: transparent;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    text-decoration: none;
}
img {
    border-radius: 8px;
}
.bg-white {
    background-color: var(--white);
}
.bg-beige {
    background-color: var(--beige);
}
.bg-navy {
    background-color: var(--navy);
}
.bg-blue {
    background-color: var(--blue);
}
.flex {
    display: flex;
}
.rel {
    position: relative;
}
.abs {
    position: absolute;
}

/*header*/
header {
    padding: 0 140px;
}
header img {
    height: 60px;
    padding: 15px 0;
}

/*section1 - background*/
.section1, .section1-background {
    height: 690px;
}
.section1-background {
    width: 100%;
    overflow: hidden;
}
.section1-background svg {
    opacity: 0.1;
}
#bg-arrow-left {
    top: -115px;
}
#bg-arrow-right {
    left: 650px;
}
#chip {
    height: 80%;
    bottom: 0;
    left: 38%;
    z-index: 10;
}
#seagull {
    height: 100%;
    right: 0;
}
/*content*/
.section1-content {
    box-sizing: border-box;
    height: 100%;
    z-index: 5;
    padding: 70px 140px;
    gap: 20px;
}
.section1-content .left, .section1-content .right {
    width: 50%;
    height: 100%;
    flex-direction: column;
    justify-content: center;
}
h1 {
    color: var(--white);
    font-size: 64px;
    font-weight: 600;
    line-height: 120%;
}
h1 span {
    display: block;
    background-color: var(--pink);
    padding: 17px 12px 12px;
    width: fit-content;
    margin-top: -1px;
}
.section1-content p {
    font-weight: 500;
    padding: 35px 0 30px;
    width: 65%;
}
.primary-btn {
    background-color: var(--yellow);
    border: none;
}
.primary-btn:hover{
    background-color: var(--lighter-yellow);
}
.tertiary-btn {
    background-color: var(--navy);
    color: var(--white);
    margin-top: 20px;
    align-self: flex-end;
    margin-bottom: -75px;
}
.tertiary-btn:hover {
    background-color: #3A377C;
}

#play-btn {
    display: none;
    padding: 0;
    left: 50%;
    top: 40%;
    transform: translateX(-50%);
    background-color: transparent;
}
#play-btn svg {
    height: 10vh;
}
#play-btn:hover path {
    opacity: 0.8;
}
video::-webkit-media-controls {
    visibility: hidden;
}
video::-webkit-media-controls-enclosure {
    visibility: visible;
}


.text-yellow {
    background-color: var(--yellow);
    text-align: center;
    margin: 0;
    padding: 19px 14px 14px;
    font-size: 28px;
}

/*section 2*/
.section2 {
    padding: 70px 140px;
    gap: 134px;
    z-index: 5;
}
.section2 > div {
    width: 50%;
    flex-direction: column;
    justify-content: center;
    gap: 30px;
}
h2 {
    font-size: 48px;
    line-height: 125%;
}
.section2 p, .section2 li {
    font-size: 20px;
    font-weight: 400;
    line-height: 160%;
    color: var(--black);
}
.secondary-btn {
    border: 1px solid var(--navy);
}
.secondary-btn:hover {
    background-color: var(--grey);
}

/*section3*/
.section3 {
    padding: 100px 140px;
}
#map-trouble {
    padding-top: 48px;
    padding-bottom: 100px;
}
#map-trouble h3 {
    font-weight: 600;
    font-size: 26px;
}
#map-trouble a {
    color: var(--black);
    text-decoration-color: transparent;
    text-underline-offset: 8px;
}
#map-trouble a:hover {
    text-decoration-color: var(--black);
}
.section3 .text h2, .section3 .text p, .section3.bg-beige h2, .section3.bg-beige p {
    max-width: 650px;
    margin: auto;
}
.text {
    flex-direction: column;
    gap: 24px;
    text-align: center;
    padding-bottom: 48px;
}
.text p {
    font-size: 20px;
    font-weight: 400;
    line-height: 160%;
    color: var(--black);
}
.pink-arrow {
    min-width: 20px;
}
/*tiles*/
.tiles {
    flex-wrap: wrap;
    gap: 24px;
    justify-content: center;
    width: 75%;
    margin: auto;
}
.tile {
    padding: 24px;
    box-sizing: border-box;
    width: calc(33.33% - 24px);;
}
.title {
    align-items: baseline;
    gap: 8px;
    margin-bottom: 16px;
}
.tile h3, #map h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    padding-top: 7px;
}
.tile p {
    font-size: 18px;
    font-weight: 400;
    line-height: 160%;
    color: var(--black);
}

#map {
    width: 100%;
    height: 780px;
}
#map .gm-style-iw-d {
    padding: 0 36px 36px;
}

.bg-navy p {
    color: var(--white);
}
.bg-navy .quote {
    font-size: 42px;
    font-weight: 500;
    line-height: 120%;
}

/*case studies*/
main > h2 {
    padding: 70px 140px;
}
h3 {
    font-size: 36px;
    font-weight: 500;
    line-height: 125%;
}
h4 {
    font-size: 20px;
    font-weight: 500;
    line-height: 125%;
}
.studies h3 {
    padding-top: 10px;
}
.studies {
    padding-top: 0 !important;
    gap: 70px;
}
.studies ul {
    margin: 0;
}
.studies > div {
    justify-content: start;
    gap: 0;
}
.studies .title {
    font-size: 36px;
    font-weight: 500;
    line-height: 125%;
    margin-bottom: 35px;
}
.read-more {
    border: none !important;
    font-size: 18px;
    padding: 18px 0 13px;
}
#more-btn-2 {
    margin-top: 5px;
}
.arrow-down {
    display: inline-block;
    transform: rotate(90deg);
}
.arrow-up {
    display: inline-block;
    transform: rotate(270deg);
}
#expandable-1, #expandable-2 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    max-height: 100px;
}
#expandable-1.expanded, #expandable-2.expanded {
    -webkit-line-clamp: unset;
}

/*footer*/
footer section {
    padding: 35px 140px;
}
footer a {
    text-decoration-color: transparent;
    text-underline-offset: 8px;
    color: var(--navy);
    font-size: 16px;
    font-weight: 400;
}
footer .bg-navy {
    justify-content: space-between;
    gap: 50px;
}
footer .bg-navy div {
    gap: 8px 24px;
    align-items: center;
    flex-wrap: wrap;
}
footer .bg-navy a {
    color: var(--white);
    padding: 19px 0 14px;
}
footer .bg-navy a:hover {
    text-decoration-color: var(--white);
}
footer .sm {
    flex-wrap: nowrap !important;
}

/*responsiveness*/
@media (min-width: 1650px) {
    .section1-content .right {
        max-height: 400px;
        width: auto;
        margin: auto 0;
    }
    .section1-content .right video {
        max-height: 400px;
    }
}
@media (max-width: 1400px) {
    header {
        padding: 0 70px;
    }

    .section1, .section1-background {
        height: 650px;
    }
    .section1-content, main > h2 {
        padding: 70px;
    }
    h1 {
        font-size: 60px;
    }
    .section1-background svg {
        height: 850px;
    }
    #bg-arrow-left {
        top: -50px;
    }
    #bg-arrow-right {
        left: 600px;
    }

    .section2 {
        padding: 70px;
        gap: 100px;
    }
    .section3 {
        padding: 100px 70px;
    }
    #map-trouble {
        padding-top: 100px;
    }

    footer section {
        padding: 35px 70px;
    }
}

@media (max-width: 1200px) {
    h1 {
        font-size: 50px;
    }
    header, .section1-content {
        padding: 0 35px;
    }
    .section1-background svg {
        height: 750px;
    }
    #bg-arrow-left {
        left: -50px;
        top: -25px;
    }
    #bg-arrow-right {
        left: 450px;
    }
    #chip {
        height: 70%;
    }

    #play-btn {
        top: 43%;
    }

    .section2, .section3, main > h2 {
        padding: 70px 35px;
    }
    #map-trouble {
        padding-top: 70px;
        padding-bottom: 70px;
    }
    .section2 {
        gap: 50px;
    }
    h2 {
        font-size: 40px;
    }
    h3 {
        font-size: 30px;
    }
    .bg-navy .quote {
        font-size: 35px;
    }

    footer section {
        padding: 35px;
    }
}

@media (max-width: 992px) {
    h1 {
        font-size: 40px;
        line-height: 110%;
    }
    h2 {
        font-size: 35px;
    }
    header, .section1-content {
        padding: 0 20px;
    }
    .section1-background svg {
        height: 600px;
    }
    .section1-content .primary-btn {
        width: min-content;
    }
    #bg-arrow-left {
        left: -100px;
    }
    #bg-arrow-right {
        left: 350px;
    }
    #chip {
        height: 60%;
    }
    #seagull {
        height: 92%;
        bottom: 0;
    }

    .section2 {
        gap: 25px;
    }
    .tiles {
        width: 90%;
    }
    .bg-navy .quote {
        font-size: 30px;
    }

    #map {
        height: 680px;
    }
}

@media (max-width: 768px) {
    header, .section1-content {
        padding: 0 35px;
    }
    .section1, .section1-content {
        height: 950px;
    }
    .section1-content p {
        width: 100%;
    }
    h1 span {
        display: inline-block;
    }
    .section1-content, .section2 {
        flex-direction: column;
        justify-content: space-evenly;
    }
    .section1-content .left, .section1-content .right {
        height: fit-content;
        width: 100%;
    }
    .section1-background {
        height: inherit;
    }
    #chip {
        left: -50px;
        height: 35%;
    }
    #seagull {
        height: 62%;
        bottom: 0;
    }
    .section1-background svg {
        height: 100%;
    }
    #bg-arrow-left {
        top: 0;
        left: -250px;
    }
    #bg-arrow-right {
        left: 350px;
    }

    #play-btn {
        top: 32%;
    }
    .tertiary-btn {
        margin-bottom: 0;
    }

    .title {
        margin-bottom: 0;
    }
    .tiles {
        width: 100%;
    }
    .tile {
        width: calc(50% - 24px);;
    }
    .section2 > div, .studies img {
        width: 100%;
    }
    .study-1 {
        flex-direction: column-reverse;
    }
    .bg-navy .quote {
        font-size: 25px;
    }

    #map {
        height: 580px;
    }

    footer .column {
        gap: 0;
    }
    footer .row {
        width: calc(50% - 12px);
        margin-bottom: 24px;
    }
    footer .bg-navy {
        flex-direction: column;
        align-items: center;
        padding: 35px;
        gap: 8px;
    }
    footer .bg-navy div {
        justify-content: center;
    }
}

@media (max-width: 667px) {
    #seagull {
        height: 57%;
    }
}

@media (max-width: 576px) {
    header, .section1-content {
        padding: 0 15px;
    }
    .section1, .section1-content {
        height: 1000px;
    }
    .section1-content p {
        padding: 30px 0 25px;
    }
    #chip {
        height: 25%;
        left: -30px;
    }
    #seagull {
        height: 56%;
    }
    #bg-arrow-left {
        left: -350px;
    }
    #bg-arrow-right {
        left: 150px;
    }

    .section2, .section3, main > h2 {
        padding: 35px 15px;
    }
    #map-trouble {
        padding-top: 35px;
        padding-bottom: 35px;
    }
    .tile {
        padding: 0;
        width: 100%;
    }

    #play-btn {
        top: 25%;
    }

    .studies .title {
        margin-bottom: 10px;
    }
}

@media (max-width: 520px) {
    #seagull {
        height: 49%;
    }
}
@media (max-width: 458px) {
    #seagull {
        height: 45%;
    }
}
@media (max-width: 440px) {
    #seagull {
        height: 43%;
    }
}

/* Fonts */
@font-face {
    font-family: "AnekKannada";
    src: url("fonts/AnekKannada-SemiBold.woff2") format("woff2"), url("fonts/AnekKannada-SemiBold.ttf") format("ttf");
    font-display: auto;
    font-style: normal;
    font-weight: 600;
    font-stretch: normal;
}
@font-face {
    font-family: "AnekKannada";
    src: url("fonts/AnekKannada-Regular.woff2") format("woff2"), url("fonts/AnekKannada-Regular.ttf") format("ttf");
    font-display: auto;
    font-style: normal;
    font-weight: 500;
    font-stretch: normal;
}
@font-face {
    font-family: "AnekKannada";
    src: url("fonts/AnekKannada-Light.woff2") format("woff2"), url("fonts/AnekKannada-Light.ttf") format("ttf");
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
}

