/* ==========================================================================
   LUXURY NEWS — PUBLIC FRONTEND DESIGN SYSTEM (luxury-news.css)
   Premium English editorial publication. Independent of the legacy Saransh
   theme. Loaded LAST in the public <head> so it wins the cascade.
   --------------------------------------------------------------------------
   Design tokens / structure / components / responsive.
   No JS behaviour changes — only presentation.
   ========================================================================== */

:root{
  --ln-ivory:        #FAF7F2;
  --ln-white:        #FFFFFF;
  --ln-burgundy:     #7A1E1E;
  --ln-burgundy-dk:  #541414;
  --ln-burgundy-soft:#8A2B2B;
  --ln-gold:         #C8A96A;
  --ln-gold-soft:    #E6D9BD;
  --ln-ink:          #181818;
  --ln-ink-2:        #2E2A26;
  --ln-muted:        #6F6B67;
  --ln-border:       #E6E1D8;
  --ln-border-2:     #EFEAE1;
  --ln-serif:  Georgia, "Times New Roman", "Noto Serif", "Source Serif Pro", serif;
  --ln-sans:   "Helvetica Neue", Helvetica, Arial, "Segoe UI", "Roboto", sans-serif;
  --ln-masthead-h:  clamp(84px, 11vw, 150px);
  --ln-rule: 3px solid var(--ln-burgundy);
  --ln-radius: 2px;
}

/* ------------------------------- base -------------------------------- */
body{
  background:var(--ln-ivory);
  color:var(--ln-ink);
  font-family:var(--ln-sans);
  -webkit-font-smoothing:antialiased;
}
/* screen-reader-only (keeps an SEO h1 on the homepage without a visual duplicate) */
.ln-sr-only{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
h1,h2,h3,h4,h5,h6{ font-family:var(--ln-serif); color:var(--ln-ink); }
a{ color:var(--ln-burgundy); }
a:hover,a:focus{ color:var(--ln-burgundy-dk); text-decoration:none; }
img{ max-width:100%; }

/* Containers get a slightly narrower, generous reading measure on desktop */
@media (min-width:1200px){
  .container{ max-width:1200px; }
}

/* Editorial section kickers / headings */
.ln-kicker{
  font-family:var(--ln-sans);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:11px;
  font-weight:700;
  color:var(--ln-burgundy);
}
.ln-section-head{
  display:flex; align-items:baseline; justify-content:space-between;
  border-bottom:2px solid var(--ln-ink);
  margin:0 0 22px; padding:0 0 8px;
}
.ln-section-head .ln-section-title{
  font-family:var(--ln-serif); font-size:26px; font-weight:700; margin:0;
  letter-spacing:.01em;
}
.ln-section-head .ln-section-title em{ color:var(--ln-burgundy); font-style:normal; }
.ln-section-head .ln-view-all{
  font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em;
  color:var(--ln-burgundy); white-space:nowrap;
}
.ln-rule{
  height:2px; background:linear-gradient(90deg, var(--ln-burgundy) 0 120px, var(--ln-gold) 120px 200px, var(--ln-border) 200px);
  border:0; margin:14px 0 22px;
}

/* ---------------------------- images -------------------------------- */
/* IMAGE FIT SYSTEM (Phase: article image fitting)
   Editorial/news artwork is text-heavy, so the safe default is CONTAIN inside
   each fixed aspect-ratio frame — a small amount of empty space is preferred to
   cropping the words in a graphic. Photographic slots can opt into COVER with
   the .ln-img-cover utility (or by setting --ln-img-fit: cover on a frame).
   Scoped to editorial frames only; logos / icons / ads / business photos are
   intentionally untouched. */
:root{ --ln-img-fit: contain; }
.ln-img-cover, .np-img-cover, .ln-frame-cover{ --ln-img-fit: cover; }

.ln-img, .external-image-container, .np-card-media, .np-lead-media,
.ln-hero-media, .ln-card-media, .post-item .post-image-container, .post-image-container{
  background:var(--ln-ivory);
}
.ln-img, .external-image-container img, .np-card-media img, .np-lead-media img,
.ln-hero-media img, .ln-card-media img, .post-image-container img{
  width:100%; height:100%; object-fit:var(--ln-img-fit, contain); object-position:center;
  display:block;
}
.external-image-container, .np-card-media, .np-lead-media, .ln-card-media,
.ln-hero-media, .post-image-container{
  position:relative; overflow:hidden;
}
/* Consistent editorial aspect ratios */
.ln-hero-media{ aspect-ratio:16/10; }
.ln-card-media, .np-card-media{ aspect-ratio:16/10; }
.np-lead-media{ aspect-ratio:16/9; }
.ln-ratio-16x9{ aspect-ratio:16/9; }
.ln-ratio-4x3{ aspect-ratio:4/3; }
.ln-ratio-1x1{ aspect-ratio:1/1; }

/* placeholder/blank image graceful handling */
img[src*="bg_slider.png"], img[src*="bg_mid.png"], img[src*="bg_small.png"]{
  object-fit:cover;
}

/* ============================ HEADER ================================= */

/* --- utility bar --- */
.news-header .header-utility{
  background:var(--ln-ink);
  color:#EDE9E1; border-bottom:3px solid var(--ln-burgundy);
}
.news-header .header-utility a.h-util-link,
.news-header .header-utility .h-util-link{ color:#E8E2D7; font-size:12.5px; }
.news-header .header-utility a.h-util-link:hover{ color:#fff; }
.news-header .header-utility .header-utility-row{ min-height:34px; }
.news-header .header-utility time{ font-size:12.5px; letter-spacing:.02em; }
.news-header .header-utility .h-util-sep{ background:rgba(255,255,255,.25); }
.news-header .header-social-list li a{ color:#E8E2D7; }
.news-header .header-social-list li a:hover{ color:var(--ln-gold); }

/* YouTube social icon (shared header + footer social bar) */
.news-header .header-social-list li a.youtube{ background:#ff0000; }
.f-widget-follow ul li .youtube:hover{ background-color:#ff0000; color:#fff !important; }

/* --- masthead --- */
.news-header .header-brandbar{
  background:var(--ln-ivory);
  border-bottom:1px solid var(--ln-border);
  padding:18px 0 16px;
}
.news-header .header-brandbar-row{ display:flex; align-items:center; justify-content:space-between; gap:18px; }
/* Centred masthead brand */
.hb-masthead{
  flex:1 1 auto; text-align:center; min-width:0;
  display:flex; align-items:center; justify-content:center; gap:16px;
}
/* single brand — wordmark only (logo image removed from the public header) */
.hb-masthead .hb-logo{ display:none !important; }
.hb-masthead .hb-wordmark{ text-align:center; text-decoration:none; color:inherit; }
.hb-masthead .hb-wordmark .hb-site-title{
  font-family:var(--ln-serif); font-weight:700; letter-spacing:.02em;
  font-size:clamp(22px, 3.4vw, 40px); line-height:1.02; color:var(--ln-ink);
  margin:0;
}
.hb-masthead .hb-wordmark .hb-site-title span{ color:var(--ln-burgundy); }
.hb-masthead .hb-wordmark .hb-tagline{
  font-family:var(--ln-sans); font-size:11px; letter-spacing:.34em;
  text-transform:uppercase; color:var(--ln-muted); margin-top:5px;
}
.hb-masthead .hb-masthead-rule{
  width:min(180px,30vw); height:2px; margin:0 auto;
  background:linear-gradient(90deg, var(--ln-gold), var(--ln-burgundy), var(--ln-gold));
}
/* brandbar actions (search / weather / lang / login) */
.news-header .hb-actions{ flex:0 0 auto; display:flex; align-items:center; gap:14px; }
.news-header .hb-search{ flex:0 0 auto; }
.news-header .header-search-form{
  display:flex; align-items:center; gap:6px;
  border:1px solid var(--ln-border); background:var(--ln-white);
  padding:5px 6px 5px 10px; border-radius:var(--ln-radius);
}
.news-header .header-search-input{
  border:0; background:transparent; font-size:13px; color:var(--ln-ink);
  width:150px; outline:none;
}
.news-header .header-search-submit{
  border:0; background:var(--ln-burgundy); color:#fff; border-radius:var(--ln-radius);
  padding:5px 9px; font-size:13px; line-height:1;
}
.news-header .hb-action-btn, .news-header .hb-lang-btn{ font-size:12.5px; color:var(--ln-ink-2); }
.news-header .hb-weather{ color:var(--ln-ink-2); font-size:12.5px; }

/* --- primary navigation --- */
.header-navbar{
  background:var(--ln-white);
  border-top:1px solid var(--ln-border);
  border-bottom:2px solid var(--ln-ink);
  position:relative; z-index:50;
}
/* keep the JS hooks but reskin the links */
.header-navbar .nav-desktop .nav.navbar-nav > li > a{
  font-family:var(--ln-sans); font-weight:600; font-size:14.5px;
  letter-spacing:.02em; color:var(--ln-ink-2);
  padding:13px 16px; text-transform:none;
}
.header-navbar .nav-desktop .nav.navbar-nav > li > a:hover,
.header-navbar .nav-desktop .nav.navbar-nav > li.active > a,
.header-navbar .nav-desktop .nav.navbar-nav > li.active > a:focus{
  color:var(--ln-burgundy); background:transparent;
}
.header-navbar .nav-desktop .nav.navbar-nav > li{ position:relative; }
/* More dropdown */
.header-navbar .nav-desktop .dropdown-menu.top-dropdown{
  border:1px solid var(--ln-border); border-top:3px solid var(--ln-burgundy);
  border-radius:0; box-shadow:0 10px 26px rgba(24,24,24,.12);
  padding:6px 0; min-width:200px;
}
.header-navbar .nav-desktop .dropdown-menu.top-dropdown > li > a{
  font-size:13.5px; padding:8px 16px; color:var(--ln-ink-2);
}
.header-navbar .nav-desktop .dropdown-menu.top-dropdown > li > a:hover{ background:var(--ln-ivory); color:var(--ln-burgundy); }
.header-navbar .nav-desktop .dropdown-menu.top-dropdown a.dropdown-more,
.header-navbar .nav-desktop .nav.navbar-nav > li > a.dropdown-more{
  color:var(--ln-burgundy); font-weight:700;
}
/* business world access stays prominent */
.header-navbar .nav-desktop .yp-nav-icon{ color:var(--ln-burgundy); }

/* --- breaking ticker --- */
.sd-bars-wrap{ background:var(--ln-white); }
.header-breaking{
  background:var(--ln-white);
  border-bottom:1px solid var(--ln-border);
}
.header-breaking .breaking-label{
  background:var(--ln-burgundy); color:#fff; font-size:11px; font-weight:700;
  letter-spacing:.16em; padding:5px 12px; text-transform:uppercase; border-radius:0 0 3px 3px;
}
.header-breaking .breaking-track-inner a.breaking-item{
  color:var(--ln-ink); font-family:var(--ln-serif); font-size:15px; font-weight:700;
}
.header-breaking .breaking-track-inner a.breaking-item:hover{ color:var(--ln-burgundy); }
.sdw-breaking-arrow{ color:var(--ln-burgundy); }

/* ============================ HOMEPAGE ================================ */
.np-home{ background:transparent; }
.title-index{ font-family:var(--ln-serif); font-size:30px; border-bottom:2px solid var(--ln-ink); padding-bottom:8px; }

/* --- editorial hero grid --- */
.ln-hero{ display:grid; grid-template-columns:minmax(0,1.85fr) minmax(0,1fr); gap:26px; margin:26px 0 8px; }
.ln-hero-main{ }
.ln-hero-main .ln-hero-cat{ display:inline-block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.16em; color:var(--ln-burgundy); margin:12px 0 4px; }
.ln-hero-main .ln-hero-title{ font-family:var(--ln-serif); font-size:clamp(26px,3.4vw,42px); line-height:1.12; font-weight:700; margin:4px 0 8px; }
.ln-hero-main .ln-hero-title a{ color:var(--ln-ink); }
.ln-hero-main .ln-hero-title a:hover{ color:var(--ln-burgundy); }
.ln-hero-main .ln-hero-summary{ color:var(--ln-muted); font-size:16px; line-height:1.55; margin:0 0 8px; }
.ln-hero-main .ln-hero-meta{ font-size:12px; color:var(--ln-muted); }

.ln-hero-side{ display:flex; flex-direction:column; gap:24px; border-left:1px solid var(--ln-border); padding-left:26px; }
.ln-side-story{ display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
.ln-side-story + .ln-side-story{ border-top:1px solid var(--ln-border-2); padding-top:20px; }
.ln-side-story .ln-side-title{ font-family:var(--ln-serif); font-size:19px; line-height:1.3; font-weight:700; margin:4px 0 0; }
.ln-side-story .ln-side-title a{ color:var(--ln-ink); }
.ln-side-story .ln-side-title a:hover{ color:var(--ln-burgundy); }
.ln-side-story .ln-side-meta{ font-size:12px; color:var(--ln-muted); }
/* Hero right column: BOTH cards must render inside ONE exact, shared 16/10
   frame so the two images read as one aligned unit — a story's own source
   aspect ratio must never resize the card geometry. Contain + center keeps
   every graphic complete on a neutral ivory backing (no cropping, no stretch). */
.ln-hero-side .ln-card-media{ aspect-ratio:16/10; }
.ln-hero-side .ln-card-media img{ object-fit:contain; object-position:center; }

/* --- top stories --- */
.ln-top-stories{ margin:34px 0 8px; }
.ln-top-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ln-top-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); }
.ln-top-card .ln-card-cat{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--ln-burgundy); }
.ln-top-card .ln-card-title{ font-family:var(--ln-serif); font-size:19px; line-height:1.32; font-weight:700; margin:6px 0; }
.ln-top-card .ln-card-title a{ color:var(--ln-ink); }
.ln-top-card .ln-card-title a:hover{ color:var(--ln-burgundy); }
.ln-top-card .ln-card-deck{ color:var(--ln-muted); font-size:13.5px; line-height:1.5; margin:0 0 6px; }
.ln-top-card .ln-card-meta{ font-size:12px; color:var(--ln-muted); }
.ln-card-body{ padding:14px 16px 16px; }

/* --- latest + sidebar row --- */
.ln-latest-row{ display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:34px; margin:30px 0 8px; }
.ln-main-col{ min-width:0; }
/* compact latest story rows */
.ln-feed-card{ display:grid; grid-template-columns:168px minmax(0,1fr); gap:16px; padding:14px 0; border-bottom:1px solid var(--ln-border-2); }
.ln-feed-card:first-child{ padding-top:0; }
.ln-feed-card .ln-feed-title{ font-family:var(--ln-serif); font-size:18px; line-height:1.32; font-weight:700; margin:2px 0 4px; }
.ln-feed-card .ln-feed-title a{ color:var(--ln-ink); }
.ln-feed-card .ln-feed-title a:hover{ color:var(--ln-burgundy); }
.ln-feed-card .ln-feed-deck{ color:var(--ln-muted); font-size:13.5px; line-height:1.5; margin:0 0 6px; }
.ln-feed-card .ln-feed-meta{ font-size:12px; color:var(--ln-muted); }

/* --- business & markets premium section --- */
.ln-bizmarkets{ margin:34px 0 8px; }
.ln-bizmarkets-wrap{ display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:28px; }
.ln-biz-lead .ln-biz-title{ font-family:var(--ln-serif); font-size:24px; line-height:1.25; font-weight:700; margin:8px 0 4px; }
.ln-biz-lead .ln-biz-title a{ color:var(--ln-ink); }
.ln-biz-lead .ln-biz-title a:hover{ color:var(--ln-burgundy); }
.ln-biz-list{ border-left:1px solid var(--ln-border); padding-left:28px; }
.ln-biz-list .ln-biz-headline{ font-family:var(--ln-serif); font-size:16.5px; line-height:1.35; font-weight:700; margin:0; }
.ln-biz-list .ln-biz-headline + .ln-biz-headline{ margin-top:16px; padding-top:14px; border-top:1px solid var(--ln-border-2); }
.ln-biz-list .ln-biz-headline a{ color:var(--ln-ink); }
.ln-biz-list .ln-biz-headline a:hover{ color:var(--ln-burgundy); }
.ln-biz-list .ln-biz-headline .ln-kicker{ display:block; margin-bottom:2px; }

/* --- category sections (alternating editorial layouts) --- */
.np-cat-sections{ margin:34px 0 8px; }
.np-cat-section{ margin-bottom:40px; }
/* Layout A (lead + 3 compact) / Layout B (2 medium + list) / Layout C (4 cards)
   applied via nth-child on the sections container */
.np-cat-sections .np-cat-section:nth-child(3n+1) .np-cat-grid{ grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); }
.np-cat-sections .np-cat-section:nth-child(3n+2) .np-cat-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.np-cat-sections .np-cat-section:nth-child(3n+3) .np-cat-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.np-cat-grid{ display:grid; gap:22px; }
.np-cat-section .np-section-title a{ color:var(--ln-ink); }
.np-cat-section .np-section-title a:hover{ color:var(--ln-burgundy); }
.np-cat-section .np-view-all{ color:var(--ln-burgundy); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.np-lead-card{ background:var(--ln-white); border:1px solid var(--ln-border); }
.np-lead-card .np-lead-title{ font-family:var(--ln-serif); font-size:21px; line-height:1.3; font-weight:700; }
.np-lead-card .np-lead-title a{ color:var(--ln-ink); }
.np-mini-story{ display:grid; grid-template-columns:96px minmax(0,1fr); gap:12px; align-items:start; }
.np-mini-story + .np-mini-story{ margin-top:16px; padding-top:14px; border-top:1px solid var(--ln-border-2); }
.np-mini-story .np-mini-title{ font-family:var(--ln-serif); font-size:15.5px; line-height:1.35; font-weight:700; margin:0 0 2px; }
.np-mini-story .np-mini-title a{ color:var(--ln-ink); }
.np-mini-story .np-mini-title a:hover{ color:var(--ln-burgundy); }
.np-mini-story .np-mini-date{ font-size:12px; color:var(--ln-muted); }

/* generic homepage card restyle (np-news-card) */
.np-news-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); }
.np-news-card .np-card-title{ font-family:var(--ln-serif); font-size:19px; line-height:1.32; font-weight:700; }
.np-news-card .np-card-title a{ color:var(--ln-ink); }
.np-news-card .np-card-title a:hover{ color:var(--ln-burgundy); }
.np-news-card .np-card-cat{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--ln-burgundy); }
.np-news-card .np-card-summary{ color:var(--ln-muted); font-size:13.5px; line-height:1.5; }
.np-news-card .np-card-meta, .np-card-meta{ font-size:12px; color:var(--ln-muted); }
.np-latest-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }

/* --- sidebar --- */
.ln-side-col, .np-side-col{ min-width:0; }
.sidebar.np-home-sidebar .sidebar-widget{
  background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius);
  margin-bottom:22px; padding:16px;
}
.sidebar.np-home-sidebar .sidebar-widget h3, .sidebar.np-home-sidebar .sidebar-widget .title{
  font-family:var(--ln-serif); font-size:19px; font-weight:700; margin:0 0 12px;
  border-bottom:2px solid var(--ln-ink); padding-bottom:6px;
}
/* compact story rows in sidebar */
.widget-popular-posts .post-item, .np-home-sidebar .post-item{
  display:grid; grid-template-columns:78px minmax(0,1fr); gap:10px; align-items:start;
  padding:8px 0; border-bottom:1px solid var(--ln-border-2);
}
.widget-popular-posts .post-item:last-child{ border-bottom:0; }
.np-home-sidebar .post-item .post-content h4, .np-home-sidebar .post-item h4 a{
  font-family:var(--ln-serif); font-size:14.5px; line-height:1.35; font-weight:700; color:var(--ln-ink);
}

/* --- horoscope --- */
.ln-horo{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); }
.ln-horo .horo-title, .horo-section .horo-title{
  font-family:var(--ln-serif); font-size:22px; font-weight:700; color:var(--ln-burgundy);
}
.ln-horo .horo-sign-grid, .horo-section .horo-sign-grid{ }
.ln-horo .horo-sign, .horo-section .horo-sign{ background:var(--ln-ivory); border:1px solid var(--ln-border-2); }
.ln-horo .horo-sign a, .horo-section .horo-sign a{ color:var(--ln-ink-2); font-family:var(--ln-serif); }

/* --- business directory --- */
.yp-home-section{ margin:34px 0 8px; }
.yp-home-section .yp-home-head{ border-bottom:2px solid var(--ln-ink); padding-bottom:8px; }
.yp-home-section .yp-home-title{ font-family:var(--ln-serif); font-size:26px; font-weight:700; margin:0; }
.yp-home-section .yp-btn{ border-radius:var(--ln-radius); font-size:12.5px; font-weight:600; }
.yp-home-section .yp-btn-view{ background:var(--ln-burgundy); color:#fff; border:1px solid var(--ln-burgundy); }
.yp-home-section .yp-btn-add{ background:transparent; color:var(--ln-burgundy); border:1px solid var(--ln-burgundy); }
.yp-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:20px; }
.yp-grid .yp-card{
  background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius);
  overflow:hidden; display:flex; flex-direction:column;
}
.yp-grid .yp-card .yp-card-title{ font-family:var(--ln-serif); font-size:18px; font-weight:700; }
.yp-grid .yp-card .yp-card-title a{ color:var(--ln-ink); }
.yp-grid .yp-card .yp-card-cat{ font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:var(--ln-burgundy); font-weight:700; }
.yp-grid .yp-card .yp-card-loc{ color:var(--ln-muted); font-size:13px; }
.yp-grid .yp-card .yp-card-desc{ color:var(--ln-muted); font-size:13.5px; line-height:1.5; }
.yp-grid .yp-card .yp-btn-view{ background:var(--ln-burgundy); color:#fff; border:1px solid var(--ln-burgundy); }
.yp-grid .yp-card .yp-card-img{ aspect-ratio:16/10; overflow:hidden; background:var(--ln-ivory); }
/* Business media (directory): a business LOGO is contained with breathing room
   so wide/square/tall/transparent logos are always complete and never cropped.
   Only a genuine cover PHOTO (no logo uploaded) uses object-fit:cover. */
.yp-grid .yp-card .yp-card-img img{ width:100%; height:100%; object-fit:contain; object-position:center; padding:16px 20px; box-sizing:border-box; }
.yp-grid .yp-card .yp-card-img--photo img{ object-fit:cover; padding:0; }
.yp-grid .yp-card .yp-btn{ border-radius:var(--ln-radius); font-size:12.5px; font-weight:600; }

/* ============================ ARTICLE ================================= */
/* category kicker + serif masthead + readable measure */
.post-content{ font-family:var(--ln-serif); }
.post-content .post-title h1.title{
  font-family:var(--ln-serif); font-size:clamp(26px,3.6vw,44px); line-height:1.14; font-weight:700; color:var(--ln-ink);
}
.ln-article-kicker{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.16em; color:var(--ln-burgundy); margin:0 0 6px; }
.post-content .post-summary{
  font-family:var(--ln-serif); font-size:19px; line-height:1.5; color:var(--ln-ink-2); margin:10px 0;
}
.post-content .post-meta{ font-size:13px; color:var(--ln-muted); border-top:1px solid var(--ln-border); border-bottom:1px solid var(--ln-border); padding:10px 0; margin:14px 0; }
.post-content .post-meta a, .post-content .post-meta .post-meta-cat{ color:var(--ln-burgundy); }
.post-text{
  font-family:var(--ln-serif); font-size:18px; line-height:1.75; color:var(--ln-ink);
}
.post-text p{ margin:0 0 1.25em; }
.post-text h2, .post-text h3{ font-family:var(--ln-serif); color:var(--ln-ink); margin:1.4em 0 .5em; }
/* pull quote */
.post-text blockquote{
  border-left:4px solid var(--ln-burgundy); background:var(--ln-white);
  padding:18px 22px; margin:1.6em 0; font-family:var(--ln-serif); font-style:italic;
  font-size:21px; line-height:1.5; color:var(--ln-burgundy-dk);
}
/* featured image frame */
.post-item .post-image-container{ border:1px solid var(--ln-border); border-radius:var(--ln-radius); margin:18px 0; }
/* share controls */
.article-social-share, .post-share{ border-top:1px solid var(--ln-border); border-bottom:1px solid var(--ln-border); padding:12px 0; margin:18px 0; }
/* tags */
.post-tags .tag-item{ background:var(--ln-white); border:1px solid var(--ln-border); color:var(--ln-burgundy); font-size:12.5px; border-radius:2px; }
/* related */
.ln-related .ln-section-title{ font-family:var(--ln-serif); font-size:22px; font-weight:700; }
.ln-related-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }

/* ============================ CATEGORY / SEARCH ======================= */
.ln-archive .ln-archive-head{ border-bottom:2px solid var(--ln-ink); margin-bottom:22px; padding-bottom:8px; }
.ln-archive .ln-archive-head h1{ font-family:var(--ln-serif); font-size:30px; font-weight:700; margin:0; }
.ln-archive .ln-archive-head h1 span{ color:var(--ln-burgundy); }

/* ============================ PAGINATION ============================== */
.np-pagination-wrap .pagination > li > a, .np-pagination-wrap .pagination > li > span{
  border:1px solid var(--ln-border); color:var(--ln-ink-2); font-size:13px; border-radius:0;
  background:var(--ln-white);
}
.np-pagination-wrap .pagination > li.active > a, .np-pagination-wrap .pagination > li.active > span,
.np-pagination-wrap .pagination > li > a:hover{ background:var(--ln-burgundy); border-color:var(--ln-burgundy); color:#fff; }

/* ============================ FOOTER ================================== */
#footer{
  background:var(--ln-ink); color:#CFC8BC; margin-top:44px;
  border-top:4px solid var(--ln-burgundy);
}
#footer .title{ color:#fff; font-family:var(--ln-serif); font-size:19px; }
#footer a{ color:#CFC8BC; }
#footer a:hover{ color:var(--ln-gold); }
#footer .footer-widgets{ padding:38px 0 22px; }
/* footer brand block */
#footer .ln-footer-brand{ text-align:center; padding:34px 0 8px; border-bottom:1px solid rgba(255,255,255,.12); margin-bottom:18px; }
#footer .ln-footer-brand .ln-footer-brand-name{ display:inline-flex; align-items:center; gap:14px; }
#footer .ln-footer-brand .ln-footer-logo{ max-height:46px; width:auto; }
#footer .ln-footer-brand .ln-footer-title{ font-family:var(--ln-serif); font-size:26px; font-weight:700; color:#fff; letter-spacing:.03em; }
#footer .ln-footer-brand .ln-footer-tagline{ font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:#9A9387; margin:8px 0 0; }
#footer .sdw-footer-links{ border-bottom:1px solid rgba(255,255,255,.12); }
#footer .footer-bottom{ border-top:1px solid rgba(255,255,255,.12); }
#footer .footer-copyright{ color:#9A9387; font-size:12.5px; }
#footer .f-newsletter input, #footer .newsletter-form input{
  background:#2A2621; border:1px solid #3B352E; color:#EFEAE2; border-radius:var(--ln-radius);
}
#footer .f-newsletter button, #footer .newsletter-form button{
  background:var(--ln-burgundy); color:#fff; border:0; border-radius:var(--ln-radius); font-weight:600;
}
/* visitor counter secondary */
#footer .visitor-counter, #footer .footer-visitor{ opacity:.75; font-size:12.5px; color:#9A9387; }

/* ============================ MOBILE (<768) =========================== */
@media (max-width:767px){
  /* hide desktop-only header brandbar chrome, keep mobile masthead */
  .news-header .header-utility{ display:none; }
  .news-header .hb-search, .news-header .hb-actions, .news-header .hb-masthead-rule{ display:none; }
  /* remove desktop sidebar on mobile */
  .ln-latest-row{ grid-template-columns:minmax(0,1fr); }
  .np-side-col{ display:none; }
  .ln-hero{ grid-template-columns:minmax(0,1fr); }
  .ln-hero-side{ border-left:0; padding-left:0; }
  .ln-top-grid{ grid-template-columns:minmax(0,1fr); }
  .ln-bizmarkets-wrap{ grid-template-columns:minmax(0,1fr); }
  .ln-biz-list{ border-left:0; padding-left:0; }
  .np-latest-grid{ grid-template-columns:minmax(0,1fr); }
  .np-cat-sections .np-cat-section:nth-child(3n+1) .np-cat-grid,
  .np-cat-sections .np-cat-section:nth-child(3n+2) .np-cat-grid,
  .np-cat-sections .np-cat-section:nth-child(3n+3) .np-cat-grid{ grid-template-columns:minmax(0,1fr); }
  .yp-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ln-feed-card{ grid-template-columns:112px minmax(0,1fr); }
  .ln-related-grid{ grid-template-columns:minmax(0,1fr); }
  .ln-horo .horo-sign-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* ============================ TABLET (768-1100) ======================== */
@media (min-width:768px) and (max-width:1100px){
  .ln-hero{ grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); }
  .ln-top-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ln-latest-row{ grid-template-columns:minmax(0,1fr) 300px; }
  .ln-bizmarkets-wrap{ grid-template-columns:minmax(0,1fr); }
  .ln-biz-list{ border-left:0; padding-left:0; margin-top:18px; }
  .np-cat-sections .np-cat-section:nth-child(3n+3) .np-cat-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .yp-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:768px) and (max-width:991px){
  .ln-latest-row{ grid-template-columns:minmax(0,1fr); }
  .np-side-col{ display:none; }
}

/* ============================ REDUCED MOTION =========================== */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{ animation-duration:.01ms !important; transition-duration:.01ms !important; }
}

/* =====================================================================
   LUXURY NEWS — REMAINING PUBLIC PAGES (Part 2)
   Breadcrumb · Listings · Sidebar · Archive · Horoscope · Business World
   · Static pages · Gallery · Contact · Mobile (sdw/sdm)
   ===================================================================== */

/* ------------------------- breadcrumbs ------------------------------ */
.page-breadcrumb{ margin:18px 0 6px; }
.page-breadcrumb .breadcrumb{
  background:transparent; padding:6px 0; margin:0; font-size:12.5px;
  font-family:var(--ln-sans);
}
.page-breadcrumb .breadcrumb a{ color:var(--ln-muted); }
.page-breadcrumb .breadcrumb a:hover{ color:var(--ln-burgundy); }
.page-breadcrumb .breadcrumb > .active{ color:var(--ln-ink); font-weight:600; }

/* ---------------------- editorial listing pages --------------------- */
.ln-listing-page{ background:var(--ln-ivory); }
.ln-listing-head{ margin:20px 0 24px; border-bottom:2px solid var(--ln-ink); padding-bottom:14px; }
.ln-listing-kicker{
  display:inline-block; font-size:11px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ln-burgundy); margin-bottom:4px;
}
.ln-listing-title{
  font-family:var(--ln-serif); font-size:clamp(26px,3.4vw,40px); line-height:1.1;
  font-weight:700; color:var(--ln-ink); margin:0 0 4px;
}
.ln-listing-intro{ color:var(--ln-muted); font-size:15.5px; line-height:1.6; margin:6px 0 0; max-width:720px; }

.ln-listing-wrap{ display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:34px; align-items:start; }
.ln-listing-main{ min-width:0; }
.ln-listing-side{ min-width:0; }

/* lead story */
.ln-listing-lead{
  background:var(--ln-white); border:1px solid var(--ln-border);
  border-radius:var(--ln-radius); overflow:hidden; margin-bottom:26px;
}
.ln-listing-lead-media{ aspect-ratio:16/9; overflow:hidden; background:var(--ln-ivory); }
.ln-listing-lead-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
.ln-listing-lead-body{ padding:18px 22px 20px; }
.ln-listing-lead-title{ font-family:var(--ln-serif); font-size:clamp(22px,2.6vw,30px); line-height:1.2; font-weight:700; margin:6px 0 8px; }
.ln-listing-lead-title a{ color:var(--ln-ink); }
.ln-listing-lead-title a:hover{ color:var(--ln-burgundy); }
.ln-listing-lead-summary{ color:var(--ln-muted); font-size:15px; line-height:1.6; margin:0 0 10px; }

/* compact editorial rows */
.ln-listing-list{ display:flex; flex-direction:column; }
.ln-listing-row{
  display:grid; grid-template-columns:180px minmax(0,1fr); gap:18px;
  padding:18px 0; border-bottom:1px solid var(--ln-border-2);
}
.ln-listing-row:first-child{ padding-top:0; }
.ln-listing-row-media{ display:block; aspect-ratio:4/3; overflow:hidden; border-radius:var(--ln-radius); background:var(--ln-ivory); }
.ln-listing-row-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
.ln-listing-row-title{ font-family:var(--ln-serif); font-size:19px; line-height:1.3; font-weight:700; margin:4px 0 6px; }
.ln-listing-row-title a{ color:var(--ln-ink); }
.ln-listing-row-title a:hover{ color:var(--ln-burgundy); }
.ln-listing-row-deck{ color:var(--ln-muted); font-size:14px; line-height:1.55; margin:0 0 8px; }
.ln-listing-row-meta{ font-size:12px; color:var(--ln-muted); display:flex; gap:6px; flex-wrap:wrap; }
.ln-listing-row-author{ color:var(--ln-burgundy); font-weight:600; }
.ln-listing-row-sep{ color:var(--ln-gold); }

.ln-listing-ad{ margin:22px 0; }
.ln-empty{ text-align:center; padding:60px 20px; background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); }
.ln-empty-title{ font-family:var(--ln-serif); font-size:22px; color:var(--ln-ink); margin-bottom:14px; }
.ln-empty-btn{ display:inline-block; background:var(--ln-burgundy); color:#fff; padding:9px 20px; border-radius:var(--ln-radius); font-weight:600; font-size:13.5px; }

/* pagination */
.ln-pagination{ margin:28px 0 10px; }
.ln-pagination ul.pagination{ display:flex; gap:6px; flex-wrap:wrap; margin:0; padding:0; list-style:none; }
.ln-pagination ul.pagination li{ list-style:none; }
.ln-pagination ul.pagination li a, .ln-pagination ul.pagination li span{
  display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:36px; padding:0 10px;
  border:1px solid var(--ln-border); background:var(--ln-white); color:var(--ln-ink); font-size:13.5px; font-weight:600; border-radius:var(--ln-radius);
}
.ln-pagination ul.pagination li a:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); }
.ln-pagination ul.pagination li.active a, .ln-pagination ul.pagination li.active span{ background:var(--ln-burgundy); border-color:var(--ln-burgundy); color:#fff; }

/* full-width discovery */
.ln-listing-more{ margin:36px 0 20px; padding:26px 0; border-top:1px solid var(--ln-border); }
.ln-more-block{ margin-bottom:18px; }
.ln-more-title{ font-family:var(--ln-serif); font-size:16px; font-weight:700; color:var(--ln-ink); margin:0 0 10px; }
.ln-more-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.ln-more-chip{
  padding:6px 14px; border:1px solid var(--ln-border); border-radius:999px;
  background:var(--ln-white); color:var(--ln-ink-2); font-size:12.5px; font-weight:600;
}
.ln-more-chip:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); background:var(--ln-ivory); }
.ln-more-chip-tag{ border-style:dashed; }

/* ------------------------- generic sidebar --------------------------- */
.sidebar .sidebar-widget{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:18px; margin-bottom:22px; }
.sidebar .widget-title .title, .sidebar .sidebar-widget .widget-title h4.title{ font-family:var(--ln-serif); font-size:19px; font-weight:700; color:var(--ln-ink); margin:0 0 12px; padding-bottom:8px; border-bottom:2px solid var(--ln-burgundy); }
.sidebar .widget-list{ list-style:none; margin:0; padding:0; }
.sidebar .widget-list li{ display:flex; gap:12px; padding:10px 0; border-bottom:1px solid var(--ln-border-2); }
.sidebar .widget-list li:last-child{ border-bottom:0; }
.sidebar .widget-list li .left{ flex:0 0 76px; }
.sidebar .widget-list li .left img{ width:76px; height:58px; object-fit:cover; border-radius:6px; }
.sidebar .widget-list li .right .title, .sidebar .widget-list li h3.title{ font-family:var(--ln-serif); font-size:14.5px; line-height:1.35; font-weight:700; margin:0 0 4px; }
.sidebar .widget-list li .right .title a, .sidebar .widget-list li h3.title a{ color:var(--ln-ink); }
.sidebar .widget-list li .post-meta{ font-size:11.5px; color:var(--ln-muted); }
.sidebar .widget-list li .post-image{ margin-bottom:10px; }
.sidebar .widget-list li .post-image img{ width:100%; aspect-ratio:16/9; object-fit:var(--ln-img-fit, contain); border-radius:8px; }
.sidebar .label-post-category{ background:var(--ln-burgundy); color:#fff; font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; padding:3px 8px; border-radius:3px; }

/* ------------------------- archive (more news) ----------------------- */
.np-more-section{ margin:34px 0; }
.np-more-news{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:24px; }
.np-more-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.np-more-archive{ margin:30px 0; }

/* --------------------------- horoscope -------------------------------- */
.sd-horo-page, .sd-horo-sign{ background:var(--ln-ivory); }
.sd-horo-page-head, .sd-horo-sign-head{ border-bottom:2px solid var(--ln-ink); padding-bottom:16px; margin:20px 0 24px; }
.sd-horo-page-title, .sd-horo-sign-name{ font-family:var(--ln-serif); font-size:clamp(26px,3.4vw,40px); font-weight:700; color:var(--ln-ink); margin:0; }
.sd-horo-page-date, .sd-horo-sign-date{ color:var(--ln-burgundy); font-weight:600; font-size:14px; margin:6px 0 4px; }
.sd-horo-page-intro{ color:var(--ln-muted); font-size:15px; line-height:1.6; margin:6px 0 0; max-width:760px; }
.sd-horo-grid{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; margin-top:22px; }
.sd-horo-card{
  background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius);
  padding:18px 14px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:6px;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.sd-horo-card:hover{ transform:translateY(-3px); box-shadow:0 12px 26px rgba(24,24,24,.1); border-color:var(--ln-gold); }
.sd-horo-icon{ width:48px; height:48px; }
.sd-horo-card-name{ font-family:var(--ln-serif); font-size:16px; font-weight:700; color:var(--ln-ink); }
.sd-horo-card-excerpt{ font-size:12px; line-height:1.45; color:var(--ln-muted); margin:0; }
.sd-horo-card-meta{ font-size:11.5px; color:var(--ln-muted); margin:0; }
.sd-horo-card-meta b{ color:var(--ln-burgundy); }
.sd-horo-card-link{ font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--ln-gold); font-weight:700; }
.sd-horo-disclaimer{ font-size:12px; color:var(--ln-muted); margin:26px 0 10px; }
.sd-horo-empty{ background:var(--ln-white); border:1px dashed var(--ln-gold); border-radius:var(--ln-radius); padding:40px; text-align:center; color:var(--ln-muted); }

/* horoscope detail */
.sd-horo-sign-head{ display:flex; align-items:center; gap:20px; }
.sd-horo-sign-icon{ width:72px; height:72px; }
.sd-horo-nav{ margin-left:auto; display:flex; gap:10px; }
.sd-horo-nav a{ border:1px solid var(--ln-border); background:var(--ln-white); padding:7px 12px; border-radius:999px; font-size:12.5px; font-weight:600; color:var(--ln-ink-2); }
.sd-horo-nav a:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); }
.sd-horo-boxes{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:22px; }
.sd-horo-box{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:20px 22px; }
.sd-horo-box-title{ font-family:var(--ln-serif); font-size:18px; font-weight:700; color:var(--ln-ink); margin:0 0 10px; padding-bottom:8px; border-bottom:1px solid var(--ln-gold); }
.sd-horo-box p{ font-size:15px; line-height:1.7; color:var(--ln-ink-2); margin:0; }
.sd-horo-facts{ display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.sd-horo-fact{ background:var(--ln-white); border:1px solid var(--ln-border); border-left:4px solid var(--ln-gold); border-radius:8px; padding:10px 16px; font-size:13.5px; color:var(--ln-muted); }
.sd-horo-fact span{ color:var(--ln-burgundy); font-weight:700; }
.sd-horo-share{ margin-top:20px; display:flex; gap:10px; }
.sd-horo-share a{ padding:8px 16px; border-radius:8px; font-size:13px; font-weight:600; color:#fff; }
.sd-horo-share .sh-wa{ background:#25D366; }
.sd-horo-share .sh-fb{ background:#1877F2; }
.sd-horo-share .sh-x{ background:var(--ln-ink); }
.sd-horo-all-signs{ margin-top:30px; padding-top:20px; border-top:1px solid var(--ln-border); }
.sd-horo-all-signs h3{ font-family:var(--ln-serif); font-size:18px; color:var(--ln-ink); }
.sd-horo-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.sd-horo-chip{ display:inline-flex; align-items:center; gap:6px; border:1px solid var(--ln-border); background:var(--ln-white); border-radius:999px; padding:6px 13px; font-size:12.5px; font-weight:600; color:var(--ln-ink-2); }
.sd-horo-chip img{ width:18px; height:18px; }
.sd-horo-chip.active{ border-color:var(--ln-burgundy); background:var(--ln-burgundy); color:#fff; }

/* horoscope homepage section */
.sd-horo-section{ background:var(--ln-white); border-top:1px solid var(--ln-border); border-bottom:1px solid var(--ln-border); padding:34px 0; }
.sd-horo-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
.sd-horo-title{ font-family:var(--ln-serif); font-size:26px; font-weight:700; color:var(--ln-ink); margin:0; }
.sd-horo-title::after{ content:""; display:block; width:56px; height:3px; background:var(--ln-gold); margin-top:6px; }
.sd-horo-all{ color:var(--ln-burgundy); font-weight:700; font-size:13px; }
.sd-horo-toggle-wrap{ text-align:center; margin-top:18px; }
.sd-horo-toggle{ border:1px solid var(--ln-border); background:var(--ln-ivory); color:var(--ln-burgundy); font-weight:700; font-size:13px; padding:9px 20px; border-radius:999px; }

/* ------------------------- business world ---------------------------- */
.yp-page{ background:var(--ln-ivory); }
.yp-hero{ background:linear-gradient(135deg, var(--ln-burgundy-dk) 0%, var(--ln-burgundy) 60%, #8a2a2a 100%); border-radius:var(--ln-radius); padding:34px 30px 26px; margin:20px 0 30px; color:#fff; }
.yp-hero-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.yp-hero-title{ font-family:var(--ln-serif); font-size:clamp(26px,3.4vw,40px); font-weight:700; color:#fff; margin:0; }
.yp-hero-sub{ color:rgba(255,255,255,.82); font-size:15px; margin:6px 0 0; max-width:640px; }
.yp-cta-add{ background:var(--ln-gold); color:var(--ln-burgundy-dk) !important; border:0; font-weight:700; }
.yp-cta-add:hover{ background:#d9bc7f; }
.yp-search{ margin-top:22px; }
.yp-search-bar .yp-search-input-wrap{ display:flex; gap:8px; background:#fff; padding:6px; border-radius:10px; }
.yp-search-input{ flex:1; border:0; padding:10px 14px; font-size:14.5px; color:var(--ln-ink); outline:none; }
.yp-btn-search{ background:var(--ln-burgundy); color:#fff; border:0; font-weight:600; }
.yp-filter-row{ display:flex; gap:14px; flex-wrap:wrap; margin-top:14px; }
.yp-filter-item{ flex:1 1 200px; }
.yp-filter-label{ display:block; color:rgba(255,255,255,.85); font-size:11px; letter-spacing:.14em; text-transform:uppercase; margin-bottom:4px; }
.yp-select{ width:100%; border:1px solid rgba(255,255,255,.4); background:#fff; color:var(--ln-ink); border-radius:8px; padding:8px 10px; font-size:13.5px; }
.yp-section{ margin:30px 0; }
.yp-section-title{ font-family:var(--ln-serif); font-size:24px; font-weight:700; color:var(--ln-ink); margin:0 0 16px; }
.yp-section-title::after{ content:""; display:block; width:56px; height:3px; background:var(--ln-gold); margin-top:6px; }
.yp-cat-grid{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }
.yp-cat-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:18px 12px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:6px; transition:transform .15s ease, box-shadow .15s ease; }
.yp-cat-card:hover{ transform:translateY(-3px); box-shadow:0 12px 26px rgba(24,24,24,.1); border-color:var(--ln-gold); }
.yp-cat-icon{ width:46px; height:46px; border-radius:50%; background:var(--ln-ivory); border:1px solid var(--ln-gold); display:flex; align-items:center; justify-content:center; font-size:22px; color:var(--ln-burgundy); }
.yp-cat-name{ font-family:var(--ln-serif); font-size:14.5px; font-weight:700; color:var(--ln-ink); }
.yp-cat-count{ font-size:11.5px; color:var(--ln-muted); }
.yp-pagination{ margin:26px 0 10px; }
.yp-pagination ul.pagination{ display:flex; gap:6px; flex-wrap:wrap; margin:0; padding:0; list-style:none; }
.yp-pagination ul.pagination li a, .yp-pagination ul.pagination li span{
  display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:36px; padding:0 10px;
  border:1px solid var(--ln-border); background:var(--ln-white); color:var(--ln-ink); font-size:13.5px; font-weight:600; border-radius:var(--ln-radius);
}
.yp-pagination ul.pagination li.active a{ background:var(--ln-burgundy); border-color:var(--ln-burgundy); color:#fff; }
.yp-empty{ text-align:center; background:var(--ln-white); border:1px dashed var(--ln-gold); border-radius:var(--ln-radius); padding:48px 24px; }
.yp-empty-icon{ font-size:34px; color:var(--ln-gold); }
.yp-empty-title{ font-family:var(--ln-serif); font-size:20px; color:var(--ln-ink); margin:10px 0 4px; }
.yp-empty-text{ color:var(--ln-muted); margin:0 0 16px; }
.yp-btn{ border-radius:8px; padding:9px 16px; font-size:13.5px; font-weight:600; display:inline-flex; align-items:center; gap:6px; }
.yp-btn-outline{ border:1px solid var(--ln-burgundy); color:var(--ln-burgundy); background:transparent; }
.yp-btn-add{ background:var(--ln-burgundy); color:#fff; border:0; }

/* business detail */
.yp-cover{ border-radius:var(--ln-radius); overflow:hidden; margin:18px 0 0; max-height:360px; }
.yp-cover img{ width:100%; height:360px; object-fit:cover; }
.yp-detail-head{ display:flex; gap:22px; align-items:flex-start; margin:24px 0 18px; }
.yp-detail-logo{ flex:0 0 110px; }
/* Detail page logo: complete logo, contained, never card-cropped. */
.yp-detail-logo img{ width:110px; height:110px; object-fit:contain; object-position:center; padding:10px; box-sizing:border-box; border-radius:12px; border:1px solid var(--ln-border); }
.yp-detail-name{ font-family:var(--ln-serif); font-size:clamp(24px,3vw,34px); font-weight:700; color:var(--ln-ink); margin:0 0 6px; }
.yp-detail-cat{ color:var(--ln-burgundy); font-weight:600; font-size:13.5px; margin-bottom:8px; }
.yp-badge{ display:inline-block; font-size:11px; padding:2px 8px; border-radius:999px; margin-left:6px; }
.yp-badge-featured{ background:var(--ln-gold); color:var(--ln-burgundy-dk); }
.yp-badge-verified{ background:#e8f5e9; color:#1b5e20; border:1px solid #a5d6a7; }
.yp-detail-short{ color:var(--ln-muted); font-size:15px; line-height:1.6; margin:0; max-width:720px; }
.yp-detail-actions{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px; }
.yp-detail-actions .yp-btn{ background:var(--ln-white); border:1px solid var(--ln-border); color:var(--ln-ink); }
.yp-detail-actions .yp-btn:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); }
.yp-detail-actions .yp-btn-call{ background:var(--ln-burgundy); border-color:var(--ln-burgundy); color:#fff; }
.yp-detail-actions .yp-btn-wa{ background:#25D366; border-color:#25D366; color:#fff; }
.yp-detail-actions .yp-btn-dir{ background:var(--ln-ink); border-color:var(--ln-ink); color:#fff; }
.yp-detail-actions .yp-btn-web{ background:var(--ln-gold); border-color:var(--ln-gold); color:var(--ln-burgundy-dk); }
.yp-detail-grid{ display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:26px; align-items:start; }
.yp-box{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:22px; margin-bottom:22px; }
.yp-box-title{ font-family:var(--ln-serif); font-size:19px; font-weight:700; color:var(--ln-ink); margin:0 0 12px; padding-bottom:8px; border-bottom:1px solid var(--ln-gold); }
.yp-text{ font-size:15px; line-height:1.7; color:var(--ln-ink-2); }
.yp-list-item{ padding:12px 0; border-bottom:1px solid var(--ln-border-2); }
.yp-list-name{ font-family:var(--ln-serif); font-size:16px; font-weight:700; color:var(--ln-ink); }
.yp-list-desc{ font-size:13.5px; color:var(--ln-muted); margin-top:2px; }
.yp-list-price{ color:var(--ln-burgundy); font-weight:700; font-size:14px; margin-top:4px; }
.yp-product-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.yp-product{ border:1px solid var(--ln-border); border-radius:10px; overflow:hidden; background:var(--ln-white); }
.yp-product img{ width:100%; aspect-ratio:16/10; object-fit:cover; }
.yp-product-name{ font-family:var(--ln-serif); font-size:15px; font-weight:700; color:var(--ln-ink); padding:10px 12px 0; }
.yp-product-desc{ font-size:12.5px; color:var(--ln-muted); padding:2px 12px 0; }
.yp-product-price{ color:var(--ln-burgundy); font-weight:700; font-size:13.5px; padding:4px 12px 12px; }
.yp-gallery{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.yp-gallery-item{ border-radius:8px; overflow:hidden; }
.yp-gallery-item img{ width:100%; aspect-ratio:4/3; object-fit:cover; transition:transform .2s ease; }
.yp-gallery-item:hover img{ transform:scale(1.04); }
.yp-contact{ width:100%; border-collapse:collapse; font-size:14px; }
.yp-contact th{ text-align:left; color:var(--ln-muted); font-weight:600; padding:8px 10px 8px 0; vertical-align:top; width:42%; }
.yp-contact td{ color:var(--ln-ink); padding:8px 0; vertical-align:top; }
.yp-contact a{ color:var(--ln-burgundy); font-weight:600; }

/* ------------------------- static pages ------------------------------ */
.page-about{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:30px 34px; margin:20px 0; }
.page-about h1.page-title{ font-family:var(--ln-serif); font-size:clamp(24px,3vw,34px); font-weight:700; color:var(--ln-ink); border-bottom:2px solid var(--ln-ink); padding-bottom:10px; margin-bottom:18px; }
.page-about .text-style{ font-size:15.5px; line-height:1.75; color:var(--ln-ink-2); }
.page-about .text-style p{ margin:0 0 1.1em; }
.page-about .text-style h2, .page-about .text-style h3{ font-family:var(--ln-serif); color:var(--ln-ink); margin:1.4em 0 .5em; }
.page-about .text-style a{ color:var(--ln-burgundy); }
.page-about .text-style blockquote{ border-left:4px solid var(--ln-gold); padding:10px 20px; color:var(--ln-muted); font-style:italic; }

/* ------------------------- gallery ----------------------------------- */
.page-gallery .gallery-item .item-inner{ border-radius:var(--ln-radius); overflow:hidden; border:1px solid var(--ln-border); background:var(--ln-white); margin-bottom:16px; position:relative; }
.page-gallery .gallery-item .item-inner img{ width:100%; aspect-ratio:4/3; object-fit:cover; }
.page-gallery .caption{ position:absolute; inset:auto 0 0 0; background:linear-gradient(transparent, rgba(24,24,24,.85)); padding:34px 14px 12px; }
.page-gallery .album-name{ color:#fff; font-family:var(--ln-serif); font-size:15px; font-weight:700; }

/* ------------------------- contact page ------------------------------ */
.sd-contact-page{ background:var(--ln-ivory); }
.sd-contact-header{ border-bottom:2px solid var(--ln-ink); padding-bottom:14px; margin:20px 0 24px; }
.sd-contact-title{ font-family:var(--ln-serif); font-size:clamp(26px,3.4vw,40px); font-weight:700; color:var(--ln-ink); margin:0; }
.sd-contact-title-hi{ color:var(--ln-gold); font-size:.6em; }
.sd-contact-intro{ color:var(--ln-muted); font-size:15.5px; line-height:1.6; margin-top:8px; max-width:760px; }
.sd-contact-grid{ display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:28px; align-items:start; }
.sd-contact-panel{ background:linear-gradient(150deg, var(--ln-burgundy-dk) 0%, var(--ln-burgundy) 70%); border-radius:var(--ln-radius); color:#fff; padding:26px; }
.sd-contact-panel-title{ font-family:var(--ln-serif); font-size:21px; font-weight:700; color:#fff; margin:0 0 4px; }
.sd-contact-panel-title-hi{ color:var(--ln-gold); font-size:13px; }
.sd-contact-panel-sub{ color:rgba(255,255,255,.8); font-size:13.5px; margin:4px 0 16px; }
.sd-info-item{ display:grid; grid-template-columns:30px minmax(0,1fr); gap:4px 10px; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.sd-info-icon{ grid-row:span 2; font-size:16px; color:var(--ln-gold); }
.sd-info-label{ font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.7); }
.sd-info-value{ font-size:14px; color:#fff; }
.sd-info-value a{ color:#fff; text-decoration:underline; text-underline-offset:3px; }
.sd-contact-actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:18px; }
.sd-action-btn{ display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.3); color:#fff; border-radius:8px; padding:9px 16px; font-size:13px; font-weight:600; }
.sd-action-btn:hover{ background:var(--ln-gold); border-color:var(--ln-gold); color:var(--ln-burgundy-dk); }
.sd-contact-map{ margin-top:18px; }
.sd-contact-map-frame{ border-radius:10px; overflow:hidden; border:1px solid rgba(255,255,255,.25); }
.sd-contact-map-frame iframe{ width:100%; height:260px; border:0; display:block; }
.sd-contact-form-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:26px; }
.sd-contact-card-title{ font-family:var(--ln-serif); font-size:21px; font-weight:700; color:var(--ln-ink); margin:0 0 4px; }
.sd-contact-form-note{ color:var(--ln-muted); font-size:13.5px; margin:0 0 18px; }
.sd-field{ margin-bottom:16px; }
.sd-label{ display:block; font-size:12.5px; font-weight:600; color:var(--ln-ink-2); margin-bottom:5px; }
.sd-req{ color:var(--ln-burgundy); }
.sd-field .form-control{ border:1px solid var(--ln-border); border-radius:8px; padding:10px 12px; font-size:14px; color:var(--ln-ink); }
.sd-field .form-control:focus{ border-color:var(--ln-burgundy); box-shadow:none; }

/* ------------------------- mobile (sdw / sdm) ------------------------ */
/* utility strip */
.sdw-util{ background:var(--ln-burgundy-dk); color:#fff; }
.sdw-util a.sdw-util-radio{ color:#fff; }
.sdw-util .sdw-live-dot{ background:var(--ln-gold); }
/* mobile masthead */
.nav-mobile-header.sdw-masthead{ background:var(--ln-ivory); border-bottom:1px solid var(--ln-border); }
.sdw-brand{ display:flex; align-items:center; flex-direction:column; justify-content:center; line-height:1.1; }
.sdw-brand-text{ font-family:var(--ln-serif); font-weight:700; color:var(--ln-burgundy); letter-spacing:.02em; }
.sdw-brand-tagline{ display:block; font-size:8.5px; letter-spacing:.32em; text-transform:uppercase; color:var(--ln-gold); margin-top:2px; }
/* mobile section headings */
.sdw-section-head{ border-bottom:2px solid var(--ln-ink); padding-bottom:8px; margin-bottom:16px; }
.sdw-section-title{ font-family:var(--ln-serif); font-size:22px; font-weight:700; color:var(--ln-ink); }
.sdw-section-title a{ color:var(--ln-ink); }
.sdw-section-title::after{ content:""; display:block; width:48px; height:3px; background:var(--ln-gold); margin-top:6px; }
.sdw-viewall{ color:var(--ln-burgundy); font-weight:700; font-size:12.5px; }
/* editorial type */
.sdw-slide-title, .sdw-lead-title, .sdw-feed-featured-title, .sdw-support-title, .sdw-cat-featured-title{ font-family:var(--ln-serif); color:var(--ln-ink); }
.sdw-slide-cat, .sdw-lead-cat, .sdw-feed-cat{ color:var(--ln-burgundy); font-weight:700; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.sdw-slide-meta, .sdw-support-meta, .sdw-feed-time, .sdw-feed-cat, .sdw-cat-headline-meta{ color:var(--ln-muted); font-size:12px; }
.sdw-feed-time{ font-weight:600; color:var(--ln-burgundy); }
.sdw-feed-fresh{ color:var(--ln-gold); font-weight:700; }
.sdw-readmore{ color:var(--ln-burgundy); font-weight:700; font-size:12.5px; }
/* latest feed surface */
.sdw-latest{ background:var(--ln-white); border-top:1px solid var(--ln-border); border-bottom:1px solid var(--ln-border); padding:26px 0; }
.sdw-feed-item{ border-bottom:1px solid var(--ln-border-2); }
/* videos (dark luxury section) */
.sdw-videos{ background:var(--ln-ink); }
.sdw-videos .sdw-section-title{ color:#fff; }
.sdw-videos .sdw-section-title a{ color:#fff; }
/* business world (cream luxury section) */
.sdw-business{ background:linear-gradient(180deg, #f6f1e6 0%, #faf7f2 100%); }
.sdw-business-inner{ border-top:1px solid var(--ln-gold); }
.sdw-biz-name{ font-family:var(--ln-serif); color:var(--ln-ink); font-weight:700; }
.sdw-biz-cat{ color:var(--ln-burgundy); }
.sdw-biz-verified{ color:#1b5e20; }
.sdw-biz-loc{ color:var(--ln-muted); }
.sdw-biz-explore{ background:var(--ln-burgundy); color:#fff; }
/* category chips row */
.sd-mobile-chips{ background:var(--ln-white); border-bottom:1px solid var(--ln-border); }
.sd-mobile-chip{ color:var(--ln-ink-2); font-weight:600; font-size:13px; border:1px solid var(--ln-border); background:var(--ln-ivory); }
.sd-mobile-chip-active{ background:var(--ln-burgundy); border-color:var(--ln-burgundy); color:#fff; }
.sd-business-shimmer{ background:var(--ln-gold); }
/* mobile quick actions */
.sd-mobile-quick{ background:var(--ln-burgundy); }
.sd-mobile-quick-item{ color:#fff; }
.sd-mobile-quick-active{ background:var(--ln-burgundy-dk); }
/* off-canvas menu */
.nav-mobile{ background:var(--ln-white); }
.nav-mobile .navbar-nav .nav-link{ color:var(--ln-ink-2); }
.nav-mobile .navbar-nav .nav-link:hover, .nav-mobile .navbar-nav .nav-link:focus{ color:var(--ln-burgundy); }

/* =====================================================================
   RESPONSIVE (Part 2) — listings, horoscope, YP, contact, mobile
   ===================================================================== */
@media (min-width:768px) and (max-width:1100px){
  .ln-listing-wrap{ grid-template-columns:minmax(0,1fr) 300px; gap:24px; }
  .yp-cat-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .sd-horo-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .yp-detail-grid{ grid-template-columns:minmax(0,1fr) 300px; gap:20px; }
  .sd-contact-grid{ grid-template-columns:minmax(0,1fr) 300px; gap:22px; }
  .np-more-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:768px) and (max-width:991px){
  .ln-listing-wrap{ grid-template-columns:minmax(0,1fr); }
  .ln-listing-side{ display:none; }
}
@media (max-width:767px){
  .ln-listing-wrap{ grid-template-columns:minmax(0,1fr); }
  .ln-listing-side{ display:none; }
  .ln-listing-row{ grid-template-columns:104px minmax(0,1fr); gap:12px; }
  .ln-listing-row-title{ font-size:16.5px; }
  .ln-listing-row-deck{ display:none; }
  .np-more-grid{ grid-template-columns:minmax(0,1fr); }
  .sd-horo-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sd-horo-boxes{ grid-template-columns:minmax(0,1fr); }
  .sd-horo-sign-head{ flex-wrap:wrap; }
  .sd-horo-nav{ margin-left:0; width:100%; }
  .yp-cat-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .yp-detail-head{ flex-wrap:wrap; }
  .yp-detail-grid{ grid-template-columns:minmax(0,1fr); }
  .yp-product-grid{ grid-template-columns:minmax(0,1fr); }
  .yp-gallery{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sd-contact-grid{ grid-template-columns:minmax(0,1fr); }
  .sd-contact-form-card{ padding:20px; }
  .page-about{ padding:22px 18px; }
}

/* =====================================================================
   LUXURY NEWS — HOMEPAGE VISUAL REFINEMENT (Part 3)
   Full-width editorial container · Latest feed · Most Read · Trending
   · Weather strip · Compact featured categories · Explore More · spacing
   ===================================================================== */

/* --- comfortable editorial container width (1240-1320px) --- */
@media (min-width:1200px){
  .container{ width:auto; max-width:1280px; }
}

/* --- homepage major-section spacing scale (calm + expensive) --- */
@media (min-width:992px){
  .ln-hero{ margin-top:36px; margin-bottom:8px; }
  .ln-top-stories, .ln-bizmarkets{ margin-top:56px; margin-bottom:8px; }
  .ln-latest-feed, .ln-most-read, .ln-trending, .ln-weather-strip,
  .ln-featured-cats, .ln-explore{ margin-top:64px; margin-bottom:8px; }
  .sd-horo-section{ margin-top:64px; }
  .np-pagination-section{ margin-top:56px; }
  .yp-home-section{ margin-top:64px; }
  .np-ad-block-wide{ margin-top:48px; }
}
@media (min-width:768px) and (max-width:991px){
  .ln-hero{ margin-top:28px; }
  .ln-top-stories, .ln-bizmarkets, .ln-latest-feed, .ln-most-read,
  .ln-trending, .ln-weather-strip, .ln-featured-cats, .ln-explore,
  .sd-horo-section, .np-pagination-section, .yp-home-section{ margin-top:40px; }
}
@media (max-width:767px){
  .ln-top-stories, .ln-bizmarkets, .ln-latest-feed, .ln-most-read,
  .ln-trending, .ln-weather-strip, .ln-featured-cats, .ln-explore,
  .sd-horo-section, .np-pagination-section, .yp-home-section{ margin-top:28px; }
}

/* --- LATEST NEWS editorial feed --- */
.ln-latest-feed{ }
.ln-feed-list{ display:flex; flex-direction:column; border-top:1px solid var(--ln-border); }
.ln-feed-card{
  display:grid; grid-template-columns:220px minmax(0,1fr); gap:22px;
  align-items:center; padding:20px 0; border-bottom:1px solid var(--ln-border);
}
.ln-feed-media{ display:block; aspect-ratio:5/3; overflow:hidden; border-radius:var(--ln-radius); background:var(--ln-ivory); min-height:120px; }
.ln-feed-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
.ln-feed-body{ min-width:0; }
.ln-feed-title{ font-family:var(--ln-serif); font-size:clamp(19px,1.8vw,23px); line-height:1.28; font-weight:700; margin:5px 0 7px; }
.ln-feed-title a{ color:var(--ln-ink); }
.ln-feed-title a:hover{ color:var(--ln-burgundy); }
.ln-feed-deck{ color:var(--ln-muted); font-size:14.5px; line-height:1.55; margin:0 0 8px; max-width:760px; }
.ln-feed-meta{ font-size:12.5px; color:var(--ln-muted); display:flex; gap:8px; align-items:center; }
.ln-feed-meta span:first-child{ color:var(--ln-burgundy); font-weight:600; }
.ln-feed-sep{ color:var(--ln-gold); }
.ln-view-more{ text-align:center; margin:30px 0 4px; }
.ln-view-more a{
  display:inline-flex; align-items:center; gap:9px;
  background:var(--ln-burgundy); color:#fff !important;
  padding:12px 28px; border-radius:999px; font-weight:600; font-size:14px;
  box-sizing:border-box;
  box-shadow:0 8px 22px rgba(122,30,30,.22);
}
.ln-view-more a:hover{ background:var(--ln-burgundy-dk); }

/* --- MOST READ ranked --- */
.ln-most-read{ }
.ln-ranked{ list-style:none; margin:0; padding:0; border-top:1px solid var(--ln-border); }
.ln-ranked-item{
  display:grid; grid-template-columns:78px minmax(0,1fr) auto; gap:24px;
  align-items:baseline; padding:22px 4px; border-bottom:1px solid var(--ln-border);
}
.ln-ranked-num{ font-family:var(--ln-serif); font-size:46px; font-weight:700; color:var(--ln-gold); line-height:1; }
.ln-ranked-title{ font-family:var(--ln-serif); font-size:23px; line-height:1.25; font-weight:700; margin:0; }
.ln-ranked-title a{ color:var(--ln-ink); }
.ln-ranked-title a:hover{ color:var(--ln-burgundy); }
.ln-ranked-meta{ font-size:13px; color:var(--ln-muted); white-space:nowrap; }

/* --- EDITOR'S PICKS / trending strip --- */
.ln-trending{ }
.ln-trending-strip{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.ln-trending-item{ display:flex; flex-direction:column; background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); overflow:hidden; text-decoration:none; }
.ln-trending-thumb{ display:block; aspect-ratio:16/9; overflow:hidden; background:var(--ln-ivory); }
.ln-trending-thumb img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
.ln-trending-cat{ display:block; margin:14px 16px 0; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--ln-burgundy); }
.ln-trending-title{ font-family:var(--ln-serif); font-size:17px; line-height:1.4; font-weight:700; color:var(--ln-ink); display:block; margin:6px 16px 16px; }
.ln-trending-item:hover .ln-trending-title{ color:var(--ln-burgundy); }

/* --- WEATHER utility strip (compact horizontal card) --- */
.ln-weather-strip{ }
.ln-weather-strip-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:16px 22px; }
.ln-weather-strip .sidebar-widget, .ln-weather-strip .sidebar-widget .row{ background:transparent; border:0; padding:0; margin:0; box-shadow:none; }
.ln-weather-strip .col-sm-12{ float:none; width:100%; padding:0; }
.ln-weather-strip .row{ margin:0; }
.ln-weather-strip .widget-title .title{ border:0; margin:0 0 8px; font-family:var(--ln-serif); font-size:18px; color:var(--ln-ink); }
.ln-weather-strip .weather-widget{ display:flex; flex-wrap:wrap; align-items:center; gap:4px 28px; }
.ln-weather-strip .weather-widget .widget-title{ order:1; min-width:120px; margin-bottom:0; }
.ln-weather-strip .weather-content{ order:2; flex:1; min-width:280px; display:flex; align-items:center; flex-wrap:wrap; gap:4px 24px; }
.ln-weather-strip .weather-content .weather-head{ display:flex; align-items:center; gap:14px; width:100%; margin:0 0 6px; }
.ln-weather-strip .weather-location{ font-family:var(--ln-serif); font-weight:700; color:var(--ln-burgundy); font-size:16px; }
.ln-weather-strip .weather-link{ border:0; background:none; color:var(--ln-muted); font-size:12px; cursor:pointer; padding:0; }
.ln-weather-strip .weather-now{ display:flex; align-items:center; gap:12px; margin:0; }
.ln-weather-strip .weather-now .weather-icon{ font-size:26px; line-height:1; }
.ln-weather-strip .weather-now .weather-temp{ font-family:var(--ln-serif); font-size:26px; font-weight:700; color:var(--ln-ink); }
.ln-weather-strip .weather-now .weather-condition{ color:var(--ln-ink-2); font-weight:600; font-size:15px; }
.ln-weather-strip .weather-meta{ display:flex !important; flex-wrap:wrap; gap:4px 18px; color:var(--ln-muted); font-size:13px; margin:0; }
.ln-weather-strip .weather-today{ display:inline; margin:0 !important; }
.ln-weather-strip .weather-forecast,
.ln-weather-strip .weather-searchbox,
.ln-weather-strip .weather-results{ display:none !important; }

/* --- compact featured category modules --- */
.ln-featured-cats{ }
.ln-featured-cats-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 32px; }
.ln-cat-compact{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:22px; }
.ln-cat-compact-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:2px solid var(--ln-ink); padding-bottom:10px; margin-bottom:16px; }
.ln-cat-compact-title{ font-family:var(--ln-serif); font-size:22px; font-weight:700; color:var(--ln-ink); margin:0; }
.ln-cat-compact-title a{ color:var(--ln-ink); }
.ln-cat-compact-title a:hover{ color:var(--ln-burgundy); }
.ln-cat-compact-title::after{ content:""; display:block; width:44px; height:3px; background:var(--ln-gold); margin-top:5px; }
.ln-view-all{ color:var(--ln-burgundy); font-weight:700; font-size:12.5px; white-space:nowrap; }
.ln-cat-compact-grid{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:20px; }
.ln-cat-compact-media{ display:block; aspect-ratio:4/3; overflow:hidden; border-radius:var(--ln-radius); background:var(--ln-ivory); }
.ln-cat-compact-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
.ln-cat-compact-lead-title{ font-family:var(--ln-serif); font-size:16.5px; line-height:1.32; font-weight:700; margin:9px 0 4px; }
.ln-cat-compact-lead-title a{ color:var(--ln-ink); }
.ln-cat-compact-lead-title a:hover{ color:var(--ln-burgundy); }
.ln-cat-compact-date{ font-size:12px; color:var(--ln-muted); }
.ln-cat-compact-headline{ font-family:var(--ln-serif); font-size:15.5px; line-height:1.35; font-weight:700; margin:0; padding:11px 0; border-bottom:1px solid var(--ln-border-2); }
.ln-cat-compact-headline:first-child{ padding-top:0; }
.ln-cat-compact-headline:last-child{ border-bottom:0; padding-bottom:0; }
.ln-cat-compact-headline a{ color:var(--ln-ink); }
.ln-cat-compact-headline a:hover{ color:var(--ln-burgundy); }
.ln-cat-compact-hdate{ display:block; font-family:var(--ln-sans); font-size:11.5px; color:var(--ln-muted); font-weight:400; margin-top:3px; }

/* --- EXPLORE MORE --- */
.ln-explore{ }
.ln-explore .ln-more-chips{ justify-content:flex-start; gap:12px; }
.ln-explore .ln-more-chip{ padding:9px 20px; font-size:13.5px; }

/* --- consistent imagery (16:9 / 5:3 crops, controlled heights) --- */
.ln-card-media, .np-card-media, .np-lead-media, .ln-hero-media,
.ln-feed-media, .ln-cat-compact-media, .ln-trending-thumb,
.ln-listing-lead-media, .ln-listing-row-media{ overflow:hidden; background:var(--ln-ivory); }
.ln-card-media img, .np-card-media img, .np-lead-media img, .ln-hero-media img,
.ln-feed-media img, .ln-cat-compact-media img, .ln-trending-thumb img,
.ln-listing-lead-media img, .ln-listing-row-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }

/* --- responsive refinements --- */
@media (min-width:768px) and (max-width:1100px){
  .ln-feed-card{ grid-template-columns:200px minmax(0,1fr); gap:18px; }
  .ln-featured-cats-grid{ grid-template-columns:minmax(0,1fr); }
  .ln-ranked-item{ grid-template-columns:60px minmax(0,1fr); }
  .ln-ranked-meta{ display:none; }
  .ln-trending-strip{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px){
  .ln-feed-card{ grid-template-columns:minmax(0,1fr); gap:12px; }
  .ln-feed-media{ aspect-ratio:16/9; }
  .ln-feed-title{ font-size:18px; }
  .ln-ranked-item{ grid-template-columns:48px minmax(0,1fr); gap:12px; padding:14px 0; }
  .ln-ranked-num{ font-size:30px; }
  .ln-ranked-title{ font-size:16px; }
  .ln-ranked-meta{ display:none; }
  .ln-trending-strip{ grid-template-columns:minmax(0,1fr); gap:16px; }
  .ln-featured-cats-grid{ grid-template-columns:minmax(0,1fr); }
  .ln-cat-compact-grid{ grid-template-columns:minmax(0,1fr); gap:14px; }
  .ln-weather-strip-card{ padding:16px; }
  .ln-view-more a{ width:100%; justify-content:center; }
}

/* =====================================================================
   LUXURY NEWS — HOMEPAGE MIDDLE MODULES (FINAL, NAMESPACED)
   Latest · Most Read · Editor's Picks · Weather · Top Sections
   · Featured Sections · Explore More
   Loaded last — high-specificity namespaced selectors beat legacy widget CSS.
   ===================================================================== */

/* --- shared section heading (left-aligned, full-width, never floats) --- */
.ln-home-section-head{
  display:flex; align-items:center; justify-content:flex-start; gap:12px;
  margin-bottom:20px; border-bottom:2px solid var(--ln-ink); padding-bottom:10px;
}
.ln-home-section-title{
  font-family:var(--ln-serif); font-size:26px; font-weight:700; color:var(--ln-ink);
  margin:0; line-height:1.1; text-align:left; float:none; position:static;
}
.ln-home-section-title::after{
  content:""; display:block; width:52px; height:3px; background:var(--ln-gold); margin-top:7px;
}
.ln-home-kicker{
  display:inline-block; font-size:11px; font-weight:700; letter-spacing:.15em;
  text-transform:uppercase; color:var(--ln-burgundy); margin-bottom:4px;
}

/* --- LATEST NEWS feed rows (with-image / text-only) --- */
.ln-home-latest{ }
.ln-feed-list{ display:flex; flex-direction:column; border-top:1px solid var(--ln-border); }
.ln-feed-row{ display:grid; align-items:center; gap:24px; padding:22px 0; border-bottom:1px solid var(--ln-border); }
.ln-feed-row--with-image{ grid-template-columns:190px minmax(0,1fr); }
.ln-feed-row--text-only{ grid-template-columns:minmax(0,1fr); }
.ln-feed-row-media{ display:block; width:100%; aspect-ratio:16/10; flex-shrink:0; overflow:hidden; border-radius:var(--ln-radius); background:var(--ln-ivory); }
.ln-feed-row-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); object-position:center; }
.ln-feed-row-body{ min-width:0; }
.ln-feed-row-title{ font-family:var(--ln-serif); font-size:clamp(19px,1.8vw,23px); line-height:1.28; font-weight:700; margin:4px 0 7px; }
.ln-feed-row-title a{ color:var(--ln-ink); }
.ln-feed-row-title a:hover{ color:var(--ln-burgundy); }
.ln-feed-row-deck{ color:var(--ln-muted); font-size:14.5px; line-height:1.55; margin:0 0 8px; max-width:760px; }
.ln-feed-row-meta{ font-size:12.5px; color:var(--ln-muted); display:flex; gap:8px; align-items:center; }
.ln-feed-row-author{ color:var(--ln-burgundy); font-weight:600; }
.ln-feed-row-sep{ color:var(--ln-gold); }

/* --- MOST READ ranked (dedicated module) --- */
.ln-home-most-read{ }
.ln-home-ranked{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 40px; }
.ln-home-ranked-item{ display:flex; gap:20px; align-items:baseline; padding:20px 4px; border-bottom:1px solid var(--ln-border); }
.ln-home-ranked-num{ font-family:var(--ln-serif); font-size:44px; font-weight:700; color:var(--ln-gold); line-height:1; flex:0 0 auto; min-width:52px; }
.ln-home-ranked-body{ min-width:0; }
.ln-home-ranked-title{ font-family:var(--ln-serif); font-size:21px; line-height:1.28; font-weight:700; margin:0 0 6px; }
.ln-home-ranked-title a{ color:var(--ln-ink); }
.ln-home-ranked-title a:hover{ color:var(--ln-burgundy); }
.ln-home-ranked-meta{ font-size:12.5px; color:var(--ln-muted); display:block; }

/* --- EDITOR'S PICKS (3 cards) --- */
.ln-home-editors{ }
.ln-home-editors-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.ln-home-editor-card{ display:flex; flex-direction:column; background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); overflow:hidden; text-decoration:none; }
.ln-home-editor-media{ display:block; aspect-ratio:16/9; overflow:hidden; background:var(--ln-ivory); }
.ln-home-editor-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
.ln-home-editor-cat{ display:block; margin:14px 16px 0; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--ln-burgundy); }
.ln-home-editor-title{ font-family:var(--ln-serif); font-size:17px; line-height:1.4; font-weight:700; color:var(--ln-ink); display:block; margin:6px 16px 18px; }
.ln-home-editor-card:hover .ln-home-editor-title{ color:var(--ln-burgundy); }

/* --- WEATHER (compact strip, not the full widget) --- */
.ln-home-weather{ }
.ln-home-weather-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:16px 22px; }
.ln-home-weather .weather-widget{ display:flex; flex-wrap:wrap; align-items:center; gap:4px 28px; margin:0; }
.ln-home-weather .weather-widget .widget-title{ order:1; min-width:110px; margin:0; }
.ln-home-weather .weather-widget .widget-title .title{ border:0; font-family:var(--ln-serif); font-size:18px; color:var(--ln-ink); margin:0; }
.ln-home-weather .weather-content{ order:2; flex:1; min-width:280px; display:flex; align-items:center; flex-wrap:wrap; gap:4px 24px; }
.ln-home-weather .weather-content .weather-head{ display:flex; align-items:center; gap:14px; width:100%; margin:0 0 6px; }
.ln-home-weather .weather-location{ font-family:var(--ln-serif); font-weight:700; color:var(--ln-burgundy); font-size:16px; }
.ln-home-weather .weather-link{ border:0; background:none; color:var(--ln-muted); font-size:12px; cursor:pointer; padding:0; }
.ln-home-weather .weather-now{ display:flex; align-items:center; gap:12px; margin:0; }
.ln-home-weather .weather-now .weather-icon{ font-size:26px; line-height:1; }
.ln-home-weather .weather-now .weather-temp{ font-family:var(--ln-serif); font-size:26px; font-weight:700; color:var(--ln-ink); }
.ln-home-weather .weather-now .weather-condition{ color:var(--ln-ink-2); font-weight:600; font-size:15px; }
.ln-home-weather .weather-meta{ display:flex !important; flex-wrap:wrap; gap:4px 18px; color:var(--ln-muted); font-size:13px; margin:0; }
.ln-home-weather .weather-today{ display:inline; margin:0 !important; }
/* never render the multi-day grid / search UI in the homepage strip */
.ln-home-weather .weather-forecast,
.ln-home-weather .weather-searchbox,
.ln-home-weather .weather-results{ display:none !important; }

/* --- TOP SECTIONS (full-width, left-aligned pills) --- */
.ln-home-top-sections{ }
.ln-home-top-pills{ display:flex; flex-wrap:wrap; gap:12px; justify-content:flex-start; }
.ln-home-top-pill{
  padding:12px 26px; border-radius:999px; border:1px solid var(--ln-border);
  background:var(--ln-white); color:var(--ln-ink); font-family:var(--ln-serif);
  font-size:16px; font-weight:700; text-align:left; float:none; position:static;
}
.ln-home-top-pill:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); background:var(--ln-ivory); }

/* --- FEATURED SECTIONS (compact 2x2 blocks) --- */
.ln-home-featured{ }
.ln-home-featured-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 32px; }
.ln-home-featured-block{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); padding:22px 24px; }
.ln-home-featured-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:2px solid var(--ln-ink); padding-bottom:10px; margin-bottom:14px; }
.ln-home-featured-title{ font-family:var(--ln-serif); font-size:22px; font-weight:700; color:var(--ln-ink); margin:0; }
.ln-home-featured-title a{ color:var(--ln-ink); }
.ln-home-featured-title a:hover{ color:var(--ln-burgundy); }
.ln-home-featured-title::after{ content:""; display:block; width:44px; height:3px; background:var(--ln-gold); margin-top:5px; }
.ln-home-viewall{ color:var(--ln-burgundy); font-weight:700; font-size:12.5px; white-space:nowrap; }
.ln-home-featured-lead{ font-family:var(--ln-serif); font-size:19px; line-height:1.32; font-weight:700; margin:0 0 10px; }
.ln-home-featured-lead a{ color:var(--ln-ink); }
.ln-home-featured-lead a:hover{ color:var(--ln-burgundy); }
.ln-home-featured-list{ border-top:1px solid var(--ln-border-2); }
.ln-home-featured-headline{ font-family:var(--ln-serif); font-size:15px; line-height:1.4; font-weight:700; margin:0; padding:11px 0; border-bottom:1px solid var(--ln-border-2); }
.ln-home-featured-headline:last-child{ border-bottom:0; padding-bottom:0; }
.ln-home-featured-headline a{ color:var(--ln-ink); }
.ln-home-featured-headline a:hover{ color:var(--ln-burgundy); }

/* --- EXPLORE MORE (dedicated chips) --- */
.ln-home-explore{ }
.ln-home-explore-chips{ display:flex; flex-wrap:wrap; gap:12px; justify-content:flex-start; }
.ln-home-explore-chip{
  padding:10px 20px; border-radius:999px; border:1px solid var(--ln-border);
  background:var(--ln-white); color:var(--ln-ink-2); font-size:13.5px; font-weight:600;
  text-align:left; float:none; position:static;
}
.ln-home-explore-chip:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); background:var(--ln-ivory); }

/* --- homepage middle-module spacing --- */
@media (min-width:992px){
  .ln-home-latest, .ln-home-most-read, .ln-home-editors, .ln-home-weather,
  .ln-home-top-sections, .ln-home-featured, .ln-home-explore{ margin-top:64px; }
}
@media (min-width:768px) and (max-width:991px){
  .ln-home-latest, .ln-home-most-read, .ln-home-editors, .ln-home-weather,
  .ln-home-top-sections, .ln-home-featured, .ln-home-explore{ margin-top:40px; }
}
@media (max-width:767px){
  .ln-home-latest, .ln-home-most-read, .ln-home-editors, .ln-home-weather,
  .ln-home-top-sections, .ln-home-featured, .ln-home-explore{ margin-top:28px; }
}

/* --- responsive refinements for the namespaced modules --- */
@media (min-width:768px) and (max-width:1100px){
  .ln-feed-row--with-image{ grid-template-columns:170px minmax(0,1fr); gap:18px; }
  .ln-home-ranked{ grid-template-columns:minmax(0,1fr); }
  .ln-home-editors-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .ln-home-featured-grid{ grid-template-columns:minmax(0,1fr); }
}
@media (max-width:767px){
  .ln-feed-row--with-image{ grid-template-columns:minmax(0,1fr); gap:12px; }
  .ln-feed-row-media{ aspect-ratio:16/9; }
  .ln-feed-row-title{ font-size:18px; }
  .ln-home-ranked{ grid-template-columns:minmax(0,1fr); }
  .ln-home-ranked-item{ gap:14px; padding:14px 0; }
  .ln-home-ranked-num{ font-size:32px; min-width:44px; }
  .ln-home-ranked-title{ font-size:17px; }
  .ln-home-editors-grid{ grid-template-columns:minmax(0,1fr); gap:18px; }
  .ln-home-featured-grid{ grid-template-columns:minmax(0,1fr); }
  .ln-home-weather-card{ padding:14px 16px; }
  .ln-home-weather .weather-content{ min-width:0; }
  .ln-home-top-pill{ padding:10px 20px; font-size:15px; }
  .ln-view-more a{ width:100%; justify-content:center; }
}

/* =====================================================================
   LUXURY NEWS — FINAL CLIENT PRESENTATION POLISH
   Header · Top Stories · Business & Markets · Latest (text-only) · Most Read
   · Featured Sections · Explore More · Local Business · Footer counter
   ===================================================================== */

/* --- 1. HEADER: more premium masthead breathing room --- */
.news-header .header-brandbar{ padding:22px 0 20px; }
.hb-masthead .hb-wordmark .hb-site-title{ font-size:clamp(24px,3.6vw,44px); letter-spacing:.03em; }
.hb-masthead .hb-wordmark .hb-tagline{ font-size:11.5px; letter-spacing:.38em; margin-top:7px; }

/* --- 2. TOP STORIES: bigger type + spacing --- */
.ln-top-grid{ gap:28px; }
.ln-top-card .ln-card-body{ padding:18px 20px 20px; }
.ln-top-card .ln-card-title{ font-size:21px; line-height:1.3; margin:8px 0 10px; }
.ln-top-card .ln-card-deck{ font-size:14px; line-height:1.55; margin-bottom:8px; }

/* --- 3. BUSINESS & MARKETS: balanced right rail --- */
.ln-bizmarkets-wrap{ gap:34px; }
.ln-biz-list .ln-biz-headline{ font-size:18px; line-height:1.32; }
.ln-biz-list .ln-biz-headline + .ln-biz-headline{ margin-top:20px; padding-top:18px; }
.ln-biz-list .ln-biz-headline .ln-kicker{ margin-bottom:4px; font-size:11px; }

/* --- 4. LATEST NEWS: text-only rows stronger (no invented images) --- */
.ln-feed-row--text-only{ padding-left:18px; border-left:3px solid var(--ln-gold); }
.ln-feed-row--text-only .ln-feed-row-title{ font-size:clamp(20px,2vw,24px); }
.ln-feed-row--text-only .ln-feed-row-deck{ margin-bottom:6px; }
.ln-feed-row--text-only .ln-feed-row-body{ padding:2px 0; }

/* --- 5. MOST READ: consistent ranked polish --- */
.ln-home-ranked-item{ gap:22px; padding:22px 4px; }
.ln-home-ranked-num{ font-size:44px; min-width:56px; }
.ln-home-ranked-title{ font-size:21px; line-height:1.3; margin-bottom:7px; }
.ln-home-ranked-meta{ font-size:13px; color:var(--ln-muted); }

/* --- 6. FEATURED SECTIONS: more air + stronger titles --- */
.ln-home-featured-grid{ gap:28px 36px; }
.ln-home-featured-block{ padding:26px 28px; }
.ln-home-featured-title{ font-size:24px; }
.ln-home-featured-lead{ font-size:20px; line-height:1.3; margin-bottom:14px; }
.ln-home-featured-headline{ padding:12px 0; font-size:15.5px; }

/* --- 7. EXPLORE MORE: larger touch targets + contrast --- */
.ln-home-explore-chips{ gap:12px; }
.ln-home-explore-chip{ padding:12px 22px; font-size:14px; border:1px solid var(--ln-border); background:var(--ln-white); color:var(--ln-ink-2); font-weight:600; border-radius:999px; }
.ln-home-explore-chip:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); background:var(--ln-ivory); }

/* --- 8. LOCAL BUSINESS (homepage): premium cards --- */
.yp-home-section .yp-home-head{ margin-bottom:22px; }
.yp-home-section .yp-home-title{ font-family:var(--ln-serif); font-size:28px; font-weight:700; color:var(--ln-ink); margin:0; }
.yp-home-section .yp-home-title::after{ content:""; display:block; width:56px; height:3px; background:var(--ln-gold); margin-top:6px; }
.yp-home-section .yp-grid{ gap:24px; }
.yp-home-section .yp-card{ background:var(--ln-white); border:1px solid var(--ln-border); border-radius:var(--ln-radius); overflow:hidden; display:flex; flex-direction:column; height:100%; }
.yp-home-section .yp-card-img{ aspect-ratio:16/10; overflow:hidden; background:var(--ln-ivory); display:block; }
/* Local Business (homepage): logo-safe contain frame (never crop/zoom a logo);
   a real cover PHOTO is the only thing that uses object-fit:cover. */
.yp-home-section .yp-card-img img{ width:100%; height:100%; object-fit:contain; object-position:center; padding:16px 20px; box-sizing:border-box; }
.yp-home-section .yp-card-img--photo img{ object-fit:cover; padding:0; }
.yp-home-section .yp-card-body{ padding:18px 18px 20px; display:flex; flex-direction:column; gap:8px; flex:1; }
.yp-home-section .yp-card-title{ font-family:var(--ln-serif); font-size:19px; font-weight:700; line-height:1.25; margin:0; }
.yp-home-section .yp-card-title a{ color:var(--ln-ink); }
.yp-home-section .yp-card-cat{ display:flex; align-items:center; flex-wrap:wrap; gap:6px; font-size:11px; color:var(--ln-burgundy); font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.yp-home-section .yp-card-desc{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:13.5px; line-height:1.5; color:var(--ln-muted); margin:0; }
.yp-home-section .yp-card-loc{ font-size:12.5px; color:var(--ln-muted); }
.yp-home-section .yp-card-actions{ margin-top:auto; display:flex; gap:8px; padding-top:12px; }
.yp-home-section .yp-btn{ border-radius:8px; padding:10px 12px; font-size:13px; font-weight:600; display:inline-flex; align-items:center; justify-content:center; gap:6px; }
.yp-home-section .yp-btn-view{ background:var(--ln-burgundy); color:#fff; border:1px solid var(--ln-burgundy); flex:1 1 58%; }
.yp-home-section .yp-btn-view:hover{ background:var(--ln-burgundy-dk); }
.yp-home-section .yp-btn-call{ background:var(--ln-white); color:var(--ln-ink); border:1px solid var(--ln-border); flex:1 1 42%; }
.yp-home-section .yp-btn-call:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); }
.yp-home-section .yp-btn-wa{ background:#f4fbf7; color:#128C4A; border:1px solid #cde8d9; }

/* Business media — missing/blank art: an intentional brand monogram tile that
   keeps the SAME media-frame height as image cards, so every card in a row
   stays aligned (no large hollow grey boxes). Broken uploads fall back to the
   same monogram via .yp-card-img-broken::after (yellow-pages.css base). */
.yp-card-img-empty,
.yp-card-img-broken::after{
  font-family:var(--ln-serif);
  color:var(--ln-burgundy);
  background:linear-gradient(135deg, #F7F2E7 0%, #F0E2C8 100%);
}
.yp-card-img-empty{ border:1px solid var(--ln-border-2); }

/* =====================================================================
   LUXURY NEWS — FINAL MOBILE HOMEPAGE POLISH (max-width 767px / 991px)
   Desktop markup & desktop CSS are NOT touched. All rules here are scoped
   to the mobile presentation only.
   ===================================================================== */

/* --- 9. FOOTER visitor counter (desktop): visually secondary --- */
#footer .vc-strip{ padding:14px 0 10px; background:transparent; border-top:1px solid rgba(255,255,255,.08); }
#footer .vc-strip .vc-inner{ max-width:1280px; }
#footer .vc-strip .vc-head{ margin-bottom:10px; }
#footer .vc-strip .vc-title{ font-size:12px; color:#8a8275; letter-spacing:.04em; }
#footer .vc-strip .vc-subtitle{ display:none; }
#footer .vc-strip .vc-cards{ gap:8px; }
#footer .vc-strip .vc-card{ padding:8px 14px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); border-radius:8px; }
#footer .vc-strip .vc-card-ico{ font-size:13px; opacity:.6; }
#footer .vc-strip .vc-card-label{ font-size:10px; color:#8a8275; letter-spacing:.05em; }
#footer .vc-strip .vc-card-num{ font-size:16px; color:#bdb6aa; }
#footer .vc-strip .vc-card-total{ background:rgba(200,169,106,.08); border-color:rgba(200,169,106,.25); }
#footer .vc-strip .vc-card-total .vc-card-num{ color:#d9bc7f; }

/* --- MOBILE HEADER: single slim masthead (keep radio, drop date row) --- */
/* Tablet + mobile: no Videos block, no long category blocks, slim util row */
@media (max-width:991px){
  .sdw-videos{ display:none !important; }
  .sdw-cat{ display:none !important; }
  .sdw-util{ justify-content:flex-end; padding:4px 12px; min-height:0; }
  .sdw-util .sdw-util-datetime{ display:none; }
  .sdw-util-radio-label{ display:none; }
  .sdw-util-radio{ gap:4px; font-size:11px; }
}
@media (max-width:767px){
  .sdw-util{ justify-content:flex-end; padding:4px 12px; min-height:0; }
  .sdw-util .sdw-util-datetime{ display:none; }
  .sdw-util-radio-label{ display:none; }
  .sdw-util-radio{ gap:4px; font-size:11px; }
  .nav-mobile-header.sdw-masthead{ padding:6px 0; }
  .sdw-masthead .mobile-header-container{ min-height:44px; }
  /* category chips: force horizontal scroll, never wrap */
  .sd-mobile-chips{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .sd-mobile-chips-inner{ display:flex; flex-wrap:nowrap; gap:8px; padding:8px 10px; width:max-content; }
  .sd-mobile-chip{ flex:0 0 auto; white-space:nowrap; }
  /* breaking strip: compact single line */
  .header-breaking{ padding:0; }
  .header-breaking .breaking-label{ font-size:10px; padding:4px 10px; }
  /* hide the dedicated Videos homepage module + any leftover category blocks */
  .sdw-videos{ display:none !important; }
  .sdw-cat{ display:none !important; }
}

/* --- MOBILE HERO: deliberate editorial card (16:9) --- */
@media (max-width:767px){
  .sdw-slider, .sdw-lead{ background:var(--ln-white); }
  .sdw-slide-media, .sdw-lead-media{ aspect-ratio:16/9; width:100%; overflow:hidden; background:var(--ln-ivory); }
  .sdw-slide-media img, .sdw-lead-media img{ width:100%; height:100%; object-fit:var(--ln-img-fit, contain); }
  .sdw-slide-body, .sdw-lead-body{ padding:14px 16px 18px; }
  .sdw-slide-cat, .sdw-lead-cat{ font-size:11px; letter-spacing:.14em; margin-bottom:4px; display:inline-block; }
  .sdw-slide-title, .sdw-lead-title{ font-size:22px; line-height:1.25; margin:4px 0 8px; }
  .sdw-lead-summary{ font-size:14.5px; line-height:1.55; color:var(--ln-muted); margin:0 0 8px; }
}

/* --- MOBILE LATEST: compact single-row newsroom feed ---
   Row geometry (time | headline | fixed thumbnail) and the 90-110px thumb
   sizing live in sdw-mobile.css (mobile-only geometry). Here only light
   typographic polish stays. */
@media (max-width:767px){
  .sdw-latest{ padding:18px 0 10px; }
  .sdw-feed-title{ font-size:15px; line-height:1.35; margin:0 0 3px; }
  .sdw-feed-cat{ font-size:11px; }
  .sdw-feed-time{ font-size:11px; }
  .sdw-section-head{ margin-bottom:12px; }
  .sdw-section-title{ font-size:20px; }
}

/* --- MOBILE MOST READ: compact ranked --- */
@media (max-width:767px){
  .sdw-most-read{ background:var(--ln-white); border-top:1px solid var(--ln-border); border-bottom:1px solid var(--ln-border); padding:18px 0 12px; }
  .sdw-most-list{ list-style:none; margin:0; padding:0; }
  .sdw-most-item{ display:flex; gap:14px; align-items:baseline; padding:11px 0; border-bottom:1px solid var(--ln-border-2); }
  .sdw-most-item:last-child{ border-bottom:0; }
  .sdw-most-num{ font-family:var(--ln-serif); font-size:30px; font-weight:700; color:var(--ln-gold); line-height:1; flex:0 0 auto; min-width:40px; }
  .sdw-most-title{ font-family:var(--ln-serif); font-size:16px; line-height:1.35; font-weight:700; margin:0; }
  .sdw-most-title a{ color:var(--ln-ink); }
}

/* --- MOBILE WEATHER: keep compact --- */
@media (max-width:767px){
  .sdw-weather{ padding:16px 0; }
  .sdw-weather-main{ gap:10px; }
  .sdw-weather-temp{ font-size:26px; }
  .sdw-weather-meta{ font-size:12.5px; }
}

/* --- MOBILE HOROSCOPE: keep 4-sign collapsed, polish cards --- */
@media (max-width:767px){
  .sd-horo-section{ padding:22px 0; }
  .sd-horo-grid.sd-horo-collapsed .sd-horo-card:nth-child(n+5){ display:none; }
  .sd-horo-card{ padding:14px 8px; }
}

/* --- MOBILE BUSINESS WORLD: horizontal swipe, compact cards, no big button --- */
@media (max-width:767px){
  .sdw-business{ padding:18px 0; }
  .sdw-biz-track{ display:flex; gap:12px; overflow-x:auto; -webkit-overflow-scrolling:touch; scroll-snap-type:x mandatory; }
  .sdw-biz-card{ flex:0 0 78%; scroll-snap-align:start; display:flex; gap:12px; align-items:center; background:var(--ln-white); border:1px solid var(--ln-border); border-radius:12px; padding:12px; }
  /* Business World logo frame (mobile): logos are contained with breathing room —
     never cropped/zoomed; a real cover photo or the no-image cream tile fills. */
  .sdw-biz-logo{ width:78px; height:78px; flex:0 0 auto; border-radius:10px; overflow:hidden; background:var(--ln-ivory); border:1px solid var(--ln-border-2); box-sizing:border-box; padding:7px; }
  .sdw-biz-logo img{ width:100%; height:100%; object-fit:contain; object-position:center; display:block; }
  .sdw-biz-logo--photo img{ object-fit:cover; padding:0; }
  .sdw-biz-logo--empty{ padding:0; }
  .sdw-biz-logo--empty img{ object-fit:cover; }
  .sdw-biz-name{ font-family:var(--ln-serif); font-size:15px; }
  .sdw-biz-cat{ font-size:11.5px; }
  .sdw-biz-loc{ font-size:12px; }
  /* section-level link, not a dominant full-width button */
  .sdw-biz-explore{ display:inline-flex !important; width:auto !important; margin:10px auto 0 !important; padding:7px 16px !important; background:var(--ln-white) !important; color:var(--ln-burgundy) !important; border:1px solid var(--ln-border) !important; border-radius:999px !important; font-size:12.5px !important; font-weight:600 !important; }
  .sdw-biz-explore:hover{ border-color:var(--ln-burgundy) !important; color:var(--ln-burgundy) !important; background:var(--ln-ivory) !important; }
}

/* --- MOBILE FEATURED SECTIONS + EXPLORE MORE --- */
@media (max-width:767px){
  .sdw-featured, .sdw-explore{ background:var(--ln-white); border-top:1px solid var(--ln-border); padding:18px 0 12px; }
  .sdw-featured-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .sdw-featured-card{ background:var(--ln-ivory); border:1px solid var(--ln-border); border-radius:10px; padding:14px; }
  .sdw-featured-cat{ font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ln-burgundy); }
  .sdw-featured-title{ font-family:var(--ln-serif); font-size:15px; line-height:1.4; font-weight:700; margin:6px 0 0; }
  .sdw-featured-title a{ color:var(--ln-ink); }
  .sdw-explore-chips{ display:flex; flex-wrap:wrap; gap:10px; }
  .sdw-explore-chip{ padding:9px 16px; border-radius:999px; border:1px solid var(--ln-border); background:var(--ln-white); color:var(--ln-ink-2); font-size:13px; font-weight:600; }
  .sdw-explore-chip:hover{ border-color:var(--ln-burgundy); color:var(--ln-burgundy); }
}

/* --- MOBILE FOOTER: compact --- */
@media (max-width:767px){
  .sdw-footer-links{ display:none; }
  .footer-widgets{ padding:16px 0 6px !important; }
  .footer-widgets .col-sm-4{ padding:0 15px; margin-bottom:16px; }
  .f-widget-random{ display:none !important; }
  .footer-widget h4.title{ font-size:15px; margin-bottom:8px; }
  #footer .vc-strip{ padding:10px 0 6px; }
  #footer .vc-strip .vc-cards{ gap:6px; }
  #footer .vc-strip .vc-card{ padding:6px 10px; }
  #footer .vc-strip .vc-card-num{ font-size:14px; }
  .footer-bottom{ padding:10px 0; }
  .footer-bottom-left p{ font-size:12px; }
}

