/* ---------- Commercial Awareness page ---------- */

.ca-hero{
padding:64px 0 40px;
}

.ca-eyebrow{
display:inline-block;
font-size:.78rem;
font-weight:600;
letter-spacing:.06em;
text-transform:uppercase;
color:var(--accent);
background:var(--accent-light);
padding:5px 12px;
border-radius:999px;
margin-bottom:18px;
}

.ca-hero h1{
font-size:3rem;
line-height:1.05;
font-weight:700;
letter-spacing:-.02em;
margin:0 0 18px;
max-width:14ch;
}

.ca-lede{
font-size:1.1rem;
line-height:1.5;
color:var(--text-light);
max-width:56ch;
margin:0;
}

.ca-note{
font-size:.85rem;
font-weight:500;
color:var(--text-light);
max-width:56ch;
margin:16px 0 0;
padding-top:16px;
border-top:1px solid var(--border);
}

/* ---------- Controls ---------- */

.ca-controls{
position:sticky;
top:64px;
z-index:20;
background:var(--tabs-bg);
backdrop-filter:blur(8px);
border-bottom:1px solid var(--border);
padding:16px 0;
}

.ca-controls-inner{
display:flex;
gap:12px;
flex-wrap:wrap;
align-items:center;
}

.ca-search{
position:relative;
flex:1 1 260px;
min-width:200px;
}

.ca-search-icon{
position:absolute;
left:14px;
top:50%;
transform:translateY(-50%);
width:18px;
height:18px;
color:var(--text-light);
pointer-events:none;
}

.ca-search input{
width:100%;
padding:10px 14px 10px 40px;
border-radius:10px;
border:1px solid var(--border);
background:var(--surface);
color:var(--text);
font-family:inherit;
font-size:.95rem;
}

.ca-search input:focus{
outline:2px solid var(--accent);
outline-offset:1px;
}

.ca-controls select{
padding:10px 14px;
border-radius:10px;
border:1px solid var(--border);
background:var(--surface);
color:var(--text);
font-family:inherit;
font-size:.9rem;
cursor:pointer;
}

.ca-controls select:focus{
outline:2px solid var(--accent);
outline-offset:1px;
}

/* ---------- Feed ---------- */

.ca-feed-section{
padding:36px 0 80px;
}

.ca-feed{
max-width:760px;
border-top:1px solid var(--border);
}

.ca-card{
display:grid;
grid-template-columns:88px 1fr;
gap:20px;
padding:26px 0;
border-bottom:1px solid var(--border);
}

.ca-card-date{
padding-top:2px;
}

.ca-card-date .day{
display:block;
font-size:1.6rem;
font-weight:700;
letter-spacing:-.01em;
line-height:1;
}

.ca-card-date .month{
display:block;
font-size:.75rem;
font-weight:600;
text-transform:uppercase;
letter-spacing:.05em;
color:var(--text-light);
margin-top:4px;
}

.ca-card-body{
min-width:0;
}

.ca-card-firm{
display:flex;
align-items:center;
gap:8px;
margin-bottom:8px;
}

.ca-card-firm img{
width:20px;
height:20px;
border-radius:5px;
object-fit:contain;
background:var(--surface-alt);
border:1px solid var(--border);
padding:2px;
}

.ca-card-firm span{
font-size:.85rem;
font-weight:600;
color:var(--text-light);
}

.ca-card h3{
font-size:1.15rem;
line-height:1.35;
font-weight:650;
margin:0 0 8px;
}

.ca-card h3 a{
color:var(--text);
text-decoration:none;
}

.ca-card h3 a:hover{
color:var(--accent);
}

.ca-card p{
font-size:.95rem;
line-height:1.55;
color:var(--text-light);
margin:0 0 10px;
}

.ca-card-link{
font-size:.85rem;
font-weight:600;
color:var(--accent);
text-decoration:none;
}

.ca-card-link:hover{
text-decoration:underline;
}

/* ---------- States ---------- */

.ca-state{
max-width:520px;
padding:60px 0;
color:var(--text-light);
}

.ca-state h3{
color:var(--text);
font-size:1.2rem;
margin:0 0 8px;
}

/* ---------- Mobile ---------- */

@media (max-width:640px){

.ca-hero{
padding:44px 0 28px;
}

.ca-hero h1{
font-size:2.2rem;
}

.ca-controls{
top:56px;
}

.ca-card{
grid-template-columns:56px 1fr;
gap:14px;
}

.ca-card-date .day{
font-size:1.3rem;
}

}
