/* IBER HOMES · Project catalog (uses /investment/assets/site.css as base) */
.catalog-page{background:var(--beige)}
.menu a[aria-current="page"]{border-bottom-color:var(--green)}

/* head */
.cat-head{padding:clamp(120px,14vw,168px) 0 clamp(28px,4vw,44px)}
.cat-head .wrap{display:block}
.crumbs{display:flex;gap:10px;align-items:center;font-size:13.5px;font-weight:500;color:#6B7684;margin-bottom:26px}
.crumbs a{color:var(--teal)}
.crumbs a:hover{color:var(--green-text)}
.cat-head h1{font-size:clamp(32px,4vw,52px);margin:14px 0 16px;max-width:820px}
.cat-lead{font-size:clamp(16px,1.4vw,18px);font-weight:500;max-width:680px;line-height:1.6}
.cat-count{margin-top:18px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}

/* filters */
.cat-body{padding-bottom:clamp(64px,8vw,104px)}
.cat-body .wrap{display:block}
.filters{display:grid;gap:14px;padding:20px 22px;margin-bottom:28px;background:var(--white);border:1px solid var(--line);border-radius:16px}
.filters[hidden]{display:none}
.fgroup{display:flex;gap:10px 14px;align-items:center;flex-wrap:wrap}
.fgroup > span{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#6B7684;min-width:96px}
.fchip{font:600 13.5px/1 var(--display);color:var(--aqua);padding:9px 14px;border-radius:30px;border:1px solid var(--line);background:var(--beige);cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.fchip:hover{border-color:var(--green)}
.fchip[aria-pressed="true"]{background:var(--aqua);border-color:var(--aqua);color:var(--light)}
.freset{justify-self:start;font:600 13.5px var(--display);color:var(--teal);background:none;border:0;padding:4px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.freset[hidden]{display:none}

/* grid + cards */
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:clamp(18px,2.2vw,28px)}
.ccard{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:box-shadow .3s,transform .3s}
.ccard:hover{box-shadow:0 30px 60px -36px rgba(16,69,81,.45);transform:translateY(-2px)}
.cc-ph{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--sand)}
.cc-ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.ccard:hover .cc-ph img{transform:scale(1.03)}
.cc-stage{position:absolute;left:14px;top:14px;display:inline-flex;gap:8px;align-items:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--aqua);padding:7px 12px;border-radius:30px;background:rgba(255,255,255,.92);backdrop-filter:blur(6px)}
.cc-body{display:flex;flex-direction:column;gap:9px;padding:20px 22px 22px;flex:1}
.cc-owner{display:inline-flex;align-self:flex-start;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--aqua);padding:5px 10px;border-radius:30px;background:var(--beige);border:1px solid var(--line)}
.cc-owner.partner{background:#F3EBDD;color:#7A5D2C}
.cc-kind{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--brass);margin-top:2px}
.ccard h3{font-size:clamp(22px,2vw,26px);line-height:1.15}
.cc-text{font-size:15px;font-weight:500;line-height:1.55}
.cc-facts{list-style:none;display:grid;gap:0;margin-top:6px;border-top:1px solid var(--line)}
.cc-facts li{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.cc-facts b{font-family:var(--display);font-weight:650;color:var(--aqua);white-space:nowrap}
.cc-facts span{text-align:right;color:#6B7684}
.cc-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:14px}
.cc-btns .btn{padding:12px 18px;font-size:13.5px}
.ccard-skel{min-height:560px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(100deg,var(--white) 30%,var(--sand) 50%,var(--white) 70%);background-size:300% 100%;animation:ccShimmer 1.4s ease infinite}
@keyframes ccShimmer{from{background-position:100% 0}to{background-position:0 0}}
.cat-msg{grid-column:1/-1;font-size:16px;font-weight:500;padding:28px;background:var(--white);border:1px dashed var(--line);border-radius:16px;text-align:center}
.cat-msg a{color:var(--teal);text-decoration:underline}

/* CTA */
.cat-cta{display:grid;grid-template-columns:1.4fr auto;gap:28px;align-items:center;margin-top:clamp(40px,5vw,64px);padding:clamp(26px,3.4vw,40px);border-radius:20px;background:var(--teal);color:var(--light)}
.cat-cta h2{color:var(--light);font-size:clamp(22px,2.4vw,30px);margin-bottom:10px}
.cat-cta p{color:var(--mint);font-size:15.5px;font-weight:500;line-height:1.6;max-width:620px}
.cat-cta-btns{display:flex;gap:10px;flex-wrap:wrap}
.cat-cta .btn-primary{background:var(--light);color:var(--aqua)}
.cat-cta .btn-primary:hover{background:#fff}
.cat-cta .btn-ghost{border-color:rgba(249,249,248,.4);color:var(--light)}
.cat-cta .btn-ghost:hover{background:rgba(249,249,248,.08);border-color:var(--light)}
.cat-disc{margin-top:26px;font-size:12.5px;line-height:1.6;color:#6B7684;max-width:760px}

@media(max-width:900px){.cat-cta{grid-template-columns:1fr}}
@media(max-width:820px){.cat-head{padding-top:150px}}
@media(max-width:560px){.fgroup > span{min-width:100%}.cc-btns .btn{flex:1;justify-content:center}}
/* header with 4 menu items: keep the logo on one line */
#hdr .brand{white-space:nowrap;flex-shrink:0}
@media(max-width:1400px){#hdr .brand .eyebrow{display:none}}

/* compact head: title only */
.cat-head{padding:clamp(116px,12vw,150px) 0 clamp(22px,3vw,34px)}
.cat-head h1{margin:0}
@media(max-width:820px){.cat-head{padding-top:140px}}

.cc-title{color:inherit}
.cc-title:hover{color:var(--teal)}

/* photo note ("Visualisation") */
.ph-note{position:absolute;right:12px;bottom:12px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(16,69,81,.72);padding:5px 9px;border-radius:20px;backdrop-filter:blur(4px)}
