.paid-parking-page { padding-top:0; background:#f5f2eb; color:#172033; }
.modern-header { position:sticky; top:0; z-index:999; display:flex; align-items:center; gap:1.5rem; box-sizing:border-box; width:100%; min-height:82px; padding:.75rem max(4vw,1rem); background:#323142; box-shadow:0 4px 18px rgba(0,0,0,.14); }
.modern-brand img { display:block; width:190px; max-height:58px; object-fit:contain; }
.modern-main-nav { display:flex; align-items:center; gap:1rem; margin-left:auto; }
.modern-main-nav a,.modern-main-nav summary,.modern-header-actions a { color:#fff; text-decoration:none; font-weight:700; cursor:pointer; }
.modern-main-nav details { position:relative; }
.modern-main-nav details>div { position:absolute; top:2rem; left:0; display:grid; min-width:340px; padding:.8rem; background:#fff; border-radius:12px; box-shadow:0 16px 40px rgba(23,32,51,.18); }
.modern-main-nav details>div a { color:#172033; padding:.45rem; border-radius:7px; }
.modern-main-nav details>div a:hover,.modern-main-nav .current-service { background:#f5f2eb; color:#bb7b2d; }
.modern-header-actions { display:flex; gap:.65rem; }
.modern-header-actions a { border:1px solid #fff; border-radius:999px; padding:.55rem .8rem; font-size:.85rem; }
.modern-header-actions .filled { background:#bb7b2d; border-color:#bb7b2d; }
.modern-menu-toggle { display:none; margin-left:auto; border:0; border-radius:10px; padding:.6rem .8rem; font-weight:800; background:#bb7b2d; color:#fff; }
.modern-language-menu { position:relative; color:#fff; }
.modern-language-menu summary { cursor:pointer; font-weight:800; list-style:none; border:1px solid rgba(255,255,255,.7); border-radius:999px; padding:.45rem .65rem; }
.modern-language-menu summary::-webkit-details-marker { display:none; }
.modern-language-menu>div { position:absolute; right:0; top:2.7rem; z-index:1000; display:grid; min-width:72px; padding:.35rem; background:#fff; border-radius:10px; box-shadow:0 16px 40px rgba(23,32,51,.18); }
.modern-language-menu button { border:0; padding:.35rem .55rem; color:#172033; background:transparent; font-weight:800; border-radius:7px; cursor:pointer; }
.modern-language-menu button[aria-current="page"] { background:#f5f2eb; color:#bb7b2d; }
.paid-parking-page h1,.paid-parking-page h2,.paid-parking-page h3,.paid-parking-page p { margin-top:0; }
.paid-parking-page h1 { font-size:clamp(2.7rem,5vw,4.8rem); line-height:1; letter-spacing:-.05em; max-width:920px; }
.paid-parking-page h2 { font-size:clamp(2rem,4vw,3.8rem); line-height:1.05; letter-spacing:-.035em; }
.paid-parking-page h3 { font-size:1.25rem; }
.modern-footer { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1.5rem; padding:2rem max(5vw,1rem); background:#323142; color:#fff; border-top:1px solid rgba(255,255,255,.12); text-align:left; opacity:1; }
.modern-footer img { width:180px; }
.modern-footer p { margin:0; }
.modern-footer nav { display:grid; gap:.3rem; }
.modern-footer a { color:#fff; }
.paid-hero { min-height:calc(100vh - 120px); display:grid; grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr); gap:5vw; align-items:center; padding:70px 8% 80px; overflow:hidden; color:#f2dfb4; background:radial-gradient(circle at 79% 45%,rgba(226,193,133,.14),transparent 34%),#252432; }
.pilot-badge,.section-eyebrow { display:inline-flex; text-transform:uppercase; letter-spacing:.17em; font-size:.76rem; font-weight:700; }
.pilot-badge { border:1px solid rgba(226,193,133,.55); border-radius:999px; padding:9px 14px; margin-bottom:26px; }
.paid-lead { max-width:720px; font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.55; color:#f7ebd0; }
.revenue-callout { max-width:720px; margin:24px 0 0; padding:18px 20px; border-left:5px solid #bb7b2d; border-radius:10px; background:#fff; color:#172033; box-shadow:0 16px 40px rgba(23,32,51,.14); }
.revenue-callout strong { display:block; margin-bottom:4px; color:#7d4c16; font-size:1.12rem; }
.paid-actions { display:flex; gap:24px; align-items:center; flex-wrap:wrap; margin-top:30px; }
.paid-primary { background:#e2c185; color:#252432; border-color:#e2c185; font-weight:700; border-radius:4px; }
.paid-primary:hover,.paid-primary:focus-visible { background:#f2dfb4; border-color:#f2dfb4; }
.paid-text-link { color:#e2c185; text-underline-offset:5px; }
.paid-note { max-width:650px; margin-top:24px; color:#c6bda9; font-size:.94rem; }
.paid-demo { position:relative; min-height:570px; display:flex; align-items:center; justify-content:center; }
.sign-board { width:270px; min-height:370px; box-sizing:border-box; padding:30px 26px; background:#f5f3ec; color:#252432; border:10px solid #fff; border-radius:8px; box-shadow:0 26px 60px rgba(0,0,0,.4); transform:rotate(-6deg) translate(-45px,-25px); display:flex; flex-direction:column; align-items:center; gap:15px; font-weight:700; text-align:center; }
.sign-p { width:70px; height:70px; display:grid; place-items:center; border-radius:10px; color:white; background:#245d9c; font-size:3rem; }
.sign-board small { font-size:.74rem; }
.demo-qr { width:116px; height:116px; padding:8px; box-sizing:border-box; background:#fff; display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:repeat(3,1fr); gap:7px; }
.demo-qr i { background:#252432; }
.demo-qr i:nth-child(2),.demo-qr i:nth-child(4),.demo-qr i:nth-child(9) { background:linear-gradient(135deg,#252432 50%,transparent 51%); }
.phone-card { position:absolute; right:0; bottom:15px; width:270px; min-height:485px; box-sizing:border-box; padding:32px 22px 24px; background:#fff; color:#252432; border:8px solid #14131c; border-radius:36px; box-shadow:0 30px 70px rgba(0,0,0,.52); transform:rotate(4deg); display:flex; flex-direction:column; gap:12px; }
.phone-top { position:absolute; top:9px; left:50%; transform:translateX(-50%); width:72px; height:7px; background:#14131c; border-radius:8px; }
.phone-kicker { font-size:.62rem; letter-spacing:.13em; color:#8a7651; }
.phone-card > strong { font-size:1.2rem; margin-bottom:10px; }
.phone-label { font-size:.72rem; color:#6d6a72; }
.phone-field,.duration-row,.price-row { border:1px solid #ddd9d0; border-radius:8px; padding:12px; }
.duration-row,.price-row { display:flex; justify-content:space-between; }
.price-row { margin-top:8px; background:#f5f0e5; }
.phone-button { margin-top:auto; padding:13px; border-radius:7px; background:#252432; color:#f2dfb4; text-align:center; font-weight:700; font-size:.84rem; }
.paid-proof { width:min(1120px,calc(100% - 2rem)); margin:3rem auto 0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid #d9dee7; border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.paid-proof div { display:flex; align-items:center; padding:28px; border-right:1px solid #d9dee7; }
.paid-proof div:last-child { border:0; }
.paid-proof span { color:#172033; }
.paid-section { width:min(1120px,calc(100% - 2rem)); margin:0 auto; padding-top:100px; padding-bottom:100px; }
.section-eyebrow { margin-bottom:24px; color:#8a581d; }
.paid-split-heading { display:grid; grid-template-columns:1.2fr .8fr; gap:8vw; align-items:end; }
.paid-split-heading p,.operator-copy>p,.pilot-card p { color:#5c6678; font-size:1.08rem; line-height:1.65; }
.use-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-top:60px; }
.use-grid article { background:#fff; padding:38px; min-height:190px; border:1px solid #d9dee7; border-radius:18px; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.use-grid h3 { margin-top:0; }
.use-grid p { color:#5c6678; line-height:1.6; max-width:520px; }
.after-hours-section { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.8fr); gap:7vw; align-items:center; }
.after-hours-copy>p { color:#5c6678; font-size:1.08rem; line-height:1.65; }
.after-hours-points { list-style:none; padding:0; margin:28px 0 0; }
.after-hours-points li { position:relative; padding:13px 0 13px 30px; border-bottom:1px solid #d9dee7; }
.after-hours-points li::before { content:'✓'; position:absolute; left:0; color:#bb7b2d; }
.schedule-card { padding:28px; border:1px solid #d9dee7; border-radius:18px; background:#fff; color:#172033; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.schedule-head { display:flex; justify-content:space-between; gap:1rem; padding-bottom:20px; border-bottom:1px solid #ded9cf; }
.schedule-head span { font-weight:800; }
.schedule-head strong { color:#7d4c16; font-size:.75rem; text-transform:uppercase; letter-spacing:.07em; }
.schedule-row { display:grid; gap:.35rem; padding:18px 0; border-bottom:1px solid #ded9cf; }
.schedule-row span { color:#6d6970; font-size:.88rem; }
.schedule-row b { font-size:1rem; }
.schedule-row.is-paid b { color:#176b42; }
.schedule-card small { display:block; margin-top:18px; color:#77737a; line-height:1.45; }
.access-rules-section { padding-top:45px; }
.access-rule-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:50px; }
.access-rule-grid article { padding:1.5rem; border:1px solid #d9dee7; border-radius:18px; background:#fff; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.access-rule-grid article>span { display:grid; place-items:center; width:2.4rem; height:2.4rem; border-radius:50%; background:#bb7b2d; color:#fff; font-weight:900; }
.access-rule-grid h3 { margin:1.25rem 0 .65rem; }
.access-rule-grid p { margin:0; color:#5c6678; line-height:1.6; }
.permit-note { margin-top:1rem; padding:1.5rem; border-left:5px solid #bb7b2d; border-radius:10px; background:#fff; box-shadow:0 16px 40px rgba(23,32,51,.08); }
.permit-note strong { display:block; margin-bottom:.45rem; font-size:1.1rem; color:#7d4c16; }
.permit-note p { margin:0; color:#5c6678; }
.process-section { width:100%; padding-left:max(1rem,calc((100% - 1120px)/2)); padding-right:max(1rem,calc((100% - 1120px)/2)); background:#f1e8d7; color:#252432; }
.process-section .section-eyebrow { color:#776540; }
.process-section>h2 { max-width:700px; }
.process-line { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-top:60px; counter-reset:steps; }
.process-line article { position:relative; min-height:220px; padding:1.4rem; border:1px solid #d9dee7; border-radius:18px; background:#fff; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.process-number { width:2.4rem; height:2.4rem; display:grid; place-items:center; border-radius:50%; color:#fff; background:#bb7b2d; font-weight:800; }
.process-line h3 { margin-top:1.4rem; }
.process-line p { color:#5f5b61; line-height:1.55; }
.operator-section { display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; }
.operator-copy ul { list-style:none; padding:0; margin:30px 0 0; }
.operator-copy li { padding:14px 0 14px 30px; border-bottom:1px solid #d9dee7; position:relative; }
.operator-copy li::before { content:'✓'; position:absolute; left:0; color:#bb7b2d; }
.dashboard-card { padding:28px; border:1px solid #d9dee7; border-radius:18px; background:#fff; color:#172033; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.dashboard-head { display:flex; justify-content:space-between; padding-bottom:24px; border-bottom:1px solid #ded9cf; text-transform:uppercase; letter-spacing:.08em; font-size:.72rem; font-weight:700; }
.dashboard-head i { width:26px; height:26px; border-radius:50%; background:#e2c185; }
.dashboard-title { display:flex; justify-content:space-between; align-items:end; padding:24px 0 14px; }
.dashboard-title strong { font-size:2.5rem; }
.dashboard-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.dashboard-stats span { background:#ece8df; padding:15px; border-radius:9px; display:flex; flex-direction:column; gap:5px; }
.dashboard-stats b { font-size:1.5rem; }
.dashboard-stats small { color:#6d6970; }
.dashboard-search { padding:13px; border:1px solid #d7d2c8; border-radius:8px; margin:20px 0 8px; color:#77737a; }
.dashboard-row { display:flex; justify-content:space-between; gap:14px; padding:15px 6px; border-bottom:1px solid #e3ded5; }
.dashboard-row span { font-size:.8rem; padding:5px 8px; border-radius:999px; }
.status-active { color:#176b42; background:#daf0e3; }
.status-soon { color:#8a5b0d; background:#f6e8c8; }
.concept-note { display:block; margin-top:18px; color:#89848a; text-align:center; }
.pilot-section { padding-top:40px; }
.pilot-card { display:grid; grid-template-columns:1.1fr .9fr; gap:7vw; padding:60px; background:#fff; border:1px solid #d9dee7; border-radius:18px; box-shadow:0 16px 40px rgba(23,32,51,.1); }
.faq-section>h2 { max-width:720px; }
.faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:50px; }
.faq-grid details { border:1px solid #d9dee7; padding:22px 24px; border-radius:18px; background:#fff; box-shadow:0 16px 40px rgba(23,32,51,.08); }
.faq-grid summary { cursor:pointer; font-weight:700; color:#172033; }
.faq-grid p { margin:18px 0 0; color:#5c6678; line-height:1.55; }
@media (max-width:1050px) {
  .paid-hero { grid-template-columns:1fr; }
  .paid-demo { width:min(580px,100%); margin:auto; }
  .paid-proof { grid-template-columns:1fr; }
  .paid-proof div { border-right:0; border-bottom:1px solid #d9dee7; }
  .after-hours-section { grid-template-columns:1fr; }
  .access-rule-grid { grid-template-columns:1fr; }
  .process-line { grid-template-columns:repeat(2,1fr); row-gap:55px; }
}
@media (max-width:1350px) {
  .modern-menu-toggle { display:block; }
  .modern-main-nav,.modern-header-actions { display:none; }
  .modern-main-nav.open { display:grid; position:absolute; left:0; right:0; top:82px; padding:1rem; background:#323142; }
  .modern-main-nav details>div { position:static; min-width:0; margin-top:.6rem; }
}
@media (max-width:700px) {
  .modern-header { min-height:72px; gap:.75rem; }
  .modern-brand img { width:155px; }
  .modern-main-nav.open { top:72px; max-height:calc(100vh - 72px); overflow-y:auto; }
  .modern-footer { grid-template-columns:1fr; }
  .paid-parking-page h1 { font-size:clamp(2.55rem,13vw,4rem); }
  .paid-hero { min-height:auto; padding-top:45px; }
  .paid-demo { min-height:450px; transform:scale(.84); transform-origin:top center; margin-bottom:-70px; }
  .sign-board { transform:rotate(-5deg) translate(-25px,-15px); }
  .phone-card { right:-20px; }
  .paid-split-heading,.operator-section,.pilot-card { grid-template-columns:1fr; }
  .use-grid,.process-line,.faq-grid { grid-template-columns:1fr; }
  .paid-section { padding-top:70px; padding-bottom:70px; }
  .pilot-card { padding:35px 25px; }
  .dashboard-stats { gap:5px; }
  .dashboard-stats span { padding:10px 8px; }
  .dashboard-row { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; transition:none!important; } }
.paid-parking-page .btn {
  display: inline-block;
  padding: .82rem 1.15rem;
  border: 1px solid transparent;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 700;
}
