.theme-atelier { --bg:#f5f2ed; --surface:#fffaf2; --surface-2:#e9efe9; --text:#20323a; --muted:#61706f; --primary:#2f6f70; --primary-2:#233b47; --accent:#c6a15b; --border:#d8d0c2; }
.theme-atelier .image-hero { background-image: linear-gradient(90deg, rgba(250,248,242,.86) 0%, rgba(250,248,242,.7) 48%, rgba(250,248,242,.46) 100%), var(--hero-image); min-height: min(700px, calc(100vh - 82px)); }
.theme-atelier .hero-media { background: radial-gradient(circle at 50% 0%, #ffffff 0%, #e3efe9 54%, #d8c8aa 100%); }

.theme-atelier .hero-grid { grid-template-columns: minmax(0, 760px); }
.theme-atelier .hero-media { display: none; }
.theme-atelier .image-hero h1, .theme-atelier .image-hero p { text-shadow: 0 1px 0 rgba(255,255,255,.35); }
.theme-atelier .image-hero .button.ghost { background: rgba(255,255,255,.42); backdrop-filter: blur(8px); }
.theme-atelier .service-card:nth-child(3n+2) { transform: translateY(18px); }
.theme-atelier .service-card { border: 0; box-shadow: 0 22px 60px rgba(55, 47, 36, .16); }
.theme-atelier .section.muted { border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.theme-atelier .trust-item { border: 0; box-shadow: 0 18px 45px rgba(55, 47, 36, .12); }

.theme-atelier .home-service-teasers .service-card:nth-child(n) { transform: none; }

.theme-atelier .image-hero { animation: atelier-hero-focus 1200ms var(--ease-out) both; }

.js-enabled .reveal.service-card:hover { transform: translateY(-5px); }
.js-enabled .reveal.location-card:hover,
.js-enabled .reveal.trust-item:hover,
.js-enabled .content-grid article.reveal:hover,
.js-enabled .reveal.fact-box:hover { transform: translateY(-3px); }
.js-enabled .theme-atelier .service-card.reveal:not(.is-visible) { transform: translateY(22px); }
.js-enabled .theme-atelier .service-card.reveal.is-visible:nth-child(3n+2) { transform: translateY(18px); }
.js-enabled .theme-atelier .service-card.reveal.is-visible:nth-child(3n+2):hover { transform: translateY(12px); }

@keyframes atelier-hero-focus {
  from { background-position: center 48%; }
  to { background-position: center; }
}
