﻿/* CF150 public service request landing page — styles isolated from tenant dashboard. */
.cf150-public {margin:0;background:#f6f8f7;color:#20362b;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.5}
.cf150-public * {box-sizing:border-box}
.cf150-public a {text-decoration:none}
.cfl-wrap {max-width:1180px;margin:auto;padding:0 24px}
.cfl-topbar {min-height:76px;display:flex;align-items:center;gap:25px;border-bottom:1px solid #e1eae5}
.cfl-logo {font-size:22px;font-weight:900;letter-spacing:-.8px;color:#174e3b;white-space:nowrap}.cfl-logo strong{font-weight:550;color:#64756c}
.cfl-top-caption {color:#51685b;font-weight:650;font-size:14px}
.cfl-language {margin-left:auto;display:flex;gap:5px;padding:4px;border:1px solid #d8e6dc;border-radius:999px;background:white;white-space:nowrap}
.cfl-language a {padding:6px 14px;border-radius:999px;color:#3e594b;font-size:14px;font-weight:750}
.cfl-language a[aria-current="page"]{background:#174e3b;color:#fff}
.cfl-hero {display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:50px;padding:72px 0 52px}
.cfl-eyebrow {display:inline-block;margin-bottom:13px;color:#187251;background:#e0efe8;border-radius:99px;padding:7px 11px;font-weight:850;font-size:11px;letter-spacing:.1em}
.cfl-hero h1 {font-size:clamp(34px,4.3vw,58px);line-height:1.12;letter-spacing:-.042em;margin:0 0 22px;font-weight:850;max-width:740px}
.cfl-hero p {color:#52685e;font-size:18px;max-width:630px;margin:0 0 24px}
.cfl-cta,.cfl-submit {display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:12px 25px;border-radius:11px;background:#176c4e;color:white!important;border:0;font-weight:800;font-size:16px;cursor:pointer}
.cfl-cta:hover,.cfl-submit:hover{background:#0b4f39}
.cfl-hero p.cfl-note {font-size:13px;margin:13px 0 0;color:#4c6d5a;font-weight:650}
.cfl-hero-panel {background:white;border:1px solid #e0eae4;border-radius:22px;box-shadow:0 15px 40px rgba(29,72,47,.055);padding:30px}
.cfl-hero-panel h2{margin:0 0 16px;font-size:22px;letter-spacing:-.02em}
.cfl-hero-panel ol{padding:0;margin:0;list-style:none;counter-reset:steps}
.cfl-hero-panel li {display:flex;flex-direction:column;position:relative;padding:8px 0 17px 50px;margin:0 0 7px;counter-increment:steps}
.cfl-hero-panel li:not(:last-child):before {content:"";position:absolute;left:18px;top:46px;bottom:0;border-left:2px solid #e2ece5}
.cfl-hero-panel li:after {content:counter(steps);position:absolute;top:8px;left:0;width:37px;height:37px;border-radius:50%;background:#e5f3ea;color:#196547;display:grid;place-items:center;font-weight:900}
.cfl-hero-panel li strong {font-size:16px;margin-bottom:3px}
.cfl-hero-panel li span{color:#597368;font-size:14px}
.cfl-form-section {padding:18px 0 54px;scroll-margin-top:20px}
.cfl-form-box {background:white;border:1px solid #dce7e0;max-width:850px;margin:0 auto;border-radius:22px;padding:35px 40px;box-shadow:0 10px 30px rgba(20,60,40,.035)}
.cfl-form-box h2 {font-size:29px;line-height:1.15;letter-spacing:-.025em;margin:0 0 9px}
.cfl-form-intro {color:#5f7269;margin:0 0 22px;font-size:14px}
.cfl-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:17px;row-gap:14px}
.cfl-full{grid-column:1/-1}
.cfl-mini-grid{display:grid;grid-template-columns:minmax(80px,.65fr) minmax(120px,1.35fr);gap:12px}
.cf150-public .cfl-label {display:block;color:#274c3a;font-size:14px;font-weight:740;margin:0 0 7px}
.cf150-public .cf150-input {display:block;min-height:45px;border:1px solid #bbcfc4;border-radius:9px;background:white;font-size:15px;padding:11px 12px;color:#1d3329}
.cf150-public textarea.cf150-input{min-height:132px;resize:vertical}
.cf150-public .cf150-input:focus {outline:3px solid #b6dfc9;border-color:#217650}
.cfl-divider {padding-top:14px;border-top:1px solid #e7ede9;margin-top:7px}
.cfl-divider h3{font-size:17px;margin:0}
.cfl-consent{display:flex;align-items:flex-start;gap:12px;margin:25px 0 17px;padding:17px;border-radius:12px;border:1px solid #dce9e1;background:#f4faf6;color:#3b5347;font-size:13px;line-height:1.55}
.cfl-consent input{margin-top:3px;width:19px;height:19px;flex:0 0 auto;accent-color:#176c4e}
.cfl-submit{width:100%}
.cfl-submit-note{color:#62766a;font-size:12px;text-align:center;margin:10px 0 0}
.cfl-error{background:#fff4e8;border:1px solid #e4b47d;border-radius:10px;color:#723b18;font-size:14px;padding:12px;margin:16px 0}
.cfl-alert,.cfl-complete{text-align:center;padding:55px 35px}
.cfl-complete h2{color:#196547}
.cfl-complete p,.cfl-alert p{color:#52685e;font-size:16px;margin:12px auto 24px;max-width:540px}
.cfl-footer{border-top:1px solid #e2ebe6;text-align:center;color:#65786e;font-size:12px;padding:22px 0 42px;max-width:780px;margin:auto}
.cfl-honeypot{position:absolute!important;left:-9999px!important;height:1px!important;width:1px!important;overflow:hidden!important}
@media(max-width:760px){.cfl-wrap{padding:0 16px}.cfl-topbar{min-height:68px;gap:10px;flex-wrap:wrap;padding:10px 0}.cfl-top-caption{display:none}.cfl-language{margin-left:auto}.cfl-language a{padding:6px 12px}.cfl-hero{grid-template-columns:1fr;gap:24px;padding:43px 0 22px}.cfl-hero h1{font-size:37px}.cfl-hero p{font-size:16px}.cfl-hero-panel{padding:21px}.cfl-form-section{padding:20px 0 45px}.cfl-form-box{padding:26px 20px;border-radius:16px}.cfl-form-grid{grid-template-columns:1fr;gap:14px}.cfl-mini-grid{grid-template-columns:1fr 1.4fr}.cfl-form-box h2{font-size:27px}}
@media(max-width:360px){.cfl-logo{font-size:19px}.cfl-language a{font-size:12px;padding:6px 9px}.cfl-hero h1{font-size:32px}}
