:root { --soliso-yellow: #FFC629; --soliso-yellow-deep: #8A6200; --soliso-yellow-wash: #FFF9E8; }
.soliso-screens-page { color: #292b23; background: #fff; }
.soliso-screens-page main { overflow: hidden; }
.soliso-kicker { display: inline-flex; margin: 0 0 .9rem; color: var(--soliso-yellow-deep); font: 700 .72rem/1.15 "Inter", sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.soliso-screens-hero { padding: calc(76px + 4rem) 0 5rem; background: linear-gradient(118deg, var(--soliso-yellow-wash) 0%, #fff 53%, #fff5d2 100%); }
.soliso-screens-hero-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(25rem, .9fr); align-items: center; gap: clamp(2.5rem, 7vw, 7rem); }
.soliso-screens-hero-copy { max-width: 43rem; }
.soliso-screens-hero-copy h1 { max-width: 42rem; margin: 0; color: #292b23; font: 600 clamp(2.7rem, 5.15vw, 5.55rem)/.96 "DM Sans", sans-serif; letter-spacing: -.062em; }
.soliso-screens-hero-copy > p { max-width: 38rem; margin: 1.45rem 0 0; color: #555752; font: 400 clamp(1rem, 1.65vw, 1.17rem)/1.68 "Inter", sans-serif; }
.soliso-screens-hero-actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; margin-top: 2rem; }
.soliso-text-action { display: inline-flex; align-items: center; gap: .52rem; color: var(--soliso-yellow-deep); font: 700 .88rem/1.2 "Inter", sans-serif; text-decoration: none; }
.soliso-text-action:hover, .soliso-text-action:focus-visible { color: #705000; text-decoration: underline; text-underline-offset: .2rem; }
.soliso-hero-list { display: flex; flex-wrap: wrap; gap: .55rem 1rem; margin: 2.1rem 0 0; padding: 0; color: #5e5e54; font: 500 .83rem/1.45 "Inter", sans-serif; list-style: none; }
.soliso-hero-list li { display: inline-flex; gap: .45rem; align-items: center; }
.soliso-hero-list li::before { width: .43rem; height: .43rem; border-radius: 50%; background: var(--soliso-yellow); content: ""; }
.soliso-screens-hero-panel { overflow: hidden; background: #fff; border: 1px solid rgb(41 43 35 / 10%); border-radius: 6px; box-shadow: 0 24px 60px rgb(47 35 21 / 14%); }
.soliso-screens-hero-visual { position: relative; height: 14rem; margin: 0; overflow: hidden; background: #d9d2c0; }
.soliso-screens-hero-visual::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgb(33 33 28 / 40%), transparent 66%); content: ""; }
.soliso-screens-hero-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.soliso-screens-hero-visual figcaption { position: absolute; z-index: 1; right: 1.25rem; bottom: 1.05rem; color: #fff; font: 600 .75rem/1.3 "Inter", sans-serif; }
.soliso-screen-offer-form { display: grid; gap: 1rem; padding: clamp(1.5rem, 3vw, 2.25rem); }
.soliso-form-heading > span { display: block; margin-bottom: .6rem; color: var(--soliso-yellow-deep); font: 800 .7rem/1 "Inter", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.soliso-form-heading h2 { margin: 0; font: 600 clamp(1.55rem, 2.2vw, 2.05rem)/1.02 "DM Sans", sans-serif; letter-spacing: -.045em; }
.soliso-form-heading p { margin: .75rem 0 0; color: #636159; font: 400 .88rem/1.55 "Inter", sans-serif; }
.soliso-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.soliso-screen-offer-form label { display: grid; gap: .42rem; color: #3d3e38; font: 700 .76rem/1.2 "Inter", sans-serif; }
.soliso-screen-offer-form label span em { color: #77786f; font-style: normal; font-weight: 500; }
.soliso-screen-offer-form input, .soliso-screen-offer-form select, .soliso-screen-offer-form textarea { box-sizing: border-box; width: 100%; min-height: 2.95rem; padding: .7rem .8rem; color: #292b23; background: #fff; border: 1px solid #d8d6cc; border-radius: 6px; font: 400 .93rem/1.25 "Inter", sans-serif; }
.soliso-screen-offer-form textarea { min-height: 5.7rem; resize: vertical; }
.soliso-screen-offer-form input:focus, .soliso-screen-offer-form select:focus, .soliso-screen-offer-form textarea:focus { border-color: var(--soliso-yellow-deep); outline: 3px solid rgb(255 198 41 / 32%); outline-offset: 1px; }
.soliso-form-full { grid-column: 1 / -1; }
.soliso-form-submit { justify-content: center; width: 100%; margin-top: .25rem; }
.soliso-form-note { margin: 0; color: #6a6b63; font: 400 .74rem/1.48 "Inter", sans-serif; }
.soliso-form-note.is-error { color: #a4311d; font-weight: 700; }
.soliso-screens-intro { padding: 5.5rem 0; background: #fff; }
.soliso-screens-intro-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(18rem, .75fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: start; }
.soliso-screens-intro h2, .soliso-section-heading h2, .soliso-preparation-grid h2, .soliso-screens-cta h2 { margin: 0; color: #292b23; font: 600 clamp(2rem, 3.45vw, 3.55rem)/1.02 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-screens-intro-grid > div:last-child { padding-top: 1.85rem; }
.soliso-screens-intro-grid > div:last-child p { margin: 0; color: #5f6058; font: 400 1.02rem/1.73 "Inter", sans-serif; }
.soliso-screens-intro-grid > div:last-child .soliso-text-action { margin-top: 1.45rem; }
.soliso-screens-features { padding: 5.5rem 0; background: var(--soliso-yellow-wash); }
.soliso-section-heading { max-width: 46rem; margin-bottom: 3rem; }
.soliso-section-heading p { max-width: 38rem; margin: 1rem 0 0; color: #65665e; font: 400 1rem/1.65 "Inter", sans-serif; }
.soliso-section-heading--center { margin-inline: auto; text-align: center; }
.soliso-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.soliso-feature-grid article { min-height: 15.5rem; padding: 1.55rem; background: #fff; border: 1px solid rgb(41 43 35 / 9%); border-radius: 6px; box-shadow: 0 12px 28px rgb(47 35 21 / 5%); }
.soliso-feature-number { display: grid; width: 2.75rem; height: 2.75rem; margin-bottom: 2.35rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border-radius: 50%; font: 800 .74rem/1 "Inter", sans-serif; }
.soliso-feature-grid h3 { margin: 0; color: #292b23; font: 600 1.35rem/1.12 "DM Sans", sans-serif; letter-spacing: -.035em; }
.soliso-feature-grid p { margin: .75rem 0 0; color: #66675f; font: 400 .91rem/1.62 "Inter", sans-serif; }
.soliso-screens-deep-dive, .soliso-screens-design { padding: 6rem 0; background: #fff; }
.soliso-screens-design { background: var(--soliso-yellow-wash); }
.soliso-content-grid { display: grid; grid-template-columns: minmax(20rem, .88fr) minmax(0, 1fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: center; }
.soliso-content-grid--reverse { grid-template-columns: minmax(0, 1fr) minmax(20rem, .88fr); }
.soliso-content-grid figure { min-height: 28rem; margin: 0; overflow: hidden; background: #e9e4d9; border-radius: 6px; }
.soliso-content-grid figure img { display: block; width: 100%; height: 100%; min-height: 28rem; object-fit: cover; }
.soliso-content-copy { max-width: 39rem; }
.soliso-content-copy h2 { margin: 0; color: #292b23; font: 600 clamp(2rem, 3.25vw, 3.3rem)/1.03 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-content-copy > p { margin: 1rem 0 0; color: #60615a; font: 400 1rem/1.7 "Inter", sans-serif; }
.soliso-content-list { display: grid; gap: .9rem; margin: 1.6rem 0 0; padding: 0; list-style: none; }
.soliso-content-list li { display: grid; grid-template-columns: 1.7rem 1fr; column-gap: .8rem; align-items: start; color: #62635b; font: 400 .92rem/1.5 "Inter", sans-serif; }
.soliso-content-list li::before { display: grid; grid-column: 1; grid-row: 1 / span 2; width: 1.55rem; height: 1.55rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border-radius: 50%; font: 800 .7rem/1 "Inter", sans-serif; content: "✓"; }
.soliso-content-list li b { display: block; grid-column: 2; color: #292b23; font: 700 .89rem/1.3 "Inter", sans-serif; }
.soliso-content-list li span { display: block; grid-column: 2; }
.soliso-screens-automation { padding: 5.65rem 0; background: #292b23; }
.soliso-automation-shell { max-width: 53rem; }
.soliso-screens-automation .soliso-kicker { color: var(--soliso-yellow); }
.soliso-automation-shell h2 { max-width: 42rem; margin: 0; color: #fff; font: 600 clamp(2rem, 3.25vw, 3.3rem)/1.03 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-automation-shell p { max-width: 47rem; margin: 1rem 0 0; color: rgb(255 255 255 / 78%); font: 400 1rem/1.7 "Inter", sans-serif; }
.soliso-screens-automation .soliso-text-action { margin-top: 1.7rem; color: var(--soliso-yellow); }
.soliso-screens-preparation { padding: 6rem 0; background: #fff; }
.soliso-preparation-grid { display: grid; grid-template-columns: minmax(20rem, .9fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.soliso-preparation-grid figure { min-height: 28rem; margin: 0; overflow: hidden; background: #e9e4d9; border-radius: 6px; }
.soliso-preparation-grid figure img { display: block; width: 100%; height: 100%; min-height: 28rem; object-fit: cover; }
.soliso-preparation-grid h2 { max-width: 37rem; }
.soliso-preparation-grid ol { display: grid; gap: 1.1rem; margin: 1.65rem 0 2rem; padding: 0; list-style: none; counter-reset: soliso-preparation; }
.soliso-preparation-grid li { display: grid; grid-template-columns: 2rem 1fr; column-gap: .8rem; align-items: start; color: #62635b; font: 400 .94rem/1.55 "Inter", sans-serif; }
.soliso-preparation-grid li::before { display: grid; grid-column: 1; grid-row: 1 / span 2; width: 1.7rem; height: 1.7rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border-radius: 50%; font: 800 .7rem/1 "Inter", sans-serif; content: counter(soliso-preparation, decimal-leading-zero); counter-increment: soliso-preparation; }
.soliso-preparation-grid li b { display: block; grid-column: 2; margin-bottom: .15rem; color: #292b23; font: 700 .92rem/1.3 "Inter", sans-serif; }
.soliso-preparation-grid li span { display: block; grid-column: 2; }
.soliso-screens-faq { padding: 5.5rem 0; background: var(--soliso-yellow-wash); }
.soliso-faq-list { max-width: 54rem; margin: 0 auto; }
.soliso-faq-list details { border-bottom: 1px solid #dedacd; }
.soliso-faq-list summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 1.4rem 0; color: #292b23; cursor: pointer; font: 600 1.08rem/1.35 "DM Sans", sans-serif; list-style: none; }
.soliso-faq-list summary::-webkit-details-marker { display: none; }
.soliso-faq-list summary::after { flex: none; color: var(--soliso-yellow-deep); font: 400 1.6rem/1 "Inter", sans-serif; content: "+"; }
.soliso-faq-list details[open] summary::after { content: "−"; }
.soliso-faq-list p { max-width: 46rem; margin: -.35rem 0 1.45rem; color: #61625a; font: 400 .98rem/1.68 "Inter", sans-serif; }
.soliso-screens-cta { position: relative; isolation: isolate; overflow: hidden; padding: 5.7rem 0; color: #fff; background: #292b23; text-align: center; }
.soliso-screens-cta-image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; }
.soliso-screens-cta-overlay { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(28 30 24 / 91%), rgb(28 30 24 / 79%)), linear-gradient(0deg, rgb(28 30 24 / 45%), rgb(28 30 24 / 25%)); }
.soliso-screens-cta .liso-rebuilt-shell { position: relative; display: grid; justify-items: center; }
.soliso-screens-cta .soliso-kicker { color: var(--soliso-yellow); }
.soliso-screens-cta h2 { max-width: 48rem; color: #fff; }
.soliso-screens-cta p { max-width: 39rem; margin: 1.2rem auto 0; color: rgb(255 255 255 / 80%); font: 400 1.03rem/1.65 "Inter", sans-serif; }
.soliso-screens-cta .liso-rebuilt-action { margin-top: 2rem; color: #fff; background: transparent; border-color: rgb(255 255 255 / 78%); }
.soliso-screens-cta .liso-rebuilt-action:hover, .soliso-screens-cta .liso-rebuilt-action:focus-visible { color: #292b23; background: #fff; border-color: #fff; }
@media (max-width: 980px) { .soliso-screens-hero-grid, .soliso-screens-intro-grid, .soliso-content-grid, .soliso-content-grid--reverse, .soliso-preparation-grid { grid-template-columns: 1fr; } .soliso-screens-hero { padding-top: calc(76px + 3rem); } .soliso-screens-hero-copy { max-width: 46rem; } .soliso-screens-hero-panel { max-width: 43rem; } .soliso-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .soliso-screens-intro-grid > div:last-child { padding-top: 0; } .soliso-content-grid figure, .soliso-content-grid figure img, .soliso-preparation-grid figure, .soliso-preparation-grid figure img { min-height: 22rem; } .soliso-content-grid--reverse > div { order: 2; } .soliso-content-grid--reverse > figure { order: 1; } }
@media (max-width: 640px) { .soliso-screens-hero { padding: calc(76px + 2.45rem) 0 3.75rem; } .soliso-screens-hero-copy h1 { font-size: clamp(2.55rem, 13vw, 4.1rem); } .soliso-screens-hero-copy > p { font-size: 1rem; } .soliso-screens-hero-actions { display: grid; align-items: stretch; } .soliso-screens-hero-actions .liso-rebuilt-action { justify-content: center; } .soliso-text-action { justify-content: center; min-height: 2.8rem; } .soliso-hero-list { display: grid; gap: .45rem; } .soliso-screens-hero-visual { height: 11rem; } .soliso-form-grid, .soliso-feature-grid { grid-template-columns: 1fr; } .soliso-screen-offer-form { padding: 1.25rem; } .soliso-screens-intro, .soliso-screens-features, .soliso-screens-deep-dive, .soliso-screens-design, .soliso-screens-preparation, .soliso-screens-faq, .soliso-screens-automation { padding: 4.25rem 0; } .soliso-feature-grid article { min-height: 0; } .soliso-feature-number { margin-bottom: 1.4rem; } .soliso-content-grid figure, .soliso-content-grid figure img, .soliso-preparation-grid figure, .soliso-preparation-grid figure img { min-height: 18rem; } .soliso-screens-cta { padding: 4.5rem 0; } }



/* Liso product-page convergence: visual hero, compact editorial rhythm and Soliso group mark. */
.soliso-screens-hero { position: relative; display: grid; min-height: 32rem; padding: calc(76px + 3.25rem) 0 5.5rem; overflow: hidden; color: #fff; background: #292b23; isolation: isolate; }
.soliso-screens-hero-image, .soliso-screens-hero-overlay { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; }
.soliso-screens-hero-image { object-fit: cover; object-position: center; }
.soliso-screens-hero-overlay { z-index: -1; background: linear-gradient(90deg, rgb(25 27 22 / 88%) 0%, rgb(25 27 22 / 70%) 45%, rgb(25 27 22 / 24%) 100%); }
.soliso-screens-hero-lines { position: absolute; z-index: 0; inset: 0; pointer-events: none; background: repeating-linear-gradient(90deg, rgb(255 198 41 / 8%) 0 1px, transparent 1px 3.5rem); }
.soliso-screens-hero-shell { position: relative; z-index: 1; display: grid; align-items: center; }
.soliso-screens-hero-copy { max-width: 43rem; }
.soliso-screens-hero .soliso-kicker { color: var(--soliso-yellow); }
.soliso-screens-hero-copy h1 { max-width: 43rem; color: #fff; font: 700 clamp(2.5rem, 4.72vw, 4.25rem)/1.04 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-screens-hero-copy > p { max-width: 39rem; color: rgb(255 255 255 / 85%); }
.soliso-screens-hero .liso-rebuilt-action--secondary { color: #fff; background: transparent; border-color: rgb(255 255 255 / 72%); }
.soliso-screens-hero .liso-rebuilt-action--secondary:hover, .soliso-screens-hero .liso-rebuilt-action--secondary:focus-visible { color: #292b23; background: #fff; border-color: #fff; }
.soliso-screens-hero-scroll { position: absolute; z-index: 1; right: clamp(1.25rem, 4vw, 4rem); bottom: 1.5rem; display: flex; gap: .65rem; align-items: center; color: rgb(255 255 255 / 76%); font: 600 .68rem/1 "Inter", sans-serif; letter-spacing: .09em; text-decoration: none; text-transform: uppercase; }
.soliso-screens-hero-scroll i { display: block; width: 1.55rem; height: 1px; background: currentColor; }
.soliso-screens-execution { padding: 5.75rem 0; background: var(--soliso-yellow-wash); }
.soliso-execution-grid { display: grid; grid-template-columns: minmax(20rem, .9fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.soliso-execution-grid figure { min-height: 27rem; margin: 0; overflow: hidden; background: #e9e4d9; border-radius: 6px; }
.soliso-execution-grid figure img { display: block; width: 100%; min-height: 27rem; height: 100%; object-fit: cover; }
.soliso-execution-copy { max-width: 40rem; }
.soliso-execution-copy h2 { margin: 0; color: #292b23; font: 600 clamp(2rem, 3.25vw, 3.3rem)/1.03 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-execution-copy > p { margin: 1rem 0 0; color: #60615a; font: 400 1rem/1.7 "Inter", sans-serif; }
@media (max-width: 980px) { .soliso-screens-hero { min-height: 29rem; padding-top: calc(76px + 3rem); }.soliso-execution-grid { grid-template-columns: 1fr; }.soliso-execution-grid figure, .soliso-execution-grid figure img { min-height: 22rem; } }
@media (max-width: 640px) { .soliso-screens-hero { min-height: 27rem; padding: calc(64px + 3rem) 0 4.25rem; }.soliso-screens-hero-copy h1 { font-size: 2.5rem; line-height: 1.04; }.soliso-screens-hero-actions { display: grid; align-items: stretch; }.soliso-screens-hero-actions .liso-rebuilt-action { justify-content: center; }.soliso-screens-hero-scroll { display: none; }.soliso-screens-execution { padding: 4.25rem 0; }.soliso-execution-grid figure, .soliso-execution-grid figure img { min-height: 18rem; } }


/* Soliso Screens: customer comfort layer within the Liso product-page system. */
.soliso-screens-benefits { padding: 5.5rem 0; background: var(--soliso-yellow-wash); }
.soliso-screens-benefits-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.soliso-screens-benefits-grid article { min-height: 18rem; }
.soliso-screens-benefits-grid .soliso-feature-number { margin-bottom: 2rem; }
@media (max-width: 980px) { .soliso-screens-benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .soliso-screens-benefits { padding: 4.25rem 0; }.soliso-screens-benefits-grid { grid-template-columns: 1fr; }.soliso-screens-benefits-grid article { min-height: 0; } }


/* Soliso visual option card base styles. Product and material images are managed separately. */
.soliso-visual-options { padding: 5.75rem 0; background: #fff; }
.soliso-visual-options--wash { background: var(--soliso-yellow-wash); }
.soliso-visual-options .soliso-section-heading { margin-bottom: 2.75rem; }
.soliso-option-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.soliso-option-card { display: grid; min-height: 100%; overflow: hidden; background: #fff; border: 1px solid rgb(41 43 35 / 10%); border-radius: 6px; box-shadow: 0 12px 28px rgb(47 35 21 / 5%); }
.soliso-option-visual { position: relative; display: grid; min-height: 13rem; overflow: hidden; place-items: center; background: linear-gradient(135deg, #f6efdc, #dfd6be); }
.soliso-option-visual::before, .soliso-option-visual::after { position: absolute; content: ""; }
.soliso-option-visual--screen { background: linear-gradient(135deg, #e8e7df, #b7b8af); }
.soliso-option-visual--screen::before { width: 72%; height: 66%; border: .8rem solid #41423d; border-radius: .15rem; background: repeating-linear-gradient(90deg, rgb(35 36 32 / 70%) 0 3px, rgb(246 246 240 / 28%) 3px 8px); box-shadow: inset .7rem 0 0 rgb(255 198 41 / 80%), inset -.7rem 0 0 rgb(255 198 41 / 80%); }
.soliso-option-visual--screen::after { width: 61%; height: 1px; background: rgb(255 255 255 / 48%); box-shadow: 0 1.25rem 0 rgb(255 255 255 / 36%), 0 2.5rem 0 rgb(255 255 255 / 24%); }
.soliso-option-visual--fabric { background: linear-gradient(135deg, #b8c0b6, #7e897f); }
.soliso-option-visual--fabric::before { width: 108%; height: 108%; background: repeating-linear-gradient(32deg, rgb(255 255 255 / 19%) 0 2px, transparent 2px 10px); transform: rotate(-7deg); }
.soliso-option-visual--fabric::after { width: 61%; height: 61%; border: 1px solid rgb(255 255 255 / 60%); border-radius: 50%; box-shadow: 0 0 0 1rem rgb(255 255 255 / 14%); }
.soliso-option-visual--automation { background: linear-gradient(135deg, #282b25, #55594e); }
.soliso-option-visual--automation::before { width: 3.4rem; height: 5.4rem; border: 2px solid rgb(255 255 255 / 75%); border-radius: .55rem; background: #353831; box-shadow: 0 0 0 .55rem rgb(255 198 41 / 88%); }
.soliso-option-visual--automation::after { width: .42rem; height: .42rem; border-radius: 50%; background: #fff; box-shadow: 0 1rem 0 #fff, 0 2rem 0 #fff; }
.soliso-option-visual--shutter { background: linear-gradient(135deg, #e5e1d6, #a8a49a); }
.soliso-option-visual--shutter::before { width: 74%; height: 66%; border: .55rem solid #494a45; background: repeating-linear-gradient(0deg, #d9d7ce 0 1rem, #acaca4 1rem 1.15rem); box-shadow: inset 0 0 0 .25rem rgb(255 198 41 / 82%); }
.soliso-option-visual--shutter::after { width: 72%; height: 1px; background: rgb(41 43 35 / 36%); box-shadow: 0 1rem 0 rgb(41 43 35 / 30%), 0 2rem 0 rgb(41 43 35 / 25%); }
.soliso-option-visual--colour { background: linear-gradient(135deg, #f6f0df, #d1c29e); }
.soliso-option-visual--colour::before { width: 3.5rem; height: 3.5rem; border-radius: 50%; background: #32352f; box-shadow: 3.05rem 0 0 #d4c7a8, 1.5rem 2.55rem 0 #ffc629; }
.soliso-option-visual--colour::after { width: 7.8rem; height: 1px; top: 70%; background: rgb(41 43 35 / 16%); }
.soliso-option-visual--security { background: linear-gradient(135deg, #34362f, #6a6c61); }
.soliso-option-visual--security::before { width: 4.2rem; height: 4.75rem; clip-path: polygon(50% 0, 94% 17%, 87% 72%, 50% 100%, 13% 72%, 6% 17%); background: var(--soliso-yellow); }
.soliso-option-visual--security::after { width: 1.75rem; height: .8rem; border-bottom: 2px solid #292b23; border-left: 2px solid #292b23; transform: rotate(-45deg) translate(.15rem, -.2rem); }
.soliso-option-visual--awning { background: linear-gradient(135deg, #e3ded1, #bdb6a5); }
.soliso-option-visual--awning::before { width: 76%; height: 1.25rem; border-radius: .35rem; background: #373a34; box-shadow: 0 4.75rem 0 -0.38rem #373a34; transform: rotate(-5deg); }
.soliso-option-visual--awning::after { width: 63%; height: 4.8rem; top: 4.2rem; background: repeating-linear-gradient(90deg, #9aa599 0 1.1rem, #d8dfd1 1.1rem 2.2rem); clip-path: polygon(0 0, 100% 0, 91% 100%, 9% 100%); transform: rotate(-5deg); box-shadow: 0 .35rem 0 rgb(35 37 31 / 25%); }
.soliso-option-visual--lighting { background: linear-gradient(135deg, #302d23, #665934); }
.soliso-option-visual--lighting::before { width: 70%; height: .85rem; top: 31%; background: #3d4038; border-radius: .35rem; box-shadow: 0 5.5rem 0 #3d4038; }
.soliso-option-visual--lighting::after { width: .65rem; height: .65rem; border-radius: 50%; background: #fff7cb; box-shadow: 1.55rem 0 #fff7cb, 3.1rem 0 #fff7cb, 4.65rem 0 #fff7cb, 6.2rem 0 #fff7cb; }
.soliso-option-content { display: grid; align-content: start; gap: .8rem; padding: 1.45rem 1.55rem 1.65rem; }
.soliso-option-tag { color: var(--soliso-yellow-deep); font: 800 .67rem/1 "Inter", sans-serif; letter-spacing: .11em; text-transform: uppercase; }
.soliso-option-content h3 { margin: 0; color: #292b23; font: 600 1.38rem/1.14 "DM Sans", sans-serif; letter-spacing: -.035em; }
.soliso-option-content p { margin: 0; color: #62635b; font: 400 .91rem/1.62 "Inter", sans-serif; }
.soliso-option-note { display: flex; gap: .55rem; max-width: 54rem; margin: 2rem auto 0; color: #68675d; font: 400 .82rem/1.5 "Inter", sans-serif; text-align: center; }
.soliso-option-note::before { flex: none; width: .6rem; height: .6rem; margin-top: .3rem; border-radius: 50%; background: var(--soliso-yellow); content: ""; }
.soliso-visual-options .soliso-text-action { margin-top: 1.85rem; }
@media (max-width: 980px) { .soliso-option-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .soliso-visual-options { padding: 4.25rem 0; }.soliso-option-grid { grid-template-columns: 1fr; }.soliso-option-visual { min-height: 11.5rem; }.soliso-option-note { text-align: left; } }



/* Official product and material visual layer, authorized for Soliso under Soliso branding. */
.soliso-visual-options .soliso-option-media { min-height: 15.25rem; margin: 0; overflow: hidden; background: #e8e4da; }
.soliso-visual-options .soliso-option-media img { display: block; width: 100%; height: 100%; min-height: 15.25rem; object-fit: cover; transition: transform .32s cubic-bezier(.23, 1, .32, 1); }
.soliso-option-card:hover .soliso-option-media img { transform: scale(1.035); }
.soliso-material-showcase { padding: 5.75rem 0; background: #292b23; color: #fff; }
.soliso-material-showcase--light { background: #fff; color: #292b23; }
.soliso-material-showcase .soliso-section-heading { max-width: 48rem; }
.soliso-material-showcase .soliso-kicker { color: var(--soliso-yellow); }
.soliso-material-showcase .soliso-section-heading h2 { color: #fff; }
.soliso-material-showcase .soliso-section-heading p { color: rgb(255 255 255 / 76%); }
.soliso-material-showcase--light .soliso-kicker { color: var(--soliso-yellow-deep); }
.soliso-material-showcase--light .soliso-section-heading h2 { color: #292b23; }
.soliso-material-showcase--light .soliso-section-heading p { color: #62635b; }
.soliso-carousel { position: relative; }
.soliso-carousel-controls { display: flex; gap: .65rem; justify-content: flex-end; margin: -4.8rem 0 1.75rem; }
.soliso-carousel-controls button { display: grid; width: 2.75rem; height: 2.75rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border: 1px solid var(--soliso-yellow); border-radius: 6px; cursor: pointer; font: 600 1.35rem/1 "Inter", sans-serif; transition: transform .16s cubic-bezier(.23,1,.32,1), background .16s ease, border-color .16s ease; }
.soliso-carousel-controls button:active { transform: scale(.97); }
.soliso-carousel-controls button:disabled { cursor: not-allowed; color: rgb(255 255 255 / 45%); background: transparent; border-color: rgb(255 255 255 / 25%); }
.soliso-material-showcase--light .soliso-carousel-controls button:disabled { color: #99998e; border-color: #deded6; }
.soliso-carousel-viewport { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: var(--soliso-yellow) transparent; }
.soliso-carousel-track { display: flex; gap: 1rem; width: max-content; padding: .15rem 0 .65rem; }
.soliso-material-card { display: grid; width: min(20.5rem, calc(100vw - 3rem)); overflow: hidden; scroll-snap-align: start; background: #fff; border: 1px solid rgb(255 255 255 / 14%); border-radius: 6px; }
.soliso-material-showcase--light .soliso-material-card { border-color: rgb(41 43 35 / 10%); box-shadow: 0 12px 28px rgb(47 35 21 / 5%); }
.soliso-material-card figure { height: 12rem; margin: 0; overflow: hidden; background: #e8e4da; }
.soliso-material-card img { display: block; width: 100%; height: 100%; object-fit: cover; }
.soliso-material-card div { display: grid; gap: .6rem; padding: 1.3rem 1.35rem 1.5rem; }
.soliso-material-card span { color: var(--soliso-yellow); font: 800 .66rem/1 "Inter", sans-serif; letter-spacing: .11em; text-transform: uppercase; }
.soliso-material-showcase--light .soliso-material-card span { color: var(--soliso-yellow-deep); }
.soliso-material-card h3 { margin: 0; color: #292b23; font: 600 1.25rem/1.16 "DM Sans", sans-serif; letter-spacing: -.03em; }
.soliso-material-card p { margin: 0; color: #65665e; font: 400 .9rem/1.56 "Inter", sans-serif; }
.soliso-fabric-colour-collection { margin-top: clamp(2.75rem, 5vw, 4.5rem); padding-top: clamp(2.5rem, 4vw, 3.75rem); border-top: 1px solid rgb(255 255 255 / 18%); }
.soliso-fabric-colour-heading { max-width: 46rem; margin-bottom: 1.5rem; }
.soliso-fabric-colour-heading .soliso-kicker { display: inline-block; margin-bottom: .7rem; }
.soliso-fabric-colour-heading h3 { margin: 0; color: #fff; font: 600 clamp(1.6rem, 2.4vw, 2.25rem)/1.08 "DM Sans", sans-serif; letter-spacing: -.045em; }
.soliso-fabric-colour-heading p { margin: .7rem 0 0; color: rgb(255 255 255 / 76%); font: 400 .94rem/1.62 "Inter", sans-serif; }
.soliso-fabric-swatch-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .8rem; }
.soliso-fabric-swatch-card { min-width: 0; overflow: hidden; background: rgb(255 255 255 / 6%); border: 1px solid rgb(255 255 255 / 16%); border-radius: 6px; }
.soliso-fabric-swatch-card figure { aspect-ratio: 1 / .67; margin: 0; padding: .7rem; background: #f7f4ed; }
.soliso-fabric-swatch-card img { display: block; width: 100%; height: 100%; object-fit: cover; }
.soliso-fabric-swatch-card h3 { margin: 0; padding: .75rem .8rem .85rem; color: #fff; font: 700 .78rem/1.25 "Inter", sans-serif; }
.soliso-material-showcase .soliso-option-note { max-width: 62rem; margin: 1.65rem 0 0; color: rgb(255 255 255 / 72%); text-align: left; }
.soliso-material-showcase--light .soliso-option-note { color: #68675d; }
@media (max-width: 980px) { .soliso-fabric-swatch-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 640px) { .soliso-material-showcase { padding: 4.25rem 0; } .soliso-carousel-controls { justify-content: flex-start; margin: 1.25rem 0 1.15rem; } .soliso-visual-options .soliso-option-media, .soliso-visual-options .soliso-option-media img { min-height: 13rem; } .soliso-fabric-swatch-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; } .soliso-fabric-swatch-card figure { padding: .55rem; } }

:root { --soliso-yellow: #FFC629; --soliso-yellow-deep: #8A6200; --soliso-yellow-wash: #FFF9E8; }
.soliso-screens-page { color: #292b23; background: #fff; }
.soliso-screens-page main { overflow: hidden; }
.soliso-kicker { display: inline-flex; margin: 0 0 .9rem; color: var(--soliso-yellow-deep); font: 700 .72rem/1.15 "Inter", sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.soliso-screens-hero { padding: calc(76px + 4rem) 0 5rem; background: linear-gradient(118deg, var(--soliso-yellow-wash) 0%, #fff 53%, #fff5d2 100%); }
.soliso-screens-hero-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(25rem, .9fr); align-items: center; gap: clamp(2.5rem, 7vw, 7rem); }
.soliso-screens-hero-copy { max-width: 43rem; }
.soliso-screens-hero-copy h1 { max-width: 42rem; margin: 0; color: #292b23; font: 600 clamp(2.7rem, 5.15vw, 5.55rem)/.96 "DM Sans", sans-serif; letter-spacing: -.062em; }
.soliso-screens-hero-copy > p { max-width: 38rem; margin: 1.45rem 0 0; color: #555752; font: 400 clamp(1rem, 1.65vw, 1.17rem)/1.68 "Inter", sans-serif; }
.soliso-screens-hero-actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; margin-top: 2rem; }
.soliso-text-action { display: inline-flex; align-items: center; gap: .52rem; color: var(--soliso-yellow-deep); font: 700 .88rem/1.2 "Inter", sans-serif; text-decoration: none; }
.soliso-text-action:hover, .soliso-text-action:focus-visible { color: #705000; text-decoration: underline; text-underline-offset: .2rem; }
.soliso-hero-list { display: flex; flex-wrap: wrap; gap: .55rem 1rem; margin: 2.1rem 0 0; padding: 0; color: #5e5e54; font: 500 .83rem/1.45 "Inter", sans-serif; list-style: none; }
.soliso-hero-list li { display: inline-flex; gap: .45rem; align-items: center; }
.soliso-hero-list li::before { width: .43rem; height: .43rem; border-radius: 50%; background: var(--soliso-yellow); content: ""; }
.soliso-screens-hero-panel { overflow: hidden; background: #fff; border: 1px solid rgb(41 43 35 / 10%); border-radius: 6px; box-shadow: 0 24px 60px rgb(47 35 21 / 14%); }
.soliso-screens-hero-visual { position: relative; height: 14rem; margin: 0; overflow: hidden; background: #d9d2c0; }
.soliso-screens-hero-visual::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgb(33 33 28 / 40%), transparent 66%); content: ""; }
.soliso-screens-hero-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.soliso-screens-hero-visual figcaption { position: absolute; z-index: 1; right: 1.25rem; bottom: 1.05rem; color: #fff; font: 600 .75rem/1.3 "Inter", sans-serif; }
.soliso-screen-offer-form { display: grid; gap: 1rem; padding: clamp(1.5rem, 3vw, 2.25rem); }
.soliso-form-heading > span { display: block; margin-bottom: .6rem; color: var(--soliso-yellow-deep); font: 800 .7rem/1 "Inter", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.soliso-form-heading h2 { margin: 0; font: 600 clamp(1.55rem, 2.2vw, 2.05rem)/1.02 "DM Sans", sans-serif; letter-spacing: -.045em; }
.soliso-form-heading p { margin: .75rem 0 0; color: #636159; font: 400 .88rem/1.55 "Inter", sans-serif; }
.soliso-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.soliso-screen-offer-form label { display: grid; gap: .42rem; color: #3d3e38; font: 700 .76rem/1.2 "Inter", sans-serif; }
.soliso-screen-offer-form label span em { color: #77786f; font-style: normal; font-weight: 500; }
.soliso-screen-offer-form input, .soliso-screen-offer-form select, .soliso-screen-offer-form textarea { box-sizing: border-box; width: 100%; min-height: 2.95rem; padding: .7rem .8rem; color: #292b23; background: #fff; border: 1px solid #d8d6cc; border-radius: 6px; font: 400 .93rem/1.25 "Inter", sans-serif; }
.soliso-screen-offer-form textarea { min-height: 5.7rem; resize: vertical; }
.soliso-screen-offer-form input:focus, .soliso-screen-offer-form select:focus, .soliso-screen-offer-form textarea:focus { border-color: var(--soliso-yellow-deep); outline: 3px solid rgb(255 198 41 / 32%); outline-offset: 1px; }
.soliso-form-full { grid-column: 1 / -1; }
.soliso-form-submit { justify-content: center; width: 100%; margin-top: .25rem; }
.soliso-form-note { margin: 0; color: #6a6b63; font: 400 .74rem/1.48 "Inter", sans-serif; }
.soliso-form-note.is-error { color: #a4311d; font-weight: 700; }
.soliso-screens-intro { padding: 5.5rem 0; background: #fff; }
.soliso-screens-intro-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(18rem, .75fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: start; }
.soliso-screens-intro h2, .soliso-section-heading h2, .soliso-preparation-grid h2, .soliso-screens-cta h2 { margin: 0; color: #292b23; font: 600 clamp(2rem, 3.45vw, 3.55rem)/1.02 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-screens-intro-grid > div:last-child { padding-top: 1.85rem; }
.soliso-screens-intro-grid > div:last-child p { margin: 0; color: #5f6058; font: 400 1.02rem/1.73 "Inter", sans-serif; }
.soliso-screens-intro-grid > div:last-child .soliso-text-action { margin-top: 1.45rem; }
.soliso-screens-features { padding: 5.5rem 0; background: var(--soliso-yellow-wash); }
.soliso-section-heading { max-width: 46rem; margin-bottom: 3rem; }
.soliso-section-heading p { max-width: 38rem; margin: 1rem 0 0; color: #65665e; font: 400 1rem/1.65 "Inter", sans-serif; }
.soliso-section-heading--center { margin-inline: auto; text-align: center; }
.soliso-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.soliso-feature-grid article { min-height: 15.5rem; padding: 1.55rem; background: #fff; border: 1px solid rgb(41 43 35 / 9%); border-radius: 6px; box-shadow: 0 12px 28px rgb(47 35 21 / 5%); }
.soliso-feature-number { display: grid; width: 2.75rem; height: 2.75rem; margin-bottom: 2.35rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border-radius: 50%; font: 800 .74rem/1 "Inter", sans-serif; }
.soliso-feature-grid h3 { margin: 0; color: #292b23; font: 600 1.35rem/1.12 "DM Sans", sans-serif; letter-spacing: -.035em; }
.soliso-feature-grid p { margin: .75rem 0 0; color: #66675f; font: 400 .91rem/1.62 "Inter", sans-serif; }
.soliso-screens-deep-dive, .soliso-screens-design { padding: 6rem 0; background: #fff; }
.soliso-screens-design { background: var(--soliso-yellow-wash); }
.soliso-content-grid { display: grid; grid-template-columns: minmax(20rem, .88fr) minmax(0, 1fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: center; }
.soliso-content-grid--reverse { grid-template-columns: minmax(0, 1fr) minmax(20rem, .88fr); }
.soliso-content-grid figure { min-height: 28rem; margin: 0; overflow: hidden; background: #e9e4d9; border-radius: 6px; }
.soliso-content-grid figure img { display: block; width: 100%; height: 100%; min-height: 28rem; object-fit: cover; }
.soliso-content-copy { max-width: 39rem; }
.soliso-content-copy h2 { margin: 0; color: #292b23; font: 600 clamp(2rem, 3.25vw, 3.3rem)/1.03 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-content-copy > p { margin: 1rem 0 0; color: #60615a; font: 400 1rem/1.7 "Inter", sans-serif; }
.soliso-content-list { display: grid; gap: .9rem; margin: 1.6rem 0 0; padding: 0; list-style: none; }
.soliso-content-list li { display: grid; grid-template-columns: 1.7rem 1fr; column-gap: .8rem; align-items: start; color: #62635b; font: 400 .92rem/1.5 "Inter", sans-serif; }
.soliso-content-list li::before { display: grid; grid-column: 1; grid-row: 1 / span 2; width: 1.55rem; height: 1.55rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border-radius: 50%; font: 800 .7rem/1 "Inter", sans-serif; content: "✓"; }
.soliso-content-list li b { display: block; grid-column: 2; color: #292b23; font: 700 .89rem/1.3 "Inter", sans-serif; }
.soliso-content-list li span { display: block; grid-column: 2; }
.soliso-screens-automation { padding: 5.65rem 0; background: #292b23; }
.soliso-automation-shell { max-width: 53rem; }
.soliso-screens-automation .soliso-kicker { color: var(--soliso-yellow); }
.soliso-automation-shell h2 { max-width: 42rem; margin: 0; color: #fff; font: 600 clamp(2rem, 3.25vw, 3.3rem)/1.03 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-automation-shell p { max-width: 47rem; margin: 1rem 0 0; color: rgb(255 255 255 / 78%); font: 400 1rem/1.7 "Inter", sans-serif; }
.soliso-screens-automation .soliso-text-action { margin-top: 1.7rem; color: var(--soliso-yellow); }
.soliso-screens-preparation { padding: 6rem 0; background: #fff; }
.soliso-preparation-grid { display: grid; grid-template-columns: minmax(20rem, .9fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.soliso-preparation-grid figure { min-height: 28rem; margin: 0; overflow: hidden; background: #e9e4d9; border-radius: 6px; }
.soliso-preparation-grid figure img { display: block; width: 100%; height: 100%; min-height: 28rem; object-fit: cover; }
.soliso-preparation-grid h2 { max-width: 37rem; }
.soliso-preparation-grid ol { display: grid; gap: 1.1rem; margin: 1.65rem 0 2rem; padding: 0; list-style: none; counter-reset: soliso-preparation; }
.soliso-preparation-grid li { display: grid; grid-template-columns: 2rem 1fr; column-gap: .8rem; align-items: start; color: #62635b; font: 400 .94rem/1.55 "Inter", sans-serif; }
.soliso-preparation-grid li::before { display: grid; grid-column: 1; grid-row: 1 / span 2; width: 1.7rem; height: 1.7rem; place-items: center; color: #292b23; background: var(--soliso-yellow); border-radius: 50%; font: 800 .7rem/1 "Inter", sans-serif; content: counter(soliso-preparation, decimal-leading-zero); counter-increment: soliso-preparation; }
.soliso-preparation-grid li b { display: block; grid-column: 2; margin-bottom: .15rem; color: #292b23; font: 700 .92rem/1.3 "Inter", sans-serif; }
.soliso-preparation-grid li span { display: block; grid-column: 2; }
.soliso-screens-faq { padding: 5.5rem 0; background: #fff; }
.soliso-faq-list { max-width: 54rem; margin: 0 auto; }
.soliso-faq-list details { border-bottom: 1px solid #dedacd; }
.soliso-faq-list summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 1.4rem 0; color: #292b23; cursor: pointer; font: 600 1.08rem/1.35 "DM Sans", sans-serif; list-style: none; }
.soliso-faq-list summary::-webkit-details-marker { display: none; }
.soliso-faq-list summary::after { flex: none; color: var(--soliso-yellow-deep); font: 400 1.6rem/1 "Inter", sans-serif; content: "+"; }
.soliso-faq-list details[open] summary::after { content: "−"; }
.soliso-faq-list p { max-width: 46rem; margin: -.35rem 0 1.45rem; color: #61625a; font: 400 .98rem/1.68 "Inter", sans-serif; }
.soliso-screens-cta { position: relative; isolation: isolate; overflow: hidden; padding: 5.7rem 0; color: #fff; background: #292b23; text-align: center; }
.soliso-screens-cta-image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; }
.soliso-screens-cta-overlay { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(28 30 24 / 91%), rgb(28 30 24 / 79%)), linear-gradient(0deg, rgb(28 30 24 / 45%), rgb(28 30 24 / 25%)); }
.soliso-screens-cta .liso-rebuilt-shell { position: relative; display: grid; justify-items: center; }
.soliso-screens-cta .soliso-kicker { color: var(--soliso-yellow); }
.soliso-screens-cta h2 { max-width: 48rem; color: #fff; }
.soliso-screens-cta p { max-width: 39rem; margin: 1.2rem auto 0; color: rgb(255 255 255 / 80%); font: 400 1.03rem/1.65 "Inter", sans-serif; }
.soliso-screens-cta .liso-rebuilt-action { margin-top: 2rem; color: #fff; background: transparent; border-color: rgb(255 255 255 / 78%); }
.soliso-screens-cta .liso-rebuilt-action:hover, .soliso-screens-cta .liso-rebuilt-action:focus-visible { color: #292b23; background: #fff; border-color: #fff; }
@media (max-width: 980px) { .soliso-screens-hero-grid, .soliso-screens-intro-grid, .soliso-content-grid, .soliso-content-grid--reverse, .soliso-preparation-grid { grid-template-columns: 1fr; } .soliso-screens-hero { padding-top: calc(76px + 3rem); } .soliso-screens-hero-copy { max-width: 46rem; } .soliso-screens-hero-panel { max-width: 43rem; } .soliso-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .soliso-screens-intro-grid > div:last-child { padding-top: 0; } .soliso-content-grid figure, .soliso-content-grid figure img, .soliso-preparation-grid figure, .soliso-preparation-grid figure img { min-height: 22rem; } .soliso-content-grid--reverse > div { order: 2; } .soliso-content-grid--reverse > figure { order: 1; } }
@media (max-width: 640px) { .soliso-screens-hero { padding: calc(76px + 2.45rem) 0 3.75rem; } .soliso-screens-hero-copy h1 { font-size: clamp(2.55rem, 13vw, 4.1rem); } .soliso-screens-hero-copy > p { font-size: 1rem; } .soliso-screens-hero-actions { display: grid; align-items: stretch; } .soliso-screens-hero-actions .liso-rebuilt-action { justify-content: center; } .soliso-text-action { justify-content: center; min-height: 2.8rem; } .soliso-hero-list { display: grid; gap: .45rem; } .soliso-screens-hero-visual { height: 11rem; } .soliso-form-grid, .soliso-feature-grid { grid-template-columns: 1fr; } .soliso-screen-offer-form { padding: 1.25rem; } .soliso-screens-intro, .soliso-screens-features, .soliso-screens-deep-dive, .soliso-screens-design, .soliso-screens-preparation, .soliso-screens-faq, .soliso-screens-automation { padding: 4.25rem 0; } .soliso-feature-grid article { min-height: 0; } .soliso-feature-number { margin-bottom: 1.4rem; } .soliso-content-grid figure, .soliso-content-grid figure img, .soliso-preparation-grid figure, .soliso-preparation-grid figure img { min-height: 18rem; } .soliso-screens-cta { padding: 4.5rem 0; } }



/* Liso product-page convergence: visual hero, compact editorial rhythm and Soliso group mark. */
.soliso-screens-hero { position: relative; display: grid; min-height: 32rem; padding: calc(76px + 3.25rem) 0 5.5rem; overflow: hidden; color: #fff; background: #292b23; isolation: isolate; }
.soliso-screens-hero-image, .soliso-screens-hero-overlay { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; }
.soliso-screens-hero-image { object-fit: cover; object-position: center; }
.soliso-screens-hero-overlay { z-index: -1; background: linear-gradient(90deg, rgb(25 27 22 / 88%) 0%, rgb(25 27 22 / 70%) 45%, rgb(25 27 22 / 24%) 100%); }
.soliso-screens-hero-lines { position: absolute; z-index: 0; inset: 0; pointer-events: none; background: repeating-linear-gradient(90deg, rgb(255 198 41 / 8%) 0 1px, transparent 1px 3.5rem); }
.soliso-screens-hero-shell { position: relative; z-index: 1; display: grid; align-items: center; }
.soliso-screens-hero-copy { max-width: 43rem; }
.soliso-screens-hero .soliso-kicker { color: var(--soliso-yellow); }
.soliso-screens-hero-copy h1 { max-width: 43rem; color: #fff; font: 700 clamp(2.5rem, 4.72vw, 4.25rem)/1.04 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-screens-hero-copy > p { max-width: 39rem; color: rgb(255 255 255 / 85%); }
.soliso-screens-hero .liso-rebuilt-action--secondary { color: #fff; background: transparent; border-color: rgb(255 255 255 / 72%); }
.soliso-screens-hero .liso-rebuilt-action--secondary:hover, .soliso-screens-hero .liso-rebuilt-action--secondary:focus-visible { color: #292b23; background: #fff; border-color: #fff; }
.soliso-screens-hero-scroll { position: absolute; z-index: 1; right: clamp(1.25rem, 4vw, 4rem); bottom: 1.5rem; display: flex; gap: .65rem; align-items: center; color: rgb(255 255 255 / 76%); font: 600 .68rem/1 "Inter", sans-serif; letter-spacing: .09em; text-decoration: none; text-transform: uppercase; }
.soliso-screens-hero-scroll i { display: block; width: 1.55rem; height: 1px; background: currentColor; }
.soliso-screens-execution { padding: 5.75rem 0; background: var(--soliso-yellow-wash); }
.soliso-execution-grid { display: grid; grid-template-columns: minmax(20rem, .9fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.soliso-execution-grid figure { min-height: 27rem; margin: 0; overflow: hidden; background: #e9e4d9; border-radius: 6px; }
.soliso-execution-grid figure img { display: block; width: 100%; min-height: 27rem; height: 100%; object-fit: cover; }
.soliso-execution-copy { max-width: 40rem; }
.soliso-execution-copy h2 { margin: 0; color: #292b23; font: 600 clamp(2rem, 3.25vw, 3.3rem)/1.03 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-execution-copy > p { margin: 1rem 0 0; color: #60615a; font: 400 1rem/1.7 "Inter", sans-serif; }
@media (max-width: 980px) { .soliso-screens-hero { min-height: 29rem; padding-top: calc(76px + 3rem); }.soliso-execution-grid { grid-template-columns: 1fr; }.soliso-execution-grid figure, .soliso-execution-grid figure img { min-height: 22rem; } }
@media (max-width: 640px) { .soliso-screens-hero { min-height: 27rem; padding: calc(64px + 3rem) 0 4.25rem; }.soliso-screens-hero-copy h1 { font-size: 2.5rem; line-height: 1.04; }.soliso-screens-hero-actions { display: grid; align-items: stretch; }.soliso-screens-hero-actions .liso-rebuilt-action { justify-content: center; }.soliso-screens-hero-scroll { display: none; }.soliso-screens-execution { padding: 4.25rem 0; }.soliso-execution-grid figure, .soliso-execution-grid figure img { min-height: 18rem; } }


/* Soliso Screens: customer comfort layer within the Liso product-page system. */
.soliso-screens-benefits { padding: 5.5rem 0; background: var(--soliso-yellow-wash); }
.soliso-screens-benefits-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.soliso-screens-benefits-grid article { min-height: 18rem; }
.soliso-screens-benefits-grid .soliso-feature-number { margin-bottom: 2rem; }
@media (max-width: 980px) { .soliso-screens-benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .soliso-screens-benefits { padding: 4.25rem 0; }.soliso-screens-benefits-grid { grid-template-columns: 1fr; }.soliso-screens-benefits-grid article { min-height: 0; } }


/* Original Soliso visual option cards. The illustrations are CSS-rendered; not supplier assets. */
.soliso-visual-options { padding: 5.75rem 0; background: #fff; }
.soliso-visual-options--wash { background: var(--soliso-yellow-wash); }
.soliso-visual-options .soliso-section-heading { margin-bottom: 2.75rem; }
.soliso-option-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.soliso-option-card { display: grid; min-height: 100%; overflow: hidden; background: #fff; border: 1px solid rgb(41 43 35 / 10%); border-radius: 6px; box-shadow: 0 12px 28px rgb(47 35 21 / 5%); }
.soliso-option-visual { position: relative; display: grid; min-height: 13rem; overflow: hidden; place-items: center; background: linear-gradient(135deg, #f6efdc, #dfd6be); }
.soliso-option-visual::before, .soliso-option-visual::after { position: absolute; content: ""; }
.soliso-option-visual--screen { background: linear-gradient(135deg, #e8e7df, #b7b8af); }
.soliso-option-visual--screen::before { width: 72%; height: 66%; border: .8rem solid #41423d; border-radius: .15rem; background: repeating-linear-gradient(90deg, rgb(35 36 32 / 70%) 0 3px, rgb(246 246 240 / 28%) 3px 8px); box-shadow: inset .7rem 0 0 rgb(255 198 41 / 80%), inset -.7rem 0 0 rgb(255 198 41 / 80%); }
.soliso-option-visual--screen::after { width: 61%; height: 1px; background: rgb(255 255 255 / 48%); box-shadow: 0 1.25rem 0 rgb(255 255 255 / 36%), 0 2.5rem 0 rgb(255 255 255 / 24%); }
.soliso-option-visual--fabric { background: linear-gradient(135deg, #b8c0b6, #7e897f); }
.soliso-option-visual--fabric::before { width: 108%; height: 108%; background: repeating-linear-gradient(32deg, rgb(255 255 255 / 19%) 0 2px, transparent 2px 10px); transform: rotate(-7deg); }
.soliso-option-visual--fabric::after { width: 61%; height: 61%; border: 1px solid rgb(255 255 255 / 60%); border-radius: 50%; box-shadow: 0 0 0 1rem rgb(255 255 255 / 14%); }
.soliso-option-visual--automation { background: linear-gradient(135deg, #282b25, #55594e); }
.soliso-option-visual--automation::before { width: 3.4rem; height: 5.4rem; border: 2px solid rgb(255 255 255 / 75%); border-radius: .55rem; background: #353831; box-shadow: 0 0 0 .55rem rgb(255 198 41 / 88%); }
.soliso-option-visual--automation::after { width: .42rem; height: .42rem; border-radius: 50%; background: #fff; box-shadow: 0 1rem 0 #fff, 0 2rem 0 #fff; }
.soliso-option-visual--shutter { background: linear-gradient(135deg, #e5e1d6, #a8a49a); }
.soliso-option-visual--shutter::before { width: 74%; height: 66%; border: .55rem solid #494a45; background: repeating-linear-gradient(0deg, #d9d7ce 0 1rem, #acaca4 1rem 1.15rem); box-shadow: inset 0 0 0 .25rem rgb(255 198 41 / 82%); }
.soliso-option-visual--shutter::after { width: 72%; height: 1px; background: rgb(41 43 35 / 36%); box-shadow: 0 1rem 0 rgb(41 43 35 / 30%), 0 2rem 0 rgb(41 43 35 / 25%); }
.soliso-option-visual--colour { background: linear-gradient(135deg, #f6f0df, #d1c29e); }
.soliso-option-visual--colour::before { width: 3.5rem; height: 3.5rem; border-radius: 50%; background: #32352f; box-shadow: 3.05rem 0 0 #d4c7a8, 1.5rem 2.55rem 0 #ffc629; }
.soliso-option-visual--colour::after { width: 7.8rem; height: 1px; top: 70%; background: rgb(41 43 35 / 16%); }
.soliso-option-visual--security { background: linear-gradient(135deg, #34362f, #6a6c61); }
.soliso-option-visual--security::before { width: 4.2rem; height: 4.75rem; clip-path: polygon(50% 0, 94% 17%, 87% 72%, 50% 100%, 13% 72%, 6% 17%); background: var(--soliso-yellow); }
.soliso-option-visual--security::after { width: 1.75rem; height: .8rem; border-bottom: 2px solid #292b23; border-left: 2px solid #292b23; transform: rotate(-45deg) translate(.15rem, -.2rem); }
.soliso-option-visual--awning { background: linear-gradient(135deg, #e3ded1, #bdb6a5); }
.soliso-option-visual--awning::before { width: 76%; height: 1.25rem; border-radius: .35rem; background: #373a34; box-shadow: 0 4.75rem 0 -0.38rem #373a34; transform: rotate(-5deg); }
.soliso-option-visual--awning::after { width: 63%; height: 4.8rem; top: 4.2rem; background: repeating-linear-gradient(90deg, #9aa599 0 1.1rem, #d8dfd1 1.1rem 2.2rem); clip-path: polygon(0 0, 100% 0, 91% 100%, 9% 100%); transform: rotate(-5deg); box-shadow: 0 .35rem 0 rgb(35 37 31 / 25%); }
.soliso-option-visual--lighting { background: linear-gradient(135deg, #302d23, #665934); }
.soliso-option-visual--lighting::before { width: 70%; height: .85rem; top: 31%; background: #3d4038; border-radius: .35rem; box-shadow: 0 5.5rem 0 #3d4038; }
.soliso-option-visual--lighting::after { width: .65rem; height: .65rem; border-radius: 50%; background: #fff7cb; box-shadow: 1.55rem 0 #fff7cb, 3.1rem 0 #fff7cb, 4.65rem 0 #fff7cb, 6.2rem 0 #fff7cb; }
.soliso-option-content { display: grid; align-content: start; gap: .8rem; padding: 1.45rem 1.55rem 1.65rem; }
.soliso-option-tag { color: var(--soliso-yellow-deep); font: 800 .67rem/1 "Inter", sans-serif; letter-spacing: .11em; text-transform: uppercase; }
.soliso-option-content h3 { margin: 0; color: #292b23; font: 600 1.38rem/1.14 "DM Sans", sans-serif; letter-spacing: -.035em; }
.soliso-option-content p { margin: 0; color: #62635b; font: 400 .91rem/1.62 "Inter", sans-serif; }
.soliso-option-note { display: flex; gap: .55rem; max-width: 54rem; margin: 2rem auto 0; color: #68675d; font: 400 .82rem/1.5 "Inter", sans-serif; text-align: center; }
.soliso-option-note::before { flex: none; width: .6rem; height: .6rem; margin-top: .3rem; border-radius: 50%; background: var(--soliso-yellow); content: ""; }
.soliso-visual-options .soliso-text-action { margin-top: 1.85rem; }
@media (max-width: 980px) { .soliso-option-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .soliso-visual-options { padding: 4.25rem 0; }.soliso-option-grid { grid-template-columns: 1fr; }.soliso-option-visual { min-height: 11.5rem; }.soliso-option-note { text-align: left; } }

.soliso-multistep-configurator { display: block; }
.soliso-screens-configurator { padding: clamp(4.5rem, 8vw, 7.5rem) 0; background: #f7f6f1; }
.soliso-screens-configurator-shell { max-width: 76rem; }
.soliso-screens-configurator .soliso-screen-offer-form { padding: clamp(1.35rem, 3.5vw, 3.25rem); background: #fff; border: 1px solid rgb(41 43 35 / 11%); border-radius: 6px; box-shadow: 0 18px 45px rgb(41 43 35 / 8%); }
.soliso-config-loading { min-height: 18rem; display: grid; place-items: center; color: #62635b; font: 600 .9rem/1.4 "Inter", sans-serif; }
.soliso-config-heading > span, .soliso-config-step-heading > span, .soliso-config-summary-heading > span { display: block; margin-bottom: .55rem; color: var(--soliso-yellow-deep); font: 800 .69rem/1 "Inter", sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.soliso-config-heading h2 { margin: 0; color: #292b23; font: 600 clamp(1.75rem, 2.65vw, 2.35rem)/1.02 "DM Sans", sans-serif; letter-spacing: -.045em; }
.soliso-config-heading > p { margin: .75rem 0 0; color: #63645c; font: 400 .92rem/1.56 "Inter", sans-serif; }
.soliso-config-progress { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .4rem; margin: 1.75rem 0 1.6rem; padding: 0; list-style: none; }
.soliso-config-progress li { display: grid; gap: .42rem; justify-items: center; color: #85867e; font: 700 .62rem/1.2 "Inter", sans-serif; letter-spacing: .02em; text-align: center; }
.soliso-config-progress li span { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; border: 1px solid #d8d6cc; border-radius: 50%; color: #75766f; background: #fff; font-size: .76rem; }
.soliso-config-progress li.is-current, .soliso-config-progress li.is-complete { color: #292b23; }
.soliso-config-progress li.is-current span { border-color: var(--soliso-yellow); background: var(--soliso-yellow); color: #292b23; }
.soliso-config-progress li.is-complete span { border-color: #292b23; background: #292b23; color: #fff; }
.soliso-config-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15.5rem, .6fr); gap: 1.25rem; align-items: start; }
.soliso-config-main { min-width: 0; }
.soliso-config-step-heading { margin-bottom: 1.25rem; }
.soliso-config-step-heading h3 { margin: 0; color: #292b23; font: 600 clamp(1.42rem, 2.1vw, 1.9rem)/1.08 "DM Sans", sans-serif; letter-spacing: -.04em; }
.soliso-config-step-heading p { margin: .65rem 0 0; color: #64655d; font: 400 .9rem/1.58 "Inter", sans-serif; }
.soliso-config-live-preview { position: relative; min-height: 12.5rem; margin: 0 0 1rem; overflow: hidden; border-radius: 6px; background: #262820; }
.soliso-config-live-preview-image { position: absolute; inset: 0; opacity: .42; background: linear-gradient(90deg, rgb(20 22 17 / 71%), rgb(20 22 17 / 35%)), url("../shared/images/soliso-home-gevel-zonwering.webp") center/cover; }
.soliso-config-drawing { position: absolute; top: 1.55rem; right: 9%; width: min(11.5rem, 42%); height: 8.15rem; filter: drop-shadow(0 7px 8px rgb(0 0 0 / 24%)); }
.soliso-config-box { position: absolute; top: 0; left: 0; right: 0; height: .8rem; border-radius: 3px; background: #262a2c; }
.soliso-config-guide { position: absolute; top: .7rem; bottom: 0; width: .34rem; background: #262a2c; }
.soliso-config-guide--left { left: 0; }.soliso-config-guide--right { right: 0; }
.soliso-config-cloth { position: absolute; top: .8rem; right: .34rem; bottom: 0; left: .34rem; background: repeating-linear-gradient(0deg, rgb(20 23 22 / .8), rgb(20 23 22 / .8) 4px, rgb(53 56 54 / .86) 4px, rgb(53 56 54 / .86) 5px); }
.soliso-config-motor { position: absolute; top: -.25rem; width: 1.2rem; height: 1.2rem; border: 2px solid var(--soliso-yellow); border-radius: 50%; opacity: 0; }
.soliso-config-cable { position: absolute; width: 2px; height: 2.2rem; background: var(--soliso-yellow); opacity: 0; transform-origin: top center; }
.soliso-config-live-preview.is-motor-left .soliso-config-motor { left: -.45rem; opacity: 1; }.soliso-config-live-preview.is-motor-right .soliso-config-motor { right: -.45rem; opacity: 1; }
.soliso-config-live-preview[class*="is-cable-"] .soliso-config-cable { right: -.9rem; top: .35rem; opacity: 1; }.soliso-config-live-preview.is-cable-rear-bottom .soliso-config-cable { top: 5.8rem; right: -.55rem; }.soliso-config-live-preview.is-cable-top-rear .soliso-config-cable { top: -.25rem; right: 1.2rem; }.soliso-config-live-preview.is-cable-top-front .soliso-config-cable { top: -.25rem; right: 3rem; }.soliso-config-live-preview.is-cable-side .soliso-config-cable { top: 2.7rem; right: -1.35rem; transform: rotate(90deg); }.soliso-config-live-preview.is-cable-through-guide .soliso-config-cable { top: 2.6rem; right: .15rem; }
.soliso-config-live-preview figcaption { position: absolute; z-index: 1; left: 1.15rem; right: 1.15rem; bottom: 1rem; display: grid; gap: .22rem; color: #fff; text-shadow: 0 1px 3px rgb(0 0 0 / 36%); font: 400 .72rem/1.35 "Inter", sans-serif; }
.soliso-config-live-preview figcaption b { font-size: .79rem; }
.soliso-config-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.soliso-config-choice-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }.soliso-config-choice-grid--cable { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.soliso-config-choice { width: 100%; min-height: 5.4rem; display: grid; gap: .33rem; align-content: center; padding: .85rem .9rem; color: #35362f; background: #fff; border: 1px solid #d8d6cc; border-radius: 6px; text-align: left; cursor: pointer; transition: border-color 160ms ease-out, background-color 160ms ease-out, transform 160ms ease-out; }
.soliso-config-choice:hover:not(:disabled), .soliso-config-choice:focus-visible { border-color: #8a6200; outline: 3px solid rgb(255 198 41 / 22%); outline-offset: 1px; }.soliso-config-choice:active:not(:disabled) { transform: scale(.98); }
.soliso-config-choice b { font: 700 .83rem/1.25 "Inter", sans-serif; }.soliso-config-choice > span:not(.soliso-config-choice-visual) { color: #686960; font: 400 .72rem/1.4 "Inter", sans-serif; }
.soliso-config-choice.is-active { padding: calc(.85rem - 1px) calc(.9rem - 1px); border: 2px solid var(--soliso-yellow); background: #fff9e8; }.soliso-config-choice.is-disabled { color: #85867e; background: #f7f6f1; cursor: not-allowed; }.soliso-config-choice.is-invalid { border-color: #a4311d; }
.soliso-config-choice.has-visual { grid-template-columns: 3.8rem minmax(0, 1fr); column-gap: .75rem; }.soliso-config-choice.has-visual > b, .soliso-config-choice.has-visual > span:not(.soliso-config-choice-visual) { grid-column: 2; }.soliso-config-choice-visual { grid-column: 1; grid-row: 1 / span 2; width: 3.8rem; height: 3.35rem; overflow: hidden; border-radius: 4px; background: #e6e2d7; }
.soliso-config-choice-visual--wall { background: linear-gradient(90deg, rgb(41 43 35 / 27%), transparent), url("../shared/images/soliso-home-gevel-zonwering.webp") center/cover; }.soliso-config-choice-visual--recess { background: linear-gradient(90deg, rgb(41 43 35 / 20%), transparent), url("../shared/images/soliso-screens.webp") center/cover; }.soliso-config-choice-visual--housing { position: relative; background: linear-gradient(#262a2c 0 28%, #7c7e76 28% 34%, #3c403e 34% 100%); }.soliso-config-choice-visual--square { background: linear-gradient(135deg, #303432 0 47%, #f4f1e7 47% 53%, #303432 53%); }.soliso-config-choice-visual--round { border-radius: 50% 50% 4px 4px; background: radial-gradient(circle at 50% 100%, #f4f1e7 0 44%, #303432 45%); }.soliso-config-choice-visual--motor-left, .soliso-config-choice-visual--motor-right { position: relative; background: #f5f2e8; }.soliso-config-choice-visual--motor-left::after, .soliso-config-choice-visual--motor-right::after { position: absolute; top: 50%; width: 1rem; height: 1rem; border: 2px solid #292b23; border-radius: 50%; content: ""; transform: translateY(-50%); }.soliso-config-choice-visual--motor-left::after { left: .6rem; }.soliso-config-choice-visual--motor-right::after { right: .6rem; }.soliso-config-choice-visual--cable { background: linear-gradient(90deg, #f5f2e8 47%, var(--soliso-yellow) 48% 53%, #f5f2e8 54%); }
.soliso-config-measurements, .soliso-config-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; margin-top: .85rem; }
.soliso-config-measurements label, .soliso-config-contact-grid label { display: grid; gap: .42rem; color: #3d3e38; font: 700 .76rem/1.2 "Inter", sans-serif; }.soliso-config-measurements input, .soliso-config-contact-grid input, .soliso-config-contact-grid textarea { box-sizing: border-box; width: 100%; min-height: 2.95rem; padding: .7rem .8rem; color: #292b23; background: #fff; border: 1px solid #d8d6cc; border-radius: 6px; font: 400 .93rem/1.25 "Inter", sans-serif; }.soliso-config-contact-grid textarea { min-height: 6.1rem; resize: vertical; }.soliso-config-measurements input:focus, .soliso-config-contact-grid input:focus, .soliso-config-contact-grid textarea:focus { border-color: var(--soliso-yellow-deep); outline: 3px solid rgb(255 198 41 / 32%); outline-offset: 1px; }.soliso-config-contact-full { grid-column: 1 / -1; }.soliso-config-contact-grid em { color: #77786f; font-style: normal; font-weight: 500; }
.soliso-config-fieldset { min-width: 0; margin: 1.15rem 0 0; padding: 0; border: 0; }.soliso-config-fieldset legend { margin-bottom: .65rem; padding: 0; color: #3d3e38; font: 700 .78rem/1.2 "Inter", sans-serif; }.soliso-config-fieldset legend small { color: #77786f; font-size: .72rem; font-weight: 500; }.soliso-config-field-note, .soliso-config-info, .soliso-config-status { margin: .8rem 0 0; padding: .85rem; color: #61625a; background: #fff9e8; border-left: 3px solid var(--soliso-yellow); font: 400 .78rem/1.5 "Inter", sans-serif; }.soliso-config-status.is-positive { border-left-color: #5f7d2d; }.soliso-config-status.is-negative { color: #8c2a1e; border-left-color: #a4311d; }
.soliso-config-summary { position: sticky; top: 6rem; overflow: hidden; padding: 1.15rem; background: #292b23; border-radius: 6px; color: #fff; }.soliso-config-summary-heading { display: grid; gap: .2rem; padding-bottom: 1rem; border-bottom: 1px solid rgb(255 255 255 / 20%); }.soliso-config-summary-heading > span { margin: 0; color: var(--soliso-yellow); }.soliso-config-summary-heading b { font: 600 1rem/1.25 "DM Sans", sans-serif; }.soliso-config-summary dl { display: grid; gap: .65rem; margin: 1rem 0; }.soliso-config-summary dl div { display: grid; gap: .16rem; }.soliso-config-summary dt { color: rgb(255 255 255 / 59%); font: 700 .64rem/1.2 "Inter", sans-serif; letter-spacing: .05em; text-transform: uppercase; }.soliso-config-summary dd { margin: 0; color: #fff; font: 400 .78rem/1.4 "Inter", sans-serif; }.soliso-config-summary p { margin: 0; padding-top: .85rem; color: rgb(255 255 255 / 67%); border-top: 1px solid rgb(255 255 255 / 20%); font: 400 .71rem/1.45 "Inter", sans-serif; }
.soliso-config-actions { display: flex; justify-content: space-between; align-items: center; gap: .8rem; margin-top: 1.2rem; padding-top: 1.2rem; border-top: 1px solid #dfddd3; }.soliso-config-back { padding: .75rem 0; color: #55564f; background: transparent; border: 0; font: 700 .8rem/1.2 "Inter", sans-serif; cursor: pointer; }.soliso-config-back:disabled { opacity: .35; cursor: not-allowed; }.soliso-config-next { margin: 0; }.soliso-config-validation { min-height: 0; margin: .9rem 0 0; color: #a4311d; font: 700 .78rem/1.45 "Inter", sans-serif; }.soliso-config-validation:not(.is-visible) { display: none; }.soliso-config-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(1px, 1px, 1px, 1px) !important; white-space: nowrap !important; }.soliso-form-note { margin: 1rem 0 0; color: #6a6b63; font: 400 .74rem/1.48 "Inter", sans-serif; }.soliso-form-note.is-error { color: #a4311d; font-weight: 700; }.soliso-form-note.is-success { color: #45651d; font-weight: 700; }.soliso-form-note a { color: inherit; }.soliso-config-noscript { margin: 1rem 0 0; color: #62635b; font: 400 .82rem/1.55 "Inter", sans-serif; }
@media (max-width: 980px) { .soliso-config-layout { grid-template-columns: 1fr; }.soliso-config-summary { position: static; order: initial; }.soliso-config-summary dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }.soliso-config-summary p { grid-column: 1 / -1; }.soliso-config-live-preview { min-height: 13.5rem; } }
@media (max-width: 640px) { .soliso-screens-configurator { padding: 4.25rem 0; }.soliso-screens-configurator .soliso-screen-offer-form { padding: 1.15rem; }.soliso-config-progress li { font-size: .53rem; }.soliso-config-progress li span { width: 1.6rem; height: 1.6rem; }.soliso-config-choice-grid, .soliso-config-choice-grid--four, .soliso-config-choice-grid--cable { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }.soliso-config-choice.has-visual { grid-template-columns: 1fr; padding: .7rem; }.soliso-config-choice.has-visual > b, .soliso-config-choice.has-visual > span:not(.soliso-config-choice-visual) { grid-column: 1; }.soliso-config-choice-visual { display: none; }.soliso-config-measurements, .soliso-config-contact-grid, .soliso-config-summary dl { grid-template-columns: 1fr; }.soliso-config-live-preview { min-height: 12rem; }.soliso-config-drawing { right: 7%; width: 42%; }.soliso-config-actions { align-items: stretch; flex-direction: column-reverse; }.soliso-config-back { align-self: flex-start; }.soliso-config-next { width: 100%; justify-content: center; }.soliso-config-summary.is-compact { padding: 0; }.soliso-config-summary-details { display: block; }.soliso-config-summary-details summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem; color: #fff; cursor: pointer; font: 700 .82rem/1.3 "Inter", sans-serif; list-style: none; }.soliso-config-summary-details summary::-webkit-details-marker { display: none; }.soliso-config-summary-details summary::after { color: var(--soliso-yellow); content: "+"; font: 400 1.25rem/1 "Inter", sans-serif; }.soliso-config-summary-details[open] summary { border-bottom: 1px solid rgb(255 255 255 / 20%); }.soliso-config-summary-details[open] summary::after { content: "−"; }.soliso-config-summary-details .soliso-config-summary-heading, .soliso-config-summary-details dl, .soliso-config-summary-details p { margin-right: 1rem; margin-left: 1rem; }.soliso-config-summary-details .soliso-config-summary-heading { margin-top: 1rem; }.soliso-config-summary-details p { padding-bottom: 1rem; }.soliso-config-summary p { grid-column: auto; } }

.soliso-config-photo-upload { margin-top: .25rem; padding: .95rem; background: #fff9e8; border: 1px solid #f0e2a8; border-radius: 6px; }
.soliso-config-photo-upload input[type="file"] { min-height: 0; padding: .65rem .7rem; color: #3d3e38; background: #fff; cursor: pointer; }
.soliso-config-photo-upload small { display: block; color: #686960; font: 400 .74rem/1.5 "Inter", sans-serif; }
.soliso-config-photo-list { display: grid; gap: .45rem; margin: .7rem 0 0; padding: 0; list-style: none; }
.soliso-config-photo-list li { display: flex; align-items: center; justify-content: space-between; gap: .7rem; padding: .6rem .7rem; color: #3d3e38; background: #fff; border: 1px solid #e0dccd; border-radius: 4px; font: 600 .74rem/1.35 "Inter", sans-serif; }
.soliso-config-photo-list button { padding: 0; color: #725300; background: transparent; border: 0; font: 700 .72rem/1.2 "Inter", sans-serif; text-decoration: underline; cursor: pointer; }
.soliso-config-photo-list button:focus-visible { outline: 3px solid rgb(255 198 41 / 45%); outline-offset: 2px; }
.soliso-config-photo-error { display: block; color: #8c2a1e; font: 700 .74rem/1.45 "Inter", sans-serif; }
@media (max-width: 640px) { .soliso-config-photo-list li { align-items: flex-start; flex-direction: column; } }

/* Standalone Soliso Screens product journey — Liso VPS card system with Soliso Yellow. */
.soliso-screens-configurator { padding: clamp(4rem, 8vw, 7rem) 0; background: #fff9e8; }
.soliso-screens-configurator-shell { max-width: 79rem; }
.soliso-screens-configurator .soliso-screen-offer-form { margin: 0; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.soliso-config-product-journey { display: grid; grid-template-columns: minmax(23rem, .86fr) minmax(0, 1.14fr); overflow: hidden; background: #fff; border: 1px solid #e8e4dd; border-radius: 6px; box-shadow: 0 16px 36px rgb(51 46 34 / 6%); }
.soliso-configurator-intro { max-width: 52rem; margin-bottom: clamp(2rem, 4vw, 3.25rem); }
.soliso-configurator-intro > p + p { margin-top: .75rem; }
.soliso-config-journey-stage { display: grid; align-content: start; min-width: 0; padding: clamp(1.25rem, 3vw, 2.25rem); background: #fff; }
.soliso-config-journey-stage .soliso-config-live-preview { position: relative; display: block; min-height: clamp(31rem, 45vw, 40rem); margin: 0; overflow: hidden; border: 1px solid #e8e4dd; border-radius: 6px; background: #f5f1ec; isolation: isolate; }
.soliso-config-journey-stage .soliso-config-product-render,
.soliso-config-journey-stage .soliso-config-live-preview-image,
.soliso-config-journey-stage .soliso-config-render-cloth,
.soliso-config-journey-stage .soliso-config-render-profile,
.soliso-config-journey-stage .soliso-config-render-housing,
.soliso-config-journey-stage .soliso-config-drawing { display: none; }
.soliso-config-render-stack { position: absolute; z-index: 1; inset: 7% 13%; display: grid; min-width: 0; min-height: 0; place-items: center; }
.soliso-config-render-stack img { grid-area: 1 / 1; display: block; width: 100%; max-width: 100%; height: 100%; max-height: 100%; min-width: 0; min-height: 0; object-fit: contain; object-position: center; filter: drop-shadow(0 16px 18px rgb(41 43 35 / 15%)); }
.soliso-config-render-fabric-image { z-index: 1; }
.soliso-config-render-profile-image { z-index: 2; }
.soliso-config-journey-stage .soliso-config-render-motor { position: absolute; z-index: 5; top: 15%; width: .84rem; height: .84rem; border: 2px solid #ffc629; border-radius: 50%; background: #fff; box-shadow: 0 0 0 3px rgb(41 43 35 / 12%); opacity: 0; transition: left 180ms ease-out, right 180ms ease-out, opacity 180ms ease-out; }
.soliso-config-journey-stage .soliso-config-render-cable { position: absolute; z-index: 5; top: 17%; right: 20%; width: 2px; height: 2.75rem; background: #ffc629; box-shadow: 0 0 0 1px rgb(41 43 35 / 14%); opacity: 0; transform-origin: top center; transition: opacity 180ms ease-out, right 180ms ease-out, top 180ms ease-out, transform 180ms ease-out; }
.soliso-config-journey-stage .soliso-config-live-preview.is-motor-left .soliso-config-render-motor { left: 24%; opacity: 1; }
.soliso-config-journey-stage .soliso-config-live-preview.is-motor-right .soliso-config-render-motor { right: 22%; opacity: 1; }
.soliso-config-journey-stage .soliso-config-live-preview[class*="is-cable-"] .soliso-config-render-cable { opacity: 1; }
.soliso-config-journey-stage .soliso-config-live-preview.is-cable-rear-bottom .soliso-config-render-cable { top: 67%; right: 21%; }
.soliso-config-journey-stage .soliso-config-live-preview.is-cable-top-rear .soliso-config-render-cable { top: 15%; right: 28%; }
.soliso-config-journey-stage .soliso-config-live-preview.is-cable-top-front .soliso-config-render-cable { top: 12%; right: 35%; }
.soliso-config-journey-stage .soliso-config-live-preview.is-cable-side .soliso-config-render-cable { top: 36%; right: 14%; transform: rotate(90deg); }
.soliso-config-journey-stage .soliso-config-live-preview.is-cable-through-guide .soliso-config-render-cable { top: 40%; right: 20%; }
.soliso-config-journey-stage .soliso-config-live-preview.is-cable-not-routed .soliso-config-render-cable { display: none; }
.soliso-config-render-measure { position: absolute; z-index: 5; padding: .35rem .48rem; color: #292b23; background: rgb(255 255 255 / 94%); border: 1px solid #e8e4dd; border-radius: .45rem; box-shadow: 0 5px 10px rgb(41 43 35 / 7%); font: 700 .65rem/1 "Inter", sans-serif; }
.soliso-config-render-measure--width { bottom: 5.4rem; left: 50%; transform: translateX(-50%); }
.soliso-config-render-measure--height { top: 46%; right: 7%; transform: rotate(-90deg); }
.soliso-config-stage-support { margin-top: 1.25rem; border-top: 1px solid #e8e4dd; }
.soliso-config-stage-tabs { display: flex; gap: 1rem; padding-top: .9rem; }
.soliso-config-stage-tabs button { padding: 0 0 .5rem; color: #72736b; background: transparent; border: 0; border-bottom: 2px solid transparent; font: 700 .7rem/1.2 "Inter", sans-serif; cursor: pointer; }
.soliso-config-stage-tabs button[aria-selected="true"] { color: #292b23; border-color: #ffc629; }
.soliso-config-stage-tab-panel { min-height: 7rem; padding-top: .4rem; }
.soliso-config-stage-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem 1rem; margin: .5rem 0 0; }
.soliso-config-stage-specs div { min-width: 0; }
.soliso-config-stage-specs dt { color: #77786f; font: 700 .6rem/1.2 "Inter", sans-serif; letter-spacing: .05em; text-transform: uppercase; }
.soliso-config-stage-specs dd { margin: .18rem 0 0; color: #292b23; font: 600 .73rem/1.35 "Inter", sans-serif; }
.soliso-config-stage-faq details { padding: .7rem 0; border-bottom: 1px solid rgb(41 43 35 / 11%); }
.soliso-config-stage-faq summary { display: flex; align-items: center; justify-content: space-between; gap: .75rem; color: #292b23; cursor: pointer; font: 700 .73rem/1.35 "Inter", sans-serif; list-style: none; }
.soliso-config-stage-faq summary::-webkit-details-marker { display: none; }
.soliso-config-stage-faq summary::after { color: #7a5a06; content: "+"; font-size: 1rem; }
.soliso-config-stage-faq details[open] summary::after { content: "−"; }
.soliso-config-stage-faq p { margin: .45rem 0 0; color: #60615a; font: 400 .72rem/1.5 "Inter", sans-serif; }
.soliso-config-journey-panel { min-width: 0; padding: clamp(1.5rem, 3vw, 2.75rem); }
.soliso-config-heading > span, .soliso-config-step-heading > span, .soliso-config-summary-heading > span { display: block; margin-bottom: .55rem; color: #7a5a06; font: 800 .68rem/1 "Inter", sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.soliso-config-heading h2 { margin: 0; color: #292b23; font: 600 clamp(1.9rem, 3vw, 2.65rem)/1.02 "DM Sans", sans-serif; letter-spacing: -.055em; }
.soliso-config-heading > p { max-width: 38rem; margin: .8rem 0 0; color: #62635b; font: 400 .92rem/1.6 "Inter", sans-serif; }
.soliso-config-progress { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .35rem; margin: 1.8rem 0 1.25rem; padding: 0; list-style: none; }
.soliso-config-progress li { display: grid; gap: .38rem; justify-items: center; color: #898a82; font: 700 .58rem/1.25 "Inter", sans-serif; letter-spacing: .01em; text-align: center; }
.soliso-config-progress li span { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border: 1px solid #e1ddd6; border-radius: 50%; color: #76776f; background: #fff; font-size: .72rem; }
.soliso-config-progress li b { font-weight: 700; }
.soliso-config-progress li.is-current, .soliso-config-progress li.is-complete { color: #292b23; }
.soliso-config-progress li.is-current span { color: #292b23; background: #ffc629; border-color: #ffc629; }
.soliso-config-progress li.is-complete span { color: #fff; background: #292b23; border-color: #292b23; }
.soliso-config-panel-step-meta { display: flex; gap: .55rem; align-items: baseline; padding: 0 0 .85rem; color: #585950; background: transparent; border-bottom: 1px solid #e8e4dd; font: 600 .75rem/1.35 "Inter", sans-serif; }
.soliso-config-panel-step-meta span { color: #8a6200; font-size: .66rem; letter-spacing: .04em; text-transform: uppercase; }
.soliso-config-main { margin-top: 1.4rem; }
.soliso-config-step-heading { margin-bottom: 1.3rem; }
.soliso-config-step-heading h3 { margin: 0; color: #292b23; font: 600 clamp(1.45rem, 2.25vw, 2rem)/1.1 "DM Sans", sans-serif; letter-spacing: -.045em; }
.soliso-config-step-heading p { max-width: 39rem; margin: .65rem 0 0; color: #64655d; font: 400 .9rem/1.6 "Inter", sans-serif; }
.soliso-config-fieldset { min-width: 0; margin: 1.2rem 0 0; padding: 0; border: 0; }
.soliso-config-fieldset legend { margin-bottom: .7rem; padding: 0; color: #3d3e38; font: 700 .78rem/1.2 "Inter", sans-serif; }
.soliso-config-fieldset legend small { color: #77786f; font-size: .72rem; font-weight: 500; }
.soliso-config-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .72rem; }
.soliso-config-choice-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.soliso-config-choice-grid--cable { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.soliso-config-choice-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.soliso-config-choice { width: 100%; min-height: 5.55rem; display: grid; gap: .32rem; align-content: center; padding: .85rem .95rem; color: #35362f; background: #fff; border: 1px solid #e8e4dd; border-radius: 6px; text-align: left; cursor: pointer; transition: border-color 160ms ease-out, background-color 160ms ease-out, transform 160ms ease-out; }
.soliso-config-choice:hover:not(:disabled), .soliso-config-choice:focus-visible { border-color: #ffc629; outline: 3px solid rgb(255 198 41 / 24%); outline-offset: 3px; }
.soliso-config-choice:active:not(:disabled) { transform: scale(.98); }
.soliso-config-choice b { font: 700 .84rem/1.28 "Inter", sans-serif; }
.soliso-config-choice > span:not(.soliso-config-choice-visual) { color: #686960; font: 400 .72rem/1.42 "Inter", sans-serif; }
.soliso-config-choice.is-active { background: #fff9e8; border-color: #ffc629; }
.soliso-config-choice.is-disabled { color: #85867e; background: #f5f1ec; cursor: not-allowed; }
.soliso-config-choice.is-invalid { border-color: #a4311d; }
.soliso-config-choice.has-visual { grid-template-columns: 3.7rem minmax(0, 1fr); column-gap: .75rem; }
.soliso-config-choice.has-visual > b, .soliso-config-choice.has-visual > span:not(.soliso-config-choice-visual) { grid-column: 2; }
.soliso-config-choice-visual { grid-column: 1; grid-row: 1 / span 2; width: 3.7rem; height: 3.35rem; overflow: hidden; border-radius: .45rem; background: #e6e2d7; }
.soliso-config-choice-visual--image { padding: 0; background: #f5f1ec; }
.soliso-config-choice-visual--image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.soliso-config-choice-visual--wall { background: linear-gradient(90deg, rgb(41 43 35 / 27%), transparent), url("../shared/images/soliso-home-gevel-zonwering.webp") center/cover; }
.soliso-config-choice-visual--recess { background: linear-gradient(90deg, rgb(41 43 35 / 20%), transparent), url("../shared/images/soliso-screens.webp") center/cover; }
.soliso-config-choice-visual--housing { background: linear-gradient(#262a2c 0 28%, #7c7e76 28% 34%, #3c403e 34% 100%); }
.soliso-config-choice-visual--square { background: linear-gradient(135deg, #303432 0 47%, #f4f1e7 47% 53%, #303432 53%); }
.soliso-config-choice-visual--round { border-radius: 50% 50% 3px 3px; background: radial-gradient(circle at 50% 100%, #f4f1e7 0 44%, #303432 45%); }
.soliso-config-choice-visual--motor-left, .soliso-config-choice-visual--motor-right { position: relative; background: #f5f2e8; }
.soliso-config-choice-visual--motor-left::after, .soliso-config-choice-visual--motor-right::after { position: absolute; top: 50%; width: 1rem; height: 1rem; border: 2px solid #292b23; border-radius: 50%; content: ""; transform: translateY(-50%); }
.soliso-config-choice-visual--motor-left::after { left: .6rem; }
.soliso-config-choice-visual--motor-right::after { right: .6rem; }
.soliso-config-choice-visual--cable { background: linear-gradient(90deg, #f5f2e8 47%, #ffc629 48% 53%, #f5f2e8 54%); }
.soliso-config-choice-grid--materials { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.soliso-config-choice-grid--materials .soliso-config-choice { min-height: 7.25rem; grid-template-columns: 1fr; padding: .7rem; }
.soliso-config-choice-grid--materials .soliso-config-choice > b, .soliso-config-choice-grid--materials .soliso-config-choice > span:not(.soliso-config-choice-visual) { grid-column: 1; }
.soliso-config-choice-grid--materials .soliso-config-choice-visual { display: block; grid-column: 1; grid-row: 1; width: 100%; height: 4.5rem; margin-bottom: .12rem; }
.soliso-config-measurements, .soliso-config-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin-top: .9rem; }
.soliso-config-measurements label, .soliso-config-contact-grid label { display: grid; gap: .42rem; color: #3d3e38; font: 700 .75rem/1.2 "Inter", sans-serif; }
.soliso-config-measurements input, .soliso-config-contact-grid input, .soliso-config-contact-grid textarea { width: 100%; min-height: 2.85rem; padding: .7rem .75rem; color: #292b23; background: #fff; border: 1px solid #d8d6cc; border-radius: .45rem; font: 400 .9rem/1.3 "Inter", sans-serif; }
.soliso-config-contact-grid textarea { min-height: 6rem; resize: vertical; }
.soliso-config-measurements input:focus, .soliso-config-contact-grid input:focus, .soliso-config-contact-grid textarea:focus { border-color: #a77b09; outline: 3px solid rgb(255 198 41 / 30%); outline-offset: 1px; }
.soliso-config-contact-full { grid-column: 1 / -1; }
.soliso-config-contact-grid em { color: #77786f; font-style: normal; font-weight: 500; }
.soliso-config-photo-upload { margin-top: .2rem; padding: .9rem; background: #fff9e8; border: 1px solid #f0e2a8; border-radius: 6px; }
.soliso-config-photo-upload input[type="file"] { min-height: 0; padding: .65rem .7rem; color: #3d3e38; background: #fff; cursor: pointer; }
.soliso-config-photo-upload small { display: block; color: #686960; font: 400 .74rem/1.5 "Inter", sans-serif; }
.soliso-config-photo-list { display: grid; gap: .45rem; margin: .7rem 0 0; padding: 0; list-style: none; }
.soliso-config-photo-list li { display: flex; justify-content: space-between; gap: .7rem; align-items: center; padding: .6rem .7rem; color: #3d3e38; background: #fff; border: 1px solid #e8e4dd; border-radius: .45rem; font: 600 .74rem/1.35 "Inter", sans-serif; }
.soliso-config-photo-list button { padding: 0; color: #725300; background: transparent; border: 0; font: 700 .72rem/1.2 "Inter", sans-serif; text-decoration: underline; cursor: pointer; }
.soliso-config-photo-error { display: block; color: #8c2a1e; font: 700 .74rem/1.45 "Inter", sans-serif; }
.soliso-config-field-note, .soliso-config-info, .soliso-config-status { margin: .85rem 0 0; padding: .85rem; color: #61625a; background: #fff9e8; border-left: 3px solid #ffc629; font: 400 .78rem/1.5 "Inter", sans-serif; }
.soliso-config-status.is-positive { border-left-color: #5f7d2d; }
.soliso-config-status.is-negative { color: #8c2a1e; border-left-color: #a4311d; }
.soliso-config-actions { display: flex; justify-content: space-between; gap: .8rem; align-items: center; margin-top: 1.35rem; padding-top: 1.35rem; border-top: 1px solid #e8e4dd; }
.soliso-config-back { padding: .75rem 0; color: #55564f; background: transparent; border: 0; font: 700 .8rem/1.2 "Inter", sans-serif; cursor: pointer; }
.soliso-config-back:disabled { opacity: .35; cursor: not-allowed; }
.soliso-config-next { margin: 0; }
.soliso-config-validation { min-height: 0; margin: .9rem 0 0; color: #a4311d; font: 700 .78rem/1.45 "Inter", sans-serif; }
.soliso-config-validation:not(.is-visible) { display: none; }
.soliso-config-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.soliso-form-note { margin: 1rem 0 0; color: #6a6b63; font: 400 .74rem/1.48 "Inter", sans-serif; }
.soliso-form-note.is-error { color: #a4311d; font-weight: 700; }
.soliso-form-note.is-success { color: #45651d; font-weight: 700; }
.soliso-form-note a { color: inherit; }
.soliso-config-noscript { margin: 1rem 0 0; color: #62635b; font: 400 .82rem/1.55 "Inter", sans-serif; }
@media (max-width: 980px) {
  .soliso-config-product-journey { grid-template-columns: 1fr; }
  .soliso-config-journey-stage { border-right: 0; border-bottom: 1px solid rgb(41 43 35 / 12%); }
  .soliso-config-journey-stage .soliso-config-live-preview { min-height: 29rem; }
}
@media (max-width: 640px) {
  .soliso-screens-configurator { padding: 4.25rem 0; }
  .soliso-config-product-journey { border-right: 0; border-left: 0; border-radius: 0; }
  .soliso-config-journey-stage, .soliso-config-journey-panel { padding: 1.15rem; }
  .soliso-config-journey-stage .soliso-config-live-preview { min-height: 29rem; }
  .soliso-config-render-stack { inset: 7% 12%; }
  .soliso-config-stage-specs { grid-template-columns: 1fr 1fr; }
  .soliso-config-stage-tab-panel { min-height: auto; }
  .soliso-config-stage-support .soliso-config-summary-details { margin: .4rem 0 0; color: #292b23; background: transparent; }
  .soliso-config-stage-support .soliso-config-summary-details summary { display: flex; justify-content: space-between; gap: .7rem; padding: .45rem 0; color: #292b23; cursor: pointer; font: 700 .73rem/1.3 "Inter", sans-serif; list-style: none; }
  .soliso-config-stage-support .soliso-config-summary-details summary::-webkit-details-marker { display: none; }
  .soliso-config-stage-support .soliso-config-summary-details summary::after { color: #7a5a06; content: "+"; font-size: 1rem; }
  .soliso-config-stage-support .soliso-config-summary-details[open] summary::after { content: "−"; }
  .soliso-config-progress { gap: .12rem; }
  .soliso-config-progress li { font-size: .5rem; }
  .soliso-config-progress li span { width: 1.55rem; height: 1.55rem; }
  .soliso-config-choice-grid, .soliso-config-choice-grid--four, .soliso-config-choice-grid--cable, .soliso-config-choice-grid--three { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
  .soliso-config-choice-grid--materials { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .soliso-config-choice-grid--materials .soliso-config-choice { min-height: 6.3rem; }
  .soliso-config-choice-grid--materials .soliso-config-choice-visual { height: 3.8rem; }
  .soliso-config-choice-grid--materials .soliso-config-choice > span:not(.soliso-config-choice-visual) { display: none; }
  .soliso-config-choice.has-visual { grid-template-columns: 1fr; padding: .7rem; }
  .soliso-config-choice.has-visual > b, .soliso-config-choice.has-visual > span:not(.soliso-config-choice-visual) { grid-column: 1; }
  .soliso-config-choice:not(.has-visual) { min-height: 4.8rem; }
  .soliso-config-choice-visual { display: none; }
  .soliso-config-measurements, .soliso-config-contact-grid { grid-template-columns: 1fr; }
  .soliso-config-photo-list li { align-items: flex-start; flex-direction: column; }
  .soliso-config-actions { align-items: stretch; flex-direction: column-reverse; }
  .soliso-config-back { align-self: flex-start; }
  .soliso-config-next { width: 100%; justify-content: center; }
  .soliso-config-render-measure--height { right: 3%; }
}
