/* Copper Atelier interiors — scoped to inner pages; the approved homepage is unchanged. */
.kc19-page {
    --ink: #38271e;
    --muted: #76614e;
    --paper: #f7f1e6;
    --bronze: #a3613e;
    font-family: Nunito, sans-serif;
    font-size: 17px;
    line-height: 1.75;
}
.kc19-page .kc-container {
    width: 100%;
    max-width: 1280px;
    padding-right: 32px;
    padding-left: 32px;
    margin-right: auto;
    margin-left: auto;
}
.kc19-page :is(h1, h2, h3, p, figure) { overflow-wrap: anywhere; }
.kc19-page :is(a, button, input, textarea, select, summary):focus-visible {
    outline: 2px solid #b9754d;
    outline-offset: 5px;
}
.kc19-page .kc19-heading {
    font-family: Georgia, serif;
    font-weight: 400;
    font-size: 54px;
    line-height: 1.12;
    letter-spacing: -1.5px;
    max-width: 850px;
}
.kc19-page .kc19-kicker {
    font-family: Nunito, sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 1.8px;
    margin-bottom: 20px;
    color: #975533;
}
.kc19-page .kc19-section { padding-top: 96px; padding-bottom: 96px; }
.kc19-page .kc19-dark { background: #241a14; color: #f7ecdc; }
.kc19-page .kc19-dark .kc19-kicker { color: #d6a981; }
.kc19-page .kc19-hero {
    background: radial-gradient(ellipse at 80% 20%, #553622 0, #241a14 62%);
    padding: 32px 0 45px;
}
.kc19-page .kc19-hero-layout { min-height: 560px; gap: 60px; }
.kc19-page .kc19-hero h1 { font-size: 68px; line-height: 1.07; letter-spacing: -2px; }
.kc19-page .kc19-hero-copy > p { font-size: 17px; line-height: 1.8; max-width: 450px; }
.kc19-page .kc19-stage { height: 530px; }
.kc19-page .kc19-fallback { inset: 40px 20px 65px; }
.kc19-page .kc19-fallback > div { border-radius: 90px 6px 6px; }
.kc19-page .kc19-scene-tools > span { font-size: 15px; }
.kc19-page .kc19-scene-tools button { display: none; }
.kc19-page .kc19-stage.is-ready .kc19-scene-tools button { display: none; }
.kc19-page .kc19-arch {
    border-radius: 100px 6px 6px;
    aspect-ratio: 5 / 5.5;
    overflow: hidden;
    background: #e1d1bb;
    box-shadow: 14px 14px 0 #c5a37c33;
}
.kc19-page .kc19-photo-seal { display: none; }
.kc19-page .kc19-origin { gap: 8%; }
.kc19-page .kc19-rich { font-size: 17px; line-height: 1.85; }
.kc19-page .kc19-rich > :first-child { margin-top: 0; }
.kc19-page .kc19-rich > :last-child { margin-bottom: 0; }
.kc19-page .kc19-rich :is(h2, h3) { color: var(--ink); font-family: Georgia, serif; font-weight: 400; line-height: 1.2; margin: 36px 0 18px; }
.kc19-page .kc19-rich h2 { font-size: 34px; }
.kc19-page .kc19-rich h3 { font-size: 27px; }
.kc19-page .kc19-rich :is(img, video, iframe) { max-width: 100%; }
.kc19-page .kc19-statement {
    background: #e8dac5;
    border-top: 1px solid #c6a58555;
    border-bottom: 1px solid #c6a58555;
    padding: 80px 0;
}
.kc19-page .kc19-statement p { font-size: 52px; line-height: 1.18; }
.kc19-page .kc19-making { background: #fffdf8; }
.kc19-page .kc19-chapter { border-bottom: 1px solid #d9c8b2; padding-bottom: 36px; }
.kc19-page .kc19-chapter h3 { font-family: Georgia, serif; font-size: 32px; font-weight: 400; line-height: 1.15; }
.kc19-page .kc19-values { gap: 28px; }
.kc19-page .kc19-values article { border-top: 1px solid #aa795255; background: #34251b; padding: 32px; }
.kc19-page .kc19-values h3 { font-family: Georgia, serif; font-weight: 400; font-size: 30px; line-height: 1.2; }
.kc19-page .kc19-value-index { font-size: 15px; color: #d3a47f; }
.kc19-page .kc19-closing { background: #eaddca; border-top: 1px solid #cab091; text-align: center; }
.kc19-page .kc19-closing .kc19-heading { margin: 0 auto; max-width: 780px; }
.kc19-page .kc19-closing p { max-width: 580px; margin: 25px auto 30px; color: #735c47; }
.kc19-page .kc19-catalogue { background: #fffdf8; }
.kc19-page .kc19-product-grid { display: flex; flex-wrap: wrap; gap: 32px 24px; }
.kc19-page .kc19-product-grid > * { flex: 0 0 calc((100% - 48px) / 3); min-width: 0; }
.kc19-page .kc-product-card { border: 1px solid #e0d2bf; border-radius: 3px; background: #f5eddf; box-shadow: none; overflow: hidden; height: 100%; }
.kc19-page .kc-product-img { border-radius: 0; background: #eadecd; }
.kc19-page .kc-product-info { padding: 24px; }
.kc19-page .kc-product-name { font-family: Georgia, serif; font-size: 29px; line-height: 1.2; }
.kc19-page .kc19-catalogue-tools { padding: 26px 0; margin-bottom: 30px; border-top: 1px solid #d4c4b2; border-bottom: 1px solid #d4c4b2; gap: 22px; }
.kc19-page .kc19-filters a { font-size: 15px; padding: 10px 16px; }
.kc19-page .kc19-filters a[aria-current] { background: #a3613e; color: #fff8ed; border-color: #a3613e; }
.kc19-page .kc19-filters sup { font-size: 15px; }
.kc19-page .kc19-result-count { font-size: 15px; }
.kc19-page .kc19-search { background: #f7f1e6; min-width: 220px; }
.kc19-page .kc19-search input { font-size: 16px; min-width: 0; }
.kc19-page .kc19-collection-note { background: #e8dac5; }
.kc19-page .kc19-product-details { gap: 7%; }
.kc19-page .kc19-gallery { background: #ece0ce; padding: 26px; border: 1px solid #d5bfa2; }
.kc19-page .kc-product-main-img { width: 100%; height: 470px; object-fit: contain; }
.kc19-page .kc-product-thumbs button { border-radius: 2px; border: 1px solid #c2a47f; }
.kc19-page .kc-product-thumbs button[aria-pressed="true"] { outline: 2px solid #975533; outline-offset: 2px; }
.kc19-page .kc19-product-name { font-family: Georgia, serif; font-size: 40px; line-height: 1.15; font-weight: 400; }
.kc19-page .kc19-specs :is(dt, dd) { font-size: 16px; }
.kc19-page .kc19-accordion { border-bottom: 1px solid #cdb79c; padding: 0; }
.kc19-page .kc19-accordion summary { display: flex; justify-content: space-between; align-items: center; gap: 25px; cursor: pointer; padding: 22px 0; font: 700 18px/1.5 Nunito, sans-serif; list-style: none; }
.kc19-page .kc19-accordion summary::-webkit-details-marker { display: none; }
.kc19-page .kc19-accordion summary span { font-size: 27px; font-weight: 400; transition: transform 250ms; }
.kc19-page .kc19-accordion[open] summary span { transform: rotate(45deg); }
.kc19-page .kc19-accordion .kc19-rich { margin-top: 0; padding-bottom: 25px; }
.kc19-page .kc19-product-story { background: #e8dac5; border-top: 1px solid #d2bc9d; }
.kc19-page .kc19-related { background: #fffdf8; border-top: 1px solid #d4c4b2; }
/* Photographic banners and shared page building blocks. */
.kc21-hero { position: relative; background: radial-gradient(ellipse at 80% 20%, #573824, #241a14 65%); color: #f7ecdc; padding: 64px 0; overflow: hidden; }
.kc21-hero-layout { display: flex; align-items: center; gap: 8%; min-height: 470px; }
.kc21-hero-copy { flex: 1; min-width: 0; position: relative; z-index: 1; }
.kc21-page .kc21-hero h1 { font-size: 68px; line-height: 1.07; letter-spacing: -2px; }
.kc21-page .kc21-hero .kc19-kicker { color: #d6a981; }
.kc21-hero-copy > p, .kc21-hero-text .kc-container > p { max-width: 490px; margin: 26px 0 30px; color: #d3c0ac; line-height: 1.85; }
.kc21-hero-photo { flex: 0 0 46%; height: 470px; margin: 0; position: relative; overflow: hidden; border: 1px solid #b78a6355; border-radius: 100px 6px 6px; }
.kc21-hero-photo > img { width: 100%; height: 100%; object-fit: cover; display: block; }
.kc21-hero-photo figcaption { position: absolute; bottom: 0; right: 0; left: 0; background: linear-gradient(transparent, #241a14dd); padding: 55px 24px 24px; font-size: 15px; color: #f7ecdc; }
.kc21-hero-text { padding: 85px 0 80px; }
.kc21-page .kc21-hero-text h1 { max-width: 850px; }
.kc21-hero-text .kc21-hero-layout { min-height: 180px; }
.kc21-prose { background: #fffdf8; }
.kc21-prose .kc-container { max-width: 960px; }
.kc21-prose .kc19-rich { margin: 0; }
.kc21-prose .kc19-button { margin-top: 38px; }
.kc21-editorial { background: #f5edde; border-top: 1px solid #d9c6ad; }
.kc21-editorial:nth-of-type(even) { background: #fffdf8; }
.kc21-reverse .kc19-origin { flex-direction: row-reverse; }
.kc21-gallery-section { background: #fffdf8; }
.kc21-gallery { display: flex; flex-wrap: wrap; gap: 38px 28px; align-items: flex-start; margin-top: 45px; }
.kc21-gallery-item { flex: 0 0 calc((100% - 56px) / 3); min-width: 0; margin: 0; }
.kc21-gallery-item:nth-child(3n + 2) { margin-top: 65px; }
.kc21-gallery-item a { display: block; overflow: hidden; aspect-ratio: 4 / 5; border-radius: 3px; background: #e8dac5; }
.kc21-gallery-item:nth-child(3n + 2) a { aspect-ratio: 4 / 4.4; }
.kc21-gallery-item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 650ms; }
.kc21-gallery-item a:hover img { transform: scale(1.045); }
.kc21-gallery-item figcaption { padding-top: 20px; border-top: 1px solid #d5c2a9; margin-top: 18px; }
.kc21-gallery-item h3 { font: 400 28px/1.2 Georgia, serif; margin: 0 0 10px; }
.kc21-gallery-item p { font-size: 15px; color: #76614e; margin: 0; }
.kc21-contact-section { background: #fffdf8; }
.kc21-contact-layout { display: flex; align-items: flex-start; gap: 9%; }
.kc21-contact-details { flex: 0 0 34%; min-width: 0; }
.kc21-contact-row { border-bottom: 1px solid #d5c2a9; padding: 25px 0; }
.kc21-contact-row:first-child { padding-top: 0; }
.kc21-contact-row > span { display: block; color: #975533; font-size: 15px; margin-bottom: 12px; font-weight: 700; }
.kc21-contact-row :is(a, p) { font-size: 21px; line-height: 1.6; color: #38271e; margin: 0; }
.kc21-contact-row a:hover { text-decoration: underline; }
.kc21-form { flex: 1; min-width: 0; background: #f4eadc; border: 1px solid #d5c2a9; padding: 38px; }
.kc21-form .kc19-heading { font-size: 38px; }
.kc21-form > p { color: #76614e; margin: 18px 0 30px; }
.kc21-form .wpcf7 :is(p, label) { margin: 0; }
.kc21-form .wpcf7 label { display: block; font-size: 15px; line-height: 1.4; }
.kc21-form .wpcf7 br { display: none; }
.kc21-form .wpcf7-form-control-wrap { display: block; margin-top: 7px; margin-bottom: 18px; }
.kc21-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { width: 100%; max-width: 100%; border: 1px solid #cbb596; border-radius: 0; background: #fffdf8; color: #38271e; font: 400 16px/1.5 Nunito, sans-serif; padding: 12px 14px; box-sizing: border-box; }
.kc21-form textarea { min-height: 120px; resize: vertical; }
.kc21-form .kc21-form-row { display: flex; gap: 20px; }
.kc21-form .kc21-form-row > * { flex: 1; min-width: 0; }
.kc21-form input[type="submit"] { background: #a3613e; color: #fff8ed; border-color: #a3613e; width: auto; padding: 14px 24px; cursor: pointer; }
.kc21-form .wpcf7-not-valid-tip { font-size: 15px; margin-top: 5px; }
.kc21-form .wpcf7-response-output { font-size: 15px; margin: 18px 0 0; padding: 14px; }
.kc21-map-section { background: #e8dac5; border-top: 1px solid #d0b99b; }
.kc21-map { min-height: 380px; display: flex; align-items: center; justify-content: center; background: repeating-linear-gradient(35deg, #dac7ad 0, #dac7ad 1px, #eadecc 1px, #eadecc 45px); }
.kc21-map iframe { border: 0; width: 100%; height: 400px; display: block; }
.kc21-faq { background: #f3e8d8; border-top: 1px solid #d5c2a9; }
.kc21-faq-layout { display: flex; gap: 9%; align-items: flex-start; }
.kc21-faq-layout > div:first-child { flex: 0 0 34%; position: sticky; top: 125px; }
.kc21-faq-layout > div:last-child { flex: 1; min-width: 0; }
.kc21-error-number { display: block; color: #b8865c; font: 400 100px/1 Georgia, serif; letter-spacing: -5px; margin-bottom: 25px; }
.kc21-journal { display: flex; flex-wrap: wrap; gap: 40px 28px; }
.kc21-journal article { flex: 0 0 calc((100% - 56px) / 3); min-width: 0; }
.kc21-journal-photo { aspect-ratio: 4 / 3; background: #e4d4bc; display: block; overflow: hidden; }
.kc21-journal-photo img { width: 100%; height: 100%; object-fit: cover; }
.kc21-journal article > span { display: block; margin: 20px 0 12px; color: #975533; font-size: 15px; }
.kc21-journal h2 { font: 400 32px/1.18 Georgia, serif; margin: 0; }
.kc21-journal article > p { font-size: 16px; color: #76614e; }
.kc21-journal .kc19-button { background: transparent; color: #975533; border: 0; border-bottom: 1px solid #b18d69; padding: 12px 0; }
@media (max-width: 1000px) {
    .kc19-page .kc19-heading { font-size: 46px; }
    .kc19-page .kc19-hero h1, .kc21-page .kc21-hero h1 { font-size: 54px; }
    .kc19-page .kc19-hero-layout { gap: 30px; min-height: 470px; }
    .kc19-page .kc19-stage { height: 460px; }
    .kc21-hero-layout { gap: 5%; min-height: 400px; }
    .kc21-hero-photo { height: 400px; }
    .kc21-contact-layout { gap: 5%; }
    .kc21-form { padding: 28px; }
    .kc19-page .kc19-product-grid > *, .kc21-journal article { flex-basis: calc((100% - 24px) / 2); }
    .kc21-journal { gap: 32px 24px; }
    .kc19-page .kc19-values { flex-wrap: wrap; }
}
@media (max-width: 700px) {
    .kc19-page .kc-container { padding-right: 20px; padding-left: 20px; }
    .kc19-page .kc19-section { padding-top: 56px; padding-bottom: 56px; }
    .kc19-page .kc19-heading { font-size: 36px; letter-spacing: -1px; }
    .kc19-page .kc19-hero h1, .kc21-page .kc21-hero h1 { font-size: 44px; letter-spacing: -1.3px; }
    .kc19-page .kc19-hero { padding: 30px 0; }
    .kc19-page .kc19-hero-layout { flex-direction: column; gap: 18px; min-height: 0; }
    .kc19-page .kc19-hero-copy { flex: auto; width: 100%; padding: 12px 0 0; }
    .kc19-page .kc19-hero-copy > p { margin: 20px 0 24px; }
    .kc19-page .kc19-stage { flex: auto; width: 100%; height: 380px; }
    .kc19-page .kc19-fallback { inset: 15px 20px 58px; }
    .kc19-page .kc19-scene-tools > span { line-height: 1.4; }
    .kc19-page .kc19-origin, .kc19-page .kc19-making-layout { flex-direction: column; gap: 35px; }
    .kc19-page .kc19-origin > * { width: 100%; flex: auto; }
    .kc19-page .kc19-arch { border-top-left-radius: 65px; box-shadow: 8px 8px 0 #c5a37c33; }
    .kc19-page .kc19-sticky-copy, .kc19-page .kc19-chapters { width: 100%; position: static; }
    .kc19-page .kc19-statement { padding: 56px 0; }
    .kc19-page .kc19-statement p { font-size: 36px; }
    .kc19-page .kc19-values { flex-direction: column; gap: 18px; }
    .kc19-page .kc19-values article { padding: 26px; }
    .kc19-page .kc19-catalogue-head { align-items: flex-start; gap: 18px; }
    .kc19-page .kc19-catalogue-tools { flex-direction: column; align-items: stretch; }
    .kc19-page .kc19-filters { gap: 8px; }
    .kc19-page .kc19-search { flex: auto; width: 100%; }
    .kc19-page .kc19-product-grid { gap: 24px 14px; }
    .kc19-page .kc19-product-grid > * { flex-basis: calc((100% - 14px) / 2); }
    .kc19-page .kc-product-info { padding: 16px 12px; }
    .kc19-page .kc-product-name { font-size: 23px; }
    .kc19-page .kc-product-card :is(p, span, a) { font-size: 15px; }
    .kc19-page .kc19-product-details { flex-direction: column; gap: 35px; }
    .kc19-page .kc19-product-details > * { flex: auto; width: 100%; }
    .kc19-page .kc19-gallery { padding: 18px; }
    .kc19-page .kc-product-main-img { height: 340px; }
    .kc21-hero { padding: 42px 0; }
    .kc21-hero-layout { flex-direction: column; min-height: 0; gap: 30px; align-items: stretch; }
    .kc21-hero-copy { flex: auto; }
    .kc21-hero-photo { flex: auto; width: 100%; height: 350px; border-top-left-radius: 65px; }
    .kc21-hero-text { padding: 52px 0; }
    .kc21-hero-text .kc21-hero-layout { min-height: 0; }
    .kc21-gallery { gap: 26px 16px; margin-top: 30px; }
    .kc21-gallery-item { flex-basis: calc((100% - 16px) / 2); }
    .kc21-gallery-item:nth-child(3n + 2) { margin-top: 0; }
    .kc21-gallery-item:nth-child(2n) { margin-top: 30px; }
    .kc21-gallery-item:nth-child(3n + 2) a { aspect-ratio: 4 / 5; }
    .kc21-gallery-item h3 { font-size: 24px; }
    .kc21-contact-layout, .kc21-faq-layout { flex-direction: column; gap: 38px; }
    .kc21-contact-layout > *, .kc21-faq-layout > div { width: 100%; flex: auto; }
    .kc21-form { padding: 24px 20px; }
    .kc21-form .kc19-heading { font-size: 32px; }
    .kc21-faq-layout > div:first-child { flex: auto; position: static; }
    .kc21-form .kc21-form-row { gap: 14px; }
    .kc21-journal article { flex-basis: 100%; }
    .kc21-error-number { font-size: 78px; }
}
@media (max-width: 390px) {
    .kc21-form .kc21-form-row { flex-direction: column; gap: 0; }
    .kc19-page .kc19-hero h1, .kc21-page .kc21-hero h1 { font-size: 39px; }
}
@media (prefers-reduced-motion: reduce) {
    .kc19-page *, .kc19-page *::before, .kc19-page *::after { animation: none !important; scroll-behavior: auto !important; transition: none !important; }
}

.kc19-page .kc-product-info h3 { font-family: Georgia, serif; font-weight: 400; }
.kc19-page .kc-product-discover, .kc19-page .kc19-back { font-size: 15px; }
