/*
Theme Name: Relax Worlds
Author: Relax Worlds
Description: Natívna bloková téma pre wellness centrum Relax Worlds v Bratislave–Dúbravke.
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.2.2
Text Domain: relax-worlds
*/

html { scroll-behavior: smooth; scroll-padding-top: 6rem; }
body { overflow-x: hidden; }
.wp-site-blocks > * { margin-block-start:0; }
a { text-underline-offset: .2em; }
:where(a, button, input, textarea, select, [tabindex]):focus-visible { outline: 3px solid #c99842; outline-offset: 3px; }
.rw-site-header { position: sticky; top: 0; z-index: 100; box-shadow: 0 1px 0 rgba(83,56,40,.12); }
.admin-bar .rw-site-header { top: 32px; }
.rw-brand { text-decoration: none; }
.rw-brand img { display:block; flex:0 0 auto; }
.rw-header-row { min-height: 4.25rem; }
.rw-header-row > p { margin:0; }
.rw-brand { gap:.7rem !important; }
.rw-brand img { height:46px !important; width:46px !important; }
.rw-header-nav .wp-block-navigation-item__content { text-decoration:none; }
.rw-header-nav .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--gold-dark); }
.rw-button .wp-block-button__link { transition: transform .18s ease, background-color .18s ease, color .18s ease; }
.rw-button .wp-block-button__link:hover { transform: translateY(-1px); }
.rw-hero { overflow:hidden; position:relative; }
.rw-hero::before { background:radial-gradient(circle,rgba(201,152,66,.17) 0 1px,transparent 2px); background-size:24px 24px; content:""; inset:0 0 0 60%; opacity:.55; pointer-events:none; position:absolute; }
.rw-hero > * { position:relative; }
.rw-eyebrow { letter-spacing:.14em; text-transform:uppercase; }
.rw-hero-visual { border-radius: 50% 50% 2rem 2rem; box-shadow: 0 24px 60px rgba(83,56,40,.16); overflow:hidden; }
.rw-hero-visual img { width:100%; }
.rw-highlight-row { border-block:1px solid var(--wp--preset--color--border); }
.rw-service-card { height:100%; }
.rw-service-card,.rw-price-card { transition:border-color .18s ease,transform .18s ease; }
.rw-service-card:hover { border-color:var(--wp--preset--color--gold); transform:translateY(-2px); }
.rw-icon { width:3rem; height:3rem; }
.rw-price-row { align-items:center; border-bottom:1px solid rgba(216,198,168,.72); display:grid; gap:1rem; grid-template-columns:minmax(0,1fr) auto; padding:.72rem 0; }
.rw-price-row:last-child { border-bottom:0; }
.rw-price-row > :last-child { font-weight:700; white-space:nowrap; }
.rw-price-row > *,.rw-hours-row > * { line-height:1.35; margin:0 !important; }
.rw-hours-row { align-items:center; border-bottom:1px solid rgba(216,198,168,.65); display:flex; gap:1rem; justify-content:space-between; padding:.7rem 0; }
.rw-hours-row:last-child { border-bottom:0; }
.rw-featured { overflow:hidden; position:relative; }
.rw-featured::after { border:1px solid rgba(201,152,66,.35); border-radius:50%; content:""; height:24rem; position:absolute; right:-10rem; top:-12rem; width:24rem; }
.rw-featured > * { position:relative; z-index:1; }
.rw-contact-list { list-style:none; padding-left:0; }
.rw-contact-list li { margin-bottom:.8rem; }
.rw-footer a { color:inherit; }
.rw-gallery-placeholder { border:2px dashed var(--wp--preset--color--border); }
.rw-page-hero { background:radial-gradient(circle at 85% 20%,#3a2b20 0,#211a16 46%,#171310 100%); border-bottom:1px solid #5b4631; overflow:hidden; }
.rw-page-hero .wp-block-heading { max-width:16ch; }
.rw-gold-rule { background:#c99842; height:2px; width:4rem; }
.rw-info-card { background:#2b231d !important; border:1px solid #654d35; border-radius:16px; box-shadow:0 18px 45px rgba(0,0,0,.18); height:100%; padding:clamp(2rem,3.5vw,3.25rem) !important; }
.rw-info-card a { color:#e5bd6c; }
.rw-breadcrumbs a { color:#dcb365; }
.rw-map { border:1px solid #654d35; border-radius:18px; min-height:420px; overflow:hidden; }
.rw-map iframe { border:0; display:block; height:clamp(420px,52vw,560px); width:100%; }
.rw-form { display:grid; gap:1rem; }
.rw-form-grid { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rw-field { display:grid; gap:.4rem; }
.rw-field label { color:#f5ecdf; font-weight:700; }
.rw-field input,.rw-field textarea { background:#171310; border:1px solid #6e543a; border-radius:8px; box-sizing:border-box; color:#f8f3ea; font:inherit; padding:.8rem .9rem; width:100%; }
.rw-field input:focus,.rw-field textarea:focus { border-color:#c99842; outline:3px solid rgba(201,152,66,.25); }
.rw-form button { background:#c99842; border:0; border-radius:6px; color:#171310; cursor:pointer; font:inherit; font-weight:800; padding:.9rem 1.35rem; width:max-content; }
.rw-form button:hover { background:#e0b765; }
.rw-form-status { border-left:4px solid #c99842; padding:.8rem 1rem; }
.rw-honeypot { left:-9999px; position:absolute; }
@media (max-width: 781px) {
  .rw-header-row { min-height:3.75rem; }
  .rw-header-nav { order:3; }
  .rw-header-phone .wp-block-button__link { font-size:0; padding:.7rem; }
  .rw-header-phone .wp-block-button__link::after { content:"☎"; font-size:1.25rem; line-height:1; }
  .rw-featured-price { text-align:left !important; }
  .rw-form-grid { grid-template-columns:1fr; }
  .rw-footer .has-text-align-right { text-align:left; }
}
@media (max-width: 1024px) {
  .rw-header-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none !important; }
  .rw-header-nav .wp-block-navigation__responsive-container-open { display:flex !important; }
}
@media (max-width: 360px) {
  .rw-brand-name { font-size:1rem !important; }
  .rw-header-row { gap:.5rem !important; }
  .rw-header-phone .wp-block-button__link { padding:.58rem; }
}
@media (max-width: 782px) { .admin-bar .rw-site-header { top:46px; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.01ms !important; }
}

/* Warm dark visual direction — deep brown surfaces, never pure black. */
body {
  background: #171310;
  color: #f2e9dc;
}
.has-ivory-background-color { background-color: #201a16 !important; }
.has-surface-background-color { background-color: #29211b !important; }
.has-sand-background-color { background-color: #392d24 !important; }
.has-border-color { border-color: #6e543a !important; }
.has-muted-color { color: #c8b9aa !important; }
.has-gold-dark-color { color: #e0b765 !important; }
.rw-site-header { background: rgba(31, 25, 21, .96) !important; border-bottom: 1px solid #5b4631; }
.rw-site-header { backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
.rw-site-header,.rw-site-header a { color: #f8f3ea; }
.rw-brand-name { color:#f8f3ea; font-family:var(--wp--preset--font-family--display); font-weight:600; text-decoration:none; white-space:nowrap; }
.rw-hero { background: radial-gradient(circle at 70% 20%, #33271f 0, #201a16 44%, #171310 100%) !important; }
.rw-hero::before { opacity:.22; }
.rw-highlight-row { background:#241d18 !important; border-color:#6e543a; }
.rw-service-card,.rw-price-card { background:#2b231d !important; border-color:#654d35 !important; box-shadow:0 16px 45px rgba(0,0,0,.18); }
.rw-price-card { padding:clamp(2rem,3.5vw,3.25rem) !important; }
.rw-service-card:hover { border-color:#c99842 !important; }
.rw-price-row,.rw-hours-row { border-color:rgba(201,152,66,.3); }
.rw-gallery-placeholder { border-color:#806344; }
.wp-block-heading { color:#f5ecdf; }
.rw-price-card .wp-block-heading,
.rw-service-card .wp-block-heading { color:#f5ecdf; }
.rw-contact-list a,.rw-footer a { color:#e5bd6c; }
.rw-footer { background:#171310 !important; border-top:1px solid #5b4631; }
#masaze { background:#241d18 !important; border-top:1px solid #6e543a; border-bottom:1px solid #6e543a; }
#masaze .wp-block-button__link { background:#c99842 !important; color:#171310 !important; }
.wp-block-button.is-style-outline .wp-block-button__link { border-color:#c99842; color:#f8f3ea !important; }
.rw-header-phone .wp-block-button__link { border:1px solid #c99842; }
.rw-header-phone,.rw-header-phone .wp-block-button__link { flex-shrink:0; white-space:nowrap; }
@media (max-width:781px) {
  .rw-site-header .wp-block-navigation__responsive-container { background:#201a16 !important; color:#f8f3ea !important; }
  .rw-site-header .wp-block-navigation__responsive-container a { color:#f8f3ea !important; }
}
