:root{--ink:#0b1f33;--navy:#0b3a5b;--sea:#005f73;--sand:#f6f1e7;--white:#fff;--focus:#ffbf00}
*{box-sizing:border-box}
html{font-size:20px}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.55}
img{max-width:100%;height:auto;display:block}
a{color:var(--sea)}
a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:4px solid var(--focus);outline-offset:2px}
.wrap{max-width:1200px;margin:0 auto;padding:0 1rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:10}
.top{background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}
.top-in{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;justify-content:space-between;padding-top:.6rem;padding-bottom:.6rem}
.logo{color:#fff;text-decoration:none;font-weight:800;font-size:1.5rem;line-height:1.1}
.logo span{display:block;font-weight:500;font-size:.85rem}
.contact-btns{display:flex;flex-wrap:wrap;gap:.5rem;width:100%}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:.6rem 1.1rem;border-radius:10px;font-weight:700;text-decoration:none;font-size:1rem;border:3px solid transparent;cursor:pointer}
.top .btn{flex:1 1 auto}
.call{background:#ffd166;color:#0b1f33}
.mail{background:#fff;color:var(--navy);word-break:break-all}
.hero{background:linear-gradient(rgba(11,31,51,.62),rgba(11,31,51,.62)),url(img/corcega-5h.jpg) center/cover;color:#fff;padding:3rem 0}
.hero h1{font-size:2rem;line-height:1.2;margin:0 0 .5rem}
.hero p{font-size:1.2rem;margin:0 0 1.2rem}
.btn.big{background:var(--sea);color:#fff;font-size:1.1rem;min-height:60px;padding:.7rem 1.5rem}
.hero .btn.big{background:#ffd166;color:#0b1f33}
.section{padding:2.2rem 1rem}
h2{font-size:1.75rem;margin:0 0 .6rem;color:var(--navy)}
h3{font-size:1.3rem;margin:0}
.lead{font-size:1.2rem}
.grid{display:grid;gap:1.2rem;grid-template-columns:1fr;margin-top:1rem}
.card{border:2px solid #c9d3dc;border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.card img{aspect-ratio:16/9;object-fit:cover;width:100%}
.card-body{padding:1rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.card-body p{margin:0}
.place{color:#33475b;font-weight:600}
.rent{font-size:1.6rem;font-weight:800;color:var(--ink)}.rent span{font-size:1rem;font-weight:600}
.facts{list-style:none;padding:0;margin:.2rem 0;display:flex;flex-wrap:wrap;gap:.4rem}
.facts li{background:var(--sand);border:1px solid #d8cdb5;border-radius:8px;padding:.15rem .6rem;font-weight:700}
.terms{color:#33475b}
.card .btn{margin-top:auto;background:var(--sea);color:#fff;width:100%}
.contact{background:var(--sand)}
.two{display:grid;gap:2rem;grid-template-columns:1fr}
.big-line{font-size:1.4rem;font-weight:800;margin:.3rem 0;word-break:break-word}
.form{display:flex;flex-direction:column;gap:.35rem;background:#fff;border:2px solid #c9d3dc;border-radius:14px;padding:1.2rem}
.form label{font-weight:700;margin-top:.5rem}
.form input,.form select,.form textarea{font:inherit;font-size:1.05rem;min-height:56px;padding:.6rem;border:2px solid #4a5d70;border-radius:8px;width:100%;background:#fff;color:var(--ink)}
.form button{margin-top:1rem;width:100%;border:none}
.hp{position:absolute;left:-9999px}
.foot{background:var(--ink);color:#fff;padding:1.5rem 0;font-size:1rem}
.foot a{color:#ffd166}
@media(min-width:760px){
 .contact-btns{width:auto}.top .btn{flex:0 0 auto}
 .hero{padding:5rem 0}.hero h1{font-size:2.6rem}
 .grid{grid-template-columns:repeat(2,1fr)}
 .two{grid-template-columns:1fr 1fr}
}
@media(min-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}}
.units{list-style:none;padding:0;margin:.4rem 0 0;display:flex;flex-direction:column;gap:.8rem}
.unit{border-top:2px solid #c9d3dc;padding-top:.8rem;display:flex;flex-direction:column;gap:.35rem}
.unit p{margin:0}
.unit-name{font-weight:800;font-size:1.1rem;color:var(--ink)}
.badge{display:inline-block;margin-left:.3rem;padding:.1rem .6rem;border-radius:999px;font-size:.85rem;font-weight:800;vertical-align:middle;white-space:nowrap}
.badge.avail{background:#d9f2e3;color:#0d4d2a;border:2px solid #1f7a45}
.badge.muted{background:#e6e9ec;color:#2b3a48;border:2px solid #8a97a3}
.unit.leased{background:#f4f6f8;border-radius:10px;padding:.8rem;border-top:none}
.unit.leased .facts li{background:#fff;border-color:#c9d3dc}
.building .btn{margin-top:.3rem}
@media(min-width:1100px){.building{grid-column:span 2}}
.gallery{background:#e9edf1}
.gallery .g-main{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e9edf1;display:block}
.g-note,.g-count{margin:0;padding:.35rem 1rem 0;font-size:.95rem;font-weight:700;color:#1d2b38}
.g-thumbs{list-style:none;margin:0;padding:.5rem 1rem .8rem;display:flex;gap:.5rem;overflow-x:auto;scroll-snap-type:x mandatory}
.g-thumbs li{flex:0 0 auto;scroll-snap-align:start}
.g-thumb{display:block;width:96px;height:72px;border:3px solid #fff;border-radius:8px;overflow:hidden;background:#fff}
.g-thumb img{width:100%;height:100%;object-fit:cover}
.g-thumb[aria-current="true"]{border:4px solid var(--navy);outline:2px solid #ffd166}


.more{display:inline-flex;align-items:center;min-height:48px;font-weight:700;font-size:1rem}
.leased-card .card-body h3 .badge{font-size:.8rem}
@media(min-width:1100px){#bo-korea-gallery{grid-column:span 1}}
@media(min-width:1100px){.building .gallery .g-main{aspect-ratio:16/9}}
