/* 2026-10-05 polish layer. Loaded last. Presentation only: no content is hidden,
   no product data is changed, and every animation respects reduced motion and
   the existing "Pause motion" control (body.effects-paused). */

/* 1. Readable small text on phones (nothing below 10px; labels at 12px). */
.journey-site .brand small{font-size:10px;letter-spacing:.04em}
html[dir=rtl] .journey-site .brand small{letter-spacing:0}
.journey-site footer>span{font-size:12px;line-height:1.7}
.journey-site footer #footer-wholesale{display:inline-block;font-size:12px;line-height:1.6}
.studio-category-label,.studio-selector span{font-size:12px}
.studio-department{font-size:12px}
.journey-site .scroll-cue{font-size:12px}
.journey-site .hero .hero-link{font-size:13px}
.journey-site .category-card-count{font-size:12px}
.studio-site .catalogue-product-copy>.product-category-label{font-size:12px}
@media(max-width:700px){
 .journey-site .brand small{font-size:10px}
 .studio-category-label,.studio-selector span{font-size:12px}
 .studio-department{font-size:12px;min-height:40px}
 .journey-site .scroll-cue{font-size:12px}
 .journey-site .hero .hero-link{font-size:13px}
 .journey-site .category-card-count{font-size:12px}
}
@media(max-width:360px){
 .journey-site .brand small{font-size:10px}
 .journey-site .hero .hero-link{font-size:12px}
}

/* 2. Compact product cards on phones: same information, less empty height. */
@media(max-width:760px){
 .studio-site .catalogue-product-copy{padding:11px 11px 13px}
 .studio-site .catalogue-product-copy>.product-category-label{margin:0 0 4px;padding:3px 7px;font-size:12px;max-width:calc(100% - 46px)}
 .studio-site .catalogue-product-copy h4{font-size:17px;line-height:1.5;margin-block:6px 6px}
 .studio-site .catalogue-product-copy>p{font-size:13px;line-height:1.6;margin-block:0 7px}
 .studio-site .catalogue-product-copy .availability-tag{padding:3px 8px;font-size:12px;margin-bottom:6px}
 .studio-site .catalogue-product-copy .carton-contents{padding:6px 9px;font-size:12px;line-height:1.55;margin-bottom:7px}
 .studio-site .catalogue-product-copy .wholesale-note{font-size:12px;line-height:1.5;margin:0 0 10px}
 .studio-site .catalogue-product-copy .card-actions{gap:6px}
 .studio-site .card-actions button{min-height:44px;padding:8px 8px}
 .studio-site .product-favorite{width:40px;height:40px;min-width:40px;min-height:40px;font-size:22px}
}
@media(max-width:380px){
 /* Older rule pushed the label 43px down to clear the heart button. */
 .studio-site .catalogue-product-copy>.product-category-label{margin-top:0;max-width:calc(100% - 46px)}
}
@media(max-width:340px){
 .studio-site .catalogue-product-copy>.product-category-label{max-width:calc(100% - 48px)}
}

/* 3. One brand colour story: the closing section uses the same navy as the
      browser theme colour and hero instead of pure black. */
.journey-site .contact-section{background:#241c14}
.journey-site .about-section{background:linear-gradient(180deg,#f1e9db 0%,#faf1e3 100%)}
.journey-site .values-section{background:#fff}

/* 4. Calm scroll reveals for the company, values and contact sections.
      Uses CSS scroll timelines only where the browser supports them; elsewhere
      the content simply stays visible. */
@supports (animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
  /* About and Contact already have their own entrance (studio-motion.js); only Values is added here. */
  body:not(.effects-paused) :is(#why-us .section-intro,#why-us .value-grid>article){
   animation:polish-rise linear both;animation-timeline:view();animation-range:entry 0% entry 55%
  }
  body:not(.effects-paused) #why-us .value-grid>article:nth-child(2){animation-range:entry 8% entry 63%}
  body:not(.effects-paused) #why-us .value-grid>article:nth-child(3){animation-range:entry 16% entry 71%}
  body:not(.effects-paused) #why-us .value-grid>article:nth-child(4){animation-range:entry 24% entry 79%}
 }
}
@keyframes polish-rise{from{opacity:.001;transform:translateY(28px)}to{opacity:1;transform:none}}
@media print{#why-us *{animation:none!important;opacity:1!important;transform:none!important}}

/* ===== 2026-10-06 layer: colour accents, depth, motion and optional dark theme ===== */
:root{--rj-navy:#241c14;--rj-blue:#7f5a15;--rj-gold:#d4b078;--rj-sun:#ffd36e;--rj-gold-ink:#8a6a2f;--rj-ease:cubic-bezier(.22,.75,.2,1)}

/* 5. Colour: a thin gold brand rule before light-section eyebrows. */
.journey-site :is(#products,#about,#why-us) .eyebrow::before{content:"";display:inline-block;width:22px;height:2px;margin-inline-end:9px;vertical-align:middle;border-radius:2px;background:linear-gradient(90deg,var(--rj-gold),var(--rj-sun))}

/* 6. Depth: layered shadows instead of flat borders. */
.studio-site .catalogue-product-card{box-shadow:0 1px 2px #241c140a,0 6px 18px #241c1408;transition:border-color .2s,box-shadow .35s var(--rj-ease),transform .35s var(--rj-ease)}
.journey-site .value-grid>article{border-radius:20px;background:#fff;box-shadow:0 1px 2px #241c140a,0 10px 28px #241c140d;transition:box-shadow .35s var(--rj-ease),transform .35s var(--rj-ease)}
.journey-site .contact-panel{box-shadow:0 24px 60px #00000040}
@media(hover:hover) and (pointer:fine){
 .studio-site .catalogue-product-card:hover{transform:translateY(-4px);box-shadow:0 2px 4px #241c140d,0 22px 44px color-mix(in srgb,var(--category-ink,#7f5a15) 18%,transparent)}
 .journey-site .value-grid>article:hover{transform:translateY(-4px);box-shadow:0 2px 4px #241c140d,0 22px 44px #241c141a}
}

/* 7. Motion: press feedback, category tilt, basket bump, progress bar. */
.journey-site :is(.button,.card-actions button,.studio-view,.mobile-enquiry>button,.product-purchase-actions button){transition:transform .18s var(--rj-ease),background-color .2s,box-shadow .2s}
.journey-site :is(.button,.card-actions button,.studio-view,.mobile-enquiry>button):active{transform:scale(.97)}
@media(prefers-reduced-motion:reduce){
 .journey-site :is(.button,.card-actions button,.studio-view,.mobile-enquiry>button):active{transform:none}
}
@media print{.rj-theme-toggle{display:none!important}}

/* 8. Theme switch control (added by polish-motion.js). */
.rj-theme-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #e3d6c1;border-radius:999px;background:transparent;color:inherit;font:inherit;font-size:13px;cursor:pointer}
.rj-theme-toggle:focus-visible{outline:3px solid #7f5a15;outline-offset:3px}
.rj-theme-toggle span[aria-hidden]{font-size:15px;line-height:1}

/* 9. Optional dark theme: only when the visitor turns it on (html.theme-dark).
      Product photographs stay on light tiles so their colours remain true. */
html.theme-dark{color-scheme:dark;background:#14110e}
html.theme-dark body.journey-site{background:#14110e;color:#ebe4d9}
html.theme-dark .journey-site{--shop-ink:#f2ede5;--shop-muted:#b5ab9c;--shop-line:#3d3529;--shop-paper:#1d1915;--shop-lime:#26211b;--studio-ink:#f2ede5;--studio-paper:#1d1915;--commerce-ink:#f2ede5;--commerce-muted:#b5ab9c;--commerce-line:#3d3529;--commerce-soft:#26211b}
html.theme-dark .journey-site .brand,html.theme-dark .journey-site .brand strong{color:#f5f1ea}html.theme-dark .journey-site .brand small{color:#ab9f8f}
html.theme-dark .journey-site .topline{background:#0e0c0a;color:#ab9f8f}
html.theme-dark .journey-site .site-header,html.theme-dark .journey-site .site-header.scrolled{background:#14110eeb;border-bottom-color:#352e25;color:#f2ede5}
html.theme-dark .journey-site .brand small{color:#b5ab9c}
html.theme-dark .journey-site :is(.language-switch,.menu-button){background:#26211b;color:#f2ede5}
html.theme-dark .journey-site .site-header nav.open{background:#14110ef7;border-bottom-color:#352e25}
html.theme-dark .journey-site .site-header nav>a{color:#ebe4d9}
html.theme-dark .journey-site :is(#products,.product-section,#why-us,.values-section){background:#14110e}
html.theme-dark .journey-site .about-section{background:linear-gradient(180deg,#18150f 0%,#17140f 100%)}
html.theme-dark .journey-site :is(h1,h2,h3,h4){color:#f4f0e9}
html.theme-dark .journey-site :is(.section-intro p,.about-copy p,.value-grid p,.catalogue-heading p){color:#c4baab}
html.theme-dark .journey-site .eyebrow{color:#d9bd86}
html.theme-dark .journey-site .category-card{background:color-mix(in srgb,var(--category-ink,#c79548) 16%,#19160f)!important;color:#f2ede5}
html.theme-dark .journey-site .category-card :is(strong,small){color:#f2ede5}
html.theme-dark .journey-site .category-card-count{color:color-mix(in srgb,var(--category-ink,#c79548) 55%,#ffffff)}
html.theme-dark .journey-site .category-photo{background:#f5f1ea}
html.theme-dark .studio-site :is(.catalogue-toolbar,.search-field,.catalogue-filters select,select,.studio-filter-toggle,.catalogue-photo-selection,.assistant-launcher,.more-products){background:#1d1915;color:#f2ede5;border-color:#3d3529}
html.theme-dark .studio-site .search-field input{background:transparent;color:#f2ede5}
html.theme-dark .studio-site .search-field input::placeholder{color:#9d9384}
html.theme-dark .studio-site .catalogue-product-card{background:#1d1915;border-color:#352e25;box-shadow:0 1px 2px #0006,0 10px 26px #0005}
html.theme-dark .studio-site .catalogue-product-card .product-open{background:#ece6dc}
html.theme-dark .studio-site .catalogue-product-copy{border-top-color:#352e25}
html.theme-dark .studio-site .catalogue-product-copy>.product-category-label{background:color-mix(in srgb,var(--category-ink,#c79548) 24%,#1d1915);color:color-mix(in srgb,var(--category-ink,#c79548) 45%,#ffffff)}
html.theme-dark .studio-site .catalogue-product-copy .availability-tag{background:#26211b;color:#d6cdbf}
html.theme-dark .studio-site .catalogue-product-copy .carton-contents{background:color-mix(in srgb,var(--category-ink,#c79548) 18%,#1d1915);color:#ebe4d9}
html.theme-dark .studio-site .catalogue-product-copy .wholesale-note{color:#d6c39b}
html.theme-dark .studio-site .product-favorite{background:#26211b;border-color:#4a4033;color:#d4bc87}
html.theme-dark .studio-site .card-actions .product-quick{background:#1d1915;color:#f2ede5;border-color:#5a4e40}
html.theme-dark .studio-site .card-actions .product-quick:hover{background:#26211b}
html.theme-dark .studio-site .card-actions .product-add{background:#976602;border-color:#976602}
html.theme-dark .journey-site .value-grid>article{background:#1d1915;box-shadow:0 1px 2px #0006,0 12px 30px #0005}
html.theme-dark .journey-site footer{background:#0e0c0a;color:#cfc6b8;border-top-color:#29231c}
html.theme-dark .journey-site footer a{color:#ebe4d9}
html.theme-dark .journey-site .mobile-enquiry{background:#14110eee;border-top-color:#352e25}
html.theme-dark .journey-site .mobile-enquiry .mobile-track{color:#ebe4d9}
html.theme-dark .journey-site :is(dialog,.basket-dialog,#product-dialog){background:#19160f;color:#ebe4d9}
html.theme-dark .journey-site dialog :is(h2,h3,strong,label,legend){color:#f4f0e9}
html.theme-dark .journey-site dialog :is(p,small,li,.quote-help){color:#cfc6b8}
html.theme-dark .journey-site dialog :is(input,textarea,select){background:#14110e;color:#f2ede5;border-color:#51463a}
html.theme-dark .journey-site dialog :is(input,textarea)::placeholder{color:#9d9384}
html.theme-dark .journey-site :is(.dialog-close,details.private-lists,.product-navigation-step,.photo-download-link,.gallery-photo,.detail-gallery){background:#26211b;color:#f2ede5;border-color:#4a4033}
html.theme-dark .journey-site .detail-gallery img,html.theme-dark .journey-site #detail-image-wrap img{background:#f5f1ea}
html.theme-dark .journey-site .product-swipe-zone{background:#26211b;color:#cfc6b8}
html.theme-dark .journey-site #detail-category{background:transparent}
html.theme-dark .rj-theme-toggle{border-color:#5a4e40}
