<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>
        Coldwell Banker Sloane Realty Oib
                    | Home            </title>
        
    <script src="/graphical/frontend/themes/2024/js/tinycolor.min.js"></script>
<script src="/graphical/frontend/themes/2024/js/fontMap.js"></script>
<script>
    const urlParams = new URLSearchParams(window.location.search);
    window.selectedTheme = 1;
    let previewThemeId = urlParams.get('idxThemePreview');
    let previewTypography = urlParams.get('idxTypePreview');
    if (previewThemeId) {
        window.selectedTheme = parseInt(previewThemeId);
    }
    let fontPreviewOverrides = {};
    // Parse typography data from Twig
            const typographyData = null;
        
    if (previewTypography || typographyData) {
        // Helper function to get font value: URL param first, then typography, then null
        const getFontValue = (paramName, typographyKey) => {
            const urlValue = urlParams.get(paramName);
            if (urlValue) {
                return urlValue;
            }
            if (typographyData && typographyData[typographyKey]) {
                return typographyData[typographyKey];
            }
            return null;
        };
        
        // Get font numbers from URL params or typography
        const primaryFontNum = getFontValue('primaryFont', 'primary-font-id');
        const secondaryFontNum = getFontValue('secondaryFont', 'secondary-font-id');
        const bodyFontNum = getFontValue('bodyFont', 'body-font-id');
        const buttonFontNum = getFontValue('buttonFont', 'button-font-id');
        
        // Build overrides only if we have valid font numbers
        if (primaryFontNum && FONT_MAP[primaryFontNum]) {
            fontPreviewOverrides["fontFontHeadingFamily"] = FONT_MAP[primaryFontNum].name;
            fontPreviewOverrides["fontFontHeroHeadingFamily"] = FONT_MAP[primaryFontNum].name;
            fontPreviewOverrides["fontH1H1Letterspace"] = FONT_MAP[primaryFontNum].H1Letterspace;
            fontPreviewOverrides["fontH1H1Size"] = FONT_MAP[primaryFontNum].H1Size;
        }
        
        if (buttonFontNum && FONT_MAP[buttonFontNum]) {
            fontPreviewOverrides["fontFontHeaderFamily"] = FONT_MAP[buttonFontNum].name;
            fontPreviewOverrides["fontFontButtonFamily"] = FONT_MAP[buttonFontNum].name;
            fontPreviewOverrides["fontFontButtonSize"] = FONT_MAP[buttonFontNum].btnFontSize;
        }
        
        if (secondaryFontNum && FONT_MAP[secondaryFontNum]) {
            fontPreviewOverrides["fontFontHeadingSecondaryFamily"] = FONT_MAP[secondaryFontNum].name;
            fontPreviewOverrides["fontH2H2Size"] = FONT_MAP[secondaryFontNum].H2Size;
            fontPreviewOverrides["fontH3H3Size"] = FONT_MAP[secondaryFontNum].H3Size;
            fontPreviewOverrides["fontH4H4Size"] = FONT_MAP[secondaryFontNum].H4Size;
            fontPreviewOverrides["fontH5H5Size"] = FONT_MAP[secondaryFontNum].H5Size;
            fontPreviewOverrides["fontH6H6Size"] = FONT_MAP[secondaryFontNum].H6Size;
        }
        
        if (bodyFontNum && FONT_MAP[bodyFontNum]) {
            fontPreviewOverrides["fontFontPgFamily"] = FONT_MAP[bodyFontNum].name;
        }
    }

    window.themeData = {
        "primitives": {
            "primitives": {
                "colorGray25": "#fbfcfc",
                "colorGray50": "#f8f9fb",
                "colorGray100": "#f3f4f5",
                "colorGray200": "#e5e7ea",
                "colorGray300": "#d1d5da",
                "colorGray400": "#9ca3ae",
                "colorGray500": "#6c727e",
                "colorGray600": "#4c5661",
                "colorGray700": "#374150",
                "colorGray800": "#1f2936",
                "colorGray900": "#111826",
                "colorGray950": "#0c111b",
                "colorWhite": "#ffffff",
                "fontSystemFamily": "Inter"
            }
        },
        "selectedTheme": "lUX",
        "themes": {
            2: {
                "localThemeName": "lUX",
                "fontFontHeadingFamily": "Playfair Display",
                "fontFontHeroHeadingFamily": "Jomolhari",
                "fontFontHeaderFamily": "Jomolhari",
                "fontFontHeadingSecondaryFamily" : "Jomolhari",
                "fontHWeight": "500px",
                "fontH1H1Size": "58px",
                "fontFontPgFamily": "Jomolhari",
                "fontH2H2Size": "48.83px",
                "fontHColor": "#eddfc5",
                "imageRadius": "0px",
                "fontFontPgColor": "#ffffff",
                "buttonPrimaryButtonPrimaryFill": "#EDDFC5",
                "buttonPrimaryButtonPrimaryStroke": "#121212",
                "buttonSecondaryButtonSecondaryStroke": "#EDDFC5",
                "buttonSecondaryButtonSecondaryFill": "#121212",
                "fontFontButtonFamily": "Jomolhari",
                "fontFontButtonSize": "16px",
                "brandColorPrimary": "#EDDFC5",
                "brandColorSecondary": "#121212",
                "buttonPrimaryButtonPrimaryTextColor": "#EDDFC5",
                "buttonSecondaryButtonSecondaryTextColor": "#EDDFC5",
                "buttonSecondaryButtonSecondaryFillHover": "#0000001c",
                "surface": "#121212",
                "sectionSectionStroke": "0px",
                "sectionSectionStrokeColor": "#ffffff",
                "buttonButtonRadius": "0px",
                "sectionSectionSurface": "#ffffff",
                "fontH1H1Letterspace": "-2px",
                "fontH2H2Letterspace": "-2px",
                "fontH3H3Size": "39.06px",
                "fontH3H3Letterspace": "-1px",
                "fontH4H4Size": "31.25px",
                "fontH4H4Letterspace": "-1px",
                "fontH5H5Letterspace": "-1px",
                "fontH6H6Letterspace": "-1px",
                "fontH5H5Size": "25px",
                "fontH6H6Size": "20px",
                "isHasAdornmentInLayout": true,
                "headerConfigStyle": "flyOutHidesFullScreen",
                "footerBackgroundColorStyle1": "#000000",
                "footerBackgroundColorStyle2": "#000000",
                "footerTextColorStyle1": "#ffffff",
                "footerTextColorStyle2": "#ffffff",
                "socialBackgroundColorStyle1": "#000000",
                "socialIconColorStyle1": "#ffffff",
                "socialBackgroundColorStyle2": "#000000",
                "socialIconColorStyle2": "#ffffff",
            },
            1 : {
                "localThemeName": "mOD",
                "fontFontHeadingFamily": "Wix Madefor Display",
                "fontFontHeroHeadingFamily": "Wix Madefor Text",
                "fontFontHeaderFamily": "Wix Madefor Text",
                "fontFontHeadingSecondaryFamily": "Wix Madefor Text",
                "fontHWeight": "700px",
                "fontH1H1Size": "61.04px",
                "fontFontPgFamily": "Wix Madefor Text",
                "fontFontButtonSize": "16px",
                "fontH2H2Size": "48.83px",
                "fontHColor": "#374150",
                "imageRadius": "16px",
                "fontFontPgColor": "#4c5661",
                "buttonPrimaryButtonPrimaryFill": "#00418c",
                "buttonPrimaryButtonPrimaryStroke": "#ffffff",
                "buttonSecondaryButtonSecondaryStroke": "#00418c",
                "buttonSecondaryButtonSecondaryFill": "#ffffff",
                "fontFontButtonFamily": "Wix Madefor Text",
                "brandColorPrimary": "#00418c",
                "brandColorSecondary": "#ffffff",
                "buttonPrimaryButtonPrimaryTextColor": "#ffffff",
                "buttonSecondaryButtonSecondaryTextColor": "#00418c",
                "buttonSecondaryButtonSecondaryFillHover": "#000000",
                "surface": "#ffffff",
                "sectionSectionStroke": "0px",
                "sectionSectionStrokeColor": "#ffffff",
                "buttonButtonRadius": "4px",
                "sectionSectionSurface": "#ffffff",
                "fontH1H1Letterspace": "-2px",
                "fontH2H2Letterspace": "-2px",
                "fontH3H3Size": "39.06px",
                "fontH3H3Letterspace": "-1px",
                "fontH4H4Size": "31.25px",
                "fontH4H4Letterspace": "-1px",
                "fontH5H5Letterspace": "-1px",
                "fontH6H6Letterspace": "-1px",
                "fontH5H5Size": "25px",
                "fontH6H6Size": "20px",
                "isHasAdornmentInLayout": false,
                "headerConfigStyle": "flyOutHidesFullScreen",
                "footerBackgroundColorStyle1": "#F3F4F6",
                "footerBackgroundColorStyle2": "#0D121C",
                "footerTextColorStyle1": "#4D5761",
                "footerTextColorStyle2": "#FFFFFF",
                "socialBackgroundColorStyle1": "#111927",
                "socialIconColorStyle1": "#FFFFFF",
                "socialBackgroundColorStyle2": "#E5E7EB",
                "socialIconColorStyle2": "#111927"
            }
        }
    };
    window.selectedThemeData = window.themeData.themes[window.selectedTheme];
</script>
 <style>
        :root {
            --idx-primary-color: #00418c;
            --idx-secondary-color: #ffffff;
            --idx-button-color: #00418c;
            --idx-button-text-color: #ffffff;
            --idx-secondary-button-color: #ffffff;
            --idx-secondary-button-text-color: #00418c;
        }
</style>

<style id="final-colors-rendered-into-dom">
    /* This is sample output of what our javascript generates, and will be replaced with javascript using the id of the script tag */
    /*
    :root {
    --idx-final-header-background-color: #121212;
    --idx-final-header-contact-button-fill: transparent;
    --idx-final-header-contact-button-stroke: #EDDFC5;
    --idx-final-header-contact-button-text: #EDDFC5;
    --idx-final-header-contact-button-hover: #2b2b2b;
    --idx-final-header-phone-button-fill: transparent;
    --idx-final-header-phone-button-stroke: transparent;
    --idx-final-header-phone-button-text: #EDDFC5;
    --idx-final-header-phone-button-hover: transparent;
    --idx-final-header-flyout-svg-color: #FFFFFF;
    --idx-final-body-image-radius: 0px;
    --idx-final-header-font-family: Jomolhari;
    --idx-final-button-font-family: Jomolhari;
    --idx-final-heading-font-family: Playfair Display;
    --idx-final-body-font-family: Jomolhari;
    --idx-final-button-radius: 0px;
    --idx-final-body-section-padding-fullscreen: 40px;
    --idx-final-body-section-padding-responsive: 16px;
    --idx-final-header-font-weight: 500;
    --idx-final-heading-one-letter-space: -2px;
    --idx-final-heading-one-size: 58px;
    --idx-final-heading-two-letter-space: -2px;
    --idx-final-heading-two-size: 48.83px;
    --idx-final-heading-three-letter-space: -1px;
    --idx-final-heading-three-size: 39.06px;
    --idx-final-heading-four-letter-space: -1px;
    --idx-final-heading-four-size: 31.25px;
    --idx-final-heading-five-letter-space: -1px;
    --idx-final-heading-five-size: 25px;
    --idx-final-heading-six-letter-space: -1px;
    --idx-final-heading-six-size: 20px;
    --idx-final-heading-adornment-visibility: block;
    --idx-final-body-border-size: 0px;
    --idx-final-header-border-color: #121212;
    --idx-final-header-contact-button-border-radius: 0px;
    --idx-final-header-contact-button-stroke-width: 1px;
    --idx-final-header-flyout-svg-top-offset: 26px;
    --idx-final-header-middle-buttons-text-color: #FFFFFF;
    --idx-final-header-middle-buttons-adornment-color: #EDDFC5;
    --idx-final-header-svg-logo-color: #EDDFC5;
    --idx-final-header-middle-buttons-text-shadow-val: 0;
    --idx-final-header-flyout-svg-display: none;
    --idx-final-header-flyout-spacer-display: none;
    --idx-final-header-middle-links-display: flex;
    --idx-final-hero-clip-path-top: 0px;
    --idx-final-hero-clip-path-bottom: 0px;
    --idx-final-hero-clip-path-border: 0px;
    --idx-final-hero-clip-path-border-radius: 0px;
    --idx-final-hero-mask-alpha-value: 1;
    --idx-final-hero-mask-alpha-end-value: 0;
    --idx-final-hero-content-margin: 20px;
    --idx-final-hero-content-form-justification: left;
    --idx-final-hero-content-video-max-width: 1200px;
    --idx-final-hero-content-video-width-offset: 0px;
    --idx-final-hero-search-button-fill: #EDDFC5;
    --idx-final-hero-search-button-stroke: #EDDFC5;
    --idx-final-hero-search-button-text: #121212;
    --idx-final-hero-search-button-hover: #e1ca9e;
    --idx-final-footer-background-color-style-one: #000000;
    --idx-final-footer-background-color-style-two: #000000;
    --idx-final-footer-text-color-style-one: #ffffff;
    --idx-final-footer-text-color-style-two: #ffffff;
    --idx-final-footer-social-background-color: #000000;
    --idx-final-footer-social-icon-color: #ffffff;
    --idx-final-footer-social-hover-color: #1a1a1a;
    --idx-final-footer-border-color: #121212;
    --idx-final-heading-text-color: #FFFF;
    --idx-final-body-text-color: #FFFF;
    --idx-final-body-background-color: #121212;
    --idx-final-body-social-background-color: #000000;
    --idx-final-body-social-icon-color: #ffffff;
    --idx-final-body-social-hover-color: #1a1a1a;
    --idx-final-body-button-fill: #121212;
    --idx-final-body-button-stroke: #EDDFC5;
    --idx-final-body-button-text: #EDDFC5;
    --idx-final-body-button-border-radius: 0px;
    --idx-final-body-button-stroke-width: 1px;
    --idx-final-body-button-hover: #2b2b2b;
    --idx-final-contact-form-background-for-alpha: 255;
    --idx-final-contact-form-background-alpha: 0.1;
    --idx-final-header-flyout-text-color: #FFFFFF;
    --idx-final-header-user-uploaded-light-logo-display: block;
    --idx-final-header-user-uploaded-dark-logo-display: none;
    --idx-final-footer-user-uploaded-light-logo-display: block;
    --idx-final-footer-user-uploaded-dark-logo-display: none;
    }*/

</style>

<script>

// Initialize color values from template
let idxGenerativePrimaryColor = "#00418c";
let idxGenerativeSecondaryColor = "#ffffff";
let idxGenerativePrimaryButtonColor = "#00418c";
let idxGenerativePrimaryButtonTextColor = "#ffffff";
let idxGenerativeSecondaryButtonColor = "#ffffff";
let idxGenerativeSecondaryButtonTextColor = "#00418c";
// Override colors from URL parameters if idxPreview=colors is present
(function() {
    if (urlParams.get('idxColorPreview')) {
        // Get color values from URL parameters
        const primaryColor = urlParams.get('primaryColor');
        const secondaryColor = urlParams.get('secondaryColor');
        const buttonColor = urlParams.get('buttonColor');
        const buttonTextColor = urlParams.get('buttonTextColor');
        const secondaryButtonColor = urlParams.get('secondaryButtonColor');
        const secondaryButtonTextColor = urlParams.get('secondaryButtonTextColor');
        
        // Override JavaScript constants
        if (primaryColor) idxGenerativePrimaryColor = primaryColor;
        if (secondaryColor) idxGenerativeSecondaryColor = secondaryColor;
        if (buttonColor) idxGenerativePrimaryButtonColor = buttonColor;
        if (buttonTextColor) idxGenerativePrimaryButtonTextColor = buttonTextColor;
        if (secondaryButtonColor) idxGenerativeSecondaryButtonColor = secondaryButtonColor;
        if (secondaryButtonTextColor) idxGenerativeSecondaryButtonTextColor = secondaryButtonTextColor;
        
        // Override CSS variables
        const root = document.documentElement;
        if (primaryColor) {
            root.style.setProperty('--idx-primary-color', primaryColor);
        }
        if (secondaryColor) {
            root.style.setProperty('--idx-secondary-color', secondaryColor);
        }
        if (buttonColor) {
            root.style.setProperty('--idx-button-color', buttonColor);
        }
        if (buttonTextColor) {
            root.style.setProperty('--idx-button-text-color', buttonTextColor);
        }
        if (secondaryButtonColor) {
            root.style.setProperty('--idx-secondary-button-color', secondaryButtonColor);
        }
        if (secondaryButtonTextColor) {
            root.style.setProperty('--idx-secondary-button-text-color', secondaryButtonTextColor);
        }
    }
})();

const idxGenerativeFullStepDef = 10;
const idxGenerativeHalfStepDef = 5;

const idxGenerativePrimaryButtonColorObject = tinycolor(idxGenerativePrimaryButtonColor);
const idxGenerativeSecondaryButtonColorObject = tinycolor(idxGenerativeSecondaryButtonColor);
const isPrimaryColorLight = tinycolor(idxGenerativePrimaryColor).isLight();
const isSecondaryColorLight = tinycolor(idxGenerativeSecondaryColor).isLight();



// Update base values in idxGenerativeColorData
const idxGenerativeColorData = {
    primaryColor: idxGenerativePrimaryColor,
    secondaryColor: idxGenerativeSecondaryColor,
    primaryButtonColor: idxGenerativePrimaryButtonColor,
    primaryButtonTextColor: idxGenerativePrimaryButtonTextColor,
    primaryButtonHoverFillColor: idxGenerativePrimaryButtonColorObject.isLight() ? idxGenerativePrimaryButtonColorObject.darken(idxGenerativeFullStepDef).toString() :  idxGenerativePrimaryButtonColorObject.lighten(idxGenerativeFullStepDef).toString(),
    secondaryButtonColor: idxGenerativeSecondaryButtonColor,
    secondaryButtonTextColor: idxGenerativeSecondaryButtonTextColor,
    secondaryButtonHoverFillColor: idxGenerativeSecondaryButtonColorObject.isLight() ? idxGenerativeSecondaryButtonColorObject.darken(idxGenerativeFullStepDef).toString() :  idxGenerativeSecondaryButtonColorObject.lighten(idxGenerativeFullStepDef).toString(),
};

let idxFinalThemeData = {
    finalHeaderBackgroundColor: '',
    finalHeaderContactButtonFill: '',
    finalHeaderContactButtonStroke: '',
    finalHeaderContactButtonText: '',
    finalHeaderContactButtonHover: '',
    finalHeaderPhoneButtonFill: 'transparent',
    finalHeaderPhoneButtonStroke: 'transparent',
    finalHeaderPhoneButtonText: '',
    finalHeaderPhoneButtonHover: 'transparent',
    finalHeaderFlyoutSvgColor: '',
}

updateFinalColors();
finalColorsRenderedIntoDom();


function updateFinalColors() {
    const st = window.selectedTheme;
    const th = {...window.selectedThemeData, ...fontPreviewOverrides};


    idxFinalThemeData['finalBodyImageRadius'] = th.imageRadius;
    idxFinalThemeData['finalHeaderFontFamily'] = th.fontFontHeaderFamily;
    idxFinalThemeData['finalButtonFontFamily'] = th.fontFontButtonFamily;
    idxFinalThemeData['finalHeadingFontFamily'] = th.fontFontHeadingFamily;
    idxFinalThemeData['finalHeroHeadingFontFamily'] = th.fontFontHeroHeadingFamily;
    idxFinalThemeData['finalHeadingSecondaryFontFamily'] = th.fontFontHeadingSecondaryFamily;
    idxFinalThemeData['finalBodyFontFamily'] = th.fontFontPgFamily;
    idxFinalThemeData['finalButtonRadius'] = th.buttonButtonRadius;
    idxFinalThemeData['finalBodySectionPaddingFullscreen'] = '40px';
    idxFinalThemeData['finalBodySectionPaddingResponsive'] = '16px';


    idxFinalThemeData['finalHeaderFontWeight'] = 400;

    idxFinalThemeData['finalHeadingOneLetterSpace'] = th.fontH1H1Letterspace;
    idxFinalThemeData['finalHeadingOneSize'] = th.fontH1H1Size;

    idxFinalThemeData['finalHeadingTwoLetterSpace'] = th.fontH2H2Letterspace;
    idxFinalThemeData['finalHeadingTwoSize'] = th.fontH2H2Size;

    idxFinalThemeData['finalHeadingThreeLetterSpace'] = th.fontH3H3Letterspace;
    idxFinalThemeData['finalHeadingThreeSize'] = th.fontH3H3Size;

    idxFinalThemeData['finalHeadingFourLetterSpace'] = th.fontH4H4Letterspace;
    idxFinalThemeData['finalHeadingFourSize'] = th.fontH4H4Size;

    idxFinalThemeData['finalHeadingFiveLetterSpace'] = th.fontH5H5Letterspace;
    idxFinalThemeData['finalHeadingFiveSize'] = th.fontH5H5Size;

    idxFinalThemeData['finalHeadingSixLetterSpace'] = th.fontH6H6Letterspace;
    idxFinalThemeData['finalHeadingSixSize'] = th.fontH6H6Size;

    idxFinalThemeData['finalButtonFontSize'] = th.fontFontButtonSize;


    idxFinalThemeData['finalHeadingAdornmentVisibility'] = th.isHasAdornmentInLayout ? 'block' : 'none';


    // start by inecting what we think the colors are.
    idxFinalThemeData['finalBodyBorderSize'] = '0px';
    idxFinalThemeData['finalHeaderBackgroundColor'] = idxGenerativeColorData['secondaryColor'];
    idxFinalThemeData['finalHeaderBorderColor'] = idxGenerativeColorData['secondaryColor'];
    idxFinalThemeData['finalHeaderContactButtonFill'] = idxGenerativeColorData['secondaryButtonColor'];
    idxFinalThemeData['finalHeaderContactButtonStroke'] = idxGenerativeColorData['secondaryButtonTextColor'];
    idxFinalThemeData['finalHeaderContactButtonText'] = idxGenerativeColorData['secondaryButtonTextColor'];
    idxFinalThemeData['finalHeaderContactButtonBorderRadius'] = th.buttonButtonRadius;
    idxFinalThemeData['finalHeaderContactButtonStrokeWidth'] = '1px';
    idxFinalThemeData['finalHeaderContactButtonHover'] = idxGenerativeColorData['secondaryButtonHoverFillColor'];
    idxFinalThemeData['finalHeaderPhoneButtonText'] = idxGenerativeColorData['secondaryButtonTextColor'];
    idxFinalThemeData['finalHeaderFlyoutSvgColor'] = tinycolor(idxGenerativeColorData['secondaryColor']).isDark() ? '#FFFFFF' : '#14222e';
    idxFinalThemeData['finalHeaderFlyoutSvgTopOffset'] = '26px';
    // start note: this are not used in SG
    idxFinalThemeData['finalHeaderMiddleButtonsTextColor'] = (isSecondaryColorLight ? '#384250' : '#FFFFFF');
    idxFinalThemeData['finalHeaderMiddleButtonsAdornmentColor'] = idxGenerativeColorData['primaryColor'];
    idxFinalThemeData['finalHeaderSvgLogoColor'] = idxGenerativeColorData['primaryColor'];
    idxFinalThemeData['finalHeaderMiddleButtonsTextShadowVal'] = isSecondaryColorLight ? 255 : 0;
    // end note: this are not used in SG
    // start: configure menu mode using css
    idxFinalThemeData['finalHeaderFlyoutSvgDisplay'] = (th.headerConfigStyle == 'flyOutPersistsFullScreen' ? 'block': 'none');
    idxFinalThemeData['finalHeaderFlyoutSpacerDisplay'] = (th.headerConfigStyle == 'flyOutPersistsFullScreen' ? 'block': 'none');
    idxFinalThemeData['finalHeaderMiddleLinksDisplay'] = (th.headerConfigStyle == 'flyOutPersistsFullScreen' ? 'none': 'flex');
    // end: configure menu mode using css
    // start: configuration for hero unit
    idxFinalThemeData['finalHeroClipPathTop'] = '0px';
    idxFinalThemeData['finalHeroClipPathBottom'] = '0px';
    idxFinalThemeData['finalHeroClipPathBorder'] = '0px';
    idxFinalThemeData['finalHeroClipPathBorderRadius'] = '0px';
    idxFinalThemeData['finalHeroMaskAlphaValue'] = '0';
    idxFinalThemeData['finalHeroMaskAlphaEndValue'] = '0';
    idxFinalThemeData['finalHeroContentMargin'] = '20px';
    idxFinalThemeData['finalHeroContentFormJustification'] = 'left';
    idxFinalThemeData['finalHeroContentVideoMaxWidth'] = '1200px';
    idxFinalThemeData['finalHeroContentVideoWidthOffset'] = '0px';
    idxFinalThemeData['finalHeroSearchButtonFill'] = idxGenerativeColorData['primaryButtonColor'];
    idxFinalThemeData['finalHeroSearchButtonStroke'] = idxGenerativeColorData['primaryButtonColor'];
    idxFinalThemeData['finalHeroSearchButtonText'] = idxGenerativeColorData['primaryButtonTextColor'];
    idxFinalThemeData['finalHeroSearchButtonHover'] = idxGenerativeColorData['primaryButtonHoverFillColor'];
    // end: configuration for hero unit


    idxFinalThemeData['finalFooterBackgroundColorStyleOne'] = th.footerBackgroundColorStyle1;
    idxFinalThemeData['finalFooterBackgroundColorStyleTwo'] = th.footerBackgroundColorStyle2;
    idxFinalThemeData['finalFooterTextColorStyleOne'] = th.footerTextColorStyle1;
    idxFinalThemeData['finalFooterTextColorStyleTwo'] = th.footerTextColorStyle2;
    let finalFooterSocialBackgroundColor = th.socialBackgroundColorStyle1;
    let finalFooterSocialBackgroundColorObject = tinycolor(th.socialBackgroundColorStyle1);
    idxFinalThemeData['finalFooterSocialBackgroundColor'] = th.socialBackgroundColorStyle1;
    idxFinalThemeData['finalFooterSocialIconColor'] = th.socialIconColorStyle1;
    idxFinalThemeData['finalFooterSocialHoverColor'] = finalFooterSocialBackgroundColorObject.isLight() ? finalFooterSocialBackgroundColorObject.darken(idxGenerativeFullStepDef).toString() :  finalFooterSocialBackgroundColorObject.lighten(idxGenerativeFullStepDef).toString();

    idxFinalThemeData['finalFooterBorderColor'] = idxGenerativeColorData['secondaryColor'];

    idxFinalThemeData['finalHeadingTextColor'] = isSecondaryColorLight ? '#384250' : '#FFFF';
    idxFinalThemeData['finalBodyTextColor'] = isSecondaryColorLight ? '#4D5761' : '#FFFF';
    idxFinalThemeData['finalBodyBackgroundColor'] = idxGenerativeSecondaryColor;


    let finalBodySocialBackgroundColor = th.socialBackgroundColorStyle2;
    let finalBodySocialBackgroundColorObject = tinycolor(th.socialBackgroundColorStyle2);
    idxFinalThemeData['finalBodySocialBackgroundColor'] = th.socialBackgroundColorStyle2;
    idxFinalThemeData['finalBodySocialIconColor'] = th.socialIconColorStyle2;
    idxFinalThemeData['finalBodySocialHoverColor'] = finalBodySocialBackgroundColorObject.isLight() ? finalBodySocialBackgroundColorObject.darken(idxGenerativeFullStepDef).toString() :  finalBodySocialBackgroundColorObject.lighten(idxGenerativeFullStepDef).toString();


    idxFinalThemeData['finalBodyButtonFill'] = idxGenerativeColorData['secondaryButtonColor'];
    idxFinalThemeData['finalBodyButtonStroke'] = idxGenerativeColorData['secondaryButtonTextColor'];
    idxFinalThemeData['finalBodyButtonText'] = idxGenerativeColorData['secondaryButtonTextColor'];
    idxFinalThemeData['finalBodyButtonBorderRadius'] = th.buttonButtonRadius;
    idxFinalThemeData['finalBodyButtonStrokeWidth'] = '1px';
    idxFinalThemeData['finalBodyButtonHover'] = idxGenerativeColorData['secondaryButtonHoverFillColor'];

    idxFinalThemeData['finalContactFormBackgroundForAlpha'] = isSecondaryColorLight ? 0 : 255;
    idxFinalThemeData['finalContactFormBackgroundAlpha'] = isSecondaryColorLight ? .03 : .1;
    // a static definition accross all themes for certian elements that need to be readable.
    idxFinalThemeData['finalReadableWrapperFontFamily'] = 'Wix Madefor Text';

     if (st == 3){
        idxFinalThemeData['finalHeaderBackgroundColor'] = idxGenerativeColorData['primaryColor'];
        idxFinalThemeData['finalHeaderFlyoutSvgColor'] = tinycolor(idxGenerativeColorData['primaryColor']).isDark() ? '#FFFFFF' : '#14222e';
        idxFinalThemeData['finalHeroMaskAlphaValue'] = '1';
        idxFinalThemeData['finalHeroMaskAlphaEndValue'] = '1';
        idxFinalThemeData['finalBodyBorderSize'] = '20px';
        idxFinalThemeData['finalHeaderFlyoutSvgTopOffset'] = '46px';
        idxFinalThemeData['finalHeroContentVideoMaxWidth'] = '1160px';
        idxFinalThemeData['finalHeroContentVideoWidthOffset'] = '40px';
        idxFinalThemeData['finalHeroClipPathBorder'] = '20px';
        idxFinalThemeData['finalHeaderContactButtonFill'] = idxGenerativeColorData['primaryButtonColor'];
        idxFinalThemeData['finalHeaderContactButtonStroke'] = idxGenerativeColorData['primaryButtonTextColor'];
        idxFinalThemeData['finalHeaderContactButtonText'] = idxGenerativeColorData['primaryButtonTextColor'];
        idxFinalThemeData['finalHeaderContactButtonHover'] = idxGenerativeColorData['primaryButtonHoverFillColor'];
        idxFinalThemeData['finalHeaderPhoneButtonText'] = idxGenerativeColorData['primaryButtonTextColor'];
        idxFinalThemeData['finalHeaderSvgLogoColor'] = idxGenerativeColorData['secondaryColor'];
        idxFinalThemeData['finalHeaderFontWeight'] = 400;
        //idxFinalThemeData['finalHeaderContactButtonFill'] = 'transparent';
    }
    if (st == 2){
        //idxFinalThemeData['finalHeaderContactButtonFill'] = 'transparent';
        idxFinalThemeData['finalHeroMaskAlphaValue'] = '1';
        idxFinalThemeData['finalHeroContentVideoMaxWidth'] = '1200px';
        idxFinalThemeData['finalHeaderContactButtonFill'] = 'transparent';
        idxFinalThemeData['finalHeaderFontWeight'] = 500;
    }
    if (st == 1){
        idxFinalThemeData['finalHeaderFontWeight'] = 700;
        idxFinalThemeData['finalHeaderContactButtonStrokeWidth'] = '0px';
        idxFinalThemeData['finalHeroClipPath'] = 'inset(100px 40px 0px 40px round 20px)';
        idxFinalThemeData['finalHeroClipPathTop'] = '100px';
        idxFinalThemeData['finalHeroClipPathBottom'] = '50px';
        idxFinalThemeData['finalHeroClipPathBorder'] = '20px';
        idxFinalThemeData['finalHeroClipPathBorderRadius'] = '20px';
        idxFinalThemeData['finalHeroContentMargin'] = '0 auto';
        idxFinalThemeData['finalHeroContentFormJustification'] = 'center';
        idxFinalThemeData['finalHeaderContactButtonText'] = idxGenerativeColorData['primaryButtonTextColor'];
        idxFinalThemeData['finalHeroSearchButtonText'] = idxGenerativeColorData['primaryButtonTextColor'];

        idxFinalThemeData['finalHeaderContactButtonFill'] = idxGenerativeColorData['primaryButtonColor'];
        idxFinalThemeData['finalHeaderContactButtonStroke'] = idxGenerativeColorData['primaryButtonTextColor'];
        idxFinalThemeData['finalHeaderContactButtonText'] = idxGenerativeColorData['primaryButtonTextColor'];
        idxFinalThemeData['finalHeaderContactButtonHover'] = idxGenerativeColorData['primaryButtonHoverFillColor'];
        idxFinalThemeData['finalHeaderPhoneButtonText'] = (isSecondaryColorLight ? '#384250' : '#FFFFFF');

        finalFooterSocialBackgroundColor = th.socialBackgroundColorStyle2;

        finalFooterSocialBackgroundColorObject = tinycolor(th.socialBackgroundColorStyle2);
        idxFinalThemeData['finalFooterSocialBackgroundColor'] = th.socialBackgroundColorStyle2;
        idxFinalThemeData['finalFooterSocialIconColor'] = th.socialIconColorStyle2;
        idxFinalThemeData['finalFooterSocialHoverColor'] = finalFooterSocialBackgroundColorObject.isLight() ? finalFooterSocialBackgroundColorObject.darken(idxGenerativeFullStepDef).toString() :  finalFooterSocialBackgroundColorObject.lighten(idxGenerativeFullStepDef).toString();
        // idxFinalThemeData['finalHeroMaskAlphaValue'] = 1;
        // idxFinalThemeData['finalHeroMaskAlphaEndValue'] = 0;
    }
    const isFinalHeaderBackgroundColorLight = tinycolor(idxFinalThemeData['finalHeaderBackgroundColor']).isLight();
    idxFinalThemeData['finalHeaderFlyoutTextColor'] = (isFinalHeaderBackgroundColorLight ? '#384250' : '#FFFFFF');
    idxFinalThemeData['finalHeaderUserUploadedLightLogoDisplay'] = isFinalHeaderBackgroundColorLight ? 'none' : 'block';
    idxFinalThemeData['finalHeaderUserUploadedDarkLogoDisplay'] = isFinalHeaderBackgroundColorLight ? 'block' : 'none';

    const isFinalFooterBackgroundColorLight = finalFooterSocialBackgroundColorObject.isLight();
    idxFinalThemeData['finalFooterUserUploadedLightLogoDisplay'] = isFinalFooterBackgroundColorLight ? 'none' : 'block';
    idxFinalThemeData['finalFooterUserUploadedDarkLogoDisplay'] = isFinalFooterBackgroundColorLight ? 'block' : 'none';

    // see if theme settings match color selections.
    if (
        th.brandColorPrimary == idxGenerativePrimaryColor &&
        th.brandColorSecondary == idxGenerativeSecondaryColor &&
        th.buttonPrimaryButtonPrimaryFill == idxGenerativePrimaryButtonColor &&
        th.buttonPrimaryButtonPrimaryStroke == idxGenerativePrimaryButtonTextColor &&
        th.buttonSecondaryButtonSecondaryFill == idxGenerativeSecondaryButtonColor &&
        th.buttonSecondaryButtonSecondaryStroke == idxGenerativeSecondaryButtonTextColor
    ) {
        if (st == 3){
            idxFinalThemeData['finalHeaderContactButtonFill'] = 'transparent';
        }
        if (st == 2){
            idxFinalThemeData['finalHeaderContactButtonFill'] = 'transparent';

        }
        if (st == 1){

        }
    }

}


function replaceKebab(keyVal){
    return keyVal.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
}


function finalColorsRenderedIntoDom() {
    /////////////////////////////////////
    // Start: Injection for final      //
    /////////////////////////////////////

    // Initialize the CSS string for :root
    let cssString = `:root {\n`;

    // Loop over idxGenerativeColorData to construct CSS variables dynamically
    for (const [key, value] of Object.entries(idxFinalThemeData)) {
        // Convert camelCase keys to kebab-case
        const kebabKey = replaceKebab(key);

        // Append each key-value pair as a CSS variable with the --idx-generative-output- prefix
        cssString += `    --idx-${kebabKey}: ${value};\n`;
    }

    // Close the CSS string
    cssString += `}`;

    // Get the script tag with the id "generative-colors-rendered-into-dom"
    const scriptTag = document.getElementById('final-colors-rendered-into-dom');

    // Inject the CSS into the script tag
    scriptTag.textContent = cssString;
    /////////////////////////////////////
    // End: Injection for generative //
    ////////////////////////////////////
}
</script>



<link rel="stylesheet" href="/graphical/frontend/themes/2024/css/styles_base.css">

<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link type="text/css" rel="stylesheet" href="https://irp.cdn-website.com/fonts/css2?family=Tenor+Sans:ital,wght@0,400&family=Amiko:ital,wght@0,400;0,600;0,700&family=Alegreya:ital,wght@0,400..900;1,400..900&family=Amiri:ital,wght@0,400;0,700;1,400;1,700&family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Bebas+Neue:ital,wght@0,400&family=Be+Vietnam:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;0,800;0,900&family=Comfortaa:ital,wght@0,300..700;1,300..700&family=Dancing+Script:ital,wght@0,400..700;1,400..700&family=DM+Sans:ital,wght@0,100..1000;1,100..1000&family=DM+Serif+Display:ital,wght@0,400;1,400&family=Droid+Sans:ital,wght@0,400;0,700&family=Droid+Sans+Mono:ital,wght@0,400&family=Droid+Serif:ital,wght@0,400;0,700&family=Epilogue:ital,wght@0,100..900;1,100..900&family=Fjalla+One:ital,wght@0,400&family=Heebo:ital,wght@0,100..900;1,100..900&family=Inter:ital,wght@0,100..900;1,100..900&family=Jost:ital,wght@0,100..900;1,100..900&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Lora:ital,wght@0,400..700;1,400..700&family=Merriweather:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Muli:ital,wght@0,200;0,300;0,400;0,600;0,700;0,800;0,900&amp;subset=latin-ext&amp;display=swap"  />
<link type="text/css" rel="stylesheet" href="https://irp.cdn-website.com/fonts/css2?family=Noto+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&family=Nunito+Sans:ital,wght@0,200..1000;1,200..1000&family=Old+Standard+TT:ital,wght@0,400;0,700;1,400&family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Oswald:ital,wght@0,200..700;1,200..700&family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Petit+Formal+Script:ital,wght@0,400&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Prata:ital,wght@0,400&family=Prompt:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&family=Quicksand:ital,wght@0,300..700;1,300..700&family=Raleway:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Roboto+Mono:ital,wght@0,100..700;1,100..700&family=Roboto+Slab:ital,wght@0,100..900;1,100..900&family=Rubik:ital,wght@0,300..900;1,300..900&family=Rock+Salt:ital,wght@0,400&family=Shadows+Into+Light:ital,wght@0,400&family=Slabo+27px:ital,wght@0,400&family=Source+Sans+Pro:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700;1,900&family=Spartan:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;0,800;0,900&family=Sulphur+Point:ital,wght@0,300;0,400;0,700&amp;subset=latin-ext&amp;display=swap"  />
<link type="text/css" rel="stylesheet" href="https://irp.cdn-website.com/fonts/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Vidaloka:ital,wght@0,400&family=Work+Sans:ital,wght@0,100..900;1,100..900&family=Yeseva+One:ital,wght@0,400&family=Mulish:ital,wght@0,200..1000;1,200..1000&family=Red+Rose:ital,wght@0,300..700;1,300..700&family=Abril+Fatface:ital,wght@0,400&family=Fraunces:ital,wght@0,100..900;1,100..900&amp;subset=latin-ext&amp;display=swap"  />
<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Wix+Madefor+Text:ital,wght@0,400..800;1,400..800&display=swap" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Jomolhari&display=swap" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Niconne&display=swap" rel="stylesheet">



<script>
    document.addEventListener("DOMContentLoaded", function () {
        // only show the last elements with this class
        const displayOnceDisplayLastElements = document.getElementsByClassName('display-once-display-last');
        Array.from(displayOnceDisplayLastElements).forEach((el, index) => {
            el.style.display = index === displayOnceDisplayLastElements.length - 1 ? 'block' : 'none';
        });

        // Show fade-in elements as they are inside the viewport
        // Helps to prevent partially-loaded elements from causing problems
        const elements = document.querySelectorAll(".fade-in");
        elements.forEach(element => {
            const elementHeight = element.getBoundingClientRect().height;
            const viewportHeight = window.innerHeight;

            // Large elements can break the logic here so set the threshold to the minimum
            const safeThreshold = elementHeight > viewportHeight ? 0 : 0.1;

            const observer = new IntersectionObserver((entries, observer) => {
                entries.forEach(entry => {
                    if (entry.isIntersecting) {
                        entry.target.classList.add("visible");
                        observer.unobserve(entry.target);
                    }
                });
            }, {
                threshold: safeThreshold
            });

            observer.observe(element);
        });

        // hack for photo gallery
        const photoGalleryElement = document.querySelector('.IDX-type-photogallery');

        if (photoGalleryElement) {
            // Find the element with class wrapper-content fade-in
            const wrapperContent = document.querySelector('.wrapper-content.fade-in');

            // If such element exists, add the class visible to it
            if (wrapperContent) {
                wrapperContent.classList.add('visible');
            }
        }

        // JavaScript to handle scroll-based background color change
        const header = document.getElementById('header');
        function handleScroll() {
            const scrollPosition = window.scrollY || document.documentElement.scrollTop;

            if (scrollPosition > 20) {
                // Only toggle transparent style so that we can use native css background color injected
                header.style = '';
            } else {
                header.style.backgroundColor = 'transparent';
            }
        }
                    header.style.backgroundColor = 'transparent';
            // Listen to scroll events
            window.addEventListener('scroll', handleScroll);
                //disable scroll on body when menu is open
        document.getElementById('checkbox1').addEventListener('change', function() {
            document.body.style.overflowY = this.checked ? 'hidden' : 'auto';
        });
        // highlight active navigation links dynamically
        const secondaryNavigationTopMain = document.getElementById('idx-secondary-navigation-top-main');
        if (secondaryNavigationTopMain) {
            // Get current page path (without query params)
            const currentPath = window.location.pathname;
            
            // Special case: if pathname is "/" or empty, select the home link
            if (currentPath === '/' || currentPath === '') {
                const homeLink = secondaryNavigationTopMain.querySelector('#idx-top-main-home');
                if (homeLink) {
                    homeLink.classList.add('is-page-active');
                }
            } else {
                // Helper function to extract path from href (handles both relative and absolute URLs)
                function getPathFromHref(href) {
                    if (!href || href === '#') return null;
                    try {
                        // If it's an absolute URL, parse it
                        if (href.startsWith('http://') || href.startsWith('https://')) {
                            const url = new URL(href);
                            return url.pathname;
                        }
                        // If it's a relative URL, extract path before query params
                        return href.split('?')[0];
                    } catch (e) {
                        // If URL parsing fails, just split on ?
                        return href.split('?')[0];
                    }
                }
                
                // Helper function to compare paths (normalize trailing slashes)
                function pathsMatch(path1, path2) {
                    if (!path1 || !path2) return false;
                    const normalized1 = path1.replace(/\/$/, '') || '/';
                    const normalized2 = path2.replace(/\/$/, '') || '/';
                    return normalized1 === normalized2;
                }
                
                let matchFound = false;
                
                // Pass 1: Check all top-level links
                const topLevelLinks = secondaryNavigationTopMain.querySelectorAll('ul.nav-links-text > li[role="menuitem"] > a');
                topLevelLinks.forEach(link => {
                    const hrefPath = getPathFromHref(link.getAttribute('href'));
                    if (hrefPath && pathsMatch(currentPath, hrefPath)) {
                        link.classList.add('is-page-active');
                        matchFound = true;
                    }
                });
                
                // Pass 2: If no match found, check subItems
                if (!matchFound) {
                    const allSubItems = secondaryNavigationTopMain.querySelectorAll('ul.dropdown-top-menu a');
                    allSubItems.forEach(subItemLink => {
                        const hrefPath = getPathFromHref(subItemLink.getAttribute('href'));
                        if (hrefPath && pathsMatch(currentPath, hrefPath)) {
                            // Find the parent <li class="nav-item-top-menu"> and get its <a> child
                            const parentListItem = subItemLink.closest('li.nav-item-top-menu');
                            if (parentListItem) {
                                // Get the direct child <a> element
                                const parentLink = Array.from(parentListItem.children).find(child => child.tagName === 'A');
                                if (parentLink) {
                                    parentLink.classList.add('is-page-active');
                                }
                            }
                        }
                    });
                }
            }
        }
    });
    
    // Preserve and re-write URL parameters when idxPreview=true
    (function() {
        if (urlParams.get('idxPreview') !== 'true') {
            return; // Exit if idxPreview is not true
        }

        // Get all current query parameters
        const currentParams = new URLSearchParams(window.location.search);
        
        // Helper function to merge query parameters with destination URL
        function mergeQueryParams(destinationUrl) {
            if (!destinationUrl || destinationUrl === '#' || destinationUrl.startsWith('javascript:') || 
                destinationUrl.startsWith('mailto:') || destinationUrl.startsWith('tel:')) {
                return destinationUrl;
            }

            try {
                // Parse destination URL
                let url;
                if (destinationUrl.startsWith('http://') || destinationUrl.startsWith('https://')) {
                    url = new URL(destinationUrl);
                } else if (destinationUrl.startsWith('//')) {
                    url = new URL(window.location.protocol + destinationUrl);
                } else {
                    // Relative URL
                    url = new URL(destinationUrl, window.location.origin);
                }

                // Merge current query parameters with destination URL parameters
                const destParams = new URLSearchParams(url.search);
            
                // Add all current parameters to destination (current params take precedence)
                currentParams.forEach((value, key) => {
                    destParams.set(key, value);
                });

                // Reconstruct URL with merged parameters
                url.search = destParams.toString();
                
                // Preserve hash if it exists in original destination
                const hashMatch = destinationUrl.match(/#.*$/);
                if (hashMatch) {
                    return url.toString() + hashMatch[0];
                }
                
                return url.toString();
            } catch (e) {
                // If URL parsing fails, return original URL, ok to keep in prod.
                console.error('Error merging query params:', e);
                return destinationUrl;
            }
        }

        // Intercept link clicks
        document.addEventListener('click', function(e) {
            const link = e.target.closest('a');
            if (!link) {
                return;
            }

            const href = link.getAttribute('href');
            if (!href || href === '#' || href.startsWith('javascript:') || 
                href.startsWith('mailto:') || href.startsWith('tel:')) {
                return;
            }

            // Check if it's an external link (different domain)
            try {
                const linkUrl = href.startsWith('http://') || href.startsWith('https://') 
                    ? new URL(href) 
                    : new URL(href, window.location.origin);
                
                // If external link, still preserve params but don't prevent default for target="_blank"
                if (linkUrl.origin !== window.location.origin) {
                    if (link.target === '_blank') {
                        // For external links with target="_blank", update href but let it open normally
                        link.href = mergeQueryParams(href);
                        return;
                    }
                }
            } catch (e) {
                // If URL parsing fails, continue with interception
            }

            // Prevent default navigation
            e.preventDefault();
            
            // Merge query parameters and navigate
            const newUrl = mergeQueryParams(href);
            window.location.href = newUrl;
        }, true); // Use capture phase

        // Intercept JavaScript navigation - window.location.href
        // Note: Direct assignment to window.location.href is handled via assign/replace overrides
        // Direct assignment like window.location.href = 'url' will use the native setter
        // which we can't easily override, but assign() and replace() will work

        // Intercept window.location.assign()
        const originalAssign = window.location.assign;
        window.location.assign = function(url) {
            const mergedUrl = mergeQueryParams(url);
            return originalAssign.call(window.location, mergedUrl);
        };

        // Intercept window.location.replace()
        const originalReplace = window.location.replace;
        window.location.replace = function(url) {
            const mergedUrl = mergeQueryParams(url);
            return originalReplace.call(window.location, mergedUrl);
        };

        // Intercept history.pushState()
        const originalPushState = history.pushState;
        history.pushState = function(state, title, url) {
            if (url) {
                const mergedUrl = mergeQueryParams(url);
                return originalPushState.call(history, state, title, mergedUrl);
            }
            return originalPushState.call(history, state, title, url);
        };

        // Intercept history.replaceState()
        const originalReplaceState = history.replaceState;
        history.replaceState = function(state, title, url) {
            if (url) {
                const mergedUrl = mergeQueryParams(url);
                return originalReplaceState.call(history, state, title, mergedUrl);
            }
            return originalReplaceState.call(history, state, title, url);
        };
    })();

</script>
</head>
<body>
    <!-- start: Side Menu -->
    <input type="checkbox" id="checkbox1" class="checkbox1 visuallyHidden" aria-hidden="true">
    <label for="checkbox1" class="hamburger-label" aria-label="Toggle navigation menu">
        <div class="hamburger hamburger1" role="button" aria-controls="flyout-menu" aria-expanded="false">
            <span class="bar bar1"></span>
            <span class="bar bar2"></span>
            <span class="bar bar3"></span>
            <span class="bar bar4"></span>
        </div>
    </label>

    <div class="flyout-menu" id="flyout-menu" aria-hidden="true" role="navigation">
        <div class="menu-content">
            <ul>
                                                            <li>
                            <a href="/home" 
                               aria-label="Home Page" 
                               id="idx-flyout-main-home"
                                                           >Home</a>
                        </li>
                                                                                                        <li>
                            <a href="/about" 
                               aria-label="About Us" 
                               id="idx-flyout-main-about"
                                                           >About</a>
                        </li>
                                                                                                                                                                                    <li>
                                        <a href="/blog"
                                           aria-label="Blog"
                                           id="idx-flyout-main-blog"
                                           class="indendented-link"
                                                                                   >Blog</a>
                                    </li>
                                                                                                                                                                    <li>
                            <a href="/idx/map/mapsearch" 
                               aria-label="Search Properties" 
                               id="idx-flyout-main-search"
                                                           >Search</a>
                        </li>
                                                                                                                                                                                    </ul>
            <div class="contact-info-menu" aria-labelledby="contact-info">
                
 
 <style>
    .nav-links.nav-links-logo .logo-text, .contact-info-menu .logo-text {
        color: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .nav-links.nav-links-logo svg path, .contact-info-menu svg path {
        fill: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .footer-logo svg path {
        fill: var(--idx-final-footer-text-color-style-one, #FFFFFF);
    }
    img.user-uploded-logo {
        max-width: 110px;      
        max-height: 60px;     
        width: auto;          
        height: auto;        
        object-fit: contain;  
    }
    .user-logo-container {
        max-width: 110px;      
        max-height: 60px;
        min-width: 110px;      
        min-height: 60px;
        width: 110px;      
        height: 60px;
        display: flex;
        justify-content: center;  
        align-items: center; 
    }
    .nav-links .user-uploaded-light-logo, .contact-info-menu .user-uploaded-light-logo{
        display: var(--idx-final-header-user-uploaded-light-logo-display, 'block');
    }
    .nav-links .user-uploaded-dark-logo, .contact-info-menu .user-uploaded-dark-logo{
        display: var(--idx-final-header-user-uploaded-dark-logo-display, 'block');
    }
    .footer-logo .user-uploaded-light-logo {
        display: var(--idx-final-footer-user-uploaded-light-logo-display, 'block');
    }
    .footer-logo .user-uploaded-dark-logo {
        display: var(--idx-final-footer-user-uploaded-dark-logo-display, 'block');
    }
    #sample-logo-image {
        margin-top: 10px;
    }
    @media (max-width: 768px) {
        #sample-logo-image {
            margin-top: 0px;
        }
    }
    
</style>
<div>       
                            <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-dark-logo.jpg?1754323459" aria-labelledby="Dark logo" class="user-uploded-logo user-uploaded-light-logo" width="110"/>
                                        <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-light-logo.jpg?1754323473" aria-labelledby="Dark logo" class="user-uploaded-logo user-uploaded-dark-logo" width="110"/>
                </div>

                <p id="contact-info">910-443-0398</p>
                <p>bonnie@bonnierotundo.com</p>
            </div>
             <style>
    .social-icons {
        display: flex;
        gap: 7.5px;
        margin-bottom: 10px;
        margin-top: 10px;
        float: right;
    }

    .about-section .social-icons {
        float: right;
    }

    .social-icons .icon img {
        width: 20px;
        height: 20px;
    }

    .social-icons .icon {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background-color: var(--idx-final-body-social-background-color, #e0e0e0);
        color: var(--idx-final-body-social-icon-color, #000000);
        transition: background-color 0.3s ease;
        filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.5));
    }

    .social-icons svg path {
        fill: var(--idx-final-body-social-icon-color, #000000); /* Set the fill color to red */
    }

    .social-icons .icon:hover {
        background-color: var(--idx-final-body-social-hover-color, #ccc); /* Slightly darker gray on hover */
    }

    /* footer overrides */
    .footer-content .social-icons .icon {
        background-color: var(--idx-final-body-social-background-color, #e0e0e0);
        color: var(--idx-final-body-social-icon-color, #000000);
    }

    .footer-content .social-icons svg path {
        fill: var(--idx-final-body-social-icon-color, #000000); /* Set the fill color to red */
    }

    .footer-content .social-icons .icon:hover {
        background-color: var(--idx-final-body-social-hover-color, #ccc); /* Slightly darker gray on hover */
    }

     /* menu overrides */
    .menu-content .social-icons .icon {
        background-color: #1f2a37;
        color: #FFFFFF;
    }

    .menu-content .social-icons svg path {
        fill: #FFFFFF; /* Set the fill color to red */
    }

    .menu-content .social-icons .icon:hover {
        background-color: #314358; /* Slightly darker gray on hover */
    }
    @media (max-width: 768px) {
        .about-section .social-icons {
            float: left;
        }
    }


</style>

<div class="social-icons">
            <a href="https://www.facebook.com/pg/coastalrealestateconsultants/" target="_blank" class="icon">
            <!-- Facebook SVG here -->
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
                <g clip-path="url(#clip0_323_4453)">
                <path d="M13.1203 3.82002H15.0003V0.64003C14.0901 0.545377 13.1755 0.498646 12.2603 0.50003C9.54034 0.50003 7.68035 2.16003 7.68035 5.20002V7.82002H4.61035V11.38H7.68035V20.5H11.3603V11.38H14.4203L14.8803 7.82002H11.3603V5.55002C11.3603 4.50002 11.6403 3.82002 13.1203 3.82002Z" fill="#1F2A37"/>
                </g>
                <defs>
                <clipPath id="clip0_323_4453">
                <rect width="20" height="20" fill="white" transform="translate(0 0.5)"/>
                </clipPath>
                </defs>
            </svg>
        </a>
    
            <a href="https://www.instagram.com/bonnierotundorealestate" target="_blank" class="icon">
            <!-- Instagram SVG here -->
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M11.5048 6.6094C8.52353 6.6094 6.11884 9.01408 6.11884 11.9953C6.11884 14.9766 8.52353 17.3813 11.5048 17.3813C14.486 17.3813 16.8907 14.9766 16.8907 11.9953C16.8907 9.01408 14.486 6.6094 11.5048 6.6094ZM11.5048 15.4969C9.57822 15.4969 8.00322 13.9266 8.00322 11.9953C8.00322 10.0641 9.57353 8.49377 11.5048 8.49377C13.436 8.49377 15.0063 10.0641 15.0063 11.9953C15.0063 13.9266 13.4313 15.4969 11.5048 15.4969ZM18.3673 6.38908C18.3673 7.08752 17.8048 7.64533 17.111 7.64533C16.4126 7.64533 15.8548 7.08283 15.8548 6.38908C15.8548 5.69533 16.4173 5.13283 17.111 5.13283C17.8048 5.13283 18.3673 5.69533 18.3673 6.38908ZM21.9345 7.66408C21.8548 5.98127 21.4704 4.49065 20.2376 3.26252C19.0095 2.0344 17.5188 1.65002 15.836 1.56565C14.1016 1.46721 8.90322 1.46721 7.16884 1.56565C5.49072 1.64534 4.0001 2.02971 2.76728 3.25784C1.53447 4.48596 1.15479 5.97658 1.07041 7.6594C0.971973 9.39377 0.971973 14.5922 1.07041 16.3266C1.1501 18.0094 1.53447 19.5 2.76728 20.7281C4.0001 21.9563 5.48603 22.3406 7.16884 22.425C8.90322 22.5235 14.1016 22.5235 15.836 22.425C17.5188 22.3453 19.0095 21.961 20.2376 20.7281C21.4657 19.5 21.8501 18.0094 21.9345 16.3266C22.0329 14.5922 22.0329 9.39846 21.9345 7.66408ZM19.6938 18.1875C19.3282 19.1063 18.6204 19.8141 17.697 20.1844C16.3141 20.7328 13.0329 20.6063 11.5048 20.6063C9.97665 20.6063 6.69072 20.7281 5.31259 20.1844C4.39384 19.8188 3.68603 19.111 3.31572 18.1875C2.76728 16.8047 2.89385 13.5235 2.89385 11.9953C2.89385 10.4672 2.77197 7.18127 3.31572 5.80315C3.68135 4.8844 4.38916 4.17659 5.31259 3.80627C6.69541 3.25784 9.97665 3.3844 11.5048 3.3844C13.0329 3.3844 16.3188 3.26252 17.697 3.80627C18.6157 4.1719 19.3235 4.87971 19.6938 5.80315C20.2423 7.18596 20.1157 10.4672 20.1157 11.9953C20.1157 13.5235 20.2423 16.8094 19.6938 18.1875Z" fill="black"/>
            </svg>
        </a>
    
            <a href="https://twitter.com/BonnieRotundo" target="_blank" class="icon">
            <!-- Twitter SVG here -->
            <svg width="20" height="21" viewBox="0 0 1200 1227" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z" fill="black"/>
            </svg>
        </a>
    
            <a href="https://www.youtube.com/@user/bonnierotundo/videos" target="_blank" class="icon">
            <!-- YouTube SVG here -->
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
                <path d="M19.1669 8.5919C19.2081 7.39911 18.9472 6.21525 18.4085 5.15023C18.043 4.71323 17.5358 4.41832 16.9752 4.3169C14.6565 4.1065 12.3281 4.02027 10.0002 4.05856C7.68072 4.01853 5.36078 4.10198 3.05019 4.30856C2.59337 4.39166 2.17062 4.60593 1.83352 4.92523C1.08352 5.6169 1.00019 6.80023 0.916852 7.80023C0.795945 9.5982 0.795945 11.4023 0.916852 13.2002C0.94096 13.7631 1.02476 14.3218 1.16685 14.8669C1.26733 15.2878 1.47062 15.6772 1.75852 16.0002C2.09791 16.3364 2.53051 16.5629 3.00019 16.6502C4.79678 16.872 6.60703 16.9639 8.41685 16.9252C11.3335 16.9669 13.8919 16.9252 16.9169 16.6919C17.3981 16.6099 17.8428 16.3832 18.1919 16.0419C18.4252 15.8085 18.5994 15.5228 18.7002 15.2086C18.9982 14.2941 19.1446 13.337 19.1335 12.3752C19.1669 11.9086 19.1669 9.0919 19.1669 8.5919ZM8.11685 12.8752V7.7169L13.0502 10.3086C11.6669 11.0752 9.84185 11.9419 8.11685 12.8752Z" fill="#1F2A37"/>
            </svg>
        </a>
    </div>




        </div>
    </div>
    <!-- end: Side Menu -->

    <header class="header" id="header" aria-label="Main Header">
        <div class="nav-spacer"></div>
        <nav aria-label="Main Navigation">
            <ul class="nav-links nav-links-logo" role="menubar">
                <li role="menuitem">
                    
 
 <style>
    .nav-links.nav-links-logo .logo-text, .contact-info-menu .logo-text {
        color: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .nav-links.nav-links-logo svg path, .contact-info-menu svg path {
        fill: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .footer-logo svg path {
        fill: var(--idx-final-footer-text-color-style-one, #FFFFFF);
    }
    img.user-uploded-logo {
        max-width: 110px;      
        max-height: 60px;     
        width: auto;          
        height: auto;        
        object-fit: contain;  
    }
    .user-logo-container {
        max-width: 110px;      
        max-height: 60px;
        min-width: 110px;      
        min-height: 60px;
        width: 110px;      
        height: 60px;
        display: flex;
        justify-content: center;  
        align-items: center; 
    }
    .nav-links .user-uploaded-light-logo, .contact-info-menu .user-uploaded-light-logo{
        display: var(--idx-final-header-user-uploaded-light-logo-display, 'block');
    }
    .nav-links .user-uploaded-dark-logo, .contact-info-menu .user-uploaded-dark-logo{
        display: var(--idx-final-header-user-uploaded-dark-logo-display, 'block');
    }
    .footer-logo .user-uploaded-light-logo {
        display: var(--idx-final-footer-user-uploaded-light-logo-display, 'block');
    }
    .footer-logo .user-uploaded-dark-logo {
        display: var(--idx-final-footer-user-uploaded-dark-logo-display, 'block');
    }
    #sample-logo-image {
        margin-top: 10px;
    }
    @media (max-width: 768px) {
        #sample-logo-image {
            margin-top: 0px;
        }
    }
    
</style>
<div>       
                            <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-dark-logo.jpg?1754323459" aria-labelledby="Dark logo" class="user-uploded-logo user-uploaded-light-logo" width="110"/>
                                        <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-light-logo.jpg?1754323473" aria-labelledby="Dark logo" class="user-uploaded-logo user-uploaded-dark-logo" width="110"/>
                </div>

                </li>
            </ul>
        </nav>
        <nav aria-label="Secondary Navigation" id="idx-secondary-navigation-top-main">
            <ul class="nav-links nav-links-text" role="menubar">
                                                            <li role="menuitem" >
                            <a href="/home" 
                               aria-label="Home Page" 
                               id="idx-top-main-home"
                               >
                                <span class="nav-links-first-span">Home</span>
                                <span class="adornment"></span>
                            </a>
                                                    </li>
                                                                                <li role="menuitem" class="nav-item-top-menu">
                            <a href="/about" 
                               aria-label="About Us" 
                               id="idx-top-main-about"
                               >
                                <span class="nav-links-first-span">About</span>
                                <span class="adornment"></span>
                            </a>
                                                            <ul class="dropdown-top-menu">
                                                                                                                                                                                                    <li>
                                                <a href="/blog"
                                                   aria-label="Blog"
                                                   id="idx-top-main-blog"
                                                   title="Blog"
                                                   >
                                                    Blog
                                                </a>
                                            </li>
                                                                                                            </ul>
                                                    </li>
                                                                                <li role="menuitem" >
                            <a href="/idx/map/mapsearch" 
                               aria-label="Search Properties" 
                               id="idx-top-main-search"
                               >
                                <span class="nav-links-first-span">Search</span>
                                <span class="adornment"></span>
                            </a>
                                                    </li>
                                                                                                                                                            </ul>
        </nav>
        <div class="auth-buttons">
            <a href="tel:910-443-0398" class="phone-btn" aria-label="Call Us">910-443-0398</a>
                                                                                                                                                                                            <a href="/idx/contact" class="contact-btn" aria-label="Contact Us" >Contact</a>
                                    </div>
    </header>

        <style>
.hero-section {
    min-width: 100%;
    height: 870px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
    padding: 0px;
    border: var(--idx-final-body-border-size, 20px)  solid var( --idx-final-body-background-color,white);
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, var(--idx-final-hero-mask-alpha-value, 1)) 70%, rgba(0, 0, 0, var(--idx-final-hero-mask-alpha-end-value, 1)) 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, var(--idx-final-hero-mask-alpha-value, 1)) 70%, rgba(0, 0, 0, var(--idx-final-hero-mask-alpha-end-value, 1)) 90%);
    clip-path: inset(var(--idx-final-hero-clip-path-top, 0px) var(--idx-final-hero-clip-path-border, 0px) var(--idx-final-hero-clip-path-bottom, 0px) var(--idx-final-hero-clip-path-border, 0px) round var(--idx-final-hero-clip-path-border-radius, 0px));
    opacity: 0;
    transition: opacity 2.0s ease;
}

.hero-section.animate.can-play {
    opacity: 1;
}

.hero-section video, .hero-section img.hero-background-image {
    width: calc(100% - var(--idx-final-hero-content-video-width-offset, 0px););
    height: 100%;
    min-height: 870px;
    position: absolute;
    object-fit: cover;
    z-index: 0;
    opacity: .7;
    max-width: var(--idx-final-hero-content-video-max-width, 1200px);
    /* crucial to get try fade out affect */
}

.hero-section img.hero-background-image {
    width: 100%;
}

.hero-holder {
    position: relative;
    top: 0px;
    left: 0;
    width: 100%;
    height: 120%;
    display: flex;
    align-items: center;
    justify-content: var(--idx-final-hero-content-form-justification, left);
    font-family: var(--idx-final-header-font-family, Montserrat);
    box-shadow: inset 8px 36px 56px 0px rgba(0,0,0,0.75);
}

.hero-content {
    max-width: 950px;
    text-align: center;
    color: white;
    padding: 40px;
    border-radius: 8px;
    margin: var(--idx-final-hero-content-margin, 20px);
    margin-top: -100px;
}

/* Hero Title Styling */
.hero-title {
    color: #FFF;
    font-family: var(--idx-final-hero-heading-font-family, Montserrat);
    font-size: var(--idx-final-heading-one-size, 61.04px);
    font-style: normal;
    font-weight: var(--idx-final-header-font-weight, 400);
    line-height: normal;
    margin-bottom: 20px;
    text-align: var(--idx-final-hero-content-form-justification, left);
    text-shadow: 4px 1px 10px rgba(0,0,0,0.28);
}

/* Hero Subtitle Styling */
.hero-subtitle {
    color: #FFF;
    font-family: var(--idx-final-heading-secondary-font-family, Montserrat);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    margin-bottom: 18px;
    text-align: var(--idx-final-hero-content-form-justification, left);
    text-shadow: 4px 1px 10px rgba(0,0,0,0.28);
}

.hero-form-holder {
    display: flex;
    justify-content: var(--idx-final-hero-content-form-justification, left);
}

.hero-form {
    display: flex;
    justify-content: var(--idx-final-hero-content-form-justification, left);
    align-items: flex-end;
}

.city-select-holder {
    position: relative;
}

.city-select {
    padding: 10px 15px;
    font-size: 1rem;
    border: none;
    outline: none;
    width: 248px;
    font-family: var(--idx-final-header-font-family, Montserrat);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.custom-chevron {
    position: absolute;
    bottom: 2px;
    right: 16px;
    transform: translateY(-50%);
    pointer-events: none;
}

.hero-form-fields {
    display: flex;
    gap: 0;
    flex-wrap: nowrap;
    width: 100%;
    overflow: hidden;
}

/* Container animation for smooth reveal */
.hero-form-fields.animating {
    width: 0;
}

.hero-form-fields.animate-in {
    width: 100%;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-field-wrapper {
    flex: 1;
    position: relative;
    min-width: 150px;
}

.hero-field {
    padding: 10px 15px;
    font-size: 20px;
    border: none;
    outline: none;
    width: 100%;
    margin-top: 14px;
    font-family: var(--idx-final-header-font-family, Montserrat);
    font-weight: 400;
    line-height: 120%;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    color: #333;
    max-height: 44px;
}

select.hero-field {
    padding-right: 30px;
}

.hero-field::placeholder {
    color: rgba(0, 0, 0, 0.4);
}

.hero-field option {
    background: rgba(255, 255, 255, 0.95);
    color: #333;
}

.hero-field-label {
    position: absolute;
    top: 0;
    left: 15px;
    font-family: var(--idx-final-heading-secondary-font-family, Montserrat);
    font-size: 10px;
    font-weight: 400;
    margin-bottom: 0;
    color: #fff;
    text-align: left;
    padding-left: 0;
    z-index: 1;
}

.hero-field-wrapper.narrow {
    flex: 0 0 auto;
    width: 80px;
    min-width: 80px;
}

.hero-field-wrapper.price-field {
    flex: 0 0 auto;
    width: 120px;
    min-width: 120px;
}

.hero-field-wrapper.sqft-field {
    flex: 0 0 auto;
    width: 100px;
    min-width: 100px;
}

/* Loading state */
.hero-loading-wrapper {
    flex: 1 !important;
    width: 100% !important;
    max-width: 300px;
    margin: 0 auto;
    opacity: 1;
    animation: pulse 1.5s ease-in-out infinite;
}

/* Disable backdrop-filter during container animation to prevent flicker */
.hero-form-fields.animating .hero-field {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Re-enable backdrop-filter after animation completes */
.hero-form-fields.animation-complete .hero-field {
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    transition: backdrop-filter 0.1s ease-in;
}

/* Prevent text wrapping during animation */
.hero-field-wrapper .hero-field {
    white-space: nowrap;
}

/* Pulse animation for loading field */
@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

.hero-button {
    color: var(--idx-final-hero-search-button-text, #14222E);
    padding: 10px 20px;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.5s ease;
    width: 100px;
    height: 44px;
    border: 0px;
    border-top-right-radius: var(--idx-final-button-radius, 0px);
    border-bottom-right-radius: var(--idx-final-button-radius, 0px);
    background: var(--idx-final-hero-search-button-fill, #14222E);
    font-family: var(--idx-final-header-font-family, Montserrat);
    line-height: 10px;
    box-sizing: border-box;
}

.idx-ai-smart-search__search-button-text {
    font-family: var(--idx-final-header-font-family, Montserrat);
    color: var(--idx-final-hero-search-button-text, #14222E);
}

.hero-button-secondary {
    display: none;
}

.hero-button:hover {
    background: var(--idx-final-hero-search-button-hover, #14222E);
}

/* Responsive Styles */
@media (max-width: 768px) {
    .hero-section {
        border: 0px solid white;
        clip-path: inset(var(--idx-final-hero-clip-path-top, 0px) 0px var(--idx-final-hero-clip-path-bottom, 0px) 0px round var(--idx-final-hero-clip-path-border-radius, 0px));

    }
    .hero-section video {
        width: 100%;
    }

    .hero-content {
        max-width: 100%;
        width: 100%;
        padding: 16px;
        text-align: left;
        margin: 0px;
    }

    .hero-title {
        font-size: var(--idx-final-heading-three-size, 39.06px);
        margin-bottom: 15px;
    }

    .hero-subtitle {
        font-size: 16px;
        margin-bottom: 18px;
    }

    .hero-form {
        display: flex;
        align-items: flex-end;
        width: 100%;
        max-width: 100%;
        flex-wrap: wrap;
    }

    .custom-chevron {
        position: absolute;
        right: 10px;
        pointer-events: none;
    }

    .hero-form-fields {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 8px;
    }

    .hero-field-wrapper {
        width: 100% !important;
        flex: 1 1 100% !important;
        min-width: auto !important;
    }

    .hero-field-wrapper.narrow {
        width: calc(50% - 4px) !important;
        flex: 0 1 calc(50% - 4px) !important;
    }

    .hero-field-wrapper.price-field {
        width: calc(50% - 4px) !important;
        flex: 0 1 calc(50% - 4px) !important;
    }

    .hero-field-wrapper.sqft-field {
        width: 100% !important;
        flex: 1 1 100% !important;
    }

    .hero-field {
        width: 100%;
        min-width: 100%;
    }

    .hero-button {
        width: 100% !important;
        flex: 1 1 100% !important;
        margin-top: 8px !important;
        min-width: 100% !important;
    }

    .hero-button-primary {
        display: none !important;
    }

    .hero-button-secondary {
        width: 100% !important;
        display: flex !important;
        justify-content: center;
        align-items: center;
        background-color: var(--idx-final-hero-search-button-fill,#333);
        color: var(--idx-final-hero-search-button-text,#333);
        border: none;
        cursor: pointer;
    }

    .hero-button-secondary svg {
        min-width: 52px;
    }

    .hero-button-secondary svg path {
        min-width: 52px;
        fill: var(--idx-final-hero-search-button-text, #fff);
    }
}
</style>

<section class="hero-section" id="hero-section">
            <video crossorigin controls="false" autoplay muted loop playsinline id="hero-section-flagship-video">
            <source src="https://videos.pexels.com/video-files/7578552/7578552-hd_1920_1080_30fps.mp4" type="video/mp4" />
        </video>
                    
    <div class="hero-holder">
        <div class="hero-content">
            <h1 class="hero-title">Discover Your New Home</h1>
            <p class="hero-subtitle">Browse our listings and take the first step towards homeownership today.</p>
                        <div class="hero-form-holder">
                <form id="hero-quick-search-form" class="hero-form" method="GET" action="">
                    <input type="hidden" name="ccz" value="city">
                    <div id="hero-form-fields" class="hero-form-fields">
                        <div id="hero-loading-field" class="hero-field-wrapper hero-loading-wrapper">
                            <input type="text" class="hero-field" value="Loading..." disabled readonly />
                        </div>
                    </div>
                    <button type="submit" class="hero-button hero-button-primary">Search</button>
                    <button type="submit" class="hero-button hero-button-secondary">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
                            <path d="M21.7263 19.2913L17.8322 15.3971C17.6564 15.2214 17.4182 15.1237 17.1682 15.1237H16.5315C17.6096 13.7449 18.2501 12.0107 18.2501 10.1242C18.2501 5.63636 14.6138 2 10.1259 2C5.63807 2 2.00171 5.63636 2.00171 10.1242C2.00171 14.612 5.63807 18.2484 10.1259 18.2484C12.0125 18.2484 13.7467 17.6079 15.1254 16.5298V17.1665C15.1254 17.4165 15.2231 17.6547 15.3988 17.8305L19.293 21.7246C19.6601 22.0918 20.2538 22.0918 20.6171 21.7246L21.7224 20.6193C22.0896 20.2521 22.0896 19.6584 21.7263 19.2913ZM10.1259 15.1237C7.36447 15.1237 5.1264 12.8896 5.1264 10.1242C5.1264 7.36276 7.36056 5.12469 10.1259 5.12469C12.8874 5.12469 15.1254 7.35885 15.1254 10.1242C15.1254 12.8857 12.8913 15.1237 10.1259 15.1237Z" fill="white"/>
                        </svg>
                    </button>
                </form>
            </div>
                    </div>
    </div>
</section>

<script>
    document.addEventListener("DOMContentLoaded", function() {
                    initializeContainer();
            initializeHeroVideo();
                            // Load quick search data from API
            loadQuickSearchData('35171');
            });
    
        /**
     * Load quick search data from the API endpoint
     * Completely replaces the widget - no DOM scraping needed
     */
    function loadQuickSearchData(widgetId) {
        fetch('/idx/ajax/quickSearchList.php?widgetid=' + widgetId)
            .then(response => response.json())
            .then(data => {
                if (data.error) {
                    console.error('Error loading quick search data:', data.message);
                    return;
                }
                
                const form = document.getElementById('hero-quick-search-form');
                if (!form) return;
                
                // Set form action
                if (data.global && data.global.formAction) {
                    form.action = data.global.formAction;
                }
                
                // Set form target based on widget settings
                if (data.global && data.global.settings && data.global.settings.openInNewWindow === 'y') {
                    form.target = '_blank';
                } else {
                    form.target = '_self';
                }
                
                // Add widgetReferer parameter
                const refererInput = document.createElement('input');
                refererInput.type = 'hidden';
                refererInput.name = 'widgetReferer';
                refererInput.value = 'true';
                form.appendChild(refererInput);
                
                // Add default idxID (MLS) as hidden field even though we don't display it
                if (data.fields && data.fields.idxID && data.fields.idxID.value) {
                    const idxIDInput = document.createElement('input');
                    idxIDInput.type = 'hidden';
                    idxIDInput.name = data.fields.idxID.name || 'idxID';
                    idxIDInput.value = data.fields.idxID.value;
                    form.appendChild(idxIDInput);
                }
                
                // Get the fields container
                const fieldsContainer = document.getElementById('hero-form-fields');
                if (!fieldsContainer) return;
                
                // Clear any existing fields and prepare for animation
                fieldsContainer.innerHTML = '';
                fieldsContainer.classList.add('animating');
                
                // Define field configuration - order matters for display
                const fieldConfig = [
                    { key: 'pt', type: 'select', settingKey: 'pt' },
                    { key: 'minPrice', type: 'text', settingKey: 'minPrice' },
                    { key: 'maxPrice', type: 'text', settingKey: 'maxPrice' },
                    { key: 'minBed', type: 'select', settingKey: 'minBed' },
                    { key: 'minBath', type: 'select', settingKey: 'minBath' },
                    { key: 'minSqFt', type: 'text', settingKey: 'minSqFt' },
                    { key: 'cityList', type: 'select', settingKey: 'cityList' }
                ];
                
                const settings = data.global && data.global.settings ? data.global.settings : {};
                
                // Create fields based on settings
                fieldConfig.forEach(config => {
                    // Skip if field is not set to 'show'
                    if (settings[config.settingKey] !== 'show') return;
                    
                    // Skip idxID (MLS selector) - never show
                    if (config.key === 'idxID') return;
                    
                    const wrapper = document.createElement('div');
                    wrapper.className = 'hero-field-wrapper';
                    
                    if (config.type === 'select') {
                        // Get field data for label
                        const fieldData = data.fields ? data.fields[config.key] : null;
                        
                        // Create label
                        if (fieldData && fieldData.label) {
                            const label = document.createElement('label');
                            label.className = 'hero-field-label';
                            // Shorten labels for beds/baths
                            let labelText = fieldData.label;
                            if (config.key === 'minBed') {
                                labelText = labelText.replace(/Min(?:imum)?\s*Bedroom(?:s)?/i, 'Min Bed');
                            } else if (config.key === 'minBath') {
                                labelText = labelText.replace(/Min(?:imum)?\s*Bathroom(?:s)?/i, 'Min Bath');
                            }
                            label.textContent = labelText;
                            wrapper.appendChild(label);
                        }
                        
                        const select = document.createElement('select');
                        select.className = 'hero-field';
                        
                        if (config.key === 'pt') {
                            // Property Type dropdown
                            select.name = 'pt';
                            select.innerHTML = '<option value="">Property Type</option>';
                            
                            if (data.global && data.global.propertyTypes) {
                                Object.entries(data.global.propertyTypes).forEach(([value, label]) => {
                                    const option = document.createElement('option');
                                    option.value = value;
                                    option.textContent = label;
                                    // Set default if available
                                    if (data.fields && data.fields.pt && data.fields.pt.value === value) {
                                        option.selected = true;
                                    }
                                    select.appendChild(option);
                                });
                            }
                        } else if (config.key === 'minBed' || config.key === 'minBath') {
                            // Bedroom/Bathroom dropdown
                            if (fieldData) {
                                select.name = fieldData.name;
                                select.innerHTML = `<option value="">${fieldData.label}</option>`;
                                
                                // Add options 1-10
                                for (let i = 1; i <= 10; i++) {
                                    const option = document.createElement('option');
                                    option.value = i;
                                    option.textContent = i;
                                    if (fieldData.value && parseInt(fieldData.value) === i) {
                                        option.selected = true;
                                    }
                                    select.appendChild(option);
                                }
                                
                                // Add narrow class to wrapper
                                wrapper.classList.add('narrow');
                            }
                        } else if (config.key === 'cityList') {
                            // City dropdown - add label manually since it doesn't have fieldData
                            const cityLabel = document.createElement('label');
                            cityLabel.className = 'hero-field-label';
                            cityLabel.textContent = 'City';
                            wrapper.insertBefore(cityLabel, wrapper.firstChild);
                            
                            select.name = 'city[]';
                            select.required = true;
                            select.innerHTML = '<option value="">Choose a City</option>';
                            
                            if (data.cityList) {
                                // Sort cities alphabetically by name
                                const sortedCities = Object.entries(data.cityList).sort((a, b) => {
                                    return a[1].localeCompare(b[1]);
                                });
                                
                                sortedCities.forEach(([id, name]) => {
                                    const option = document.createElement('option');
                                    option.value = id;
                                    option.textContent = name;
                                    // Set default city as selected (use == for type coercion)
                                    if (id == data.defaultCityID) {
                                        option.selected = true;
                                    }
                                    select.appendChild(option);
                                });
                            }
                        }
                        
                        wrapper.appendChild(select);
                        
                        // Add chevron for select dropdowns
                        const chevron = document.createElement('span');
                        chevron.className = 'custom-chevron';
                        chevron.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="20" height="11" viewBox="0 0 20 11" fill="none"><path d="M2 2.5L8.02449 7.77143C9.15557 8.76112 10.8444 8.76112 11.9755 7.77143L18 2.5" stroke="#666" stroke-width="4" stroke-linecap="round"/></svg>';
                        wrapper.appendChild(chevron);
                        
                    } else if (config.type === 'text') {
                        // Text input fields
                        // Get field data
                        const fieldData = data.fields ? data.fields[config.key] : null;
                        
                        // Create label
                        if (fieldData && fieldData.label) {
                            const label = document.createElement('label');
                            label.className = 'hero-field-label';
                            // Shorten labels for beds/baths (in case they're text fields)
                            let labelText = fieldData.label;
                            if (config.key === 'minBed') {
                                labelText = labelText.replace(/Min(?:imum)?\s*Bedroom(?:s)?/i, 'Min Bed');
                            } else if (config.key === 'minBath') {
                                labelText = labelText.replace(/Min(?:imum)?\s*Bathroom(?:s)?/i, 'Min Bath');
                            }
                            label.textContent = labelText;
                            wrapper.appendChild(label);
                        }
                        
                        const input = document.createElement('input');
                        input.type = 'text';
                        input.className = 'hero-field';
                        
                        if (fieldData) {
                            input.name = fieldData.name;
                            input.placeholder = fieldData.label;
                            if (fieldData.value) {
                                input.value = fieldData.value;
                            }
                        }
                        
                        // Add numeric-only validation for price fields
                        if (config.key === 'minPrice' || config.key === 'maxPrice') {
                            // Add price-field class to wrapper for reduced width
                            wrapper.classList.add('price-field');
                            
                            // Add input event listener to prevent non-numeric characters
                            input.addEventListener('input', function(e) {
                                // Remove any non-numeric characters except comma and period
                                this.value = this.value.replace(/[^0-9.,]/g, '');
                            });
                            
                            // Also add keypress handler to prevent typing letters
                            input.addEventListener('keypress', function(e) {
                                const char = String.fromCharCode(e.which);
                                if (!/[0-9.,]/.test(char)) {
                                    e.preventDefault();
                                }
                            });
                        }
                        
                        // Add sqft-field class for reduced width on sqft field
                        if (config.key === 'minSqFt') {
                            wrapper.classList.add('sqft-field');
                        }
                        
                        wrapper.appendChild(input);
                    }
                    
                    fieldsContainer.appendChild(wrapper);
                });
                
                // Trigger container animation for smooth reveal
                setTimeout(() => {
                    fieldsContainer.classList.add('animate-in');
                    
                    // Re-enable backdrop-filter after animation completes
                    setTimeout(() => {
                        fieldsContainer.classList.remove('animating');
                        fieldsContainer.classList.add('animation-complete');
                    }, 400); // Match the CSS transition duration
                }, 10); // Small delay to ensure DOM is ready
            })
            .catch(error => {
                console.error('Failed to load quick search data:', error);
                // Keep loading field visible with error message
                const loadingField = document.getElementById('hero-loading-field');
                if (loadingField) {
                    const input = loadingField.querySelector('input');
                    if (input) {
                        input.value = 'Error loading form';
                    }
                }
            });
    }
    
    function initializeContainer() {

        const slidingArea = document.getElementById('hero-section');
        slidingArea.classList.add('animate');

        // remove mask-image for theme 1
        if(window.selectedTheme == 1){
            slidingArea.style['mask-image'] = 'unset';
            slidingArea.style['-webkit-mask-image'] = 'unset';
        }
            }
            function initializeHeroVideo() {
            const isUserVideoTimeModified = 0 > 0 || 12 != 12;
            console.log('isUserVideoTimeModified', isUserVideoTimeModified);


            // video initialization
            let isVideoInitialized = false;
            const video = document.getElementById('hero-section-flagship-video');
            const initialize = () => {
                if  (isUserVideoTimeModified) {
                    video.currentTime = 0;
                } 
                isVideoInitialized = true;
                document.getElementById('hero-section').classList.add('can-play');
            };
            
            if  (isUserVideoTimeModified){
                video.addEventListener('timeupdate', () => {
                    if(video.currentTime >= 12){
                        video.currentTime = 0;
                    }
                    console.log('The current time is: ' + video.currentTime);
                });
            }
            
            video.addEventListener('canplay', () => {
                console.log('canplay event fired');
                if(isVideoInitialized) {
                    return;
                }
                video.play();
                initialize();
            });
            // fallback to check if video is playing in case canplay event is not fired (issue with Safari)
            const testVideoPlaying = () => {
                if(isVideoInitialized) {
                    return;
                }
                const isVideoPlaying = video.currentTime > 0 && !video.paused && !video.ended && video.readyState > 2;
                if (isVideoPlaying) {
                    initialize();
                } else {
                    // check again after 1 second
                    setTimeout(testVideoPlaying, 1000);
                }
            };
            testVideoPlaying();
        }
    </script>
      <section class="about-section fade-in">
    <div class="about-image">
        <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-about-image.jpeg?1753306962" aria-label="Image of living room">
    </div>
    <div class="about-content" aria-label="about content">
        <h1>About Me</h1>
                     <style>
    .social-icons {
        display: flex;
        gap: 7.5px;
        margin-bottom: 10px;
        margin-top: 10px;
        float: right;
    }

    .about-section .social-icons {
        float: right;
    }

    .social-icons .icon img {
        width: 20px;
        height: 20px;
    }

    .social-icons .icon {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background-color: var(--idx-final-body-social-background-color, #e0e0e0);
        color: var(--idx-final-body-social-icon-color, #000000);
        transition: background-color 0.3s ease;
        filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.5));
    }

    .social-icons svg path {
        fill: var(--idx-final-body-social-icon-color, #000000); /* Set the fill color to red */
    }

    .social-icons .icon:hover {
        background-color: var(--idx-final-body-social-hover-color, #ccc); /* Slightly darker gray on hover */
    }

    /* footer overrides */
    .footer-content .social-icons .icon {
        background-color: var(--idx-final-body-social-background-color, #e0e0e0);
        color: var(--idx-final-body-social-icon-color, #000000);
    }

    .footer-content .social-icons svg path {
        fill: var(--idx-final-body-social-icon-color, #000000); /* Set the fill color to red */
    }

    .footer-content .social-icons .icon:hover {
        background-color: var(--idx-final-body-social-hover-color, #ccc); /* Slightly darker gray on hover */
    }

     /* menu overrides */
    .menu-content .social-icons .icon {
        background-color: #1f2a37;
        color: #FFFFFF;
    }

    .menu-content .social-icons svg path {
        fill: #FFFFFF; /* Set the fill color to red */
    }

    .menu-content .social-icons .icon:hover {
        background-color: #314358; /* Slightly darker gray on hover */
    }
    @media (max-width: 768px) {
        .about-section .social-icons {
            float: left;
        }
    }


</style>

<div class="social-icons">
            <a href="https://www.facebook.com/pg/coastalrealestateconsultants/" target="_blank" class="icon">
            <!-- Facebook SVG here -->
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
                <g clip-path="url(#clip0_323_4453)">
                <path d="M13.1203 3.82002H15.0003V0.64003C14.0901 0.545377 13.1755 0.498646 12.2603 0.50003C9.54034 0.50003 7.68035 2.16003 7.68035 5.20002V7.82002H4.61035V11.38H7.68035V20.5H11.3603V11.38H14.4203L14.8803 7.82002H11.3603V5.55002C11.3603 4.50002 11.6403 3.82002 13.1203 3.82002Z" fill="#1F2A37"/>
                </g>
                <defs>
                <clipPath id="clip0_323_4453">
                <rect width="20" height="20" fill="white" transform="translate(0 0.5)"/>
                </clipPath>
                </defs>
            </svg>
        </a>
    
            <a href="https://www.instagram.com/bonnierotundorealestate" target="_blank" class="icon">
            <!-- Instagram SVG here -->
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M11.5048 6.6094C8.52353 6.6094 6.11884 9.01408 6.11884 11.9953C6.11884 14.9766 8.52353 17.3813 11.5048 17.3813C14.486 17.3813 16.8907 14.9766 16.8907 11.9953C16.8907 9.01408 14.486 6.6094 11.5048 6.6094ZM11.5048 15.4969C9.57822 15.4969 8.00322 13.9266 8.00322 11.9953C8.00322 10.0641 9.57353 8.49377 11.5048 8.49377C13.436 8.49377 15.0063 10.0641 15.0063 11.9953C15.0063 13.9266 13.4313 15.4969 11.5048 15.4969ZM18.3673 6.38908C18.3673 7.08752 17.8048 7.64533 17.111 7.64533C16.4126 7.64533 15.8548 7.08283 15.8548 6.38908C15.8548 5.69533 16.4173 5.13283 17.111 5.13283C17.8048 5.13283 18.3673 5.69533 18.3673 6.38908ZM21.9345 7.66408C21.8548 5.98127 21.4704 4.49065 20.2376 3.26252C19.0095 2.0344 17.5188 1.65002 15.836 1.56565C14.1016 1.46721 8.90322 1.46721 7.16884 1.56565C5.49072 1.64534 4.0001 2.02971 2.76728 3.25784C1.53447 4.48596 1.15479 5.97658 1.07041 7.6594C0.971973 9.39377 0.971973 14.5922 1.07041 16.3266C1.1501 18.0094 1.53447 19.5 2.76728 20.7281C4.0001 21.9563 5.48603 22.3406 7.16884 22.425C8.90322 22.5235 14.1016 22.5235 15.836 22.425C17.5188 22.3453 19.0095 21.961 20.2376 20.7281C21.4657 19.5 21.8501 18.0094 21.9345 16.3266C22.0329 14.5922 22.0329 9.39846 21.9345 7.66408ZM19.6938 18.1875C19.3282 19.1063 18.6204 19.8141 17.697 20.1844C16.3141 20.7328 13.0329 20.6063 11.5048 20.6063C9.97665 20.6063 6.69072 20.7281 5.31259 20.1844C4.39384 19.8188 3.68603 19.111 3.31572 18.1875C2.76728 16.8047 2.89385 13.5235 2.89385 11.9953C2.89385 10.4672 2.77197 7.18127 3.31572 5.80315C3.68135 4.8844 4.38916 4.17659 5.31259 3.80627C6.69541 3.25784 9.97665 3.3844 11.5048 3.3844C13.0329 3.3844 16.3188 3.26252 17.697 3.80627C18.6157 4.1719 19.3235 4.87971 19.6938 5.80315C20.2423 7.18596 20.1157 10.4672 20.1157 11.9953C20.1157 13.5235 20.2423 16.8094 19.6938 18.1875Z" fill="black"/>
            </svg>
        </a>
    
            <a href="https://twitter.com/BonnieRotundo" target="_blank" class="icon">
            <!-- Twitter SVG here -->
            <svg width="20" height="21" viewBox="0 0 1200 1227" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z" fill="black"/>
            </svg>
        </a>
    
            <a href="https://www.youtube.com/@user/bonnierotundo/videos" target="_blank" class="icon">
            <!-- YouTube SVG here -->
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
                <path d="M19.1669 8.5919C19.2081 7.39911 18.9472 6.21525 18.4085 5.15023C18.043 4.71323 17.5358 4.41832 16.9752 4.3169C14.6565 4.1065 12.3281 4.02027 10.0002 4.05856C7.68072 4.01853 5.36078 4.10198 3.05019 4.30856C2.59337 4.39166 2.17062 4.60593 1.83352 4.92523C1.08352 5.6169 1.00019 6.80023 0.916852 7.80023C0.795945 9.5982 0.795945 11.4023 0.916852 13.2002C0.94096 13.7631 1.02476 14.3218 1.16685 14.8669C1.26733 15.2878 1.47062 15.6772 1.75852 16.0002C2.09791 16.3364 2.53051 16.5629 3.00019 16.6502C4.79678 16.872 6.60703 16.9639 8.41685 16.9252C11.3335 16.9669 13.8919 16.9252 16.9169 16.6919C17.3981 16.6099 17.8428 16.3832 18.1919 16.0419C18.4252 15.8085 18.5994 15.5228 18.7002 15.2086C18.9982 14.2941 19.1446 13.337 19.1335 12.3752C19.1669 11.9086 19.1669 9.0919 19.1669 8.5919ZM8.11685 12.8752V7.7169L13.0502 10.3086C11.6669 11.0752 9.84185 11.9419 8.11685 12.8752Z" fill="#1F2A37"/>
            </svg>
        </a>
    </div>




                <div class="about-content-user-text">
            <p>Hi, I'm Bonnie Rotundo and I'd love to assist you! I began my real estate career in 2000! I specialize in residential real estate, with an emphasis on re-sale golf plantation and resort properties primarily in the South Brunswick Islands area of Brunswick County. I dedicate myself to excellence in client service and honest, ethical representation. I strive to build long-term relationships--I want to be your agent for life!  Whether you're in the research phase at the beginning of your real estate search or you know exactly what you're looking for, you'll benefit from having a real estate professional by your side. I'd be honored to put my many years of real estate experience to work for you.  <em>Allow me to Address all your real estate needs</em>!</p>
        </div>
        <br />
                    <a class="about-button" href="/about" aria-label="learn more">Read More</a>
            </div>
</section>

<style>
    .subheader-section {
        width: 100%;
        display: block;
        overflow-x: hidden;
    }
    .about-section {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        padding: var(--idx-final-body-section-padding-fullscreen, 40px);
        max-width: 1200px;
        margin: 0 auto;
        background-color: var(--idx-final-body-background-color, #fff);
        padding-top: 0px;
    }

    #about-page .about-section {
        padding-top: 140px;
    }
    .about-section {
        padding-top: 60px;
    }

    .about-section .about-image img {
        max-width: 400px; /* Width of the image */
        height: auto;
        border-radius: var(--idx-final-body-image-radius, 0px);
    }

    .about-section .about-content {
        margin-left: var(--idx-final-body-section-padding-fullscreen, 40px);
    }

    .about-section .about-content h1 {
        color: var(--idx-final-heading-text-color, #384250);
        font-family: var(--idx-final-heading-font-family, "Tenor Sans");
        font-size: var(--idx-final-heading-one-size, 61.04px);
        font-style: normal;
        font-weight: 400;
        line-height: 60px; /* 98.296% */
        float: left;
        margin-bottom: 32px;
        position: relative;
    }

    .about-section .about-content h1::after {
        display: var(--idx-final-heading-adornment-visibility, none);
        content: '';
        position: absolute;
        right: -15px;
        top: 100%;
        transform: translateY(-50%);
        width: 100%;
        height: 14px;
        border-right: 1px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        border-bottom: 2px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        z-index: 2;
    }

    .about-section .about-content h1::before {
        display: var(--idx-final-heading-adornment-visibility, none);
        content: '';
        position: absolute;
        left: -60px; /* 60px further right than the main line */
        top: 100%;
        transform: translateY(-50%);
        width: 80px; /* Fixed width that "jets out" */
        height: 14px;
        border-bottom: 2px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        z-index: 2;
    }

    .about-section .about-content p {
        font-size: 16px;
        line-height: 1.6;
        margin-bottom: 20px;
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
        clear: both;
    }
    .about-section .about-content-user-text {
        font-size: 16px;
        line-height: 1.6;
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
        clear: both;
    }

    .about-section .about-button {
        padding: 15px 30px;
        font-size: var(--idx-final-button-font-size, 16px);
        cursor: pointer;
        text-decoration: none;
        display: inline-block;
        color: var(--idx-final-body-button-text, #000000);
        border: var(--idx-final-body-button-stroke-width, 1px) solid var(--idx-final-header-contact-button-stroke, 1px);
        border-color: var(--idx-final-body-button-text, #000000);
        background: var(--idx-final-body-button-fill, #fff);
        border-radius: var(--idx-final-header-contact-button-border-radius, 0px);
        font-family: var(--idx-final-button-font-family, Montserrat);
        transition: background-color 0.5s ease;
    }

    .about-section .about-button:hover {
        background-color: var(--idx-final-body-button-hover ,#1F2A37);
    }

    .about-section .social-icon-container {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 32px;
        align-self: stretch;
        display: flex;
        gap: 15px; /* Space between icons */
    }

    .about-section .social-icon {
        float: right;
        border-radius: 50%;
        background-color: #E5E7EB;
        display: flex;
        width: 40px;
        height: 40px;
        padding: 10px;
        align-items: flex-start;
        gap: 10px;
    }
    @media (max-width: 768px) {
        #about-page .about-section {
            padding-top: 90px;
        }
        .about-section {
            flex-direction: column; /* Stack items vertically */
            align-items: center;    /* Optional: center items */
            margin-left: 0px;
            margin-right: 0px;
            padding-left: 0px;
            padding-right: 0px;
            display: flex;
            padding-top: var(--idx-final-body-section-padding-fullscreen, 40px);
        }
        .about-section .about-content {
            margin-left: var(--idx-final-body-section-padding-responsive, 16px);
            margin-right: var(--idx-final-body-section-padding-responsive, 16px);;
        }
        .about-section .social-icons {
            clear: both;
            display: flex;
            gap: 7.5px;
            margin-bottom: 20px;
            margin-top: 0px;
            float: left;
        }
        .about-section .about-image img {
            max-width: 100%;
            width: auto;
        }
        .about-section .about-content h1 {
            font-family: var(--idx-final-header-font-family, "Tenor Sans");
            font-size: var(--idx-final-heading-three-size, 39.06px);
            font-style: normal;
            font-weight: var(--idx-final-header-font-weight, 400);
            line-height: 120%; /* 46.872px */
            letter-spacing: var(--idx-final-heading-three-letter-space, -1px);
            margin-bottom: var(--idx-final-body-section-padding-responsive, 16px);
            margin-top: var(--idx-final-body-section-padding-responsive, 16px);
        }
    }
</style>
                        <section class="featured-slider-section fade-in">
    <div class="featured-slider-title-container">
        <h1>Featured Slide Show</h1>
    </div>
    <div style="clear: both" />
    <div class="featured-slider-container">
        <script charset="UTF-8" type="text/javascript" id="idxwidgetsrc-94718" src="//coastalrealestateconsultants.com/idx/widgets/94718"></script>
    </div>
</section>

<style>
    .idx-tooltip {
        display: none;
    }
    .featured-slider-section {
        clear: both;
        min-width: 100%;
        display: block;
        padding: 40px;
        overflow: hidden;
    }
    .featured-slider-section .featured-slider-title-container h1 {
        color: var(--idx-final-heading-text-color, #384250);
       font-family: var(--idx-final-heading-font-family, "Tenor Sans");
        font-size: var(--idx-final-heading-one-size, 61.04px);
        font-style: normal;
        font-weight: 400;
        line-height: 60px;
        float: left;
        margin-bottom: 32px;
        position: relative;
    }

    .featured-slider-section .featured-slider-title-container h1:after {
        display: var(--idx-final-heading-adornment-visibility, none);
        content: '';
        position: absolute;
        right: -15px;
        top: 100%;
        transform: translateY(-50%);
        width: 721px;
        height: 14px;
        border-right: 1px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        border-bottom: 2px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        z-index: 2;
    }

    .featured-slider-container {
        --featured-slider-action-button-background-color: var(--idx-final-body-button-fill);
        --featured-slider-action-button-border: 1px solid var(--idx-final-body-button-stroke);
        --featured-slider-action-button-color: var(--idx-final-body-button-text);
        --featured-slider-action-button-border-radius: var(--idx-final-body-button-border-radius);
        --featured-slider-action-button-transition: background-color 0.3s ease; /* Smooth transition */
        --featured-slider-action-button-hover: var(--idx-final-body-button-hover);
        --featured-slider-action-font-family: var(--idx-final-body-font-family);
        --featured-slider-action-image-radius: var(--idx-final-body-image-radius, 0px);
        --featured-slider-action-font-color: var(--idx-final-body-text-color, #555);
        --featured-slider-action-ease-time: 0.5s;
        --featured-slider-action-margins-between-items: 8px;

        /* START: these styles live in the shadow dom, and will need to be applied when the account is created, doesn't hurt to have them here but they won't be applied */
        /* listingsCarousel */
        .idx-listings-carousel .idx-listing-card__prop-status {
            background-color: var(--idx-final-body-button-fill, black);
            color: var(--idx-final-body-button-text, white) !important;
        }

        .idx-listings-carousel {
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            background: none;
        }

        .idx-listings-carousel .idx-listing-card__property-action, .idx-listings-carousel .idx-listing-card__property-actions a, .idx-listings-carousel .idx-listing-card__single-item {
            color: var(--idx-final-body-text-color, black);
        }

        .idx-listings-carousel .idx-listing-card__wrap {
            border-radius: var(--idx-final-body-image-radius, 0px);
        }

        .idx-listing-card__price, .idx-listing-card__core-fields, .idx-listing-card__single-item {
            padding-top: var(--featured-slider-action-margins-between-items, 8px);
        }

        .idx-listings-carousel__arrow {
            background-color: var(--idx-final-body-button-fill, none);
            border: var(--idx-final-body-button-stroke, 1px);
            color: var(--idx-final-body-button-text, black);
            border-radius: var(--idx-final-body-button-border-radius, 0px);
            transition: background-color var(--featured-slider-action-ease-time, 0.5s) ease; 
            cursor: pointer;
        }

        .idx-listings-carousel__arrow:hover {
            background: var(--idx-final-body-button-hover, none);
            cursor: pointer;
        }

        .idx-listings-carousel__arrow svg path {
            fill: var(--idx-final-body-button-text, black);
        }

        .idx-listings-carousel__header {
            background-color: transparent;
            border: none !important;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }
        .idx-listings-carousel__header a, .idx-listings-carousel a {
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
        }

        /* marketReport */
        .idx-market-report__widget-divider {
            width: 0px;
        }

        .idx-market-report__widget 
        {
            background-color: transparent;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }

        .idx-market-report__widget .idx-market-report__widget-computer-image+.idx-market-report__widget-view-report.idx-btn.idx-btn-primary {
            background-color: var(--idx-final-body-button-fill, none);
            border: var(--idx-final-body-button-stroke, 1px);
            color: var(--idx-final-body-button-text, black);
            border-radius: var(--idx-final-body-button-border-radius, 0px);
            transition: background-color var(--featured-slider-action-ease-time, 0.5s) ease; 
            cursor: pointer;
        }
        .idx-market-report__widget .idx-market-report__widget-computer-image+.idx-market-report__widget-view-report.idx-btn.idx-btn-primary:hover {
            background: var(--idx-final-body-button-hover, none);
            cursor: pointer;
            color: var(--idx-final-body-button-text, black);
        }
        .idx-market-report__widget-heading-subtitle {
            font-family: Arial;
        }

        /* primeMapSearch */
        .idx-prime-map-search {
            background-color: transparent;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }

        .idx-prime-map-search .idx-property-card__courtesy {
            color: var(--idx-final-body-text-color, black);
        }

        /* listingsShowcase */
        .idx-listings-showcase {
            background-color: transparent;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }
        .idx-listings-showcase__header {
            background-color: transparent;
            border: none !important;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }
        .idx-listings-showcase__header a, .idx-listings-showcase a {
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
        }

        .idx-listings-showcase .idx-property-card__courtesy {
            color: var(--idx-final-body-text-color, black);
        }

        /* virtualShowings */
        .idx-virtual-showings {
            background-color: transparent;
            border: none !important;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }
        .idx-virtual-showings__header {
            background-color: transparent;
            border: none !important;
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
            border-radius: var(--idx-final-body-image-radius, 0px);
            border: 1px solid rgba(0, 0, 0, 0.05);
            background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        }
        .idx-virtual-showings__header a, .idx-virtual-showings a {
            font-family: var(--idx-final-body-font-family, Arial);
            color: var(--idx-final-body-text-color, black);
        }
        .idx-virtual-showings .idx-property-card__courtesy {
            color: var(--idx-final-body-text-color, black);
        }

        /* aiSmartSearch */
        .idx-ai-smart-search__search-button {
            color: var(--idx-final-hero-search-button-text, #14222E);
            padding: 10px 20px;
            font-size: 1rem;
            cursor: pointer;
            transition: background-color 0.5s ease;
            border: 0px;
            border-top-right-radius: var(--idx-final-button-radius, 0px) !important;
            border-bottom-right-radius: var(--idx-final-button-radius, 0px) !important;
            background: var(--idx-final-hero-search-button-fill, #14222E);
            line-height: 10px;
        }
        .idx-ai-smart-search__search-button:hover {
            background: var(--idx-final-hero-search-button-hover, #14222E);
        }

        .idx-ai-smart-search__search-button::focus-visible {
            outline: none;
        }
        .idx-ai-smart-search {
            min-width: 450px;
            margin: 0px !important;
        }
        .idx-ai-smart-search__search-button svg path {
            fill: var(--idx-final-hero-search-button-text,#14222e) !important;
        }
        .idx-ai-smart-search__search-button-text {
            font-family: var(--idx-final-header-font-family, Montserrat);
            color: var(--idx-final-hero-search-button-text, #14222E) !important;
        }
        .idx-ai-smart-search__search-bar {
            border-top-left-radius: var(--idx-final-button-radius, 0px) !important; 
            border-bottom-left-radius: var(--idx-final-button-radius, 0px) !important;
        }
        @media (max-width: 768px) {
            .idx-ai-smart-search__search-button svg {
                width: 24px;
                height: 24px;
                color: var(--idx-final-hero-search-button-text, #14222E) !important;
            }
            .idx-ai-smart-search__search-button .idx-ai-smart-search__search-button-text {
                display: none;
            }
            .idx-ai-smart-search {
                min-width: 370px;
                margin: 0px !important;
            }
        }

         /* END: these styles live in the shadow dom, and will need to be applied when the account is created, doesn't hurt to have them here but they won't be applied */
    }
    @media (max-width: 768px) {
        .featured-slider-section .featured-slider-title-container h1 {
            font-family: var(--idx-final-header-font-family, "Tenor Sans");
            font-size: var(--idx-final-heading-three-size, 39.06px);
            font-style: normal;
            font-weight: var(--idx-final-header-font-weight, 400);
            line-height: 120%;
            letter-spacing: var(--idx-final-heading-three-letter-space, -1px);
            margin-bottom: 16px;
            margin-top: 16px;
        }
        .featured-slider-section {
            padding-left: 16px;
            padding-right: 16px;
        }
    }
</style>
                 <style>
    .contact-container h1,
    .contact-container h2,
    .contact-container p,
    .contact-container ul,
    .contact-container li {
        margin: 0;
        padding: 0;
    }

    .contact-container ul {
        list-style-type: disc;
        margin: 10px 0;
        padding-left: 20px;
    }

    .contact-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 16px;
        max-width: 1400px;
        margin: 0 auto;
        clear: both;
    }

    .contact-container .contact-info-details {
       clear: both;
       font-size: 16px;
       line-height: 1.6;
       margin-bottom: 20px;
       color: var(--idx-final-body-text-color, #555);
       font-family: var(--idx-final-body-font-family, "Tenor Sans");
    }

    .contact-container .contact-info,
    .contact-container .contact-form {
        flex: 1 1 45%;
        margin: 20px;
    }

    .contact-container .contact-info h1 {
        color: var(--idx-final-heading-text-color, #384250);
        font-family: var(--idx-final-heading-font-family, "Tenor Sans");
        font-size: var(--idx-final-heading-one-size, 61.04px);
        font-style: normal;
        font-weight: 400;
        line-height: 60px;
        float: left;
        margin-bottom: 32px;
        position: relative;
    }

    .contact-container .contact-info h1:after {
        display: var(--idx-final-heading-adornment-visibility, none);
        content: '';
        position: absolute;
        right: -15px;
        top: 100%;
        transform: translateY(-50%);
        width: 721px;
        height: 14px;
        border-right: 1px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        border-bottom: 2px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        z-index: 2;
    }

    .contact-container .contact-info p {
        font-size: 16px;
        line-height: 1.6;
        margin-bottom: 20px;
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
    }

    .contact-container .contact-info ul {
        font-size: 16px;
        line-height: 1.6;
        margin-bottom: 20px;
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
    }

    .contact-container .contact-form form {
        border-radius: var(--idx-final-body-image-radius, 0px);
        border: 1px solid rgba(0, 0, 0, 0.05);
        background: rgba(var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-for-alpha, 0), var(--idx-final-contact-form-background-alpha, 0.03));
        padding: 20px;
    }

    .contact-container .contact-form h2 {
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-heading-secondary-font-family, "Tenor Sans");
        font-size: 30px;
        font-style: normal;
        font-weight: 400;
        line-height: 33px;
        margin-bottom: 20px;
    }

    .contact-container .form-group {
        margin-bottom: 20px;
    }

    .contact-container .form-group label {
        display: block;
        margin-bottom: 5px;
        font-size: 0.9rem;
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
    }

    .contact-container .form-group input,
    .contact-container .form-group textarea {
        width: 100%;
        padding: 10px;
        font-size: 1rem;
        box-sizing: border-box;
        outline: none;
        border: 1px solid rgba(0, 0, 0, 0.05);
        transition: opacity 1s ease-in-out;
    }

    .contact-container .form-group input:focus,
    .contact-container .form-group textarea:focus {
        border: 1px solid var(--idx-final-header-middle-buttons-adornment-color, #384250);
        box-shadow: inset 0 0 2px var(--idx-final-header-middle-buttons-adornment-color, #384250);;
    }

    .contact-container .form-group textarea {
        resize: vertical;
    }

    .contact-container .form-group.full-width {
        flex-basis: 100%;
    }

    .contact-container button#IDX-contact-section-submit {
        padding: 10px 20px;
        font-size: var(--idx-final-button-font-size, 16px) !important;
        width: 100%;
        box-sizing: border-box;
        color: var(--idx-final-hero-search-button-text, #14222E);
        padding: 20px 40px;
        font-size: 1rem;
        cursor: pointer;
        transition: background-color 0.5s ease;
        border: 0px;
        border-radius: var(--idx-final-button-radius, 0px);  /* Top-right corner */
        border-radius: var(--idx-final-button-radius, 0px);
        background: var(--idx-final-hero-search-button-fill, #14222E);
        font-family: var(--idx-final-button-font-family, Montserrat);
        line-height: 10px;
        height: 48px;
        transition: opacity 1s ease-in-out;
    }

    .contact-container button:hover {
        background: var(--idx-final-hero-search-button-hover, #14222E);
    }

    .contact-container a {
        color: #007BFF;
        text-decoration: none;
    }

    .contact-container a:hover {
        text-decoration: underline;
    }

    .contact-container .contact-info {
        color: #434343;
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
        font-size: 20px;
        font-style: normal;
        font-weight: 400;
        line-height: 150%;
    }

    .contact-container .contact-disclaimer {
        color: var(--idx-final-body-text-color, #555);
        font-family: var(--idx-final-body-font-family, "Tenor Sans");
        text-align: center;
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 150%;
    }
    .contact-container .success-response {
        background-color: rgba(0, 255, 0, 0.1);
        border: 1px solid #e6e9c6;
        padding: 15px;
    }

    .contact-container .error-response {
        background-color: rgba(255, 0, 0, 0.1);
        border: 1px solid #ebccd1;
        padding: 15px;
    }

    #IDX-contactformResponse {
        text-align: center;
        color: var(--idx-final-body-text-color, #555);
    }
    #IDX-contactformResponse a {
        display: inline-block;
    }


    @media (max-width: 768px) {
        .contact-container {
            flex-direction: column;
            align-items: center;
            padding: 16px;
        }

        .contact-container .contact-info,
        .contact-container .contact-form {
            flex: 1 1 100%;
            margin: 10px 0;
        }

        .contact-container .contact-form form {
            width: 100%;
        }
        .contact-container .contact-info h1 {
            font-family: var(--idx-final-header-font-family, "Tenor Sans");
            font-size: var(--idx-final-heading-three-size, 39.06px);
            font-style: normal;
            font-weight: var(--idx-final-header-font-weight, 400);
            line-height: 120%; /* 46.872px */
            letter-spacing: var(--idx-final-heading-three-letter-space, -1px);
            margin-bottom: var(--idx-final-body-section-padding-responsive, 16px);
            margin-top: var(--idx-final-body-section-padding-responsive, 16px);
        }
    }
</style>


 <section class="contact-container fade-in">
    <div class="contact-info">
        <h1>Contact</h1>
        <div class="contact-info-details">
            Ready to get started? Fill out the form, or give me a call or text—I'm here to help at your pace. Once you reach out, here's what you can expect: We'll connect to discuss your needs and goals. I'll provide insights on current market trends and opportunities. Together, we'll create a plan that fits your timeline.<br />
<br />
Bonnie Rotundo<br />
Coldwell Banker Sloane Realty<br />
16 Causeway Drive<br />
Ocean Isle Beach, NC 28469<br />
DIRECT: 910-443-0398
        </div>
    </div>
    <div class="contact-form">
        <form id="IDX-signupForm" action="/idx/ajax/contact.php" method="POST" data-theme="a" data-ajax="false">
            <input type="hidden" class="IDX-recaptchaToken" id="recaptchaToken" data-action="submit" name="recaptchaToken">
            <input type="hidden" id="" name="contactType" value="contact">
            <input type="hidden" id="" name="action" value="addLead">
            <h2>Contact</h2>
                            <div class="form-group">
                    <label for="firstName"
                        required>
                        First Name
                        *                    </label>
                    <input type="text"
                        id="firstName"
                        name="firstName"
                        required>
                </div>
                            <div class="form-group">
                    <label for="lastName"
                        required>
                        Last Name
                        *                    </label>
                    <input type="text"
                        id="lastName"
                        name="lastName"
                        required>
                </div>
                            <div class="form-group">
                    <label for="email"
                        required>
                        Email Address
                        *                    </label>
                    <input type="text"
                        id="email"
                        name="email"
                        required>
                </div>
                            <div class="form-group">
                    <label for="phone"
                        >
                        Phone
                                            </label>
                    <input type="text"
                        id="phone"
                        name="phone"
                        >
                </div>
            
            <div class="form-group full-width">
                <button id="IDX-contact-section-submit" type="submit">Submit</button>
            </div>
            <div class="form-group full-width">
                <div id="IDX-contactformResponse" class="IDX-formResponse"></div>
            </div>
             <div class="form-group full-width">
    <p class="contact-disclaimer">This site is protected by reCAPTCHA and the Google <a target="_blank" href="https://policies.google.com/privacy">Privacy Policy</a> and <a target="_blank" href="https://policies.google.com/terms">Terms of Service</a> apply.</p>
</div>
<script src="https://www.google.com/recaptcha/api.js?render=6LcUhOYUAAAAAF694SR5_qDv-ZdRHv77I6ZmSiij"></script>
<script>

    document.addEventListener("DOMContentLoaded", function() {

        // Track the time for captchas because there's a 2-minute expiration on the token.
        var recaptchaTimer = [];

        /**
         * Clear the captcha timer for a recently submitted element.
         *
         * @param tokenElement The hidden input element for the token.
         */
        function clearCaptchaTimer(tokenElement) {
            var elementId = tokenElement.getAttribute('id');
            clearInterval(recaptchaTimer[elementId]);
            delete recaptchaTimer[elementId];
            tokenElement.value = '';
            tokenElement.closest('form').classList.remove('clearCaptchaTimer');
        }

        /**
         * Fetch a captcha token.
         *
         * @param tokenElement The hidden input element for the token.
         */
        function fetchCaptchaToken(tokenElement) {
            grecaptcha.execute('6LcUhOYUAAAAAF694SR5_qDv-ZdRHv77I6ZmSiij', {action: tokenElement.getAttribute('data-action')}).then(function(token) {
                tokenElement.value = token;
            });
        }

        /**
         * When a form element inside a form is focused.
         *
         * @param event Focus event.
         */
        function recaptchaFormInputFocused(event) {
            var form = event.target.closest('form');
            var tokenElement = form.querySelector('.IDX-recaptchaToken');

            form.classList.add('clearCaptchaTimer');
            form.dataset.tokenElement = tokenElement;

            var elementID = tokenElement.getAttribute('id');
            if (recaptchaTimer[elementID] !== undefined) {
                return;
            }

            // Every 2 minutes.
            var tokenExpiration = 2 * 60 * 1000;

            fetchCaptchaToken(tokenElement);
            recaptchaTimer[elementID] = setInterval(fetchCaptchaToken, tokenExpiration, tokenElement);
        }

        /**
         * Gets a new token for the recaptcha field.
         *
         * @param event Submit event object.
         */
        function refreshToken(event) {
            var form = event.target.closest('form');
            var tokenElement = form.querySelector('.IDX-recaptchaToken');
            fetchCaptchaToken(tokenElement);
        }

        // Listen to focus events on form inputs except hidden fields
        var forms = document.querySelectorAll('form');
        forms.forEach(function(form) {
            var inputs = document.querySelectorAll('#IDX-signupForm input:not([type=hidden]), #IDX-signupForm select, #IDX-signupForm textarea');

            inputs.forEach(function(input) {
                input.addEventListener('focus', recaptchaFormInputFocused);
            });
        });

        // Refresh on submit for the first form and any form with #IDX-signupForm ID
        var firstForm = document.querySelector('form');
        if (firstForm) {
            firstForm.addEventListener('submit', refreshToken);
        }

        var signupForm = document.querySelector('#IDX-signupForm');
        if (signupForm) {
            signupForm.addEventListener('submit', refreshToken);
        }
    });
</script>


        </form>
    </div>
</section>

<script src="/graphical/frontend/themes/2024/js/form_submission.js"></script>


    <!-- Footer Section -->
    <footer class="footer" aria-label="Website Footer">
        <div class="footer-container">
            <!-- Logo Section -->
            <div class="footer-logo" aria-labelledby="footer-logo-title">
                
 
 <style>
    .nav-links.nav-links-logo .logo-text, .contact-info-menu .logo-text {
        color: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .nav-links.nav-links-logo svg path, .contact-info-menu svg path {
        fill: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .footer-logo svg path {
        fill: var(--idx-final-footer-text-color-style-one, #FFFFFF);
    }
    img.user-uploded-logo {
        max-width: 110px;      
        max-height: 60px;     
        width: auto;          
        height: auto;        
        object-fit: contain;  
    }
    .user-logo-container {
        max-width: 110px;      
        max-height: 60px;
        min-width: 110px;      
        min-height: 60px;
        width: 110px;      
        height: 60px;
        display: flex;
        justify-content: center;  
        align-items: center; 
    }
    .nav-links .user-uploaded-light-logo, .contact-info-menu .user-uploaded-light-logo{
        display: var(--idx-final-header-user-uploaded-light-logo-display, 'block');
    }
    .nav-links .user-uploaded-dark-logo, .contact-info-menu .user-uploaded-dark-logo{
        display: var(--idx-final-header-user-uploaded-dark-logo-display, 'block');
    }
    .footer-logo .user-uploaded-light-logo {
        display: var(--idx-final-footer-user-uploaded-light-logo-display, 'block');
    }
    .footer-logo .user-uploaded-dark-logo {
        display: var(--idx-final-footer-user-uploaded-dark-logo-display, 'block');
    }
    #sample-logo-image {
        margin-top: 10px;
    }
    @media (max-width: 768px) {
        #sample-logo-image {
            margin-top: 0px;
        }
    }
    
</style>
<div>       
                            <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-dark-logo.jpg?1754323459" aria-labelledby="Dark logo" class="user-uploded-logo user-uploaded-light-logo" width="110"/>
                                        <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-light-logo.jpg?1754323473" aria-labelledby="Dark logo" class="user-uploaded-logo user-uploaded-dark-logo" width="110"/>
                </div>

            </div>

            <!-- Social Icons -->
            <div class="footer-socials-container">
                 <style>
    .social-icons {
        display: flex;
        gap: 7.5px;
        margin-bottom: 10px;
        margin-top: 10px;
        float: right;
    }

    .about-section .social-icons {
        float: right;
    }

    .social-icons .icon img {
        width: 20px;
        height: 20px;
    }

    .social-icons .icon {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background-color: var(--idx-final-body-social-background-color, #e0e0e0);
        color: var(--idx-final-body-social-icon-color, #000000);
        transition: background-color 0.3s ease;
        filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.5));
    }

    .social-icons svg path {
        fill: var(--idx-final-body-social-icon-color, #000000); /* Set the fill color to red */
    }

    .social-icons .icon:hover {
        background-color: var(--idx-final-body-social-hover-color, #ccc); /* Slightly darker gray on hover */
    }

    /* footer overrides */
    .footer-content .social-icons .icon {
        background-color: var(--idx-final-body-social-background-color, #e0e0e0);
        color: var(--idx-final-body-social-icon-color, #000000);
    }

    .footer-content .social-icons svg path {
        fill: var(--idx-final-body-social-icon-color, #000000); /* Set the fill color to red */
    }

    .footer-content .social-icons .icon:hover {
        background-color: var(--idx-final-body-social-hover-color, #ccc); /* Slightly darker gray on hover */
    }

     /* menu overrides */
    .menu-content .social-icons .icon {
        background-color: #1f2a37;
        color: #FFFFFF;
    }

    .menu-content .social-icons svg path {
        fill: #FFFFFF; /* Set the fill color to red */
    }

    .menu-content .social-icons .icon:hover {
        background-color: #314358; /* Slightly darker gray on hover */
    }
    @media (max-width: 768px) {
        .about-section .social-icons {
            float: left;
        }
    }


</style>

<div class="social-icons">
            <a href="https://www.facebook.com/pg/coastalrealestateconsultants/" target="_blank" class="icon">
            <!-- Facebook SVG here -->
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
                <g clip-path="url(#clip0_323_4453)">
                <path d="M13.1203 3.82002H15.0003V0.64003C14.0901 0.545377 13.1755 0.498646 12.2603 0.50003C9.54034 0.50003 7.68035 2.16003 7.68035 5.20002V7.82002H4.61035V11.38H7.68035V20.5H11.3603V11.38H14.4203L14.8803 7.82002H11.3603V5.55002C11.3603 4.50002 11.6403 3.82002 13.1203 3.82002Z" fill="#1F2A37"/>
                </g>
                <defs>
                <clipPath id="clip0_323_4453">
                <rect width="20" height="20" fill="white" transform="translate(0 0.5)"/>
                </clipPath>
                </defs>
            </svg>
        </a>
    
            <a href="https://www.instagram.com/bonnierotundorealestate" target="_blank" class="icon">
            <!-- Instagram SVG here -->
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M11.5048 6.6094C8.52353 6.6094 6.11884 9.01408 6.11884 11.9953C6.11884 14.9766 8.52353 17.3813 11.5048 17.3813C14.486 17.3813 16.8907 14.9766 16.8907 11.9953C16.8907 9.01408 14.486 6.6094 11.5048 6.6094ZM11.5048 15.4969C9.57822 15.4969 8.00322 13.9266 8.00322 11.9953C8.00322 10.0641 9.57353 8.49377 11.5048 8.49377C13.436 8.49377 15.0063 10.0641 15.0063 11.9953C15.0063 13.9266 13.4313 15.4969 11.5048 15.4969ZM18.3673 6.38908C18.3673 7.08752 17.8048 7.64533 17.111 7.64533C16.4126 7.64533 15.8548 7.08283 15.8548 6.38908C15.8548 5.69533 16.4173 5.13283 17.111 5.13283C17.8048 5.13283 18.3673 5.69533 18.3673 6.38908ZM21.9345 7.66408C21.8548 5.98127 21.4704 4.49065 20.2376 3.26252C19.0095 2.0344 17.5188 1.65002 15.836 1.56565C14.1016 1.46721 8.90322 1.46721 7.16884 1.56565C5.49072 1.64534 4.0001 2.02971 2.76728 3.25784C1.53447 4.48596 1.15479 5.97658 1.07041 7.6594C0.971973 9.39377 0.971973 14.5922 1.07041 16.3266C1.1501 18.0094 1.53447 19.5 2.76728 20.7281C4.0001 21.9563 5.48603 22.3406 7.16884 22.425C8.90322 22.5235 14.1016 22.5235 15.836 22.425C17.5188 22.3453 19.0095 21.961 20.2376 20.7281C21.4657 19.5 21.8501 18.0094 21.9345 16.3266C22.0329 14.5922 22.0329 9.39846 21.9345 7.66408ZM19.6938 18.1875C19.3282 19.1063 18.6204 19.8141 17.697 20.1844C16.3141 20.7328 13.0329 20.6063 11.5048 20.6063C9.97665 20.6063 6.69072 20.7281 5.31259 20.1844C4.39384 19.8188 3.68603 19.111 3.31572 18.1875C2.76728 16.8047 2.89385 13.5235 2.89385 11.9953C2.89385 10.4672 2.77197 7.18127 3.31572 5.80315C3.68135 4.8844 4.38916 4.17659 5.31259 3.80627C6.69541 3.25784 9.97665 3.3844 11.5048 3.3844C13.0329 3.3844 16.3188 3.26252 17.697 3.80627C18.6157 4.1719 19.3235 4.87971 19.6938 5.80315C20.2423 7.18596 20.1157 10.4672 20.1157 11.9953C20.1157 13.5235 20.2423 16.8094 19.6938 18.1875Z" fill="black"/>
            </svg>
        </a>
    
            <a href="https://twitter.com/BonnieRotundo" target="_blank" class="icon">
            <!-- Twitter SVG here -->
            <svg width="20" height="21" viewBox="0 0 1200 1227" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z" fill="black"/>
            </svg>
        </a>
    
            <a href="https://www.youtube.com/@user/bonnierotundo/videos" target="_blank" class="icon">
            <!-- YouTube SVG here -->
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
                <path d="M19.1669 8.5919C19.2081 7.39911 18.9472 6.21525 18.4085 5.15023C18.043 4.71323 17.5358 4.41832 16.9752 4.3169C14.6565 4.1065 12.3281 4.02027 10.0002 4.05856C7.68072 4.01853 5.36078 4.10198 3.05019 4.30856C2.59337 4.39166 2.17062 4.60593 1.83352 4.92523C1.08352 5.6169 1.00019 6.80023 0.916852 7.80023C0.795945 9.5982 0.795945 11.4023 0.916852 13.2002C0.94096 13.7631 1.02476 14.3218 1.16685 14.8669C1.26733 15.2878 1.47062 15.6772 1.75852 16.0002C2.09791 16.3364 2.53051 16.5629 3.00019 16.6502C4.79678 16.872 6.60703 16.9639 8.41685 16.9252C11.3335 16.9669 13.8919 16.9252 16.9169 16.6919C17.3981 16.6099 17.8428 16.3832 18.1919 16.0419C18.4252 15.8085 18.5994 15.5228 18.7002 15.2086C18.9982 14.2941 19.1446 13.337 19.1335 12.3752C19.1669 11.9086 19.1669 9.0919 19.1669 8.5919ZM8.11685 12.8752V7.7169L13.0502 10.3086C11.6669 11.0752 9.84185 11.9419 8.11685 12.8752Z" fill="#1F2A37"/>
            </svg>
        </a>
    </div>




            </div>

            <!-- Contact Info -->
            <div class="footer-contact">
                <p class="footer-phone" aria-label="Phone Number"><a href="tel:910-443-0398">910-443-0398</a></p>
                <p class="footer-dot" aria-hidden="true">•</p>
                <p aria-label="Email Address"><a href="mailto:bonnie@bonnierotundo.com">bonnie@bonnierotundo.com</a></p>
            </div>

            <!-- Footer Links -->
            <div class="footer-links">
                                    <a href="/home" aria-label="Go to Home Page">Home</a>
                    <a href="/about" aria-label="Learn About Us">About</a>
                    <a href="/idx/map/mapsearch" aria-label="Search Properties">Search</a>
                            </div>

            <!-- Disclaimer -->
            <div class="footer-disclaimer">

            </div>
        </div>

        <!-- Bottom Footer -->
        <div class="footer-bottom">
            <p>&copy;2026 IDX Broker. All Rights Reserved</p>
            <div>
                <a href="/tos" aria-label="Read Terms of Service">Terms of Service</a>
                <a href="/privacy" aria-label="Read Privacy Policy">Privacy Policy</a>
            </div>
        </div>
                <div class="footer-compliance">
                            <div><section>
  <img src="https://m.media-amazon.com/images/I/71DgskF7ohL._AC_SX679_.jpg" alt="Product Image" style="width: 100px; height: 100px; object-fit: cover;">
</section></div>
                                                <br/>
            
 
 <style>
    .nav-links.nav-links-logo .logo-text, .contact-info-menu .logo-text {
        color: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .nav-links.nav-links-logo svg path, .contact-info-menu svg path {
        fill: var(--idx-final-header-svg-logo-color, #EDDFC5);
    }
    .footer-logo svg path {
        fill: var(--idx-final-footer-text-color-style-one, #FFFFFF);
    }
    img.user-uploded-logo {
        max-width: 110px;      
        max-height: 60px;     
        width: auto;          
        height: auto;        
        object-fit: contain;  
    }
    .user-logo-container {
        max-width: 110px;      
        max-height: 60px;
        min-width: 110px;      
        min-height: 60px;
        width: 110px;      
        height: 60px;
        display: flex;
        justify-content: center;  
        align-items: center; 
    }
    .nav-links .user-uploaded-light-logo, .contact-info-menu .user-uploaded-light-logo{
        display: var(--idx-final-header-user-uploaded-light-logo-display, 'block');
    }
    .nav-links .user-uploaded-dark-logo, .contact-info-menu .user-uploaded-dark-logo{
        display: var(--idx-final-header-user-uploaded-dark-logo-display, 'block');
    }
    .footer-logo .user-uploaded-light-logo {
        display: var(--idx-final-footer-user-uploaded-light-logo-display, 'block');
    }
    .footer-logo .user-uploaded-dark-logo {
        display: var(--idx-final-footer-user-uploaded-dark-logo-display, 'block');
    }
    #sample-logo-image {
        margin-top: 10px;
    }
    @media (max-width: 768px) {
        #sample-logo-image {
            margin-top: 0px;
        }
    }
    
</style>
<div>       
                            <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-dark-logo.jpg?1754323459" aria-labelledby="Dark logo" class="user-uploded-logo user-uploaded-light-logo" width="110"/>
                                        <img src="https://storage.googleapis.com/idxb-client-assets-prod/62813-light-logo.jpg?1754323473" aria-labelledby="Dark logo" class="user-uploaded-logo user-uploaded-dark-logo" width="110"/>
                </div>

                    </div>
        <br/><br/>
    </footer>
</body>
</html>
