@import url('https://fonts.googleapis.com/css2?family=Lateef:wght@200;300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Finlandica:ital,wght@0,400..700;1,400..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Darker+Grotesque:wght@300..900&display=swap');

:root {
    --primary-color: #6e6e6e;
    --secondary-color: #162936;
    --third-color: #3b5265;
    --fourth-color: #051824;
    --jost: "Jost", serif;
    --lateef: "Lateef", serif;
    --ss: sans-serif;
    --finlandica: "Finlandica", sans-serif;
    --finlandica: sans-serif;
    --default-transition: 350ms;
    --white: #fff;
    --black: #212121;
    --xs: 0;
    --sm: 576px;
    --md: 768px;
    --lg: 992px;
    --xl: 1200px;
    --xxl: 1400px;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    text-decoration: none;
    font-family: var(--finlandica);
}

.text-justify {
    text-align: justify;
}

.bg-transparent {
    background: transparent;
}

.text-primary {
    color: var(--primary-color) !important;
}

.bg-primary {
    background: var(--primary-color) !important;
}

.text-secondary {
    color: var(--secondary-color) !important;
}

.bg-secondary {
    background: var(--secondary-color);
}

.text-third {
    color: var(--third-color) !important;
}

.bg-third {
    background: var(--third-color);
}

.text-fourth {
    color: var(--fourth-color) !important;
}

.bg-fourth {
    background: var(--fourth-color);
}

/* p{margin-bottom: 0;} */
body {
    overflow-x: hidden;
    padding-top: 104px;
}
@media (max-width:768px) {
    body{
        padding-top: 72px;
    }
}
ul {
    list-style: none;
    margin: 0;
    padding: 0;
}


input:user-invalid,
textarea:user-invalid {
    box-shadow: 0 0 1px 3px #f005 !important;
    border-color: #f00 !important;
}

.form-control{
    border: 1px solid var(--primary-color);
    border-radius: 0;
}
.form-control:focus {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border-color: var(--primary-color);
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(201, 171, 129,0.5);
}

.sans-serif {
    font-family: var(--finlandica);
}

.jost {
    font-family: var(--finlandica);
}

.lateef {
    font-family: var(--finlandica);
}

.finlandica {
    font-family: var(--finlandica);
}

.headpara {
    font-weight: 500;
}

strong {
    font-family: inherit;
}

a {
    color: var(--primary-color);
    text-decoration: none !important;
}

a:hover {
    color: var(--hoversecondary);
    text-decoration: none !important;
}

.min-h-100 {
    min-height: 100dvh;
}

.btn {
    display: inline-block;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 1px;
    letter-spacing: .073vw;
    color: var(--white) !important;
    border: 1px solid var(--primary-color);
    background-color: var(--primary-color);
    /* padding: 12px 36px; */
    border-radius: 0;
    padding: .878vw 2.635vw;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 400;
}

.btn:is(:hover,:active,:focus) {
    background: var(--white) !important;
    color: var(--black) !important;
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 .25rem rgba(201, 171, 129,0.5);
}


header 
{
    position: fixed;
    top: 0;
    z-index: 10;
    width: 100%;
    transition: var(--default-transition);
}

header.otherpage{
    /*position: fixed;*/
    background: var(--white);
    color: var(--black);
    box-shadow: 0 1.098vw .732vw -1.245vw rgb(0 0 0/50%);
}
header.scrolled {
    /*position: fixed;*/
    top: 0;
    background: var(--white);
    color: var(--black);
    box-shadow: 0 1.098vw .732vw -1.245vw rgb(0 0 0/50%);
}

header .header-icon {
    display: flex;
    align-items: center;
    gap: 32px;
}

header .header-icon .icons 
{
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--white);
    cursor: pointer;
}
header .header-icon .icons svg
{
    fill: var(--white);
}

header.scrolled .header-icon .icons svg,
header.otherpage .header-icon .icons svg{
    fill: var(--black);
}
header.scrolled .header-icon .icons,
header.scrolled .header-menu li a,
header.otherpage .header-menu li a,
header.otherpage .header-icon .icons
{
    color: var(--black);
}

header .header-icon .icons span {
    font-size: 12px;
}

header .header-icon .icons i {
    font-size: 32px;
}

header .header-menu
{
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
header .header-menu li a
{
    position: relative;
    display: inline-block;
    color: var(--white);
    font-size: 20px;
    border-bottom: 2px solid transparent;
    text-transform: capitalize;
    transition: var(--default-transition);
}
header .header-menu li a:is(:hover,:active,:focus,.active)
{
    border-bottom: 2px solid var(--primary-color);
}
header .header-menu li a:is(.active){
    font-weight: 600;
}
.logo {
    font-size: 3rem;
    text-transform: uppercase;
    font-family: var(--finlandica);
    font-weight: 600;
    filter: invert(1);
}

header.scrolled .logo img,
header.otherpage .logo img 
{
    filter: invert(1);
}

#menusidebar .close-btn ,
#enqurymodal .close-btn 
{
    border: none;
    outline: none;
    background: none;
    color: var(--white);
    font-size: 0.8rem;
}

#menusidebar ul li a {
    color: var(--white);
    font-size: 20px;
    display: block;
    padding: 8px;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.header-social-media {
    padding: 8px;
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    font-size: 23px;
}

.fixed-btn .icon {
    position: fixed;
    z-index: 10;
    right: 1rem;
    bottom: 2rem;
    width: 35px;
    aspect-ratio: 1;
    background: var(--primary-color);
    display: flex;
    transition: var(--default-transition);
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.fixed-btn .icon.bottomtotop {
    opacity: 0;
    right: -2rem;
    pointer-events: none;
}

.fixed-btn .icon.bottomtotop.active {
    pointer-events: all;
    right: 1rem;
    opacity: 1;
}

.section .section-heading {
    font-size: 2.3rem;
    margin: 0;
    padding: 0;
}

.section .section-heading span {
    color: var(--primary-color);
}

.section .sub.section-heading {
    font-size: 2rem;
}

/* BANNERS */
.banners-section {
    position: relative;
    /* overflow: hidden; */
}

.banners-section .banners .item {
    overflow: hidden;
    width: 100%;
    position: relative;
    display: flex;
    align-items: end;
    max-height: 100dvh;
    min-height: 100dvh;
}

.banners-section .banners .item img {
    position: absolute;
    inset: 0;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.banners-section .banners .item>.container .banner-info {
    position: relative;
    color: var(--white);
    padding: 1rem;
    background: rgba(0, 0, 0, 0.5);
    z-index: 2;
}

.banners-section .banners .active .item img {
    animation: zoomEffect 6s linear forwards;
}

@media(max-width:768px) {
    .banners-section .banners .item
    {
        max-height: unset;
        min-height: unset;
    }
    .banners-section .banners .item img{
        position: relative;
    }
    header .header-icon .icons i {
        font-size: 20px;
    }
    
}

@keyframes zoomEffect {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.1);
    }
}

.owl-carousel .owl-stage
{
    display: flex;
    align-items: stretch;
}

.owl-carousel .owl-stage .item{
    height: 100%;
}
.owl-carousel .owl-outer {
    position: relative;
}

.owl-carousel .owl-nav button {
    position: absolute;
    top: 50%;
    transform: translateY(-68%);
    left: -2rem;
    font-size: 2rem !important;
}

.owl-carousel .owl-nav button.owl-next {
    left: auto;
    right: -2rem;
}
@media (max-width:768px) {
    .owl-carousel .owl-nav{
        display: none !important;
    }
}
.owl-carousel .owl-dots {
    display: flex;
    gap: 8px;
    justify-content: center;
    padding: 10px 8px;
}

.owl-carousel .owl-dots button {
    width: 10px;
    aspect-ratio: 1;
    background: var(--primary-color);
    opacity: 0.5;
}

.owl-carousel .owl-dots button.active {
    opacity: 1;
}

.instagram-section .instagram .item {
    position: relative;
}

.instagram-section .instagram .item i {
    position: absolute;
    top: 50%;
    left: 50%;
    color: var(--white);
    font-size: 6rem;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: var(--default-transition);
}

.instagram-section .instagram .item:hover i {
    opacity: 1;
}

.instagram-section .instagram .item img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    cursor: pointer;
}


.video-section{
    position: relative;
    background: linear-gradient(to bottom,var(--white) 50%,var(--black) 50%);
}

.focus-art .item img
{
    width: 100%;
    aspect-ratio: 2;
    object-fit: cover;
}
.focus-art .item .bg-dark{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Footer */
footer .footer-form :is(input, button)
{
    width: 100%;
    padding: 8px 23px;
    border: none;
    margin-bottom: 4px;
    outline: none;
}

.footer-link {
    position: relative;
    display: flex;
    margin-top: 16px;
    gap: 16px;
    /* justify-content: space-between; */
    flex-wrap: wrap;
}

.footer-link a {
    color: var(--white);
}



.artist-list
{
    position: relative;
    max-height: 80dvh;
    overflow: auto;
}
.artist-list .artists-picklist a
{
    color: var(--black);
    display: block;
}
.artist-list .artists-picklist.active a,
.artist-list .artists-picklist a:hover{
    color: var(--primary-color);
}


.artist-section{
    position: relative;
    background: linear-gradient(#05182450,#05182450),url(../img/4990895.webp);
    min-height: 100dvh;
}
.astist-description{
    max-height: 500px;
    overflow: auto;
}

.artist-timeline .timeline
{
    max-height: 66vh;
    overflow-x: auto;
    columns: 3;
    line-break: auto;
    padding-bottom: 12px;
    padding-bottom: .878vw;
}
.artist-timeline .timeline img{
    min-width: 30% !important;
    max-width: 40% !important;
}
@media (max-width:768px){
    .artist-timeline .timeline{
        columns: 2;
    }
}

.artwork-box{
    position: relative;
}
.artwork-box img
{
    width: 100%;
    background: var(--bs-light);
    aspect-ratio: 1;
    object-fit: cover;
    transition: var(--default-transition);
    margin-bottom: 8px;
}
.artist-arts .artwork-box img
{
    object-fit: contain;
    aspect-ratio: 1;
}
@media(max-width:768px){
    .artist-arts .artwork-box img
    {
        object-fit: contain;
        aspect-ratio: unset;
    }
}
.artist-arts .artwork-box img
.art-description{
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.art-title{
    display: -webkit-box;
    text-align: center;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.line-clamp-2{
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.line-clamp-4{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


/**/
.masonry .row
{
    display: block !important;
}
.masonry .row .col-md-4,
.grid-sizer
{
    width: 25% !important;
    float: left;
}
.masonry .row .col-md-4 .artwork-box img
{
    aspect-ratio: unset;
}
@media (max-width:768px) {
    .masonry .row .col-md-4,
    .grid-sizer
    {
        width: 33.33% !important;
        float: left;
    }
}
@media (max-width:576px) {
    .masonry .row .col-md-4,
    .grid-sizer
    {
        width: 50% !important;
        float: left;
    }
}
/**/

.featured .on-view-carousel .item img
{
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
@media(max-width:768px){
    .featured .on-view-carousel .item img{
        position: relative;
        aspect-ratio: 1;
        object-fit: cover;
    }
}

.single-art .description{
    position: relative;
    max-height: 260px;
    overflow: auto;
}

.artist-section img
{
    
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}
.search-section{
    position: relative;
    min-height: 30dvh;
}

.about-us-page{
    background: linear-gradient(#000000d9, #000000d9), url(../img/art.webp);
    background-position: center;
    background-attachment: fixed;
    background-size: cover;
}

.share-button > div
{
    position: absolute;
    bottom: -32px;
    display: flex;
    /* flex-wrap: wrap; */
    gap: 3px;
    left: 50%;
    pointer-events: none;
    transition: var(--default-transition);
    opacity: 0;
    transform: translateX(-50%);
}
.share-button > div a
{
    color: var(--white);
    background: var(--secondary-color);
    width: 30px;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--secondary-color);
    
    transition: var(--default-transition);
}
.share-button > div a:hover
{
    background: transparent;
    color: var(--secondary-color);
}
.share-button:is(:hover,:active,:focus) > div{
    opacity: 1;
    pointer-events: all;
}
.home-blogs .artwork-box img
{
    aspect-ratio: 2;
}
.home-blogs .artwork-box .art-title{
    text-align: left;
}
.home-blogs .artwork-box p > a
{
    font-size: 12px;
}