/* firmenPR Lifestyle Guide 1.6 — self-contained premium magazine skin.
 * Uses font family inherited from the active theme. No third-party fonts/assets. All rules scoped to Lifestyle Guide.
 */
.fps-select {
  --fps-gold:#927748;
  --fps-ink:#20201e;
  --fps-muted:#6b6964;
  --fps-border:#e7e3db;
  --fps-cream:#f8f7f4;
  width:min(1180px,calc(100vw - 36px));
  max-width:none;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  margin:0 0 72px;
  padding:0;
  background:#fff;
  color:var(--fps-ink);
  font-family:inherit;
  font-size:16px;
  line-height:1.65;
  isolation:isolate;
}
.fps-select,.fps-select *,.fps-select *::before,.fps-select *::after{box-sizing:border-box}
.fps-select a{color:inherit;text-decoration:none}
.fps-select a:hover{color:#725b36}
.fps-select a:focus-visible{outline:3px solid var(--fps-gold);outline-offset:3px}
.fps-select img{display:block;max-width:100%;height:auto}
.fps-select h1,.fps-select h2,.fps-select h3,.fps-select p{margin-top:0}
.fps-select h1,.fps-select h2,.fps-select h3{overflow-wrap:break-word}

/* Brand belongs beneath the original theme's header/navigation. */
.fps-select__brand{
  position:relative;overflow:hidden;text-align:center;color:#fff;
  padding:clamp(36px,5vw,56px) 18px;
  background:linear-gradient(110deg,#151515 0%,#191919 64%,#262117 100%);
}
.fps-select__brand::before{
  content:"";pointer-events:none;position:absolute;right:-6%;bottom:-165%;
  width:52%;aspect-ratio:1;background:radial-gradient(circle,rgba(146,119,72,.20),transparent 68%);
}
.fps-select__brand-inner{position:relative;z-index:1}
.fps-select__overline{margin-bottom:6px;color:#cfc8ba;font-weight:700;font-size:11px;letter-spacing:.27em;text-transform:uppercase}
.fps-select__brand-title{margin:0!important;color:var(--fps-gold)!important;line-height:1.05!important;font-size:clamp(38px,5vw,64px)!important;font-weight:650;letter-spacing:.15em;text-transform:uppercase}
.fps-select__gold-rule{height:1px;width:54px;background:var(--fps-gold);margin:19px auto 12px}
.fps-select__brand-caption{margin:0!important;color:#eee9e1;font-size:clamp(13px,1.45vw,16px);letter-spacing:.01em}
.fps-select__topic-nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 30px;padding:17px 20px;border-bottom:1px solid var(--fps-border);background:#fff}
.fps-select__topic-nav a{padding:7px 0;font-size:13px;line-height:1.35;font-weight:650;border-bottom:2px solid transparent;color:#3c3b38;white-space:nowrap}
.fps-select__topic-nav a[aria-current="page"],.fps-select__topic-nav a:hover{border-color:var(--fps-gold);color:#735e3d}
.fps-select__intro{display:flex;align-items:flex-start;gap:18px;padding:37px 0 37px}
.fps-select__short-rule{display:block;width:2px;height:42px;flex:0 0 2px;margin-top:5px;background:var(--fps-gold)}
.fps-select__intro p{max-width:920px;margin:0;color:#4c4a46;font-size:clamp(16px,2vw,19px);line-height:1.7}

/* Every editorial card occupies exactly one cell in a two-column grid. */
.fps-select__lead{margin:0 0 65px}
.fps-select__editorial-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 0 21px}
.fps-select__editorial-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--fps-gold);margin-bottom:3px}
.fps-select__editorial-head h2{margin:0!important;font-family:inherit;font-size:clamp(24px,2.65vw,32px);line-height:1.2;font-weight:650;color:#1b1b1a}
.fps-select__lead-grid,.fps-select__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:stretch}
.fps-select__card{
  display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden;
  background:#fff;border:1px solid var(--fps-border);border-radius:6px;
  box-shadow:0 4px 16px rgba(0,0,0,.025);
  transition:box-shadow .2s ease,border-color .2s ease;
}
.fps-select__card:hover{box-shadow:0 9px 25px rgba(0,0,0,.055);border-color:#d4c5ac}
.fps-select__card-image{position:relative;display:block;width:100%;aspect-ratio:16/9;flex:0 0 auto;overflow:hidden;background:#191919}
.fps-select__card-image img,.fps-select__image{width:100%;height:100%!important;object-fit:cover;transition:transform .35s ease}
.fps-select__card-image:hover img{transform:scale(1.025)}
.fps-select__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(128deg,#171717 0%,#25211d 65%,#352b1d 100%)}
.fps-select__placeholder span{font-size:clamp(17px,2.7vw,30px);font-weight:650;color:#a59070;letter-spacing:.28em}
.fps-select__card-content{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;padding:25px 28px 26px}
.fps-select__eyebrow{color:var(--fps-gold);text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:800;line-height:1.4;margin-bottom:11px}
.fps-select__card h3{margin:0 0 12px!important;color:#171715;font-family:inherit;font-size:clamp(21px,1.8vw,26px);font-weight:650;line-height:1.25;letter-spacing:-.015em}
.fps-select__card h3 a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.fps-select__excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 22px!important;color:#65625e;font-size:14px;line-height:1.72}
.fps-select__meta{margin-top:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#797670;font-size:12px;line-height:1.5}
.fps-select__card-link{display:inline-flex;align-items:center;gap:7px;color:#735d3b!important;font-size:12px;font-weight:750;white-space:nowrap;margin-left:auto}
.fps-select__card-link:hover{text-decoration:underline;text-underline-offset:2px}
.fps-select__sponsored{padding:3px 8px;border:1px solid #d8c8a9;background:#f9f5ec;color:#59472d;font-weight:700;font-size:11px}
.fps-select__card--hero .fps-select__card-image{aspect-ratio:16/9;height:auto;min-height:0}
.fps-select__card--hero .fps-select__card-content{padding:25px 28px 26px;flex:1 1 auto}
.fps-select__card--hero h3{font-size:clamp(21px,1.8vw,26px);line-height:1.25}
.fps-select__card--hero .fps-select__excerpt{font-size:14px;-webkit-line-clamp:3}
.fps-select__card--more{border-color:#d8cbb8;background:linear-gradient(148deg,#fcfbf9,#f3efe7);box-shadow:none;justify-content:center}
.fps-select__card--more .fps-select__card-content{justify-content:center;align-items:flex-start;padding:clamp(28px,4vw,48px)}
.fps-select__card--more .fps-select__eyebrow{margin-bottom:18px}
.fps-select__card--more h3{font-size:clamp(26px,2.5vw,34px);margin-bottom:14px!important}
.fps-select__more-line{display:block;width:58px;height:1px;background:var(--fps-gold);margin:8px 0 23px}
.fps-select__more-link{font-weight:750;color:#755d36!important;font-size:13px;letter-spacing:.01em;margin-top:14px}

/* Editorial section dividers and article groups. */
.fps-select__section{margin:0 0 65px}
.fps-select__section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--fps-border);margin-bottom:27px;padding-bottom:17px}
.fps-select__section-heading h2{margin:0!important;border-left:2px solid var(--fps-gold);padding-left:17px;color:#1b1b1b;font-family:inherit;font-weight:650;line-height:1.2;font-size:clamp(23px,2.4vw,30px)}
.fps-select__section-heading > a{color:#6f5837;font-size:13px;font-weight:700;white-space:nowrap}
.fps-select__section-heading > a span{color:var(--fps-gold)}
.fps-select__empty{padding:25px;background:var(--fps-cream);border-left:2px solid var(--fps-gold);color:#494640}
.fps-select--home{padding-bottom:10px}
.fps-select--home > .fps-select__lead,.fps-select--home > .fps-select__section,.fps-select--home > .fps-select__intro{margin-left:14px;margin-right:14px}

/* Premium article details: single-column reading comfort + optional information column. */
.fps-select__article{padding-bottom:2px}
.fps-select__article-header{max-width:940px;margin:0 auto;text-align:center;padding:0 20px 38px}
.fps-select__article-header .fps-select__eyebrow{font-size:11px;letter-spacing:.22em;margin-bottom:18px}
.fps-select__article-header h1{margin:0 0 22px!important;color:#191919;font-family:inherit;font-weight:700;font-size:clamp(32px,4vw,52px)!important;line-height:1.16;letter-spacing:-.026em}
.fps-select__article-deck{font-size:clamp(17px,1.9vw,21px);line-height:1.62;max-width:780px;color:#615f5b;margin:0 auto 25px}
.fps-select__article-header-divider{width:54px;height:2px;background:var(--fps-gold);margin:24px auto 20px}
.fps-select__article-byline{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-size:12px;color:#77736d;letter-spacing:.02em}
.fps-select__meta-dot::before{content:"·";margin-right:12px;color:var(--fps-gold)}
.fps-select__article-media{max-width:1140px;margin:0 auto 45px}
.fps-select__article-image{display:block;width:100%;max-height:660px;height:auto;object-fit:cover;background:#151515}
.fps-select__article-figcaption{padding:12px 12px 0;text-align:right;font-size:12px;line-height:1.5;color:#77716a}
.fps-select__article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(210px,275px);gap:clamp(36px,5vw,75px);justify-content:center;align-items:start;padding:0 18px}
.fps-select__article-body{min-width:0;color:#292929;font-size:17px;line-height:1.86;overflow-wrap:anywhere}
.fps-select__article-body > p:first-of-type{font-size:clamp(17px,1.6vw,19px);line-height:1.83;color:#242424}
.fps-select__article-body p{margin-bottom:1.55em}
.fps-select__article-body ul,.fps-select__article-body ol{padding-left:1.4em;margin:0 0 1.6em}
.fps-select__article-body li{margin-bottom:.45em}
.fps-select__article-body a{color:#735d3b;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.fps-select__article-body h2{font-family:inherit;font-size:clamp(25px,2.6vw,32px);line-height:1.3;font-weight:700;letter-spacing:-.02em;margin:1.55em 0 .6em;padding-top:.12em}
.fps-select__article-body h3{font-family:inherit;font-size:clamp(20px,2.2vw,25px);font-weight:700;margin:1.4em 0 .55em}
.fps-select__article-body blockquote{border-left:3px solid var(--fps-gold);background:var(--fps-cream);padding:26px 29px;margin:34px 0;color:#35322d;font-size:clamp(18px,2vw,21px);line-height:1.6}
.fps-select__article-body blockquote p:last-child{margin-bottom:0}
.fps-select__article-body figure,.fps-select__article-body iframe,.fps-select__article-body video{max-width:100%}
.fps-select__article-body .wp-block-image img{height:auto}
.fps-select__article-body figcaption{font-size:12px;color:#777;line-height:1.5;margin-top:7px}
.fps-select__article-body table{max-width:100%;display:block;overflow-x:auto}
.fps-select__article-aside{position:sticky;align-self:start;top:24px;display:grid;gap:18px}
.fps-select__facts{padding:26px;background:#f8f7f4;border-top:2px solid var(--fps-gold);border-bottom:1px solid #e7e3db}
.fps-select__aside-kicker{margin:0 0 17px;color:#6d5630;font-size:11px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.fps-select__facts dl{margin:0}
.fps-select__facts .fps-select__fact-row{padding:11px 0;border-top:1px solid #e5e0d6}
.fps-select__facts dt{color:#716c65;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.11em}
.fps-select__facts dd{margin:6px 0 0;color:#222;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.fps-select__facts a{color:#6b5332;text-decoration:underline;text-underline-offset:2px}
.fps-select__aside-block{padding:29px;background:#191919;color:#f6f6f6;border-top:2px solid var(--fps-gold)}
.fps-select__aside-overline{font-size:12px;color:#e9e4d9}
.fps-select__aside-title{font-size:32px;line-height:1.2;letter-spacing:.12em;color:var(--fps-gold);margin:4px 0 18px}
.fps-select__aside-block p{font-size:13px;color:#d6d1c7}
.fps-select__aside-block a{font-size:13px;color:#d7bd8c;font-weight:750}
.fps-select__article-footer{margin:40px 0 0;padding:20px 0 0;border-top:1px solid var(--fps-border)}
.fps-select__back-link{font-size:14px;color:#6c5634!important;font-weight:750}
.fps-select__related{padding:0 14px;margin-top:78px}
.fps-select--topic .fps-select__archive{padding:45px 14px 16px}
.fps-select__archive-description{max-width:860px;color:#68635b;margin-bottom:29px}
.fps-select__pagination{margin:30px 0;text-align:center}
.fps-select__pagination .nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.fps-select__pagination .page-numbers{border:1px solid #ddd4c6;padding:8px 13px}
.fps-select__pagination .current{background:#24201a;color:#fff;border-color:#24201a}

/* Tablet retains exactly two equally sized cards, phone stacks each card naturally. */
@media(max-width:980px){
  .fps-select__lead-grid,.fps-select__grid{gap:22px}
  .fps-select__card-content,.fps-select__card--hero .fps-select__card-content{padding:19px 20px 22px}
  .fps-select__card h3,.fps-select__card--hero h3{font-size:clamp(20px,2.3vw,25px)}
  .fps-select__article-layout{grid-template-columns:1fr}
  .fps-select__article-aside{position:static}
  .fps-select__article-aside .fps-select__aside-block,.fps-select__article-aside .fps-select__facts{max-width:540px}
}
@media(max-width:720px){
  .fps-select{width:calc(100vw - 20px);margin-bottom:45px}
  .fps-select__brand{padding:38px 14px}
  .fps-select__brand-title{font-size:40px!important}
  .fps-select__topic-nav{justify-content:flex-start;flex-wrap:nowrap;gap:20px;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:15px 12px}
  .fps-select__topic-nav a{flex:0 0 auto}
  .fps-select__intro{padding:27px 0 32px;gap:13px}
  .fps-select__intro p{font-size:16px}
  .fps-select__lead-grid,.fps-select__grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .fps-select__lead{margin-bottom:49px}
  .fps-select__card h3,.fps-select__card--hero h3{font-size:24px}
  .fps-select__card-content,.fps-select__card--hero .fps-select__card-content{padding:20px 20px 23px}
  .fps-select__card--more{min-height:230px}
  .fps-select__section{margin-bottom:44px}
  .fps-select__section-heading{margin-bottom:20px}
  .fps-select__section-heading h2{font-size:24px}
  .fps-select__article-header{padding:0 8px 29px}
  .fps-select__article-header h1{font-size:clamp(32px,8vw,44px)!important}
  .fps-select__article-media{margin-bottom:30px}
  .fps-select__article-body{font-size:16px;line-height:1.78}
  .fps-select__article-layout{padding:0 10px}
  .fps-select__article-media{margin-bottom:28px}
  .fps-select__article-header-divider{margin:19px auto 17px}
  .fps-select__related{margin-top:55px}
}
@media(prefers-reduced-motion:reduce){
  .fps-select__card,.fps-select__card-image img{transition:none}
  .fps-select__card-image:hover img{transform:none}
}
/* Theme wrapper uses original theme header/footer and no extra page title. */
.fps-select-page{width:100%;max-width:100%;padding:0;margin:0}

/* Version 1.7 — editorial detail polish, no new fonts, no external design assets. */
.fps-select__article-header{padding-bottom:44px}
.fps-select__article-header h1{max-width:940px;margin-left:auto!important;margin-right:auto!important;line-height:1.17!important;text-wrap:balance}
.fps-select__article-deck{max-width:730px;text-wrap:pretty}
.fps-select__article-media{max-width:1080px}
.fps-select__article-figcaption{padding-top:11px}
.fps-select__article-body{max-width:100%}
.fps-select__article-body > p:first-of-type{margin-top:0}
.fps-select__article-body h2{padding-top:.28em;margin-top:1.75em}
.fps-select__article-body .wp-block-gallery{gap:14px}
.fps-select__article-body .wp-block-gallery img{object-fit:cover}
.fps-select__article-body .wp-block-separator{border:0;border-top:1px solid var(--fps-border);margin:35px 0}
.fps-select__article-body .wp-block-pullquote{border-block:1px solid #d9c9a7;padding:27px 12px;margin:36px 0}
.fps-select__article-body .wp-block-pullquote blockquote{background:transparent;border:0;margin:0;padding:0}
.fps-select__article-body .wp-block-columns{gap:22px}
.fps-select__facts{box-shadow:0 8px 24px rgba(0,0,0,.025)}
.fps-select__related .fps-select__card{align-self:stretch}
.fps-select__gallery{margin:46px 0 32px}
.fps-select__gallery-heading{margin:0 0 21px;padding-bottom:12px;border-bottom:1px solid var(--fps-border)}
.fps-select__gallery-heading .fps-select__eyebrow{display:block;margin-bottom:7px}
.fps-select__gallery-heading h2{font-size:clamp(23px,2.5vw,30px);color:var(--fps-ink);font-family:inherit;line-height:1.24;margin:0!important;letter-spacing:-.01em}
.fps-select__gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fps-select__gallery-figure{display:flex;flex-direction:column;min-width:0;margin:0;padding:0}
.fps-select__gallery-figure>.fps-select__gallery-item{flex:0 0 auto}
/* Visible, locally stored WordPress media caption / image copyright credit. */
.fps-select__article-body .fps-select__gallery-figure>.fps-select__gallery-caption{
  box-sizing:border-box;display:block!important;visibility:visible!important;opacity:1!important;
  width:100%;max-width:100%;height:auto!important;margin:0!important;
  padding:9px 2px 3px!important;border:0!important;
  font-family:inherit;font-size:12px!important;line-height:1.6!important;font-weight:400;
  letter-spacing:normal;color:#6e675e!important;background:transparent!important;text-align:left;
  overflow-wrap:anywhere;white-space:normal
}
.fps-select__gallery-item{appearance:none;display:block;border:0;padding:0;cursor:zoom-in;position:relative;overflow:hidden;background:#141414;aspect-ratio:4/3;width:100%}
.fps-select__gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}
.fps-select__gallery-item:hover img{transform:scale(1.035)}
.fps-select__gallery-item:focus-visible{outline:3px solid var(--fps-gold);outline-offset:4px}
.fps-select__gallery-icon{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:32px;height:32px;background:rgba(18,18,18,.8);color:#fff;font-size:18px}
/* Gallery overlay: independent of theme content image sizing; real full-size file from WP. */
/* Theme compatibility: some themes force <dialog> display:block, even when closed.
   This prevents an unopen lightbox from showing as a giant black page section. */
.fps-select__lightbox:not([open]),
.fps-select__lightbox[hidden] {
  display:none !important;
  visibility:hidden !important;
}
.fps-select__lightbox {
  box-sizing:border-box;
  position:fixed;
  inset:0;
  margin:auto;
  width:min(1120px,calc(100vw - 32px));
  height:min(850px,calc(100vh - 32px));
  height:min(850px,calc(100dvh - 32px));
  max-width:none;
  max-height:none;
  padding:14px;
  border:1px solid #504536;
  border-radius:2px;
  background:#141414;
  color:#fff;
  overflow:hidden;
  font-family:inherit;
  line-height:1.4;
}
/* Native modal stays on the browser top layer, outside theme stacking contexts.
   Explicit geometry takes precedence over generic theme dialog declarations. */
.fps-select__lightbox[open]:not([hidden]) {
  position:fixed !important;
  inset:0 !important;
  margin:auto !important;
  z-index:2147483647 !important;
  display:flex !important;
  flex-direction:column !important;
  visibility:visible !important;
  width:min(1120px,calc(100vw - 32px)) !important;
  height:min(850px,calc(100dvh - 32px)) !important;
  max-width:none !important;
  max-height:none !important;
  overflow:hidden !important;
}
.fps-select__lightbox::backdrop { background:rgba(0,0,0,.92); }
.fps-select__lightbox-inner {
  position:relative;
  flex:1 1 auto;
  display:flex;
  align-items:stretch;
  justify-content:center;
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:0;
  padding:48px 48px 4px;
}
.fps-select__lightbox-figure {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  margin:0;
  padding:0;
  text-align:center;
}
.fps-select__lightbox-figure img[data-gallery-large] {
  display:block!important;
  flex:1 1 auto;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  min-width:0;
  min-height:0;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  background:transparent;
}
.fps-select__lightbox-figure figcaption[data-gallery-caption] {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto;
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  max-height:92px;
  overflow:auto;
  padding:9px 4px 3px!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  font-family:inherit;
  font-size:13px!important;
  line-height:1.5!important;
  font-weight:400;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  color:#e4e0da!important;
}
.fps-select__lightbox-figure figcaption[data-gallery-caption]:empty { display:none!important; }
.fps-select__lightbox-close {
  position:absolute;
  z-index:3;
  right:0;
  top:0;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:44px;
  height:44px;
  padding:0;
  border:1px solid #927748;
  border-radius:2px;
  background:#292723;
  color:#fff;
  font:inherit;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.fps-select__lightbox-arrow {
  position:absolute;
  z-index:2;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:40px;
  height:52px;
  padding:0;
  border:1px solid #696257;
  border-radius:2px;
  background:#292723;
  color:#fff;
  font:inherit;
  font-size:23px;
  cursor:pointer;
}
.fps-select__lightbox-arrow[data-gallery-prev] { left:0; }
.fps-select__lightbox-arrow[data-gallery-next] { right:0; }
.fps-select__lightbox-arrow[hidden] { display:none!important; }
.fps-select__lightbox-counter {
  flex:0 0 auto;
  min-height:20px;
  padding:8px 0 2px;
  margin:0;
  font-size:12px;
  line-height:1.5;
  text-align:center;
  letter-spacing:.04em;
  color:#d2c8b7;
}
.fps-select__lightbox button:focus-visible { outline:3px solid #cbb183; outline-offset:3px; }
@media(max-width:720px){
 .fps-select__article-header{padding-bottom:28px}
 .fps-select__gallery{margin-top:35px}
 .fps-select__gallery-grid{gap:8px}
 .fps-select__lightbox[open]:not([hidden]){width:calc(100vw - 12px)!important;height:calc(100dvh - 12px)!important;max-width:none!important;padding:6px}
 .fps-select__lightbox-inner{padding:49px 5px 3px}
 .fps-select__lightbox-arrow{width:40px;height:48px;font-size:21px;background:rgba(30,29,27,.87)}
 .fps-select__gallery-icon{width:27px;height:27px;right:7px;bottom:7px}
}
@media(prefers-reduced-motion:reduce){.fps-select__gallery-item img{transition:none}}

/* 1.8.0 — editorial refresh. Namespaced, self-hosted, theme-font inheritance only. */
.fps-select {
  --fps-ink: #1c1c1a;
  --fps-muted: #66625d;
  --fps-border: #e5e1d9;
  --fps-cream: #f7f5f0;
  font-family: inherit;
  line-height: 1.66;
}
/* Resist themes that force a serif family on headings; do not introduce another font. */
.fps-select :is(h1,h2,h3,h4),
.fps-select :is(.fps-select__overline,.fps-select__eyebrow,.fps-select__editorial-kicker) {
  font-family: inherit !important;
}
.fps-select__brand {
  padding: clamp(32px,4.2vw,48px) 18px;
  background: linear-gradient(110deg,#141414,#1d1c19 75%,#242019);
  border-bottom: 1px solid #6e5b39;
}
.fps-select__brand::before { opacity: .3; }
.fps-select__overline { font-size: 10px; letter-spacing: .24em; margin-bottom: 8px; }
.fps-select__brand-title {
  font-size: clamp(40px,5vw,58px) !important;
  font-weight: 700;
  letter-spacing: .13em;
}
.fps-select__gold-rule { width: 48px; margin: 16px auto 12px; }
.fps-select__topic-nav {
  gap: 8px clamp(12px,2.7vw,35px);
  border-bottom: 1px solid #ebe8e3;
  padding: 17px 16px;
}
.fps-select__topic-nav a { font-weight: 650; font-size: 13px; }
.fps-select__intro { padding: 42px 0 42px; }
.fps-select__intro p { max-width: 825px; font-size: clamp(16px,1.85vw,19px); color: #4c4a46; }
.fps-select__lead { margin-bottom: 72px; }
.fps-select__editorial-head { margin-bottom: 24px; }
.fps-select__editorial-head h2 { font-size: clamp(25px,2.8vw,33px); line-height: 1.18; letter-spacing: -.025em; }
.fps-select__editorial-kicker { font-size: 10px; letter-spacing: .18em; margin-bottom: 7px; color: #806740; }
.fps-select__lead-grid,.fps-select__grid { gap: clamp(18px,2.5vw,32px); }
.fps-select__card {
  border: 1px solid #e8e3da;
  border-radius: 2px;
  box-shadow: 0 5px 16px rgba(0,0,0,.025);
  transition: border-color .2s ease,box-shadow .2s ease;
}
.fps-select__card:hover { border-color: #c9ba9e; box-shadow: 0 9px 22px rgba(0,0,0,.04); }
.fps-select__card-image,.fps-select__card--hero .fps-select__card-image { aspect-ratio: 16 / 9; }
.fps-select__placeholder {
  background: linear-gradient(130deg,#131313 12%,#1c1b19 55%,#30291f 100%);
}
.fps-select__placeholder span {
  color: #968368;
  font-size: clamp(18px,2.6vw,28px);
  letter-spacing: .34em;
  font-weight: 650;
}
.fps-select__card-content,.fps-select__card--hero .fps-select__card-content {
  padding: clamp(22px,2.4vw,30px) clamp(22px,2.45vw,30px) clamp(22px,2.35vw,28px);
}
.fps-select__eyebrow { color: #80673f; margin-bottom: 12px; font-size: 10px; letter-spacing: .15em; }
.fps-select__card h3,.fps-select__card--hero h3 {
  font-size: clamp(22px,1.95vw,28px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.022em;
  margin: 0 0 12px !important;
  text-wrap: pretty;
}
.fps-select__card h3 a { -webkit-line-clamp: 3; }
.fps-select__excerpt,.fps-select__card--hero .fps-select__excerpt {
  font-size: 14px;
  line-height: 1.75;
  color: #625f5a;
  -webkit-line-clamp: 3;
  margin-bottom: 21px !important;
}
.fps-select__meta {
  width: 100%;
  min-width: 0;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #ede9e2;
  color: #77716a;
  font-size: 11px;
  column-gap: 14px;
  row-gap: 9px;
}
.fps-select__card-reading::before { content: '·'; color: var(--fps-gold); margin-right: 12px; }
.fps-select__card-link { font-size: 12px; font-weight: 700; margin-left: auto; color: #6f5938 !important; }
.fps-select__section { margin-bottom: 72px; }
.fps-select__section-heading { margin-bottom: 26px; padding-bottom: 18px; border-bottom-color: #e6e2dc; }
.fps-select__section-heading h2 {
  border-left: 0;
  padding-left: 0;
  font-size: clamp(24px,2.65vw,31px);
  letter-spacing: -.025em;
}
.fps-select__section-heading h2::before {
  content: ''; display: inline-block; height: 20px; width: 2px;
  margin-right: 16px; background: var(--fps-gold); vertical-align: -.1em;
}
.fps-select__section-heading > a { font-size: 12px; color: #715c3a; }
.fps-select__card--discovery { border-color: #d5c8b4; box-shadow: none; }
.fps-select__card--discovery .fps-select__placeholder { background: linear-gradient(140deg,#191919 8%,#29231b); }
.fps-select__card--discovery .fps-select__card-content { background: #faf9f6; }
.fps-select__related { margin-top: 80px; }

/* Longer articles read like reportages. */
.fps-select__article-header { max-width: 970px; padding-bottom: 40px; }
.fps-select__article-header h1 {
  color: #181817;
  font-weight: 700;
  font-size: clamp(33px,4.15vw,54px) !important;
  line-height: 1.17 !important;
  letter-spacing: -.024em;
}
.fps-select__article-deck { max-width: 760px; font-size: clamp(18px,1.95vw,22px); color: #55514b; line-height: 1.68; }
.fps-select__article-header-divider { width: 45px; height: 1px; margin: 29px auto 21px; }
.fps-select__article-byline { font-size: 12px; color: #746f68; }
.fps-select__article-media { max-width: 1080px; margin-bottom: clamp(36px,4.5vw,58px); }
.fps-select__article-image { max-height: 620px; }
.fps-select__article-figcaption { text-align: left; border-bottom: 1px solid #ece7de; padding: 11px 0 14px; }
.fps-select__article-layout {
  grid-template-columns: minmax(0,740px) minmax(235px,270px);
  gap: clamp(38px,4.2vw,66px);
  padding: 0 14px;
}
.fps-select__article-body { font-size: 17px; line-height: 1.93; color: #292826; }
.fps-select__article-body > p:first-of-type {
  font-size: clamp(18px,1.9vw,21px);
  line-height: 1.75;
  padding: 0 0 0 24px;
  border-left: 2px solid var(--fps-gold);
  margin-bottom: 2em;
  color: #35322d;
}
.fps-select__article-body :is(h2,h3) { scroll-margin-top: 34px; }
.fps-select__article-body h2 {
  font-size: clamp(24px,2.8vw,32px);
  letter-spacing: -.021em;
  border-top: 1px solid #eae5dc;
  padding-top: 26px;
  margin: 1.95em 0 .65em;
}
.fps-select__article-body h3 { font-size: clamp(20px,2.2vw,25px); }
.fps-select__article-body blockquote {
  background: #f8f6f1;
  border-left: 2px solid var(--fps-gold);
  padding: 25px 30px;
  font-size: clamp(18px,1.9vw,22px);
  margin: 34px 0;
}
.fps-select__article-body figcaption { border-bottom: 1px solid #ede8df; padding-bottom: 8px; }
.fps-select__facts { box-shadow: none; background: #f8f7f4; border-top: 2px solid var(--fps-gold); padding: 27px; }
.fps-select__aside-kicker { font-size: 11px; letter-spacing: .16em; }
.fps-select__aside-block { background: #161616; padding: 30px 26px; }
.fps-select__gallery-heading h2 { font-size: clamp(24px,2.5vw,30px); }
.fps-select__gallery-item { aspect-ratio: 16 / 10; }
.fps-select__article-footer { margin-top: 52px; padding-top: 23px; }

/* Accessible, fully local table of contents (shown only when there are 3+ H2 headings). */
.fps-select__toc {
  background: #f8f7f3;
  border: 1px solid #e8e1d5;
  border-left: 2px solid var(--fps-gold);
  padding: clamp(19px,3vw,30px);
  margin: 0 0 38px;
}
.fps-select__toc-heading { display: flex; flex-direction: column; gap: 1px; margin-bottom: 15px; }
.fps-select__toc-heading .fps-select__eyebrow { margin: 0 0 2px; }
.fps-select__toc-heading strong { font-weight: 700; font-size: 19px; color: #22201d; }
.fps-select__toc ol { list-style: decimal; margin: 0; padding-left: 23px; color: #806841; }
.fps-select__toc li { padding: 2px 0; margin-bottom: 6px; }
.fps-select__toc a { color: #3f3b35; text-decoration: none; font-size: 14px; line-height: 1.55; }
.fps-select__toc a:hover,.fps-select__toc a:focus-visible { color: #725832; text-decoration: underline; text-underline-offset: 3px; }

@media(max-width:980px){
  .fps-select__article-layout { grid-template-columns: minmax(0,1fr); }
  .fps-select__card-content,.fps-select__card--hero .fps-select__card-content { padding: 22px 21px 24px; }
  .fps-select__card h3,.fps-select__card--hero h3 { font-size: clamp(19px,2.3vw,26px); }
  .fps-select__card-link { margin-left: 0; }
}
@media(max-width:720px){
  .fps-select__brand { padding: 33px 12px; }
  .fps-select__intro { padding: 29px 0 34px; }
  .fps-select__lead { margin-bottom: 56px; }
  .fps-select__lead-grid,.fps-select__grid { grid-template-columns: minmax(0,1fr); gap: 23px; }
  .fps-select__card h3,.fps-select__card--hero h3 { font-size: 23px; }
  .fps-select__meta { gap: 8px 15px; }
  .fps-select__card-link { margin-left: auto; }
  .fps-select__article-header { padding-bottom: 29px; }
  .fps-select__article-body { font-size: 16px; line-height: 1.8; }
  .fps-select__article-body > p:first-of-type { font-size: 18px; padding-left: 17px; }
  .fps-select__article-body h2 { padding-top: 22px; }
  .fps-select__article-layout { padding: 0 8px; }
  .fps-select__toc { margin-bottom: 30px; }
  .fps-select__facts { padding: 21px; }
}
@media(prefers-reduced-motion:reduce){
  .fps-select__card{transition:none}
}

/* 1.9.0 — Lifestyle Guide Destinationen and an understated editorial reading finish.
   Fully namespaced; inherits the active theme font. No remote media or libraries. */
.fps-select__destination-filter {
  display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;
  gap:14px 28px;padding:19px 22px 21px;margin:0 14px 23px;
  border:1px solid #e8e4dd;background:#f8f7f4;
}
.fps-select__destination-filter label {font-size:12px;letter-spacing:.07em;text-transform:uppercase;font-weight:750;color:#514536}
.fps-select__filter-controls {display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.fps-select__filter-controls select {min-width:215px;max-width:100%;min-height:42px;padding:9px 35px 9px 13px;background:#fff;color:#252525;border:1px solid #d9d3c8;border-radius:2px;font:inherit;font-size:14px;line-height:1.3}
.fps-select__filter-controls button {border:1px solid #24211c;background:#24211c;color:#fff;cursor:pointer;min-height:42px;padding:9px 20px;font:inherit;font-size:13px;font-weight:700;line-height:1.3;transition:background-color .2s ease}
.fps-select__filter-controls button:hover{background:#494030}
.fps-select__filter-controls button:focus-visible,.fps-select__filter-controls select:focus-visible{outline:3px solid var(--fps-gold);outline-offset:3px}
.fps-select__active-filter {margin:0 14px 18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-left:2px solid var(--fps-gold);padding:7px 14px;color:#55514a;font-size:14px}
.fps-select__active-filter a{font-weight:750;text-decoration:underline;text-underline-offset:4px;color:#6d5530}
.fps-select__destination-shortcut{margin:0 14px 31px;text-align:right}
.fps-select__destination-shortcut a{font-size:13px;color:#705b37;font-weight:750;border-bottom:1px solid #c7b797;padding-bottom:4px}
.fps-select__destination-index {padding:45px 14px 58px}
.fps-select__destination-index > h2 {font:inherit!important;font-size:clamp(28px,3.5vw,40px)!important;line-height:1.18!important;font-weight:700!important;color:#191919!important;letter-spacing:-.025em;margin:5px 0 13px!important}
.fps-select__destination-intro {max-width:760px;color:#65615b;font-size:16px;line-height:1.7;margin:0 0 30px}
.fps-select__places-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.fps-select__place{display:flex;flex-direction:column;min-width:0;border:1px solid #e8e4dc;background:#fff}
.fps-select__place-image{display:block;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#181818}
.fps-select__place-cover{width:100%;height:100%!important;display:block;object-fit:cover;transition:transform .24s ease}
.fps-select__place-image:hover .fps-select__place-cover{transform:scale(1.025)}
.fps-select__place-placeholder{display:grid;place-items:center;width:100%;height:100%;padding:20px;text-align:center;background:linear-gradient(120deg,#171716,#332b23 75%,#171717);color:#9a835d;letter-spacing:.17em;font-size:clamp(12px,1.8vw,20px);font-weight:700}
.fps-select__place-body{flex:1;display:flex;flex-direction:column;padding:23px 24px 25px}
.fps-select__place-body h3{font:inherit!important;font-weight:700!important;font-size:clamp(23px,2.4vw,31px)!important;line-height:1.2!important;color:#191919!important;margin:0 0 10px!important}
.fps-select__place-body p{color:#64615c;line-height:1.65;font-size:14px;margin:0 0 17px}
.fps-select__place-body > .fps-select__more-link{margin-top:auto;padding-top:13px;border-top:1px solid #ece7df;font-size:13px;font-weight:750;color:#775e35}
.fps-select__destination-heading{padding:15px 14px 25px}
.fps-select__destination-heading h2{font:inherit!important;font-size:clamp(35px,4.6vw,56px)!important;line-height:1.16!important;font-weight:700!important;letter-spacing:-.03em;color:#181818!important;margin:7px 0 12px!important}
.fps-select__destination-subtitle{color:#67625b;max-width:790px;font-size:clamp(16px,2vw,21px);line-height:1.6;margin:0}
.fps-select__destination-hero{margin:0 14px 33px;max-height:530px;overflow:hidden;aspect-ratio:16/7}
.fps-select__destination-image{display:block;width:100%;height:100%!important;object-fit:cover}
.fps-select__destination-description{max-width:840px;margin:0 14px 34px;padding:0 0 17px;border-bottom:1px solid #e9e4dc;color:#514f4b;font-size:17px;line-height:1.8}
.fps-select__destination-description p{margin:0 0 14px}
.fps-select--destination .fps-select__archive{padding:6px 14px 20px}
.fps-select__article-location{display:inline-flex;gap:5px;align-items:center;color:#725a36!important;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.fps-select__article-destination{margin:52px 0 10px;padding:27px 30px 29px;background:#f8f7f4;border-left:3px solid var(--fps-gold)}
.fps-select__article-destination h2{font:inherit!important;font-size:clamp(23px,3vw,32px)!important;font-weight:700!important;line-height:1.25!important;margin:10px 0!important;color:#181818!important}
.fps-select__article-destination p{margin:7px 0 14px!important;font-size:14px;color:#615d56}
.fps-select__article-destination > a{color:#705631!important;font-weight:750;font-size:13px;text-underline-offset:4px;text-decoration:underline}
@media(max-width:980px){
 .fps-select__places-grid{gap:22px}
}
@media(max-width:720px){
 .fps-select__destination-filter{margin:0 10px 18px;padding:16px}
 .fps-select__filter-controls{width:100%}
 .fps-select__filter-controls select{min-width:0;flex:1 1 165px}
 .fps-select__filter-controls button{flex:1 1 110px}
 .fps-select__active-filter{margin:0 10px 15px}
 .fps-select__destination-shortcut{margin:0 10px 22px}
 .fps-select__destination-index{padding:32px 10px 38px}
 .fps-select__places-grid{grid-template-columns:1fr;gap:18px}
 .fps-select__place-body{padding:20px}
 .fps-select__destination-heading{padding:4px 10px 19px}
 .fps-select__destination-hero{margin:0 10px 25px;aspect-ratio:16/10}
 .fps-select__destination-description{margin:0 10px 23px;font-size:16px}
 .fps-select--destination .fps-select__archive{padding:0 10px 15px}
 .fps-select__article-destination{padding:21px 20px}
}
@media(prefers-reduced-motion:reduce){.fps-select__place-cover,.fps-select__filter-controls button{transition:none}}

/* 1.9.2: Ausgewogene Destinationssuche. Nur im Lifestyle-Guide-Bereich. */
.fps-select form.fps-select__destination-filter {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(0, 540px);
  align-items: center;
  gap: 18px 28px;
  padding: 20px 26px;
  margin: 0 14px 27px;
  border: 1px solid #e7e2d8;
  border-left: 3px solid var(--fps-gold);
  background: #f8f7f4;
}
.fps-select form.fps-select__destination-filter label {
  display: block;
  align-self: center;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: .11em;
  text-transform: uppercase;
  font-weight: 750;
  color: #514536;
}
.fps-select form.fps-select__destination-filter .fps-select__filter-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
}
.fps-select form.fps-select__destination-filter .fps-select__filter-controls select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 46px;
  min-height: 46px;
  margin: 0;
  padding: 9px 33px 9px 14px;
  background: #fff;
  color: #252525;
  border: 1px solid #d9d3c8;
  border-radius: 2px;
  font: inherit;
  font-size: 14px;
  line-height: 1.3;
}
.fps-select form.fps-select__destination-filter .fps-select__filter-controls button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: auto;
  height: 46px;
  min-height: 46px;
  margin: 0;
  padding: 0 22px;
  border: 1px solid #24211c;
  border-radius: 2px;
  background: #24211c;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  transition: background-color .2s ease;
}
.fps-select form.fps-select__destination-filter .fps-select__filter-controls button:hover {
  background: #494030;
}
@media (max-width: 720px) {
  .fps-select form.fps-select__destination-filter {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 17px 16px;
    margin: 0 10px 19px;
  }
  .fps-select form.fps-select__destination-filter .fps-select__filter-controls {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .fps-select form.fps-select__destination-filter .fps-select__filter-controls button {
    padding: 0 14px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .fps-select form.fps-select__destination-filter .fps-select__filter-controls button {
    transition: none;
  }
}

/* 2.0.1: Einzelartikel – Infokasten auf Mobilgeraeten direkt nach dem Lesetext.
   Desktop behält die rechte Informationsspalte und die alte Optik.
   Kein JavaScript, keine zusätzlichen Verbindungen oder Bibliotheken. */
.fps-select--single .fps-select__article-layout {
  grid-template-areas: "reading sidebar" "following sidebar";
  row-gap: 0;
}
.fps-select--single .fps-select__article-body { grid-area: reading; }
.fps-select--single .fps-select__article-aside { grid-area: sidebar; }
.fps-select--single .fps-select__article-after {
  grid-area: following;
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 17px;
  line-height: 1.93;
}
@media (max-width: 980px) {
  .fps-select--single .fps-select__article-layout {
    grid-template-areas: "reading" "facts" "following" "promo";
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
  }
  .fps-select--single .fps-select__article-aside { display: contents; }
  .fps-select--single .fps-select__article-aside .fps-select__facts {
    grid-area: facts;
    max-width: none;
    margin-top: 22px;
  }
  .fps-select--single .fps-select__article-after { font-size: 16px; line-height: 1.8; }
  .fps-select--single .fps-select__article-after .fps-select__article-destination { margin-top: 24px; }
  .fps-select--single .fps-select__article-aside .fps-select__aside-block {
    grid-area: promo;
    max-width: none;
    margin-top: 24px;
  }
}

/* 2.2.0 – Shared, accessible pagination for home, topics and destinations. */
.fps-select .fps-select__pagination { margin: 38px 0 16px; }
.fps-select .fps-select__pagination a.page-numbers,
.fps-select .fps-select__pagination span.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  box-sizing: border-box;
  border-radius: 2px;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.35;
  text-decoration: none;
  transition: border-color .15s ease, color .15s ease, background-color .15s ease;
}
.fps-select .fps-select__pagination span.page-numbers.current {
  background: #24201a;
  color: #fff;
  border-color: #24201a;
  font-weight: 750;
}
.fps-select .fps-select__pagination a.page-numbers:hover {
  border-color: var(--fps-gold);
  color: #51412b;
  background: #f7f4ee;
}
.fps-select .fps-select__pagination a.page-numbers:focus-visible {
  outline: 3px solid var(--fps-gold);
  outline-offset: 2px;
}
.fps-select .fps-select__pagination span.page-numbers.dots {
  border: 0;
  padding: 8px 2px;
}
@media (max-width: 600px) {
  .fps-select .fps-select__pagination { margin-top: 26px; }
  .fps-select .fps-select__pagination .nav-links,
  .fps-select .fps-select__pagination ul.page-numbers { gap: 7px; }
  .fps-select .fps-select__pagination a.page-numbers,
  .fps-select .fps-select__pagination span.page-numbers:not(.dots) { min-width: 44px; min-height: 44px; padding: 9px; }
}

.fps-select .fps-select__pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  background: transparent;
}
.fps-select .fps-select__pagination ul.page-numbers > li { margin: 0; padding: 0; list-style: none; }

/* 2.2.3 – conspicuous ad disclosure before editorial titles, locally styled. */
.fps-select__ad-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 13px}
.fps-select__ad-badge{display:inline-block;padding:4px 10px;border:1px solid #47423a;border-radius:2px;background:#f6f3ed;color:#23211d;font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.045em;line-height:1.35;text-transform:uppercase}
.fps-select__ad-extra{font-size:12px;color:#605a50;line-height:1.35}
.fps-select__article-header .fps-select__ad-heading{justify-content:center;margin:0 0 17px}
.fps-select__card-content .fps-select__ad-heading + .fps-select__eyebrow{margin-top:0}

/* 2.2.6 — Emoji-free editorial arrow. Self-contained SVG from PHP;
   scoped dimensions prevent WordPress themes from enlarging SVG elements. */
.fps-select svg.fps-select__icon-up-right {
  display:inline-block!important;
  width:1em!important;
  height:1em!important;
  max-width:1em!important;
  min-width:1em!important;
  max-height:1em!important;
  min-height:1em!important;
  margin-left:.15em;
  padding:0!important;
  vertical-align:-.11em;
  flex:none;
  color:inherit;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2;
  overflow:visible;
}
.fps-select .fps-select__gallery-icon svg.fps-select__icon-up-right {
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  max-width:17px!important;
  min-height:17px!important;
  max-height:17px!important;
  margin:0!important;
  vertical-align:middle;
  color:#fff;
}

/* 2.2.7 – mobile editorial refinement. Fully self-hosted, all styles scoped. */
.fps-select__topic-nav-shell {
  position: relative;
  isolation: isolate;
  background: #fff;
}
/* Small text must remain readable on white: the brand gold stays unchanged
   for graphic accents, while editorial microcopy uses darker gold. */
.fps-select .fps-select__eyebrow,
.fps-select .fps-select__editorial-kicker {
  color: #735a37;
}
.fps-select .fps-select__meta {
  color: #655e55;
  font-size: 12px;
}
.fps-select .fps-select__card-link,
.fps-select .fps-select__more-link,
.fps-select .fps-select__section-heading > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.fps-select .fps-select__topic-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
@media (max-width: 720px) {
  /* About 25% less header height on typical phones. Only the magazine
     landing page is affected; the site's own theme header is untouched. */
  .fps-select--home .fps-select__brand {
    padding: 20px 14px 21px;
  }
  .fps-select--home .fps-select__brand-title {
    font-size: clamp(29px, 8vw, 34px) !important;
    letter-spacing: .105em;
    line-height: 1.08 !important;
  }
  .fps-select--home .fps-select__overline {
    font-size: 9px;
    letter-spacing: .18em;
    margin-bottom: 5px;
  }
  .fps-select--home .fps-select__gold-rule {
    margin: 11px auto 9px;
    width: 41px;
  }
  .fps-select--home .fps-select__brand-caption {
    font-size: 13px;
    line-height: 1.4;
  }
  .fps-select .fps-select__topic-nav {
    /* Native horizontal scrolling stays intact, including keyboard use. */
    padding: 8px 62px 8px 14px;
    gap: 20px;
    scroll-padding-inline: 14px;
  }
  .fps-select .fps-select__topic-nav a {
    font-size: 13px;
    padding: 8px 0;
    min-height: 44px;
  }
  .fps-select__topic-nav-shell--has-more::after {
    content: '';
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 1px;
    width: 64px;
    z-index: 2;
    background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.88) 40%, #fff 72%);
  }
  .fps-select__topic-nav-shell--has-more::before {
    content: '';
    pointer-events: none;
    position: absolute;
    z-index: 3;
    top: calc(50% - 6px);
    right: 18px;
    width: 12px;
    height: 12px;
    border-right: 2px solid #735a37;
    border-top: 2px solid #735a37;
    transform: rotate(45deg);
    box-shadow: 0 0 0 10px rgba(255,255,255,.45);
  }
  .fps-select--home .fps-select__intro { padding: 22px 0 26px; }
  .fps-select .fps-select__meta {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: center;
    align-items: center;
    justify-items: center;
    text-align: center;
    gap: 8px 18px;
  }
  .fps-select .fps-select__card-link {
    grid-column: 1 / -1;
    justify-self: center;
    margin-left: 0;
    padding: 8px 0 2px;
  }
  .fps-select .fps-select__more-link { padding-top: 10px; padding-bottom: 10px; }
}

/* 2.3.2 — Desktop/tablet centering in themes that float #primary into a
   content column. Disable the inherited float before using auto margins.
   Mobile <= 720px deliberately retains its existing layout unchanged. */
@media (min-width: 721px) {
  main#primary.fps-select,
  main.fps-select {
    display: block;
    float: none !important;
    clear: both;
    position: relative;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: min(1180px, calc(100vw - 36px)) !important;
    max-width: none !important;
    margin: 0 auto 72px !important;
  }
  main#primary.fps-select-page,
  main.fps-select-page {
    display: block;
    float: none !important;
    clear: both;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* 2.3.3 — Mobile centering fix. The original left:50% + translateX(-50%)
   does not account for themes that float #primary into a content column.
   Center the element in the available parent width instead of the viewport.
   Scoped to magazine main elements; desktop styles above are unchanged. */
@media (max-width: 720px) {
  main#primary.fps-select,
  main.fps-select {
    display: block;
    float: none !important;
    clear: both;
    position: relative;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin: 0 auto 45px !important;
  }
  main#primary.fps-select-page,
  main.fps-select-page {
    display: block;
    float: none !important;
    clear: both;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
