/* ==========================================================================
   Otto34 — Portföyler sayfası (page-portfoyler.php)
   ========================================================================== */
.o34-page-hero{background:var(--ink);color:#fff;position:relative;overflow:hidden;}
.o34-page-hero::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 1px,transparent 1px 11px);}
.o34-page-hero__inner{position:relative;padding:clamp(40px,4.5vw,60px) 0 clamp(32px,4vw,48px);}
.o34-page-hero__crumb{font-size:11.5px;letter-spacing:.16em;font-weight:600;color:rgba(255,255,255,.55);text-transform:uppercase;margin-bottom:6px;}
.o34-page-hero h1{font-size:clamp(27px,3.4vw,40px);line-height:1.16;color:#fff;}
.o34-page-hero p{margin-top:14px;font-size:15.5px;line-height:1.6;color:rgba(255,255,255,.72);max-width:640px;}

.o34-sahibinden-bar{border-bottom:1px solid var(--line);background:#fff;}
.o34-sahibinden-bar__inner{padding:12px 0;display:flex;justify-content:flex-end;}
.o34-sahibinden-bar a{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-2);border:1px solid var(--line-2);border-radius:2px;padding:8px 13px;transition:border-color .15s,color .15s;}
.o34-sahibinden-bar a:hover{border-color:var(--otto-red);color:var(--otto-red);}
.o34-sahibinden-bar .dot{width:6px;height:6px;border-radius:50%;background:var(--otto-red);display:inline-block;}

.o34-tabs{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:72px;z-index:40;}
.o34-tabs__inner{display:flex;gap:4px;overflow-x:auto;}
.o34-tabs button{padding:15px 16px;cursor:pointer;white-space:nowrap;font-size:13.5px;font-weight:600;color:var(--ink-2);border:none;background:transparent;border-bottom:2px solid transparent;margin-bottom:-1px;}
.o34-tabs button.is-active{color:var(--otto-red);border-bottom-color:var(--otto-red);}

.o34-filters-mobile-btn{display:none;padding:16px 0 0;}
.o34-filters-mobile-btn__inner{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border:1px solid var(--line-2);border-radius:2px;font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer;background:#fff;}
@media(max-width:900px){
  .o34-filters-mobile-btn{display:block;}
  #o34-filters{display:none;}
  #o34-filters.mobile-open{display:block;}
}

.o34-portfoyler-body{padding:24px 0 clamp(56px,7vw,88px);display:flex;gap:32px;align-items:flex-start;}
.o34-filters{flex:0 0 264px;width:100%;background:#fff;border:1px solid var(--line);border-radius:4px;padding:22px;position:sticky;top:128px;margin-bottom:8px;}
.o34-filters__heading{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;}
.o34-filter-label{font-size:11px;letter-spacing:.05em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:8px;}
.o34-filter-select{width:100%;padding:10px 11px;border:1px solid var(--line-2);border-radius:2px;font-size:13.5px;background:#fff;margin-bottom:14px;}
.o34-filter-range{display:flex;gap:8px;margin-bottom:18px;}
.o34-filter-range input{width:100%;padding:10px 11px;border:1px solid var(--line-2);border-radius:2px;font-size:13.5px;}
.o34-filter-list{display:flex;flex-direction:column;gap:7px;margin-bottom:20px;}
.o34-filter-list button{padding:9px 11px;border-radius:2px;cursor:pointer;font-size:13.5px;font-weight:600;background:transparent;border:none;color:var(--ink-2);text-align:left;}
.o34-filter-list button.is-active{background:var(--ground-2);color:var(--otto-red);}
.o34-filters__proje{margin-top:0;padding-top:0;border-top:none;}
.o34-filters__proje.is-bordered{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);}
.o34-filters__proje-head{display:inline-flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--ink);margin-bottom:12px;}
.o34-filters__proje-head .badge{width:16px;height:16px;border-radius:3px;background:var(--ink);color:#fff;font-size:9px;display:inline-flex;align-items:center;justify-content:center;}
.o34-filter-checks{display:flex;flex-direction:column;gap:9px;margin-bottom:8px;}
.o34-filter-check{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--ink-2);cursor:pointer;background:none;border:none;padding:0;text-align:left;}
.o34-filter-check__box{width:18px;height:18px;flex-shrink:0;border-radius:3px;border:1px solid var(--line-2);background:#fff;color:transparent;font-size:11px;display:inline-flex;align-items:center;justify-content:center;}
.o34-filter-check.is-active .o34-filter-check__box{border-color:var(--otto-red);background:var(--otto-red);color:#fff;}
.o34-filter-note{font-size:11px;color:var(--muted);margin-bottom:16px;}
.o34-filter-reset{width:100%;padding:12px;background:var(--otto-red);color:#fff;border:none;border-radius:2px;font-size:14px;font-weight:600;cursor:pointer;}
.o34-filter-reset:hover{background:var(--otto-red-d);}

.o34-grid-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:22px;}
.o34-grid-head__count{font-size:13.5px;color:var(--muted);}
.o34-grid-head__count strong{color:var(--ink-2);font-weight:600;}
.o34-grid-head__sort{display:flex;align-items:center;gap:10px;}
.o34-grid-head__sort span{font-size:12.5px;color:var(--muted);}
.o34-grid-head__sort select{padding:9px 11px;border:1px solid var(--line-2);border-radius:2px;font-size:13px;background:#fff;}

.o34-listing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;}
.o34-listing-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:box-shadow .18s,transform .18s;}
.o34-listing-card:hover{box-shadow:0 16px 38px -22px rgba(0,0,0,.35);transform:translateY(-3px);}
.o34-p-card{border-top:3px solid var(--ink);}
.o34-listing-card__link{display:block;}
.o34-listing-card__media{position:relative;aspect-ratio:16/11;overflow:hidden;background:linear-gradient(140deg,#d6d8d1 0%,#e8eae3 48%,#dadcd4 100%);}
.o34-listing-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}
.o34-listing-card__body{padding:20px 20px 18px;}
.o34-listing-card__title{font-size:17px;line-height:1.3;font-weight:600;min-height:44px;}
.o34-listing-card__loc{display:flex;align-items:center;gap:6px;margin-top:9px;font-size:13px;color:var(--muted);}
.o34-listing-card__loc .dot{width:5px;height:5px;background:var(--otto-red);border-radius:50%;display:inline-block;}
.o34-listing-card__foot{display:flex;align-items:flex-end;justify-content:space-between;margin-top:12px;gap:10px;}
.o34-listing-card__price{font-family:'Source Serif 4',serif;font-size:19px;font-weight:700;color:var(--ink);line-height:1.2;}
.o34-p-card .o34-listing-card__price{font-size:17px;}
.o34-card__price-original{font-size:10.5px;color:var(--muted);margin-top:2px;}
.o34-listing-card__cta{font-size:12.5px;font-weight:600;color:var(--otto-red);white-space:nowrap;}
.o34-g-card__meta{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-2);font-weight:500;}
.o34-p-card__facts{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:7px;}
.o34-p-card__facts > div{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;}
.o34-p-card__facts > div > span:first-child{color:var(--muted);}
.o34-p-card__facts > div > span:last-child{color:var(--ink-2);font-weight:600;}
.o34-p-card__durum{padding:3px 9px;border-radius:2px;font-size:11px;font-weight:700;color:#fff;}
.o34-p-card__durum--hazir{background:#1f7a43;}
.o34-p-card__durum--insaat{background:var(--otto-red);}
.o34-p-card__durum--onsatis{background:#b5851f;}
.o34-p-card__durum--tamamlandi{background:var(--ink);}
.o34-p-card__pills{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px;}
.o34-p-card__pill{padding:3px 8px;background:var(--ground-2);border-radius:2px;font-size:10.5px;font-weight:600;color:var(--ink-2);}
.o34-card__tag{position:absolute;top:12px;left:12px;padding:5px 11px;border-radius:2px;font-size:11.5px;font-weight:700;letter-spacing:.03em;color:#fff;z-index:2;}
.o34-card__tag--satilik{background:var(--otto-red);}
.o34-card__tag--kiralik{background:var(--ink);}
.o34-card__tag--proje{background:var(--ink);letter-spacing:.06em;}

.o34-no-results{padding:56px 24px;text-align:center;border:1px dashed var(--line-2);border-radius:4px;color:var(--muted);}
.o34-no-results__title{font-family:'Source Serif 4',serif;font-size:19px;color:var(--ink);margin-bottom:8px;}
.o34-no-results p{font-size:14px;}

@media(max-width:640px){
  .o34-portfoyler-body{flex-direction:column;}
  .o34-filters{position:static;}
}
