.yedi-portfolio-public { --yedi-navy:#07124f; --yedi-green:#17631d; --yedi-yellow:#ffd213; color:#171923; }
.yedi-portfolio-shell { width:min(1180px,calc(100% - 40px)); margin:0 auto; padding:64px 0; }
.yedi-portfolio-heading { margin-bottom:34px; }
.yedi-portfolio-heading > span { color:var(--yedi-green); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.yedi-portfolio-heading h1 { max-width:900px; margin:10px 0; color:var(--yedi-navy); font-size:clamp(34px,5vw,64px); line-height:1.04; }
.yedi-portfolio-heading p { color:#5f6670; }
.yedi-public-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:36px; }
.yedi-public-gallery img { display:block; width:100%; height:250px; object-fit:cover; }
.yedi-public-gallery img:first-child { grid-column:span 2; grid-row:span 2; height:510px; }
.yedi-public-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:52px; align-items:start; }
.yedi-public-content { font-size:17px; line-height:1.75; }
.yedi-public-details { margin-top:36px; }
.yedi-public-details h2 { color:var(--yedi-navy); }
.yedi-public-details dl,.yedi-public-summary dl { margin:0; }
.yedi-public-details dl > div,.yedi-public-summary dl > div { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid #e1e4e8; }
.yedi-public-details dt,.yedi-public-summary dt { color:#69717c; }
.yedi-public-details dd,.yedi-public-summary dd { margin:0; font-weight:650; text-align:right; }
.yedi-public-summary { position:sticky; top:30px; padding:28px; border:1px solid #dfe3e9; background:#fff; box-shadow:0 18px 50px rgba(7,18,79,.08); }
.yedi-public-price { display:block; margin-bottom:18px; color:var(--yedi-green); font-size:28px; }
.yedi-public-agent { display:grid; gap:5px; margin-top:24px; padding-top:20px; border-top:3px solid var(--yedi-yellow); }
.yedi-public-agent span { color:#69717c; font-size:12px; }
.yedi-public-agent a { color:var(--yedi-green); }
.yedi-public-whatsapp { display:block; margin-top:18px; padding:13px 16px; background:var(--yedi-green); color:#fff; font-weight:700; text-align:center; text-decoration:none; }
.yedi-public-whatsapp:hover,.yedi-public-whatsapp:focus { background:var(--yedi-navy); color:#fff; }
.yedi-public-filters { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin-bottom:32px; padding:20px; background:#f4f5f7; }
.yedi-public-filters label { display:grid; gap:5px; font-size:12px; font-weight:650; }
.yedi-public-filters input,.yedi-public-filters select,.yedi-public-filters button { min-height:42px; padding:8px 10px; }
.yedi-public-filters button { align-self:end; border:0; background:var(--yedi-yellow); color:var(--yedi-navy); font-weight:700; cursor:pointer; }
.yedi-public-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.yedi-public-card { overflow:hidden; border:1px solid #e1e4e8; background:#fff; }
.yedi-public-card a { color:inherit; text-decoration:none; }
.yedi-public-card img { display:block; width:100%; height:230px; object-fit:cover; }
.yedi-public-card div { padding:20px; }
.yedi-public-card span { color:#69717c; font-size:12px; }
.yedi-public-card h2 { margin:8px 0 18px; color:var(--yedi-navy); font-size:24px; }
.yedi-public-card strong { color:var(--yedi-green); }
.yedi-public-pagination { margin-top:36px; }

/* Single portfolio discovery — rendered by the plugin below any theme template. */
.yedi-single-discovery { --yedi-related-navy:#07124f; --yedi-related-green:#17631d; --yedi-related-yellow:#ffd213; --yedi-related-cream:#f5f3ec; --yedi-related-line:#dfe2e6; border-top:1px solid var(--yedi-related-line); background:#f7f7f4; color:#171923; }
.yedi-single-discovery__inner { width:min(1180px,calc(100% - 48px)); margin:0 auto; padding:42px 0 88px; }
.yedi-single-discovery__nav { display:flex; align-items:center; min-height:44px; margin-bottom:36px; }
.yedi-single-discovery__nav a { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:0 16px; border:1px solid var(--yedi-related-line); background:#fff; color:var(--yedi-related-navy); font-size:13px; font-weight:750; text-decoration:none; transition:background .2s,border-color .2s,color .2s,transform .2s; }
.yedi-single-discovery__nav a:hover,.yedi-single-discovery__nav a:focus-visible { border-color:var(--yedi-related-navy); background:var(--yedi-related-navy); color:#fff; transform:translateY(-2px); }
.yedi-single-discovery__heading { display:flex; align-items:end; justify-content:space-between; gap:28px; margin-bottom:28px; }
.yedi-single-discovery__heading > div > span { color:var(--yedi-related-green); font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.yedi-single-discovery__heading h2 { margin:8px 0 0; color:var(--yedi-related-navy); font-family:Georgia,serif; font-size:clamp(32px,4vw,46px); font-weight:500; line-height:1.1; }
.yedi-single-discovery__heading > a { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:var(--yedi-related-green); font-size:13px; font-weight:750; text-decoration:none; }
.yedi-single-discovery__heading > a:hover,.yedi-single-discovery__heading > a:focus-visible { color:var(--yedi-related-navy); text-decoration:underline; text-underline-offset:4px; }
.yedi-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.yedi-related-card { min-width:0; margin:0; overflow:hidden; border:1px solid var(--yedi-related-line); background:#fff; transition:transform .2s,box-shadow .2s; }
.yedi-related-card:hover,.yedi-related-card:focus-within { transform:translateY(-4px); box-shadow:0 18px 45px rgba(7,18,79,.1); }
.yedi-related-card__image { display:block; aspect-ratio:1.46/1; overflow:hidden; background:var(--yedi-related-navy); text-decoration:none; }
.yedi-related-card__image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.yedi-related-card:hover .yedi-related-card__image img { transform:scale(1.025); }
.yedi-related-card__placeholder { display:grid; width:100%; height:100%; place-items:center; color:var(--yedi-related-yellow); font-family:Georgia,serif; font-size:74px; }
.yedi-related-card__body { padding:22px; }
.yedi-related-card__location { display:block; overflow:hidden; color:var(--yedi-related-green); font-size:10px; font-weight:750; letter-spacing:.09em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.yedi-related-card h3 { margin:10px 0 18px; font-family:Georgia,serif; font-size:23px; font-weight:500; line-height:1.25; }
.yedi-related-card h3 a { color:var(--yedi-related-navy); text-decoration:none; }
.yedi-related-card h3 a:hover,.yedi-related-card h3 a:focus-visible { color:var(--yedi-related-green); text-decoration:underline; text-underline-offset:4px; }
.yedi-related-card__body > strong { color:var(--yedi-related-navy); font-family:Georgia,serif; font-size:21px; }
.yedi-single-discovery.is-empty .yedi-single-discovery__inner { padding-bottom:42px; }
.yedi-single-discovery.is-empty .yedi-single-discovery__nav { margin-bottom:0; }
.yedi-single-discovery a:focus-visible { outline:3px solid var(--yedi-related-navy); outline-offset:3px; }
.yedi-single-discovery .yedi-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; clip-path:inset(50%)!important; border:0!important; white-space:nowrap!important; }
@media (max-width:900px) { .yedi-public-layout{grid-template-columns:1fr}.yedi-public-summary{position:static}.yedi-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.yedi-public-filters{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:900px) { .yedi-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:620px) { .yedi-portfolio-shell{width:min(100% - 28px,1180px);padding:38px 0}.yedi-public-gallery{grid-template-columns:1fr}.yedi-public-gallery img,.yedi-public-gallery img:first-child{grid-column:auto;grid-row:auto;height:230px}.yedi-public-grid,.yedi-public-filters{grid-template-columns:1fr}.yedi-single-discovery__inner{width:min(100% - 28px,1180px);padding:30px 0 56px}.yedi-single-discovery__nav{margin-bottom:28px}.yedi-single-discovery__heading{display:grid;gap:12px}.yedi-related-grid{grid-template-columns:1fr}.yedi-related-card__body{padding:20px} }
@media print { .yedi-single-discovery{display:none!important} }
