/* Public website: shared components and the desktop layer. Mobile keeps its current look; rules for wide screens live in min-width queries. */
:root{--wrap:1300px;--card:#fffdf8;--shadow:0 12px 32px #182b2a12}

/* Breadcrumbs */
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0 0 22px;padding:0;font-size:.78rem;color:var(--muted)}
.crumbs li{display:inline-flex;align-items:center;gap:8px;min-width:0}
.crumbs li+li::before{content:"›";opacity:.55}
.crumbs a:hover{color:var(--orange);text-decoration:underline}
.crumbs [aria-current]{color:var(--ink);font-weight:600;max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Filter chips (categories, event period) */
.chips{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;margin-top:16px;scrollbar-width:thin;scrollbar-color:#c8d0bf transparent;-webkit-overflow-scrolling:touch}
.chip{flex:0 0 auto;padding:8px 16px;border:1px solid #cfd6c7;border-radius:30px;background:var(--card);font-size:.78rem;font-weight:500;color:var(--green);white-space:nowrap;transition:border-color .18s,background .18s,color .18s}
.chip:hover{border-color:var(--orange);color:var(--orange)}
.chip[aria-current]{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}

/* Listing header: one compact row instead of a tall banner */
.listing-head{padding-top:30px;padding-bottom:26px}
.listing-head .head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 40px;flex-wrap:wrap}
.listing-head h1{margin:0;font-size:clamp(1.8rem,3vw,3rem)}
.listing-head .eyebrow{margin-bottom:8px}
.listing-head .search{margin:0;flex:1 1 360px;max-width:560px}

/* Cards: show the whole poster over a soft blurred copy of itself instead of cropping the text away */
.card-art[style]{isolation:isolate}
.card-art[style]::before{content:"";position:absolute;inset:-24px;background:var(--art) center/cover;filter:blur(22px) saturate(1.15);opacity:.55;z-index:-1}
.card-art[style] img{position:relative;object-fit:contain}
.content-card .card-content{display:flex;flex-direction:column}
.content-card .card-content .read-link{margin-top:auto}
.content-card .card-content p{min-height:0}

/* Article page */
.detail-wrap{max-width:calc(var(--wrap) + 2*max(5vw,24px));margin:0 auto;padding:26px max(5vw,24px) 70px}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
.detail-layout>.detail.section{max-width:none;margin:0;padding:0;border:0;min-height:0}
.detail-layout .detail>.eyebrow{margin-top:0}
.detail-layout .detail h1{font-size:clamp(1.8rem,3vw,2.9rem);line-height:1.4;margin-bottom:14px}
.meta-line{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:.82rem;margin:0 0 6px}
.detail-layout .detail-image{margin:22px 0}
.detail-layout .detail .prose{max-width:760px;font-size:1.06rem}
.detail-layout .detail .actions{max-width:760px}
.detail-aside{display:grid;gap:18px;position:sticky;top:104px}
.share-box,.related-box,.app-mini{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}
.share-box>strong,.related-box>strong{display:block;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}
.share-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.share-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border:1px solid var(--line);border-radius:30px;background:#fff;font:600 .78rem/1 inherit;color:var(--ink);transition:border-color .18s,transform .18s}
.share-btn:hover{border-color:var(--orange);transform:translateY(-1px)}
.share-btn i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-style:normal;font-weight:700;font-size:.85rem;color:#fff;background:var(--green)}
.share-btn.wa i{background:#25d366}.share-btn.fb i{background:#1877f2}.share-btn.tg i{background:#229ed9}.share-btn.x i{background:#111}
.related-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e7e9df}
.related-box>strong{margin-bottom:6px}
.related-item img,.related-art{width:68px;height:68px;flex:0 0 68px;border-radius:10px;object-fit:cover;background:#eceadf}
.related-art{display:grid;place-items:center;color:var(--orange);font-size:1.4rem}
.related-item b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:.86rem;line-height:1.5}
.related-item:hover b{color:var(--orange)}
.related-item small{display:block;color:var(--muted);font-size:.7rem;margin-top:3px}
.related-box>.read-link{display:inline-block;margin-top:14px}
.app-mini{background:var(--green);border-color:var(--green);color:#fffdf0;display:grid;gap:12px;justify-items:start}
.app-mini .app-icon{width:46px;min-width:46px;height:46px;font-size:1.4rem;border-radius:12px;background:#ffffff1a;border:1px solid #ffffff2b}
.app-mini p{margin:0;font-size:.86rem;line-height:1.7;color:#e6eee6}

/* Footer */
.footer-grid{grid-template-columns:1.7fr 1fr 1fr 1fr;gap:48px}
.footer-grid h3{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:#eeac7d;margin-bottom:18px}
.footer-grid a:hover{color:#fff;text-decoration:underline}
.footer-about .button{display:inline-flex;margin-top:10px;width:auto}
.footer-about p{max-width:420px}

/* Matrimonial cards */
.profile-photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;background:#edf0e6;display:block}

@media(max-width:1000px){
 .detail-layout{grid-template-columns:1fr;gap:30px}
 .detail-aside{position:static}
 .footer-grid{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}
}
@media(max-width:760px){
 .detail-wrap{padding:18px 18px 40px}
 .listing-head{padding:22px 18px}
 .listing-head .head-row{gap:14px}
 .listing-head .search{flex-basis:100%;max-width:none}
 .crumbs ol{margin-bottom:14px;font-size:.72rem}
 .crumbs [aria-current]{max-width:26ch}
 .chips{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
 .share-btn span{display:none}.share-btn{padding:6px}.share-btn.copy span{display:inline;padding-right:8px}
 .detail-layout .detail h1{font-size:1.7rem}
}

/* Desktop */
@media(min-width:1001px){
 body{font-size:16.5px}
 .header{padding-top:14px;padding-bottom:14px}
 .header nav{gap:4px}
 .header nav a{position:relative;padding:9px 13px;border-radius:9px;font-weight:500;font-size:.88rem;transition:background .18s,color .18s}
 .header nav a:hover{background:#eef0e6;color:var(--green)}
 .header nav a[aria-current]{color:var(--orange);background:#fff1e6;font-weight:600}
 .hero{padding-top:56px;padding-bottom:64px;min-height:560px}
 .section{padding-top:72px;padding-bottom:72px}
 .section-heading{margin-bottom:38px}
 .card-grid{gap:28px}
 .content-card .card-content{padding:26px}
 .content-card .card-content p{font-size:.9rem}
 .service-card{padding:32px}
 .service-card:hover,.content-card:hover{box-shadow:var(--shadow)}
}
@media(min-width:1101px){
 .listing-grid.has-feature>.content-card:first-child{grid-column:span 2;display:grid;grid-template-columns:1.1fr 1fr}
 .listing-grid.has-feature>.content-card:first-child .card-art{aspect-ratio:auto;height:auto;min-height:380px}.listing-grid.has-feature>.content-card:first-child .card-art img{position:absolute;inset:0;width:100%;height:100%}
 .listing-grid.has-feature>.content-card:first-child .card-content{justify-content:center;padding:36px}
 .listing-grid.has-feature>.content-card:first-child h3{font-size:1.65rem;-webkit-line-clamp:4}
 .listing-grid.has-feature>.content-card:first-child p{-webkit-line-clamp:5;font-size:.95rem}

}
@media(min-width:1600px){
 .card-grid:not(.listing-grid){grid-template-columns:repeat(4,minmax(0,1fr))}
}
