/*
Theme Name: HomeRent Tech
Theme URI: https://homerent.tech
Author: HomeRent Immobilien GmbH
Description: Dark SaaS/Automation WordPress theme for HomeRent Tech. Built for AI and automation products in furnished and short-term rentals, with Light/Standard/Profi tiers and a public live operations dashboard.
Version: 0.4.3
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: homerent-tech
*/

:root {
  --hrt-bg: #070b12;
  --hrt-bg-soft: #0a111c;
  --hrt-panel: #0d1623;
  --hrt-panel-2: #111d2c;
  --hrt-line: #1c2b3e;
  --hrt-text: #f5f8fc;
  --hrt-muted: #9aa8ba;
  --hrt-blue: #0f5d9b;
  --hrt-blue-bright: #2f9ddb;
  --hrt-cyan: #41c4e8;
  --hrt-red: #ef5b46;
  --hrt-green: #56d39b;
  --hrt-yellow: #f5c86b;
  --hrt-max: 1220px;
  --hrt-radius: 22px;
  --hrt-radius-sm: 14px;
  --hrt-shadow: 0 30px 80px rgba(0,0,0,.28);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 82% 5%, rgba(47,157,219,.12), transparent 28rem),
    radial-gradient(circle at 12% 24%, rgba(15,93,155,.10), transparent 28rem),
    var(--hrt-bg);
  color: var(--hrt-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
a:hover { color: #fff; }
img { max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }

.hrt-container { width: min(calc(100% - 36px), var(--hrt-max)); margin-inline: auto; }
.hrt-section { padding: 100px 0; }
.hrt-section--tight { padding: 72px 0; }
.hrt-eyebrow {
  display: inline-flex; align-items: center; gap: 9px;
  color: #cfeaf8; font-size: .83rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
}
.hrt-eyebrow::before { content:""; width: 8px; height: 8px; border-radius: 50%; background: var(--hrt-cyan); box-shadow: 0 0 0 5px rgba(65,196,232,.10); }
.hrt-title { margin: 12px 0 18px; font-size: clamp(2.1rem, 5vw, 4.6rem); line-height: 1.02; letter-spacing: -.045em; }
.hrt-title--section { font-size: clamp(2rem, 4vw, 3.35rem); }
.hrt-lead { color: var(--hrt-muted); font-size: clamp(1.03rem, 1.8vw, 1.25rem); max-width: 760px; }
.hrt-gradient-text { background: linear-gradient(90deg, #fff 0%, #7bd4f1 52%, #6ba6ff 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }


/* About */
.hrt-about-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:72px; align-items:start; padding:44px 0; border-top:1px solid var(--hrt-line); border-bottom:1px solid var(--hrt-line); }
.hrt-about-copy { color:var(--hrt-muted); font-size:1.05rem; }
.hrt-about-copy p { margin:0 0 18px; }
.hrt-about-copy strong { color:var(--hrt-text); }
.hrt-about-points { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.hrt-about-points span { border:1px solid var(--hrt-line); background:rgba(255,255,255,.025); color:#cdd8e5; padding:8px 11px; border-radius:999px; font-size:.82rem; }
.hrt-footer-brandnote { margin-top:12px; color:#6f8296 !important; }

/* Header */
.hrt-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid rgba(255,255,255,.07); background: rgba(7,11,18,.78); backdrop-filter: blur(18px); }
.admin-bar .hrt-header { top: 32px; }
.hrt-nav { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.hrt-brand { display: flex; align-items: center; gap: 12px; min-width: max-content; }
.hrt-brand .custom-logo, .hrt-brand .hrt-default-logo { width:auto; max-height:72px; display:block; }
.hrt-footer .hrt-brand .custom-logo, .hrt-footer .hrt-brand .hrt-default-logo { max-height:82px; }
.hrt-header .hrt-brand { min-width:220px; }
.hrt-wordmark { display:flex; align-items:center; gap:8px; font-size:1.18rem; font-weight:800; letter-spacing:-.025em; }
.hrt-wordmark__tech { font-size:.68rem; padding:4px 8px; border:1px solid #31516f; border-radius:999px; color:#8ed9f3; letter-spacing:.12em; }
.hrt-menu { display:flex; align-items:center; gap:26px; margin:0; padding:0; list-style:none; color:#c2ccda; font-size:.94rem; }
.hrt-menu a:hover { color:#fff; }
.hrt-nav-actions { display:flex; align-items:center; gap:10px; }
.hrt-mobile-toggle { display:none; border:1px solid var(--hrt-line); background:var(--hrt-panel); color:#fff; width:44px; height:44px; border-radius:12px; }

.hrt-btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:48px; padding:0 20px; border-radius:12px; border:1px solid transparent; font-weight:750; transition:.18s ease; cursor:pointer; }
.hrt-btn:hover { transform:translateY(-1px); }
.hrt-btn--primary { background:linear-gradient(135deg, #1680bd, #0f5d9b); color:#fff; box-shadow:0 12px 30px rgba(15,93,155,.26); }
.hrt-btn--ghost { border-color:#294057; background:rgba(255,255,255,.025); color:#e9f0f8; }
.hrt-btn--small { min-height:40px; padding:0 15px; font-size:.9rem; }

/* Hero */
.hrt-hero { padding: 88px 0 70px; position:relative; overflow:hidden; }
.hrt-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr); gap:70px; align-items:center; }
.hrt-hero-copy .hrt-title { max-width:820px; }
.hrt-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.hrt-trust-row { margin-top:30px; display:flex; flex-wrap:wrap; gap:10px; }
.hrt-chip { display:inline-flex; align-items:center; gap:8px; color:#bdc9d7; background:#0c1520; border:1px solid var(--hrt-line); border-radius:999px; padding:8px 12px; font-size:.84rem; }
.hrt-chip-dot { width:7px; height:7px; border-radius:50%; background:var(--hrt-green); box-shadow:0 0 0 4px rgba(86,211,155,.08); }

.hrt-system-card { border:1px solid #20334a; border-radius:26px; background:linear-gradient(180deg,rgba(20,36,54,.86),rgba(8,15,25,.92)); box-shadow:var(--hrt-shadow); overflow:hidden; position:relative; }
.hrt-system-card::before { content:""; position:absolute; inset:-1px auto auto 12%; width:60%; height:1px; background:linear-gradient(90deg,transparent,#79d6f4,transparent); }
.hrt-window-bar { height:46px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--hrt-line); padding:0 16px; color:#94a5b8; font-size:.78rem; }
.hrt-window-dots { display:flex; gap:6px; }
.hrt-window-dots i { width:8px; height:8px; border-radius:50%; background:#2a3a4c; }
.hrt-flow { padding:22px; }
.hrt-flow-node { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:12px; padding:14px; border:1px solid #22354c; background:#0b1420; border-radius:14px; }
.hrt-flow-node + .hrt-flow-node { margin-top:12px; }
.hrt-flow-icon { width:42px; height:42px; border-radius:11px; display:grid; place-items:center; background:#10273a; color:#76d5f2; font-weight:800; }
.hrt-flow-node strong { display:block; font-size:.94rem; }
.hrt-flow-node small { color:#8392a6; }
.hrt-status { font-size:.73rem; color:#8fe2b9; border:1px solid rgba(86,211,155,.25); border-radius:999px; padding:5px 8px; background:rgba(86,211,155,.06); }
.hrt-flow-arrow { width:1px; height:18px; margin:0 0 0 43px; background:linear-gradient(#2c536d,#1680bd); }

/* Live dashboard */
.hrt-live-shell { border:1px solid #203248; background:linear-gradient(180deg,#0d1723,#09111b); border-radius:28px; padding:28px; box-shadow:var(--hrt-shadow); }
.hrt-live-head { display:flex; justify-content:space-between; gap:24px; align-items:flex-end; margin-bottom:26px; }
.hrt-live-state { display:flex; align-items:center; gap:8px; color:#a9b6c6; font-size:.84rem; }
.hrt-live-state i { width:8px; height:8px; border-radius:50%; background:var(--hrt-green); box-shadow:0 0 0 5px rgba(86,211,155,.08); }
.hrt-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.hrt-stat { min-height:142px; border:1px solid #213349; border-radius:16px; padding:18px; background:#0b1420; display:flex; flex-direction:column; justify-content:space-between; }
.hrt-stat-label { color:#9aa9ba; font-size:.82rem; }
.hrt-stat-value { font-size:clamp(1.7rem,3vw,2.7rem); font-weight:820; letter-spacing:-.04em; line-height:1; }
.hrt-stat-foot { color:#66788c; font-size:.74rem; }
.hrt-dashboard-source { margin-top:15px; color:#708196; font-size:.75rem; }

/* Product cards */
.hrt-section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:42px; }
.hrt-product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.hrt-product-card { border:1px solid var(--hrt-line); border-radius:20px; background:linear-gradient(180deg,#0d1723,#0a121d); padding:24px; min-height:320px; display:flex; flex-direction:column; transition:.2s ease; }
.hrt-product-card:hover { transform:translateY(-3px); border-color:#315171; }
.hrt-product-icon { width:48px; height:48px; border-radius:14px; background:linear-gradient(145deg,#15334b,#0e2335); color:#7bd7f2; display:grid; place-items:center; font-weight:800; margin-bottom:20px; }
.hrt-product-card h3 { font-size:1.28rem; margin:0 0 10px; letter-spacing:-.02em; }
.hrt-product-card p { color:var(--hrt-muted); margin:0 0 22px; font-size:.94rem; }
.hrt-product-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; }
.hrt-product-tags span { border:1px solid #26394f; border-radius:999px; padding:5px 8px; color:#9db0c4; font-size:.72rem; }
.hrt-card-link { display:inline-flex; align-items:center; gap:6px; margin-top:20px; color:#8bd9f2; font-weight:700; font-size:.9rem; }

/* Plans */
.hrt-plan-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; align-items:stretch; }
.hrt-plan { position:relative; border:1px solid var(--hrt-line); border-radius:22px; padding:28px; background:#0b1420; }
.hrt-plan--featured { border-color:#247cb0; background:linear-gradient(180deg,#10263a,#0b1420 60%); box-shadow:0 20px 60px rgba(15,93,155,.12); }
.hrt-plan-badge { position:absolute; right:18px; top:18px; border-radius:999px; padding:6px 9px; color:#bfeafa; font-size:.72rem; font-weight:800; background:#12324a; border:1px solid #245d7c; }
.hrt-plan-kicker { color:#85d7f1; text-transform:uppercase; letter-spacing:.08em; font-size:.78rem; font-weight:800; }
.hrt-plan h3 { margin:8px 0 4px; font-size:1.6rem; }
.hrt-plan-sub { color:var(--hrt-muted); min-height:54px; }
.hrt-plan-price { margin:24px 0 18px; padding-top:18px; border-top:1px solid var(--hrt-line); }
.hrt-plan-price strong { font-size:1.12rem; }
.hrt-plan ul { margin:18px 0 28px; padding:0; list-style:none; }
.hrt-plan li { padding:7px 0 7px 24px; position:relative; color:#c2ceda; font-size:.91rem; }
.hrt-plan li::before { content:"✓"; position:absolute; left:0; color:var(--hrt-green); font-weight:800; }

/* Proof / video */
.hrt-proof-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:18px; }
.hrt-proof-card { border:1px solid var(--hrt-line); border-radius:22px; background:#0b1420; padding:26px; }
.hrt-proof-card h3 { margin:0 0 8px; }
.hrt-proof-card p { color:var(--hrt-muted); }
.hrt-video-frame { aspect-ratio:16/9; border-radius:17px; overflow:hidden; border:1px solid #243850; background:radial-gradient(circle at center,#12344b,#080f18 70%); display:grid; place-items:center; color:#b8c5d5; }
.hrt-video-frame iframe, .hrt-video-frame video { width:100%; height:100%; border:0; object-fit:cover; }
.hrt-play { width:66px; height:66px; border-radius:50%; display:grid; place-items:center; border:1px solid #3a5a76; background:rgba(10,20,32,.78); font-size:1.25rem; }

/* Audio + WhatsApp marketing module */
.hrt-channel-demo { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.hrt-call-panel, .hrt-chat-panel { border:1px solid var(--hrt-line); border-radius:22px; background:#0b1420; padding:24px; overflow:hidden; }
.hrt-channel-top { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:22px; }
.hrt-channel-label { display:flex; align-items:center; gap:10px; font-weight:750; }
.hrt-channel-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:#10283b; color:#7ed9f3; }
.hrt-wave { display:flex; height:72px; align-items:center; gap:4px; margin:16px 0; }
.hrt-wave i { flex:1; max-width:7px; min-width:3px; border-radius:9px; background:linear-gradient(#6ad4f1,#17689e); opacity:.85; animation:hrtWave 1.3s ease-in-out infinite alternate; }
.hrt-wave i:nth-child(2n){ animation-delay:.14s; } .hrt-wave i:nth-child(3n){animation-delay:.29s;} .hrt-wave i:nth-child(5n){animation-delay:.41s;}
@keyframes hrtWave { from{height:18%} to{height:88%} }
@media (prefers-reduced-motion:reduce){ .hrt-wave i{animation:none;height:42%} }
.hrt-transcript { border-left:2px solid #24597b; padding-left:14px; color:#b4c2d1; font-size:.9rem; }
.hrt-chat { display:flex; flex-direction:column; gap:10px; }
.hrt-bubble { max-width:88%; border-radius:15px; padding:11px 13px; font-size:.88rem; }
.hrt-bubble--in { background:#152235; align-self:flex-start; color:#d8e1eb; border-bottom-left-radius:5px; }
.hrt-bubble--out { background:#0d4e62; align-self:flex-end; color:#e9fbff; border-bottom-right-radius:5px; }
.hrt-channel-merge { margin-top:18px; border:1px solid #284762; border-radius:13px; padding:12px; color:#a8bdd1; font-size:.82rem; text-align:center; background:#0c1925; }
.hrt-audio { width:100%; margin-top:15px; }

/* CTA */
.hrt-cta { border:1px solid #23415d; border-radius:28px; padding:48px; background:radial-gradient(circle at 85% 20%,rgba(47,157,219,.16),transparent 28rem),linear-gradient(135deg,#102237,#09111b); display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; }
.hrt-cta h2 { margin:0 0 10px; font-size:clamp(2rem,4vw,3.2rem); letter-spacing:-.04em; line-height:1.05; }
.hrt-cta p { margin:0; color:var(--hrt-muted); max-width:720px; }

/* Content */
.hrt-content { width:min(calc(100% - 36px),900px); margin:70px auto; }
.hrt-content h1,.hrt-content h2,.hrt-content h3 { line-height:1.15; letter-spacing:-.025em; }
.hrt-content p,.hrt-content li { color:#bec9d6; }
.hrt-content a { color:#78d4f0; text-decoration:underline; }

/* Single product */
.hrt-product-hero { padding:90px 0 55px; }
.hrt-product-hero-grid { display:grid; grid-template-columns:1fr .8fr; gap:50px; align-items:center; }
.hrt-product-panel { border:1px solid var(--hrt-line); background:#0b1420; border-radius:22px; padding:28px; }
.hrt-feature-list { display:grid; grid-template-columns:1fr 1fr; gap:10px 20px; margin:26px 0; padding:0; list-style:none; }
.hrt-feature-list li { color:#c4cfda; padding-left:22px; position:relative; }
.hrt-feature-list li::before{content:"✓";position:absolute;left:0;color:var(--hrt-green);}

/* Footer */
.hrt-footer { border-top:1px solid var(--hrt-line); background:#060a10; padding:58px 0 34px; }
.hrt-footer-grid { display:grid; grid-template-columns:1.2fr repeat(3,.6fr); gap:40px; }
.hrt-footer h4 { margin:0 0 12px; font-size:.9rem; }
.hrt-footer p,.hrt-footer li,.hrt-footer a { color:#8595a7; font-size:.86rem; }
.hrt-footer ul { list-style:none; padding:0; margin:0; }
.hrt-footer li { margin:7px 0; }
.hrt-footer-bottom { margin-top:42px; padding-top:20px; border-top:1px solid #152234; display:flex; justify-content:space-between; gap:24px; color:#667789; font-size:.78rem; }

/* WP basics */
.alignwide { width:min(calc(100% - 36px),var(--hrt-max)); margin-inline:auto; }
.alignfull { width:100%; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

@media (max-width: 1050px) {
  .hrt-hero-grid,.hrt-product-hero-grid { grid-template-columns:1fr; }
  .hrt-system-card { max-width:760px; }
  .hrt-stat-grid { grid-template-columns:repeat(2,1fr); }
  .hrt-product-grid { grid-template-columns:repeat(2,1fr); }
  .hrt-menu { display:none; position:absolute; left:18px; right:18px; top:72px; padding:18px; border:1px solid var(--hrt-line); border-radius:16px; background:#0a121d; flex-direction:column; align-items:flex-start; box-shadow:var(--hrt-shadow); }
  .hrt-menu.is-open { display:flex; }
  .hrt-mobile-toggle { display:inline-grid; place-items:center; }
  .hrt-nav-actions .hrt-btn--small { display:none; }
}
@media (max-width: 760px) {
  .admin-bar .hrt-header { top:46px; }
  .hrt-section { padding:72px 0; }
  .hrt-hero { padding-top:58px; }
  .hrt-hero-grid { gap:42px; }
  .hrt-product-grid,.hrt-plan-grid,.hrt-proof-grid,.hrt-channel-demo,.hrt-footer-grid,.hrt-about-grid { grid-template-columns:1fr; }
  .hrt-stat-grid { grid-template-columns:1fr 1fr; }
  .hrt-live-head,.hrt-section-head { align-items:flex-start; flex-direction:column; }
  .hrt-cta { grid-template-columns:1fr; padding:30px; }
  .hrt-footer-bottom { flex-direction:column; }
  .hrt-feature-list { grid-template-columns:1fr; }
}
@media (max-width: 470px) {
  .hrt-container { width:min(calc(100% - 24px),var(--hrt-max)); }
  .hrt-stat-grid { grid-template-columns:1fr; }
  .hrt-stat { min-height:116px; }
  .hrt-live-shell { padding:16px; }
  .hrt-hero-actions .hrt-btn { width:100%; }
}

/* Legal pages */
.hrt-content > h1 { font-size:clamp(2.35rem,5vw,4.4rem); margin:0 0 34px; }
.hrt-content h2 { margin:42px 0 14px; font-size:clamp(1.35rem,2.6vw,2rem); }
.hrt-content h3 { margin:30px 0 12px; }
.hrt-content p { line-height:1.75; }
.hrt-content ul,.hrt-content ol { padding-left:1.35rem; }
.hrt-content li { line-height:1.65; margin:.55rem 0; }
.hrt-content strong { color:var(--hrt-text); }
.hrt-content small { color:#7f90a3; }
