/* =========================================================================
   MARANVILLE / ENCORE — Colors & Type
   =========================================================================
   Brand: Encore Empreendimentos (developer) + Maranville Condomínio (product)
   Category: Real estate / residential condominium marketing
   Region: Brazil (Portuguese)
   ========================================================================= */

/* Fonts — Google Font substitutes.
   - Display serif (MARANVILLE wordmark style): Cormorant Garamond (SUBSTITUTE — real file unknown)
   - Geometric sans display (encore / CONDOMÍNIO): Montserrat (SUBSTITUTE)
   - Body UI sans: Inter
   ========================================================================= */
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/be0a10bd-5949-4045-baef-2e456d1b5d2b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/ec7b7089-570b-4838-b650-cba056fffedc.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/03af467a-2cde-48f6-b164-e71623f7442f.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/8e9c327a-6383-4b2a-a6d9-44bbf5a87f8a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/90116e78-bcba-4927-ab76-42feedfa8f56.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/be0a10bd-5949-4045-baef-2e456d1b5d2b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/ec7b7089-570b-4838-b650-cba056fffedc.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/03af467a-2cde-48f6-b164-e71623f7442f.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/8e9c327a-6383-4b2a-a6d9-44bbf5a87f8a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/90116e78-bcba-4927-ab76-42feedfa8f56.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/be0a10bd-5949-4045-baef-2e456d1b5d2b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/ec7b7089-570b-4838-b650-cba056fffedc.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/03af467a-2cde-48f6-b164-e71623f7442f.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/8e9c327a-6383-4b2a-a6d9-44bbf5a87f8a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/90116e78-bcba-4927-ab76-42feedfa8f56.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/be0a10bd-5949-4045-baef-2e456d1b5d2b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/ec7b7089-570b-4838-b650-cba056fffedc.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/03af467a-2cde-48f6-b164-e71623f7442f.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/8e9c327a-6383-4b2a-a6d9-44bbf5a87f8a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/90116e78-bcba-4927-ab76-42feedfa8f56.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/beb6d95e-d60f-40fb-a1fe-6d3b16223397.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/74c8bbea-8e32-4f7d-94ad-4a16f50a8784.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/6feba124-2a52-4ffc-817b-78d4f2f5b997.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/e4f1c5d0-5265-4433-af4c-d8063e3adee6.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/7fc08d27-2ba7-45a8-81e6-0501f6a7400d.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/2a32a522-ba1e-4edb-ae10-89cb6f4ac173.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/2e8ea330-6efe-4cc7-adfb-0d18ff0dda0c.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/beb6d95e-d60f-40fb-a1fe-6d3b16223397.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/74c8bbea-8e32-4f7d-94ad-4a16f50a8784.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/6feba124-2a52-4ffc-817b-78d4f2f5b997.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/e4f1c5d0-5265-4433-af4c-d8063e3adee6.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/7fc08d27-2ba7-45a8-81e6-0501f6a7400d.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/2a32a522-ba1e-4edb-ae10-89cb6f4ac173.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/2e8ea330-6efe-4cc7-adfb-0d18ff0dda0c.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/beb6d95e-d60f-40fb-a1fe-6d3b16223397.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/74c8bbea-8e32-4f7d-94ad-4a16f50a8784.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/6feba124-2a52-4ffc-817b-78d4f2f5b997.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/e4f1c5d0-5265-4433-af4c-d8063e3adee6.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/7fc08d27-2ba7-45a8-81e6-0501f6a7400d.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/2a32a522-ba1e-4edb-ae10-89cb6f4ac173.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/2e8ea330-6efe-4cc7-adfb-0d18ff0dda0c.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/beb6d95e-d60f-40fb-a1fe-6d3b16223397.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/74c8bbea-8e32-4f7d-94ad-4a16f50a8784.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/6feba124-2a52-4ffc-817b-78d4f2f5b997.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/e4f1c5d0-5265-4433-af4c-d8063e3adee6.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/7fc08d27-2ba7-45a8-81e6-0501f6a7400d.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/2a32a522-ba1e-4edb-ae10-89cb6f4ac173.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/2e8ea330-6efe-4cc7-adfb-0d18ff0dda0c.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("assets/00c917ea-1877-4fe9-94de-3d496a9edd28.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("assets/f9a907e2-1a2a-4399-8b39-4b8c83700370.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("assets/9a2553cb-dc37-4263-9d4b-46863da9c5b9.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("assets/24a889a0-e0fa-4883-a6ba-7a2585ce9b4d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("assets/dc80a712-7f09-4950-b0e6-873f564eba43.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/00c917ea-1877-4fe9-94de-3d496a9edd28.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/f9a907e2-1a2a-4399-8b39-4b8c83700370.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/9a2553cb-dc37-4263-9d4b-46863da9c5b9.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/24a889a0-e0fa-4883-a6ba-7a2585ce9b4d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/dc80a712-7f09-4950-b0e6-873f564eba43.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/00c917ea-1877-4fe9-94de-3d496a9edd28.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/f9a907e2-1a2a-4399-8b39-4b8c83700370.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/9a2553cb-dc37-4263-9d4b-46863da9c5b9.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/24a889a0-e0fa-4883-a6ba-7a2585ce9b4d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/dc80a712-7f09-4950-b0e6-873f564eba43.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/00c917ea-1877-4fe9-94de-3d496a9edd28.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/f9a907e2-1a2a-4399-8b39-4b8c83700370.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/9a2553cb-dc37-4263-9d4b-46863da9c5b9.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/24a889a0-e0fa-4883-a6ba-7a2585ce9b4d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/dc80a712-7f09-4950-b0e6-873f564eba43.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/00c917ea-1877-4fe9-94de-3d496a9edd28.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/f9a907e2-1a2a-4399-8b39-4b8c83700370.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/9a2553cb-dc37-4263-9d4b-46863da9c5b9.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/24a889a0-e0fa-4883-a6ba-7a2585ce9b4d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/dc80a712-7f09-4950-b0e6-873f564eba43.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/00c917ea-1877-4fe9-94de-3d496a9edd28.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/f9a907e2-1a2a-4399-8b39-4b8c83700370.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/9a2553cb-dc37-4263-9d4b-46863da9c5b9.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/24a889a0-e0fa-4883-a6ba-7a2585ce9b4d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/dc80a712-7f09-4950-b0e6-873f564eba43.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


:root {
  /* =======================================================================
     CORE BRAND COLORS
     ======================================================================= */
  --mv-navy:            #124E8C;   /* Maranville wordmark navy (sampled from logo PNG) */
  --mv-navy-deep:       #0A3261;   /* Deeper tone for headers/footer */
  --mv-navy-soft:       #2E6BA8;   /* Lighter variation for hover */
  --mv-gold:            #D6A30A;   /* Shield gold (sampled from logo PNG) */
  --mv-gold-light:      #EAC04A;   /* Softer gold */
  --mv-gold-dark:       #A67A00;   /* Darker gold for hover / small type */

  /* =======================================================================
     NATURE PALETTE — drawn from the renders (jacaranda, palms, clay, sky)
     ======================================================================= */
  --mv-jacaranda:       #8B7AA8;   /* Jacaranda blossom purple */
  --mv-jacaranda-deep:  #6B5A8A;
  --mv-jacaranda-soft:  #C9BFDB;   /* Wash / tint */
  --mv-sage:            #7C9370;   /* Landscape green */
  --mv-forest:          #3E5B46;   /* Deep forest */
  --mv-clay:            #B85A3E;   /* Tennis clay / terracotta */
  --mv-sand:            #E8DCC6;   /* Warm beige / architecture */
  --mv-sky:             #7BA8C9;   /* Midday sky */

  /* =======================================================================
     NEUTRALS
     ======================================================================= */
  --mv-ink:             #1A2433;   /* Body text */
  --mv-ink-muted:       #4A5668;   /* Secondary */
  --mv-ink-soft:        #8894A8;   /* Tertiary / meta */
  --mv-line:            #D7DCE4;   /* Hairline dividers */
  --mv-stone:           #EEF0F3;   /* Card surfaces */
  --mv-cream:           #F7F3EB;   /* Warm off-white — hero bg */
  --mv-paper:           #FDFCF9;   /* App background */
  --mv-white:           #FFFFFF;

  /* =======================================================================
     SEMANTIC
     ======================================================================= */
  --mv-success:         #4F7A4D;
  --mv-warn:            #C7923B;
  --mv-danger:          #B04A3A;

  /* =======================================================================
     SEMANTIC TOKENS
     ======================================================================= */
  --fg-strong:          var(--mv-navy-deep);
  --fg-1:               var(--mv-ink);
  --fg-2:               var(--mv-ink-muted);
  --fg-3:               var(--mv-ink-soft);
  --fg-on-dark:         var(--mv-cream);

  --bg-page:            var(--mv-paper);
  --bg-surface:         var(--mv-white);
  --bg-muted:           var(--mv-stone);
  --bg-warm:            var(--mv-cream);
  --bg-dark:            var(--mv-navy-deep);

  --accent:             var(--mv-gold);
  --accent-hover:       var(--mv-gold-dark);

  --border-soft:        var(--mv-line);

  /* =======================================================================
     TYPOGRAPHY FAMILIES
     ======================================================================= */
  --font-display:       'Cormorant Garamond', 'EB Garamond', Georgia, 'Times New Roman', serif;
  --font-sans-display:  'Montserrat', 'Futura', 'Trebuchet MS', sans-serif;
  --font-sans:          'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;

  /* =======================================================================
     TYPE SCALE (desktop)
     ======================================================================= */
  --fs-display-xl:      clamp(48px, 6.5vw, 96px); /* @kind font */
  --fs-display-lg:      clamp(40px, 5vw, 72px); /* @kind font */
  --fs-display:         clamp(32px, 4vw, 56px); /* @kind font */
  --fs-h1:              clamp(28px, 3vw, 44px); /* @kind font */
  --fs-h2:              clamp(24px, 2.4vw, 34px); /* @kind font */
  --fs-h3:              20px;
  --fs-h4:              17px;
  --fs-body:            16px;
  --fs-body-sm:         14px;
  --fs-caption:         12px;
  --fs-eyebrow:         11px;

  /* =======================================================================
     SPACING
     ======================================================================= */
  --sp-0:  0; /* @kind spacing */
  --sp-1:  4px;
  --sp-2:  8px;
  --sp-3:  12px;
  --sp-4:  16px;
  --sp-5:  24px;
  --sp-6:  32px;
  --sp-7:  48px;
  --sp-8:  64px;
  --sp-9:  96px;
  --sp-10: 128px;

  /* =======================================================================
     RADII
     ======================================================================= */
  --radius-0: 0;
  --radius-1: 2px;
  --radius-2: 4px;
  --radius-3: 8px;
  --radius-4: 14px;
  --radius-5: 24px;
  --radius-pill: 999px;

  /* =======================================================================
     SHADOWS / ELEVATION
     ======================================================================= */
  --shadow-1: 0 1px 2px rgba(10,50,97,0.06), 0 1px 1px rgba(10,50,97,0.04);
  --shadow-2: 0 6px 16px rgba(10,50,97,0.08), 0 2px 4px rgba(10,50,97,0.05);
  --shadow-3: 0 18px 36px rgba(10,50,97,0.10), 0 6px 12px rgba(10,50,97,0.06);
  --shadow-hero: 0 40px 80px rgba(10,50,97,0.18);

  /* Inset for pressed states */
  --shadow-inset: inset 0 2px 4px rgba(10,50,97,0.08);

  /* Protection gradient for text over images */
  --scrim-bottom: linear-gradient(180deg, transparent 0%, rgba(10,50,97,0.0) 35%, rgba(10,50,97,0.55) 100%); /* @kind other */
  --scrim-top:    linear-gradient(180deg, rgba(10,50,97,0.45) 0%, transparent 50%); /* @kind other */

  /* Motion */
  --ease:   cubic-bezier(.2,.7,.2,1); /* @kind other */
  --ease-in: cubic-bezier(.5,0,.9,.4); /* @kind other */
  --dur-1:  140ms; /* @kind other */
  --dur-2:  240ms; /* @kind other */
  --dur-3:  420ms; /* @kind other */
  --dur-4:  720ms; /* @kind other */
}

/* =========================================================================
   TYPE SEMANTICS
   ========================================================================= */

html, body {
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  color: var(--fg-1);
  background: var(--bg-page);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Editorial display — used for Maranville-style hero statements */
.display-xl, .display-lg, .display {
  font-family: var(--font-display);
  color: var(--mv-navy);
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1.02;
  text-wrap: pretty;
}
.display-xl { font-size: var(--fs-display-xl); font-weight: 400; }
.display-lg { font-size: var(--fs-display-lg); }
.display    { font-size: var(--fs-display); }

h1, .h1 {
  font-family: var(--font-display);
  color: var(--mv-navy);
  font-size: var(--fs-h1);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.005em;
  margin: 0 0 var(--sp-4);
}

h2, .h2 {
  font-family: var(--font-display);
  color: var(--mv-navy);
  font-size: var(--fs-h2);
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 var(--sp-3);
}

h3, .h3 {
  font-family: var(--font-sans-display);
  color: var(--mv-navy-deep);
  font-size: var(--fs-h3);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.01em;
  margin: 0 0 var(--sp-3);
}

h4, .h4 {
  font-family: var(--font-sans-display);
  color: var(--fg-strong);
  font-size: var(--fs-h4);
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 var(--sp-2);
}

p, .p {
  font-size: var(--fs-body);
  line-height: 1.65;
  color: var(--fg-1);
  margin: 0 0 var(--sp-4);
}

.lead {
  font-size: 18px;
  line-height: 1.6;
  color: var(--fg-2);
}

.eyebrow {
  font-family: var(--font-sans-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--mv-gold-dark);
}

.caption {
  font-size: var(--fs-caption);
  color: var(--fg-3);
  letter-spacing: 0.02em;
}

/* Wordmark utility — matches "MARANVILLE" wordmark treatment */
.wordmark-condo {
  font-family: var(--font-sans-display);
  font-weight: 400;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  font-size: var(--fs-eyebrow);
  color: var(--mv-navy);
}

/* Links */
a {
  color: var(--mv-navy);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease);
}
a:hover {
  color: var(--mv-gold-dark);
  border-bottom-color: var(--mv-gold);
}

/* Divider — brand thin hairline with gold tick */
.divider-gold {
  display: flex; align-items: center; gap: var(--sp-3);
  color: var(--mv-gold);
}
.divider-gold::before,
.divider-gold::after {
  content: '';
  flex: 1;
  height: 1px;
  background: currentColor;
  opacity: .5;
}
* { box-sizing: border-box; }
  html, body { margin: 0; padding: 0; background: var(--bg-page); }
  section { scroll-margin-top: 80px; }
  .section-pad { padding: 120px 0; }
  .section-pad-sm { padding: 80px 0; }
  #root { min-height: 100vh; }
  img { user-select: none; }
/* ---------------------------------------------------------------
   Telas pequenas. O desenho original só previa desktop, então aqui
   as medidas fixas são reescritas. O !important é necessário porque
   o estilo vem inline em cada elemento.
   --------------------------------------------------------------- */
@media (max-width: 1024px) {
  .mv-g-implantacao { grid-template-columns: 1fr !important; gap: 40px !important; }
  .mv-g-lazer       { grid-template-columns: repeat(2, 1fr) !important; }
  .mv-g-timeline    { grid-template-columns: repeat(2, 1fr) !important; gap: 32px !important; }

  /* o fio horizontal que ligava as etapas não faz sentido empilhado */
  div.sobreposto-11, div.sobreposto-12 { display: none !important; }
  .mv-g-local       { grid-template-columns: 1fr !important; gap: 40px !important; }
  .mv-g-dev         { grid-template-columns: 1fr !important; gap: 36px !important; }
}

@media (max-width: 760px) {
  .section-pad      { padding: 64px 0 !important; }
  .section-pad-sm   { padding: 48px 0 !important; }
  .mv-gutter        { padding-left: 20px !important; padding-right: 20px !important; }

  .mv-g-lazer       { grid-template-columns: 1fr !important; gap: 18px !important; }
  .mv-g-timeline    { grid-template-columns: 1fr !important; gap: 26px !important; }
  .mv-g-form        { grid-template-columns: 1fr !important; gap: 16px !important; }
  .mv-g-comodidades { grid-template-columns: repeat(2, 1fr) !important; }

  header            { padding: 12px 20px !important; }

  /* os fios dourados ao lado dos olhos de seção roubam largura */
  span.bloco-5 { display: none !important; }

  /* com letter-spacing alto, o vão entre palavras some — abre mais */
  .olho-2, .olho-5, .olho-6, .olho-7, .sobreposto-4,
  .olho-15, .olho-16,
  [style*="letter-spacing: 0.28em"] {
    letter-spacing: 0.2em !important;
  }
  form              { padding: 24px 20px !important; }

  /* o masterplan vertical não precisa ocupar a tela toda */
  .mv-g-implantacao > div:first-child { max-width: 340px !important; }
}

@media (max-width: 420px) {
  .mv-g-lotes       { grid-template-columns: repeat(3, 1fr) !important; gap: 8px !important; }
  .mv-g-comodidades { gap: 8px !important; }
}

/* a gaveta de lazer ocupa quase tudo no celular */
@media (max-width: 560px) {
  aside { width: 100vw !important; }
}

/* nada pode furar a largura da tela */
html, body { max-width: 100%; overflow-x: hidden; }
img, video, iframe { max-width: 100%; }

/* ================================================================
   Classes extraídas do HTML. Cada uma era um style="..." repetido
   em várias tags. Mexer aqui muda todos os lugares de uma vez.
   ================================================================ */
.cartao-1 { background: rgb(255, 255, 255); border: 1px solid var(--border-soft); border-radius: var(--radius-3); padding: 14px 7px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 8px; text-align: center; }
.linha-1 { color: var(--mv-gold-dark); display: flex; }
.bloco-1 { font-size: 11px; line-height: 1.35; color: var(--mv-ink); }
.cartao-2 { background: rgb(255, 255, 255); border-radius: var(--radius-3); overflow: hidden; box-shadow: var(--shadow-1); border: 1px solid var(--border-soft); transform: translateY(0px); transition: all 240ms var(--ease); cursor: pointer; }
.bloco-2 { overflow: hidden; height: 220px; position: relative; }
.bloco-3 { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1); transition: transform 500ms var(--ease); }
.sobreposto-1 { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; border-radius: 50%; background: rgba(255, 255, 255, 0.9); color: var(--mv-navy); display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 500; transition: all 240ms var(--ease); box-shadow: rgba(10, 50, 97, 0.12) 0px 2px 6px; }
.bloco-4 { padding: 20px 24px 24px; }
.olho-1 { font-family: var(--font-sans-display); font-size: 10px; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; color: var(--mv-gold-dark); margin-bottom: 6px; }
.titulo-1 { font-family: var(--font-display); font-size: 24px; color: var(--mv-navy); font-weight: 500; margin: 0px; letter-spacing: -0.005em; }
.bloco-5 { width: 40px; height: 1px; background: var(--mv-gold); opacity: 0.6; }
.bloco-6 { border-top: 1px solid var(--border-soft); }
.linha-2 { width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 26px 0px; background: transparent; border: none; cursor: pointer; text-align: left; }
.titulo-2 { font-family: var(--font-display); font-size: 22px; font-weight: 500; color: var(--mv-navy); letter-spacing: -0.005em; padding-right: 24px; }
.faixa-1 { font-size: 16px; line-height: 1.7; color: var(--mv-ink-muted); margin: 0px; max-width: 720px; }
.cartao-3 { flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%; background: transparent; border: 1px solid var(--mv-navy); color: var(--mv-navy); display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 400; transition: all 200ms var(--ease); transform: rotate(0deg); }
.bloco-7 { max-height: 0px; overflow: hidden; transition: max-height 360ms var(--ease), padding 240ms var(--ease); padding-bottom: 0px; }
.bloco-8 { padding: 0px 12px; }
.titulo-3 { font-family: var(--font-display); font-size: clamp(20px, 5.1vw, 30px); font-weight: 500; color: var(--mv-navy); letter-spacing: -0.01em; line-height: 1; margin-bottom: 10px; }
.titulo-4 { font-family: var(--font-display); font-size: 20px; font-weight: 400; color: var(--mv-navy); letter-spacing: -0.005em; margin-bottom: 10px; }
.bloco-9 { font-size: 14px; line-height: 1.55; color: var(--mv-ink-muted); }
.linha-3 { display: flex; justify-content: space-between; padding: 14px 0px; border-top: 1px solid var(--border-soft); }
.bloco-10 { color: var(--mv-ink); }
.bloco-11 { font-family: var(--font-sans-display); font-weight: 600; color: var(--mv-navy); letter-spacing: 0.05em; }
.faixa-2 { text-align: center; max-width: 720px; margin: 0px auto; padding: 0px 24px; }
.olho-2 { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 18px; font-family: var(--font-sans-display); font-size: 11px; font-weight: 500; letter-spacing: 0.3em; text-transform: uppercase; color: var(--mv-gold-dark); }
.titulo-5 { font-family: var(--font-display); color: var(--mv-navy); font-size: clamp(32px, 3.5vw, 48px); font-weight: 500; line-height: 1.1; letter-spacing: -0.005em; margin: 0px 0px 16px; }
.bloco-12 { font-size: 18px; line-height: 1.6; color: var(--mv-ink-muted); margin: 0px; }
.cartao-4 { background: rgb(255, 255, 255); border: 1px solid var(--border-soft); border-radius: var(--radius-3); padding: 16px 6px; display: flex; flex-direction: column; align-items: center; gap: 9px; text-align: center; }
.bloco-13 { height: 24px; width: auto; }
.titulo-6 { font-family: var(--font-display); font-size: 15px; color: var(--mv-navy); font-weight: 500; line-height: 1.15; letter-spacing: -0.01em; }
.bloco-14 { background: var(--bg-warm); }
.bloco-15 { background: var(--bg-page); }
.olho-3 { display: block; font-family: var(--font-sans-display); font-size: 10px; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; color: var(--mv-ink-muted); margin-bottom: 8px; }
.cartao-5 { width: 100%; padding: 14px 16px; border: 1px solid var(--border-soft); border-radius: var(--radius-2); font-family: inherit; font-size: 15px; background: rgb(255, 255, 255); color: var(--mv-ink); box-sizing: border-box; outline: none; box-shadow: none; transition: all 140ms var(--ease); }
.titulo-7 { font-family: var(--font-display); font-size: clamp(20px, 5.1vw, 32px); font-weight: 500; color: var(--mv-gold-light); letter-spacing: -0.01em; line-height: 1; }
.olho-4 { margin-top: 8px; font-family: var(--font-sans-display); font-size: 10px; font-weight: 500; letter-spacing: 0.22em; text-transform: uppercase; color: rgba(247, 243, 235, 0.55); }
.linha-4 { width: 84px; height: 84px; border-radius: var(--radius-pill); background: var(--mv-gold); display: flex; align-items: center; justify-content: center; box-shadow: rgba(0, 0, 0, 0.32) 0px 8px 28px; }
.bloco-16 { width: 0px; height: 0px; margin-left: 7px; border-top: 14px solid transparent; border-bottom: 14px solid transparent; border-left: 22px solid rgb(255, 255, 255); }
.olho-5 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.3em; text-transform: uppercase; color: var(--mv-gold-dark); margin-bottom: 16px; }
.olho-6 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.3em; text-transform: uppercase; color: var(--mv-gold-dark); margin-bottom: 8px; padding-top: 24px; border-top: 1px solid var(--border-soft); }
.bloco-17 { font-size: 13px; line-height: 1.5; color: var(--mv-ink-muted); margin: 0px 0px 14px; }
.grade-1 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 28px; }
.faixa-3 { max-width: 1280px; margin: 0px auto; padding: 0px 48px; }
.olho-7 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.3em; text-transform: uppercase; color: var(--mv-gold-dark); margin-bottom: 14px; }
.cartao-6 { width: 48px; height: 48px; border-radius: 50%; background: var(--mv-gold); border: 2px solid var(--mv-gold); display: flex; align-items: center; justify-content: center; color: rgb(255, 255, 255); font-family: var(--font-sans-display); font-size: 13px; font-weight: 700; letter-spacing: 0.05em; margin-bottom: 24px; box-shadow: none; }
.olho-8 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--mv-gold); margin-bottom: 6px; }
.bloco-18 { grid-column: auto; }
.fixo-1 { position: fixed; top: 0px; left: 0px; right: 0px; z-index: 50; padding: 14px 48px; background: transparent; backdrop-filter: none; border-bottom: 1px solid transparent; transition: all 240ms var(--ease); display: flex; align-items: center; justify-content: center; }
.linha-5 { display: flex; align-items: center; gap: 10px; border: none; }
.bloco-19 { height: 42px; transition: height 240ms var(--ease); }
.bloco-20 { position: relative; height: 50vh; min-height: 380px; overflow: hidden; background: rgb(10, 50, 97); }
.sobreposto-2 { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: 0; }
.sobreposto-3 { position: absolute; inset: 0px; z-index: 1; background: linear-gradient(rgba(10, 50, 97, 0.35) 0%, rgba(10, 50, 97, 0.05) 28%, rgba(10, 50, 97, 0) 50%, rgba(10, 50, 97, 0.75) 100%); }
.sobreposto-4 { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); z-index: 2; color: rgba(255, 255, 255, 0.7); font-size: 10px; letter-spacing: 0.3em; text-transform: uppercase; font-family: var(--font-sans-display); }
.bloco-21 { background: var(--bg-warm); overflow: hidden; }
.faixa-4 { max-width: 1000px; margin: 56px auto 0px; padding: 0px 24px; position: relative; }
.sobreposto-5 { position: absolute; top: 50%; bottom: -2000px; left: 50%; width: 100vw; transform: translateX(-50%); background: rgb(255, 255, 255); z-index: 0; }
.moldura-1 { position: relative; z-index: 1; aspect-ratio: 16 / 9; width: 100%; border-radius: var(--radius-4); overflow: hidden; box-shadow: var(--shadow-3); background: var(--mv-navy); }
.sobreposto-6 { position: absolute; inset: 0px; width: 100%; height: 100%; padding: 0px; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; background-color: var(--mv-navy); background-size: cover; background-position: center center; }
.linha-6 { position: relative; z-index: 1; display: flex; justify-content: center; margin-top: 44px; }
.olho-9 { font-family: var(--font-sans-display); font-size: 12px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; padding: 16px 36px; border-radius: var(--radius-2); background: var(--mv-gold); color: rgb(255, 255, 255); border: none; cursor: pointer; }
.bloco-22 { background: rgb(255, 255, 255); }
.grade-2 { display: grid; grid-template-columns: 1fr 360px; gap: 48px; max-width: 1280px; margin: 0px auto; padding: 0px 48px; align-items: center; }
.faixa-5 { position: relative; border-radius: var(--radius-3); overflow: hidden; box-shadow: var(--shadow-hero); background: rgb(255, 255, 255); max-width: 440px; margin: 0px auto; width: 100%; }
.bloco-23 { display: block; width: 100%; height: auto; }
.titulo-8 { font-family: var(--font-display); font-size: clamp(25px, 6.4vw, 40px); color: var(--mv-navy); font-weight: 500; line-height: 1.1; margin: 0px 0px 20px; }
.bloco-24 { font-size: 16px; line-height: 1.65; color: var(--mv-ink-muted); margin: 0px 0px 28px; }
.olho-10 { font-family: var(--font-sans-display); font-size: 12px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; padding: 14px 28px; border-radius: var(--radius-2); background: transparent; color: var(--mv-navy); border: 1px solid var(--mv-navy); cursor: pointer; display: inline-block; text-decoration: none; text-align: center; align-self: flex-start; }
.bloco-25 { margin-bottom: 64px; }
.grade-3 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; max-width: 1280px; margin: 0px auto; padding: 0px 48px; }
.fixo-2 { position: fixed; inset: 0px; z-index: 100; background: rgba(10, 50, 97, 0.45); backdrop-filter: blur(4px); opacity: 0; pointer-events: none; transition: opacity 320ms var(--ease); }
.fixo-3 { position: fixed; top: 0px; right: 0px; bottom: 0px; z-index: 101; width: min(560px, 92vw); background: var(--bg-page); box-shadow: rgba(10, 50, 97, 0.25) -24px 0px 60px; transform: translateX(100%); transition: transform 380ms var(--ease); display: flex; flex-direction: column; overflow: hidden; }
.sobreposto-7 { position: absolute; top: 20px; right: 20px; z-index: 2; width: 44px; height: 44px; border-radius: 50%; background: rgba(255, 255, 255, 0.95); border: 1px solid var(--border-soft); color: var(--mv-navy); font-size: 20px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 140ms var(--ease); box-shadow: rgba(10, 50, 97, 0.12) 0px 2px 8px; }
.bloco-26 { height: 400px; position: relative; overflow: hidden; }
.sobreposto-8 { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; }
.sobreposto-9 { position: absolute; inset: 0px; background: linear-gradient(rgba(1, 40, 73, 0.28) 0%, rgba(1, 40, 73, 0.42) 50%, rgba(1, 40, 73, 0.55) 100%); }
.sobreposto-10 { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; color: rgb(255, 255, 255); width: 100%; padding: 0px 24px; }
.titulo-9 { font-family: var(--font-display); font-size: clamp(36px, 4vw, 56px); font-weight: 400; color: var(--mv-gold-light); margin: 0px; text-shadow: rgba(1, 40, 73, 0.55) 0px 2px 18px; }
.linha-7 { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 56px; gap: 32px; flex-wrap: wrap; }
.bloco-27 { max-width: 560px; }
.titulo-10 { font-family: var(--font-display); font-size: clamp(36px, 4vw, 52px); color: var(--mv-navy); font-weight: 500; line-height: 1.05; margin: 0px; letter-spacing: -0.01em; }
.bloco-28 { font-style: italic; }
.linha-8 { display: flex; align-items: center; gap: 10px; font-family: var(--font-sans-display); font-size: 11px; color: var(--mv-ink-soft); }
.bloco-29 { width: 8px; height: 8px; border-radius: 50%; background: var(--mv-gold); }
.olho-11 { letter-spacing: 0.2em; text-transform: uppercase; }
.bloco-30 { position: relative; }
.sobreposto-11 { position: absolute; top: 24px; left: 24px; right: 24px; height: 2px; background: var(--border-soft); z-index: 0; }
.sobreposto-12 { position: absolute; top: 24px; left: 24px; width: calc(50% + 0px); height: 2px; background: linear-gradient(90deg, var(--mv-gold) 0%, var(--mv-gold-light) 100%); z-index: 1; }
.grade-4 { display: grid; grid-template-columns: repeat(4, 1fr); position: relative; z-index: 2; }
.cartao-7 { width: 48px; height: 48px; border-radius: 50%; background: var(--mv-navy); border: 2px solid var(--mv-navy); display: flex; align-items: center; justify-content: center; color: rgb(255, 255, 255); font-family: var(--font-sans-display); font-size: 13px; font-weight: 700; letter-spacing: 0.05em; margin-bottom: 24px; box-shadow: rgba(214, 163, 10, 0.2) 0px 0px 0px 6px; }
.olho-12 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--mv-navy); margin-bottom: 6px; }
.cartao-8 { width: 48px; height: 48px; border-radius: 50%; background: rgb(255, 255, 255); border: 2px solid var(--border-soft); display: flex; align-items: center; justify-content: center; color: var(--border-soft); font-family: var(--font-sans-display); font-size: 13px; font-weight: 700; letter-spacing: 0.05em; margin-bottom: 24px; box-shadow: none; }
.olho-13 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--border-soft); margin-bottom: 6px; }
.grade-5 { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; max-width: 1280px; margin: 0px auto; padding: 0px 48px; align-items: center; }
.titulo-11 { font-family: var(--font-display); font-size: clamp(27px, 6.9vw, 44px); color: var(--mv-navy); font-weight: 500; line-height: 1.1; margin: 0px 0px 20px; }
.faixa-6 { color: var(--mv-ink-muted); font-size: 16px; line-height: 1.65; margin: 0px 0px 32px; max-width: 480px; }
.bloco-31 { list-style: none; padding: 0px; margin: 0px; }
.faixa-7 { max-width: none; margin: 0px; padding: 0px; position: relative; }
.cartao-9 { position: relative; z-index: 1; aspect-ratio: 16 / 9; width: 100%; border-radius: var(--radius-3); overflow: hidden; box-shadow: var(--shadow-3); background: var(--mv-navy); border: 1px solid var(--border-soft); }
.sobreposto-13 { position: absolute; inset: 0px; width: 100%; height: 100%; padding: 0px; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; background-color: var(--mv-navy); background-size: cover; background-position: center center; }
.sobreposto-14 { position: absolute; left: 16px; bottom: 16px; z-index: 2; font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; padding: 10px 16px; border-radius: var(--radius-pill); background: rgb(255, 255, 255); color: var(--mv-navy); border: 1px solid var(--border-soft); text-decoration: none; box-shadow: var(--shadow-2); }
.faixa-8 { max-width: 880px; margin: 0px auto; padding: 0px 48px; }
.bloco-32 { margin-bottom: 48px; }
.cartao-10 { background: rgb(255, 255, 255); border: 1px solid var(--border-soft); border-radius: var(--radius-3); padding: 40px; box-shadow: var(--shadow-1); }
.grade-6 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.bloco-33 { grid-column: 1 / -1; }
.linha-9 { display: flex; align-items: center; justify-content: space-between; margin-top: 28px; }
.bloco-34 { font-size: 12px; color: var(--mv-ink-soft); max-width: 340px; }
.olho-14 { font-family: var(--font-sans-display); font-size: 12px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; padding: 16px 36px; border-radius: var(--radius-2); background: var(--mv-navy); color: rgb(255, 255, 255); border: none; cursor: pointer; }
.faixa-9 { max-width: 960px; margin: 0px auto; padding: 0px 48px; }
.bloco-35 { text-align: center; margin-bottom: 48px; }
.titulo-12 { font-family: var(--font-display); font-size: clamp(32px, 3.5vw, 44px); color: var(--mv-navy); font-weight: 500; line-height: 1.1; margin: 0px; letter-spacing: -0.01em; }
.bloco-36 { border-bottom: 1px solid var(--border-soft); }
.cartao-11 { flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%; background: var(--mv-navy); border: none; color: rgb(255, 255, 255); display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 400; transition: all 200ms var(--ease); transform: rotate(180deg); }
.bloco-37 { max-height: 400px; overflow: hidden; transition: max-height 360ms var(--ease), padding 240ms var(--ease); padding-bottom: 28px; }
.grade-7 { background: var(--mv-navy-deep); color: rgb(255, 255, 255); border-radius: var(--radius-3); padding: clamp(40px, 6vw, 80px); display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; overflow: hidden; position: relative; }
.sobreposto-15 { position: absolute; top: 0px; left: clamp(40px, 6vw, 80px); width: 48px; height: 3px; background: var(--mv-gold); }
.olho-15 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 600; letter-spacing: 0.32em; text-transform: uppercase; color: var(--mv-gold-light); margin-bottom: 20px; }
.titulo-13 { font-family: var(--font-display); font-size: clamp(36px, 3.4vw, 48px); font-weight: 400; line-height: 1.1; letter-spacing: -0.005em; color: rgb(255, 255, 255); margin: 0px 0px 24px; }
.bloco-38 { font-style: italic; color: var(--mv-gold-light); }
.faixa-10 { font-size: 16px; line-height: 1.7; color: rgba(247, 243, 235, 0.85); margin: 0px 0px 32px; max-width: 480px; }
.linha-10 { display: flex; gap: 32px; flex-wrap: wrap; margin-bottom: 0px; }
.cartao-12 { display: flex; align-items: center; justify-content: center; padding: 40px 20px; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: var(--radius-2); min-height: 300px; }
.bloco-39 { text-align: center; }
.olho-16 { font-family: var(--font-sans-display); font-size: 10px; font-weight: 600; letter-spacing: 0.32em; text-transform: uppercase; color: rgba(247, 243, 235, 0.5); margin-bottom: 24px; }
.bloco-40 { height: 80px; opacity: 0.95; margin-bottom: 32px; }
.titulo-14 { font-family: var(--font-display); font-size: 20px; font-style: italic; color: rgba(247, 243, 235, 0.75); line-height: 1.4; max-width: 280px; margin: 0px auto; }
.bloco-41 { background: var(--bg-warm); border-top: 1px solid var(--border-soft); padding: 22px 24px; text-align: center; }
.olho-17 { font-family: var(--font-sans-display); font-size: 11px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mv-ink-soft); }
