/* Vorena 1.2.4 — focused visual fixes; designed to layer over prior theme CSS. */
/* The promotional graphic contains the headline and its own dark-red button.
   Treat every pixel as a link instead of floating another CTA on top. */
body.home .editorial-split > .campaign-feature--opening-offer {
  display:block!important; height:auto!important; min-height:0!important; max-height:none!important;
  margin:0!important; padding:0!important; border:0!important; background:#efe8e0!important;
  overflow:hidden; border-radius:9px; line-height:0;
}
body.home .campaign-feature--opening-offer .campaign-offer-visual {
  position:relative!important; inset:auto!important; display:block!important;
  padding:0!important; margin:0!important; width:100%; height:auto!important; line-height:0;
  overflow:hidden!important; cursor:pointer;
}
body.home .campaign-feature--opening-offer .campaign-offer-visual img {
  position:relative!important; inset:auto!important; display:block!important;
  width:100%!important; max-width:100%!important; height:auto!important; max-height:none!important;
  aspect-ratio:auto!important; object-fit:contain!important; object-position:center!important;
  padding:0!important; margin:0!important; transform:none!important; filter:none!important;
  border-radius:9px; mix-blend-mode:normal!important;
}
body.home .campaign-feature--opening-offer .campaign-offer-visual:hover img {transform:none!important;filter:none!important;}
body.home .campaign-offer-floating {display:none!important;}
body.home .editorial-split {align-items:start!important;}
/* Self-contained high-quality category cards. Art is never cropped and retains
   its intended composition; warm captions are separated from the photograph. */
body.home .category-mosaic {
  display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(12px,1.4vw,21px)!important; padding:0 clamp(16px,3vw,42px)!important;
  margin-block:clamp(18px,3vw,36px)!important;
}
body.home .category-mosaic .category-tile--editorial {
  position:relative!important; display:flex!important; flex-direction:column!important;
  aspect-ratio:auto!important; height:auto!important; min-height:0!important; max-height:none!important;
  border-radius:12px!important; border:1px solid #e2d8ce!important;
  background:#f5f0e9!important; overflow:hidden!important; box-shadow:0 3px 16px rgba(57,38,24,.065);
  transition:transform .25s ease,box-shadow .25s ease;
}
body.home .category-mosaic .category-tile--editorial:hover {transform:translateY(-3px);box-shadow:0 12px 30px rgba(48,31,23,.12);}
body.home .category-mosaic .category-tile--editorial>img {
  position:relative!important; inset:auto!important; z-index:auto!important;
  display:block!important; width:100%!important; height:auto!important; aspect-ratio:1 / 1!important;
  max-height:none!important; object-fit:contain!important; object-position:center center!important;
  margin:0!important; padding:8px!important; background:#f5f0e9!important;
  transform:none!important; filter:none!important; border-radius:0!important;
}
body.home .category-mosaic .category-tile--editorial:hover>img {transform:none!important;}
body.home .category-mosaic .category-tile--editorial .category-tile__caption {
  position:relative!important; inset:auto!important; z-index:1!important; flex:1 0 auto;
  display:flex!important; flex-direction:column!important; justify-content:center!important;
  align-items:center!important; width:100%; height:auto!important; min-height:78px;
  padding:13px 8px 16px!important; background:#f0e8de!important;
}
body.home .category-mosaic .category-tile--editorial .category-tile__caption strong {font-size:clamp(13px,1.25vw,17px)!important;line-height:1.25!important;text-align:center!important;}
body.home .category-mosaic .category-tile--editorial .category-tile__caption>span {font-size:11px!important;}
body.home .category-mosaic .category-tile--editorial .category-number {
  position:absolute!important; top:15px!important; left:15px!important; z-index:3!important;
  padding:5px 9px!important; border-radius:50px; background:#fcfaf6e9;
  opacity:1!important; transform:none!important;
}
/* Existing WP-uploaded MP4 is played on the page, never in a Drive iframe.
   A calm portrait video on the left, clear editorial copy on the right. */
body.home .photo-banner {
  position:relative!important; isolation:isolate; display:grid!important;
  grid-template-columns:minmax(0, 38%) minmax(0, 1fr)!important;
  gap:clamp(24px,5vw,100px)!important;
  padding:clamp(25px,3vw,42px)!important; box-sizing:border-box;
  height:clamp(350px,39vw,510px)!important; max-height:510px!important;
  min-height:0!important; background:#f0e9e1!important; border-radius:9px!important;
  overflow:hidden!important;
}
body.home .photo-banner::after {pointer-events:none!important;}
body.home .photo-banner .vr-banner-media {
  position:relative!important; inset:auto!important; z-index:1;
  height:100%!important; width:100%!important; max-width:400px!important;
  display:block!important; overflow:hidden!important; border-radius:10px!important;
  justify-self:start; background:#e1d7cc; box-shadow:0 2px 12px rgba(33,24,19,.08);
}
body.home .photo-banner .vr-banner-media>.vr-banner-video,
body.home .photo-banner .vr-banner-media>img {
  position:absolute!important; inset:0!important; display:block!important;
  width:100%!important; height:100%!important; max-height:none!important;
  padding:0!important; margin:0!important;
  object-fit:cover!important; object-position:center center!important;
  transform:none!important; border:0!important; background:#e1d7cc!important;
}
body.home .photo-banner .vr-banner-media--photo>img {object-fit:cover!important;}
body.home .photo-banner .photo-banner-copy {
  position:relative!important; inset:auto!important; z-index:2!important;
  width:100%!important; min-width:0!important; max-width:620px!important;
  height:auto!important; align-self:center!important; justify-self:center!important;
  display:flex!important; flex-direction:column!important; align-items:center!important;
  text-align:center!important; padding:0 clamp(4px,2vw,20px)!important;
  transform:none!important; pointer-events:auto!important;
}
body.home .photo-banner .photo-banner-copy h2 {font-size:clamp(28px,3.25vw,52px)!important;line-height:1.13!important;}
body.home .photo-banner .photo-banner-copy>p:not(.eyebrow) {max-width:490px!important;font-size:clamp(13px,1.2vw,17px)!important;line-height:1.6!important;}
body.home .photo-banner .photo-banner-copy a {pointer-events:auto!important;}
body.home .photo-banner .banner-video-access {display:none!important;}
body.home .vr-video-controls {position:absolute;z-index:10;right:12px;bottom:12px;left:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none;}
body.home .vr-video-control {
  pointer-events:auto;display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;
  background:#fcfaf4dc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border:1px solid #e5ded4;color:#3c3029;border-radius:50%;cursor:pointer;
  box-shadow:0 4px 12px #22160c22;transition:transform .2s,background .2s;
  font-family:inherit;font-size:17px;font-weight:700;
}
body.home .vr-video-control:hover {transform:scale(1.05);background:white;}
body.home .vr-video-control:focus-visible {outline:3px solid #a26442;outline-offset:2px;}
body.home .vr-video-control [data-vr-play-symbol] {font-size:19px;line-height:1;}
body.home .vr-video-control [data-vr-volume-symbol] {font-size:20px;line-height:1;}
body.home .vr-banner-media>.vr-banner-video {cursor:pointer;}
/* Calm benefit strip: three grounded service benefits glide to the right.
   Two identical sequences prevent a visible jump in the infinite loop. */
.announcement.announcement-benefits.vr-announcement-ticker {
  display:flex!important;position:relative;align-items:center!important;justify-content:flex-start!important;
  height:35px!important;min-height:35px!important;max-height:35px!important;overflow:hidden!important;
  padding:0!important;background:#3b2d27!important;color:#fff9f4!important;
  white-space:nowrap!important;font-size:11px!important;letter-spacing:.025em!important;
}
.vr-announcement-ticker::before,.vr-announcement-ticker::after {
  content:""; position:absolute;top:0;bottom:0;width:28px;z-index:2;pointer-events:none;
}
.vr-announcement-ticker::before {left:0;background:linear-gradient(to right,#3b2d27,transparent);}
.vr-announcement-ticker::after {right:0;background:linear-gradient(to left,#3b2d27,transparent);}
.vr-announcement-ticker .vr-benefit-marquee {display:flex;flex-wrap:nowrap;min-width:max-content;width:max-content;align-items:center;animation:vr-benefits-right 27s linear infinite;will-change:transform;}
.vr-announcement-ticker .vr-benefit-group {display:flex;align-items:center;flex-wrap:nowrap;gap:clamp(22px,4vw,65px);padding-inline:clamp(11px,3vw,50px);white-space:nowrap;}
.vr-announcement-ticker .vr-benefit-group>span {flex:0 0 auto;}
.vr-announcement-ticker .vr-benefit-group .vr-benefit-dot {font-size:8px;color:#d3bca9;}
@keyframes vr-benefits-right {from {transform:translateX(-50%)}to {transform:translateX(0)}}
@media (max-width:760px) {
  .announcement.announcement-benefits.vr-announcement-ticker {height:33px!important;min-height:33px!important;max-height:33px!important;font-size:10px!important;}
  .vr-announcement-ticker .vr-benefit-marquee {animation-duration:27s;}
  body.home .editorial-split {gap:10px!important;padding-inline:13px!important;}
  body.home .editorial-split > .campaign-feature--opening-offer {height:auto!important;min-height:0!important;max-height:none!important;}
  body.home .campaign-feature--opening-offer .campaign-offer-visual img {height:auto!important;max-height:none!important;}
  body.home .category-mosaic {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding-inline:14px!important;}
  body.home .category-mosaic .category-tile--editorial {max-height:none!important;aspect-ratio:auto!important;}
  body.home .category-mosaic .category-tile--editorial>img {height:auto!important;aspect-ratio:1/1!important;padding:6px!important;}
  body.home .category-mosaic .category-tile--editorial .category-tile__caption {min-height:68px;padding:10px 4px!important;}
  body.home .category-mosaic .category-tile--editorial .category-tile__caption strong {font-size:clamp(11px,3.1vw,14px)!important;}
  body.home .category-mosaic .category-tile--editorial .category-tile__caption>span {font-size:10px!important;}
  body.home .category-mosaic .category-tile--editorial .category-number {top:10px!important;left:10px!important;}
  body.home .photo-banner {
    display:flex!important;flex-direction:column!important;align-items:center!important;
    gap:14px!important;height:auto!important;max-height:none!important;min-height:0!important;
    padding:18px 14px 24px!important;border-radius:8px!important;
  }
  body.home .photo-banner .vr-banner-media {height:auto!important;width:min(100%,315px)!important;max-width:315px!important;aspect-ratio:9/14!important;align-self:center!important;flex:0 0 auto;}
  body.home .photo-banner .photo-banner-copy {min-height:0!important;margin:0!important;padding:5px 4px 0!important;max-width:100%!important;}
  body.home .photo-banner .photo-banner-copy h2 {font-size:clamp(26px,8vw,38px)!important;margin:6px 0 10px!important;}
  body.home .photo-banner .photo-banner-copy>p:not(.eyebrow) {font-size:12px!important;line-height:1.45!important;}
  body.home .vr-video-controls {right:10px;bottom:10px;left:10px;}
  body.home .vr-video-control {width:35px;height:35px;flex-basis:35px;}
  body.home .style-journal .journal-track {flex-wrap:nowrap!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;}
}
@media(prefers-reduced-motion:reduce){
  .vr-announcement-ticker .vr-benefit-marquee {animation:none!important;transform:none!important;}
  body.home .category-mosaic .category-tile--editorial {transition:none!important;}
}

/* A portrait fallback may not turn the promotional section into a 2,000px-tall panel. */
body.home .editorial-split > .campaign-feature--opening-offer {
  height:clamp(230px,31vw,430px)!important;
  max-height:430px!important;
}
body.home .campaign-feature--opening-offer .campaign-offer-visual {
  height:100%!important; display:flex!important; align-items:center!important; justify-content:center!important;
}
body.home .campaign-feature--opening-offer .campaign-offer-visual img {
  width:100%!important; height:100%!important; max-width:100%!important; max-height:100%!important;
  object-fit:contain!important; object-position:center center!important;
}
@media(max-width:760px){
  body.home .editorial-split > .campaign-feature--opening-offer {height:clamp(175px,58vw,290px)!important;max-height:290px!important;}
}
/* Previous theme versions placed a full-width dark overlay over story content.
   With an independent portrait media column, that overlay is unnecessary. */
body.home .photo-banner::before,body.home .photo-banner::after {display:none!important;content:none!important;}
body.home .photo-banner .photo-banner-copy,
body.home .photo-banner .photo-banner-copy h2,
body.home .photo-banner .photo-banner-copy p {color:#352a25!important;text-shadow:none!important;}
body.home .photo-banner .photo-banner-copy .eyebrow {color:#756359!important;}
body.home .photo-banner .photo-banner-copy .button-light {background:#fffaf4!important;color:#3c3027!important;border:1px solid #e0d4ca!important;}
/* Crop a few percent of letterboxing that can be encoded inside portrait clips;
   no native browser video player overlays are rendered above these videos. */
body.home .photo-banner .vr-banner-media>.vr-banner-video {transform:scale(1.10)!important;transform-origin:center center!important;}
