.ogh-directory { min-height: 65vh; }
.ogh-directory-hero { padding: 52px 0 38px; border-bottom: 1px solid var(--ogh-border, #e7e8f1); background: linear-gradient(180deg,#fbfaff,#f3f5ff); }
.ogh-directory-hero h1 { margin: 15px 0 5px; font-size: clamp(34px,5vw,56px); letter-spacing: -.04em; }
.ogh-directory-hero p { margin: 0; color: var(--ogh-muted,#6f7280); }
.ogh-directory-intro{max-width:850px;color:var(--ogh-muted,#6f7280)}.ogh-directory-intro p{margin:8px 0}.ogh-directory-seo{padding:30px;border:1px solid var(--ogh-border,#e7e8f1);border-radius:22px;background:white}.ogh-directory-seo details{border-top:1px solid var(--ogh-border,#e7e8f1)}.ogh-directory-seo summary{padding:15px 0;font-weight:800;cursor:pointer}
.ogh-breadcrumbs { display: flex; gap: 8px; color: var(--ogh-muted,#6f7280); font-size: 14px; }
.ogh-breadcrumbs a { color: var(--ogh-primary,#6c63ff); }
.ogh-directory-filters { display: grid; grid-template-columns: minmax(250px,1.5fr) repeat(5,minmax(120px,.65fr)) auto auto; gap: 9px; margin-top: 25px; padding: 12px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 18px; background: white; box-shadow: var(--ogh-shadow,0 18px 50px rgba(45,38,96,.08)); }
.ogh-directory-filters input,.ogh-directory-filters select { width: 100%; height: 46px; padding: 0 13px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 11px; background: white; }
.ogh-directory-filters button { padding: 0 20px; border: 0; border-radius: 11px; color: white; background: var(--ogh-primary,#6c63ff); font-weight: 800; }
.ogh-directory-filters > a { display: grid; place-items: center; padding: 0 12px; color: var(--ogh-muted,#6f7280); font-weight: 750; }
.ogh-empty { padding: 56px 24px; border: 1px dashed #d4d5e5; border-radius: 22px; background: white; text-align: center; }
.ogh-empty h1,.ogh-empty h2 { margin-top: 0; }
.ogh-empty p { color: var(--ogh-muted,#6f7280); }
.ogh-pagination { margin-top: 35px; }
.ogh-pagination ul { display: flex; justify-content: center; gap: 7px; padding: 0; list-style: none; }
.ogh-pagination a,.ogh-pagination span { min-width: 42px; height: 42px; display: grid; place-items: center; padding: 0 10px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 11px; background: white; }
.ogh-pagination .current { color: white; border-color: var(--ogh-primary,#6c63ff); background: var(--ogh-primary,#6c63ff); }
.ogh-entity-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.ogh-entity-grid > a { min-height: 110px; padding: 20px; display: flex; flex-direction: column; justify-content: end; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 18px; background: white; }
.ogh-entity-grid strong { font-size: 18px; }
.ogh-entity-grid span { color: var(--ogh-muted,#6f7280); font-size: 13px; }
.ogh-location-region{margin-bottom:34px}.ogh-location-region h2{margin:0 0 14px}.ogh-location-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ogh-location-pills a,.ogh-city-cloud a{display:flex;align-items:center;gap:10px;padding:13px 15px;border:1px solid var(--ogh-border,#e7e8f1);border-radius:999px;background:#fff;box-shadow:0 7px 20px rgba(45,38,96,.04)}.ogh-location-pills b{display:grid;place-items:center;min-width:34px;height:26px;border-radius:999px;color:#fff;background:var(--ogh-primary,#6c63ff);font-size:10px}.ogh-location-pills span{flex:1;font-weight:750}.ogh-location-pills small,.ogh-city-cloud small{margin-left:auto;color:var(--ogh-muted,#6f7280)}.ogh-city-cloud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ogh-city-cloud a{border-radius:15px;flex-wrap:wrap}.ogh-city-cloud a span{width:100%;color:var(--ogh-muted,#6f7280);font-size:12px}.ogh-section-row{display:flex;align-items:center;justify-content:space-between}.ogh-section-row a{color:var(--ogh-primary,#6c63ff);font-weight:750}
.ogh-profile-wrap { padding-top: 32px; padding-bottom: 70px; }
.ogh-profile { display: grid; grid-template-columns: minmax(300px,.75fr) 1.25fr; gap: 42px; margin-top: 24px; padding: 28px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 24px; background: white; box-shadow: var(--ogh-shadow,0 18px 50px rgba(45,38,96,.08)); }
.ogh-profile-gallery{min-width:0}.ogh-profile-media { overflow: hidden; aspect-ratio: 4/5; border-radius: 18px; background: linear-gradient(145deg,#ffd6e7,#c8c2ff); }
.ogh-profile-media img { width: 100%; height: 100%; object-fit: cover; }
.ogh-gallery-open{width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}.ogh-profile-thumbs{display:grid;grid-auto-flow:column;grid-auto-columns:72px;gap:8px;margin-top:10px;overflow-x:auto;padding:2px 2px 8px}.ogh-profile-thumbs button{width:72px;aspect-ratio:1;padding:0;overflow:hidden;border:2px solid transparent;border-radius:10px;background:#eee;cursor:pointer}.ogh-profile-thumbs button.is-active{border-color:var(--ogh-primary,#6c63ff)}.ogh-profile-thumbs img{width:100%;height:100%;object-fit:cover}
.ogh-lightbox{width:min(92vw,900px);max-width:900px;padding:0;border:0;border-radius:18px;background:#111;box-shadow:0 25px 90px rgba(0,0,0,.4)}.ogh-lightbox::backdrop{background:rgba(9,9,18,.84)}.ogh-lightbox img{display:block;width:100%;max-height:88vh;object-fit:contain}.ogh-lightbox-close,.ogh-lightbox-prev,.ogh-lightbox-next{position:absolute;z-index:2;width:44px;height:44px;border:0;border-radius:50%;color:#111;background:rgba(255,255,255,.9);font-size:28px;cursor:pointer}.ogh-lightbox-close{top:12px;right:12px}.ogh-lightbox-prev,.ogh-lightbox-next{top:50%;transform:translateY(-50%)}.ogh-lightbox-prev{left:12px}.ogh-lightbox-next{right:12px}
.ogh-image-placeholder { width: 100%; height: 100%; display: grid; place-items: center; color: white; font-size: 50px; font-weight: 900; }
.ogh-profile-copy { align-self: center; }
.ogh-profile-copy h1 { margin: 12px 0 0; font-size: clamp(38px,5vw,64px); line-height: 1; letter-spacing: -.045em; }
.ogh-profile-handle { color: var(--ogh-muted,#6f7280); font-size: 18px; }
.ogh-profile-badges { display: flex; gap: 8px; }
.ogh-profile-badges span { padding: 6px 10px; border-radius: 999px; color: #9a5b00; background: #fff3d4; font-size: 12px; font-weight: 850; }
.ogh-profile-badges .is-free { color: #087244; background: #dcfce9; }
.ogh-profile-lead { font-size: 18px; }
.ogh-profile-cta { min-height: 52px; margin-top: 25px; display: inline-grid; place-items: center; padding: 0 25px; border-radius: 13px; color: white; background: var(--ogh-primary,#6c63ff); font-weight: 850; }
.ogh-profile-note { max-width: 560px; color: var(--ogh-muted,#6f7280); font-size: 12px; }
.ogh-profile-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 18px 0; }
.ogh-profile-stat { min-height: 92px; display: grid; align-content: center; gap: 2px; padding: 15px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 16px; background: #f8f9fd; }
.ogh-profile-stat > span { color: var(--ogh-primary,#6c63ff); font-size: 16px; }
.ogh-profile-stat strong { font-size: 24px; line-height: 1.1; }
.ogh-profile-stat small { color: var(--ogh-muted,#6f7280); font-size: 12px; }
.ogh-profile-stat.is-subscription { border-color: #ffc2dc; background: #fff0f7; }
.ogh-profile-stat.is-subscription strong { color: #e82e80; }
.ogh-profile-badges .is-paid { color: #bd1762; background: #ffe6f1; }
.ogh-profile-taxonomies { margin-top: 15px; }
.ogh-profile-taxonomies > strong { display: block; margin-bottom: 7px; font-size: 13px; }
.ogh-profile-taxonomies .tag-list { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; }
.ogh-profile-taxonomies .tag-list a { padding: 7px 10px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 999px; color: #5549d8; background: #f4f2ff; font-size: 12px; font-weight: 750; }
.ogh-profile-socials { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.ogh-profile-socials a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 11px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 999px; color: #2d2e39; background: white; font-size: 12px; font-weight: 800; }
.ogh-profile-socials a span { color: var(--ogh-primary,#6c63ff); font-size: 15px; }
.ogh-profile-socials a:hover { color: white; border-color: var(--ogh-primary,#6c63ff); background: var(--ogh-primary,#6c63ff); }
.ogh-profile-socials a:hover span { color: white; }
.ogh-profile-about { margin-top: 24px; padding: 30px; border: 1px solid var(--ogh-border,#e7e8f1); border-radius: 22px; background: white; }
.ogh-profile-about h2{margin-top:0}.ogh-profile-seo p{max-width:900px;line-height:1.75}.ogh-profile-faq-list{display:grid;gap:10px}.ogh-profile-faq details{border:1px solid var(--ogh-border,#e7e8f1);border-radius:14px;background:#fafaff}.ogh-profile-faq summary{padding:16px 18px;font-weight:800;cursor:pointer}.ogh-profile-faq details p{margin:0;padding:0 18px 18px;color:var(--ogh-muted,#6f7280);line-height:1.65}
.ogh-directory-fallback-card { overflow: hidden; padding: 16px; border: 1px solid #e7e8f1; border-radius: 18px; background: white; }
.ogh-directory-fallback-card img { width: 100%; aspect-ratio: 4/5; object-fit: cover; border-radius: 12px; }
@media(max-width:900px){.ogh-directory-filters{grid-template-columns:1fr 1fr}.ogh-directory-filters label{grid-column:1/-1}.ogh-entity-grid{grid-template-columns:repeat(2,1fr)}.ogh-location-pills,.ogh-city-cloud{grid-template-columns:repeat(2,1fr)}.ogh-profile{grid-template-columns:1fr}.ogh-profile-media{max-width:520px}}
@media(max-width:600px){.ogh-directory-filters{grid-template-columns:1fr}.ogh-directory-filters label{grid-column:auto}.ogh-directory-filters button{min-height:46px}.ogh-entity-grid,.ogh-location-pills,.ogh-city-cloud{grid-template-columns:1fr}.ogh-profile{padding:16px;gap:24px}.ogh-profile-copy h1{font-size:40px}.ogh-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 1.1.4 DACH navigation and keyword category cards */
.ogh-category-countries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:-32px 0 30px;position:relative;z-index:3}.ogh-category-countries a{min-height:112px;display:flex;align-items:center;gap:18px;padding:20px 24px;border:1px solid #ded8cf;border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(31,27,23,.09);transition:transform .2s ease,border-color .2s ease}.ogh-category-countries a:hover{transform:translateY(-4px);border-color:#c89b4b}.ogh-category-countries strong{font-family:Georgia,"Times New Roman",serif;font-size:19px;line-height:1.3}.ogh-category-countries em{display:block;color:#a77931;font-style:normal}.ogh-country-flag{position:relative;overflow:hidden;flex:0 0 64px;width:64px;height:42px;border:1px solid rgba(0,0,0,.12);border-radius:5px;box-shadow:0 5px 12px rgba(0,0,0,.13)}.ogh-country-flag.is-de{background:linear-gradient(to bottom,#151515 0 33.33%,#d42b2f 33.33% 66.66%,#efc84a 66.66%)}.ogh-country-flag.is-at{background:linear-gradient(to bottom,#d72d35 0 33.33%,#fff 33.33% 66.66%,#d72d35 66.66%)}.ogh-country-flag.is-ch{background:#d52b36}.ogh-country-flag.is-ch::before,.ogh-country-flag.is-ch::after{content:"";position:absolute;left:50%;top:50%;background:#fff;transform:translate(-50%,-50%)}.ogh-country-flag.is-ch::before{width:27px;height:9px}.ogh-country-flag.is-ch::after{width:9px;height:27px}.ogh-category-entity-grid strong{font-family:Georgia,"Times New Roman",serif;font-size:20px}.ogh-category-entity-grid>a{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.ogh-category-entity-grid>a:hover{transform:translateY(-3px);border-color:#c89b4b;box-shadow:0 13px 28px rgba(38,32,25,.08)}
@media(max-width:900px){.ogh-category-countries{grid-template-columns:1fr}.ogh-category-countries a{min-height:88px}}
.ogh-country-referrals{margin:0 0 48px}.ogh-country-referrals-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 22px;padding-bottom:16px;border-bottom:1px solid #dfd7cc}.ogh-country-referrals-heading span,.ogh-country-organic-heading span{display:block;margin-bottom:7px;color:#b47d2c;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ogh-country-referrals-heading h2,.ogh-country-organic-heading h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(27px,3vw,40px);line-height:1.1}.ogh-country-referrals-heading p{max-width:420px;margin:0;color:#6e6a64;text-align:right}.ogh-random-grid-item{display:none;min-width:0}.ogh-random-grid-item.is-selected{display:block}.ogh-random-grid-item>.creator-card{height:100%}.ogh-country-organic-heading{margin:8px 0 22px;padding-top:34px;border-top:1px solid #dfd7cc}@media(max-width:720px){.ogh-country-referrals-heading{align-items:flex-start;flex-direction:column}.ogh-country-referrals-heading p{text-align:left}}
