:root{--gold:#C9A84C;--gold-light:#E8D48B;--gold-dark:#8B6914;--obsidian:#0A0A0A;--charcoal:#141009;--cream:#F0EAD6;--ink:#1A1611;--muted:#6B5F52}html{scroll-behavior:smooth}body{background-color:#FAFAF8;color:var(--ink);font-family:DM Sans,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.font-display,h1,h2,h3{font-family:Cormorant Garamond,Georgia,serif}a,h1,h2,h3,p{overflow-wrap:break-word}::-moz-selection{background:rgba(201,168,76,.35)}::selection{background:rgba(201,168,76,.35)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}.container{width:100%;max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px}.section{padding:88px 0}.section--cream{background:#F5F3ED}.section--white{background:#FFFFFF}.section--dark{background:var(--charcoal);color:var(--cream)}.section-label{font-family:DM Sans,sans-serif;font-size:.62rem;font-weight:500;letter-spacing:.45em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:18px}.section--dark .section-label{color:var(--gold-light)}.section-heading{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:300;line-height:1.12;letter-spacing:-.01em;color:var(--ink)}.section--dark .section-heading{color:var(--cream)}.section-lead{font-size:1.06rem;line-height:1.8;color:#4A413A;font-weight:300}.section--dark .section-lead{color:rgba(240,234,214,.82)}.gold-rule{height:1px;border:0;margin:34px 0;background:linear-gradient(90deg,transparent,rgba(201,168,76,.55) 50%,transparent)}.btn{display:inline-block;font-family:DM Sans,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;padding:1rem 2rem;text-decoration:none;border:0;cursor:pointer;border-radius:2px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-gold-primary{background:var(--gold);color:#0A0A0A;box-shadow:0 4px 20px rgba(201,168,76,.45)}.btn-gold-primary:hover{background:#D4B55A;transform:translateY(-2px);box-shadow:0 8px 26px rgba(201,168,76,.55)}.btn-ghost-gold{background:transparent;border:1px solid rgba(240,212,117,.85);color:#F0D475}.btn-ghost-gold:hover{background:rgba(201,168,76,.12);transform:translateY(-2px)}.btn-pulse{animation:ctaPulse 2.6s ease-in-out infinite}@keyframes ctaPulse{0%,to{box-shadow:0 4px 20px rgba(201,168,76,.35)}50%{box-shadow:0 4px 30px rgba(201,168,76,.7)}}.section-cta{margin-top:44px;text-align:center}.site-header{position:sticky;top:0;z-index:50;background:rgba(250,250,248,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(201,168,76,.3)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:14px;padding-bottom:14px}.site-brand{font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;font-weight:400;letter-spacing:.02em;color:var(--ink);text-decoration:none;white-space:nowrap}.site-brand b{color:var(--gold-dark);font-weight:400}.header-cta{display:inline-block;font-size:.68rem;padding:.7rem 1.25rem}.hero{position:relative;background-color:#FFFFFF;background-image:radial-gradient(ellipse at 12% 8%,rgba(201,168,76,.1) 0,transparent 55%),radial-gradient(ellipse at 88% 22%,rgba(201,168,76,.08) 0,transparent 55%);padding:104px 24px 96px;text-align:center}.hero-overline{font-family:DM Sans,sans-serif;font-size:.6rem;letter-spacing:.5em;text-transform:uppercase;color:var(--gold-dark);border-bottom:1px solid rgba(201,168,76,.35);padding-bottom:.4rem;margin-bottom:1.8rem}.hero h1{font-size:clamp(2.6rem,6vw,4.4rem);font-weight:300;line-height:1.1;color:var(--ink);letter-spacing:-.01em;margin-bottom:26px}.hero-lead{margin:0 auto 14px;font-size:1.08rem;line-height:1.85;color:#4A413A}.hero-lead,.hero-sub{max-width:780px;font-weight:300}.hero-sub{margin:0 auto;font-size:1rem;line-height:1.8;color:var(--muted)}.hero-actions{margin-top:40px;display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.hero-actions .btn{flex:1 1 220px;max-width:300px}.hero-actions .villa-details-cta{margin-top:0}.hero--image{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100svh;padding:110px 24px;text-align:center;background-color:#161310;color:#FFFFFF;overflow:hidden}.hero--image .hero-bg{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;z-index:0;display:block}.hero--image .hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,10,10,.55),rgba(10,10,10,.4) 50%,rgba(10,10,10,.72))}.hero--image .container{position:relative;z-index:2}.hero--image .hero-overline{color:#E8D48B;border-bottom-color:rgba(232,212,139,.5)}.hero--image h1{color:#FFFFFF}.hero--image .hero-lead{color:rgba(240,234,214,.92)}.hero--image .hero-sub{color:rgba(240,234,214,.82)}.hero--image .villa-details{color:#E8D48B}.hero--image .btn-outline-gold{border-color:rgba(240,212,117,.9);color:#F0D475}@media (max-width:720px){.hero--image{min-height:88vh;min-height:88svh;padding:96px 20px}.hero h1{font-size:clamp(2.2rem,8.5vw,4.4rem)}.hero-overline{letter-spacing:.32em}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{flex:1 1 auto;width:100%;max-width:100%;text-align:center}}.img-space{position:relative;display:block;width:100%;background-color:#F1EBDD;background-image:linear-gradient(135deg,rgba(201,168,76,.07) 25%,transparent 0),linear-gradient(315deg,rgba(201,168,76,.07) 25%,transparent 0);background-size:44px 44px;background-position:0 0,0 0;border:1px solid rgba(201,168,76,.35);overflow:hidden}.img-space-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:DM Sans,sans-serif;font-size:.66rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:rgba(26,22,17,.42);text-align:center;padding:0 20px}.img-space--hero{aspect-ratio:21/9;margin-top:52px;background-color:#F1EBDD}.img-space--hero .img-space-label{color:rgba(26,22,17,.42)}.img-space img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .45s ease}.hero-img-space-wrap{margin-top:52px}.property-card{background:#FFFFFF;border:1px solid rgba(201,168,76,.3);box-shadow:0 10px 30px rgba(26,22,17,.05)}.featured-card-link,.property-card-link{display:block;color:inherit;text-decoration:none}.featured-card-link:hover .img-space img,.property-card-link:hover .img-space img{transform:scale(1.04)}.featured-card-link:focus-visible,.property-card-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}.property-card-body{padding:28px 26px 30px}.property-card h3{font-size:1.7rem;font-weight:400;color:var(--ink);line-height:1.15}.property-location{font-family:DM Sans,sans-serif;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dark);margin-top:8px;margin-bottom:16px}.property-desc{font-size:.95rem;line-height:1.75;color:#4A413A;font-weight:300}.featured-card{background:#FFFFFF;border:1px solid rgba(201,168,76,.35);box-shadow:0 16px 40px rgba(26,22,17,.08);overflow:hidden}.featured-card h3{font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:400;color:var(--ink)}.price-display{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,5vw,3rem);font-weight:300;background:linear-gradient(135deg,#B8860B,#E8C84A 30%,#FFF0A0 50%,#C9A84C 70%,#8B6914);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1.1}.location-card{background:#FFFFFF;border:1px solid rgba(201,168,76,.28);padding:34px 30px;box-shadow:0 6px 22px rgba(26,22,17,.04)}.location-card h3{font-size:1.6rem;font-weight:400;color:var(--ink);margin-bottom:12px}.location-card p{font-size:.94rem;line-height:1.78;color:#4A413A;font-weight:300}.type-row{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid rgba(201,168,76,.22);align-items:baseline}.type-row:first-child{border-top:1px solid rgba(201,168,76,.22)}.type-name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;font-weight:600;color:var(--ink);min-width:240px;flex:0 0 32%}.type-desc{font-size:.95rem;line-height:1.75;color:#4A413A;font-weight:300}.step{display:flex;gap:22px;padding:26px 0;border-bottom:1px solid rgba(201,168,76,.22)}.step-num{font-family:Cormorant Garamond,Georgia,serif;font-size:2.1rem;font-weight:300;color:var(--gold-dark);line-height:1;min-width:52px}.step h3{font-size:1.35rem;font-weight:500;color:var(--ink);margin-bottom:6px}.step p{font-size:.95rem;line-height:1.7;color:#4A413A;font-weight:300}.further-item{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid rgba(201,168,76,.2)}.further-item:first-child{border-top:1px solid rgba(201,168,76,.2)}.further-name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.3rem;font-weight:400;color:var(--ink)}.further-loc{font-family:DM Sans,sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);align-self:center;text-align:right}.faq-item{background:#FFFFFF;border:1px solid rgba(201,168,76,.28);margin-bottom:14px}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:22px 26px;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary h3{font-size:1.15rem;font-weight:500;color:var(--ink);line-height:1.4}.faq-icon{font-family:DM Sans,sans-serif;font-size:1.3rem;font-weight:300;color:var(--gold-dark);transition:transform .2s ease;flex-shrink:0}.faq-item[open] .faq-icon{transform:rotate(45deg)}.faq-a{padding:0 26px 24px;font-size:.95rem;line-height:1.75;color:#4A413A;font-weight:300}.contact-card{background:#FFFFFF;border:1px solid rgba(201,168,76,.4);padding:40px 34px;box-shadow:0 18px 50px rgba(0,0,0,.35)}.form-field{display:block;margin-bottom:18px}.form-field label{display:block;font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.luxury-input{width:100%;background:rgba(255,255,255,.98);border:1px solid rgba(201,168,76,.35);color:var(--ink);font-family:DM Sans,sans-serif;font-size:.9rem;padding:.85rem 1rem;border-radius:2px;transition:border-color .2s ease,box-shadow .2s ease}.luxury-input::-moz-placeholder{color:rgba(80,65,50,.38)}.luxury-input::placeholder{color:rgba(80,65,50,.38)}.luxury-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.18)}.luxury-input--error{border-color:#B23B3B}.contact-meta a{color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.4)}.contact-meta a:hover{color:var(--ink)}.contact-direct{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.form-error{background:rgba(178,59,59,.12);border:1px solid rgba(178,59,59,.5);color:#8F2D2D;padding:14px 18px;font-size:.85rem;margin-bottom:18px}.about-karen-img{width:100%;border-radius:8px;-o-object-fit:cover;object-fit:cover;max-height:500px;display:block}.about-karen-name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-weight:400;color:var(--ink);margin-top:16px}.about-karen-role{font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dark);margin-top:4px}.about-consult-note{margin-top:30px;padding-top:20px;border-top:1px solid rgba(201,168,76,.3);font-size:.95rem;line-height:1.6;color:var(--gold-dark);font-weight:500}.btn-whatsapp{background:#25D366;color:#fff;box-shadow:0 4px 18px rgba(37,211,102,.35)}.btn-whatsapp:hover{background:#1fb959;transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,.45)}.consult-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.consult-modal[hidden]{display:none}.consult-modal-backdrop{position:absolute;inset:0;background:rgba(20,16,9,.62);backdrop-filter:blur(3px)}.consult-modal-panel{position:relative;width:100%;max-width:640px;max-height:92vh;overflow-y:auto;background:#F5F3ED;border:1px solid rgba(201,168,76,.4);border-radius:4px;box-shadow:0 24px 80px rgba(0,0,0,.4);padding:34px 28px}.consult-modal-close{position:absolute;top:14px;right:16px;width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:var(--gold-dark);font-size:1.4rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}.consult-modal-close:hover{background:rgba(201,168,76,.18);transform:rotate(90deg)}.consult-modal-head{text-align:center;margin-bottom:22px}.consult-modal-head h2{font-size:clamp(1.7rem,4vw,2.2rem);font-weight:400;color:var(--ink)}.consult-modal-head p{font-size:.95rem;line-height:1.65;color:#4A413A;margin-top:10px;font-weight:300}.consult-lang-note{display:inline-block;margin-top:14px;font-size:.8rem;letter-spacing:.05em;color:var(--gold-dark);background:rgba(201,168,76,.14);border:1px solid rgba(201,168,76,.35);padding:8px 14px;border-radius:2px}.consult-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:6px}.consult-actions .btn{text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:10px}.consult-actions .btn svg{width:18px;height:18px;flex-shrink:0}.consult-actions-heading{font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dark);text-align:center;margin:0 0 14px}.consult-write-heading{margin-top:30px;padding-top:24px;border-top:1px solid rgba(201,168,76,.3)}.consult-form .contact-card{box-shadow:0 8px 30px rgba(0,0,0,.08)}@media (max-width:560px){.consult-actions{grid-template-columns:1fr}.consult-modal-panel{padding:28px 18px}}.site-footer{background-color:#F5F3ED;background-image:radial-gradient(ellipse at 15% 20%,rgba(201,168,76,.09) 0,transparent 55%),radial-gradient(ellipse at 85% 85%,rgba(201,168,76,.06) 0,transparent 55%);color:var(--ink);padding:64px 0 40px;border-top:2px solid rgba(201,168,76,.3)}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:36px}.footer-brand{font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;color:var(--ink)}.footer-tagline{font-size:.85rem;font-weight:300;margin-top:8px;color:#9E8C78}.footer-links a{display:inline-block;color:#6B5F52;text-decoration:none;font-size:.85rem;margin:0 10px 6px 0;border-bottom:1px solid rgba(201,168,76,.3)}.footer-links a:hover{color:var(--gold-dark)}.footer-bottom{margin-top:48px;padding-top:26px;border-top:1px solid rgba(201,168,76,.18);display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;font-size:.78rem;color:#9E8C78}.villa-card{background:#FFFFFF;border:1px solid rgba(201,168,76,.35);box-shadow:0 16px 40px rgba(26,22,17,.08);overflow:hidden}.villa-card h3{font-size:clamp(1.7rem,3.5vw,2.2rem);font-weight:400;color:var(--ink);line-height:1.15}.villa-details{font-family:DM Sans,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.04em;line-height:1.7;color:var(--gold-dark);margin:10px 0 16px}.villa-body{padding:34px 30px}.villa-body p{font-size:.95rem;line-height:1.78;color:#4A413A;font-weight:300}.area-lead{font-size:1.02rem;max-width:760px;margin:0 auto 10px}.area-closing,.area-lead{line-height:1.8;color:#4A413A;font-weight:300}.area-closing{font-size:.98rem;max-width:780px;margin:0 auto}.final-cta-lead{font-size:1.02rem;line-height:1.85;color:#4A413A;font-weight:300;max-width:720px;margin:0 auto 14px}.final-cta-email,.final-cta-phone{font-size:.95rem;line-height:1.7;color:var(--ink)}.final-cta-email a,.final-cta-phone a{color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.4)}.final-cta-email a:hover,.final-cta-phone a:hover{color:var(--ink)}.inline-link{color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.4)}.inline-link:hover{color:var(--ink)}.final-cta-hub{margin-top:26px;font-size:.9rem}.final-cta-hub a{color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.4);font-weight:500}.final-cta-hub a:hover{color:var(--ink)}.villa-img-link{display:block;text-decoration:none}.villa-img-link:hover .img-space img{transform:scale(1.04)}.villa-img-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.villa-card h3 a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.villa-card h3 a:hover{color:var(--gold-dark);border-bottom-color:rgba(201,168,76,.6)}.villa-details-cta{margin-top:24px;display:inline-block}.btn-outline-gold{background:transparent;border:1px solid rgba(139,105,20,.55);color:var(--gold-dark)}.btn-outline-gold:hover{background:rgba(201,168,76,.12);transform:translateY(-2px)}@media (max-width:720px){.section{padding:64px 0}.type-row{flex-direction:column;gap:8px}.type-name{min-width:0}.site-header-inner{flex-wrap:wrap}.header-cta{display:none}.contact-card{padding:30px 22px}.further-item{flex-direction:column;gap:4px}.further-loc{text-align:left}.villa-body{padding:26px 20px}.area-closing,.area-lead,.faq-a p,.final-cta-email,.final-cta-lead,.final-cta-phone,.property-desc,.section-lead,.villa-body p{overflow-wrap:break-word;word-break:break-word}}@media (max-width:480px){.hero h1{font-size:2.1rem;line-height:1.14}.hero-overline{font-size:.55rem;letter-spacing:.24em}.hero--image .container{padding-left:8px;padding-right:8px}.villa-details{font-size:.72rem}.section-lead{font-size:1rem}}