/* Louvano brand layer over the two verified native component families. */
:root{
 --color-action:#293832;--color-surface-action-hover:#405248;--color-surface-primary:#f5f5f2;
 --color-heading:#202824;--color-body:#303934;--color-muted:#68716b;--color-caption:#5d6861;
 --color-border-task:#dce1da;--color-border-primary:#dce1da;--color-link-accent:#293832;
 --lv-ink:#26342d;--lv-muted:#5d6861;--color-surface-page:#fff;
}
html{font-size:16px;scroll-behavior:smooth;scroll-padding-top:88px}
body#louvano-collection-fusion{margin:0;background:#fff;color:var(--color-heading);font-size:18px;line-height:1.65;letter-spacing:0;overflow-x:clip}
body#louvano-collection-fusion h1,body#louvano-collection-fusion h2,body#louvano-collection-fusion h3{font-family:'Maison Neue Demi',Arial,sans-serif!important;font-weight:500;letter-spacing:-.025em}
#MainContent{padding:0;max-width:none;overflow:visible}
#MainContent .grid{display:grid;margin:0;list-style:none;flex-wrap:initial}
#MainContent .page-width{max-width:1440px;margin-inline:auto}
#MainContent .px-page,#MainContent .p-page{padding-inline:clamp(24px,4.5vw,72px)}
#MainContent h2{font-size:clamp(30px,3vw,43px);line-height:1.18;max-width:790px;letter-spacing:-.035em}
#MainContent p{font-size:18px;line-height:1.6;margin-top:0}
#MainContent .text-body-sm{font-size:15px;line-height:1.5}
#MainContent .text-body-md{font-size:18px;line-height:1.6}
#MainContent .btn{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;padding:14px 23px;min-height:50px;max-height:none;width:auto;font-size:16px;line-height:1.35;font-weight:400;letter-spacing:0;text-transform:none;text-decoration:none;transition:background .2s ease,color .2s ease}
#MainContent .btn-primary{background:var(--lv-ink);color:white;border:1px solid var(--lv-ink)}
#MainContent .btn-primary:hover{background:#405248}
#MainContent .btn-secondary{background:#eef0eb;color:var(--lv-ink);border:1px solid #d9dfd5}
#MainContent button:focus-visible,#MainContent a:focus-visible,#MainContent select:focus-visible{outline:2px solid #577468;outline-offset:5px}
#MainContent [hidden]{display:none!important}
/* Original PERGOLUX hero composition, with the Louvano scene and type scale. */
#lv-collection-hero>is-land>div{height:510px;min-height:510px}
#lv-collection-hero h1{font-size:clamp(38px,4.2vw,59px);line-height:1.1;color:white;max-width:860px;margin:0 auto 15px}
#lv-collection-hero p{font-size:21px;line-height:1.5;max-width:650px!important;margin:0 auto;color:#fff}
#lv-collection-hero img{object-position:center 57%;width:100%;height:100%;object-fit:cover}
#lv-collection-hero [class*="--wrapper"]:after{opacity:.38}
#lv-collection-hero .btn-primary{background:#fff;color:#25342c;border-color:#fff}
#lv-collection-hero .btn-secondary{background:#ffffff10;color:#fff;border-color:#ffffffa0;backdrop-filter:blur(5px)}
#lv-collection-hero [data-visualization-label]{position:absolute;bottom:18px;right:24px;font-size:12px;color:#fff;opacity:.85}
/* Retained FlexPatio cards: native card order, finish controls and specification strip. */
#lv-size-collection [id="latest-models"]{padding-block:92px 86px;gap:44px}
#lv-size-collection h2{margin:0 0 14px}
#lv-size-collection .tablet\:text-h5{font-weight:400;font-size:18px;max-width:710px}
#lv-size-cards{overflow:visible;padding:0 clamp(24px,4.5vw,72px)}
#lv-size-cards .ly-models-compare-content-body-inner{padding:0;max-width:1296px;margin:auto;width:auto}
#lv-size-cards .ly-models-compare-card-list{width:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;justify-content:initial;padding:0}
#lv-size-cards .ly-models-compare-card{width:auto;min-width:0;display:flex;flex-direction:column;background:#f6f6f3;border-radius:8px;overflow:hidden}
#lv-size-cards .ly-models-compare-card-cover{width:100%;height:auto;aspect-ratio:4/3;background:#f0f0ed}
#lv-size-cards .ly-models-compare-card-cover img{width:100%;height:100%;object-fit:contain}
#lv-size-cards .ly-models-compare-card-cover:after{font-size:10px;left:14px;top:14px;background:#ffffffad}
#lv-size-cards .ly-models-compare-card-content{padding:25px 22px 28px;display:flex;flex:1;flex-direction:column;gap:26px;background:transparent}
#lv-size-cards .ly-models-compare-card-content-inner{display:flex;flex-direction:column;align-items:center;gap:0;padding:0}
#lv-size-cards .ly-models-compare-card-tag{font-size:15px;line-height:1.5;margin-bottom:10px}
#lv-size-cards h3.ly-models-compare-card-title{font-size:clamp(18px,1.75vw,25px);line-height:1.3;margin:0;text-align:center}
#lv-size-cards [data-imperial-note]{font-size:14px;color:var(--lv-muted);margin:6px 0 20px}
#lv-size-cards .ly-models-compare-card-colors{display:flex;justify-content:center;gap:14px;margin:0 0 25px}
#lv-size-cards .ly-models-compare-card-color{height:27px;width:27px;min-width:27px;min-height:27px}
#lv-size-cards .ly-models-compare-card-points{width:100%;padding:12px 6px;display:flex;justify-content:space-evenly;border-radius:5px;background:#e9ede6!important}
#lv-size-cards .ly-models-compare-card-point{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
#lv-size-cards .ly-models-compare-card-point svg{width:23px;height:23px}
#lv-size-cards .ly-models-compare-card-point-title{font-size:13px!important;line-height:1.5!important}
#lv-size-cards .ly-models-compare-card-price{font-size:21px;line-height:1.3;margin:25px 0 8px}
#lv-size-cards .ly-models-compare-card-description{font-size:14px!important;line-height:1.5!important;margin:0}
#lv-size-cards .ly-models-compare-card-view-link{width:100%;min-height:49px;margin-top:auto;border-radius:5px;font-size:15px;padding:13px;text-align:center;line-height:1.5;text-decoration:none;color:#fff}
/* PERGOLUX image-with-text pattern used for custom sizing and planning. */
#lv-custom-entry>[on\:visible]>div,#lv-custom-entry>is-land>div{background:#eef0eb;padding-block:64px}
#lv-custom-entry h2,#lv-custom-entry h3,#lv-custom-entry p{color:var(--lv-ink)}
#lv-custom-entry h2{max-width:490px;margin:0 0 14px}
#lv-custom-entry h3,#lv-planning h3{font-size:22px;line-height:1.4;letter-spacing:0;margin:0 0 8px}
#lv-custom-entry .aspect-card-image-with-text,#lv-planning .aspect-card-image-with-text{aspect-ratio:4/3;max-width:590px;flex:1;border-radius:8px}
#lv-custom-entry .aspect-card-image-with-text img,#lv-planning .aspect-card-image-with-text img{width:100%;height:100%;object-fit:cover}
#lv-custom-entry .aspect-card-image-with-text img{object-fit:contain}
#lv-custom-entry .aspect-card-image-with-text+div,#lv-planning .aspect-card-image-with-text+div{flex:1;max-width:560px;gap:22px}
#lv-custom-entry p,#lv-planning p{max-width:510px}
#lv-custom-entry .rounded-xxl,#lv-planning .rounded-xxl{border-radius:8px}
/* Native compare grids retained, made scrollable rather than dropping a size on mobile. */
#lv-footprint-compare{padding:74px 0 82px}
#compare{padding:0 24px 38px;gap:12px}
#compare p{max-width:650px;margin:0}
[data-unit-controls]{margin-top:8px;gap:0;padding:4px;background:#f1f3ee;border-radius:7px}
#MainContent [data-unit-controls] .btn{background:transparent;border:0;min-height:38px;font-size:14px;padding:8px 18px;border-radius:4px}
#MainContent [data-unit-controls] [aria-pressed=true]{background:#fff;box-shadow:0 1px 3px #19231918}
#MainContent [data-compare-rail]{overflow-x:auto;max-width:1220px;padding-inline:40px;scrollbar-width:thin}
[data-compare-header],[data-compare-group]>.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;min-width:650px}
[data-compare-header]{padding:0 0 36px;background:#fff}
[data-compare-header] img{height:165px;width:100%;object-fit:contain;border-radius:5px;margin:12px 0 0}
[data-compare-header] select{border:1px solid #cbd3c9;border-radius:5px;background:#fff;min-height:48px;padding:9px 12px;width:100%;font-size:17px;color:var(--lv-ink);cursor:pointer}
[data-compare-header] label{align-self:flex-start;color:var(--lv-muted);font-size:13px}
#MainContent [data-compare-header] .btn{font-size:14px;min-height:42px;padding:9px 18px}
[data-compare-group]{gap:24px;min-width:650px;padding-bottom:32px}
[data-compare-group]>div:first-child{border-top:1px solid #dce1da;padding:19px 0 0}
#MainContent [data-compare-group] h3{font-size:21px;line-height:1.35;margin:0}
#MainContent [data-compare-group] [data-value]{font-size:18px;margin:0 0 5px}
#MainContent [data-compare-group] [data-note]{font-size:15px;max-width:230px;margin:auto;color:var(--lv-muted)}
/* PERGOLUX parts grid, supplied with six native Blender detail renders. */
#lv-pergola-details>div{background:#f5f5f2}
#lv-pergola-details .page-width{padding-block:84px;gap:40px}
#lv-pergola-details h2{margin:0 0 16px}
#lv-pergola-details .tablet\:text-h5{font-size:18px;font-weight:400;max-width:700px}
#lv-pergola-details .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#lv-pergola-details .grid>div>div{max-width:none;padding:0 0 25px;overflow:hidden;border-radius:8px;gap:12px}
#lv-pergola-details .grid>div>div>div.flex{max-width:none;width:100%}
#lv-pergola-details [data-detail-image]{max-width:none!important;max-height:none!important;width:100%;height:auto;aspect-ratio:4/3;border-radius:0}
#lv-pergola-details [data-detail-image]{position:relative;flex:none}
#lv-pergola-details [data-detail-image] picture{position:absolute;inset:0}
#lv-pergola-details [data-detail-image] picture,#lv-pergola-details [data-detail-image] img{height:100%;width:100%;object-fit:cover}
#lv-pergola-details .grid .h6{margin:0;padding:0 24px;width:100%}
#lv-pergola-details .grid .h6 p{display:block;margin:0;width:auto}
#lv-pergola-details h3{font-size:22px;line-height:1.3;margin:5px 24px 0}
#lv-pergola-details .grid p{font-size:16px;line-height:1.6;margin:0 24px;color:var(--lv-muted)}
#lv-pergola-details .grid [class*="text-body"]{padding:0}
#lv-planning>is-land>div{background:#293832;padding-block:72px}
#lv-planning h2,#lv-planning h3,#lv-planning p{color:white}
#lv-planning h2{margin:0 0 15px}
#MainContent #lv-planning .btn-primary{background:#fff;color:#26342d;border-color:#fff}
#MainContent #lv-planning .btn-secondary{background:transparent;color:white;border-color:#85958b}
/* Original accordion row DOM, semantic button and keyboard handling added. */
#lv-collection-faq>div{background:#fff}
#lv-collection-faq .page-width{padding-block:88px 96px;max-width:1150px;gap:32px}
#lv-collection-faq h2{margin:0 0 12px}
#lv-collection-faq .tablet\:text-h5{font-size:16px;font-weight:400}
#lv-collection-faq .py-lg{padding-block:23px;border-bottom:1px solid #dce1da}
#lv-collection-faq [data-faq-toggle]{border:0;background:none;display:flex;text-align:left;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:0;min-height:32px;font-size:19px;line-height:1.5;color:var(--lv-ink)}
#lv-collection-faq [data-faq-toggle] span{font-size:27px;font-weight:300;flex-shrink:0}
#lv-collection-faq [id^=lv-answer] p{font-size:17px;line-height:1.7;color:var(--lv-muted);max-width:840px;margin:16px 0 0}
/* Preserve approved global shell while neutralizing rem changes from the source CSS. */
#louvano-collection-fusion .ly-header-section-wrapper{min-height:78px}
#louvano-collection-fusion .ly-newsletter-section-wrapper{background:#e9ede6;color:#26342d}
#louvano-collection-fusion .ly-newsletter-title{color:#26342d;font-size:40px;line-height:1.2}
#louvano-collection-fusion .ly-newsletter-subtitle{color:#536358;font-size:18px;line-height:1.6}
@media(max-width:1023px){
 #lv-size-cards .ly-models-compare-card-list{gap:16px}
 #lv-size-cards .ly-models-compare-card-content{padding:22px 14px}
 #lv-custom-entry .desktop\:flex-row-reverse,#lv-planning .desktop\:flex-row-reverse{gap:35px}
 #lv-pergola-details .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 html{scroll-padding-top:20px}
 body#louvano-collection-fusion{font-size:16px}
 #MainContent p{font-size:16px}
 #MainContent .px-page,#MainContent .p-page{padding-inline:22px}
 #MainContent h2{font-size:32px;line-height:1.2;max-width:none}
 #lv-collection-hero>is-land>div{height:490px;min-height:490px}
 #lv-collection-hero h1{font-size:39px;max-width:355px;line-height:1.12;margin-bottom:14px}
 #lv-collection-hero p{font-size:17px;max-width:335px!important;line-height:1.55}
 #lv-collection-hero .p-md{padding:28px 22px;gap:23px}
 #lv-collection-hero .btn{width:100%;max-width:285px}
 #lv-collection-hero img{object-position:52% center}
 #lv-collection-hero [data-visualization-label]{font-size:10px;right:16px;bottom:12px}
 #lv-size-collection #latest-models{padding-block:57px;gap:29px}
 #lv-size-collection .tablet\:text-h5{font-size:16px}
 #lv-size-cards{padding-inline:22px;overflow-x:auto;scroll-snap-type:x mandatory}
 #lv-size-cards .ly-models-compare-card-list{display:flex;width:max-content;gap:16px;padding-right:22px}
 #lv-size-cards .ly-models-compare-card{width:calc(100vw - 64px);max-width:370px;min-width:270px;scroll-snap-align:center}
 #lv-size-cards h3.ly-models-compare-card-title{font-size:22px!important}
 #lv-size-cards .ly-models-compare-card-content{padding:23px 22px}
 #lv-size-cards .ly-models-compare-card-tag{font-size:15px!important}
 #lv-size-cards .ly-models-compare-card-price{font-size:20px!important}
 #lv-custom-entry>is-land>div,#lv-planning>is-land>div{padding-block:48px}
 #lv-custom-entry .aspect-card-image-with-text,#lv-planning .aspect-card-image-with-text{flex:auto;aspect-ratio:4/3;width:100%;max-width:none}
 #lv-custom-entry .aspect-card-image-with-text+div,#lv-planning .aspect-card-image-with-text+div{flex:auto;gap:18px}
 #lv-custom-entry h3,#lv-planning h3{font-size:19px}
 #lv-footprint-compare{padding:54px 0}
 #MainContent [data-compare-rail]{padding-inline:22px}
 [data-compare-header],[data-compare-group]>.grid{gap:18px;min-width:630px}
 #MainContent [data-compare-group] h3{font-size:19px}
 #lv-pergola-details .page-width{padding-block:55px;gap:30px}
 #lv-pergola-details .grid{grid-template-columns:1fr;gap:24px}
 #lv-pergola-details .grid>div>div{width:100%;max-width:430px}
 #lv-pergola-details h3{font-size:23px}
 #lv-collection-faq .page-width{padding-block:56px}
 #lv-collection-faq [data-faq-toggle]{font-size:17px}
 #lv-collection-faq [id^=lv-answer] p{font-size:16px}
 #louvano-collection-fusion .ly-newsletter-title{font-size:30px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
