/* HomeDecorFanLight 6.1.0 — Product Detail UX stabilization */
body.hdfl-product-detail-v605{
  --hdfl-product-shell:1440px;
  --hdfl-product-radius:0;
}
body.hdfl-product-detail-v605 #main{padding-top:0}
body.hdfl-product-detail-v605 .product-main,
body.hdfl-product-detail-v605 .product-footer{padding:0}
body.hdfl-product-detail-v605 .hdfl-product-layout-v605>.section-content{max-width:none!important}

/* Hero: resilient even if a third-party slider or combined stylesheet fails. */
body.hdfl-product-detail-v605 .hdfl-native-product-hero{
  width:100%;
  max-width:none;
  min-height:min(820px,calc(100vh - 76px));
  border-bottom:1px solid var(--hdfl-line);
}
body.hdfl-product-detail-v605 .hdfl-native-product-gallery{
  min-width:0;
  background:#f7f5f0;
}
body.hdfl-product-detail-v605 .hdfl-native-product-gallery__stage{
  cursor:zoom-in;
}
body.hdfl-product-detail-v605 .hdfl-native-product-gallery__stage::after{
  content:"↗";
  position:absolute;
  top:18px;
  right:18px;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(17,17,17,.18);
  border-radius:50%;
  background:rgba(255,255,255,.88);
  font-size:15px;
  pointer-events:none;
}
body.hdfl-product-detail-v605 .hdfl-native-product-gallery__thumb{
  border-radius:0;
  background:#fff;
}
body.hdfl-product-detail-v605 .hdfl-native-product-gallery__thumb:focus-visible,
body.hdfl-product-detail-v605 .hdfl-product-section-nav a:focus-visible{
  outline:2px solid var(--hdfl-ink);
  outline-offset:3px;
}
body.hdfl-product-detail-v605 .hdfl-native-product-summary{
  position:relative;
  min-width:0;
}
body.hdfl-product-detail-v605 .hdfl-native-product-summary__inner{
  max-width:560px;
}
body.hdfl-product-detail-v605 .hdfl-native-product-summary h1{
  max-width:15ch;
}
body.hdfl-product-detail-v605 .hdfl-native-product-summary__lead{
  font-size:14px;
}
body.hdfl-product-detail-v605 .hdfl-native-product-summary__highlights>div{
  min-height:68px;
}

/* Sticky anchor navigation. */
.hdfl-product-section-nav{
  position:sticky;
  z-index:34;
  top:64px;
  border-bottom:1px solid var(--hdfl-line);
  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
.admin-bar .hdfl-product-section-nav{top:96px}
.hdfl-product-section-nav__inner{
  display:flex;
  align-items:center;
  gap:32px;
  min-height:58px;
  overflow-x:auto;
  scrollbar-width:none;
}
.hdfl-product-section-nav__inner::-webkit-scrollbar{display:none}
.hdfl-product-section-nav a{
  flex:0 0 auto;
  padding:20px 0 17px;
  border-bottom:2px solid transparent;
  color:var(--hdfl-muted);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hdfl-product-section-nav a:hover,
.hdfl-product-section-nav a.is-active{color:var(--hdfl-ink);border-bottom-color:var(--hdfl-ink);opacity:1}

/* Story and specs share one rhythm. */
body.hdfl-product-detail-v605 .hdfl-product-story-section,
body.hdfl-product-detail-v605 .hdfl-product-spec-section,
body.hdfl-product-detail-v605 .hdfl-product-download-section,
body.hdfl-product-detail-v605 .hdfl-product-review-section,
body.hdfl-product-detail-v605 .hdfl-product-faq-section{
  scroll-margin-top:130px;
}
body.hdfl-product-detail-v605 .hdfl-product-story-section>.section-content>.row,
body.hdfl-product-detail-v605 .hdfl-product-spec-section>.section-content>.row,
body.hdfl-product-detail-v605 .hdfl-product-download-section>.section-content>.row,
body.hdfl-product-detail-v605 .hdfl-product-review-section>.section-content>.row,
body.hdfl-product-detail-v605 .hdfl-product-faq-section>.section-content>.row{
  max-width:var(--hdfl-product-shell)!important;
}
body.hdfl-product-detail-v605 .hdfl-product-story-image img{
  width:100%;
  min-height:520px;
  object-fit:cover;
}
body.hdfl-product-detail-v605 .hdfl-specs-v4,
body.hdfl-product-detail-v605 .hdfl-documents-v4{
  padding:0;
}
body.hdfl-product-detail-v605 .hdfl-specs-v4>.hdfl-shell,
body.hdfl-product-detail-v605 .hdfl-documents-v4>.hdfl-shell{
  width:100%;
}
body.hdfl-product-detail-v605 .hdfl-specs-v4__grid article{
  border-top:1px solid var(--hdfl-line);
}

/* Reviews. */
.hdfl-product-reviews{padding:0;background:#fff}
.hdfl-product-reviews__layout{
  display:grid;
  grid-template-columns:minmax(190px,.7fr) minmax(220px,.9fr) minmax(0,2fr);
  gap:1px;
  margin-top:42px;
  border:1px solid var(--hdfl-line);
  background:var(--hdfl-line);
}
.hdfl-product-reviews__summary,
.hdfl-product-reviews__breakdown,
.hdfl-product-reviews__list{min-width:0;padding:32px;background:#fff}
.hdfl-product-reviews__summary>strong{
  display:block;
  margin-bottom:8px;
  font-size:64px;
  font-weight:500;
  line-height:1;
  letter-spacing:-.06em;
}
.hdfl-product-reviews__summary>strong small{font-size:20px;letter-spacing:0}
.hdfl-product-reviews__summary p{margin:8px 0 24px;color:var(--hdfl-muted);font-size:12px}
.hdfl-product-reviews__stars .star-rating{float:none;margin:0}
.hdfl-product-reviews__breakdown{display:flex;flex-direction:column;justify-content:center;gap:13px}
.hdfl-rating-row{display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:10px;font-size:11px}
.hdfl-rating-row i{height:4px;overflow:hidden;background:#ece9e3}
.hdfl-rating-row b{display:block;height:100%;background:#a57c57}
.hdfl-rating-row small{text-align:right;color:var(--hdfl-muted)}
.hdfl-product-reviews__list{display:grid;gap:0;padding-top:16px;padding-bottom:16px}
.hdfl-product-reviews__list article{padding:20px 0;border-bottom:1px solid var(--hdfl-line)}
.hdfl-product-reviews__list article:last-child{border-bottom:0}
.hdfl-product-reviews__list article>header{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px}
.hdfl-product-reviews__list article>header strong,
.hdfl-product-reviews__list article>header small{display:block}
.hdfl-product-reviews__list article>header small{margin-top:3px;color:#4f7f55;font-size:9px;text-transform:uppercase}
.hdfl-product-reviews__list time{color:var(--hdfl-muted);font-size:10px}
.hdfl-product-reviews__list .star-rating{float:none;margin:0 0 10px}
.hdfl-product-reviews__list p{margin:0;color:var(--hdfl-muted);font-size:13px}
.hdfl-product-reviews__empty{align-self:center;padding:20px 0}
.hdfl-product-reviews__empty h3{margin:0 0 8px;font-size:24px}

/* FAQ. */
.hdfl-product-faq{padding:0;background:var(--hdfl-cream)}
.hdfl-product-faq__layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.7fr);gap:8vw}
.hdfl-product-faq .hdfl-editorial-heading p{max-width:420px;color:var(--hdfl-muted)}
.hdfl-product-faq__items{border-top:1px solid var(--hdfl-line)}
.hdfl-product-faq details{border-bottom:1px solid var(--hdfl-line)}
.hdfl-product-faq summary{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:22px 0;
  cursor:pointer;
  list-style:none;
  font-size:16px;
  font-weight:600;
}
.hdfl-product-faq summary::-webkit-details-marker{display:none}
.hdfl-product-faq summary span{transition:transform .2s ease}
.hdfl-product-faq details[open] summary span{transform:rotate(45deg)}
.hdfl-product-faq details>div{max-width:760px;padding:0 42px 24px 0;color:var(--hdfl-muted);line-height:1.7}

/* Product image lightbox. */
.hdfl-product-lightbox{
  position:fixed;
  z-index:10020;
  inset:0;
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 72px;
  place-items:center;
  background:rgba(12,12,12,.96);
  color:#fff;
}
.hdfl-product-lightbox[hidden]{display:none!important}
.hdfl-product-lightbox figure{display:grid;place-items:center;width:100%;height:100%;margin:0;padding:42px}
.hdfl-product-lightbox img{max-width:100%;max-height:calc(100vh - 84px);object-fit:contain}
.hdfl-product-lightbox button{border:0;background:transparent;color:#fff;cursor:pointer;font-size:28px}
.hdfl-product-lightbox__close{position:absolute;top:18px;right:18px;width:48px;height:48px;font-size:36px!important}
.hdfl-product-lightbox__prev,.hdfl-product-lightbox__next{width:64px;height:64px}
.hdfl-lightbox-open{overflow:hidden}

/* Mobile catalogue CTA. */
.hdfl-mobile-product-cta{display:none}


.hdfl-mobile-product-cta a:only-child{grid-column:1/-1}
@media(max-width:1099px){
  .hdfl-product-reviews__layout{grid-template-columns:1fr 1fr}
  .hdfl-product-reviews__list{grid-column:1/-1}
  .hdfl-product-faq__layout{gap:5vw}
}
@media(max-width:849px){
  .hdfl-product-section-nav{top:58px}
  .admin-bar .hdfl-product-section-nav{top:90px}
  .hdfl-product-section-nav__inner{gap:22px}
  body.hdfl-product-detail-v605 .hdfl-product-story-image img{min-height:0;aspect-ratio:4/3}
  .hdfl-product-reviews__layout{grid-template-columns:1fr}
  .hdfl-product-reviews__list{grid-column:auto}
  .hdfl-product-faq__layout{grid-template-columns:1fr;gap:36px}
  .hdfl-product-lightbox{grid-template-columns:50px minmax(0,1fr) 50px}
  .hdfl-product-lightbox figure{padding:22px 0}
}
@media(max-width:549px){
  body.hdfl-catalogue-product{padding-bottom:70px}
  .hdfl-product-section-nav__inner{min-height:52px}
  .hdfl-product-section-nav a{padding:17px 0 14px}
  .hdfl-product-reviews__summary,
  .hdfl-product-reviews__breakdown,
  .hdfl-product-reviews__list{padding:24px 20px}
  .hdfl-product-reviews__summary>strong{font-size:54px}
  .hdfl-product-faq summary{font-size:14px}
  .hdfl-product-faq details>div{padding-right:0}
  .hdfl-mobile-product-cta{
    position:fixed;
    z-index:9995;
    right:0;
    bottom:0;
    left:0;
    display:grid;
    grid-template-columns:minmax(88px,.35fr) minmax(0,1fr);
    gap:8px;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    border-top:1px solid var(--hdfl-line);
    background:rgba(255,255,255,.96);
    box-shadow:0 -8px 25px rgba(0,0,0,.08);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
  }
  .hdfl-mobile-product-cta a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 12px;font-size:11px;font-weight:700;text-transform:uppercase}
  .hdfl-mobile-product-cta__secondary{border:1px solid var(--hdfl-line);color:var(--hdfl-ink)}
  .hdfl-mobile-product-cta__primary{background:var(--hdfl-ink);color:#fff}
}
.hdfl-product-reviews__form{grid-column:1/-1;padding:34px;background:#fff;border-top:1px solid var(--hdfl-line)}
.hdfl-product-reviews__form .comment-reply-title{margin:0 0 24px;font-size:28px}
.hdfl-product-reviews__form .comment-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.hdfl-product-reviews__form .comment-form>p{margin:0}
.hdfl-product-reviews__form .comment-form-rating,
.hdfl-product-reviews__form .comment-form-comment,
.hdfl-product-reviews__form .form-submit,
.hdfl-product-reviews__form .logged-in-as{grid-column:1/-1}
.hdfl-product-reviews__form label{display:block;margin-bottom:7px;font-size:11px;font-weight:600}
.hdfl-product-reviews__form input,
.hdfl-product-reviews__form select,
.hdfl-product-reviews__form textarea{width:100%;margin:0}
@media(max-width:549px){.hdfl-product-reviews__form{padding:26px 20px}.hdfl-product-reviews__form .comment-form{grid-template-columns:1fr}.hdfl-product-reviews__form .comment-form>p{grid-column:1}}
/* Dynamic sections own their spacing so an empty shortcode never leaves a blank UX Builder section. */
body.hdfl-product-detail-v605 .hdfl-specs-v4{padding:92px 0;background:var(--hdfl-cream);scroll-margin-top:130px}
body.hdfl-product-detail-v605 .hdfl-documents-v4{padding:92px 0;background:#fff;scroll-margin-top:130px}
body.hdfl-product-detail-v605 .hdfl-related-v4,
body.hdfl-product-detail-v605 .hdfl-related-articles-v4{padding:88px 0;background:var(--hdfl-cream)}
body.hdfl-product-detail-v605 .hdfl-related-projects-v4{padding:88px 0;background:#111;color:#fff}
body.hdfl-product-detail-v605 .hdfl-related-projects-v4 h2,
body.hdfl-product-detail-v605 .hdfl-related-projects-v4 .hdfl-kicker{color:#fff}
@media(max-width:849px){body.hdfl-product-detail-v605 .hdfl-specs-v4,body.hdfl-product-detail-v605 .hdfl-documents-v4{padding:64px 0}body.hdfl-product-detail-v605 .hdfl-related-v4,body.hdfl-product-detail-v605 .hdfl-related-projects-v4,body.hdfl-product-detail-v605 .hdfl-related-articles-v4{padding:60px 0}}
