
:root {
  --red: #e10600;
  --red-bright: #ff2a20;
  --black: #080808;
  --charcoal: #171717;
  --warm-white: #f7f7f4;
  --white: #fff;
  --grey: #a8a8a8;
  --line: rgba(8,8,8,.12);
  --container: 1280px;
  --radius: 28px;
  --shadow: 0 30px 80px rgba(0,0,0,.16);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--warm-white); color: var(--charcoal); font-family: Inter, sans-serif; font-size: 16px; line-height: 1.65; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.narrow { max-width: 920px; }
.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; }
.skip-link { position: fixed; left: 16px; top: -100px; z-index: 9999; background: #fff; color: #000; padding: 12px 16px; }
.skip-link:focus { top: 16px; }
.site-header { position: fixed; inset: 0 0 auto; z-index: 1000; transition: .3s ease; color: #fff; }
.site-header.is-scrolled { background: rgba(8,8,8,.82); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(255,255,255,.1); }
.header-inner { height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 12px; }
.custom-logo { max-height: 54px; width: auto; }
.brand-mark { width: 48px; height: 48px; border-radius: 14px; background: linear-gradient(135deg,var(--red-bright),var(--red)); display: grid; place-items: center; font-family: Manrope,sans-serif; font-weight: 800; letter-spacing: -.08em; color: #fff; box-shadow: 0 12px 32px rgba(225,6,0,.35); }
.brand-copy { display: flex; flex-direction: column; line-height: 1; }
.brand-copy strong { font-family: Manrope,sans-serif; letter-spacing: -.04em; font-size: 18px; }
.brand-copy small { margin-top: 5px; letter-spacing: .22em; font-size: 9px; opacity: .68; }
.primary-nav { display: flex; align-items: center; gap: 30px; }
.nav-list { list-style: none; display: flex; align-items: center; gap: 28px; margin: 0; padding: 0; }
.nav-list a { color: rgba(255,255,255,.76); font-size: 14px; font-weight: 500; transition: .2s; }
.nav-list a:hover { color: #fff; }
.menu-toggle { display: none; border: 0; background: transparent; width: 44px; height: 44px; padding: 10px; }
.menu-toggle span:not(.screen-reader-text) { display: block; height: 2px; background: #fff; margin: 7px 0; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 25px; border: 0; border-radius: 999px; background: linear-gradient(135deg,var(--red-bright),var(--red)); color: #fff; font-weight: 700; cursor: pointer; box-shadow: 0 16px 40px rgba(225,6,0,.26); transition: transform .2s, box-shadow .2s; }
.button:hover { transform: translateY(-2px); box-shadow: 0 22px 50px rgba(225,6,0,.36); }
.button-small { min-height: 44px; padding-inline: 20px; font-size: 14px; }
.button-ghost { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.18); box-shadow: none; backdrop-filter: blur(10px); }
.hero { position: relative; min-height: 920px; overflow: hidden; color: #fff; background: radial-gradient(circle at 75% 42%,#2b1010 0,#0e0e0e 28%,#050505 64%); }
.hero::before { content:""; position:absolute; inset:0; background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom,black,transparent 85%); }
.hero-glow { position:absolute; border-radius:50%; filter: blur(90px); opacity:.34; }
.hero-glow-one { width: 450px; height: 450px; background: var(--red); right: 5%; top: 18%; }
.hero-glow-two { width: 280px; height: 280px; background: #7d0000; left: 5%; bottom: 5%; }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 80px; min-height: 920px; padding-top: 90px; }
.eyebrow { display: flex; align-items: center; gap: 12px; text-transform: uppercase; letter-spacing: .18em; font-size: 12px; font-weight: 700; color: rgba(255,255,255,.68); }
.eyebrow span { width: 34px; height: 1px; background: var(--red-bright); }
.eyebrow.dark { color: #6d6d6d; }
.hero h1, .section h2, .contact-section h2, .faq-grid h2 { margin: 0; font-family: Manrope,sans-serif; letter-spacing: -.065em; line-height: .92; }
.hero h1 { margin-top: 22px; font-size: clamp(68px,8.1vw,126px); font-weight: 800; }
.hero h1 em { color: var(--red-bright); font-style: normal; }
.hero-lead { max-width: 690px; margin: 32px 0 0; font-size: 19px; color: rgba(255,255,255,.66); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 38px; }
.trust-row { display: flex; flex-wrap: wrap; gap: 26px; margin-top: 38px; color: rgba(255,255,255,.5); font-size: 13px; }
.trust-row span::before { content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--red); margin-right:9px; }
.hero-product { position: relative; min-height: 580px; display: grid; place-items: center; perspective: 1200px; }
.glass { border: 1px solid rgba(255,255,255,.14); background: linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035)); backdrop-filter: blur(24px); box-shadow: var(--shadow); }
.response-card { width: min(100%,460px); min-height: 560px; border-radius: 42px; padding: 34px; transform: rotateY(-8deg) rotateX(3deg); position: relative; overflow: hidden; }
.response-card::after { content:""; position:absolute; inset:auto -20% -25% 10%; height:60%; background:radial-gradient(circle,var(--red),transparent 68%); opacity:.36; filter:blur(35px); }
.response-top { display:flex; align-items:center; gap:9px; color:rgba(255,255,255,.62); font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.status-dot { width:8px; height:8px; border-radius:50%; background:#50dc74; box-shadow:0 0 18px #50dc74; }
.response-logo { position:relative; z-index:1; margin-top:105px; font-family:Manrope,sans-serif; font-size:92px; line-height:.7; font-weight:800; letter-spacing:-.09em; text-shadow:0 10px 40px rgba(0,0,0,.32); }
.response-card > p { position:relative; z-index:1; max-width:260px; margin-top:42px; color:rgba(255,255,255,.64); }
.response-meta { position:absolute; z-index:1; left:34px; right:34px; bottom:34px; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.response-meta div { padding:16px; border-radius:18px; background:rgba(0,0,0,.22); }
.response-meta strong, .response-meta span { display:block; }
.response-meta strong { font-family:Manrope,sans-serif; font-size:24px; }
.response-meta span { color:rgba(255,255,255,.48); font-size:11px; }
.floating-note { position:absolute; right:-20px; bottom:36px; width:220px; padding:18px 20px; border-radius:20px; }
.floating-note span,.floating-note strong { display:block; }
.floating-note span { font-size:11px; text-transform:uppercase; letter-spacing:.14em; color:rgba(255,255,255,.48); }
.floating-note strong { margin-top:5px; font-size:13px; line-height:1.4; }
.emergency-strip { background:var(--red); color:#fff; }
.strip-inner { min-height:82px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.strip-inner p { margin:0; }
.strip-inner a { font-family:Manrope,sans-serif; font-size:19px; font-weight:800; }
.section { padding: 140px 0; }
.section-heading { display:grid; grid-template-columns:1.3fr .7fr; gap:80px; align-items:end; margin-bottom:70px; }
.section-heading h2, .faq-grid h2 { max-width:850px; font-size:clamp(46px,6vw,82px); }
.section-heading > p { max-width:440px; margin:0; color:#666; }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.service-card { position:relative; min-height:350px; padding:30px; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.64); overflow:hidden; transition:.3s; }
.service-card:hover { transform:translateY(-6px); background:#fff; box-shadow:0 28px 70px rgba(0,0,0,.08); }
.service-number { color:#999; font-size:12px; letter-spacing:.15em; }
.service-icon { width:48px; height:48px; display:grid; place-items:center; margin:45px 0 35px; border-radius:15px; background:#111; color:#fff; }
.service-card h3 { margin:0; font:700 26px/1.1 Manrope,sans-serif; letter-spacing:-.04em; }
.service-card p { color:#6f6f6f; }
.service-card a { position:absolute; left:30px; bottom:28px; color:var(--red); font-weight:700; font-size:14px; }
.dark-section { background:#090909; color:#fff; position:relative; overflow:hidden; }
.dark-section::before { content:""; position:absolute; width:650px; height:650px; border-radius:50%; right:-180px; top:-220px; background:radial-gradient(circle,rgba(225,6,0,.3),transparent 65%); }
.section-heading.inverse { position:relative; z-index:1; }
.process-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.process-card { min-height:360px; padding:36px; border:1px solid rgba(255,255,255,.12); border-radius:var(--radius); background:rgba(255,255,255,.035); }
.process-card > span { color:var(--red-bright); font-size:12px; letter-spacing:.15em; }
.process-card h3 { margin:105px 0 18px; font:800 46px/1 Manrope,sans-serif; letter-spacing:-.055em; }
.process-card p { color:rgba(255,255,255,.58); }
.stats-section { overflow:hidden; }
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); border-block:1px solid var(--line); margin-bottom:140px; }
.stats-grid div { padding:46px 28px; border-right:1px solid var(--line); }
.stats-grid div:last-child { border:0; }
.stats-grid strong,.stats-grid span { display:block; }
.stats-grid strong { font:800 clamp(42px,5vw,72px)/1 Manrope,sans-serif; letter-spacing:-.06em; }
.stats-grid span { margin-top:10px; color:#777; font-size:13px; }
.editorial-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:90px; align-items:center; }
.editorial-copy h2 { font-size:clamp(48px,5.4vw,76px); }
.editorial-copy > p:last-child { margin-top:28px; max-width:570px; color:#666; font-size:18px; }
.visual-stack { border-radius:38px; overflow:hidden; box-shadow:var(--shadow); transform:rotate(1deg); background:#111; }
.visual-stack img { width:100%; aspect-ratio:4/3; object-fit:cover; object-position:center 20%; }
.testimonial-section { background:var(--red); color:#fff; text-align:center; }
.quote-mark { margin:0; font:800 110px/.5 Georgia,serif; opacity:.34; }
blockquote { margin:35px auto; font:700 clamp(34px,4.6vw,65px)/1.08 Manrope,sans-serif; letter-spacing:-.055em; }
.quote-credit { text-transform:uppercase; letter-spacing:.16em; font-size:12px; opacity:.7; }
.faq-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:100px; }
.accordion { border-top:1px solid var(--line); }
.faq-item { border-bottom:1px solid var(--line); }
.faq-item button { width:100%; display:flex; justify-content:space-between; gap:20px; padding:28px 0; border:0; background:none; text-align:left; font:700 20px/1.3 Manrope,sans-serif; cursor:pointer; }
.faq-plus { font-size:28px; font-weight:400; transition:.25s; }
.faq-item.is-open .faq-plus { transform:rotate(45deg); }
.faq-answer { display:grid; grid-template-rows:0fr; transition:grid-template-rows .3s ease; }
.faq-item.is-open .faq-answer { grid-template-rows:1fr; }
.faq-answer p { overflow:hidden; margin:0; color:#666; }
.faq-item.is-open .faq-answer p { padding-bottom:28px; }
.contact-section { position:relative; overflow:hidden; padding:145px 0; background:#080808; color:#fff; }
.contact-glow { position:absolute; width:650px; height:650px; border-radius:50%; left:-180px; bottom:-350px; background:radial-gradient(circle,var(--red),transparent 67%); opacity:.35; filter:blur(25px); }
.contact-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.contact-section h2 { font-size:clamp(58px,7vw,100px); }
.contact-section p { max-width:580px; color:rgba(255,255,255,.58); }
.contact-number { display:inline-block; margin-top:28px; font:700 clamp(28px,4vw,50px)/1 Manrope,sans-serif; letter-spacing:-.05em; }
.contact-card { padding:32px; border:1px solid rgba(255,255,255,.12); border-radius:30px; background:rgba(255,255,255,.05); backdrop-filter:blur(20px); }
.contact-card label { display:block; margin-bottom:17px; color:rgba(255,255,255,.63); font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.contact-card input,.contact-card textarea { width:100%; margin-top:7px; border:1px solid rgba(255,255,255,.14); border-radius:14px; background:rgba(0,0,0,.22); color:#fff; padding:14px 15px; outline:none; }
.contact-card input:focus,.contact-card textarea:focus { border-color:var(--red-bright); }
.contact-card .button { width:100%; }
.contact-card small { display:block; margin-top:14px; color:rgba(255,255,255,.35); text-align:center; text-transform:none; letter-spacing:0; }
.site-footer { background:#050505; color:rgba(255,255,255,.58); padding:80px 0 28px; border-top:1px solid rgba(255,255,255,.08); }
.footer-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:80px; }
.footer-brand { color:#fff; }
.footer-promise { margin-top:22px; color:#fff; font:700 18px Manrope,sans-serif; }
.footer-label { text-transform:uppercase; letter-spacing:.14em; font-size:10px; color:rgba(255,255,255,.34); }
.footer-grid a:not(.brand) { display:block; color:#fff; margin-top:8px; }
.footer-phone { font:700 24px Manrope,sans-serif; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:70px; padding-top:22px; border-top:1px solid rgba(255,255,255,.08); font-size:12px; }
.mobile-call { display:none; }
.content-area { min-height:70vh; padding:150px 0 100px; }
.content-container { max-width:900px; }
.content-card { background:#fff; border-radius:28px; padding:clamp(30px,6vw,70px); box-shadow:0 25px 70px rgba(0,0,0,.06); }
.content-card h1,.content-card h2 { font-family:Manrope,sans-serif; letter-spacing:-.05em; line-height:1; }
.entry-content > * { max-width:100%; }
.error-card { text-align:center; }
.error-card .eyebrow { justify-content:center; }
.reveal { opacity:0; transform:translateY(25px); transition:opacity .7s ease,transform .7s ease; }
.reveal.is-visible { opacity:1; transform:none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; }
  .reveal { opacity:1; transform:none; }
}
@media (max-width: 1000px) {
  .hero-grid,.editorial-grid,.contact-grid,.faq-grid { grid-template-columns:1fr; }
  .hero-grid { gap:20px; padding:160px 0 90px; }
  .hero-product { min-height:500px; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .process-grid { grid-template-columns:1fr; }
  .process-card { min-height:auto; }
  .process-card h3 { margin-top:45px; }
  .section-heading { grid-template-columns:1fr; gap:24px; }
  .stats-grid { grid-template-columns:repeat(2,1fr); }
  .stats-grid div:nth-child(2) { border-right:0; }
  .faq-grid { gap:50px; }
}
@media (max-width: 820px) {
  .container { width:min(calc(100% - 32px),var(--container)); }
  .menu-toggle { display:block; position:relative; z-index:1002; }
  .primary-nav { position:fixed; inset:0; display:flex; flex-direction:column; justify-content:center; padding:40px; background:rgba(6,6,6,.97); transform:translateY(-105%); transition:.35s ease; }
  .primary-nav.is-open { transform:none; }
  .nav-list { flex-direction:column; gap:26px; }
  .nav-list a { font:700 30px Manrope,sans-serif; color:#fff; }
  .hero { min-height:auto; }
  .hero-grid { min-height:auto; }
  .hero h1 { font-size:clamp(60px,15vw,92px); }
  .section { padding:95px 0; }
  .services-grid { grid-template-columns:1fr; }
  .service-card { min-height:320px; }
  .stats-grid { margin-bottom:90px; }
  .footer-grid { grid-template-columns:1fr; gap:36px; }
  .footer-bottom { flex-direction:column; }
  .site-footer { padding-bottom:110px; }
  .mobile-call { position:fixed; z-index:1100; left:12px; right:12px; bottom:12px; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:13px 17px; border-radius:18px; background:var(--red); color:#fff; box-shadow:0 18px 50px rgba(0,0,0,.35); }
  .mobile-call span { font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
  .mobile-call strong { font-size:14px; }
}
@media (max-width: 560px) {
  .header-inner { height:76px; }
  .brand-mark { width:42px; height:42px; border-radius:12px; }
  .hero-grid { padding-top:120px; }
  .hero-lead { font-size:16px; }
  .hero-actions { flex-direction:column; }
  .button { width:100%; }
  .hero-product { min-height:430px; }
  .response-card { min-height:420px; padding:25px; border-radius:30px; transform:none; }
  .response-logo { margin-top:70px; font-size:75px; }
  .response-meta { left:25px; right:25px; bottom:25px; }
  .floating-note { display:none; }
  .strip-inner { align-items:flex-start; flex-direction:column; padding:22px 0; }
  .section-heading h2,.faq-grid h2 { font-size:45px; }
  .stats-grid { grid-template-columns:1fr; }
  .stats-grid div { border-right:0; border-bottom:1px solid var(--line); }
  .stats-grid div:last-child { border-bottom:0; }
  .contact-card { padding:22px; }
}


/* Version 1.1 additions */
.service-hero,.archive-hero,.project-single-hero {
  position:relative; overflow:hidden; padding:180px 0 110px; background:
  radial-gradient(circle at 80% 15%,rgba(225,6,0,.35),transparent 30%),#080808; color:#fff;
}
.service-hero-grid { display:grid; grid-template-columns:1fr .9fr; gap:80px; align-items:center; }
.service-hero h1,.archive-hero h1,.project-single-hero h1 {
  margin:20px 0; max-width:900px; font:800 clamp(58px,8vw,112px)/.92 Manrope,sans-serif; letter-spacing:-.065em;
}
.service-intro,.archive-hero p,.project-single-hero p { max-width:720px; color:rgba(255,255,255,.62); font-size:19px; }
.service-hero-visual { min-height:480px; border-radius:36px; overflow:hidden; background:#151515; box-shadow:var(--shadow); }
.service-hero-visual img { width:100%; height:100%; min-height:480px; object-fit:cover; }
.service-placeholder { min-height:480px; display:grid; place-items:center; padding:40px; background:linear-gradient(145deg,#2a1212,#101010); color:rgba(255,255,255,.6); }
.service-content-grid { display:grid; grid-template-columns:300px 1fr; gap:90px; align-items:start; }
.service-sidebar { position:sticky; top:130px; padding:28px; border-radius:24px; background:#fff; box-shadow:0 24px 65px rgba(0,0,0,.07); }
.sidebar-label { margin:0 0 10px; text-transform:uppercase; letter-spacing:.14em; font-size:10px; color:#888; }
.service-sidebar > a { display:block; color:var(--red); font:800 24px Manrope,sans-serif; }
.service-sidebar ul { margin:28px 0 0; padding:0; list-style:none; }
.service-sidebar li { padding:12px 0; border-top:1px solid var(--line); font-size:14px; }
.service-entry { font-size:18px; }
.service-entry h2,.service-entry h3 { font-family:Manrope,sans-serif; letter-spacing:-.04em; line-height:1.08; }
.service-entry h2 { font-size:clamp(38px,5vw,62px); }
.before-after-section { padding:140px 0; background:#090909; color:#fff; }
.before-after { position:relative; aspect-ratio:16/8; min-height:420px; overflow:hidden; border-radius:34px; background:#111; box-shadow:var(--shadow); }
.ba-layer { position:absolute; inset:0; }
.ba-layer img { width:100%; height:100%; object-fit:cover; }
.ba-layer span { position:absolute; bottom:22px; padding:9px 13px; border-radius:999px; background:rgba(0,0,0,.65); color:#fff; font-size:12px; }
.ba-after span { right:22px; }
.ba-before span { left:22px; }
.ba-before { clip-path:inset(0 50% 0 0); }
.before-after input { position:absolute; inset:0; z-index:4; width:100%; height:100%; opacity:0; cursor:ew-resize; }
.ba-handle { position:absolute; z-index:3; top:0; bottom:0; left:50%; width:2px; background:#fff; transform:translateX(-1px); pointer-events:none; }
.ba-handle::after { content:"↔"; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:52px; height:52px; display:grid; place-items:center; border-radius:50%; background:#fff; color:#111; font-weight:800; box-shadow:0 10px 30px rgba(0,0,0,.3); }
.project-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.project-card { overflow:hidden; border-radius:28px; background:#fff; box-shadow:0 22px 60px rgba(0,0,0,.06); }
.project-image { aspect-ratio:16/10; overflow:hidden; background:#ddd; }
.project-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.project-card:hover .project-image img { transform:scale(1.035); }
.project-card-copy { padding:30px; }
.project-card-copy > p { color:#999; font-size:12px; }
.project-card-copy h2 { margin:8px 0; font:800 34px/1 Manrope,sans-serif; letter-spacing:-.045em; }
.project-card-copy span { color:var(--red); font-weight:700; }
.project-featured { margin-top:-55px; position:relative; z-index:2; border-radius:34px; overflow:hidden; box-shadow:var(--shadow); }
.project-featured img { width:100%; max-height:760px; object-fit:cover; }
.insurance-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.insurance-card { padding:34px; border-radius:26px; background:#fff; border:1px solid var(--line); }
.insurance-card > span { color:var(--red); font-size:12px; letter-spacing:.14em; }
.insurance-card h2 { margin:70px 0 14px; font:800 42px/1 Manrope,sans-serif; letter-spacing:-.05em; }
.insurance-card p { color:#666; }
.insurance-content { margin-top:70px; font-size:18px; }
@media (max-width:1000px) {
  .service-hero-grid,.service-content-grid { grid-template-columns:1fr; }
  .service-sidebar { position:static; }
  .project-grid { grid-template-columns:1fr; }
  .insurance-grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .service-hero,.archive-hero,.project-single-hero { padding:130px 0 80px; }
  .service-hero-visual { min-height:320px; }
  .service-hero-visual img,.service-placeholder { min-height:320px; }
  .before-after { min-height:300px; aspect-ratio:4/5; }
}


/* Version 1.2 additions */
.strip-actions { display:flex; align-items:center; gap:26px; }
.strip-actions a:first-child { padding-right:26px; border-right:1px solid rgba(255,255,255,.35); }
.intake-hero { padding:180px 0 80px; background:radial-gradient(circle at 78% 20%,rgba(225,6,0,.35),transparent 28%),#080808; color:#fff; }
.intake-heading { max-width:980px; }
.intake-heading h1 { margin:18px 0; font:800 clamp(62px,9vw,124px)/.9 Manrope,sans-serif; letter-spacing:-.07em; }
.intake-heading > p:last-child { max-width:760px; color:rgba(255,255,255,.62); font-size:18px; }
.intake-section { padding:80px 0 130px; background:#efefeb; }
.intake-shell { max-width:980px; }
.intake-form,.intake-success { padding:clamp(28px,6vw,70px); border-radius:36px; background:#fff; box-shadow:0 35px 90px rgba(0,0,0,.09); }
.intake-progress { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin-bottom:52px; }
.intake-progress span { height:5px; border-radius:999px; background:#e4e4df; transition:.25s; }
.intake-progress span.is-active { background:var(--red); }
.intake-step { display:none; scroll-margin-top:130px; }
.intake-step.is-active { display:block; animation:intakeFade .35s ease; }
@keyframes intakeFade { from { opacity:0; transform:translateY(10px); } }
.step-number { margin:0 0 10px; color:var(--red); text-transform:uppercase; letter-spacing:.14em; font-size:11px; font-weight:800; }
.intake-step h2,.intake-success h2 { margin:0 0 35px; font:800 clamp(38px,5vw,62px)/1 Manrope,sans-serif; letter-spacing:-.055em; }
.choice-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.choice-grid-three { grid-template-columns:repeat(3,1fr); }
.choice-card { position:relative; cursor:pointer; }
.choice-card input { position:absolute; opacity:0; pointer-events:none; }
.choice-card span { min-height:110px; display:flex; align-items:flex-end; padding:20px; border:1px solid var(--line); border-radius:20px; background:#fafaf8; font:700 18px/1.2 Manrope,sans-serif; transition:.2s; }
.choice-card:hover span,.choice-card input:focus + span { border-color:#999; transform:translateY(-2px); }
.choice-card input:checked + span { border-color:var(--red); background:#fff5f4; box-shadow:inset 0 0 0 1px var(--red); color:var(--red); }
.choice-card.compact span { min-height:82px; font-size:15px; }
.intake-subchoices { margin-top:20px; }
.intake-field { display:block; margin-bottom:22px; }
.intake-field > span { display:block; margin-bottom:8px; color:#666; font-size:12px; text-transform:uppercase; letter-spacing:.1em; font-weight:700; }
.intake-field input,.intake-field textarea { width:100%; border:1px solid var(--line); border-radius:15px; padding:15px 16px; background:#fafaf8; outline:none; }
.intake-field input:focus,.intake-field textarea:focus { border-color:var(--red); box-shadow:0 0 0 3px rgba(225,6,0,.08); }
.intake-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.intake-confirm { margin-top:18px; padding:18px; border-radius:16px; background:#f4f4f0; color:#666; font-size:13px; }
.intake-actions { display:flex; justify-content:space-between; gap:14px; margin-top:48px; }
.intake-actions .button { min-width:160px; }
.intake-actions .button-ghost { background:#111; border-color:#111; }
.intake-alert { margin-bottom:20px; padding:14px 16px; border-radius:14px; background:#fff0ef; color:#a30000; }
.intake-success { text-align:center; }
.intake-success > span { width:70px; height:70px; margin:0 auto 28px; display:grid; place-items:center; border-radius:50%; background:#eaf8ed; color:#13882d; font-size:30px; }
.intake-success p { max-width:620px; margin:0 auto 30px; color:#666; }
.testimonial-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.testimonial-card { padding:30px; border-radius:26px; background:#fff; border:1px solid var(--line); }
.testimonial-card blockquote { margin:30px 0; font:600 21px/1.45 Manrope,sans-serif; letter-spacing:-.025em; text-align:left; }
.testimonial-stars { color:var(--red); letter-spacing:.18em; }
.testimonial-name { margin:0; font-weight:800; }
.testimonial-meta { margin:4px 0 0; color:#888; font-size:13px; }
.team-section { background:#e9e9e4; }
.team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.team-card { overflow:hidden; border-radius:26px; background:#fff; }
.team-photo { aspect-ratio:4/5; background:#d9d9d4; overflow:hidden; }
.team-photo img { width:100%; height:100%; object-fit:cover; }
.team-card h3 { margin:22px 22px 5px; font:800 24px/1 Manrope,sans-serif; letter-spacing:-.04em; }
.team-card p { margin:0 22px 24px; color:#777; font-size:13px; }
@media (max-width:1000px) {
  .testimonial-grid { grid-template-columns:1fr; }
  .team-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:700px) {
  .strip-inner,.strip-actions { align-items:flex-start; }
  .strip-actions { flex-direction:column; gap:8px; }
  .strip-actions a:first-child { border:0; padding:0; }
  .intake-hero { padding:130px 0 60px; }
  .choice-grid,.choice-grid-three,.intake-field-grid { grid-template-columns:1fr; }
  .choice-card span { min-height:82px; }
  .intake-actions { flex-direction:column-reverse; }
  .intake-actions .button { width:100%; }
  .team-grid { grid-template-columns:1fr; }
}


/* Red Van 2.0 — approved-artwork production layouts */
.hero-art { min-height:100vh; overflow:hidden; }
.hero-art-backdrop { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,8,8,.98) 0%,rgba(8,8,8,.88) 47%,rgba(8,8,8,.42) 100%); }
.hero-art .hero-grid { grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); align-items:center; }
.hero-art-card { position:relative; z-index:2; transform:rotate(1.25deg); border:1px solid rgba(255,255,255,.12); border-radius:30px; overflow:hidden; background:rgba(255,255,255,.05); box-shadow:0 50px 120px rgba(0,0,0,.48); }
.hero-art-card img { width:100%; height:auto; display:block; }
.hero-art-caption { position:absolute; inset:auto 18px 18px; padding:18px; display:flex; justify-content:space-between; gap:18px; border-radius:16px; background:rgba(5,5,5,.78); backdrop-filter:blur(18px); }
.hero-art-caption span { color:rgba(255,255,255,.55); font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.hero-art-caption strong { color:#fff; font:700 15px Manrope,sans-serif; }
.hero-scroll { position:absolute; left:50%; bottom:24px; z-index:4; display:flex; gap:12px; align-items:center; transform:translateX(-50%); color:rgba(255,255,255,.65); font-size:11px; text-transform:uppercase; letter-spacing:.15em; }
.service-editorial { background:#f5f5f1; }
.service-list { border-top:1px solid var(--line); }
.service-row { display:grid; grid-template-columns:55px minmax(190px,.75fr) 1.5fr 42px; gap:28px; align-items:center; padding:30px 0; border-bottom:1px solid var(--line); transition:.25s; }
.service-row:hover { padding-left:16px; }
.service-row > span { color:var(--red); font-size:11px; font-weight:800; letter-spacing:.12em; }
.service-row h3 { margin:0; font:800 clamp(25px,3vw,43px)/1 Manrope,sans-serif; letter-spacing:-.05em; }
.service-row p { margin:0; color:#6d6d68; max-width:640px; }
.service-row strong { font-size:25px; }
.section-dark,.insurance-callout { background:#080808; color:#fff; }
.art-story { padding:120px 0; overflow:hidden; }
.art-story-grid { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:7vw; }
.art-story-copy h2,.insurance-callout h2 { margin:20px 0; font:800 clamp(45px,6vw,84px)/.96 Manrope,sans-serif; letter-spacing:-.06em; }
.art-story-copy > p:last-of-type,.insurance-callout p { color:rgba(255,255,255,.62); max-width:650px; font-size:17px; }
.art-story-visual { margin:0; border-radius:30px; overflow:hidden; box-shadow:0 40px 100px rgba(0,0,0,.4); }
.art-story-visual img,.campaign-art img { width:100%; display:block; }
.timeline-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; }
.timeline-card { min-height:330px; padding:24px; display:flex; flex-direction:column; border-radius:24px; background:#fff; border:1px solid var(--line); }
.timeline-card > span { color:var(--red); font-size:11px; font-weight:800; letter-spacing:.12em; }
.timeline-card h3 { margin:auto 0 16px; font:800 29px/1 Manrope,sans-serif; letter-spacing:-.04em; }
.timeline-card p { margin:0; color:#777; font-size:13px; }
.campaign-section { background:#ecece7; }
.campaign-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:7vw; align-items:center; }
.campaign-art { margin:0; border-radius:30px; overflow:hidden; transform:rotate(-1deg); box-shadow:0 35px 85px rgba(0,0,0,.13); }
.campaign-copy h2 { margin:18px 0; font:800 clamp(45px,6vw,78px)/.96 Manrope,sans-serif; letter-spacing:-.06em; }
.region-pills { display:flex; flex-wrap:wrap; gap:8px; margin:30px 0; }
.region-pills span { padding:10px 13px; border-radius:999px; background:#fff; border:1px solid var(--line); font-size:12px; }
.button-dark { background:#080808; border-color:#080808; color:#fff; }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.project-card { overflow:hidden; border-radius:26px; background:#f1f1ed; }
.project-image { aspect-ratio:4/3; overflow:hidden; background:#ddd; }
.project-image img { width:100%; height:100%; object-fit:cover; transition:.5s; }
.project-card:hover .project-image img { transform:scale(1.035); }
.project-copy { padding:24px; }
.project-copy p { color:#777; font-size:12px; }
.project-copy h3 { margin:16px 0 35px; font:800 27px/1.05 Manrope,sans-serif; letter-spacing:-.04em; }
.project-copy span { color:var(--red); font-weight:700; font-size:13px; }
.insurance-callout { padding:110px 0; }
.insurance-callout-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:7vw; align-items:end; }
.page-hero { padding:170px 0 90px; background:#080808; color:#fff; }
.page-hero-grid { display:grid; grid-template-columns:1fr .8fr; gap:7vw; align-items:center; }
.page-hero h1 { margin:18px 0; font:800 clamp(65px,9vw,130px)/.88 Manrope,sans-serif; letter-spacing:-.07em; }
.page-hero-grid > div > p:last-child { color:rgba(255,255,255,.62); max-width:650px; font-size:18px; }
.page-hero-art { margin:0; max-height:570px; overflow:hidden; border-radius:26px; transform:rotate(1deg); border:1px solid rgba(255,255,255,.12); }
.page-hero-art img { width:100%; height:100%; object-fit:cover; display:block; }
.editorial-content-grid { display:grid; grid-template-columns:260px minmax(0,760px); justify-content:space-between; gap:7vw; }
.editorial-aside { position:sticky; top:130px; align-self:start; padding-top:10px; }
.editorial-aside p { font:800 20px Manrope,sans-serif; }
.editorial-aside a { color:var(--red); font-weight:700; }
.prose { font-size:18px; line-height:1.75; }
.prose h2 { margin:55px 0 18px; font:800 clamp(36px,5vw,60px)/1 Manrope,sans-serif; letter-spacing:-.055em; }
.prose h2:first-child { margin-top:0; }
.prose .wp-element-button { display:inline-flex; padding:15px 20px; background:var(--red); color:#fff; border-radius:999px; }
.region-map-card { min-height:480px; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; padding:55px; margin-bottom:25px; border-radius:32px; background:#0a0a0a; color:#fff; overflow:hidden; }
.region-map-copy h2 { margin:18px 0; font:800 clamp(50px,6vw,78px)/.95 Manrope,sans-serif; letter-spacing:-.06em; }
.region-map-copy > p:last-child { color:rgba(255,255,255,.6); }
.region-map-shape { width:min(360px,90%); aspect-ratio:.8; justify-self:center; display:grid; place-items:center; background:linear-gradient(145deg,#ef231a,#9f0000); clip-path:polygon(40% 0,77% 6%,100% 28%,88% 54%,95% 77%,61% 100%,34% 86%,9% 93%,0 57%,13% 32%); box-shadow:0 0 100px rgba(225,6,0,.4); }
.region-map-shape span { font:800 80px Manrope,sans-serif; color:rgba(255,255,255,.93); }
.area-grid,.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.area-card,.article-card { min-height:310px; padding:28px; border:1px solid var(--line); border-radius:25px; background:#fafaf7; }
.area-card > p:first-child,.article-card > p:first-child { color:var(--red); text-transform:uppercase; letter-spacing:.13em; font-size:10px; font-weight:800; }
.area-card h2,.article-card h2 { margin:70px 0 18px; font:800 32px/1.05 Manrope,sans-serif; letter-spacing:-.045em; }
.area-card a,.article-card span { color:var(--red); font-weight:700; }
.footer-main { display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; padding-top:75px; padding-bottom:65px; }
.footer-brand-column > p:last-child { max-width:430px; color:#858585; }
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; }
.footer-links > div { display:flex; flex-direction:column; gap:11px; }
.footer-links a { color:#d2d2d2; }
.footer-bottom > div { display:flex; gap:22px; }
.header-intake-link { color:#fff; font-size:12px; font-weight:700; }
@media (max-width:1050px) {
  .hero-art .hero-grid,.art-story-grid,.campaign-grid,.page-hero-grid,.insurance-callout-grid { grid-template-columns:1fr; }
  .hero-art-card { max-width:680px; }
  .timeline-grid { grid-template-columns:repeat(2,1fr); }
  .project-grid,.area-grid,.article-grid { grid-template-columns:repeat(2,1fr); }
  .footer-main { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .hero-art { min-height:auto; padding-bottom:95px; }
  .hero-art-card { margin-top:20px; }
  .hero-art-caption { position:static; border-radius:0; }
  .service-row { grid-template-columns:38px 1fr 28px; gap:12px; }
  .service-row p { grid-column:2/4; }
  .timeline-grid,.project-grid,.area-grid,.article-grid,.region-map-card,.editorial-content-grid { grid-template-columns:1fr; }
  .timeline-card { min-height:240px; }
  .page-hero { padding-top:135px; }
  .page-hero-art { max-height:380px; }
  .region-map-card { padding:30px; }
  .editorial-aside { position:static; }
  .footer-links { grid-template-columns:1fr 1fr; }
}
@media (max-width:520px) {
  .footer-links { grid-template-columns:1fr; }
}


/* Red Van 2.1 — artwork translated into live UI, no presentation-board images */
.hero-live-stage{position:relative;z-index:2;min-height:610px;display:grid;place-items:center;perspective:1200px}.browser-shell{width:min(720px,100%);border:1px solid rgba(255,255,255,.18);border-radius:28px;overflow:hidden;background:rgba(18,18,18,.86);box-shadow:0 50px 140px rgba(0,0,0,.65);transform:rotateY(-7deg) rotateX(2deg);backdrop-filter:blur(22px)}.browser-bar{height:46px;display:flex;align-items:center;gap:8px;padding:0 15px;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.1)}.browser-bar i{width:8px;height:8px;border-radius:50%;background:#555}.browser-bar i:first-child{background:var(--red)}.browser-bar span{margin-left:12px;color:#777;font-size:10px}.browser-content{min-height:470px;padding:38px;background:radial-gradient(circle at 75% 25%,rgba(225,6,0,.28),transparent 32%),linear-gradient(145deg,#171717,#090909);color:#fff}.browser-brand{display:flex;align-items:center;gap:12px}.browser-brand b{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--red);font:900 16px Manrope,sans-serif}.browser-brand span{font:800 11px/1 Manrope,sans-serif;letter-spacing:.05em}.browser-brand small{font-size:7px;letter-spacing:.25em;color:#777}.browser-content>p{margin:78px 0 12px;color:#999;font-size:9px;letter-spacing:.2em}.browser-content h2{max-width:480px;margin:0;font:800 clamp(38px,5vw,66px)/.92 Manrope,sans-serif;letter-spacing:-.06em}.browser-actions{display:flex;gap:9px;margin-top:28px}.browser-actions span{padding:11px 14px;border-radius:999px;background:var(--red);font-size:8px;font-weight:800;letter-spacing:.08em}.browser-actions span+span{background:transparent;border:1px solid #555}.browser-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:56px;background:#333}.browser-metrics div{display:flex;flex-direction:column;padding:16px;background:#111}.browser-metrics strong{font:800 20px Manrope,sans-serif}.browser-metrics small{color:#777;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.floating-status{position:absolute;right:-10px;bottom:50px;display:flex;align-items:center;gap:12px;padding:14px 18px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(20,20,20,.86);box-shadow:0 20px 60px rgba(0,0,0,.4);backdrop-filter:blur(18px)}.floating-status>span{width:10px;height:10px;border-radius:50%;background:#46d77a;box-shadow:0 0 18px #46d77a}.floating-status small{display:block;color:#777;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.floating-status strong{font-size:11px;color:#fff}.identity-system{min-height:620px;padding:42px;border:1px solid rgba(255,255,255,.12);border-radius:32px;background:linear-gradient(145deg,#151515,#090909);box-shadow:0 50px 100px rgba(0,0,0,.35);display:grid;grid-template-columns:1fr 1fr;gap:18px}.identity-system>div{border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:26px;background:rgba(255,255,255,.025)}.identity-logo{display:flex;align-items:center;gap:16px}.identity-logo>span{display:grid;place-items:center;width:76px;height:76px;border-radius:20px;background:var(--red);font:900 25px Manrope,sans-serif}.identity-logo strong{display:block;font:900 22px/1 Manrope,sans-serif}.identity-logo small{font-size:9px;letter-spacing:.25em;color:#888}.identity-slogan{grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-end}.identity-slogan span{font:800 clamp(28px,4vw,54px)/.92 Manrope,sans-serif;letter-spacing:-.06em}.identity-slogan span:last-child{color:var(--red)}.identity-swatches{display:flex;align-items:flex-end;gap:8px}.identity-swatches i{flex:1;height:100%;min-height:78px;border-radius:13px;background:#e10600}.identity-swatches i:nth-child(2){background:#171717}.identity-swatches i:nth-child(3){background:#f7f7f4}.identity-swatches i:nth-child(4){background:#a8a8a8}.identity-type{display:flex;align-items:center;gap:18px}.identity-type b{font:800 68px/.8 Manrope,sans-serif}.identity-type p{font:800 13px Manrope,sans-serif}.identity-type small{color:#777;font-weight:500}.campaign-live{position:relative;min-height:650px}.social-tile{position:absolute;border-radius:27px;box-shadow:0 35px 80px rgba(0,0,0,.22)}.social-primary{left:0;top:55px;width:62%;aspect-ratio:1;background:radial-gradient(circle at 70% 20%,#ff3a30,transparent 30%),#e10600;color:#fff;padding:32px}.social-primary .mini-brand{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:#fff;color:var(--red);font-weight:900}.social-primary p{margin:100px 0 20px;font:800 clamp(34px,5vw,62px)/.9 Manrope,sans-serif;letter-spacing:-.06em}.social-primary p strong{color:#111}.social-primary>span{font-size:9px;letter-spacing:.14em}.social-story{right:0;top:0;width:39%;height:58%;padding:25px;background:#111;color:#fff;transform:rotate(4deg)}.social-story small{letter-spacing:.18em}.story-ring{width:95px;height:95px;margin:45px auto 35px;display:grid;place-items:center;border:2px solid var(--red);border-radius:50%;font:800 24px Manrope,sans-serif}.social-story strong{display:block;text-align:center;font:800 25px/.95 Manrope,sans-serif}.social-phone{right:3%;bottom:0;width:34%;height:47%;padding:34px 18px 18px;background:#f8f8f4;border:8px solid #111}.phone-notch{position:absolute;top:8px;left:50%;width:65px;height:16px;border-radius:999px;background:#111;transform:translateX(-50%)}.social-phone small{font-size:7px;color:#999}.social-phone h3{margin:28px 0 15px;font:800 23px/1 Manrope,sans-serif}.social-phone i{display:block;margin:7px 0;padding:10px;border:1px solid #ddd;border-radius:12px;font-style:normal;font-size:9px}.project-visual-fallback{position:relative;width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 68% 30%,rgba(225,6,0,.5),transparent 30%),linear-gradient(145deg,#1c1c1c,#080808);color:#fff;overflow:hidden}.project-visual-fallback span{display:grid;place-items:center;width:92px;height:92px;border-radius:26px;background:var(--red);font:900 30px Manrope,sans-serif;z-index:2}.project-visual-fallback i{position:absolute;width:130%;height:1px;background:rgba(255,255,255,.12);transform:rotate(-25deg)}.project-visual-fallback b{position:absolute;left:22px;bottom:20px;font-size:9px;letter-spacing:.16em}.page-brand-stage{position:relative;min-height:520px;border-radius:30px;overflow:hidden;background:radial-gradient(circle at 75% 25%,rgba(225,6,0,.48),transparent 30%),linear-gradient(145deg,#181818,#080808);border:1px solid rgba(255,255,255,.13)}.page-brand-monogram{position:absolute;top:45px;left:45px;display:grid;place-items:center;width:90px;height:90px;border-radius:25px;background:var(--red);font:900 30px Manrope,sans-serif}.page-brand-lines{position:absolute;inset:0}.page-brand-lines span{position:absolute;width:130%;height:1px;background:rgba(255,255,255,.12);transform:rotate(-28deg);left:-15%;top:35%}.page-brand-lines span:nth-child(2){top:56%}.page-brand-lines span:nth-child(3){top:76%}.page-brand-stage>p{position:absolute;left:45px;bottom:42px;margin:0;font:800 clamp(35px,5vw,58px)/.9 Manrope,sans-serif;letter-spacing:-.055em}.page-brand-stage>p strong{color:var(--red)}.regional-stage{display:grid;place-items:center}.regional-stage>strong{font:900 130px Manrope,sans-serif;color:#fff;z-index:2}.regional-stage>small{position:absolute;bottom:45px;letter-spacing:.2em;color:#aaa}.bc-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:42px 42px}.bc-pin{position:absolute;width:15px;height:15px;border:3px solid #fff;border-radius:50%;background:var(--red);box-shadow:0 0 0 8px rgba(225,6,0,.2)}.bc-pin.one{left:28%;top:62%}.bc-pin.two{left:55%;top:48%}.bc-pin.three{right:23%;top:67%}.resource-stage{background:#efefeb}.resource-card{position:absolute;width:62%;height:35%;padding:25px;border-radius:22px;background:#fff;color:#111;box-shadow:0 24px 55px rgba(0,0,0,.15);transform:rotate(-4deg)}.resource-card span{color:var(--red);font-size:10px}.resource-card strong{display:block;margin-top:45px;font:800 30px Manrope,sans-serif}.resource-card small{color:#888}.rc-one{left:10%;top:8%}.rc-two{right:7%;top:33%;transform:rotate(4deg);background:#111;color:#fff}.rc-three{left:14%;bottom:5%;transform:rotate(-1deg);background:var(--red);color:#fff}.room-scene{position:absolute;inset:0;background:linear-gradient(#ddd 0 72%,#9b7b5b 72%)}.room-window{position:absolute;left:10%;top:12%;width:28%;height:43%;border:12px solid #eee;background:linear-gradient(135deg,#8fc7df,#dbeef5)}.room-sofa{position:absolute;left:30%;bottom:15%;width:46%;height:28%;border-radius:28px 28px 8px 8px;background:#d8d2c7;box-shadow:inset 0 -12px 0 rgba(0,0,0,.06)}.room-table{position:absolute;left:42%;bottom:7%;width:28%;height:8%;border-radius:50%;background:#5d4633}.room-lamp{position:absolute;right:12%;top:21%;width:5%;height:52%;background:linear-gradient(90deg,transparent 40%,#333 40% 60%,transparent 60%)}.room-lamp:before{content:"";position:absolute;left:-140%;top:0;width:380%;height:18%;background:#eee;clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.room-restored{filter:saturate(.9) brightness(1.05)}.room-damaged{filter:saturate(.55) brightness(.62)}.room-damaged:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 45%,rgba(55,31,20,.55) 46% 52%,transparent 53%),radial-gradient(circle at 25% 18%,rgba(40,40,40,.7),transparent 20%)}.damage-water{position:absolute;left:0;right:0;bottom:0;height:21%;background:rgba(40,82,105,.65);clip-path:polygon(0 18%,12% 7%,25% 17%,41% 4%,56% 16%,71% 8%,87% 18%,100% 6%,100% 100%,0 100%)}
@media(max-width:1050px){.hero-live-stage{min-height:520px}.browser-shell{transform:none}.identity-system{min-height:540px}.campaign-live{min-height:600px}.floating-status{right:10px}}@media(max-width:760px){.browser-content{min-height:420px;padding:25px}.browser-content>p{margin-top:55px}.browser-metrics{margin-top:38px}.identity-system{grid-template-columns:1fr;min-height:auto}.identity-slogan{grid-row:auto;min-height:230px}.campaign-live{min-height:540px}.social-primary{width:76%}.social-story{width:46%}.social-phone{width:48%}.page-brand-stage{min-height:360px}.floating-status{bottom:5px}.resource-card{width:76%}}

:root{--rv-red:#e41219;--rv-black:#050505;--rv-white:#f7f7f4}
body{background:var(--rv-white)}
.rv-header{position:absolute;inset:0 0 auto;z-index:100;color:#fff}
.rv-header-inner{min-height:86px;display:flex;align-items:center;gap:36px;border-bottom:1px solid rgba(255,255,255,.13)}
.rv-logo{color:#fff;line-height:1;min-width:155px}.rv-logo span{display:block;font:800 22px/1 Manrope,sans-serif;letter-spacing:-.04em}.rv-logo span strong{color:var(--rv-red)}.rv-logo small{display:block;margin-top:5px;font-size:8px;letter-spacing:.34em}
.rv-nav{margin-left:auto}.rv-nav ul{display:flex;align-items:center;gap:28px;list-style:none;padding:0;margin:0}.rv-nav a{color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.rv-header-actions{display:flex;align-items:center;gap:18px}.rv-header-phone{color:#fff;font-size:11px;font-weight:700}.rv-header-emergency{padding:12px 15px;color:#fff;background:var(--rv-red);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.rv-menu-toggle{display:none;background:none;border:0;padding:8px}.rv-menu-toggle span{display:block;width:22px;height:2px;background:#fff;margin:5px 0}
.rv-hero{position:relative;min-height:820px;padding:145px 0 0;overflow:hidden;background:radial-gradient(circle at 72% 45%,rgba(228,18,25,.2),transparent 34%),linear-gradient(120deg,#050505 0%,#090909 52%,#030303 100%);color:#fff}
.rv-hero-noise{position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:44px 44px}
.rv-hero-inner{position:relative;z-index:2;min-height:560px;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:20px}
.rv-kicker,.rv-section-label{margin:0 0 22px;color:var(--rv-red);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.17em}
.rv-hero-copy h1{margin:0;font:800 clamp(62px,7.1vw,118px)/.79 "Arial Narrow",Impact,Manrope,sans-serif;text-transform:uppercase;letter-spacing:-.055em}.rv-hero-copy h1 span{color:var(--rv-red)}
.rv-hero-lead{max-width:470px;margin:30px 0;color:rgba(255,255,255,.68);font-size:16px;line-height:1.65}.rv-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.rv-btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 22px;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.rv-btn-red{border-color:var(--rv-red);background:var(--rv-red)}.rv-btn-outline{background:rgba(255,255,255,.02)}
.rv-hero-visual{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}.rv-hero-visual img{position:relative;z-index:2;width:min(760px,115%);max-width:none;display:block;filter:drop-shadow(0 42px 40px rgba(0,0,0,.62))}.rv-red-glow{position:absolute;width:75%;aspect-ratio:1;border-radius:50%;background:rgba(228,18,25,.2);filter:blur(90px)}
.rv-response-badge{position:absolute;z-index:4;right:3%;bottom:17%;width:106px;height:106px;border:1px solid rgba(255,255,255,.32);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(5,5,5,.7);backdrop-filter:blur(14px)}.rv-response-badge strong{font:800 24px Manrope,sans-serif}.rv-response-badge span{width:72px;text-align:center;color:rgba(255,255,255,.6);font-size:8px;line-height:1.25;text-transform:uppercase;letter-spacing:.08em}
.rv-service-rail{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.28)}.rv-service-mini{min-height:118px;display:flex;align-items:center;gap:15px;padding:20px 24px;color:#fff;border-right:1px solid rgba(255,255,255,.12)}.rv-service-mini:last-child{border-right:0}.rv-service-mini strong{display:block;margin-bottom:5px;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.rv-service-mini small{display:block;color:rgba(255,255,255,.48);font-size:10px;line-height:1.35}
.rv-service-icon{width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(255,255,255,.28);border-radius:50%;position:relative}.rv-water:before{content:"";position:absolute;width:12px;height:18px;left:14px;top:10px;border:2px solid currentColor;border-radius:55% 45% 60% 40%;transform:rotate(45deg)}.rv-fire:before{content:"";position:absolute;width:13px;height:20px;left:14px;top:9px;border:2px solid currentColor;border-radius:70% 30% 65% 35%;transform:rotate(25deg)}.rv-mould:before{content:"✦";position:absolute;inset:0;display:grid;place-items:center;font-size:19px}.rv-storm:before{content:"";position:absolute;width:22px;height:9px;left:9px;top:13px;border:2px solid currentColor;border-radius:20px;box-shadow:-5px 5px 0 -2px currentColor}.rv-storm:after{content:"";position:absolute;width:2px;height:10px;left:20px;top:24px;background:currentColor;transform:skew(-20deg)}
.rv-intro,.rv-services{padding:110px 0}.rv-intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end}.rv-intro h2,.rv-section-head h2,.rv-emergency h2{margin:0;font:800 clamp(48px,6vw,84px)/.95 Manrope,sans-serif;letter-spacing:-.06em}.rv-intro-copy p{color:#686868;font-size:18px;line-height:1.7}.rv-intro-copy a{color:var(--rv-red);font-weight:800}
.rv-services{background:#ecece8}.rv-section-head{max-width:930px;margin-bottom:55px}.rv-service-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rv-service-card{min-height:410px;display:flex;flex-direction:column;padding:26px;color:#111;background:#fff;border:1px solid #ddd;transition:.25s}.rv-service-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(0,0,0,.09)}.rv-card-number{color:#999;font-size:10px;letter-spacing:.12em}.rv-service-card .rv-service-icon{margin:62px 0 25px;border-color:#bbb;color:var(--rv-red)}.rv-service-card h3{margin:0 0 15px;font:800 27px/1 Manrope,sans-serif;letter-spacing:-.04em}.rv-service-card p{color:#777;font-size:13px;line-height:1.55}.rv-service-card>strong{margin-top:auto;color:var(--rv-red);font-size:12px}
.rv-process{padding:120px 0;color:#fff;background:#070707}.rv-light h2{color:#fff}.rv-process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.17)}.rv-process-grid article{min-height:320px;padding:28px;border-right:1px solid rgba(255,255,255,.14)}.rv-process-grid article:last-child{border-right:0}.rv-process-grid span{color:var(--rv-red);font-size:11px;font-weight:800}.rv-process-grid h3{margin:120px 0 18px;font:800 32px/1 Manrope,sans-serif}.rv-process-grid p{color:rgba(255,255,255,.52);font-size:13px;line-height:1.6}
.rv-emergency{padding:110px 0;color:#fff;background:linear-gradient(115deg,#1d0001,#070707 50%)}.rv-emergency-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:end}.rv-emergency p:not(.rv-section-label){color:rgba(255,255,255,.62);font-size:17px;line-height:1.7}
@media(max-width:1000px){.rv-nav{display:none}.rv-menu-toggle{display:block}.rv-header-phone{display:none}.rv-hero-inner{grid-template-columns:1fr;padding-top:35px}.rv-hero-copy{position:relative;z-index:5}.rv-hero-visual{min-height:410px;margin-top:-45px}.rv-hero-visual img{width:110%}.rv-service-rail{grid-template-columns:repeat(2,1fr)}.rv-service-cards,.rv-process-grid{grid-template-columns:repeat(2,1fr)}.rv-intro-grid,.rv-emergency-grid{grid-template-columns:1fr}}
@media(max-width:650px){.rv-header-inner{min-height:72px}.rv-header-emergency{display:none}.rv-hero{padding-top:100px;min-height:auto}.rv-hero-copy h1{font-size:58px}.rv-hero-visual{min-height:315px;margin-top:-10px}.rv-hero-visual img{width:130%}.rv-response-badge{width:82px;height:82px;right:0;bottom:9%}.rv-service-rail{grid-template-columns:1fr}.rv-service-mini{min-height:92px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.rv-service-cards,.rv-process-grid{grid-template-columns:1fr}.rv-process-grid article{min-height:245px;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.rv-process-grid h3{margin-top:75px}}

/* v2.3 mockup-match homepage */
:root{--rv3-red:#e31b23;--rv3-black:#050505;--rv3-ink:#111;--rv3-line:#dedede}
.rv3-header{position:absolute;z-index:100;inset:0 0 auto;color:#fff}.rv3-header-inner{height:84px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.08)}.rv3-logo{display:block;color:#fff;line-height:1}.rv3-logo span{font:800 20px/1 Manrope,sans-serif;letter-spacing:-.04em}.rv3-logo span b{color:var(--rv3-red);margin-right:3px}.rv3-logo small{display:block;margin-top:5px;font-size:7px;letter-spacing:.32em}.rv3-nav{margin-left:auto}.rv3-nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0}.rv3-nav a{color:#fff;font-size:10px;font-weight:700}.rv3-emergency{margin-left:32px;padding:12px 18px;background:var(--rv3-red);color:#fff;font-size:10px;font-weight:800}.rv3-menu-toggle{display:none}
.rv3-hero{padding:115px 0 0;color:#fff;background:#050505;overflow:hidden}.rv3-hero-grid{min-height:545px;display:grid;grid-template-columns:.72fr 1.28fr;align-items:center}.rv3-alert-dot{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:7px 10px;border:1px solid #4a4a4a;border-radius:5px;font-size:9px;font-weight:700}.rv3-alert-dot span{width:6px;height:6px;border-radius:50%;background:var(--rv3-red)}.rv3-hero h1{margin:0;font:800 clamp(56px,5vw,88px)/.86 "Arial Narrow",Impact,Manrope,sans-serif;text-transform:uppercase;letter-spacing:-.05em}.rv3-hero h1 em{font-style:normal;color:var(--rv3-red)}.rv3-hero-copy>p{max-width:500px;color:#c7c7c7;font-size:14px;line-height:1.65}.rv3-actions{display:flex;gap:12px;margin-top:24px}.rv3-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:46px;padding:0 20px;border-radius:3px;color:#fff;font-size:11px;font-weight:800}.rv3-btn-red{background:var(--rv3-red)}.rv3-btn-dark{border:1px solid #555;background:#0d0d0d}.rv3-hero-image{align-self:stretch;display:flex;align-items:flex-end;justify-content:flex-end}.rv3-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.rv3-trustbar{display:grid;grid-template-columns:repeat(4,1fr);min-height:72px;border-top:1px solid #333}.rv3-trustbar span{display:flex;align-items:center;gap:10px;color:#ddd;font-size:10px}.rv3-trustbar b{font-weight:700}
.rv3-services{padding:55px 0 70px;background:#fff}.rv3-section-top{display:grid;grid-template-columns:1.15fr 1fr auto;gap:40px;align-items:end;margin-bottom:34px}.rv3-label{margin:0 0 12px;color:var(--rv3-red);font-size:9px;font-weight:800;letter-spacing:.08em}.rv3-section-top h2,.rv3-why h2,.rv3-reviews h2,.rv3-team-faq h2{margin:0;font:800 27px/1.08 Manrope,sans-serif;letter-spacing:-.04em}.rv3-section-top>p{margin:0;color:#666;font-size:12px;line-height:1.6}.rv3-section-top>a{color:var(--rv3-red);font-size:10px;font-weight:800}.rv3-service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.rv3-service-card{min-height:220px;padding:22px;border:1px solid var(--rv3-line);color:#111;background:#fff}.rv3-service-symbol{display:block;font-size:36px;margin-bottom:44px}.rv3-service-card h3{font:800 14px/1.2 Manrope,sans-serif}.rv3-service-card p{color:#666;font-size:11px;line-height:1.5}.rv3-service-card>b{display:block;margin-top:25px;color:#111}
.rv3-why{padding:58px 0;background:#070707;color:#fff}.rv3-why-grid{display:grid;grid-template-columns:.9fr 1.6fr;gap:50px}.rv3-why-intro>p:last-child{color:#aaa;font-size:12px;line-height:1.65}.rv3-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rv3-benefit-grid article{min-height:210px;padding:22px;border:1px solid #292929;background:#0b0b0b}.rv3-benefit-grid span{color:var(--rv3-red);font-size:30px}.rv3-benefit-grid h3{margin-top:44px;font:800 14px/1.3 Manrope,sans-serif}.rv3-benefit-grid p{color:#888;font-size:11px}
.rv3-stats{position:relative;min-height:235px;background:#fff}.rv3-scene{position:absolute;inset:0 auto 0 0;width:39%}.rv3-scene img{width:100%;height:100%;object-fit:cover}.rv3-stats-inner{min-height:235px;display:grid;grid-template-columns:39% 1fr}.rv3-stats-inner>div:first-child{grid-column:2;padding:50px 0 0 55px}.rv3-stat-grid{grid-column:2;display:grid;grid-template-columns:repeat(4,1fr);padding:15px 0 50px 55px}.rv3-stat-grid strong{display:block;font:800 28px Manrope,sans-serif}.rv3-stat-grid span{font-size:10px}
.rv3-reviews{padding:60px 0;background:#fff}.rv3-two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px}.rv3-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.rv3-review-grid article{min-height:205px;padding:20px;border:1px solid var(--rv3-line)}.stars{color:var(--rv3-red);font-size:12px}.rv3-review-grid p{font-size:11px;line-height:1.6}.rv3-review-grid strong,.rv3-review-grid span{display:block;font-size:10px}.rv3-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rv3-pricing article{position:relative;padding:18px;border:1px solid var(--rv3-line)}.rv3-pricing .featured{border-color:var(--rv3-red)}.rv3-pricing small{position:absolute;top:-17px;left:0;background:#fff;color:var(--rv3-red);border:1px solid var(--rv3-red);padding:3px 10px}.rv3-pricing h3{font-size:13px}.rv3-pricing strong{display:block;font-size:24px}.rv3-pricing span{font-size:9px}.rv3-pricing ul{padding-left:16px;font-size:10px;line-height:1.8}.rv3-pricing a{display:block;padding:10px;text-align:center;border:1px solid var(--rv3-line);font-size:10px;font-weight:800}.rv3-pricing .featured a{background:var(--rv3-red);color:#fff}
.rv3-team-faq{padding:60px 0;background:#fff}.rv3-team-faq-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:40px}.rv3-team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:24px}.rv3-team-grid article{background:#efefef}.rv3-avatar{height:170px;display:grid;place-items:center;background:linear-gradient(#ddd,#aaa);font:800 28px Manrope,sans-serif}.rv3-team-grid h3{margin:10px 10px 3px;font-size:12px}.rv3-team-grid span{display:block;margin:0 10px 14px;font-size:9px;color:#666}.rv3-faq{margin-top:24px}.rv3-faq details{border-top:1px solid var(--rv3-line)}.rv3-faq details:last-child{border-bottom:1px solid var(--rv3-line)}.rv3-faq summary{padding:13px 0;font-size:11px;font-weight:700}.rv3-faq p{font-size:11px;color:#666}
.rv3-cta{padding:36px 0;background:#070707;color:#fff}.rv3-cta-inner{display:grid;grid-template-columns:auto 1fr .9fr auto auto;gap:20px;align-items:center}.rv3-cta-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid #333;border-radius:50%;color:var(--rv3-red)}.rv3-cta h2{margin:0;font:800 20px/1.1 Manrope,sans-serif}.rv3-cta p{color:#999;font-size:10px}
.rv3-footer{padding:60px 0 20px;background:#050505;color:#fff}.rv3-footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:55px}.rv3-footer h4{font-size:10px}.rv3-footer a,.rv3-footer p{display:block;color:#888;font-size:10px;line-height:1.8}.rv3-footer-bottom{display:flex;justify-content:space-between;margin-top:40px;padding-top:18px;border-top:1px solid #222;color:#666;font-size:9px}.rv3-footer-bottom div{display:flex;gap:24px}
@media(max-width:900px){.rv3-nav{display:none}.rv3-emergency{margin-left:auto}.rv3-hero-grid{grid-template-columns:1fr}.rv3-hero-image{min-height:420px}.rv3-service-grid{grid-template-columns:repeat(2,1fr)}.rv3-why-grid,.rv3-two-col,.rv3-team-faq-grid{grid-template-columns:1fr}.rv3-benefit-grid{grid-template-columns:repeat(2,1fr)}.rv3-cta-inner{grid-template-columns:1fr}.rv3-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.rv3-hero{padding-top:95px}.rv3-hero h1{font-size:54px}.rv3-hero-image{min-height:320px}.rv3-trustbar{grid-template-columns:1fr 1fr}.rv3-section-top{grid-template-columns:1fr}.rv3-service-grid,.rv3-benefit-grid,.rv3-review-grid,.rv3-pricing,.rv3-team-grid,.rv3-footer-grid{grid-template-columns:1fr}.rv3-stats{padding-top:210px}.rv3-scene{width:100%;height:210px}.rv3-stats-inner{grid-template-columns:1fr}.rv3-stats-inner>div:first-child,.rv3-stat-grid{grid-column:1;padding-left:0}.rv3-stat-grid{grid-template-columns:1fr 1fr}.rv3-emergency{display:none}}


/* Carpet cleaning page */
.carpet-page { background:#f5f3ef; }
.carpet-hero { min-height:760px; display:flex; align-items:center; padding:150px 0 90px; background:#0b0b0c; color:#fff; overflow:hidden; }
.carpet-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,.9fr); gap:70px; align-items:center; }
.carpet-hero h1 { max-width:760px; margin:18px 0 24px; font:800 clamp(54px,7vw,104px)/.91 Manrope,sans-serif; letter-spacing:-.065em; }
.carpet-lead { max-width:610px; color:rgba(255,255,255,.68); font-size:19px; line-height:1.65; }
.carpet-hero-art { min-height:520px; position:relative; }
.carpet-room { position:absolute; inset:0; overflow:hidden; border-radius:3px; background:linear-gradient(145deg,#29292b 0 52%,#18181a 52%); box-shadow:0 35px 90px rgba(0,0,0,.48); }
.carpet-window { position:absolute; left:14%; top:10%; width:46%; height:38%; background:linear-gradient(145deg,#e2ddd2,#8e989b); box-shadow:inset 0 0 0 12px #1b1b1d; }
.carpet-sofa { position:absolute; right:7%; top:35%; width:56%; height:28%; border-radius:15px 15px 6px 6px; background:#9a9185; box-shadow:0 18px 25px rgba(0,0,0,.25); }
.carpet-sofa:before { content:""; position:absolute; left:6%; right:6%; top:16%; height:45%; border-bottom:1px solid rgba(0,0,0,.2); }
.carpet-floor { position:absolute; left:0; right:0; bottom:0; height:43%; background:repeating-linear-gradient(90deg,#6f6255 0 3px,#75685a 3px 7px); transform:skewY(-4deg); transform-origin:left bottom; }
.carpet-clean-path { position:absolute; left:0; bottom:0; width:54%; height:45%; background:repeating-linear-gradient(90deg,#b5aa9c 0 3px,#baafa2 3px 7px); clip-path:polygon(0 12%,100% 0,78% 100%,0 100%); }
.carpet-wand { position:absolute; left:40%; bottom:5%; width:9px; height:55%; background:#c8c8c8; transform:rotate(26deg); transform-origin:bottom; box-shadow:0 0 0 2px #3a3a3c; }
.carpet-wand:after { content:""; position:absolute; left:-31px; bottom:-8px; width:72px; height:24px; background:#d9d9d9; border:3px solid #333; transform:rotate(-26deg); }

.carpet-services .section-heading { margin-bottom:54px; }
.carpet-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#d6d2cb; border:1px solid #d6d2cb; }
.carpet-card { min-height:290px; padding:34px; background:#fff; }
.carpet-card > span { display:block; margin-bottom:70px; color:#d92b27; font:700 11px/1 Manrope,sans-serif; }
.carpet-card h3 { margin:0 0 14px; font:700 24px/1.12 Manrope,sans-serif; letter-spacing:-.03em; color:#111; }
.carpet-card p { margin:0; color:#6d6a65; line-height:1.65; }

.carpet-process { padding:120px 0; background:#111; color:#fff; }
.carpet-process-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; }
.carpet-process h2, .carpet-benefits h2 { margin:16px 0 0; font:700 clamp(40px,5vw,70px)/1 Manrope,sans-serif; letter-spacing:-.055em; }
.carpet-steps { margin:0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.16); }
.carpet-steps li { display:grid; grid-template-columns:54px 1fr; gap:24px; padding:28px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.carpet-steps li > span { color:#e03630; font:700 11px Manrope,sans-serif; }
.carpet-steps h3 { margin:0 0 7px; font:700 20px Manrope,sans-serif; }
.carpet-steps p { margin:0; color:rgba(255,255,255,.6); line-height:1.6; }

.carpet-benefits-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.carpet-benefit-list { border-top:1px solid #cfcac2; }
.carpet-benefit-list p { position:relative; margin:0; padding:22px 48px 22px 0; border-bottom:1px solid #cfcac2; font:600 17px Manrope,sans-serif; }
.carpet-benefit-list p:after { content:"✓"; position:absolute; right:5px; top:20px; color:#d92b27; font-weight:800; }
.carpet-contact { background:#e5e0d8; }

@media (max-width:900px) {
	.carpet-hero-grid, .carpet-process-grid, .carpet-benefits-grid { grid-template-columns:1fr; gap:50px; }
	.carpet-hero-art { min-height:420px; }
	.carpet-card-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
	.carpet-hero { min-height:auto; padding-top:125px; }
	.carpet-hero h1 { font-size:52px; }
	.carpet-hero-art { min-height:340px; }
	.carpet-card-grid { grid-template-columns:1fr; }
	.carpet-card { min-height:240px; }
}


.nav-list .menu-item-has-children { position:relative; }
.nav-list .sub-menu {
	position:absolute;
	left:-18px;
	top:calc(100% + 16px);
	z-index:50;
	display:block;
	min-width:220px;
	margin:0;
	padding:10px;
	list-style:none;
	background:#171719;
	border:1px solid rgba(255,255,255,.12);
	opacity:0;
	visibility:hidden;
	transform:translateY(8px);
	transition:.2s ease;
}
.nav-list .sub-menu:before { content:""; position:absolute; left:0; right:0; top:-17px; height:17px; }
.nav-list .sub-menu a { display:block; padding:11px 12px; white-space:nowrap; }
.nav-list .menu-item-has-children:hover > .sub-menu,
.nav-list .menu-item-has-children:focus-within > .sub-menu { opacity:1; visibility:visible; transform:none; }
@media (max-width:900px) {
	.nav-list .sub-menu { position:static; min-width:0; padding:8px 0 0 18px; border:0; background:transparent; opacity:1; visibility:visible; transform:none; }
	.nav-list .sub-menu a { font-size:17px; padding:6px 0; color:rgba(255,255,255,.65); }
}


/* =========================================================
   Premium Header + Footer — v3.2
   ========================================================= */

.rv-premium-header{
	position:fixed;
	inset:0 0 auto;
	z-index:1000;
	padding:18px 28px;
	transition:padding .25s ease, background .25s ease, box-shadow .25s ease;
}
.rv-premium-header.is-scrolled{
	padding-top:10px;
	padding-bottom:10px;
	background:rgba(10,10,11,.86);
	backdrop-filter:blur(18px);
	-webkit-backdrop-filter:blur(18px);
	box-shadow:0 1px 0 rgba(255,255,255,.08);
}
.admin-bar .rv-premium-header{top:32px}
.rv-header-shell{
	max-width:1480px;
	min-height:74px;
	margin:0 auto;
	padding:0 14px 0 24px;
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:42px;
	border:1px solid rgba(255,255,255,.12);
	background:rgba(12,12,13,.62);
	backdrop-filter:blur(16px);
	-webkit-backdrop-filter:blur(16px);
	box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.rv-brand{
	position:relative;
	display:inline-block;
	width:max-content;
	padding-bottom:13px;
	color:#fff;
	text-decoration:none;
	line-height:1;
}
.rv-brand-main{
	display:block;
	width:max-content;
	font:800 24px/1 Arial,sans-serif;
	letter-spacing:-.06em;
}
.rv-brand-main b{color:#e0322d}
.rv-brand-sub{
	position:absolute;
	left:0;
	top:28px;
	display:block;
	width:max-content;
	font:700 7px/1 Arial,sans-serif;
	letter-spacing:.02em;
	white-space:nowrap;
	transform-origin:left center;
}
.rv-primary-nav{justify-self:center}
.rv-primary-menu{
	display:flex;
	align-items:center;
	gap:34px;
	margin:0;
	padding:0;
	list-style:none;
}
.rv-primary-menu > li{position:relative}
.rv-primary-menu > li > a{
	position:relative;
	display:block;
	padding:27px 0 25px;
	color:rgba(255,255,255,.78);
	font:600 13px/1.1 Manrope,Arial,sans-serif;
	letter-spacing:.01em;
	text-decoration:none;
	transition:color .2s ease;
}
.rv-primary-menu > li > a:after{
	content:"";
	position:absolute;
	left:0;
	right:100%;
	bottom:18px;
	height:1px;
	background:#e0322d;
	transition:right .2s ease;
}
.rv-primary-menu > li:hover > a,
.rv-primary-menu > li.current-menu-item > a,
.rv-primary-menu > li.current-menu-ancestor > a{color:#fff}
.rv-primary-menu > li:hover > a:after,
.rv-primary-menu > li.current-menu-item > a:after,
.rv-primary-menu > li.current-menu-ancestor > a:after{right:0}

.rv-primary-menu .sub-menu{
	position:absolute;
	left:-22px;
	top:calc(100% - 4px);
	min-width:260px;
	margin:0;
	padding:12px;
	list-style:none;
	background:#121214;
	border:1px solid rgba(255,255,255,.1);
	box-shadow:0 24px 70px rgba(0,0,0,.4);
	opacity:0;
	visibility:hidden;
	transform:translateY(10px);
	transition:.2s ease;
}
.rv-primary-menu .sub-menu:before{
	content:"";
	position:absolute;
	left:0;right:0;top:-14px;height:14px;
}
.rv-primary-menu li:hover > .sub-menu,
.rv-primary-menu li:focus-within > .sub-menu{
	opacity:1;
	visibility:visible;
	transform:none;
}
.rv-primary-menu .sub-menu a{
	display:block;
	padding:13px 14px;
	color:rgba(255,255,255,.7);
	font:600 13px/1.3 Manrope,Arial,sans-serif;
	text-decoration:none;
	transition:.18s ease;
}
.rv-primary-menu .sub-menu a:hover{
	background:rgba(255,255,255,.06);
	color:#fff;
	padding-left:18px;
}
.rv-header-actions{
	display:flex;
	align-items:center;
	gap:18px;
}
.rv-header-phone{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	color:#fff;
	text-decoration:none;
}
.rv-header-phone span{
	color:rgba(255,255,255,.48);
	font:700 9px/1.2 Manrope,Arial,sans-serif;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.rv-header-phone strong{
	margin-top:4px;
	font:700 13px/1 Manrope,Arial,sans-serif;
}
.rv-emergency-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:48px;
	padding:0 21px;
	background:#e0322d;
	color:#fff;
	font:800 11px/1 Manrope,Arial,sans-serif;
	letter-spacing:.08em;
	text-transform:uppercase;
	text-decoration:none;
	transition:transform .2s ease, background .2s ease;
}
.rv-emergency-button:hover{background:#f03b35;transform:translateY(-1px)}
.rv-menu-toggle{
	display:none;
	width:46px;
	height:46px;
	padding:0;
	border:1px solid rgba(255,255,255,.14);
	background:transparent;
	cursor:pointer;
}
.rv-menu-toggle span{
	display:block;
	width:18px;
	height:1px;
	margin:5px auto;
	background:#fff;
	transition:.2s ease;
}
.rv-menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3px) rotate(45deg)}
.rv-menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3px) rotate(-45deg)}

.rv-mobile-panel{
	display:none;
	max-width:1480px;
	margin:0 auto;
	padding:22px 24px 28px;
	background:#111113;
	border:1px solid rgba(255,255,255,.1);
	border-top:0;
}
.rv-mobile-menu{
	margin:0;
	padding:0;
	list-style:none;
}
.rv-mobile-menu a{
	display:block;
	padding:14px 0;
	border-bottom:1px solid rgba(255,255,255,.09);
	color:#fff;
	font:700 21px/1.2 Manrope,Arial,sans-serif;
	text-decoration:none;
}
.rv-mobile-menu .sub-menu{
	margin:0;
	padding:0 0 0 18px;
	list-style:none;
}
.rv-mobile-menu .sub-menu a{
	color:rgba(255,255,255,.62);
	font-size:14px;
}
.rv-mobile-call{
	display:flex;
	justify-content:space-between;
	align-items:end;
	margin-top:24px;
	padding-top:22px;
	border-top:1px solid rgba(255,255,255,.12);
	color:#fff;
	text-decoration:none;
}
.rv-mobile-call span{
	color:rgba(255,255,255,.48);
	font:700 10px Manrope,Arial,sans-serif;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.rv-mobile-call strong{font:800 21px Manrope,Arial,sans-serif}

.rv-premium-footer{
	position:relative;
	background:#0b0b0c;
	color:#fff;
	overflow:hidden;
}
.rv-footer-accent{
	width:100%;
	height:4px;
	background:#e0322d;
}
.rv-footer-top{
	display:grid;
	grid-template-columns:minmax(280px,.9fr) 1.35fr;
	gap:110px;
	padding-top:92px;
	padding-bottom:74px;
}
.rv-footer-intro{max-width:430px}
.rv-footer-brand .rv-brand-main{font-size:38px}
.rv-footer-brand .rv-brand-sub{top:44px;font-size:10px}
.rv-footer-motto{
	margin:34px 0 18px;
	font:700 clamp(28px,3vw,44px)/1.02 Manrope,Arial,sans-serif;
	letter-spacing:-.045em;
}
.rv-footer-summary{
	max-width:390px;
	margin:0;
	color:rgba(255,255,255,.5);
	font-size:15px;
	line-height:1.65;
}
.rv-footer-columns{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:54px;
}
.rv-footer-column{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:13px;
}
.rv-footer-label{
	margin:0 0 13px;
	color:rgba(255,255,255,.35);
	font:800 10px/1 Manrope,Arial,sans-serif;
	letter-spacing:.15em;
	text-transform:uppercase;
}
.rv-footer-column a,
.rv-footer-column span{
	color:rgba(255,255,255,.72);
	font:600 14px/1.35 Manrope,Arial,sans-serif;
	text-decoration:none;
}
.rv-footer-column a:hover{color:#fff}
.rv-footer-emergency{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:30px;
	padding-top:30px;
	padding-bottom:30px;
	border-top:1px solid rgba(255,255,255,.1);
	border-bottom:1px solid rgba(255,255,255,.1);
}
.rv-footer-emergency div{
	display:flex;
	flex-direction:column;
	gap:5px;
}
.rv-footer-emergency div span{
	color:rgba(255,255,255,.42);
	font:700 10px Manrope,Arial,sans-serif;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.rv-footer-emergency div strong{
	font:700 clamp(22px,3vw,36px)/1.1 Manrope,Arial,sans-serif;
	letter-spacing:-.035em;
}
.rv-footer-emergency > a{
	display:inline-flex;
	align-items:center;
	gap:22px;
	min-width:170px;
	justify-content:space-between;
	padding:16px 18px;
	background:#e0322d;
	color:#fff;
	font:800 11px Manrope,Arial,sans-serif;
	letter-spacing:.1em;
	text-transform:uppercase;
	text-decoration:none;
}
.rv-footer-emergency > a span{font-size:18px}
.rv-footer-bottom{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	padding-top:25px;
	padding-bottom:28px;
}
.rv-footer-bottom p,
.rv-footer-bottom a{
	margin:0;
	color:rgba(255,255,255,.34);
	font:600 11px/1.4 Manrope,Arial,sans-serif;
	text-decoration:none;
}
.rv-footer-bottom div{display:flex;gap:24px}
.rv-footer-bottom a:hover{color:rgba(255,255,255,.8)}

@media (max-width:1180px){
	.rv-primary-nav{display:none}
	.rv-header-shell{grid-template-columns:auto 1fr auto}
	.rv-header-actions{justify-self:end}
	.rv-menu-toggle{display:block}
	.rv-mobile-panel.is-open{display:block}
}
@media (max-width:900px){
	.rv-premium-header{padding:12px}
	.rv-header-shell{min-height:66px;padding:0 10px 0 18px;gap:16px}
	.rv-header-phone{display:none}
	.rv-footer-top{grid-template-columns:1fr;gap:58px;padding-top:70px}
	.rv-footer-columns{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:680px){
	.admin-bar .rv-premium-header{top:46px}
	.rv-emergency-button{display:none}
	.rv-brand-main{font-size:22px}
	.rv-brand-sub{top:26px}
	.rv-footer-columns{grid-template-columns:1fr 1fr;gap:42px 28px}
	.rv-footer-emergency{align-items:flex-start;flex-direction:column}
	.rv-footer-emergency > a{width:100%}
	.rv-footer-bottom{align-items:flex-start;flex-direction:column}
}
@media (max-width:460px){
	.rv-footer-columns{grid-template-columns:1fr}
}
