/*
Theme Name: Rosenberg Office Hub
Theme URI: https://rosenbergperformance.com
Author: Rosenberg Performance
Description: Modernes, helles Premium-WordPress-Theme für Rosenberg Office Hub mit animierten Service-Karten, Hero-Bereich, Paketen, Webservice, Über-uns und Kontakt.
Version: 9.0.0
License: GPLv2 or later
Text Domain: rosenberg-office-hub
*/

:root{
  --roh-turquoise:#009f9d;
  --roh-turquoise-dark:#007d7b;
  --roh-mint:#e9fbfa;
  --roh-dark:#07131f;
  --roh-text:#1d2730;
  --roh-muted:#66737f;
  --roh-line:#dceced;
  --roh-white:#ffffff;
  --roh-soft:#f7fbfb;
  --roh-shadow:0 22px 60px rgba(7,19,31,.10);
  --roh-radius:28px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--roh-text);background:linear-gradient(180deg,#fff 0%,#f8fcfc 100%);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.roh-container{width:min(1180px,calc(100% - 40px));margin:auto}.roh-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,159,157,.10)}.roh-nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:26px}.roh-logo{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.04em}.roh-logo-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--roh-turquoise),#0d2230);display:grid;place-items:center;color:#fff;font-size:30px;font-weight:900;box-shadow:0 12px 30px rgba(0,159,157,.25)}.roh-logo-text strong{display:block;font-size:21px;line-height:1;color:var(--roh-dark)}.roh-logo-text span{font-size:12px;letter-spacing:.38em;color:var(--roh-turquoise);font-weight:800}.roh-menu{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.roh-menu a{position:relative}.roh-menu a:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background:var(--roh-turquoise);transform:scaleX(0);transition:.28s}.roh-menu a:hover:after{transform:scaleX(1)}.roh-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;padding:13px 22px;background:linear-gradient(135deg,var(--roh-turquoise),#08b9b6);color:#fff;font-weight:800;border:0;box-shadow:0 16px 36px rgba(0,159,157,.22);transition:.28s}.roh-btn:hover{transform:translateY(-3px);box-shadow:0 22px 46px rgba(0,159,157,.32)}.roh-btn.secondary{background:#fff;color:var(--roh-dark);border:1px solid rgba(0,159,157,.24);box-shadow:none}.roh-hero{position:relative;overflow:hidden;min-height:760px;padding:86px 0 72px}.roh-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(0,159,157,.18),transparent 34%),radial-gradient(circle at 20% 75%,rgba(0,159,157,.08),transparent 30%);pointer-events:none}.roh-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:34px;position:relative;z-index:2}.roh-kicker{color:var(--roh-turquoise);font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}.roh-hero h1{font-size:clamp(48px,6vw,88px);line-height:.96;margin:0 0 26px;color:var(--roh-dark);letter-spacing:-.06em}.roh-gradient{background:linear-gradient(135deg,var(--roh-turquoise),#0d5665);-webkit-background-clip:text;color:transparent}.roh-lead{font-size:20px;max-width:590px;color:#263440;margin:0 0 32px}.roh-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:42px}.roh-trust{display:flex;gap:40px;flex-wrap:wrap}.roh-trust-item{display:flex;gap:12px;align-items:center}.roh-icon{width:52px;height:52px;border-radius:16px;background:#fff;border:1px solid rgba(0,159,157,.12);display:grid;place-items:center;color:var(--roh-turquoise);font-size:24px;box-shadow:0 12px 28px rgba(7,19,31,.06)}.roh-hero-media{position:relative;min-height:550px}.roh-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:38px;box-shadow:var(--roh-shadow);filter:saturate(1.04);transform:perspective(900px) rotateY(-4deg);animation:rohFloat 7s ease-in-out infinite}.roh-hero-media:after{content:"";position:absolute;inset:0;border-radius:38px;background:linear-gradient(90deg,rgba(255,255,255,.82),rgba(255,255,255,.08) 45%,rgba(0,159,157,.12));pointer-events:none}.roh-floating{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:16px;z-index:8}.roh-floating a{width:56px;height:56px;display:grid;place-items:center;background:#fff;border:1px solid rgba(0,159,157,.16);border-radius:18px;color:var(--roh-turquoise);font-size:23px;box-shadow:0 18px 38px rgba(7,19,31,.10);transition:.25s}.roh-floating a:hover{transform:translateX(-5px) scale(1.04)}.roh-section{padding:94px 0}.roh-section-title{max-width:760px;margin:0 auto 42px;text-align:center}.roh-section-title h2{font-size:clamp(34px,4vw,56px);line-height:1.05;margin:0 0 16px;color:var(--roh-dark);letter-spacing:-.04em}.roh-section-title p{font-size:18px;color:var(--roh-muted);margin:0}.roh-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.roh-card{background:rgba(255,255,255,.86);border:1px solid rgba(0,159,157,.13);border-radius:var(--roh-radius);padding:30px;box-shadow:0 16px 45px rgba(7,19,31,.06);transition:.32s;position:relative;overflow:hidden}.roh-card:before{content:"";position:absolute;width:160px;height:160px;background:radial-gradient(circle,rgba(0,159,157,.18),transparent 70%);right:-60px;top:-60px;transition:.32s}.roh-card:hover{transform:translateY(-10px);box-shadow:var(--roh-shadow);border-color:rgba(0,159,157,.28)}.roh-card:hover:before{transform:scale(1.5)}.roh-card h3{margin:18px 0 10px;font-size:22px;color:var(--roh-dark)}.roh-card ul{padding-left:18px;margin:14px 0 0;color:var(--roh-muted)}.roh-card li{margin:7px 0}.roh-badge{display:inline-flex;border-radius:999px;background:var(--roh-mint);color:var(--roh-turquoise-dark);padding:7px 12px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.roh-split{display:grid;grid-template-columns:.95fr 1.05fr;gap:46px;align-items:center}.roh-panel{background:#fff;border:1px solid rgba(0,159,157,.12);border-radius:38px;padding:44px;box-shadow:var(--roh-shadow)}.roh-panel h2{font-size:44px;line-height:1.08;margin:0 0 18px;color:var(--roh-dark)}.roh-steps{display:grid;gap:16px}.roh-step{display:flex;gap:16px;align-items:flex-start;background:var(--roh-soft);border:1px solid rgba(0,159,157,.10);padding:18px;border-radius:22px}.roh-number{flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--roh-turquoise);color:#fff;display:grid;place-items:center;font-weight:900}.roh-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.roh-price{background:#fff;border:1px solid rgba(0,159,157,.14);border-radius:30px;padding:30px;box-shadow:0 18px 40px rgba(7,19,31,.06);transition:.3s}.roh-price.featured{border:2px solid var(--roh-turquoise);transform:translateY(-12px)}.roh-price:hover{transform:translateY(-10px)}.roh-price.featured:hover{transform:translateY(-18px)}.roh-price h3{font-size:26px;margin:14px 0 6px;color:var(--roh-dark)}.roh-price .price{font-size:34px;font-weight:900;color:var(--roh-turquoise);margin:18px 0}.roh-contact{background:linear-gradient(135deg,var(--roh-dark),#0b3541);color:#fff;border-radius:42px;padding:60px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;box-shadow:var(--roh-shadow)}.roh-contact h2{font-size:44px;line-height:1.05;margin:0 0 12px}.roh-footer{padding:38px 0;border-top:1px solid rgba(0,159,157,.12);background:#fff;color:var(--roh-muted)}.roh-footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.roh-top{position:fixed;right:28px;bottom:28px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--roh-turquoise),#0aa);color:#fff;display:grid;place-items:center;font-size:26px;box-shadow:0 18px 38px rgba(0,159,157,.34);z-index:60;opacity:0;visibility:hidden;transform:translateY(18px);transition:.28s}.roh-top.show{opacity:1;visibility:visible;transform:translateY(0)}.roh-top span{font-size:12px;position:absolute;top:66px;color:var(--roh-dark);font-weight:800;text-transform:uppercase;white-space:nowrap}.roh-reveal{opacity:0;transform:translateY(36px);transition:opacity .65s ease,transform .65s ease}.roh-reveal.in{opacity:1;transform:translateY(0)}
@keyframes rohFloat{0%,100%{transform:perspective(900px) rotateY(-4deg) translateY(0)}50%{transform:perspective(900px) rotateY(-1deg) translateY(-18px)}}
@media(max-width:980px){.roh-menu{display:none}.roh-hero-grid,.roh-split,.roh-contact{grid-template-columns:1fr}.roh-hero-media{min-height:380px}.roh-cards,.roh-pricing{grid-template-columns:1fr}.roh-price.featured{transform:none}.roh-hero{padding-top:52px}.roh-nav{height:76px}.roh-floating{display:none}}@media(max-width:640px){.roh-container{width:min(100% - 28px,1180px)}.roh-hero h1{font-size:48px}.roh-contact,.roh-panel{padding:28px}.roh-section{padding:70px 0}.roh-trust{gap:18px}.roh-logo-text strong{font-size:17px}.roh-logo-text span{font-size:10px}.roh-btn{width:100%}}


/* Version 2.0 – footer, WooCommerce, custom cursor and configurable motion */
body{position:relative;isolation:isolate}
body:before{content:"";position:fixed;inset:0;z-index:-3;background-size:cover;background-position:center;background-attachment:fixed;pointer-events:none}
.roh-site-video-bg{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:-4;opacity:.16;pointer-events:none}

.roh-hover-target{transition:transform .35s ease,box-shadow .35s ease,filter .35s ease,border-color .35s ease;transform-style:preserve-3d}
.roh-hover-lift .roh-hover-target:hover,.roh-hover-lift .roh-card:hover,.roh-hover-lift .roh-price:hover{transform:translateY(-12px)!important}
.roh-hover-glow .roh-hover-target:hover,.roh-hover-glow .roh-card:hover,.roh-hover-glow .roh-price:hover{box-shadow:0 25px 70px rgba(0,159,157,.28)!important;border-color:rgba(0,159,157,.45)}
.roh-hover-scale .roh-hover-target:hover,.roh-hover-scale .roh-card:hover,.roh-hover-scale .roh-price:hover{transform:scale(1.025)!important}
.roh-hover-none .roh-hover-target:hover,.roh-hover-none .roh-card:hover,.roh-hover-none .roh-price:hover{transform:none!important}
.roh-steps.roh-hover-target{border-radius:28px}
.roh-contact.roh-hover-target{transform-origin:center}

.roh-footer{padding:72px 0 24px;background:linear-gradient(135deg,#06131e,#0a3038);color:rgba(255,255,255,.72);border-top:0}
.roh-footer-grid{display:grid;grid-template-columns:1.35fr .75fr .75fr 1.15fr;gap:48px;align-items:start}
.roh-footer h3{color:#fff;margin:0 0 18px;font-size:17px}
.roh-footer .roh-logo-text strong{color:#fff}
.roh-footer .roh-logo{display:inline-flex;margin-bottom:18px}
.roh-footer-brand p,.roh-footer-contact p{margin:0 0 20px}
.roh-footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.roh-footer-menu a{transition:.25s}
.roh-footer-menu a:hover{color:#fff;transform:translateX(4px);display:inline-block}
.roh-socials{display:flex;flex-wrap:wrap;gap:10px}
.roh-socials a{width:42px;height:42px;border:1px solid rgba(255,255,255,.16);border-radius:13px;display:grid;place-items:center;color:#fff;font-weight:900;transition:.25s;background:rgba(255,255,255,.05)}
.roh-socials a:hover{transform:translateY(-4px);background:var(--roh-turquoise);border-color:var(--roh-turquoise)}
.roh-footer-contact .roh-btn{padding:12px 18px}
.roh-footer-bottom{margin-top:50px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px}

.roh-product-image{display:block;margin:16px -8px 18px;border-radius:20px;overflow:hidden;background:var(--roh-soft)}
.roh-product-image img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:.35s}
.roh-product-image:hover img{transform:scale(1.04)}
.roh-product-copy{color:var(--roh-muted);margin:0 0 22px}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button{background:var(--roh-turquoise);color:#fff;border-radius:12px;font-weight:800}
.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--roh-turquoise-dark);color:#fff}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--roh-turquoise);font-weight:900}
.woocommerce-page main,.woocommerce main{width:min(1180px,calc(100% - 40px));margin:60px auto}

.roh-cursor,.roh-cursor-ring{display:none;position:fixed;left:0;top:0;pointer-events:none;z-index:99999;border-radius:50%;will-change:transform}
@media(pointer:fine){
  .roh-custom-cursor-enabled,.roh-custom-cursor-enabled *{cursor:none!important}
  .roh-custom-cursor-enabled .roh-cursor{display:block;width:13px;height:13px;background:var(--roh-turquoise);margin:-6.5px 0 0 -6.5px;box-shadow:0 0 20px rgba(0,159,157,.65)}
  .roh-custom-cursor-enabled .roh-cursor-ring{display:block;width:38px;height:38px;border:1.5px solid rgba(0,159,157,.55);margin:-19px 0 0 -19px;transition:width .2s,height .2s,margin .2s,background .2s;transform-origin:center}
  .roh-custom-cursor-enabled.roh-cursor-hover .roh-cursor-ring{width:58px;height:58px;margin:-29px 0 0 -29px;background:rgba(0,159,157,.10)}
}

@media(max-width:980px){.roh-footer-grid{grid-template-columns:1fr 1fr}.roh-custom-cursor-enabled,.roh-custom-cursor-enabled *{cursor:auto!important}}
@media(max-width:640px){.roh-footer-grid{grid-template-columns:1fr}.roh-footer{padding-top:52px}.roh-footer-bottom{margin-top:34px}.roh-top{right:18px;bottom:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.roh-reveal,.roh-hover-target,.roh-card,.roh-price,.roh-hero-media img{animation:none!important;transition:none!important;transform:none!important}}

/* Version 3.0 – vollständig anpassbare Startseite und wiederhergestellte Schnellzugriffe */
.roh-floating a svg{width:25px;height:25px;fill:currentColor;display:block}
.roh-floating a:nth-child(1){animation:rohIconFloat 4.8s ease-in-out infinite}
.roh-floating a:nth-child(2){animation:rohIconFloat 4.8s ease-in-out .45s infinite}
.roh-floating a:nth-child(3){animation:rohIconFloat 4.8s ease-in-out .9s infinite}
@keyframes rohIconFloat{0%,100%{translate:0 0}50%{translate:0 -7px}}
.roh-section-media{position:relative;isolation:isolate;background-image:linear-gradient(rgba(248,252,252,.94),rgba(255,255,255,.96)),var(--roh-section-bg,none);background-size:cover;background-position:center}
.roh-section-media>.roh-container{position:relative;z-index:1}
.roh-visual-stack{display:grid;gap:18px;border-radius:32px}
.roh-section-image{width:100%;height:280px;object-fit:cover;border-radius:28px;box-shadow:var(--roh-shadow);border:1px solid rgba(0,159,157,.12)}
.roh-contact{background-size:cover;background-position:center}
.roh-hero h1 .roh-gradient{display:inline-block}

@media(max-width:980px){
  .roh-floating{display:flex;right:12px;top:auto;bottom:16px;transform:none;flex-direction:row;gap:10px}
  .roh-floating a{width:48px;height:48px;border-radius:15px}
  .roh-hero-media{padding-bottom:72px}
}
@media(max-width:640px){
  .roh-floating{right:50%;transform:translateX(50%);bottom:12px}
  .roh-floating a{width:46px;height:46px}
  .roh-section-image{height:220px}
}

/* v4: Hero image and quick-access icons use separate stacking layers. */
.roh-hero-media{
  isolation:isolate;
  overflow:visible;
  border-radius:38px;
}
.roh-hero-visual{
  position:absolute;
  inset:0;
  overflow:hidden;
  border-radius:38px;
  background:linear-gradient(135deg,#eefcfc,#dff6f5);
  box-shadow:var(--roh-shadow);
  z-index:1;
}
.roh-hero-visual img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:0;
  box-shadow:none;
  z-index:1;
}
.roh-hero-visual:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,rgba(255,255,255,.42),rgba(255,255,255,.03) 48%,rgba(0,159,157,.08));
  pointer-events:none;
}
/* Disable the former overlay on the complete media container. */
.roh-hero-media:after{display:none!important}
.roh-floating{
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  z-index:30!important;
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto;
}
.roh-floating a{
  position:relative;
  z-index:31;
}
@media(max-width:980px){
  .roh-floating{display:flex!important;right:12px;top:auto;bottom:16px;transform:none;flex-direction:row}
  .roh-hero-media{overflow:visible;padding-bottom:72px}
  .roh-hero-visual{bottom:72px}
}
@media(max-width:640px){
  .roh-floating{right:50%;transform:translateX(50%);bottom:12px}
}

/* v5 Branding & footer social icons */
.roh-social-block{margin-top:22px}
.roh-social-title{display:block;margin-bottom:10px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.roh-socials a svg{width:20px;height:20px;fill:currentColor;display:block}
.roh-socials a.is-empty{opacity:.55}
.roh-socials a.is-empty:hover{opacity:1}
.custom-logo-link{display:inline-flex;align-items:center}
.custom-logo-link img{display:block;max-height:64px;width:auto}
.roh-footer .custom-logo-link img{max-height:58px}

/* Version 6.0 – editable legal pages and complete footer controls */
.roh-page-main{position:relative;z-index:2;min-height:70vh}
.roh-page-hero{padding:90px 0 42px;text-align:center}
.roh-page-hero h1{font-size:clamp(42px,6vw,76px);line-height:1.02;margin:18px 0 0;color:var(--roh-dark);letter-spacing:-.05em}
.roh-page-content-section{padding:0 0 100px}
.roh-page-content{max-width:980px;margin:0 auto;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border:1px solid rgba(0,159,157,.16);border-radius:32px;padding:clamp(28px,5vw,64px);box-shadow:0 28px 80px rgba(7,19,31,.12);color:#253440}
.roh-page-content h2,.roh-page-content h3,.roh-page-content h4{color:var(--roh-dark);line-height:1.2;margin-top:1.6em}
.roh-page-content p,.roh-page-content li{font-size:17px}
.roh-page-content a{color:var(--roh-turquoise);text-decoration:underline;text-underline-offset:3px}
.roh-page-content ul,.roh-page-content ol{padding-left:24px}
@media(max-width:640px){.roh-page-hero{padding:58px 0 30px}.roh-page-content-section{padding-bottom:64px}.roh-page-content{border-radius:22px;padding:26px 22px}}
