:root{
    --aiwest-primary: #2563eb;
    --aiwest-primary-dark: #1d4ed8;
    --aiwest-accent: #10b981;
    --aiwest-ink: #111827;
    --aiwest-muted: #4b5563;
    --aiwest-border: #e5e7eb;
    --aiwest-surface: #ffffff;
    --aiwest-soft: #f8fafc;
    --aiwest-soft-blue: #eff6ff;
    --aiwest-radius: 22px;
    --aiwest-button-radius: 999px;
    --aiwest-shadow: 0 18px 50px rgba(15,23,42,.08);
    --aiwest-max-width: 1180px;
}
.aiwest-section{
    margin:36px auto;
    padding:30px;
    border-radius:var(--aiwest-radius);
    border:1px solid var(--aiwest-border);
    background:var(--aiwest-surface);
    box-shadow:var(--aiwest-shadow);
    color:var(--aiwest-ink);
    box-sizing:border-box;
}
.aiwest-section-soft{
    margin:36px auto;
    padding:30px;
    border-radius:var(--aiwest-radius);
    border:1px solid #dbeafe;
    background:linear-gradient(135deg,var(--aiwest-soft-blue),#fff);
    color:var(--aiwest-ink);
    box-sizing:border-box;
}
.aiwest-section h2,.aiwest-section-soft h2,.aiwest-cta h2{
    color:var(--aiwest-ink);
    font-size:clamp(26px,3vw,38px);
    line-height:1.15;
    margin:0 0 14px;
}
.aiwest-section h3,.aiwest-section-soft h3{
    color:var(--aiwest-ink);
    font-size:clamp(20px,2vw,26px);
    line-height:1.25;
    margin:18px 0 10px;
}
.aiwest-section p,.aiwest-section-soft p,.aiwest-card p,.aiwest-faq p{
    color:var(--aiwest-muted);
    font-size:16px;
    line-height:1.7;
}
.aiwest-kicker{
    margin:0 0 8px!important;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:12px!important;
    font-weight:800;
    color:var(--aiwest-primary)!important;
}
.aiwest-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:16px;
    margin-top:18px;
}
.aiwest-card{
    padding:18px;
    border-radius:calc(var(--aiwest-radius) - 6px);
    background:var(--aiwest-surface);
    border:1px solid var(--aiwest-border);
    box-sizing:border-box;
}
.aiwest-card strong{
    display:block;
    color:var(--aiwest-ink);
    margin-bottom:6px;
}
.aiwest-btn,.aiwest-section a.aiwest-btn,.aiwest-section-soft a.aiwest-btn,.entry-content a.aiwest-btn{
    display:inline-block;
    margin-top:14px;
    padding:13px 20px;
    border-radius:var(--aiwest-button-radius);
    background:var(--aiwest-primary);
    color:#fff!important;
    text-decoration:none!important;
    font-weight:800;
    line-height:1.2;
    box-shadow:0 10px 24px rgba(37,99,235,.22);
}
.aiwest-btn:hover,.aiwest-section a.aiwest-btn:hover,.aiwest-section-soft a.aiwest-btn:hover{
    background:var(--aiwest-primary-dark);
    color:#fff!important;
}
.aiwest-btn-secondary,.entry-content a.aiwest-btn-secondary{
    display:inline-block;
    margin-top:14px;
    padding:12px 18px;
    border-radius:var(--aiwest-button-radius);
    background:#fff;
    border:1px solid var(--aiwest-border);
    color:var(--aiwest-primary)!important;
    text-decoration:none!important;
    font-weight:800;
}
.aiwest-faq{
    margin-top:24px;
    padding:22px;
    border-radius:var(--aiwest-radius);
    background:var(--aiwest-soft);
    border:1px solid var(--aiwest-border);
}
.aiwest-faq h3{
    margin-top:0;
}
.aiwest-cta{
    margin:36px auto;
    padding:30px;
    border-radius:var(--aiwest-radius);
    background:#111827;
    color:#fff;
    box-sizing:border-box;
}
.aiwest-cta h2{color:#fff!important}
.aiwest-cta p{color:#e5e7eb!important}

.aiwest-media-row{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr);
    gap:22px;
    align-items:center;
    margin-top:20px;
}
.aiwest-media-row.aiwest-media-left{grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr)}
.aiwest-media{
    border-radius:calc(var(--aiwest-radius) - 4px);
    overflow:hidden;
    border:1px solid var(--aiwest-border);
    background:var(--aiwest-soft);
}
.aiwest-media img,.aiwest-media video{
    display:block;
    width:100%;
    height:auto;
}
@media (max-width: 760px){
    .aiwest-media-row,.aiwest-media-row.aiwest-media-left{grid-template-columns:1fr;}
}
.aiwest-generated-content [style*='background:#111827']{border-radius:var(--aiwest-radius)}

/* AIW DESIGN SYSTEM ENFORCER v1.5.15
   Overrides legacy inline AI styles without breaking layout. */
.aiwest-generated-content{
    color:var(--aiwest-ink)!important;
}
.aiwest-generated-content > section,
.aiwest-generated-content section.aiwest-bulk-expanded-section,
.aiwest-generated-content section.aiwest-bulk-visual-section,
.aiwest-generated-content section.aiwest-bulk-faq-section{
    margin:36px auto!important;
    padding:30px!important;
    border-radius:var(--aiwest-radius)!important;
    border:1px solid var(--aiwest-border)!important;
    background:var(--aiwest-surface)!important;
    box-shadow:var(--aiwest-shadow)!important;
    color:var(--aiwest-ink)!important;
    max-width:var(--aiwest-max-width)!important;
    box-sizing:border-box!important;
}
.aiwest-generated-content > section:nth-of-type(odd),
.aiwest-generated-content section.aiwest-bulk-visual-section{
    background:linear-gradient(135deg,var(--aiwest-soft-blue),#fff)!important;
    border-color:#dbeafe!important;
}
.aiwest-generated-content h1,
.aiwest-generated-content h2{
    color:var(--aiwest-ink)!important;
    font-size:clamp(26px,3vw,38px)!important;
    line-height:1.15!important;
    letter-spacing:-.02em!important;
    margin:0 0 14px!important;
    font-weight:800!important;
}
.aiwest-generated-content h3{
    color:var(--aiwest-ink)!important;
    font-size:clamp(20px,2vw,26px)!important;
    line-height:1.25!important;
    margin:18px 0 10px!important;
    font-weight:750!important;
}
.aiwest-generated-content p,
.aiwest-generated-content li{
    color:var(--aiwest-muted)!important;
    font-size:16px!important;
    line-height:1.7!important;
}
.aiwest-generated-content div{
    color:var(--aiwest-muted)!important;
}
.aiwest-generated-content strong{
    color:var(--aiwest-ink)!important;
    font-weight:800!important;
}
.aiwest-generated-content ul{
    padding-left:1.2em!important;
}
.aiwest-generated-content li{
    margin-bottom:10px!important;
}
.aiwest-generated-content a{
    color:var(--aiwest-primary)!important;
    font-weight:700!important;
}
.aiwest-generated-content a[style*='background'],
.aiwest-generated-content a[style*='padding'],
.aiwest-generated-content a.aiwest-btn,
.aiwest-generated-content .aiwest-btn{
    display:inline-block!important;
    margin-top:14px!important;
    padding:13px 20px!important;
    border-radius:var(--aiwest-button-radius)!important;
    background:var(--aiwest-primary)!important;
    color:#fff!important;
    text-decoration:none!important;
    font-weight:800!important;
    font-size:16px!important;
    line-height:1.2!important;
    box-shadow:0 10px 24px rgba(37,99,235,.22)!important;
}
.aiwest-generated-content a[style*='background']:hover,
.aiwest-generated-content a.aiwest-btn:hover{
    background:var(--aiwest-primary-dark)!important;
    color:#fff!important;
}
.aiwest-generated-content span[style*='background'],
.aiwest-generated-content div[style*='border-radius']{
    border-color:var(--aiwest-border)!important;
}
.aiwest-generated-content details{
    padding:16px 18px!important;
    margin:10px 0!important;
    border:1px solid var(--aiwest-border)!important;
    border-radius:16px!important;
    background:#fff!important;
}
.aiwest-generated-content summary{
    color:var(--aiwest-ink)!important;
    font-weight:800!important;
}
