.door-main{max-width:1320px;margin:auto;padding:24px 5% 70px}.door-main h1{font:clamp(2rem,4vw,3.3rem) Georgia,serif;margin:20px 0 30px}.door-breadcrumb{font-size:.9rem;color:var(--muted)}.door-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.door-card{background:white;border:1px solid #d9ded7;padding:22px}.door-card h2{font:1.85rem Georgia,serif;margin:20px 0 12px}.door-photo{background:white;border:0;padding:0;width:100%;cursor:zoom-in}.door-photo img{width:100%;height:290px;object-fit:contain}.door-card .price{font-size:1.45rem;font-weight:bold}.door-button{display:block;background:var(--green);color:white;text-align:center;padding:15px 20px;text-decoration:none;border:0;font:inherit;cursor:pointer}.door-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:white;padding:30px;border:1px solid #d9ded7}.door-gallery .door-photo img{height:430px}.door-thumbs{display:flex;gap:12px;margin-top:18px}.door-thumbs button{background:white;border:1px solid #ced6cd;padding:6px;cursor:pointer}.door-thumbs img{width:90px;height:90px;object-fit:contain}.door-intro h1{margin-top:0}.door-intro li{margin:10px 0;line-height:1.5}.door-price{font-size:1.8rem;font-weight:bold}.door-secondary-links{display:flex;gap:20px;flex-wrap:wrap;margin:20px 0}.door-section{margin-top:32px;background:white;padding:25px;border:1px solid #d9ded7}.door-section h2{font:1.85rem Georgia,serif;margin-top:0}.door-section p{line-height:1.65}.door-controls{display:flex;gap:20px;flex-wrap:wrap;margin:20px 0}.door-controls label{display:flex;align-items:center;gap:8px}.door-controls select{font:inherit;padding:10px;background:white;border:1px solid #a9b1a4}.door-table-wrap{overflow:auto}.door-table{border-collapse:collapse;width:100%;font-size:.95rem}.door-table th,.door-table td{text-align:left;padding:14px 12px;border-bottom:1px solid #d9ded7}.door-table th{background:var(--cream);white-space:nowrap}.door-table td:nth-child(3){white-space:nowrap}.door-table td:last-child{white-space:nowrap;font-weight:bold}.door-section summary{cursor:pointer;font-size:1.2rem;font-weight:bold}.door-section details p{margin:20px 0}.door-link-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px;padding-left:22px;line-height:1.5}.door-link-list span{display:block;font-size:.9rem;color:var(--muted)}#photo-dialog{border:0;padding:20px;max-width:95vw;max-height:95vh;background:white}#photo-dialog::backdrop{background:#000b}#photo-dialog button{display:block;margin:0 0 12px auto;background:var(--green);color:white;padding:10px 20px;border:0;font:inherit;cursor:pointer}#photo-dialog img{max-height:80vh;max-width:85vw;object-fit:contain;margin:auto}.door-error{padding:25px;background:white}.photo-hint{text-align:center;font-size:.9rem;color:var(--muted);margin:12px 0}.door-count{font-size:.9rem;color:var(--muted)}@media(max-width:800px){.door-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.door-intro{grid-template-columns:1fr;gap:25px;padding:20px}.door-gallery .door-photo img{height:340px}.door-link-list{grid-template-columns:1fr}.door-photo img{height:230px}}@media(max-width:520px){.door-grid{grid-template-columns:1fr}.door-card{padding:20px}.door-photo img{height:285px}.door-section{padding:18px}.door-controls{flex-direction:column;align-items:flex-start}.door-table th,.door-table td{padding:12px 9px}.door-main{padding-top:12px}}
/* Keep catalogue photos proportional when their cards become narrower. */
.door-card > a:first-child{display:block}
.door-card > a:first-child img{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain}
.door-basket-open{font:inherit;border:1px solid #a9b1a4;background:transparent;color:var(--ink);padding:10px 14px;cursor:pointer}.door-quantity{width:78px;font:inherit;padding:10px;border:1px solid #a9b1a4;border-radius:0}.door-table td:nth-child(4){white-space:nowrap;font-weight:bold}.door-selection{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:18px}.door-selection p{flex-basis:100%;margin:0}.door-selection .door-button{margin-left:auto}.door-main #add-selected-doors{font-size:1rem}#basket-dialog,#accessories-dialog,#payment-dialog,#delivery-dialog{font-size:1rem}@media(max-width:520px){.door-selection .door-button{width:100%;margin-left:0}.door-table{font-size:.9rem}.door-basket-open{padding:8px 10px}}
.door-support-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:24px}.door-support-card{border:1px solid #d9ded7;padding:15px;background:white}.door-support-card a{display:block;text-decoration:none}.door-support-card a:hover h3{text-decoration:underline}.door-support-card img{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain}.door-support-card h3{font-size:1rem;line-height:1.5;margin:14px 0 8px}.door-support-card p{font-size:.95rem;margin:0}@media(max-width:900px){.door-support-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.door-support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.door-support-card{padding:10px}}@media(max-width:380px){.door-support-grid{grid-template-columns:1fr}}
.door-grouped{display:block}.door-grouped>section+section{margin-top:44px}.door-group-heading{font:2rem Georgia,serif;margin:0 0 22px}.door-grouped .door-grid{margin-bottom:0}
.door-option-info summary{font-size:inherit;font-weight:normal}.door-option-info p{font-size:.95rem;min-width:200px;max-width:440px}.door-option-info img{width:220px;height:auto;object-fit:contain}.door-selection button:disabled{opacity:.6;cursor:wait}
/* Match the flooring catalogue: four cards across, with responsive rows. */
.door-grouped .door-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}
@media(max-width:1000px){.door-grouped .door-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.door-grouped .door-grid{grid-template-columns:1fr;gap:24px}}
.door-collections{padding:0;background:transparent}.door-categories-page .category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.door-categories-page .category-image{height:auto;aspect-ratio:1 / 1;background:white}.door-categories-page .category-image img{width:100%;height:100%;object-fit:contain}.door-category-products{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}.door-empty{grid-column:1 / -1;font-size:1rem;line-height:1.6;background:white;padding:28px;border:1px solid #d9ded7}@media(max-width:1000px){.door-categories-page .category-grid,.door-category-products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.door-categories-page .category-grid,.door-category-products{grid-template-columns:1fr}}

.door-card .price{margin:20px 0 16px;line-height:1.3;font-size:1.4rem;letter-spacing:-.3px}.door-card .price small{font-size:.85rem;font-weight:400;letter-spacing:0;white-space:nowrap}.door-card>.door-button{font-size:1rem;line-height:1.4;padding:14px 12px}

.door-card h2{font-size:1.7rem;line-height:1.2;margin:22px 0 12px}.door-card h2 a{text-decoration:none}.door-card h2 a:hover{color:#80643e}.door-card>p:not(.price){font-size:.95rem;line-height:1.5;color:var(--muted);margin:0 0 18px}.door-card{display:flex;flex-direction:column}.door-card>.door-button{margin-top:auto}

.door-category-filters{margin:0 0 26px;padding:18px 22px;background:white;border:1px solid #d9ded7}.door-category-filters summary{cursor:pointer;font-weight:600;font-size:1rem}.door-category-filters .door-controls{align-items:end}.door-category-filters label{flex-direction:column;align-items:flex-start}.door-filter-clear{font:inherit;cursor:pointer;padding:11px 15px;border:1px solid #a9b1a4;background:white;color:var(--green)}

.door-intro h1{font-size:clamp(1.65rem,2.5vw,2.25rem);line-height:1.2;font-weight:normal;letter-spacing:-.015em;margin:0 0 20px;text-wrap:balance}
.door-thumbs{flex-wrap:wrap}
.door-thumbs:empty{display:none}

.door-information-dialog{width:min(1000px,90vw);max-height:85vh;padding:24px;border:1px solid #d9ded7;background:#fff;color:var(--ink)}
.door-information-dialog::backdrop{background:#0009}
.door-information-dialog .door-section{margin:0;padding:12px 0;border:0}
.door-information-dialog .door-section summary{display:none}
.door-information-dialog .basket-head h2{font:1.8rem Georgia,serif}

/* A compact, readable product summary on phones. */
@media(max-width:640px){
  .door-main{padding-left:4%;padding-right:4%}
  .door-intro{grid-template-columns:minmax(0,1fr);gap:20px;padding:18px}
  .door-intro>div{min-width:0}
  .door-gallery .door-photo img{height:280px;max-width:100%}
  .door-thumbs{gap:8px;margin-top:12px}
  .door-thumbs img{width:64px;height:64px}
  .door-intro h1{font-size:1.65rem;line-height:1.2;margin:0 0 12px}
  .door-intro .door-price{font-size:1.4rem;line-height:1.3;margin:0 0 18px}
  .door-price small{display:inline-block;font-size:.875rem;font-weight:400;white-space:nowrap}
  .door-intro ul{font-size:1rem;line-height:1.45;padding-left:20px;margin:0 0 20px}
  .door-intro li{margin:7px 0;line-height:1.45;padding-left:2px}
  .door-intro .door-button{font-size:1rem;line-height:1.4;padding:13px 10px;min-height:44px;box-sizing:border-box}
  .door-secondary-links{gap:0;margin:14px 0 0;flex-direction:column}
  .door-secondary-links a{font-size:.9375rem;line-height:1.4;padding:10px 0;min-height:44px;box-sizing:border-box}
}

/* Match the flooring collection heading and filters. */
body:has([data-door-category]){background:#f5f6f3;color:#20382f}.door-main:has([data-door-category]){max-width:1500px}.door-main:has([data-door-category])>h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(32px,3.4vw,48px);line-height:1.15;letter-spacing:-1.5px;margin:20px 0 28px}.door-category-filters{margin:0 0 28px;padding:20px;background:#f3f2ed;border:1px solid #dadcd5}.door-category-filters>summary{font-size:20px;font-weight:600;color:#193d32;list-style-position:inside}.door-category-filters[open]>summary{margin-bottom:18px}.door-category-filters>summary:focus-visible{outline:3px solid #bc9860;outline-offset:4px}.door-category-filters .door-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px;align-items:end}.door-category-filters .door-controls label{display:flex;flex-direction:column;align-items:stretch;gap:6px;font-size:14px;min-width:0}.door-category-filters .door-controls select{width:100%;min-width:0;background:white;border:1px solid #a4aea7;padding:10px;color:#193d32;font:inherit}.door-category-filters .door-filter-clear{background:none;border:0;text-decoration:underline;color:#193d32;padding:10px 0;text-align:left}.door-category-filters [data-door-filter-count]{font-size:14px;color:#626b65;margin:0}@media(max-width:800px){.door-category-filters .door-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.door-category-filters{padding:14px}.door-category-filters .door-controls{gap:10px}}

/* Keep every product card equal, including names that wrap onto more lines. */
.door-grid,.door-grouped .door-grid,.door-category-products,.door-support-grid{align-items:stretch;grid-auto-rows:1fr}
.door-grid>.door-card,.door-category-products>.door-card{height:100%;min-width:0;display:flex;flex-direction:column}
.door-card>.price{margin-top:auto;padding-top:20px}
.door-card>.door-button{margin-top:0}
.door-support-card{height:100%;display:flex;flex-direction:column;min-width:0}
.door-support-card>a{flex:1;display:flex;flex-direction:column}
.door-support-card p{margin-top:auto;padding-top:8px}

.october-offer-banner{background:#94400f;color:#fff;padding:0.75rem 1rem;text-align:center;font:600 0.875rem/1.5 Arial,sans-serif;}

.original-stock-price{font-size:0.875rem;line-height:1.5;color:#555;margin:0 0 0.35rem;}
