/* Iteration 5: lower-page refinements. Hero rules intentionally unchanged. */
.product-carousel{position:relative}.product-grid{scrollbar-width:none;padding-bottom:0;scroll-snap-type:x proximity}.product-grid::-webkit-scrollbar{display:none}.carousel-controls{position:absolute;inset:0;pointer-events:none;margin:0}.carousel-controls>div{display:contents}.carousel-controls button{pointer-events:auto;position:absolute;top:35%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:#faf9f3f2;border:1px solid #d4d1c4;box-shadow:0 4px 15px #3e372018;z-index:2}.products-prev{left:-24px}.products-next{right:-24px}.carousel-controls button:disabled{opacity:0;pointer-events:none}.catalog-row{justify-content:center;padding-top:28px}.catalog-row .catalog-cta{margin:0;min-width:260px;justify-content:space-between}.collection .catalog-row{border:0}
.materials{background:#f6f2e9 url('assets/materials-backdrop.png') left center/cover no-repeat;padding:60px 0 48px}.materials-layout{grid-template-columns:29% 67%;align-items:center}.materials-intro{padding:24px 18px;background:#faf8f1e8;box-shadow:0 12px 45px #77664d08}.materials-intro h2{font-size:47px;margin-top:20px}.materials-intro>p:not(.eyebrow){font-size:14px;color:#55574d}.material-mosaic{grid-template-rows:190px 190px;gap:12px}.material-tile{box-shadow:0 8px 24px #4b412116}.tile-label{top:auto;bottom:14px;left:14px;padding:7px 12px;background:#faf8f0ed;max-width:calc(100% - 64px)}.tile-title{font-size:29px}.tile-tag{display:none}.tile-plus{width:28px;height:28px;right:10px;bottom:15px}.material-info{min-height:0;padding:0}.material-info>div{margin-top:14px;background:#faf8f2f5;box-shadow:0 6px 20px #584b3010}.material-info h3{font-size:25px}.material-info p{font-size:13px}.materials-interactive{position:relative}
.workshop{grid-template-columns:46% 47%;gap:7%;align-items:center;padding-top:75px;padding-bottom:75px}.workshop-visual{min-height:0;height:580px}.workshop-visual img{width:100%;height:100%;object-fit:cover;object-position:center}.workshop-content{padding:0}.workshop-content h2{font-size:46px;margin:18px 0 30px}.workshop-points details{border:0;border-bottom:1px solid #dedbd0;padding:0 17px;transition:background .25s}.workshop-points details[open]{background:#efefe5;border-bottom-color:transparent}.workshop-points summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;font:400 25px/1.2 var(--display);padding:19px 0;min-height:62px}.workshop-points summary::-webkit-details-marker{display:none}.workshop-points summary:after{content:'+';font:300 24px/1 Arial;color:var(--action)}.workshop-points details[open] summary:after{content:'−'}.workshop-points details[open] summary{color:var(--action-hover)}.workshop-points p{font-size:14px;line-height:1.8;margin:0;padding:0 28px 20px 0}.workshop-points summary:focus-visible{outline:2px solid var(--action);outline-offset:3px}
.order-section{background:transparent;padding:24px 0 55px;margin-bottom:25px}.order-section .section-heading{margin-bottom:35px}.order-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px}.order-steps li,.order-steps li:first-child,.order-steps li:last-child{border:0;padding:0;display:flex;flex-direction:column;min-width:0}.step-marker{display:flex;align-items:center;gap:16px;margin-bottom:20px}.step-marker:after{content:'';height:1px;background:#c4c5b8;flex:1}.order-steps .step-marker span{font:400 27px/1 var(--display);color:var(--text);border:1px solid #999e8c;width:43px;height:43px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.order-steps h3{font-size:28px;line-height:1.13;min-height:64px;margin:0 0 16px}.order-steps p{font-size:13px;line-height:1.8;min-height:94px;margin:0 0 24px;color:var(--text-muted)}.step-scene{aspect-ratio:1.42;background-image:url('assets/order-scenes.png');background-size:202% 202%;width:100%;margin-top:auto}.step-scene-1{background-position:left top}.step-scene-2{background-position:right top}.step-scene-3{background-position:left bottom}.step-scene-4{background-position:right bottom}.faq{padding-top:35px;padding-bottom:65px}.faq h2{font-size:46px}
.final-cta{background:#eee8dd url('assets/enquiry-backdrop.png') center center/cover no-repeat;padding:75px 0 95px}.final-inner{grid-template-columns:44% 49%;gap:7%;align-items:center}.final-copy{padding:30px 25px;background:#faf7efdf}.final-copy h2{font-size:clamp(42px,4vw,62px);white-space:nowrap;letter-spacing:-1.4px}.final-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;max-width:360px}.final-copy .eyebrow{font-size:10px;letter-spacing:1.4px}.enquiry-form{background:#fcfbf6f5;box-shadow:0 18px 55px #55442a13;padding:35px}.enquiry-form textarea{min-height:85px}
@media(min-width:761px) and (max-width:1100px){.materials-layout{grid-template-columns:1fr;gap:25px}.materials-intro{background:transparent;box-shadow:none;padding:0}.material-mosaic{grid-template-rows:195px 195px}.workshop-visual{height:560px}.workshop-content h2{font-size:37px}.workshop-points summary{font-size:24px}.order-steps{grid-template-columns:1fr 1fr;gap:30px}.order-steps p{min-height:70px}.final-inner{grid-template-columns:1fr 1fr;gap:4%}.final-copy{padding:20px}.final-copy h2{font-size:38px;letter-spacing:-1px}.final-copy .eyebrow{font-size:9px}}
@media(max-width:760px){.carousel-controls button{width:40px;height:40px;top:32%}.products-prev{left:-12px}.products-next{right:-12px}.catalog-row{padding-top:23px}.materials{padding:36px 0;background-position:35% center}.materials-layout{display:block}.materials-intro{padding:18px;background:#faf8f1ee;margin-bottom:22px}.materials-intro h2{font-size:39px}.material-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:220px 175px;gap:10px}.tile-label{left:8px;bottom:12px;padding:7px 9px;max-width:calc(100% - 40px)}.tile-title{font-size:25px}.tile-plus{right:6px;width:23px;height:23px;bottom:14px;font-size:18px}.material-info>div{margin-top:12px}.workshop{padding:38px 0;gap:25px}.workshop-visual{height:380px}.workshop-visual img{object-position:center 48%}.workshop-content h2{font-size:39px;margin-bottom:22px}.workshop-points summary{font-size:25px}.workshop-points p{font-size:13px}.order-section{padding:20px 0 30px}.order-section .section-heading{margin-bottom:25px}.order-steps{grid-template-columns:1fr;gap:30px}.order-steps li{display:grid!important;grid-template-columns:44px 1fr;gap:0 15px}.step-marker{grid-column:1;grid-row:1/4;margin:0;display:flex;flex-direction:column;height:100%;gap:15px}.step-marker:after{width:1px;min-height:50px;flex:1}.order-steps h3{font-size:29px;min-height:0;grid-column:2;margin-bottom:12px}.order-steps p{grid-column:2;min-height:0;font-size:13px;margin-bottom:18px}.step-scene{grid-column:2;aspect-ratio:1.42}.faq{padding-top:15px;padding-bottom:35px}.faq h2{font-size:39px}.final-cta{padding:35px 0 50px;background-position:60% center}.final-inner{display:block}.final-copy{padding:22px 20px}.final-copy h2{font-size:39px;letter-spacing:-.8px;white-space:normal}.final-copy>p:not(.eyebrow){font-size:14px}.enquiry-form{padding:25px 20px;margin-top:18px}}
@media(prefers-reduced-motion:reduce){.workshop-points details{transition:none}}
@media(min-width:1101px){.order-steps p{min-height:72px;font-size:14px;margin-bottom:22px}}
.carousel-controls button{top:50%}
/* Stable disclosure slot: all four texts size one shared grid cell, even when hidden. */
.product-grid{scroll-snap-type:none;scroll-behavior:auto}
.material-info{display:grid;grid-template-columns:minmax(0,1fr);padding-top:14px}
.material-info>div{grid-area:1/1;margin:0;align-self:stretch;animation:material-fade .22s ease}
.material-info>div[hidden]{display:grid!important;visibility:hidden;pointer-events:none;animation:none}
@keyframes material-fade{from{opacity:0}to{opacity:1}}
.order-steps .step-marker span{font:500 15px/1 var(--body);font-variant-numeric:tabular-nums;letter-spacing:0;padding:0;display:flex;align-items:center;justify-content:center}
@media(max-width:1100px){.materials-intro{background:#faf8f1f5;padding:22px}.material-info>div{background:#faf8f2fa}}
@media(max-width:760px){.materials-intro{padding:18px}.material-info>div,.material-info>div[hidden]{display:block!important}}
@media(prefers-reduced-motion:reduce){.material-info>div{animation:none}}
@media(max-width:360px){.header{gap:8px}.header-cta{padding-inline:12px}.header .brand>span{font-size:30px;letter-spacing:7px}.header .brand small{font-size:5px;letter-spacing:.6px}}
/* Keep material intro and imagery in row one; description gets its own row. */
.materials-layout{align-items:start;row-gap:0}
@media(min-width:901px){
 .materials-layout{display:grid;grid-template-columns:29% 67%;column-gap:4%}
 .materials-interactive{display:contents}
 .materials-intro{grid-column:1;grid-row:1;align-self:start;display:block;margin:0}
 .material-mosaic{grid-column:2;grid-row:1}
 .material-info{grid-column:2;grid-row:2}
}
@media(min-width:901px) and (max-width:1100px){.materials-intro h2{font-size:37px;margin:20px 0}.materials-intro>p:not(.eyebrow){font-size:13px}.materials-intro{padding:20px 16px}}
@media(min-width:761px){
 .workshop{align-items:start}
 .workshop-points.proof-stable{height:var(--proof-total-height);overflow-anchor:none}
 .workshop-points.proof-stable details[open]>p{height:var(--proof-answer-height);overflow:auto;animation:proof-fade .2s ease}
}
@keyframes proof-fade{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.workshop-points.proof-stable details[open]>p{animation:none}}
