/* styles-v6.css */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600&family=Cormorant+Garamond:wght@300;400;500&display=swap');

@font-face {
    font-family: "AC-Font"; /* Choose a name for your font */
    src: url("font/SabonNextLT.ttf") format("truetype"),
        url("font/SabonNextLTBoldItalic.ttf") format("truetype"),
        url("font/SabonNextLTItalic.ttf") format("truetype"),
        url("font/SabonNextLTBold.ttf") format("truetype");
    /* Include other formats for broader compatibility */
    font-weight: normal; /* Optional: specify weight */
    font-style: normal;  /* Optional: specify style */
}

:root {
    --title: #002657;  
    --title: rgb(52,80,116);        /* dark blue */

    --title2: rgb(186,149,83);        /* light gold */
    
    --primary: rgb(186,149,83);       
    --primLight: rgb(214, 186, 137);   
    --primLight2: rgb(186, 163, 123);   
    --primDark: rgb(143, 114, 64);      

    --secondary: rgb(52,80,116);    
    --highlight: #95b6f3;
    --accent: #e74c3c;        /* red */
    --background:  rgb(246, 246, 255);
    --detailBackground: rgba(45, 52, 66, 0.5);
    --detailBackground: rgba(140, 167, 202, 0.8);
    
    --text: #222731;
    --primback: #002657;
    --primback: rgb(52,80,116);           /* dark gray */
    --detailText:rgb(234, 234, 245);
    --detailText: #102e3f;
    --detailHighlight: rgb(250, 223, 136);
    --topText: #102e3f;
    --topText: rgb(52,80,116); 
}


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    /*font-family: 'Cormorant Garamond', serif;*/
    font-family: garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    font-family: adobe garamond pro, garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    background-color: var(--background);
    color: var(--primary);
    line-height: 1.5;
    min-height: 100vh;
}

h1 {
     font-family: garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    font-size: clamp(2.5rem, 3vw, 3rem);
    line-height: 1.2;
    margin-bottom: 0.5rem;
}

h2 {
     font-family: garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    font-size: clamp(2rem, 2.5vw, 2.5rem);
    line-height: 1.2;
    margin-bottom: 0.5rem;
}

h3 {
    font-family: garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    font-size: clamp(1.75rem, 2vw, 2rem);
    line-height: 0.9;
    margin-bottom: 1rem;
}

h4 {
    font-size: clamp(1.5rem, 1.75vw, 1.75rem);
    line-height: 1.1;
    margin-bottom: 1rem;
}

h5 {
    font-size: clamp(1.25rem, 1.5vw, 1.5rem);
    line-height: 1.1;
    margin-bottom: 0.5rem;
}

h6 {
    font-size: clamp(1rem, 1.25vw, 1.25rem);
    line-height: 1.1;
    margin-bottom: 1rem;
}

p {
    justify-content: stretch;
    /*font-family:'times new roman', Times, serif, Arial, Helvetica, sans-serif;*/
    font-family: adobe garamond pro, garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    display:flex;
    text-align: left;
    margin-bottom: 1em;
    font-size: clamp(1rem, 1.25vw, 1.25rem);
    color: var(--topText);
    line-height: 1.2;
    overflow-wrap: break-word;
}
ul {
    font-family: adobe garamond pro, garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
    text-align: left;
    font-size: clamp(1.00rem, 1.25vw, 1.25rem);
    color: var(--topText);
}


.toaddress {
    font-size: clamp(1.25rem, 1.75vw, 2rem);
    color: var(--accent);
    line-height: 1.2;
    margin-top: 5px;
}

.container {
    max-width: 1000px;
    max-width: 1280px;
    margin: 0 auto;

    width: 100% ;
    min-height: 100vh;
    /* background-image: linear-gradient (45deg, rgba(0,0,0,0.85), rgba(118.0.0.0.85)), 'images/background-v1.avif';*/
    /* background-image: linear-gradient(to right, rgba(0,0,0,0.9), rgba(95, 95, 95, 0.9)), url('images/background-v1.avif'); */
    /*background-image: linear-gradient(to right, rgba(0,0,0,0.9), rgba(95, 95, 95, 0.9)); */
    
    /* background-image: linear-gradient(to right, rgba(232, 224, 238, 0.9), rgba(223, 194, 255, 0.9)), url('images/test-image.jpg'); */

    /* background-image: linear-gradient(to right, rgb(255, 255, 255), rgba(253, 253, 253, 0.9)), url('images/background_v3.jpg'); */


    /*background-color: var(--background);*/
    background-position: center;
    background-size: cover;
    padding: 2% 5% 5% 5%;
    text-align: center;
    color: var(--topText);
    }

/* #region Logo & Header Section */
    .header{ 
        display: flex; 
        align-items: center; 
        justify-content: space-between; 
        margin-top: 0px;
    } 

    .logo{
        width: 70%;
        display: flex;
        min-width: 300px;
        max-width: 1024px;
        cursor: pointer;  
        margin-top: 0;
        margin-bottom: 0.5rem;
        align-content: center;  
    }
    .logo img {
        width: 100%;
        height: auto;
    }
    /* #endregion */

/* #region Navigation Menu */

    .menu-toggle {
        display: none;
    }

    .menu-icon {
        display: hidden;
        flex-direction: column;
        cursor: pointer;
        padding: 0px;
    }

    .bar {
        width: 25px;
        height: 3px;
        background-color: var(--primary);
        margin: 4px 0;
        transition: 0.4s;
    }

    .nav-section {
        margin-top: 0px;
        text-align: center;
        margin-bottom: 10px;
        padding: 10px;
        background: var(--title);
        border-radius: 10px;
    }
    .nav-section label{
        margin: 0;
        padding: 0;
    }    

    .nav-menu {
        text-align: center;
    }

    .nav-menu a {
        color: var(--primLight);
        text-decoration: none;
        margin: 0 0px;
        /*font-family: 'Cinzel', serif;*/
        font-size: clamp(1.5rem, 1.75vw, 1.75rem);
        font-weight: 400;
        letter-spacing: 2px;
        transition: all 0.3s ease;
        display: inline-block;
        padding: 5px 5px;
        /*width: 32%;*/
        min-width: 15%;
        max-width: 90%;
        vertical-align: middle;
        border: 2px transparent #000000;
    }

    .nav-menu a:hover {
        color: var(--detailHighlight);
        transform: translateY(-2px);
    }

    .nav-menu a.active {
        border-bottom: 2px solid var(--detailHighlight);
    }

/* Responsive styles */
    @media (max-width: 768px) {
    .menu-icon {
        display: flex;
        align-items: right;
    }

    .nav-menu {
        flex-direction: column;
        align-items: center;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease;
        max-width: 1%;
        margin: 0;
    }
    .nav-menu a {
        margin: 10px 0;
        width: 100%;
        max-width: 100%;
    }

    .menu-toggle:checked ~ .nav-menu {
        max-height: 400px;
        min-width: 100%;
        max-width: 100%;
        display:block;
        margin: 10px 0;
    }
    }

    /* #endregion */

/* #region Form Container */
        .form-container {
            background: rgba(79, 98, 134, 0.05);
            background: var(--background);
            border: 1px solid rgba(212, 175, 55, 0.8);
            border-radius: 10px;
            padding: 40px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8);
        }
        .form-container h2 {
/*            font-family: 'Cinzel', serif; */
            
            margin-bottom: 10px;
            letter-spacing: 0.1em;
            color: var(--primary);
        }
        .form-container h4 {
            
            margin-bottom: 10px;
            font-weight: 200;
            color: var(--secondary);
        }

        .form-header {
            display: none;
        }
        .form-header.active {
            display: block;
        }

    /* #endregion */

/* #region Service Type Selector */
        .service-selector {
            display: none;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 20px;
            margin-bottom: 40px;
        }

        .service-selector.active {
            display: grid;
        }

        @media (max-width: 680px) {
            .service-selector {
                grid-template-columns: 1fr;
            }
        }


        .service-button {
            background: rgba(212, 175, 55, 0.25);
            border: 2px solid rgba(212, 175, 55, 0.3);
            border-radius: 8px;
            padding: 20px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-align: center;
        }
        
        .service-button:hover {
            border-color: var(----secondary);
            background: rgba(52,80,116, 0.2);
            transform: translateY(-2px);
        }
        
        .service-button.active {
            border-color: var(----secondary);
            background: rgba(52,80,116, 0.2);
        }
        
        .service-button h4 {
            margin-bottom: 5px;
            color: var(--primary);
        }
        .service-button h5 {
            margin-bottom: 5px;
            color: var(--secondary);
            font-weight: 200;
        }
        .service-button p {
            opacity: 0.7;
        }
        /* #endregion */

/* #region Form Sections */
        .form-section {
            display: none;
        }
        
        .form-section.active {
            display: block;
        }
        
        .form-section h3 {
            /*font-family: 'Cinzel', serif; */
           
            margin-bottom: 20px;
            letter-spacing: 0.1em;
            color: var(--primary);
        }

        .form-section h4 {
            /*font-family: 'Cinzel', serif;*/
            
            margin-bottom: 15px;
            letter-spacing: 0.1em;
            color: var(--secondary);
        }   

        .section-title {
            /* font-family: 'Cinzel', serif; */
            /*font-size: 28px;*/
            letter-spacing: 1px;
            margin-bottom: 2rem;
            text-align: center;
            color: var(--primary);
        }
        
    /* Form Groups */
        .form-group {
            margin-bottom: 25px;
        }
        
        .form-row {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
        }
        
        label {
            display: block;
            margin-bottom: 8px;
            color: var(--secondary);
            font-size: clamp(1.25rem, 1.5vw, 1.5rem);
            font-weight: 500;
        }
        
        input, select, textarea {
            width: 100%;
            padding: 12px 15px;
            background: rgba(255, 255, 255, 0.2);
            border: 1px solid var(--primary);
            border-radius: 5px;
            color: var(--secondary);
            font-size: clamp(1rem, 1.5vw, 1.5rem);
            /*font-family: 'Cormorant Garamond', serif;*/
            transition: all 0.3s ease;
        }

.custom-date-picker {
    appearance: none; /* Removes the default appearance */
    -webkit-appearance: none; /* For Safari */
    position: relative;
    /* padding: 10px 40px 10px 10px; /* Adds padding to make room for the icon */
    /* background-color: #000; /* Ensures the input's background matches */
    /* color: #fff; /* White text color */
    /* border: 1px solid #fff; /* White border */
    /* border-radius: 5px; */
}

/* This makes the original calendar icon invisible while keeping it clickable */
.custom-date-picker::-webkit-calendar-picker-indicator {
    opacity: 0;
    display: block;
    position: absolute;
    right: 10px;
    width: 20px;
    height: 100%;
    cursor: pointer;
}

/* Custom white icon overlay */
.custom-date-picker:before {
    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="white" viewBox="0 0 24 24"><path d="M19 4h-1V2h-2v2H8V2H6v2H5c-1.1 0-1.99.9-1.99 2L3 20c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V10h14v10zM7 12h5v5H7z"/></svg>');
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Makes the icon non-clickable but allows the input's functionality */
}

.custom-time-picker {
    appearance: none; /* Removes the default appearance */
    -webkit-appearance: none; /* For Safari */
    position: relative;
    /* padding: 10px 40px 10px 10px; /* Adds padding to make room for the icon */
    /* background-color: #000; /* Ensures the input's background matches */
    /* color: #fff; /* White text color */
    /* border: 1px solid #fff; /* White border */
    /* border-radius: 5px; */
}

/* This makes the original calendar icon invisible while keeping it clickable */
.custom-time-picker::-webkit-calendar-picker-indicator {
    opacity: 0;
    display: block;
    position: absolute;
    right: 10px;
    width: 20px;
    height: 100%;
    cursor: pointer;
}

/* Custom white icon overlay */
.custom-time-picker:before {
    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="white" viewBox="0 0 24 24"><path d="M12 7v5l4 2M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16z"/></svg>');
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Makes the icon non-clickable but allows the input's functionality */
}




        
    /* Style select options */
        select option {
            background: var(--background);
            color: var(--secondary);
            padding: 5px;
        }
        
        select option:hover {
            background: #3a3a3a;
        }
        
        input:focus, select:focus, textarea:focus {
            outline: none;
            border-color: var(--primary);
            background: rgba(154, 201, 253, 0.08);
        }
        
        textarea {
            resize: vertical;
            min-height: 100px;
        }
        
        .help-text {
            font-size: clamp(1rem, 1.25vw, 1.25rem);
            color: var(--secondary);
            margin-top: 5px;
        }

        /* Error styling */
        .error {
            color: #ff6b6b;
            font-size: clamp(1rem, 1.25vw, 1.5rem);
            margin-top: 5px;
        }
        
        input.error-input {
            border-color: #ff6b6b;
        }
        select.error-input {
            border-color: #ff6b6b;
        }



/* #endregion */

/* #region Consultation Types */
        .consultation-types {
            display: grid;
            gap: 15px;
            margin-bottom: 30px;
        }
        
        .consultation-option {
            background: rgba(212, 175, 55, 0.25);
            border: 2px solid rgba(212, 175, 55, 0.5);
            border-radius: 8px;
            padding: 20px;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .consultation-option:hover {
            border-color: var(----secondary);
            background: rgba(52,80,116, 0.1);
        }
        
        .consultation-option.selected {
            border-color: var(----secondary);
            background: rgba(52,80,116, 0.2);
        }
        
        .consultation-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 10px;
        }
        
        .consultation-name {
            font-size: clamp(1.5rem, 2vw, 2rem);
            font-weight: 500;
            line-height: 0.9;
            color:var(--primary);
        }
        
        .consultation-price {
            font-size: clamp(1.5rem, 2vw, 2rem);
            font-weight: 600;
            color:var(--primary);
            /*font-family: 'Cinzel', serif;*/
        }
        
        .consultation-details {
            color: #306474;
            font-size: clamp(1rem, 1.25vw, 1.25rem);
            text-align: left;
        }
        /* #endregion */
        
/* #region Life Areas */
        .life-areas {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 12px;
            margin-bottom: 25px;
        }
        
        .life-area-btn {
            padding: 12px 20px;
            background: rgba(212, 175, 55, 0.2);
            border: 1px solid rgba(212, 175, 55, 0.8);
            border-radius: 5px;
            cursor: pointer;
            transition: all 0.3s ease;
            color: #306474;
            font-size: clamp(1rem, 1.25vw, 1.25em);
            /*font-family: 'Cormorant Garamond', serif;*/
        }
        
        .life-area-btn:hover {
            border-color: #0e4657;
            color: #0e4657;
        }
        
        .life-area-btn.selected {
            background: rgba(43, 128, 177, 0.2);
            border-color: #0e4657;
            color: #0e4657;
        }

/* #endregion */

/* #region BTN Navigation */
        .navigation {
            display: flex;
            justify-content: space-between;
            margin-top: 40px;
            padding-top: 30px;
            border-top: 1px solid rgba(212, 175, 55, 0.2);
        }
        
        .btn {
            padding: 12px 30px;
            /*font-family: 'Cinzel', serif;*/
            font-family: Garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
            font-size: clamp(1.25rem, 1.75vw, 1.75rem);
            letter-spacing: 0.05em;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            display: inline-block;
        }
        
        .btn-primary {
            background: var(--primary);
            color: #1a1a1a;
            font-weight: 600;
            margin: 0.5rem auto;
        }
        
        .btn-primary:hover {
            background: #f4e5a3;
            transform: translateY(-2px);
        }
        
        .btn-secondary {
            background: transparent;
            color: var(--primary);
            border: 2px solid var(--primary);
        }
        
        .btn-secondary:hover {
            background: rgba(212, 175, 55, 0.1);
        }


        .btn-small {
            padding: 5px 10px;
            /*font-family: 'Cinzel', serif;*/
            font-family: Garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
            font-size: clamp(1rem, 1.5vw, 1.5rem);
            font-weight: 400;
            letter-spacing: 0.05em;
            line-height: 0.9;
            
            border-radius: 5px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            display: block;
            margin: 5px auto 5px auto;
            padding: 5px 5px;
            background: var(--primLight2);
            color: var(--secondary);
            border: 1px solid var(--primLight2);
            text-align: center;
        }
        .btn-small:hover {
            background: rgba(212, 175, 55, 0.1);
        }


        .btn-center {
            display: flex;
            justify-content: center;
            align-items: center;
            margin: 0 auto;
            width: fit-content;
        }

        .btn-help {
            padding: 5px 10px;
            /*font-family: 'Cinzel', serif;*/
            font-family: Garamond, AC-Font, 'courier new','Times New Roman', Times, serif, Arial, Helvetica, sans-serif;
            font-size: clamp(1rem, 1.5vw, 1.5rem);
            font-weight: 400;
            letter-spacing: 0.05em;
            line-height: 0.9;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            display: block;
            margin: 5px auto 5px auto;
            padding: 5px 5px;
            color: var(--secondary);
            text-align: center;
        }
        .btn-help:hover {
            background: rgba(212, 175, 55, 0.3);
        }

/* #endregion */

/* #region Star Decoration */
        .star-decoration {
            text-align: center;
            margin: 30px 0;
            position: relative;
        }
        
        .star-decoration::before,
        .star-decoration::after {
            content: '';
            position: absolute;
            top: 50%;
            width: 100px;
            height: 1px;
            background: linear-gradient(to right, transparent, #17425a, transparent);
        }
        
        .star-decoration::before {
            left: 50%;
            transform: translateX(-120px);
        }
        
        .star-decoration::after {
            right: 50%;
            transform: translateX(120px);
        }
        
        .star-decoration span {
            font-size: clamp(1rem, 1.5vw, 2rem);
            color: var(--title);
        }
        /* #endregion */

/* #region  Success Message */
        .success-message {
            display: none;
            text-align: center;
            padding: 60px 20px;
        }
        
        .success-message.active {
            display: block;
        }
        
        .success-icon {
            font-size: clamp(3rem, 6vw, 6rem);
            color: var(--primary);
            margin-bottom: 20px;
        }
        
        .success-message h2 {
            /*font-family: 'Cinzel', serif;*/
            
            margin-bottom: 20px;
            letter-spacing: 0.1em;
        }
        
        /* Logo in success message */
        .success-logo {
            width: 150px;
            height: auto;
            margin-bottom: 20px;
            opacity: 0.8;
        }
        /* #endregion */

/* #region Voucher Options */
        .voucher-amounts {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 25px;
        }
        
        .voucher-option {
            padding: 15px;
            background: rgba(212, 175, 55, 0.05);
            border: 1px solid rgba(212, 175, 55, 0.3);
            border-radius: 5px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-align: center;
        }
        
        .voucher-option:hover {
            border-color: var(--primary);
            background: rgba(212, 175, 55, 0.1);
        }
        
        .voucher-option.selected {
            background: rgba(212, 175, 55, 0.2);
            border-color: var(--primary);
        }
        /* #endregion */
        
/* #region Info Box */
        .info-box {
            background: rgba(212, 175, 55, 0.1);
            border: 1px solid rgba(212, 175, 55, 0.3);
            border-radius: 5px;
            padding: 20px;
            margin: 20px 0;
            font-size: clamp(1rem, 1.5vw, 2rem);
            color: var(--title);
        }
        
        .info-box strong {
            color: var(--secondary);
        }
        /* #endregion */
        
/* #region Astro Home Section */
        .astro-section {
            display: none;
            /*background: rgba(49, 63, 90, 0.05);*/
            /*border: 1px solid rgba(212, 175, 55, 0.3);*/
           
            padding: 20px 30px 30px 30px;
            margin-bottom: 40px;

            background: rgba(79, 98, 134, 0.05);
            background: var(--background);
            border: 1px solid rgba(212, 175, 55, 0.8);
            border-radius: 10px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8);
        }
        
        .astro-section h3 {
            /*font-family: 'Cinzel', serif; */
            /*font-size: 28px;*/
            color:  var(--primary);
            margin-top : 0.25rem;
            margin-bottom: 0.75rem;
            /*letter-spacing: 2px;*/
        }

        .astro-section h4 {
            /*font-family: 'Cinzel', serif; */
  
            color: var(--secondary);
            margin-bottom: 15px;
        }

        .astro-section p {
            color: var(--text);
        }

        .astro-section.active {
            display: block;
        }
        
        .astro-card {
            background: rgba(49, 63, 90, 0.1);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 10px;
            padding: 1%;
            margin-bottom: 2%;
            margin-top: 2%;
        }
        
        .astro-card h3 {
            /*font-family: 'Cinzel', serif; */
    
            color: var(--primDark);
            /*margin-bottom: -2px;*/

            margin-top : 0.25rem;
            margin-bottom: 0.75rem;
            /*letter-spacing: 2px;*/
        }

        .astro-card h4 {
 
            color: var(--primDark);
            margin-bottom: 10px;
            /*letter-spacing: 2px;*/
        }

        .astro-card h5 {
      
            font-weight: 400;
            color: var(--secondary);
            text-align: center;
        }

        .astro-card p {
            text-align: left;
            margin-bottom: 10px;
            margin-left: 0.5rem;
        }


        .astro-detail {
            background: var(--detailBackground);
            padding-top: 1%;
            padding-bottom: 1%;
            padding-left: 1%;
            padding-right: 1%;
            border-left: 6px solid var(--primLight);
            border-radius: 0 1rem 1rem 0;
            margin: 2% 0;
            /*font-style: italic;*/
            color: #ddd;
            line-height: 1.2;
            text-align: left;
        }

        .astro-detail h3 {
            /*font-family: 'Cinzel', serif; */

            color: var(--secondary);
            /*margin-bottom: -2px;*/

            margin-top : 0.25rem;
            margin-bottom: 0.75rem;
            /*letter-spacing: 2px;*/
        }

        .astro-detail h4 {

            color: var(--secondary);
        }

        .astro-detail h5 {
    
            font-weight: 800;
            color: var(--secondary);
            text-align: center;
        }

        .astro-detail p {
            text-align: left;
            display: block;
            color: var(--detailText);
            margin-left: 0.1rem;
        }

        .astro-detail ul {
            text-align: left;
            margin-left: 20px;
            color: var(--detailText);
        }
        
                
        .price-tag {
            display: inline-block;
            background: var(--primLight);
            color: #000;
            padding: 5px 15px;
            border-radius: 20px;
            font-weight: bold;
            margin-left: 15px;
        }

        .price-tag-dark {
            display: block;
            text-align: right;
            float: right;
            background: transparent;
            color: var(--primLight);
            padding: 0px 10px;
            border-radius: 20px;
            font-weight: bold;
            margin-left: 20px;
            border: 1px solid var(--primLight);
        }

.astro-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin: 20px 0;
}

@media (max-width: 768px) {
    .astro-columns {
        grid-template-columns: 1fr;
    }
}

        /* #endregion */
        
/* #region About Section */
        .about-section {
            display: none;
            background: rgba(0, 0, 0, 0.3);
            border: 1px solid rgba(212, 175, 55, 0.3);
            border-radius: 10px;
            padding: 40px;
            margin-bottom: 40px;
        }
        
        .about-section.active {
            display: block;
        }
       

        
        /* Team member bio pics */
        .bio-pic-container {
            width: 150px;
            height: 150px;
            margin: 0 auto 0px;
            border-radius: 50%;
            border: 3px solid var(--primary);
            overflow: hidden;
            background: rgba(212, 175, 55, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .bio-pic-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        
        .bio-pic-placeholder {
            color: var(--primary);
            font-size: clamp(1rem, 2vw, 1rem);
            text-align: center;
            padding: 20px;
            opacity: 0.6;
        }
        /* #endregion */
        
/* #region  Newsletter Section */
        .newsletter-section {
            background: var(--detailBackground) ;
            border: 1px solid rgba(0, 65, 95, 0.8);
            border-radius: 10px;
            padding: 40px;
            margin: 40px 0;
            text-align: center;
        }
        
        .newsletter-section h3 {
            /*font-family: 'Cinzel', serif;*/

            color: #333333;
            margin-bottom: 15px;
            letter-spacing: 2px;
            text-align: center;
            display: block;
        }

        .newsletter-section p {
            text-align: center;
            display: block;
            color: var(--detailText);
        }

        .newsletter-form {
            max-width: 500px;
            margin: 0 auto;
        }
        
        .newsletter-form input[type="email"] {
            width: 60%;
            margin-right: 10px;
            display: inline-block;
            color: #7a6c3f;
            background-color: #ebeaea;
        }
        
        .newsletter-form button {
            width: 30%;
            display: inline-block;
            font-size: clamp(1rem, 1.5vw, 1.75rem);
            padding: 10px 0px 10px 0px;
        }
    /* #endregion */

/* #region Footer */
        .footer {
            text-align: center;
            margin-top: 50px;
            padding-bottom: 30px;
            color: white;
            font-size: clamp(1rem, 1.5vw, 2rem);
        }
        .footer p {
            text-align:center;
            display: block;
            color: white;
        }

        .footer a {
            color: #fcefc7;
            text-decoration: none;
            margin: 0 0px;
            /*font-family: 'Cinzel', serif;*/
            font-size: clamp(1rem, 1.5vw, 2rem);
            letter-spacing: 2px;
            transition: all 0.3s ease;
            display: inline-block;
            padding: 5px 5px;
            /*width: 32%;*/
            min-width: 15%;
            max-width: 90%;
            vertical-align: middle;
            border: 2px transparent #58c9fd;
    }
    /* #endregion */
             
/* Mobile Responsive 

    @media screen and (max-width: 900px) {
        .logo-text h1 {
            font-size: 3em;
            font-weight: 300;
            letter-spacing: 2px;
        }
        .logo-text h2 {
            font-size: 2em;
            font-weight: 200;
        } 
    }


    @media (max-width: 768px) {
        .logo-container img {
            width: 150px;
        }
        
        .header h1 {
            font-size: 32px;
            letter-spacing: 0.2em;
        }
        
        .logo-text h1 {
            font-size: 2em;
            font-weight: 300;
            letter-spacing: 2px;
        }
        .logo-text h2 {
            font-size: 1.2em;
            font-weight: 200;
        }   

        .form-container {
            padding: 20px;
        }
        
        .consultation-header {
            flex-direction: column;
            align-items: flex-start;
        }
        
        .consultation-price {
            margin-top: 5px;
        }
    }
*/

/* #region Social Links */
    .links{
        margin-top: 2%;
    }
    .links a{
        margin: 10px;
    }
    .links a img{
        width: 60px;
    }
    /* #endregion */

/* #region Modal Styles */
    .modal {
        display: none; /* Hidden by default */
        position: fixed; /* Stay in place */
        z-index: 200; /* Sit on top */
        left: 0;
        top: 0;
        width: 100%; /* Full width */
        height: 100%; /* Full height */
        overflow: auto; /* Enable scroll if needed */
        background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
    }

    .modal-content {
        background-color: #e3eaf3;
        color: #1a1a1a;
        margin: 15% auto; /* 15% from the top and centered */
        padding: 20px;
        border: 2px solid var(--primary);
        border-radius: 10px;
        width: 50%; /* Could be more or less, depending on screen size */
        position: relative;
    }
    .modal-content p {
        font-size: clamp(1.25rem, 1.5vw, 1.5rem);
        text-align: center;
        display: block;
    }
    .modal-content h4 {
        margin-bottom: 20px;
        font-size: clamp(1.5rem, 1.75vw, 1.75rem);
        letter-spacing: 0.1em;
        text-align: center;
    }

    .modal-close-button {
        color: var(--primary);
        float: center;
        padding: 30px;
        font-size: clamp(1.5rem, 2vw, 2.5rem);
        font-weight: bold;
    }

    .modal-close-button:hover,
    .modal-close-button:focus {
        color: black;
        text-decoration: none;
        cursor: pointer;
    }

    /* #endregion */

/* #region slide show CSS */

        .reviews-slideshow {
            position: relative;
            max-width: 800px;
            min-height: 35rem;
            margin: 0 auto;
            padding: 0;
        }


        @media (max-width: 620px) {
            .reviews-slideshow {
                max-width: 100%;
                min-height: 45rem;
            }
            
        }


        @keyframes fadeOut {
            from { opacity: 1; }
            to { opacity: 0; }
        }


        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        .review-slide {
            position: absolute; 
            top: 0;
            width: 100%;
            opacity: 0;
            visibility: hidden;
            transition: opacity 1s ease-in-out, visibility 0s 1s;
        }
        
        .review-slide.active {
            position: absolute;
            top: 0;
            width: 100%;
            opacity: 1;
            visibility: visible;
            transition: opacity 1s ease-in-out, visibility 1s 0s;
        }



        .review-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(212, 175, 55, 0.8);
            color: #1a1a2e;
            border: none;
            padding: 2% 2%;
            cursor: pointer;
            border-radius: 4px;
            font-size: clamp(1.5rem, 2vw, 2.5rem);
            transition: background 0.3s;
        }

        .review-nav:hover {
            background: rgba(212, 175, 55, 1);
        }

        .review-nav.prev {
            left: 0;
        }

        .review-nav.next {
            right: 0;
        }

        .review-dots {
            text-align: center;
            margin-top: 20px;
        }

        .dot {
            cursor: pointer;
            height: 12px;
            width: 12px;
            margin: 0 5px;
            background-color: rgba(212, 175, 55, 0.3);
            border-radius: 50%;
            display: inline-block;
            transition: background-color 0.3s;
        }

        .dot.active,
        .dot:hover {
            background-color: rgba(212, 175, 55, 1);
        }

        /* Mobile responsiveness */
        @media (max-width: 768px) {
           
            .review-nav {
                padding: 8px 12px;
                font-size: clamp(1rem, 1.75vw, 2rem);
            }
        }

        /* End of slideshow CSS */
        /* #endregion */
   





