/* Qixiang collection studies. All rules are scoped to new marked pages. */
.qx-showcase.qx-garden .qx-banner-credit { position:absolute; z-index:2; bottom:12px; left:max(24px,calc((100% - var(--wp--style--global--wide-size,1000px))/2)); margin:0; color:#fff; font-size:12px; line-height:1.35; text-shadow:0 1px 4px #10271c; }
.tt5-qx-festive .qx-families-repeat { padding-top:0; }
.qx-showcase { --qx-ink:#153b29; --qx-muted:#4d5c51; --qx-paper:#fffdf5; --qx-sand:#f0eee4; --qx-line:#d5dacf; color:var(--qx-ink); }
.qx-showcase :where(.wp-block-group)>* { margin-block-start:0; }
.qx-showcase .qx-wrap { width:min(var(--wp--style--global--wide-size,1000px),calc(100% - 48px)); max-width:var(--wp--style--global--wide-size,1000px)!important; margin-inline:auto!important; }
.qx-showcase :where(h1,h2,h3) { font-family:Platypi,Georgia,serif; font-weight:400; color:var(--qx-ink); letter-spacing:-.025em; text-wrap:balance; }
.qx-showcase h1 { font-size:clamp(30px,3vw,42px); line-height:1.15; margin:0 0 20px; }
.qx-showcase h2 { font-size:clamp(26px,2.5vw,32px); line-height:1.25; margin:0 0 18px; }
.qx-showcase h3 { font-size:22px; line-height:1.3; margin:0 0 12px; }
.qx-showcase p { font-size:18px; line-height:1.65; font-weight:300; margin:0 0 20px; color:var(--qx-muted); }
.qx-showcase p:last-child { margin-bottom:0; }
.qx-showcase figure { margin:0; }
.qx-showcase img { display:block; width:100%; height:auto; }
.qx-showcase figcaption { margin:10px 0 0; font-size:13px; line-height:1.5; color:var(--qx-muted); text-align:left; }
.qx-showcase .wp-block-buttons { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.qx-showcase .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; min-height:46px; border:1px solid var(--qx-ink); border-radius:0; background:var(--qx-ink); color:var(--qx-paper); font-size:15px; line-height:1.4; padding:12px 20px; text-decoration:none; }
.qx-showcase .is-style-outline .wp-block-button__link { color:var(--qx-ink); background:transparent; }
.qx-showcase :where(a,summary):focus-visible { outline:2px solid #947139; outline-offset:4px; }
.qx-showcase [id] { scroll-margin-top:32px; }
.qx-showcase .qx-section { padding-block:64px; }
.qx-showcase .qx-intro { max-width:68ch; margin-bottom:32px; }
.qx-showcase .qx-hero { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; padding-block:40px 64px; }
.qx-showcase .qx-hero>* { min-width:0; margin:0; }
.qx-showcase .qx-mosaic { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:end; }
.qx-showcase .qx-mosaic figure:first-child { grid-row:span 2; align-self:center; }
.qx-showcase .qx-mosaic img { aspect-ratio:1; object-fit:contain; background:#e9e6dc; }
.qx-showcase .qx-mosaic figure:first-child img { aspect-ratio:.65; object-fit:cover; }
.qx-showcase .qx-jump { padding-block:14px; border-block:1px solid var(--qx-line); }
.qx-showcase .qx-jump p { display:flex; flex-wrap:wrap; gap:12px 28px; font-size:15px; }
.qx-showcase .qx-jump a { display:inline-flex; align-items:center; min-height:44px; color:var(--qx-ink); text-underline-offset:5px; }
.qx-showcase .qx-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 28px; }
.qx-showcase .qx-card { min-width:0; }
.qx-showcase .qx-card figure { margin-bottom:18px; }
.qx-showcase .qx-card img { aspect-ratio:1.08; object-fit:contain; background:#eceae1; }
.qx-showcase .qx-card h3 { font-size:20px; }
.qx-showcase .qx-card p { font-size:16px; }
.qx-showcase .qx-ref { font-size:12px!important; letter-spacing:.025em; font-weight:500; color:#607065; margin-bottom:8px; }
.qx-showcase .qx-band { background:var(--qx-sand); }
.qx-showcase .qx-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.qx-showcase .qx-columns h3 { font-size:21px; }
.qx-showcase .qx-columns p { font-size:17px; }
.qx-showcase .qx-row { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; padding-block:40px; border-top:1px solid var(--qx-line); }
.qx-showcase .qx-row>* { min-width:0; margin:0; }
.qx-showcase .qx-row img { aspect-ratio:1.1; object-fit:contain; background:#efede4; }
.qx-showcase .qx-row:nth-child(even)>figure { grid-column:2; grid-row:1; }
.qx-showcase .qx-row:nth-child(even)>.qx-row-copy { grid-column:1; grid-row:1; }
.qx-showcase .qx-pair { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.qx-showcase .qx-pair .qx-card img { aspect-ratio:1; }
.qx-showcase .qx-faq { display:grid; grid-template-columns:1fr 1.4fr; gap:36px; padding-block:36px; border-top:1px solid var(--qx-line); }
.qx-showcase .qx-faq-intro h2 { margin-bottom:12px; }
.qx-showcase .qx-faq-intro p { font-size:17px; line-height:1.5; }
.qx-showcase .wp-block-details { border-bottom:1px solid var(--qx-line); margin:0; }
.qx-showcase summary { box-sizing:border-box; padding-block:12px; cursor:pointer; min-height:48px; font-size:17px; line-height:1.35; }
.qx-showcase .wp-block-details p { padding-bottom:12px; margin-bottom:0; font-size:17px; line-height:1.5; }
.qx-showcase .qx-enquire { background:var(--qx-sand); padding-block:56px; }
.qx-showcase .qx-enquire.wp-block-cover { padding-inline:0; min-height:360px; }
.qx-showcase .qx-enquire.wp-block-cover>.wp-block-cover__image-background { width:100%; height:100%; object-fit:cover; }
.qx-showcase .qx-enquire.wp-block-cover>.wp-block-cover__inner-container { width:100%; }
.qx-showcase .qx-enquire.wp-block-cover :where(h2,p) { color:var(--qx-ink); }
.qx-showcase .qx-enquire.wp-block-cover p { color:var(--qx-muted); }
.qx-showcase .qx-enquire .qx-wrap { max-width:720px!important; text-align:center; }
.qx-showcase .qx-enquire .wp-block-buttons { justify-content:center; }
.qx-showcase .qx-related { padding-block:32px; border-top:1px solid var(--qx-line); }
.qx-showcase .qx-related p { display:flex; flex-wrap:wrap; gap:12px 28px; font-size:16px; }
.qx-showcase .qx-related a { min-height:44px; display:inline-flex; align-items:center; text-underline-offset:4px; }
/* Garden: one atmospheric image, followed by an unhurried visual story. */
.qx-showcase.qx-garden .qx-garden-banner { position:relative; margin:0; background:#10271c; }
.qx-showcase.qx-garden .qx-garden-banner>figure img { height:540px; object-fit:cover; object-position:center; }
.qx-showcase.qx-garden .qx-garden-banner::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(9,27,18,.85),rgba(9,27,18,.3) 55%,transparent); pointer-events:none; }
.qx-showcase.qx-garden .qx-garden-banner .qx-banner-copy { position:absolute; z-index:1; top:50%; left:max(24px,calc((100% - var(--wp--style--global--wide-size,1000px))/2)); transform:translateY(-50%); max-width:430px; padding-right:24px; }
.qx-showcase.qx-garden .qx-banner-copy :where(h1,p) { color:#fffdf5; }
.qx-showcase.qx-garden .qx-banner-copy h1 { font-size:clamp(32px,3.2vw,46px); }
.qx-showcase.qx-garden .qx-banner-copy .wp-block-button__link { background:#fffdf5; border-color:#fffdf5; color:#153b29; }
.qx-showcase.qx-garden .qx-scene-note { font-size:13px; padding-block:12px; }
.qx-showcase.qx-garden .qx-row { grid-template-columns:.85fr 1.15fr; }
/* Indoor: generous negative space and a dark gallery of light objects. */
.qx-showcase.qx-interior .qx-hero { grid-template-columns:1.1fr .9fr; padding-block:48px 72px; }
.qx-showcase.qx-interior .qx-hero>figure img { aspect-ratio:1; object-fit:contain; background:#e6e1d6; }
.qx-showcase.qx-interior .qx-night-gallery { background:#12291e; padding-block:64px; }
.qx-showcase.qx-interior .qx-night-gallery :where(h2,h3,p) { color:#fffdf5; }
.qx-showcase.qx-interior .qx-night-gallery .qx-card p { color:#d6ddd6; }
.qx-showcase.qx-interior .qx-night-gallery .qx-card img { background:#1a3025; }
/* Category A: keep its existing field model and render chain. */
.tt5-qx-festive .tt5-category-page-a__hero-copy h1 { font-size:clamp(30px,3vw,40px); }
.tt5-qx-festive .tt5-category-page-a__hero .tt5-template-media img { aspect-ratio:1; object-fit:cover; }
.tt5-qx-festive .tt5-category-page-a__family-card { background:transparent; border:0; }
.tt5-qx-festive .tt5-category-page-a__family-card .tt5-template-media img { object-fit:contain; background:#efe9df; }
.tt5-qx-festive .tt5-category-page-a__family-body { padding:20px 0 8px; }
.tt5-qx-festive .tt5-category-page-a__families-grid { gap:40px 28px; }
.qx-showcase.qx-festive .qx-seasons { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.qx-showcase.qx-festive .qx-season { border-top:1px solid var(--qx-line); padding-top:24px; }
.qx-showcase.qx-festive .qx-enquire { background:#efe6d9; }
.tt5-qx-curtain .tt5-category-page-a__hero-copy h1 { font-size:clamp(30px,3vw,40px); }
.tt5-qx-curtain .tt5-category-page-a__hero .tt5-template-media img { aspect-ratio:1; object-fit:cover; }
.tt5-qx-curtain .tt5-category-page-a__family-card .tt5-template-media img { object-fit:contain; background:#eeeae1; }
.tt5-qx-curtain .tt5-category-page-a__family-card { background:transparent; border:0; }
.tt5-qx-curtain .tt5-category-page-a__family-body { padding:20px 0 8px; }
.tt5-qx-curtain .tt5-category-page-a__family-body h3 { font-size:23px; }
.tt5-qx-curtain .tt5-category-page-a__families-grid { gap:40px 28px; }
@media(max-width:800px) {
 .qx-showcase .qx-hero,.qx-showcase.qx-interior .qx-hero { grid-template-columns:1fr; gap:28px; padding-block:24px 40px; }
 .qx-showcase .qx-hero>.qx-hero-visual,.qx-showcase .qx-hero>figure { grid-row:1; }
 .qx-showcase .qx-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 20px; }
 .qx-showcase .qx-columns { grid-template-columns:1fr; gap:28px; }
 .qx-showcase .qx-row,.qx-showcase.qx-garden .qx-row { grid-template-columns:1fr; gap:24px; }
 .qx-showcase .qx-row:nth-child(n)>figure,.qx-showcase .qx-row:nth-child(n)>.qx-row-copy { grid-column:1; grid-row:auto; }
 .qx-showcase .qx-row img { max-height:440px; }
 .qx-showcase .qx-faq { grid-template-columns:1fr; gap:16px; padding-block:28px; }
 .qx-showcase .qx-section { padding-block:40px; }
 .qx-showcase.qx-garden .qx-garden-banner>figure img { height:520px; object-position:82% center; }
 .qx-showcase.qx-garden .qx-garden-banner::after { background:linear-gradient(0deg,rgba(9,27,18,.94),rgba(9,27,18,.32) 60%,transparent); }
 .qx-showcase.qx-garden .qx-garden-banner .qx-banner-copy { top:auto; bottom:52px; transform:none; max-width:440px; left:24px; right:24px; padding:0; }
 .qx-showcase.qx-interior .qx-hero>figure img { max-height:400px; }
 .tt5-qx-curtain .tt5-category-page-a__hero-grid>.tt5-template-media { grid-row:1; }
 .tt5-qx-festive .tt5-category-page-a__hero-grid>.tt5-template-media { grid-row:1; }
 .qx-showcase.qx-festive .qx-seasons { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:480px) {
 .qx-showcase.qx-garden .qx-banner-credit { left:20px; right:20px; }
 .qx-showcase .qx-wrap { width:calc(100% - 40px); }
 .qx-showcase .qx-gallery { grid-template-columns:1fr; gap:36px; }
 .qx-showcase .qx-card img { max-height:360px; }
 .qx-showcase .qx-pair { gap:14px; }
 .qx-showcase .qx-pair .qx-card h3 { font-size:18px; }
 .qx-showcase .qx-pair .qx-card p { font-size:15px; }
 .qx-showcase .qx-enquire { padding-block:40px; }
 .qx-showcase .qx-related p { display:block; }
 .qx-showcase .qx-related a { display:flex; }
 .qx-showcase .qx-night-gallery .qx-gallery { grid-template-columns:1fr; }
}
