* {
    margin:0;
    padding:0;
    box-sizing: border-box;
}

body {
    background:#f3f3f5;
    color:#171717;
}

main {
    max-width: 1200px;
    margin:0 auto;
    box-shadow:0px 0px 5px 5px #17171710;
    min-height:100vh;
}

.subhead {
    display:flex;
    gap:10px;
    background:#fa624d;
    color:#F9F9F9;
}

.subhead .col {
    flex:1 calc(33.33% - 10px);
    padding:0.5rem 1rem;
}

.adress {
    text-align: start;
    font-size:12px;
}

.social {
    display:flex;
    gap:15px;
    align-items: center;
    justify-content: end;
}

.social span {
    font-size:12px;
}

.divider {
    height:100%;
    width:1px;
    background:#F9F9F9;
}

.social a {
    color:#F9F9F9;
}

header {
    background:#fa624d;
    padding:3rem 1rem;
    padding-bottom:0;
}

.masthead {
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom:3rem;
    gap:100px;
    border-bottom:1px solid #F9F9F9;
}

.sitename {
    font-size:2.5rem;
    text-transform: uppercase;
    font-weight:600;
}

.account {
    display: flex;
    gap:30px;
}

.account .divider {
    min-height:52px;
}

.account a {
    color:#F9F9F9;
    text-decoration: none;
    display:flex;
    flex-direction: column;
    align-items: center;
}

.account i {
    font-size:32px;
}

.account a span {
    font-size:12px;
}

#searchContainer {
    flex:1;
    background:#F9F9F9;
    border-radius:0.15rem;
    display:flex;
}

#searchContainer input {
    flex:1;
    border:0;
    background:transparent;
    color:#383E42;
    padding:0.5rem 0.5rem;
    font-size:14px;
    border-top-left-radius: 0.15rem;
    border-bottom-left-radius: 0.15rem;
}

#searchContainer input:focus {
    outline:none;
}

#searchContainer .searchButton {
    display:flex;
    border-top-right-radius:0.15rem;
    border-bottom-right-radius:0.15rem;
    background:#383E42;
    color:#F9F9F9;
    border:none;
    padding:0.15rem 1rem;
    align-items: center;
    font-size:20px;
    cursor:pointer;
}

nav {
    position:relative;
    padding:1rem 1.5rem;
}

nav ul {
    display:flex;
    gap:20px;
    list-style:none;
    font-size:18px;
    color:#F9F9F9;
}

nav ul li {
    cursor:pointer;
}

nav ul a {
    color:#F9F9F9;
    text-decoration: none;
}

.container {
    background:#FFF;
    min-height:100vh;
}

.hero {
    background:#f6f7f9;
    display:flex;
    align-items: center;
    padding:0rem 1rem;
}

.hero img {
    width:60%;
    height:auto;
}

.hero .col {
    flex:1 calc(50% - 20px);
    display:flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.title {
    font-size:2.5rem;
    font-weight:600;
    text-align: start;
    line-height:2.6rem;
    text-align: center;
}

.subtitle {
    color:#7d7d7e;
    font-size:18px;
    line-height:20px;
    font-weight:500;
    text-align: center;
    max-width:50%;
    margin:0 auto;
    margin-top:0.5rem;
}

.cta {
    font-size:20px;
    display:flex;
    width:fit-content;
    padding:0.5rem 1.5rem;
    background:#fa624d;
    text-decoration: none;
    color:#F9F9F9;
    border-radius:0.75rem;
    margin:0 auto;
    margin-top:2rem;
    box-shadow: 0 14px 26px -12px rgb(0 0 0 / 42%), 0 4px 23px 0 rgb(0 0 0 / 12%), 0 8px 10px -5px hsl(0 0 0 / 20%);
    transition:0.3s ease-in-out;
}

.cta:hover {
    transform:translateY(-4px) scale(1.1);
    
}

.row {
    display:flex;
    align-items: center;
    justify-content: center;
    padding:1rem;
    gap:1rem;
}

.row .col {
    min-height:200px;
    border-radius:0.50rem;
    padding:1rem;
    text-align: center;
    display: flex;
}

.doudou {
    flex:1 calc(33.33% - 1rem);
    max-width:calc(33.33% - 1rem);
    background: linear-gradient(90deg,rgba(221, 221, 223, 1) 0%, rgba(245, 245, 247, 1) 100%);
    flex-direction: column-reverse;
    padding-right:0!important;
    padding-bottom:0!important;
    position:relative;
}

.doudou .content, .cat .content {
    text-align: start;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    left:1rem;
    max-width:50%;
}

.cat .content {
    max-width:80%;
}

.doudou h3, .cat h3 {
    font-size:1.4rem;
}

.doudou .image, .cat .image {
    text-align: end;
    display:flex;
    align-items: end;
    justify-content: end;
}

.row .col img {
    width:50%;
    border-bottom-right-radius: 0.50rem;
}

.doudou .cta, .cat .cta {
    margin:inherit;
    font-size:14px;
    margin-top:0.5rem;
}

.cat {
    flex:1 calc(33.33% - 1rem);
    max-width:calc(33.33% - 1rem);
    max-height:205.7px;
    background: linear-gradient(90deg,rgba(221, 221, 223, 1) 0%, rgba(245, 245, 247, 1) 100%);
    flex-direction: column-reverse;
    padding-right:0!important;
    padding-bottom:0!important;
    position:relative;
}

.cat img {
    width:auto!important;
    height:100%;
    max-height:205px;
}

.cate {
    position:relative;
}

.cate::after {
    border-radius:0.50rem;
    height:100%;
    width:100%;
    content:'';
    position:absolute;
    top:0;
    left:0;
    backdrop-filter: blur(10px);
}