    
     @import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&display=swap');
    
    body {
            margin: 0;
            padding: 0;
            font-family: "Caveat", "Montserrat", sans-serif;
            background-color: #242222;
            color: #eee;
            overflow-x: hidden;
        }

        .fade-in {
            opacity: 0;
            animation: fadeIn 1.2s ease-out forwards;
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        header {
            text-align: center;
            padding: 80px 20px 20px;
        }

        header h1 {
            margin-top: -1.2em;
            font-size: 3em;
            margin-bottom: 10px;
            letter-spacing: 2px;
            font-family: "Montserrat", Arial, sans-serif;
        }

        header p {
            font-size: 1.25em;
            color: #a5a5a5;
            font-family: "Montserrat", Arial, sans-serif;

        }

        header {
            position: relative;
            overflow: visible;
        }

        .hero-art {
            position: absolute;
            bottom: -1.50em;          
            left: 60.5%;
            transform: translateX(-50%);
            z-index: 0;           
            opacity: 0.15;       
            pointer-events: none; 
        }

        .hero-art img {
            width: 300px;        
            max-width: 80vw;
            filter: drop-shadow(0 10px 20px rgba(0,0,0,0.5));
        }

        /* ----------------------------------------- */

        .gallery img {
            width: 100%;
            height: 280px;
            object-fit: cover;
            border-radius: 15px;
            transition: transform .3s ease, filter .3s ease;
        }

        /* Vertical paintings in gallery: show the top part */
        .gallery-img-portrait {
            object-position: top center !important;
        }

        .gallery img:hover {
            transform: scale(1.06);
            filter: brightness(1.20);
        }

        h1 {
            font-size: 3em;
            letter-spacing: 2px;
            font-family: "Montserrat", Arial, sans-serif;
            color: #ffffff;
            animation: glowSweep 2s linear infinite;
        }

        @keyframes glowSweep {
            0% {
                text-shadow: 
                    0 0 0px #c2720a,
                    0 0 0px #c2720a;
            }
            50% {
                text-shadow: 
                    0 0 15px #c2720a,
                    0 0 30px #c2720a;
            }
            100% {
                text-shadow:
                    0 0 0px #c2720a,
                    0 0 0px #c2720a;
            }
        }

        .about {
            font-size: 1.2em;
            max-width: 850px;
            margin: 30px auto;
            /* text-align: center; */
        }

        .about h2 {
            font-size: 2em;
            margin-bottom: 15px;
        }

        .about p {
            font-size: 0.88em;
            line-height: 1.7em;
            color: #ccc;
            font-family: "Montserrat", Arial, sans-serif;
        }

        footer {
            font-family: "Montserrat", Arial, sans-serif;
            text-align: center;
            padding: 40px;
            color: #666;
            font-size: 0.75em;
        }

        .underline {
            display: inline-block;
            height: 3px;
            width: 200px;
            background: #c2720a;
            margin: 10px auto 30px;
        }

        /* Lightbox overlay */
        .lightbox {
            position: fixed;
            inset: 0;
            backdrop-filter: blur(8px);
            background: rgba(0,0,0,0.55);
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.50s ease-out;
            z-index: 999;
        }

        /* Visible state */
        .lightbox.show {
            opacity: 1;
            pointer-events: auto;
        }

        /* Image container with soft animation */
        .lightbox-content {
            text-align: center;
            animation: popupFade 0.35s ease-out forwards;
            transform: scale(0.85);
            opacity: 0;
        }

        /* Smooth pop-in animation */
        @keyframes popupFade {
            from { opacity: 0; transform: scale(0.85); }
            to { opacity: 1; transform: scale(1); }
        }

        /* Smaller image size — same dimensions as earlier version */
        .lightbox img {
            max-width: 70vw;
            max-height: 70vh;
            border-radius: 12px;
            box-shadow: 0 0 35px rgba(0,0,0,0.55);
        }

        /* Image title */
        .lightbox-title {
            margin-top: 15px;
            color: #ffeec1;
            font-size: 2em;
            opacity: 1;
        }

        /* Double-click zoom effect */
        .lightbox-img-zoom {
            transform: scale(1.35) !important;
            transition: transform 0.25s ease-out;
        }

        .lightbox-title.hidden {
            margin-bottom: -2em;
            font-size: 2em;
        }

        /* Immersive (UI hidden) mode */
        .lightbox-immersive .lightbox-title {
            opacity: 0 !important;
        }

        .lightbox-immersive {
            background: rgba(0,0,0,0.85) !important;
        }

        /* For pinch/drag transforms */
        .lightbox img {
            touch-action: none; /* required for pinch/drag */
        }

        .refresh-container {
            display: flex;
            align-items: center;
            margin-right: 25px;
        }

        /* Desktop: refresh button left, text block right */
        .about {
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: flex-start; 
            gap: 45px; 
        }

        .about-text-block {
            display: flex;
            flex-direction: column;
            align-items: center; 
        }



        /* Give refresh button spacing on desktop */
        .refresh-container {
            text-align: center;
            margin-right: 10px;
        }


        /* Mobile layout: stack with refresh button ABOVE the title */
        @media (max-width: 768px) {
            .about {
                flex-direction: column;
                gap: 6.5px;
            }

            .refresh-container {
                order: -1;
                margin-right: 0;
                margin-top: 1em;
            }


            .about-text-block p{
                padding: 0 15px;
            }
        }

        .refresh-btn {
            background: none;
            border: none;
            cursor: pointer;
            padding: 8px;
            border-radius: 50%;
            transition: transform 0.25s ease;
        }

        .refresh-btn img {
            width: 80px;
            height: 80px;
            filter: drop-shadow(0 0 6px rgba(0,0,0,0.4));
            border: 2px solid #fff;
            border-radius: 6px;

        }

        .refresh-btn:hover {
            transform: scale(1.25);
        }

       .refresh-btn:hover svg path {
            stroke: #c2720a;
        }

        .refresh-btn:hover .loader path {
            animation: none !important;
        }

        .refresh-container:hover .refresh-tooltip {
            opacity: 1;
        }

        /* Fade animation for gallery update */
        .gallery.fade-out {
            opacity: 0;
            transition: opacity 0.35s ease;
        }

        .gallery.fade-in-fast {
            opacity: 1;
            transition: opacity 0.35s ease;
        }

        /* Loader SVG styles (if needed) */
        /* From Uiverse.io by SelfMadeSystem */ 
        .loader {
        width: 10em;
        height: 10em;
        }

        .loader path {
        stroke: #dbdbdb;
        stroke-width: 0.5px;
        animation: dashArray 4s ease-in-out infinite,
            dashOffset 4s linear infinite;
        }

        @keyframes dashArray {
        0% {
            stroke-dasharray: 0 1 359 0;
        }

        50% {
            stroke-dasharray: 0 359 1 0;
        }

        100% {
            stroke-dasharray: 359 1 0 0;
        }
        }

        @keyframes dashOffset {
        0% {
            stroke-dashoffset: 365;
        }

        100% {
            stroke-dashoffset: 5;
        }
        }

        #refresh-gallery:active svg,
        #refresh-gallery.pressed svg {
            transform: scale(1);
            transition: transform 0.15s ease-out;
        }


        /* SECTION WRAPPER - full width always */
        #gallery {
            width: 100%;
            max-width: 100%;
            margin: 0;
            padding: 0 20px; /* small side-padding */
            box-sizing: border-box;
        }

        /* EACH CATEGORY BLOCK = ONE FULL ROW */
        .style-block {
            width: 100%;
            display: block;
            margin: 15px auto;
            text-align: center; 
        }

        /* .style-block h3 {
            font-size: 1.9rem;
            margin: 0 0 16px 0;
            padding: 0.5em;
            text-align: center;
            color: #fefefe;

            display: inline-block;
            padding: 0.50em 0.75em;

            border-left: 3px solid #c2720a;
            border-right: 3px solid #c2720a;

            position: relative;      
        } */

        .style-block h3 {
            font-size: 1.9rem;
            margin: 0 0 16px 0;
            text-align: center;
            color: #fefefe;

            display: inline-block;
            padding: 0.35em 0.50em;
            position: relative;
            transition: transform .25s ease-in-out;


        }

        /* TOP LEFT (35%) */
        .style-block h3::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 35%;
            border-top: 3px solid #c2720a;
        }

        /* BOTTOM RIGHT (35%) */
        .style-block h3::after {
            content: "";
            position: absolute;
            bottom: 0;
            right: 0;
            width: 35%;
            border-bottom: 3px solid #c2720a;
        }


        /* VERTICAL LEFT BORDER (35%) */
        .style-block h3 .v-left,
        .style-block h3 .v-right {
            position: absolute;
            width: 0;
            border-right: 3px solid #c2720a;
        }

        .style-block h3 .v-left {
            left: 0;
            top: 50%;
            height: 60%;
            transform: translateY(-50%);
        }

        /* VERTICAL RIGHT BORDER (35%) */
        .style-block h3 .v-right {
            right: 0;
            top: 50%;
            height: 60%;
            transform: translateY(-50%);
        }

        .style-block h3:hover {
            transform: scale(1.30);
        }

        .carousel {
            width: 100%;
            display: flex;
            align-items: center;
            gap: 18px;
            padding: 10px 0;
        }

        .carousel-track.dragging {
            cursor: grabbing;
            user-select: none;
        }
        .carousel-track {
            cursor: grab;
             scroll-behavior: smooth;
             position: relative;
            display: flex;
            gap: 12px;
            overflow: hidden;
            will-change: transform;
        }

        .carousel-track img {
            transform-origin: center center;
            -webkit-overflow-scrolling: touch; /* smoother swipe on iPhone */
             scroll-behavior: smooth;
        }
       
        .carousel-item {
            height: 220px;
            flex: 0 0 auto;
            border-radius: 6px;

            margin-right: 12px;   /* instead of gap */
        }

       .carousel-track {
            flex: 1 1 auto;
            display: flex;
            gap: 12px;
            overflow-x: auto;
            scroll-behavior: smooth;
            padding: 10px 0;

            height: 240px;          /* FIXED HEIGHT — adjust to your image height */
            align-items: center;    /* vertically center images */
            scrollbar-gutter: stable both-edges;

        }

        .carousel-track::-webkit-scrollbar {
            display: none;
        }

        .carousel-track {
            -ms-overflow-style: none;  /* IE, Edge */
            scrollbar-width: none;     /* Firefox */
        }


        /* hide scrollbar background but keep functionality */
        .carousel-track::-webkit-scrollbar {
            height: 8px;
        }
        .carousel-track::-webkit-scrollbar-thumb {
            background: rgba(0,0,0,0.3);
            border-radius: 4px;
        }

        /* IMAGES */
        .carousel-track img {
            height: 220px;
            border-radius: 6px;
            cursor: pointer;
            object-fit: cover;
            transition: transform .25s ease;
        }
        .carousel-track img:hover {
            transform: scale(1.05);
        }

        /* ARROWS */
        .carousel button {
            font-size: 55px;
            background: none;
            border: none;
            cursor: pointer;
            color: #fefefe;          /* bright white */
            padding: 0 18px;         /* larger click area */
            transition: color .2s ease;
        }
        .carousel button:hover {
            color: #c2720a;
        }

        .carousel-img-portrait {
            object-position: top center !important;
        }

        .lb-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(54, 54, 54, 0.35);
            color: #f2f2f2;
            border: none;
            font-size: 68px;
            padding: 100px 75px;
            cursor: pointer;
            z-index: 20;
            border-radius: 5px;
            user-select: none;
        }

        .lb-nav:hover {
            background: rgba(54, 54, 54, 0.55);
            color: #c2720a;
        }

        #lightbox-prev { left: -5.75em; }
        #lightbox-next { right: -5.75em; }

        .lb-nav:active {
            transform: translateY(-50%) scale(0.9);
            color: #c2720a;
        }


/* SOCIAL ICONS UNDER ABOUT SECTION */
.social-links {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 20px;
}

.social-icon {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #c2720a;
    color: white;
    font-size: 25px;
    cursor: pointer;
    transition: 0.20s ease-in-out;
}

.social-icon:hover {
    transform: scale(1.20);
    background: #e38a20;
}


/* CONTACT MODAL */
.contact-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    place-items: center;
    background: rgba(0,0,0,0.85);
    z-index: 9000;
}

.contact-modal.show {
    display: grid;
}

.contact-modal-content {
    background: #1f1f1f;
    color: white;
    padding: 15px 30px;
    border-radius: 10px;
    width: 90%;
    max-width: 380px;
    text-align: center;
    box-shadow: 0 0 50px rgba(0,0,0,0.6);
    border: 2px solid #c2720a;
}

.contact-modal-content p {
   font-family: "Montserrat", Arial, sans-serif;
}

.contact-modal-content p a,
.social-links a,
.contact-modal-content .contact-content .contact-row a {
    text-decoration: none;
    color: #f2f2f2;
}

.contact-modal-content h2{
    margin-top: 10px !important;
    margin-bottom: 30px;
    font-size: 2em;
}


.contact-modal-content .contact-content .contact-row a:hover{
    color: #c2720a;
    font-weight: bold;
}

.orange{
   color: #c2720a;
    font-weight: bold;
}

.contact-close {
    float: right;
    font-size: 30px;
    cursor: pointer;
    color: #bbb;
}

.contact-close:hover {
    color: white;
}

.social-icon svg {
    width: 22px;
    height: 22px;
}



.contact-content .contact-row{
    text-align: start;
    font-family: "Montserrat", Arial, sans-serif;
}

.contact-title {
    font-size: 28px;
    margin-bottom: 20px;
}

.contact-row {
    display: grid;
    grid-template-columns: auto auto auto;
    justify-content: center;
    gap: 20px;
    align-items: center;
    margin: 10px 0;
}

.contact-label {
    font-weight: bold;
    color: #fff;
}

.contact-value {
    color: #c2720a;
    text-shadow: 1px 1px 2px #000;
}

.copy-btn {
    background: #c2720a;
    border: none;
    color: #000;
    padding: 4px 10px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13.5px;
    transition: 0.18s;
}

.copy-btn:hover {
    background: #e08a15;
    transform: scale(1.09);

}

.copy-btn:active {
    transform: scale(0.92);
}

.separator{
    display: flex;
    justify-content: center;
    align-items: center;
    fill: #fff !important;
}

.contact-content .contact-row:last-child {
    gap: 0;
}

