/* Kensington House v1.9 — AI section (works inside index.html .view and in ai.html) */
.ai{--ai-line:rgba(221,220,215,.32);--ai-serif:var(--display,Georgia,serif);--ai-ui:var(--ui,"Montserrat",sans-serif);color:#dddcd7}
.ai .ai-k{font-family:var(--ai-ui);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;display:block}
.ai h3,.ai h4{font-family:var(--ai-serif);font-weight:400;color:#dddcd7}
.ai-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ai-line);border-bottom:1px solid var(--ai-line);margin:clamp(8px,2vw,20px) 0 18px}
.ai-principles>div{padding:22px 26px 20px 0}
.ai-principles>div+div{border-left:1px solid var(--ai-line);padding-left:26px}
.ai-principles p{margin:10px 0 0;font-size:14px;line-height:1.75}
.ai-legend{display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center;font-size:12.5px;margin:0 0 clamp(54px,7vw,90px)}
.ai-legend>span:not(.ai-k){display:inline-flex;gap:9px;align-items:center}
.ai-status{font-family:var(--ai-ui);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;border:1px solid rgba(221,220,215,.6);padding:4px 9px;white-space:nowrap;line-height:1.2}
.ai-status[data-status=dev]{border-style:solid}
.ai-status[data-status=prop]{border-style:dashed;border-color:rgba(221,220,215,.55)}
.ai-status[data-status=use]{background:#dddcd7;color:#2e4350;border-color:#dddcd7}
.ai-block{margin-bottom:clamp(60px,8vw,104px)}
.ai-block-head{display:grid;gap:10px;max-width:760px;margin-bottom:clamp(22px,3vw,34px)}
.ai-block-head h3{font-size:clamp(28px,3.2vw,42px);line-height:1.12;margin:0}
.ai-block-head p{margin:0;font-size:14.5px;line-height:1.8}
.ai-case{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(26px,4.5vw,64px);align-items:center}
.ai-case-img{margin:0}.ai-case-img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#405560}
.ai-case-txt h3{font-size:clamp(30px,3.6vw,46px);margin:12px 0 18px;line-height:1.1}
.ai-figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 20px;border-top:1px solid var(--ai-line);border-bottom:1px solid var(--ai-line)}
.ai-figs>div{padding:14px 10px 12px 0}.ai-figs>div+div{border-left:1px solid var(--ai-line);padding-left:12px}
.ai-figs dt{font-family:var(--ai-ui);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.ai-figs dd{margin:6px 0 0;font-family:var(--ai-serif);font-size:clamp(20px,2vw,26px);line-height:1.15;white-space:nowrap}
.ai-case-txt p{margin:0 0 12px;font-size:14.5px;line-height:1.8}
.ai-note{font-size:13px!important;opacity:.9;border-left:1px solid var(--ai-line);padding-left:14px}
.ai-link{display:inline-block;margin-top:6px;font-family:var(--ai-ui);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#dddcd7;text-decoration:none;border-bottom:1px solid rgba(221,220,215,.5);padding-bottom:4px}
.ai-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ai-line)}
.ai-item{display:grid;grid-template-columns:72px minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(14px,2.6vw,36px);padding:26px 0 24px;border-bottom:1px solid var(--ai-line)}
.ai-num{font-family:var(--ai-serif);font-size:clamp(30px,3vw,40px);line-height:1;opacity:.85}
.ai-item-head{display:grid;gap:12px;align-content:start;justify-items:start}
.ai-item-head h4{font-size:clamp(21px,2vw,26px);line-height:1.2;margin:0}
.ai-item-body p{margin:0 0 12px;font-size:14.5px;line-height:1.8}
.ai-check{font-size:13px!important;line-height:1.75!important;opacity:.92;margin:0!important}
.ai-check b{display:block;font-family:var(--ai-ui);font-weight:500;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px;opacity:.9}
.ai-src{color:inherit;font-size:11px;white-space:nowrap;text-decoration:none;border-bottom:1px dotted rgba(221,220,215,.6);margin-left:2px}
.ai-src::before{content:"↗ "}
.ai-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid var(--ai-line)}
.ai-steps li{counter-increment:s;padding:20px 18px 6px 0;display:grid;gap:8px;align-content:start;font-size:13.5px;line-height:1.7}
.ai-steps li+li{border-left:1px solid var(--ai-line);padding-left:18px}
.ai-steps li::before{content:counter(s,decimal-leading-zero);font-family:var(--ai-serif);font-size:26px;line-height:1;opacity:.85}
.ai-steps b{font-family:var(--ai-serif);font-weight:400;font-size:19px;line-height:1.25}
.ai-srclist{columns:2;column-gap:40px;margin:0;padding:0 0 0 18px;font-size:12.5px;line-height:1.7}
.ai-srclist li{break-inside:avoid;margin-bottom:6px}
.ai-srclist a,.ai-contact a{color:#dddcd7;text-decoration:none;border-bottom:1px solid rgba(221,220,215,.4)}
.ai-contact{margin-top:28px;font-size:13.5px}
.ai :focus-visible{outline:2px solid #dddcd7;outline-offset:4px}
@media(max-width:980px){.ai-steps{grid-template-columns:1fr 1fr}.ai-steps li+li{border-left:0;padding-left:0}.ai-steps li{border-bottom:1px solid var(--ai-line);padding:18px 0 14px}}
@media(max-width:860px){.ai-principles{grid-template-columns:1fr}.ai-principles>div+div{border-left:0;border-top:1px solid var(--ai-line);padding-left:0}.ai-case{grid-template-columns:1fr}.ai-item{grid-template-columns:48px minmax(0,1fr)}.ai-item-body{grid-column:2}}
@media(max-width:560px){.ai-figs{grid-template-columns:1fr 1fr}.ai-figs>div:nth-child(3){border-left:0;padding-left:0}.ai-figs>div:nth-child(n+3){border-top:1px solid var(--ai-line)}.ai-steps{grid-template-columns:1fr}.ai-srclist{columns:1}.ai-src{white-space:normal}}
