/* Small shared refinements, scoped to the existing public-page design. */
.site-refined { --polish-ink: #211f1b; --polish-muted: #696158; --polish-line: #ded6ca; }
.site-refined main { overflow-x: clip; }
/* Content remains visible by default. Entry motion is applied progressively in JS. */
.site-refined main .section-label { font-size: 12px; line-height: 1.5; letter-spacing: .13em; color: #82725f; }
.site-refined main h2.section-title { font-size: clamp(29px,3vw,44px); line-height: 1.16; letter-spacing: -.035em; max-width: 27ch; }
.site-refined main h2.section-title.mx-auto, .site-refined main .text-center h2.section-title { margin-inline: auto; }
.site-refined main h3 { line-height: 1.3; }
.site-refined main p { text-wrap: pretty; }
.site-refined main p[class*="leading"] { line-height: 1.65; }
.site-refined main :is(article[class*="border"],.home-path,[class*="shadow-soft"]) { box-shadow: none; }
.site-refined main article[class*="rounded"] { border-radius: 12px; border-color: #ded6ca; }
.site-refined main .hover-lift:hover { transform: translateY(-2px); box-shadow: 0 8px 24px #49372109; }
.site-refined main :is(a,button)[class*="uppercase"] { letter-spacing: .05em; }
.site-refined main :is(a,button).rounded-full { min-height: 46px; }
.site-refined main :is(a,button).rounded-full:hover { transform: translateY(-1px); }
.site-refined main :is(article > svg,article > div > svg,div[class*="w-11"][class*="rounded"] > svg,div[class*="w-12"][class*="rounded"] > svg) { color: #89745b; }
.site-refined main :is(div[class*="w-11"][class*="rounded"],div[class*="w-12"][class*="rounded"]) { background: #f0ebe2; }
.site-refined main .geo-advantage-card::before { display: none; }
.site-refined main .for-brands-hero > div { min-height: 570px; }
.site-refined .for-brands-hero .model-stage { min-height: 560px; }
.site-refined .for-brands-hero .model-stage > div:last-child { max-width: 270px; padding: 17px; border-radius: 8px; }
.site-refined .for-brands-hero .model-stage > div:not(:first-child) { z-index: 1; }
.site-refined .for-brands-hero .model-stage > div:last-child p:last-child { font-size: 14px; font-weight: 400; }
.site-refined .polish-studio-link { color: #795538; font-size: 14px; min-height: 46px; }
.site-refined #project-fit .project-fit-cards { border-radius: 12px; box-shadow: none; }
.site-refined #project-fit .project-fit-heading { gap: 30px; margin-bottom: 24px; }
.site-refined #project-fit .project-fit-heading h2 { font-size: clamp(29px,3vw,44px); font-weight: 650; }
.site-refined #project-fit .project-fit-bottom a { min-height: 46px; }
.site-refined #engagement-models article { padding: 25px; }
.site-refined #engagement-models article li { font-size: 14px; line-height: 1.7; }
.site-refined #models model-viewer { height: 300px; }
.site-refined #models article p:last-child { font-size: 15px; font-weight: 400; line-height: 1.65; }
.site-refined #production-supply-chain .grid { row-gap: 10px; }
.site-refined #production-supply-chain h3 { font-size: 22px; }
.site-refined #production-supply-chain .border-b { padding-block: 22px; }
.site-refined #quote-preparation h3 { font-size: 22px; }
.site-refined #quote-preparation .rounded-2xl { padding-block: 24px; border-radius: 12px; }
.site-refined main[data-polish-page="about"] #creative-advantage h2 { font-size: clamp(26px,2.4vw,36px); }
.site-refined main[data-polish-page="about"] #creative-advantage :is(.text-blue-600,.text-purple-600) { color: #89745b; }
.site-refined #project-form h2 { font-size: clamp(29px,3.3vw,43px); line-height: 1.15; }
.site-refined #project-form .shadow-soft { box-shadow: 0 8px 24px #392d1b05; }
.site-refined #project-form textarea { min-height: 140px; }
.site-refined .faq-answer p { line-height: 1.7; }
.site-refined #topics h2 { font-size: clamp(29px,3vw,40px); }
.site-refined #dukki-decor { display: none !important; }
.polish-footer p { max-width: 48ch; }
.polish-footer .space-y-4 { line-height: 1.6; }
.site-refined #selected-work h3, .site-refined #selected-brand-work h3 { font-size: 21px; }
.site-refined .polish-hint { margin-top: 14px; font-size: 14px; line-height: 1.65; color: #766753; }
.site-refined .polish-hint a { display: inline-flex; align-items: center; min-height: 44px; color: #765336; text-decoration: underline; text-underline-offset: 4px; }
/* Related card families share a paper palette, but retain their own purpose. */
.site-refined [aria-labelledby="b2b-quickfacts-title"] .grid { gap: 14px; }
.site-refined [aria-labelledby="b2b-quickfacts-title"] .grid > div { padding: 23px; background: #faf8f4; border-color: #e6ded2; }
.site-refined [aria-labelledby="b2b-quickfacts-title"] .grid > div > .flex { align-items: center; gap: 16px; height: 100%; }
.site-refined [aria-labelledby="b2b-quickfacts-title"] .grid p:first-child { margin-bottom: 7px; color: #746859; font-size: 12px; letter-spacing: .08em; }
.site-refined [aria-labelledby="b2b-quickfacts-title"] .grid p:last-child { font-size: 16px; line-height: 1.5; font-weight: 600; }
.site-refined #engagement-models .mt-12.grid { gap: 18px; margin-top: 30px; }
.site-refined #engagement-models article { display: flex; flex-direction: column; border-radius: 14px; border-top: 3px solid #b6a38b; padding: 27px; background: #fffdfa; }
.site-refined #engagement-models article > p:first-child { font-size: 12px; letter-spacing: .1em; color: #7e6b54; }
.site-refined #engagement-models h3 { margin-top: 18px; font-size: 24px; letter-spacing: -.025em; max-width: 22ch; }
.site-refined #engagement-models h3 + p { margin-top: 12px; margin-bottom: 24px; font-size: 16px; line-height: 1.6; }
.site-refined #engagement-models ul { margin-top: auto; border-top: 1px solid #e6ded2; padding-top: 20px; }
.site-refined #engagement-models li { color: #655c51; font-size: 15px; font-weight: 500; line-height: 1.6; }
.site-refined .polish-team-card { display: grid; grid-template-columns: 1fr 44px; align-content: start; gap: 0 12px; padding: 24px; background: #faf8f4; border-radius: 14px; }
.site-refined .polish-team-card > p:first-child { grid-column: 1; align-self: center; margin: 0; color: #7a6b59; font-size: 12px; line-height: 1.5; letter-spacing: .08em; }
.site-refined .polish-team-card > div { grid-column: 2; grid-row: 1; width: 44px; height: 44px; margin-bottom: 0; border: 1px solid #e7ddce; border-radius: 12px; background: #f0e9de; }
.site-refined .polish-team-card > div svg { width: 22px; height: 22px; color: #816c52; }
.site-refined .polish-team-card h3 { grid-column: 1 / -1; margin-top: 24px; margin-bottom: 11px; font-size: 21px; letter-spacing: -.02em; }
.site-refined .polish-team-card > p:last-child { grid-column: 1 / -1; color: #6e655a; font-size: 15px; line-height: 1.65; font-weight: 400; }
.site-refined .product-card { border: 1px solid #e7e0d6; border-radius: 14px; box-shadow: 0 3px 12px #49372104; transition: border-color .2s,box-shadow .2s,transform .2s; }
.site-refined .product-card:hover { transform: translateY(-3px); border-color: #c8b79e; box-shadow: 0 10px 24px #4937210d; }
.site-refined .product-card:is(:hover,:focus-within,.is-open) { z-index: 30; }
.site-refined .product-card .product-image-wrapper { border-radius: 13px 13px 0 0; background: #f8f6f1; padding: 14px; }
.site-refined .product-card:is(:hover,:focus-within,.is-open) img { transform: scale(1.04); }
.site-refined .product-card .product-card-caption { flex: 1; border-top: 1px solid #eee8df; border-radius: 0 0 13px 13px; padding: 17px 18px; }
.site-refined .product-card-caption h4 { color: #29241e; font-size: 16px; line-height: 1.4; overflow-wrap: anywhere; margin-bottom: 5px; }
.site-refined .product-card-caption > span { font-size: 13px; line-height: 1.5; color: #766b5c; }
.site-refined .product-card:focus-visible { outline: 2px solid #8d765b; outline-offset: 4px; }
@media (min-width: 1024px) {
  .site-refined main > section:not(.mobile-stack-hero):not(.for-brands-hero):not(#project-form):not(#project-fit):not(#filter-bar):not(#collection-results):not(#category-title)[class*="lg:py-"] { padding-top: 60px; padding-bottom: 60px; }
}
@media (max-width: 767px) {
  .site-refined main > section:not(.mobile-stack-hero):not(.for-brands-hero):not(#project-form):not(#project-fit):not(#filter-bar):not(#collection-results):not(#category-title)[class*="py-"] { padding-block: 38px !important; }
  .site-refined main h2.section-title { font-size: clamp(27px,7vw,34px) !important; line-height: 1.2 !important; letter-spacing: -.025em !important; }
  .site-refined main h3 { overflow-wrap: break-word; }
  .site-refined main .mobile-stack-hero:not(.hero-home), .site-refined main > .mobile-stack-hero:not(.hero-home) { min-height: 560px !important; }
  .site-refined .mobile-stack-hero:not(.hero-home) > .relative.z-10 { padding-top: 100px !important; padding-bottom: 52px !important; }
  .site-refined .mobile-stack-hero:not(.hero-home) :is(.max-w-2xl,.w-\[85\%\],.max-w-\[620px\]) { width: 78% !important; max-width: 400px !important; }
  .site-refined .mobile-stack-hero:not(.hero-home) h1 { font-size: clamp(29px,7.4vw,36px) !important; line-height: 1.12 !important; text-wrap: balance; }
  .site-refined .hero-about > .absolute.inset-0 > img { transform-origin: center !important; transform: scaleX(-1) scale(1.05) !important; }
  .site-refined .mobile-stack-hero > .relative.z-10 p[class*="mt-"]:not(.hidden) { font-size: 15px !important; line-height: 1.6 !important; -webkit-line-clamp: unset; display: block; }
  .site-refined .for-brands-hero .model-stage { min-height: 420px; }
  .site-refined #models model-viewer { height: 260px; }
  .site-refined #project-form { padding: 38px 18px; }
  .site-refined #project-form textarea { min-height: 135px; }
  .site-refined #project-fit .project-fit-cards article { padding: 22px; }
  .site-refined #project-fit .project-fit-heading { gap: 16px; }
  .site-refined #production-supply-chain .border-b { padding-block: 20px; }
  .site-refined #production-supply-chain h3 { font-size: 22px; }
  .site-refined main :is(a,button,summary):focus-visible { outline: 2px solid #8d765b; outline-offset: 4px; }
  .site-refined [aria-labelledby="b2b-quickfacts-title"] .grid > div { padding: 20px; }
  .site-refined .polish-team-card { padding: 22px; }
  .site-refined .polish-team-card h3 { margin-top: 18px; }
  .site-refined #engagement-models article { padding: 23px; }
  .site-refined .product-card .product-image-wrapper { padding: 8px; }
  .site-refined .product-card .product-card-caption { padding: 13px 12px; }
  .site-refined .product-card-caption h4 { font-size: 15px; }
}
/* A visible-first motion layer: no opacity:0/hidden waiting states. */
@media (prefers-reduced-motion: no-preference) {
  .motion-enhanced .site-refined main :is(a,button,summary) { transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .2s ease, transform .2s ease-out; }
  .motion-enhanced .site-refined [data-motion-card] { transition: transform .35s cubic-bezier(.34,1.56,.64,1), box-shadow .35s ease, border-color .35s ease; }
  /* Restore original accents, not a permanently hidden replacement layer. */
  .motion-ready .site-refined main :is(.reveal-on-scroll,.reveal-left,.reveal-right,.reveal-scale) { opacity: 1; transform: none; }
  .motion-enhanced .site-refined main .shimmer-effect::after, .motion-enhanced .site-refined .pulse-dot::before { display: block; pointer-events: none; }
  .motion-enhanced .site-refined :is(.home-studio-entry a,.home-studio-callout > a,.home-hero-actions a) svg { transition: transform .2s ease-out; }
  .motion-enhanced .site-refined :is(.home-studio-entry a,.home-studio-callout > a,.home-hero-actions a):is(:hover,:focus-visible) svg { transform: translateX(2px); }
  .motion-enhanced .site-refined main :is(a,button):is(.rounded-full,.shimmer-effect):hover { transform: translateY(-3px); }
  .motion-enhanced .site-refined #project-form :is(input,textarea,select) { transition: border-color .2s, box-shadow .25s, background-color .25s; }
  .motion-enhanced .site-refined #project-form :is(input,textarea,select):focus { border-color: #9a8062; box-shadow: 0 0 0 1px #bfa78a26; }
  .motion-enhanced .site-refined .home-studio-callout { transition: border-color .2s, background-color .2s; }
  .motion-enhanced .site-refined .home-studio-callout:focus-within { border-color: #ad8a62; }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .motion-enhanced .site-refined main :is([data-motion-card],.hover-lift):hover { transform: translateY(-8px); border-color: #baa58a; box-shadow: 0 20px 60px #1111111f; }
  .motion-enhanced .site-refined main .product-card:hover { transform: translateY(-5px); border-color: #baa58a; box-shadow: 0 14px 32px #49372118; }
  .motion-enhanced .site-refined main .hover-glow:hover { border-color: #bf4a3c; box-shadow: 0 0 40px #bf4a3c26, 0 20px 60px #11111119; }
  .motion-enhanced .site-refined .home-studio-callout:hover { border-color: #ad8a62; background: #f8f3e9; }
  .motion-enhanced .site-refined :is(.journal-category-card,.media-zoom) img { transition: transform .7s cubic-bezier(.34,1.56,.64,1); }
  .motion-enhanced .site-refined :is(.journal-category-card,.media-zoom):hover img { transform: scale(1.06); }
}
/* Touch devices use the scroll reveals and floating characters, not sticky hover. */
@media (hover: none) {
  .motion-ready .site-refined main :is(.hover-lift,[data-motion-card],.product-card):hover { transform: none; }
}
.motion-page-hidden .site-refined main *, .motion-page-hidden .site-refined main *::before, .motion-page-hidden .site-refined main *::after { animation-play-state: paused !important; }
@media (prefers-reduced-motion: reduce) {
  .site-refined main *, .site-refined main *::before, .site-refined main *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
