/* Homepage only. Warm editorial layout, with native scrolling textile samples. */
.home-page{background:#fbf9f4;color:var(--ink)}
.home-page h1,.home-page h2,.home-page h3{font-family:Montserrat,system-ui,sans-serif;font-weight:500;letter-spacing:-.045em}
.home-page .section{padding-block:76px}
.home-page p{font-size:17px;line-height:1.8}
.home-page .kicker{font-size:12px;line-height:1.7;letter-spacing:.12em;color:#79502b}
.home-page .link-arrow{font-size:16px;line-height:1.6;min-height:48px}
.home-page .btn{font-size:16px;line-height:1.5;min-height:54px;padding:15px 21px}
.home-page section[id],.home-page aside[id]{scroll-margin-top:28px}
/* Keep the approved full-width curtain photograph and a light transition. */
.home-intro{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:clamp(600px,calc(100svh - 105px),760px);padding:60px max(var(--gutter),calc((100% - 1380px)/2)) 100px;background:#fbf9f4}
.home-scene{position:absolute;inset:0;z-index:0;margin:0;min-width:0}
.home-scene-image{position:absolute;inset:0;overflow:hidden;background:#fbf9f4}
.home-scene-image>img{width:100%;height:100%;object-fit:cover;object-position:60% center}
.home-scene-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#fbf9f4 0%,#fbf9f400 19%),linear-gradient(90deg,rgba(251,249,244,.98) 0%,rgba(251,249,244,.94) 32%,rgba(251,249,244,.78) 53%,rgba(251,249,244,.12) 82%,rgba(251,249,244,.04) 100%)}
.home-intro-heading,.home-intro-detail{position:relative;z-index:1;min-width:0;width:100%}
.home-intro-heading{max-width:790px}
.home-intro-heading>.kicker{margin:0 0 22px;color:#66553e}
.home-intro h1{font-size:clamp(50px,4.8vw,74px);line-height:1.12;letter-spacing:-.055em;color:#2b2b28;text-wrap:balance;margin:0}
.home-intro h1 em{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.04em;font-style:italic;font-weight:400;color:inherit;letter-spacing:-.04em;padding-top:5px}
.home-title-accent{color:var(--accent-deep)}
.home-intro-detail{max-width:590px;margin-top:26px}
.home-intro .home-intro-text{font-size:18px;line-height:1.75;max-width:560px;margin:0;color:#393a34}
.home-intro .actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px}
.home-intro .btn.secondary{background:#fffaf0dd;border-color:#9a8a76;color:#3b362e}
.home-intro .btn.secondary:hover{background:#fffaf0;border-color:#6d5b45}
.home-service-note{display:flex;align-items:center;flex-wrap:wrap;gap:6px 23px;list-style:none;margin:23px 0 0;padding:0;font-size:14px;line-height:1.7;color:#514b40}
.home-service-note li{display:flex;align-items:center;gap:9px;min-height:44px}
.home-service-note li:before{content:"";width:5px;height:5px;border-radius:50%;background:#9d5b23;flex:none}
.home-service-note a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.home-scene-caption{position:absolute;bottom:20px;right:max(var(--gutter),calc((100% - 1380px)/2));max-width:calc(100% - var(--gutter)*2);padding:4px 12px;background:#fbf9f4ed;border:1px solid #c5b8a466;border-radius:12px}
.home-photo-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;color:#4c4439;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:5px}
.home-section-title{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:end;margin-bottom:36px}
.home-section-title h2{font-size:clamp(32px,3.2vw,46px);line-height:1.2}
.home-section-title>p{max-width:510px}
.home-section-title>.link-arrow{justify-self:end}
/* One short process, with the explanation available on demand. */
.home-order-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:0}
.home-order-steps li{min-width:0}
.home-page .home-order-steps details{border:0;border-top:1px solid #cfc5b7}
.home-order-steps summary{min-height:154px;display:flex;align-items:flex-start;gap:13px;padding:23px 25px 22px 0;position:relative;cursor:pointer;list-style:none}
.home-order-steps summary::-webkit-details-marker{display:none}
.home-order-steps .step-no{font-size:13px;line-height:1.8;color:#895323;flex:none;padding-top:3px}
.home-order-steps strong{display:block;font-family:Montserrat,system-ui,sans-serif;font-size:22px;font-weight:500;letter-spacing:-.035em;line-height:1.35}
.home-order-steps small{display:block;font-size:15px;line-height:1.7;color:#625e56;margin-top:10px}
.home-order-steps summary:after{content:"+";position:absolute;right:0;top:22px;color:#865126;font-size:24px;line-height:1}
.home-order-steps details[open] summary:after{content:"−"}
.home-order-steps .process-detail{padding:0 6px 22px 28px}
.home-order-steps .process-detail p{font-size:16px;line-height:1.8}
.home-company-note{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 30px;border-top:1px solid #ded6ca;padding-top:15px}
.home-company-note p{font-size:15px;color:#625e56}
/* Concrete quality benefits; the price promise stays secondary. */
.home-assurance-section{background:#eee7dc;padding-block:62px}
.home-assurance{display:grid;grid-template-columns:1.35fr .85fr;gap:9%;align-items:center}
.home-quality{min-width:0}
.home-quality h2{font-size:clamp(31px,3vw,43px);line-height:1.25;margin-bottom:29px}
.home-quality-list article+article{border-top:1px solid #d0c5b5;margin-top:21px;padding-top:21px}
.home-quality-list h3{font-size:23px;line-height:1.4;margin-bottom:9px}
.home-quality-list p{max-width:650px}
.home-quality-list .link-arrow{margin-top:8px}
.home-price-promise{background:#faf6ed;padding:32px;border:1px solid #e0d5c4;border-radius:24px;min-width:0}
.home-price-promise h2{font-size:clamp(26px,2.4vw,35px);line-height:1.3;margin:18px 0}
.home-price-promise .link-arrow{margin-top:20px}
.home-terms-link{display:block;width:fit-content;font-size:14px;line-height:1.65;min-height:44px;padding-block:11px;text-decoration:underline;text-underline-offset:4px;color:#66533f}
/* Six clear product entrances. Screen intentionally follows the small cards. */
.home-collection{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 28px}
.home-collection-card{min-width:0;display:block}
.home-collection-card figure{position:relative;border-radius:var(--radius-photo);overflow:hidden;background:#eae2d5}
.home-collection-card img{width:100%;height:auto;aspect-ratio:1.28;object-fit:cover;object-position:center 42%}
.home-collection-card h3{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:23px;line-height:1.4;margin-top:16px;letter-spacing:-.035em;overflow-wrap:anywhere}
.home-collection-card h3 .arrow{color:#91520f;flex:none;font-size:22px}
.home-collection-card p{font-size:16px;line-height:1.7;margin-top:7px}
.home-collection-card:hover h3{text-decoration:underline;text-underline-offset:5px}
.home-collection-card[data-bestseller="true"]{grid-column:span 2}
.home-collection-card[data-bestseller="true"] h3{font-size:29px}
.home-collection-card[data-showcase="plisse"]{grid-row:span 2;display:grid;grid-template-rows:minmax(0,1fr) auto auto}
.home-collection-card[data-showcase="plisse"] figure{min-height:0;border-top-left-radius:40px}
.home-collection-card[data-showcase="plisse"] img{height:100%;aspect-ratio:auto;object-position:center 46%}
.home-collection-card[data-showcase="screen"]{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr;gap:0 6%;background:#eee8de;border-radius:24px;overflow:hidden}
.home-collection-card[data-showcase="screen"] figure{grid-row:1/3;border-radius:0}
.home-collection-card[data-showcase="screen"] img{height:100%;aspect-ratio:1.6}
.home-collection-card[data-showcase="screen"] h3{align-self:end;margin:0;padding:30px 30px 14px 0}
.home-collection-card[data-showcase="screen"] p{align-self:start;margin:0;padding:0 30px 30px 0}
.home-bestseller{position:absolute;top:16px;left:16px;background:#fffaf0f2;border:1px solid #ddd1bb;border-radius:8px;padding:8px 12px;font-size:12px;line-height:1.5;font-weight:600;color:#604a31}
.home-range-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 28px;margin-top:25px}
/* Three genuine projects. Static links work without any JavaScript. */
.home-projects-section{background:#eee8de;padding-block:65px}
.home-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.home-project-photo{min-width:0;display:block}
.home-project-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-photo);object-position:center 42%}
.home-project-photo:first-child img{object-position:center 49%}
.home-project-photo figcaption{display:flex;justify-content:space-between;gap:12px;font-size:15px;line-height:1.7;margin-top:13px;color:#60594e}
.home-project-photo figcaption .arrow{flex:none;font-size:21px}
.home-project-photo:hover figcaption{text-decoration:underline;text-underline-offset:4px}
.home-gallery-link{margin-top:25px}
.home-page .home-reviews{padding-block:48px}
.home-google-panel{display:block;border-block:1px solid #d8cfc1;padding-block:30px}
.home-google-panel h2{font-size:clamp(29px,3vw,41px);line-height:1.25}
.home-google-panel p:not(.kicker){margin-top:15px}
.home-review-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}
.home-review-rating{display:flex;align-items:center;gap:12px;flex:none;color:var(--accent-deep);white-space:nowrap}
.home-review-rating>span{font-size:24px;letter-spacing:3px;line-height:1}
.home-review-rating>strong{font-size:19px;color:var(--ink);font-weight:500}
.home-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.home-review-card{display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-width:0;margin:0;padding:26px;border:1px solid #d8cfc1;border-radius:18px;background:#fffdf9}
.home-review-card blockquote{margin:0;padding:0;border:0}
.home-page .home-review-card blockquote p{font-family:Georgia,'Times New Roman',serif;font-size:23px;line-height:1.5;margin:0;color:#38352f}
.home-review-card figcaption{font-size:16px;font-weight:500;line-height:1.6}
.home-review-card figcaption small{display:block;margin-top:3px;font-size:12px;font-weight:400;color:#686055}
.home-page .home-google-panel>.btn{width:auto;display:inline-flex;font-size:14px;min-height:44px;padding:10px 14px;gap:16px;margin-top:20px}
.home-page .home-advice{background:#f3efe7;padding-block:58px}
.home-advice .home-section-title{margin-bottom:27px}
.home-advice .news-grid{gap:28px}
.home-advice .news-card img{aspect-ratio:1.85;object-fit:cover;border-radius:var(--radius-photo)}
.home-advice .news-card h3{font-size:23px;line-height:1.4;letter-spacing:-.035em}
.home-advice .news-card p{font-size:16px;line-height:1.75}
.home-advice .news-card .news-meta{font-size:12px}
.home-page .quiet-cta{background:transparent;padding:0 0 32px;border:0;border-radius:0;border-bottom:1px solid #d2cabc;grid-template-columns:1.35fr 1fr;gap:35px}
.home-page .quiet-cta h2{font-family:Montserrat,system-ui,sans-serif;color:#292925;font-size:clamp(32px,3vw,43px);font-weight:500;line-height:1.2}
.home-page .quiet-cta .kicker{color:#79502b}
.home-page .quiet-cta p:not(.kicker){color:#53524d;max-width:620px;margin-top:18px}
.home-coverage{display:flex;justify-content:space-between;align-items:center;gap:12px 35px;margin-top:22px}
.home-coverage p{font-size:15px;max-width:620px}
.home-coverage .link-arrow{flex:none}
@media(max-width:1050px){
 .home-intro{min-height:630px;padding-top:48px;padding-bottom:95px}
 .home-intro h1{font-size:60px;max-width:720px}
 .home-scene-image:after{background:linear-gradient(0deg,#fbf9f4 0%,#fbf9f400 20%),linear-gradient(90deg,rgba(251,249,244,.97) 0%,rgba(251,249,244,.91) 57%,rgba(251,249,244,.35) 100%)}
 .home-order-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}
 .home-order-steps summary{min-height:135px}
 .home-assurance{gap:5%;grid-template-columns:1.15fr .85fr}
 .home-price-promise{padding:26px}
 .home-collection{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-collection-card[data-showcase="plisse"]{grid-column:1/-1;grid-row:auto}
 .home-collection-card[data-showcase="plisse"] img{height:auto;aspect-ratio:1.6}
 .home-project-grid{gap:20px}
 .home-page .quiet-cta{grid-template-columns:1fr}
 .home-page .quiet-cta .actions{justify-content:flex-start}
 .home-coverage{align-items:flex-start;flex-direction:column;gap:4px}
}
@media(max-width:700px){
 .home-page .section{padding-block:48px}
 .home-page p{font-size:16px;line-height:1.8}
 .home-intro{min-height:0;padding:34px var(--gutter) 86px;justify-content:flex-start}
 .home-intro-heading>.kicker{font-size:11px;letter-spacing:.06em;margin-bottom:16px;max-width:340px}
 .home-intro h1{font-size:clamp(35px,9.2vw,51px);line-height:1.14;max-width:570px}
 .home-intro h1 em{font-size:1.03em}
 .home-scene-image>img{object-position:68% center}
 .home-scene-image:after{background:linear-gradient(0deg,#fbf9f4 0%,rgba(251,249,244,.96) 24%,rgba(251,249,244,.86) 66%,rgba(251,249,244,.69) 100%)}
 .home-intro-detail{margin-top:20px;max-width:100%}
 .home-intro .home-intro-text{font-size:16px;line-height:1.75;max-width:520px}
 .home-intro .actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:22px;max-width:390px}
 .home-intro .btn{width:100%;justify-content:space-between;padding-inline:18px}
 .home-service-note{font-size:13px;gap:0 17px;margin-top:15px}
 .home-scene-caption{left:var(--gutter);right:auto;bottom:16px}
 .home-section-title{grid-template-columns:1fr;gap:18px;margin-bottom:28px}
 .home-section-title h2{font-size:33px;line-height:1.22}
 .home-section-title>.link-arrow{justify-self:start}
 .home-order-steps{grid-template-columns:1fr;gap:0}
 .home-order-steps summary{min-height:104px;gap:16px;padding:22px 30px 22px 0}
 .home-order-steps strong{font-size:23px}
 .home-order-steps small{font-size:15px;margin-top:7px}
 .home-order-steps .process-detail{padding-left:30px}
 .home-company-note{padding-top:17px;gap:5px}
 .home-company-note p{font-size:15px}
 .home-assurance-section{padding-block:44px}
 .home-assurance{grid-template-columns:1fr;gap:30px}
 .home-quality h2{font-size:32px;margin-bottom:24px}
 .home-quality-list h3{font-size:23px}
 .home-price-promise{padding:26px 24px;border-radius:20px}
 .home-price-promise h2{font-size:29px}
 .home-collection{gap:28px 20px}
 .home-collection-card h3{font-size:22px}
 .home-collection-card[data-bestseller="true"] h3{font-size:28px}
 .home-collection-card[data-showcase="plisse"]{display:block}
 .home-collection-card[data-showcase="plisse"] img{height:auto;aspect-ratio:1.4}
 .home-collection-card[data-showcase="screen"]{display:block}
 .home-collection-card[data-showcase="screen"] img{height:auto;aspect-ratio:1.55}
 .home-collection-card[data-showcase="screen"] h3{padding:0 22px;margin-top:22px}
 .home-collection-card[data-showcase="screen"] p{padding:0 22px 25px;margin-top:10px}
 .home-bestseller{top:13px;left:13px}
 .home-projects-section{padding-block:46px}
 .home-project-grid{grid-template-columns:1fr;gap:28px}
 .home-project-photo img{aspect-ratio:1.45;object-position:center 42%}
 .home-project-photo:first-child img{object-position:center 43%}
 .home-project-photo figcaption{font-size:15px;margin-top:11px}
 .home-page .home-reviews{padding-block:35px}
 .home-google-panel{display:block;padding-block:26px}
 .home-google-panel h2{font-size:31px}
 .home-google-panel>.btn{margin-top:22px;width:100%;justify-content:space-between}
 .home-page .home-advice{padding-block:45px}
 .home-advice .news-grid{gap:29px}
 .home-advice .news-card{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:18px;align-items:start}
 .home-advice .news-card>img{grid-row:1/4;aspect-ratio:.9}
 .home-advice .news-card .news-meta{padding:0;font-size:11px}
 .home-advice .news-card h3{font-size:21px;line-height:1.4;margin-top:8px}
 .home-advice .news-card p{display:none}
 .home-page .quiet-cta{padding:0 0 26px;gap:24px}
 .home-page .quiet-cta h2{font-size:33px}
 .home-page .quiet-cta .actions{margin-top:0}
 .home-page .quiet-cta .btn{width:100%;justify-content:space-between;white-space:normal}
 .home-coverage{gap:5px;margin-top:20px}
 .home-coverage p{font-size:15px}
}
@media(max-width:480px){
 .home-collection{grid-template-columns:1fr;gap:27px}
 .home-collection-card[data-bestseller="true"]{grid-column:auto}
 .home-collection-card:not([data-bestseller]){display:grid;grid-template-columns:110px minmax(0,1fr);gap:0 17px;align-items:start}
 .home-collection-card:not([data-bestseller]) figure{grid-row:1/3;border-radius:14px}
 .home-collection-card:not([data-bestseller]) img{aspect-ratio:3/4;object-fit:contain;object-position:center}
 .home-collection-card:not([data-bestseller]) h3{font-size:21px;margin-top:0;gap:6px}
 .home-collection-card:not([data-bestseller]) h3 .arrow{font-size:19px}
 .home-collection-card:not([data-bestseller]) p{font-size:16px;line-height:1.6;margin-top:8px}
}
@media(max-width:370px){
 .home-intro{padding-top:27px}
 .home-intro h1{font-size:32px}
 .home-intro-heading>.kicker{font-size:11px}
 .home-price-promise{padding-inline:20px}
 .home-collection-card:not([data-bestseller]){grid-template-columns:95px minmax(0,1fr);gap:0 15px}
 .home-collection-card:not([data-bestseller]) h3{font-size:20px}
 .home-section-title h2,.home-page .quiet-cta h2{font-size:31px}
}

/* Small, native horizontal strip, fed by the approved textile catalogue. */
.home-textile-preview{margin:16px 0 4px;min-width:0;max-width:100%}
.home-textile-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.home-textile-controls{display:flex;gap:6px;flex:none}
.home-textile-controls button{display:inline-flex;justify-content:center;align-items:center;width:44px;height:44px;padding:0;border:1px solid #bcb2a3;border-radius:50%;background:#fffdf9;color:var(--ink);font:inherit;font-size:22px;cursor:pointer}
.home-textile-controls button:disabled{opacity:.4;cursor:default}
.home-textile-controls button:not(:disabled):hover{background:#eee7db;border-color:#94816a}
.home-page .home-textile-note{font-size:13px;line-height:1.7;color:#625e56}
.home-textile-swipe{display:inline}
.home-textile-strip{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(132px,38%,168px);gap:12px;list-style:none;margin:0;padding:8px 8px 12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scroll-padding-inline:8px;scrollbar-width:thin;max-width:100%}
.home-textile-strip li{display:flex;min-width:0;scroll-snap-align:start}
.home-textile-card{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;background:#faf7f0;border:1px solid #d8cfc1;border-radius:12px;overflow:hidden}
.home-textile-card img{display:block;flex:0 0 auto;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fdfbf7;border-bottom:1px solid #e2d8c8}
.home-textile-caption{display:flex;flex:1;flex-direction:column;padding:10px 12px 12px;line-height:1.5;overflow-wrap:anywhere}
.home-textile-caption small{display:block;min-height:3em;font-size:12px;color:#71604c}
.home-textile-caption strong{display:block;min-height:3em;font-size:15px;font-weight:500;color:#292925;margin-top:3px}
.home-textile-card:hover strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.home-textile-swipe{display:inline}.home-page .home-google-panel>.btn{width:auto;justify-content:flex-start}}
@media(max-width:900px){.home-review-grid{grid-template-columns:1fr}.home-review-heading{align-items:flex-start;flex-direction:column;gap:18px}.home-review-card{padding:23px;gap:18px}.home-page .home-review-card blockquote p{font-size:22px}}

.home-textile-card{position:relative}.home-textile-card .textile-bestseller{position:absolute;top:8px;left:8px;padding:5px 8px;background:#365849;color:white;border-radius:3px;font-size:10px;font-weight:700;z-index:1}
.home-intro .btn.secondary{border-color:var(--button-edge)}
.home-intro .btn.secondary:hover{border-color:#b6ada0}
