/* Custom Fonts/Colors (Example: use a professional font) */
:root {
    --primary-color: #B27C2B; /* Gold/Orange color for highlights/buttons */
    --secondary-color: #000000;
    --text-color: #ffffff;
    --overlay-color: rgba(0, 0, 0, 0.4);
}


@font-face {
    font-family: 'GothamBook';
    src: url('https://iconicacapitol.com/wp-content/uploads/2021/12/new-GothamBook.ttf') format('truetype');
    /* src: url('new-GothamBook.ttf') format('truetype'); */
    font-weight: normal;
    font-style: normal;
  }
  @font-face {
    font-family: 'GothamUltra';
    src: url('https://iconicacapitol.com/wp-content/uploads/2021/12/new-GothamUltra.otf') format('truetype');
    /* src: url('new-GothamUltra.otf') format('opentype'); */
    font-weight: normal;
    font-style: normal;
  }
  @font-face {
    font-family: 'GothamBold';
    src: url('https://iconicacapitol.com/wp-content/uploads/2021/12/new-GothamBold.ttf') format('truetype');
    /* src: url('new-GothamBold.ttf') format('truetype'); */
    font-weight: bold;
    font-style: normal;
  }
body {
    font-family: 'GothamBook', sans-serif;
    background-color: var(--text-color);
}

/* ---------------------------------- */
/* HERO SECTION STYLES */
/* ---------------------------------- */
#mobile-sticky-button-container {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1000; /* Ensure it's on top */
    padding: 10px 0; /* Add some vertical padding for aesthetics */
    background: white; /* Give it a background so it doesn't look transparent */
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); /* Subtle shadow above */

    /* Initial hidden state and smooth transition properties */
    visibility: hidden; 
    opacity: 0;
    transition: visibility 0s, opacity 0.3s ease-in-out; 
}

/* Make the button inside the container full width */
#mobile-sticky-button-container .btn {
    display: block; /* Make the anchor tag take full width */
    width: 95%; /* Adjust width to leave a small margin */
    margin: 0 auto; /* Center the button */
    /* Add any other specific styling for your button here */
}

/* 4. Desktop Guard: Hide the container completely on screen sizes 
      larger than a typical mobile breakpoint (e.g., 768px).
*/
@media (min-width: 769px) {
    #mobile-sticky-button-container {
        display: none !important; 
    }
}


/* 5. JavaScript will add this class when the button should be visible (on scroll).
*/
#mobile-sticky-button-container.is-visible {
    visibility: visible;
    opacity: 1;
}
.hero-section {
    position: relative;
    width: 100%;
    min-height: 100vh;
    background: url('https://iconicacapitol.com/wp-content/uploads/landing-page/images/hero-banner-extended.jpg') no-repeat center center / cover;
    display: flex;
    flex-direction: column;
    background-position: bottom;
}
.form-check-input{
    margin-top:0px !important;
}
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background-color: var(--overlay-color); */
    z-index: 1;
}

.content-container {
    max-width: 1200px; /* Max width for content */
}

/* Logo and Branding */
.logo-img-small {
    max-width: 100px; /* Smaller logo size */
}
.logo-text-small {
    font-size: 0.75rem;
    letter-spacing: 2px;
    font-weight: 600;
}

/* Hero Text Styling */
.hero-text-area {
    /* padding-top: 2rem; */
}
.hero-title {
    font-size: 2.2rem;
    line-height: 1.2;
    /* text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7); */
}
.hero-subtitle {
    font-size: 18px;
    opacity: 1;
}

/* Location Highlights */
.location-highlights-box {
    /* background-color: rgba(0, 0, 0, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.2); */
    border-radius: 8px;
    width: fit-content;
    max-width: 100%;
    font-family: "gothamBold", sans-serif;
    width: 40%;
}
.quick-high{
    font-size: 15px;
}
.highlight-item {
    /* background-color: rgba(255, 255, 255, 0.1);
    border-radius: 4px; */
    font-size: 9px;
}

/* Building Image */
.building-placeholder-wrapper {
    margin-top: -20px; /* Pull the image up slightly into the content area */
}
.building-img {
    height: auto;
    max-height: 50vh;
    width: auto;
    max-width: 900px;
}

/* ---------------------------------- */
/* FOOTER FORM STYLES */
/* ---------------------------------- */
.form-footer-bar {
    /* background-color: var(--secondary-color);
    border-top: 1px solid rgba(255, 255, 255, 0.1); */
}

.form-title {
    font-size: 1.6rem;
    color: white;
}

.form-control {
    /* background-color: #333;
    border: 1px solid #555; */
    color: black;
    font-family: 'GothamBold' !important;
}
.form-control::placeholder {
    color: #bbb;
    opacity: 1;
}

.btn-submit {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: white;
    font-weight: bold;
    padding: 0.75rem 1rem;
    font-family: "gothamBold", sans-serif;
}
.btn-submit:hover {
    background-color: darken(var(--primary-color), 10%);
    border-color: darken(var(--primary-color), 10%);
}

.disclaimer-text {
    font-size: 0.75rem;
    color: #aaa;
}
.disclaimer-text-form {
    font-size: 0.53rem;
    color: white;
}

/* WhatsApp Fixed Button */
.whatsapp-fixed-btn {
    position: fixed;
    right: 20px;
    bottom: 20px;
    /* background-color: #25D366;  */
    color: white;
    padding: 10px 15px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: bold;
    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); */
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1;
    z-index: 1050; /* Above all content */
    transition: transform 0.3s ease;
}
.whatsapp-fixed-btn:hover {
    transform: scale(1.05);
}
.whatsapp-small-text {
    font-size: 0.65rem;
    font-weight: normal;
    margin-top: 3px;
}
/* ---------------------------------- */
/* FOOTER SECTION STYLES */
/* ---------------------------------- */
.site-footer {
    background-color: #fff;
    color: #333;
    font-size: 0.9rem;
    border-color: #ddd !important;
}

.footer-content-container {
    max-width: 1200px;
}

/* Top Bar Info */
.footer-info-item {
    font-weight: 500;
    line-height: 1.5;
}

/* Footer Divider */
.footer-divider {
    opacity: 0.3;
}

/* Middle Bar Links */
.footer-links {
    font-size: 0.95rem;
}
.footer-link {
    color: #333;
    text-decoration: none;
    padding: 0 10px;
    transition: color 0.2s;
}
.footer-link:first-child {
    padding-left: 0;
}
.footer-link:hover {
    color: var(--primary-color);
}
.separator {
    color: #999;
}
.copyright-text {
    /* padding-left: 10px; */
}

/* Social Media */
.follow-text {
    color: #666;
    font-size: 0.95rem;
}
.social-icon-link {
    color: #333;
    font-size: 1.1rem;
    margin-left: 15px;
    transition: color 0.2s;
}
.social-icon-link:hover {
    color: var(--primary-color);
}

/* Disclaimer Section */
.disclaimer-title {
    font-size: 1.1rem;
    color: #000;
    letter-spacing: 0.5px;
}
.rera-info {
    font-size: 0.85rem;
    font-style: italic;
    color: #666;
}
.disclaimer-text {
    font-size: 0.8rem;
    line-height: 1.7;
    text-align: justify;
    color:#aaa;
}

.footer-divider{
    margin: 0px;
}
/* ---------------------------------- */
/* FINAL CTA SECTION STYLES */
/* ---------------------------------- */
.final-cta-section {
    background-color: #FFF4D3; /* Light beige/gold background */
    color: #444;
}

.cta-title {
    font-size: 26px;
    font-weight: 500;
    line-height: 31px;
    color: #B27C2B; /* Dark gold text color */
    letter-spacing: 0.5px;
}

/* Adjusting form inputs for this section's background */
.final-cta-section .form-control {
    background-color: #fff;
    border: 1px solid #ddd;
    color: #333;
    height: 50px; /* Taller inputs */
}
.final-cta-section .form-control::placeholder {
    color: #999;
}

/* Button Styling (Same color palette as the first form) */
.btn-cta-submit {
    background-color: #B27C2B; /* Darker gold/brown */
    border: 2px solid #B27C2B;
    color: #fff;
    font-weight: bold;
    /* padding: 0.8rem 4rem; */
    border-radius: 12px;
    font-size: 21px;
    transition: background-color 0.3s;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.btn-cta-submit:hover {
    background-color: #8c6a30;
    border-color: #8c6a30;
    color: #fff;
}
/* ---------------------------------- */
/* BACKED BY / CONTACT SECTION STYLES */
/* ---------------------------------- */
.contact-footer-section {
    position: relative;
    width: 100%;
    /* Placeholder background image with a dark tone */
    background: url('https://iconicacapitol.com/wp-content/uploads/landing-page/images/background-apart.jpeg') no-repeat center center / cover;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    /* text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8); */
}

.contact-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Dark, semi-transparent overlay */
    /* background-color: rgba(0, 0, 0, 0.65);  */
    z-index: 0;
}

.contact-container {
    max-width: 900px;
}

.backed-by-label {
    font-size: 1rem;
    font-weight: 300;
    opacity: 0.8;
}

.developer-names {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 1px;
}

.developer-years {
    font-size: 1.2rem;
    font-weight: 400;
    opacity: 0.9;
}

.contact-info {
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.5;
}

.contact-phone a {
    font-weight: 700;
}

/* ---------------------------------- */
/* NEIGHBOURHOOD & SPECIFICATIONS SECTION STYLES (UPDATED) */
/* ---------------------------------- */

/* Ensure map placeholder fits the new column structure */
.map-placeholder-img {
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    /* Make the map placeholder responsive within its column */
    width: 100%; 
    height: auto;
}

/* Adjust list padding if necessary after splitting columns */
.neighbourhood-list {
    padding-left: 0; /* Remove default ul padding */
}
.neighbourhood-list li {
    margin-bottom: 0.5rem; /* Tighter spacing for the list items in the new smaller column */
    font-size: 0.85rem; /* Slightly smaller font size to fit the tight column layout */
}

/* General list item styles remain */
.specifications-list li {
    font-size: 1.3rem;
    line-height: 1.6;
    margin-bottom: 0.7rem;
    padding-left: 0.5rem;
    color: #452F24; 
    display: flex;
    align-items: normal;
}
.info-heading{
    color: var(--primary-color);
}
/* ---------------------------------- */
/* AMENITIES SECTION STYLES (FINAL VERSION) */
/* ---------------------------------- */
.amenities-section {
    background-color: #fcf6e7;
    color: #333;
}

.amenities-title {
    font-size: 3.5rem;
    /* font-weight: 600; */
    line-height: 47px;
    color: var(--primary-color); 
}
.amenities-title .text-secondary {
    color: #B27C2B !important;
    font-weight: 400;
}

.amenity-card {
    position: relative;
    height: 570px; /* Fixed height for consistent card size */
    
    /* These properties handle the background image set via inline style */
    background-repeat: no-repeat;
    /* background-position: center center; */
    /* background-size: cover;  */
/*     
    border-radius: 15px; */
    overflow: hidden;
    /* box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08); */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.amenity-card:hover {
    transform: translateY(-5px);
    /* box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15); */
}

/* Overlay to ensure text is readable */
.amenity-text-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 94%;
    /* Gradient to make text readable */
    /* background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0)); */
    padding: 2rem 1.5rem 1.5rem 1.5rem !important;
    color: #fff;
    text-align: center;
}

.amenity-card-title {
    font-size: 1rem;
    font-weight: 700;
    color: #fff; 
    letter-spacing: 0.5px;
    /* text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);  */
}

.amenity-card-description {
    font-size: 0.9rem;
    line-height: 1.6;
    color: #ccc; 
}
/* ---------------------------------- */
/* PRICING & FLOOR PLANS SECTION STYLES */
/* ---------------------------------- */
.pricing-plans-section {
    /* background-color: #fcf6e7; Light beige background */
    color: #333;
}

.pricing-subtitle {
    font-size: 1rem;
    color: #666;
    margin-bottom: 0.5rem;
}

.pricing-title {
    font-size: 3.5rem;
    /* font-weight: 600; */
    line-height: 2.9rem;
    color: var(--primary-color);
    margin-top: 2rem;
}
.pricing-title .text-secondary {
    color: #B27C2B !important; /* Specific darker gold for "UNLOCK YOUR DOORS" */
    font-weight: 400; /* Lighter weight for this part */
}

/* Plan Type Badges (2 BHK, 3 BHK) */
.plan-type-badge {
    border: 1px solid black;
    font-family: "GothamUltra";
    border-radius: 57px;
    padding: 0px 100px;
    font-size: 1.7rem;
    /* font-weight: 600; */
    color: #444;
    display: inline-block; /* Occupy only necessary width */
    min-width: 150px;
}

/* Price Display */
.plan-price {
    font-size: 1.3rem;
    /* font-weight: 600; */
    color:black
}
.plan-price .fa-rupee-sign {
    font-size: 1.2rem; /* Adjust rupee symbol size */
    margin-right: 5px;
}

/* Floor Plan Image */
.plan-image {
    max-width: 70%;
    height: auto;
    object-fit: contain; /* Ensure the whole image is visible */
    /* padding: 1rem;  */
}

/* Plan Sizes Badge */
.plan-sizes-badge {
    background-color: #fff;
    border: 1px solid black;
    border-radius: 55px;
    padding: 3px 100px;
    font-size: 1.3rem;
    font-weight: 500;
    color: #555;
    line-height: 1.5;
    display: inline-block; /* Occupy only necessary width */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

/* Download Brochure Button (reusing existing style, but good to have a specific class) */
.btn-download-brochure {
    background-color: #B27C2B; /* Darker gold/brown, consistent with CTA */
    border: 2px solid #B27C2B;
    color: #fff;
    font-weight: bold;
    padding: 0.8rem 4rem;
    border-radius: 55px;
    font-size: 1rem;
    transition: background-color 0.3s;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.btn-download-brochure:hover {
    background-color: #8c6a30;
    border-color: #8c6a30;
    color: #fff;
}

.whatsapp-icn-cls{
    height: 60px;
}
.arrow-icn{
    width:32px; height:32px; margin-right:12px; margin-top:-2px;
}
.gothambold{
    font-family: 'GothamBold', sans-serif !important;
}
/* ---------------------------------- */
/* PROJECT HIGHLIGHTS SECTION STYLES */
/* ---------------------------------- */

.project-highlights-section {
    /* background-color: #f8f8f8;  */
    color: #333;
    overflow-x: hidden; /* Prevent horizontal scroll due to overlapping image */
}

.highlights-container {
    max-width: 1200px;
}

.section-subtitle {
    font-size: 1rem;
    color: #666;
    margin-bottom: 0.5rem;
}

.section-title {
    font-size: 3rem;
    font-weight: 500;
    line-height: 1;
    color: var(--primary-color); /* Use the gold/orange color */
    letter-spacing: 1px;
}

.section-description {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.4;
    color: #555;
}

/* Highlight List Styling */
.highlights-list {
    margin-bottom: 2rem;
}

.highlights-list li {
    font-size: 1.3rem;
    margin-bottom: 1.25rem;
    position: relative;
    display: flex;
    align-items: flex-start;
}

.highlight-icon {
    color: var(--primary-color); /* Gold/Orange icon color */
    font-size: 0.9rem;
    transform: rotate(-45deg); /* Simple visual effect for the arrow */
}

.highlight-item-text {
    font-weight: 500;
}
.highlight-item-text:nth-child(3) {
    font-weight: bold; /* Emphasizing key point like "No Common Walls" */
}

/* Button Styling */
.btn-exclusive-tour,.btn-exclusive-tour:hover {
    background-color: var(--primary-color);
    border: none;
    color: white;
    font-weight: bold;
    padding: 0.75rem 2.5rem;
    border-radius: 12px;
    transition: background-color 0.3s;
}
/* .btn-exclusive-tour:hover {
    background-color: darken(var(--primary-color), 10%);
    color: var(--secondary-color);
} */

/* Image Positioning and Styling */
.main-highlight-img {
    border-radius: 0 50px 0 0; /* Simulating the curved top-right corner */
    width: 70%;
    height: auto;
    object-fit: cover;
    /* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); */
}

.detail-highlight-img {
    /* Position for the overlapping image */
    bottom: -80px;
    left: 0;
    bottom: 5%;
    max-width: 45%;
    /* border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); */
    transform: translateX(-20%); /* Pulling the image slightly out of the column */
}
.l-20{
    left:20%
}
/* Section Divider */
.section-divider {
    /* border-top: 1px solid #ddd; */
    opacity: 1;
}
.form-control{
    font-size: 14px;
}

/* ---------------------------------- */
/* RESPONSIVENESS (Mobile Adjustments) */
/* ---------------------------------- */
@media (max-width: 768px) {
    .whatsapp-fixed-btn{
        right: 10px;
        bottom: 70px;
    }
    .highlights-list li,.specifications-list li{
        font-size: 0.9rem;
    }
    .highlights-list {
        margin-bottom: 0rem;
    }
    .w-50{
        width: 100% !important;
    }
    .cta-title{
        line-height: 24px;
    }
    .w-80-mob{
        width: 80% !important;
    }
    .btn-exclusive-tour, .btn-exclusive-tour:hover{
        display: table;
        margin: auto;
    }
    .pricing-title{
        line-height: 0.9rem;
    }
    .hero-title {
        font-size: 1.25rem;
    }
    .logo-img-small {
        max-width: 80px;
    }
    .hero-subtitle {
        font-size: 1rem;
        line-height: 25px;
    }
    .hero-text-area {
        padding-top: 10px;
    }
    
    .logo-right {
        max-width: 80px;
    }
    .logo-left {
        padding-left: 10px;
    }

    .building-img {
        max-height: 35vh; /* Reduce height on mobile */
    }

    /* Stack form inputs vertically on smaller screens */
    .form-footer-bar .col-12:not(:last-child) {
        margin-bottom: 10px;
    }
    
    /* Center text feedback on mobile */
    .invalid-feedback {
        text-align: left;
        padding-left: 5px;
    }

    .form-footer-bar .row > div {
        margin-bottom: 0.5rem; /* Better spacing for stacked inputs */
    }
    .form-footer-bar .col-md-3 {
        width: 90%; /* Make inputs full width on mobile */
    }
    .site-footer {
        padding: 3rem 0;
    }
    
    .footer-top-bar {
        text-align: center;
        margin-bottom: 2rem !important;
    }
    
    .footer-links {
        justify-content: center;
        margin-bottom: 1.5rem !important;
    }
    
    /* Adjust spacing for links on mobile */
    .footer-link, .separator, .copyright-text {
        padding: 0 5px;
        line-height: 1.5;
    }

    .social-follow {
        text-align: center !important;
    }
    .follow-text {
        display: block;
        margin-bottom: 10px;
    }
    .social-icon-link {
        margin: 0 8px;
    }
    
    .disclaimer-title {
        text-align: center;
    }
    .rera-info {
        text-align: center;
        margin-bottom: 2rem !important;
    }
    .cta-title {
        font-size: 1rem;
        padding: 0 1rem;
    }
    
    .final-cta-section .col-md-3 {
        width: 90%;
        margin-bottom: 10px;
    }

    .btn-cta-submit {
        width: 90%;
        padding: 0.8rem 2rem;
    }    
    .contact-footer-section {
        min-height: 300px;
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    
    .developer-names {
        font-size: 1.2rem;
        padding-bottom: 10px;
    }

    .developer-years {
        font-size: 1rem;
        margin-bottom: 2rem !important;
    }

    .contact-info {
        font-size: 0.75rem;
    }
    
    .contact-info br {
        display: none; /* Keep addresses on one line for better mobile reading if possible */
    }
    /* Stack the Map and List columns vertically on mobile */
    .neighbourhood-row .map-col {
        margin-bottom: 2rem;
    }
    .neighbourhood-row .list-col {
        padding-left: 15px;
    }
    
    .neighbourhood-list li {
        font-size: 0.95rem; /* Restore font size when it's full-width */
    }
    .amenities-title {
        font-size: 1.25rem;
        line-height: 28px;
    }
    .form-control{
        font-size: 12px;
    }
    /* .amenity-card {
        height: 350px; 
    } */
    .w-80-mob{
        width: 90%;
    }
    .w-75 {
        width: 100% !important;
    }
    .pt-5 {
        padding-top: 1rem !important;
    }
    .mob-display-rev{
        display: flex;
        flex-direction: column-reverse;
    }
    .align-row-mobile{
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        flex-wrap: nowrap;
        overflow: scroll;
        justify-content: flex-start !important;
    }
    .pricing-title {
        font-size: 1.25rem;
    }
    .pricing-title .text-secondary {
        display: block;
    }
    .plan-image {
        max-width: 50%;
    }
    .mt-5 {
        margin-top: 0rem !important;
    }

    .plan-type-badge {
        font-size: 1rem;
        padding: 6px 20px;
        min-width: unset;
        width: 120px;
    }

    .plan-price {
        font-size: 1rem;
    }
    .py-5 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .plan-sizes-badge {
        font-size: 0.85rem;
        padding: 10px 15px;
    }

    .btn-download-brochure {
        width: 80%;
        padding: 0.7rem 2rem;
    }

    .col-md-6 {
        margin-bottom: 3rem; /* Add space between columns on small screens */
    }
}
/* Media Queries for Responsiveness */
@media (max-width: 991.98px) {
    .location-highlights-box{
        width: 100% !important;
    }
    .form-title{
        font-size: 18px;
    }
    /* Tablet/Mobile Adjustments */
    .highlight-image-col {
        margin-top: 3rem;
        text-align: center;
        order: 2; /* Image below text on small screens */
    }
    .highlight-text-col {
        order: 1;
    }
    .w-80-mob{
        width: 60%;
    }
    .section-title {
        font-size: 1.5rem;
    }

    .detail-highlight-img {
        /* Hide or drastically simplify the overlapping image on small mobile screens */
        /* display: none !important; */
    }
    .l-20 {
        left: 0%;
    }
    .main-highlight-img{
        width: 80%;
    }
    .detail-highlight-img{
        left: 10%;
        bottom: 10%;
    }

    .main-highlight-img {
        border-radius: 10px; /* Simplify curve on mobile */
    }
    .mb-5 {
        margin-bottom: 1rem !important;
    }
}
