/* Livspace Home extra sections: scoped visuals, global typography and existing Swiper. */
.ls-home-extra{--hx-bg:var(--home-bg,var(--theme-alt-bg));--hx-heading:var(--home-heading,var(--theme-home-heading));--hx-text:var(--home-text,var(--theme-home-text));--hx-accent:var(--home-accent,var(--theme-home-accent));background:var(--hx-bg);color:var(--hx-text);padding:64px 0 70px}
.ls-home-extra .container{width:100%;}
.ls-home-extra__header{margin:0 0 24px}
.ls-home-extra__header h2{margin:0;color:var(--home-heading,var(--theme-h2-override,var(--theme-home-heading)));line-height:1.2}
.ls-home-extra__header p{margin:12px 0 0;color:var(--hx-text);line-height:1.6}
.ls-home-extra__header--split{display:flex;justify-content:space-between;align-items:center;gap:24px}
.ls-home-extra__cta{flex:none;display:inline-flex;justify-content:center;align-items:center;min-width:170px;min-height:47px;padding:10px 23px;border-radius:999px;background:var(--hx-cta-bg,var(--home-accent,var(--theme-button-bg)));color:var(--hx-cta-text,var(--theme-button-text));font:inherit;font-weight:650;text-decoration:none;text-align:center;text-transform:uppercase;letter-spacing:.02em;line-height:1.2;transition:filter .2s ease}
button.ls-home-extra__cta{border:0;cursor:pointer}
.ls-home-extra__cta:hover,.ls-home-extra__cta:focus-visible{background:var(--hx-cta-bg,var(--home-accent,var(--theme-button-hover-bg)));color:var(--hx-cta-text,var(--theme-button-hover-text))}
.ls-home-extra__cta:active{background:var(--hx-cta-bg,var(--home-accent,var(--theme-button-active-bg)));color:var(--hx-cta-text,var(--theme-button-active-text))}
.ls-home-extra__slider-shell{position:relative}
.ls-home-extra .swiper{overflow:hidden;padding:0 0 30px}
.ls-home-extra .swiper-wrapper{align-items:stretch}
.ls-home-extra .swiper-slide{height:auto;box-sizing:border-box}
/* Match the existing PHP Swiper breakpoints before its module finishes loading. */
.ls-home-showcase__slider:not(.swiper-initialized) .swiper-slide{width:calc((100% - 1.68px)/1.12);margin-inline-end:14px}
@media(min-width:640px){.ls-home-showcase__slider:not(.swiper-initialized) .swiper-slide{width:calc((100% - 18px)/2);margin-inline-end:18px}}
@media(min-width:1024px){.ls-home-showcase__slider:not(.swiper-initialized) .swiper-slide{width:calc((100% - 48px)/3);margin-inline-end:24px}}
.ls-home-extra .swiper-button-next,.ls-home-extra .swiper-button-prev{width:48px;height:48px;border:1px solid var(--livspace-border);border-radius:50%;background:var(--theme-card-bg);box-shadow:0 3px 14px var(--theme-decor-31233322);color:var(--hx-heading);--swiper-navigation-size:16px;top:calc(50% - 15px);margin-top:-24px}
.ls-home-extra .swiper-button-next{right:-22px}
.ls-home-extra .swiper-button-prev{left:-22px}
.ls-home-extra .swiper-button-disabled{opacity:0;pointer-events:none}
.ls-home-extra .swiper-pagination{bottom:0!important;line-height:6px}
.ls-home-extra .swiper-pagination-bullet{width:18px;height:4px;border-radius:6px;background:var(--theme-decor-c2bdc2);opacity:1}
.ls-home-extra .swiper-pagination-bullet-active{width:32px;background:var(--hx-heading)}
/* Full-height photography and a strong bottom text scrim, as in the reference. */
.ls-home-showcase__card{position:relative;display:block;overflow:hidden;height:430px;border-radius:14px;background:var(--theme-decor-d5cbc3);color:var(--theme-contrast-text);text-decoration:none;isolation:isolate}
.ls-home-showcase__image,.ls-home-showcase__placeholder{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.ls-home-showcase__placeholder{background:radial-gradient(ellipse at 70% 35%,var(--theme-decor-c5b7ad) 0 18%,transparent 60%),linear-gradient(125deg,var(--theme-decor-baa99c),var(--theme-decor-81776f) 55%,var(--theme-decor-d2c3b3))}
.ls-home-showcase__card::after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(180deg,transparent,var(--theme-decor-rgba-0-0-0--88));pointer-events:none}
.ls-home-showcase__title{position:absolute;inset:auto 16px 16px;z-index:1;color:var(--theme-contrast-text);font-weight:650;line-height:1.35;text-shadow:0 1px 2px var(--theme-decor-0007)}
.ls-home-showcase__card[href]:hover,.ls-home-showcase__card[href]:focus-visible{color:var(--theme-contrast-text)}
.ls-home-showcase__card[href]:hover .ls-home-showcase__image{transform:scale(1.035)}
.ls-home-showcase{background:var(--home-bg,var(--theme-alt-bg))}
/* Awards are only displayed for award records provided by the site owner. */
.ls-home-awards{background:var(--home-bg,var(--theme-alt-bg))}
.ls-home-award__card{height:135px;border:1px solid var(--livspace-border);border-radius:14px;box-shadow:0 3px 10px var(--theme-decor-33263814);background:var(--theme-card-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:17px 12px;text-align:center;color:var(--hx-heading);text-decoration:none}
.ls-home-award__card[href]:hover,.ls-home-award__card[href]:focus-visible{border-color:var(--hx-accent);color:var(--hx-heading)}
.ls-home-award__image{display:block;width:auto;height:auto;max-height:50px;max-width:95%;object-fit:contain}
.ls-home-award__symbol{display:flex;align-items:center;justify-content:center;color:var(--hx-accent);font-size:26px;line-height:1}
.ls-home-award__title{font-weight:450;line-height:1.35}
.ls-home-awards .swiper{padding-bottom:30px}
/* Heading left; press marks in a restrained two-column grid on the right. */
.ls-home-press{background:var(--home-bg,var(--theme-card-bg))}
.ls-home-press__layout{display:grid;grid-template-columns:1fr 1.15fr;gap:40px;align-items:center}
.ls-home-press .ls-home-extra__header{align-self:start;margin:4px 0 0}
.ls-home-press__logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ls-home-press__logo{display:flex;min-height:90px;align-items:center;justify-content:center;padding:15px 22px;border:1px solid var(--livspace-border);border-radius:9px;background:var(--theme-card-bg);text-align:center;color:var(--hx-heading);text-decoration:none}
.ls-home-press__logo[href]:hover,.ls-home-press__logo[href]:focus-visible{border-color:var(--hx-accent);color:var(--hx-heading)}
.ls-home-press__logo span{font-weight:700;line-height:1.15}
.ls-home-press__image{display:block;max-width:100%;max-height:55px;width:auto;height:auto;object-fit:contain}
/* Clickable native details are keyboard accessible without extra JS. */
.ls-home-faq{background:var(--home-bg,var(--theme-alt-bg))}
.ls-home-faq__items{display:grid;gap:14px}
.ls-home-faq__item{overflow:hidden;border:1px solid var(--livspace-border);border-radius:5px;background:var(--theme-card-bg);box-shadow:0 2px 5px var(--theme-decor-33263812)}
.ls-home-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:50px;padding:13px 16px;cursor:pointer;font-weight:500;line-height:1.35;color:var(--hx-heading);list-style:none}
.ls-home-faq__item summary::-webkit-details-marker{display:none}
.ls-home-faq__item summary::marker{content:""}
.ls-home-faq__item summary:hover{color:var(--hx-accent)}
.ls-home-faq__plus{position:relative;display:block;flex:0 0 14px;height:14px;color:var(--hx-heading)}
.ls-home-faq__plus::before,.ls-home-faq__plus::after{content:"";position:absolute;background:currentColor;left:0;top:6px;width:14px;height:2px}
.ls-home-faq__plus::after{transform:rotate(90deg);transition:transform .2s ease}
.ls-home-faq__item[open] .ls-home-faq__plus::after{transform:rotate(0)}
.ls-home-faq__item[open] summary{border-bottom:1px solid var(--livspace-border)}
.ls-home-faq__answer{padding:4px 17px 15px;color:var(--hx-text)}
.ls-home-faq__answer p{margin:8px 0 0;line-height:1.65}
@media(max-width:1023px){.ls-home-extra{padding:48px 0 54px}.ls-home-showcase__card{height:380px}.ls-home-extra .swiper-button-next{right:-12px}.ls-home-extra .swiper-button-prev{left:-12px}}
@media(max-width:767px){.ls-home-extra{padding:38px 0 44px}.ls-home-extra__header--split{align-items:flex-start;flex-direction:column;gap:16px}.ls-home-extra__cta{min-height:42px;min-width:0;padding:11px 20px}.ls-home-showcase__card{height:360px}.ls-home-extra .swiper-button-next,.ls-home-extra .swiper-button-prev{width:36px;height:36px;--swiper-navigation-size:13px}.ls-home-extra .swiper-button-next{right:2px}.ls-home-extra .swiper-button-prev{left:2px}.ls-home-press__layout{grid-template-columns:1fr;gap:18px}.ls-home-press__logos{gap:12px}.ls-home-press__logo{min-height:85px;padding:12px}}
@media(max-width:420px){.ls-home-press__logos{grid-template-columns:1fr 1fr}.ls-home-press__logo{padding:10px}.ls-home-faq__item summary{padding:13px 12px}}
@media(prefers-reduced-motion:reduce){.ls-home-showcase__image,.ls-home-faq__plus::after,.ls-home-extra__cta{transition:none}}

/* Awards reuse the existing Swiper initializer; press retains its CSS marquee. */
.ls-home-awards{background:var(--home-bg,var(--theme-alt-bg));padding:58px 0 66px}
.ls-home-awards .ls-home-awards__viewport{padding:3px 2px 36px;outline-offset:4px}
.ls-home-awards__track{align-items:stretch}
.ls-home-awards .ls-home-award__card{box-sizing:border-box;min-width:0;height:auto;min-height:168px;padding:18px 16px;justify-content:center;gap:14px}
.ls-home-award__media{display:flex;flex:0 0 64px;align-items:center;justify-content:center;width:100%;height:64px;min-width:0}
.ls-home-awards .ls-home-award__image{display:block;flex-shrink:1;width:auto;height:auto;max-width:100%;max-height:64px;object-fit:contain;object-position:center}
.ls-home-award__title{font-weight:450;font-size:.875em;line-height:1.4;min-height:2.8em;display:flex;align-items:center;justify-content:center}
.ls-home-awards .swiper-button-next{right:5px}
.ls-home-awards .swiper-button-prev{left:5px}
/* Keep native scrolling if JS is unavailable, without a temporary scrollbar/height jump. */
.ls-home-awards__viewport:not(.swiper-initialized){overflow-x:auto;scrollbar-width:none}
.ls-home-awards__viewport:not(.swiper-initialized)::-webkit-scrollbar{display:none}
.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-awards__track{gap:14px}
.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-award__card{flex:0 0 calc((100% - 2.1px)/1.15);width:calc((100% - 2.1px)/1.15)}
.ls-home-awards__viewport:not(.swiper-initialized) :is(.swiper-button-prev,.swiper-button-next,.swiper-pagination){display:none}
@media(min-width:640px){.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-awards__track{gap:18px}.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-award__card{flex-basis:calc((100% - 18px)/2);width:calc((100% - 18px)/2)}}
@media(min-width:1024px){.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-awards__track{gap:22px}.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-award__card{flex-basis:calc((100% - 44px)/3);width:calc((100% - 44px)/3)}}
@media(min-width:1200px){.ls-home-awards__viewport:not(.swiper-initialized) .ls-home-award__card{flex-basis:calc((100% - 66px)/4);width:calc((100% - 66px)/4)}}
.ls-home-press{background:var(--home-bg,var(--theme-card-bg));padding:56px 0 63px}
.ls-home-press .ls-home-extra__header{margin:0 0 19px}
.ls-home-press__viewport{overflow:hidden;width:100%;outline-offset:-3px}
.ls-home-press__track{display:flex;width:max-content;animation:ls-reference-marquee 36s linear infinite}
.ls-home-press__set{display:flex;gap:20px;padding-right:20px}
.ls-home-press__logo{box-sizing:border-box;flex:none;display:flex;width:302px;height:80px;min-height:80px;align-items:center;justify-content:center;padding:9px 16px;border:1px solid var(--livspace-border);border-radius:5px;background:var(--theme-card-bg);color:var(--hx-heading,var(--theme-decor-2d2530));text-decoration:none;overflow:hidden}
.ls-home-press .ls-home-press__image{display:block;flex-shrink:1;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.ls-home-press__logo span{font-size:20px;font-weight:650;line-height:1.1;text-align:center}
@keyframes ls-reference-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ls-home-press__viewport:hover .ls-home-press__track,.ls-home-press__viewport:focus-within .ls-home-press__track{animation-play-state:paused}
@media(max-width:767px){.ls-home-awards{padding:37px 0 45px}.ls-home-press{padding:39px 0 43px}.ls-home-press__logo{width:215px;height:74px;min-height:74px}.ls-home-press__logo span{font-size:17px}}
@media(prefers-reduced-motion:reduce){.ls-home-press__viewport{overflow-x:auto}.ls-home-press__track{animation:none}}
