/* REAL SOUND shared component system — V10 prelaunch */
:root{
  --rs-bg:#050607;
  --rs-panel:#0d1015;
  --rs-text:#f7f4ed;
  --rs-muted:#aeb5bf;
  --rs-gold:#f6bd13;
  --rs-line:rgba(255,255,255,.10);
  --rs-radius:22px;
  --rs-shadow:0 24px 70px rgba(0,0,0,.34);
  --rs-ease:cubic-bezier(.22,1,.36,1);
}
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:hidden}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(246,189,19,.78);outline-offset:3px}
:where(.btn,.button,.cta-button,.rs-master-calc,[class*="btn-"]){transition:transform .26s var(--rs-ease),box-shadow .26s ease,border-color .26s ease,background-color .26s ease,filter .26s ease}
:where(.btn,.button,.cta-button,.rs-master-calc,[class*="btn-"]):hover{transform:translateY(-2px)}
.rs-system-form :where(input,textarea,select){transition:border-color .24s ease,box-shadow .24s ease,background-color .24s ease}
.rs-system-form :where(input,textarea,select):focus{border-color:rgba(246,189,19,.66)!important;box-shadow:0 0 0 3px rgba(246,189,19,.09)!important}
.rs-system-form :where(button[type="submit"]){cursor:pointer}
.rs-media-hover{overflow:hidden;transition:transform .5s var(--rs-ease),border-color .35s ease,box-shadow .5s var(--rs-ease),filter .35s ease}
.rs-media-hover:hover{transform:translateY(-4px);border-color:rgba(246,189,19,.34)!important;box-shadow:0 28px 76px rgba(0,0,0,.42)}
.rs-media-hover>img,.rs-media-hover picture img{transition:transform .75s var(--rs-ease),filter .35s ease}
.rs-media-hover:hover>img,.rs-media-hover:hover picture img{transform:scale(1.035);filter:brightness(1.05) saturate(1.04)}
.rs-animate-in{animation:rsFadeUp .72s var(--rs-ease) both}
@keyframes rsFadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.rs-site-footer{position:relative;padding:42px 0 26px;border-top:1px solid var(--rs-line);background:#050607;color:var(--rs-text)}
.rs-site-footer__inner{width:min(1320px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:230px 1fr auto;gap:40px;align-items:start}
.rs-site-footer__brand img{width:190px;height:auto}.rs-site-footer__brand p{margin:14px 0 0;color:#727983;font-size:12px;line-height:1.55}
.rs-site-footer__nav{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px 24px}.rs-site-footer__nav a,.rs-site-footer__contacts a{color:#c9ced5;font-size:13px;font-weight:700;text-decoration:none;transition:color .22s ease}.rs-site-footer__nav a:hover,.rs-site-footer__contacts a:hover{color:var(--rs-gold)}
.rs-site-footer__contacts{display:grid;gap:11px;text-align:right}.rs-site-footer__contacts strong{font-size:12px;color:#fff;letter-spacing:.08em;text-transform:uppercase}
.rs-site-footer__bottom{width:min(1320px,calc(100% - 48px));margin:28px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;gap:18px;color:#6f7680;font-size:11px}
.rs-page-safety-visible{opacity:1!important;visibility:visible!important;transform:none!important}
@media(max-width:900px){.rs-site-footer__inner{grid-template-columns:1fr 1fr}.rs-site-footer__contacts{text-align:left}.rs-site-footer__nav{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.rs-site-footer{padding-top:34px}.rs-site-footer__inner,.rs-site-footer__bottom{width:calc(100% - 28px)}.rs-site-footer__inner{grid-template-columns:1fr;gap:26px}.rs-site-footer__nav{grid-column:auto;grid-template-columns:1fr 1fr}.rs-site-footer__contacts{text-align:left}.rs-site-footer__bottom{flex-direction:column}.rs-media-hover:hover{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rs-animate-in{animation:none}.rs-media-hover,.rs-media-hover>img,.rs-media-hover picture img{transition:none!important;transform:none!important}}


/* Legal consent, legal footer and cookie preferences — V11 */
.rs-legal-consent{grid-column:1/-1;display:flex!important;align-items:flex-start;gap:11px;width:100%;margin:6px 0 10px;padding:14px 15px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.035);color:#aeb5bf;font-size:12px!important;line-height:1.55!important;text-align:left}
.rs-legal-consent input{appearance:auto!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:1px 0 0!important;padding:0!important;box-shadow:none!important;accent-color:var(--rs-gold)}
.rs-legal-consent a{color:#f2c84a;text-decoration:underline;text-decoration-color:rgba(242,200,74,.44);text-underline-offset:3px}.rs-legal-consent a:hover{color:#fff}
.rs-site-footer__legal{width:min(1320px,calc(100% - 48px));margin:26px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.07);display:flex;flex-wrap:wrap;gap:10px 24px}
.rs-site-footer__legal a{color:#858c96;font-size:11px;font-weight:700;text-decoration:none;transition:color .22s ease}.rs-site-footer__legal a:hover{color:var(--rs-gold)}
.rs-cookie-banner{position:fixed;z-index:100000;left:22px;right:22px;bottom:22px;max-width:1180px;margin:auto;padding:20px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(8,10,13,.96);box-shadow:0 24px 90px rgba(0,0,0,.58);backdrop-filter:blur(18px);color:var(--rs-text);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}
.rs-cookie-banner[hidden]{display:none!important}.rs-cookie-banner__copy strong{display:block;margin-bottom:6px;font-size:15px}.rs-cookie-banner__copy p{margin:0;color:#aeb5bf;font-size:12px;line-height:1.65}.rs-cookie-banner__copy a{color:var(--rs-gold);text-decoration:none}.rs-cookie-banner__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.rs-cookie-button{min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#11151b;color:#fff;font-size:12px;font-weight:800;cursor:pointer}.rs-cookie-button--primary{border-color:var(--rs-gold);background:var(--rs-gold);color:#111}.rs-cookie-settings-trigger{border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:rgba(255,255,255,.24);text-underline-offset:3px}
@media(max-width:720px){.rs-cookie-banner{left:12px;right:12px;bottom:12px;grid-template-columns:1fr;padding:17px}.rs-cookie-banner__actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.rs-cookie-button{width:100%}.rs-site-footer__legal{width:calc(100% - 28px);gap:12px 18px}}

/* V12 mobile contact dock: lower placement, iPhone safe-area tuning, clearer actions. */
@media (max-width:700px){
  body:has(.mobile-bar){padding-bottom:88px!important}
  body:has(.mobile-bar) .rs-cookie-banner{bottom:78px!important}
  .mobile-bar{
    left:8px!important;
    right:8px!important;
    bottom:max(3px,calc(env(safe-area-inset-bottom,0px) - 24px))!important;
    z-index:2147482000!important;
    min-height:64px!important;
    padding:7px!important;
    padding-bottom:7px!important;
    gap:6px!important;
    border-radius:20px!important;
    border:1px solid rgba(246,189,19,.28)!important;
    background:linear-gradient(180deg,rgba(17,20,25,.97),rgba(7,9,12,.98))!important;
    box-shadow:0 -10px 34px rgba(0,0,0,.30),0 12px 34px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.07),0 0 0 1px rgba(246,189,19,.045)!important;
    -webkit-backdrop-filter:blur(22px) saturate(1.25)!important;
    backdrop-filter:blur(22px) saturate(1.25)!important;
  }
  .mobile-bar a,.mobile-bar button{
    min-width:0!important;
    height:50px!important;
    padding:0 12px!important;
    gap:9px!important;
    border-radius:14px!important;
    border:1px solid rgba(255,255,255,.13)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;
    color:#fff!important;
    font-size:15px!important;
    font-weight:700!important;
    line-height:1!important;
    white-space:nowrap!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-bar a:active,.mobile-bar button:active{transform:translateY(1px)!important}
  .mobile-bar-call::before,.mobile-bar a[href^="tel:"]::before{
    content:"";
    width:18px;
    height:18px;
    flex:0 0 18px;
    background:#fff;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .mobile-bar .mobile-bar-wa,.mobile-bar a[href*="wa.me/"]{
    border-color:rgba(75,224,104,.25)!important;
  }
  .mobile-bar-wa::before,.mobile-bar a[href*="wa.me/"]::before{
    content:"";
    width:10px;
    height:10px;
    flex:0 0 10px;
    border-radius:50%;
    background:#55e66f;
    box-shadow:0 0 0 5px rgba(85,230,111,.09),0 0 15px rgba(85,230,111,.72);
  }
  .mobile-bar .mobile-bar-calc,.mobile-bar > :last-child{
    border-color:rgba(255,211,56,.60)!important;
    background:linear-gradient(180deg,#ffd33c,#efb400)!important;
    color:#090909!important;
    font-weight:850!important;
    box-shadow:0 8px 22px rgba(246,189,19,.22),inset 0 1px 0 rgba(255,255,255,.42)!important;
  }
}
@media (max-width:370px){
  .mobile-bar{left:5px!important;right:5px!important;gap:4px!important;padding:5px!important}
  .mobile-bar a,.mobile-bar button{height:48px!important;padding:0 8px!important;gap:6px!important;font-size:13px!important}
  .mobile-bar-call::before,.mobile-bar a[href^="tel:"]::before{width:16px;height:16px;flex-basis:16px}
  .mobile-bar-wa::before,.mobile-bar a[href*="wa.me/"]::before{width:8px;height:8px;flex-basis:8px}
}
@media (display-mode:standalone) and (max-width:700px){
  .mobile-bar{bottom:max(6px,env(safe-area-inset-bottom,0px))!important}
  body:has(.mobile-bar){padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))!important}
}
