@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,900;1,400;1,600&family=Nunito:wght@400;500;600;700;800&display=swap";:root{--white: #FFFFFF;--soft-sky: #EAF6FC;--sky-blue: #4A9FD4;--ocean-blue: #1A5FAD;--deep-navy: #081628;--warm-sand: #F7EDD8;--sunset-gold: #E8A82A;--text-dark: #1a2a3a;--text-muted: #5a7080;--text-light: #8a9db0;--shadow-xs: 0 1px 4px rgba(8,22,40,.06);--shadow-sm: 0 2px 10px rgba(8,22,40,.09);--shadow-md: 0 4px 24px rgba(8,22,40,.13);--shadow-lg: 0 8px 48px rgba(8,22,40,.18);--radius: 12px;--radius-lg: 20px;--radius-xl: 32px;--transition: .3s ease;--transition-fast: .15s ease;--nav-height: 78px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Nunito,sans-serif;color:var(--text-dark);background:var(--white);line-height:1.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}h1,h2,h3,h4,h5{font-family:Playfair Display,serif;line-height:1.2;color:var(--ocean-blue)}h1{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:700}h2{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:700}h3{font-size:clamp(1.25rem,2.5vw,1.65rem);font-weight:600}h4{font-size:1.15rem;font-weight:600}p{color:var(--text-dark)}a{color:var(--sky-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--ocean-blue)}.container{max-width:1180px;margin:0 auto;padding:0 2rem}.section{padding:5rem 0}.section-sm{padding:3rem 0}.section-lg{padding:7rem 0}.text-center{text-align:center}.text-left{text-align:left}.section-label{font-family:Nunito,sans-serif;font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--sky-blue);display:block;margin-bottom:.6rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;border-radius:50px;font-family:Nunito,sans-serif;font-weight:800;font-size:.95rem;letter-spacing:.02em;cursor:pointer;transition:all var(--transition);text-decoration:none;border:2px solid transparent;line-height:1;white-space:nowrap}.btn-primary{background:var(--ocean-blue);color:var(--white);border-color:var(--ocean-blue);box-shadow:0 4px 18px #1a5fad47}.btn-primary:hover{background:#1452a0;color:var(--white);transform:translateY(-2px);box-shadow:0 8px 28px #1a5fad61}.btn-secondary{background:transparent;color:var(--ocean-blue);border-color:var(--ocean-blue)}.btn-secondary:hover{background:var(--ocean-blue);color:var(--white);transform:translateY(-2px)}.btn-sky{background:var(--sky-blue);color:var(--white);border-color:var(--sky-blue);box-shadow:0 4px 18px #4a9fd44d}.btn-sky:hover{background:#3d8fc0;color:var(--white);transform:translateY(-2px)}.btn-white{background:var(--white);color:var(--ocean-blue);border-color:var(--white);box-shadow:var(--shadow-sm)}.btn-white:hover{background:var(--soft-sky);color:var(--ocean-blue);transform:translateY(-2px)}.btn-gold{background:var(--sunset-gold);color:var(--deep-navy);border-color:var(--sunset-gold);box-shadow:0 4px 18px #e8a82a4d}.btn-gold:hover{background:#d4962a;transform:translateY(-2px)}.btn-sm{padding:.6rem 1.4rem;font-size:.875rem}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition);overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}@media (max-width: 960px){.grid-2{grid-template-columns:1fr}.grid-3,.grid-4{grid-template-columns:1fr 1fr}}@media (max-width: 580px){.grid-3,.grid-4{grid-template-columns:1fr}.container{padding:0 1.25rem}}.img-ph{width:100%;position:relative;overflow:hidden;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.5rem}.img-ph .ph-icon{font-size:2.5rem;opacity:.5}.img-ph .ph-label{font-family:Nunito,sans-serif;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.55;color:#fff}.ph-sea{background:linear-gradient(160deg,#87ceeb,#4a9fd4,#1a5fad 80%,#0d3d7a)}.ph-terrace{background:linear-gradient(160deg,#fde68a,#f59e0b 25%,#4a9fd4 60%,#1a5fad)}.ph-interior{background:linear-gradient(160deg,#faf8f4,#e8e0d0,#d4c8b0)}.ph-kitchen{background:linear-gradient(160deg,#f9f6f0,#ede5d8,#ddd0be)}.ph-bedroom{background:linear-gradient(160deg,#f4f0ee,#e4dcd8,#d4ccc8)}.ph-bathroom{background:linear-gradient(160deg,#eaf4f8,#d4e8f0,#b8d8ea)}.ph-town{background:linear-gradient(160deg,#87ceeb,#4a9fd4 35%,#c8b48a 65%,#a89068)}.ph-promenade{background:linear-gradient(160deg,#fde68a,#f0c050 20%,#87ceeb 55%,#4a9fd4)}.ph-food{background:linear-gradient(160deg,#f9e4c0,#e8a82a 40%,#c47a20)}.ph-beach{background:linear-gradient(160deg,#87ceeb,#4a9fd4 40%,#f5e6c0,#e8d0a0)}.ph-host{background:linear-gradient(160deg,#d4eaf8,#a8d4f0,#7abcec)}.ph-trail{background:linear-gradient(160deg,#d4e8c0,#a0c870 40%,#c88040,#a86030)}.ar-hero{aspect-ratio:16/7}.ar-16-9{aspect-ratio:16/9}.ar-4-3{aspect-ratio:4/3}.ar-3-2{aspect-ratio:3/2}.ar-1-1{aspect-ratio:1/1;border-radius:50%!important}.ar-3-4{aspect-ratio:3/4}.stars{color:var(--sunset-gold);font-size:1.1rem;letter-spacing:.05em}.wave{width:100%;line-height:0;display:block}.wave svg{display:block;width:100%}.back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--sky-blue);font-weight:700;font-size:.9rem;margin-bottom:1.5rem;transition:gap var(--transition-fast)}.back-link:hover{gap:.6rem}.highlight-box{background:var(--warm-sand);border-left:4px solid var(--ocean-blue);border-radius:0 var(--radius) var(--radius) 0;padding:1.25rem 1.5rem}:focus-visible{outline:3px solid var(--sky-blue);outline-offset:3px;border-radius:4px}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .7s ease forwards}.fade-up-1{animation-delay:.1s;opacity:0}.fade-up-2{animation-delay:.2s;opacity:0}.fade-up-3{animation-delay:.3s;opacity:0}.fade-up-4{animation-delay:.4s;opacity:0}
