/* AI-Ya! /about, ported from the Claude Design file pages/about.css.
   Every rule is scoped to .ab-page so nothing leaks into the rest of the site. */
.ab-page .ab-wrap{max-width:1120px;margin:0 auto;padding:0 32px}
.ab-page .ab-label{font-family:var(--font-display);font-weight:800;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--coral-600);margin:0 0 12px}
.ab-page .ab-sec{padding:96px 0}
.ab-page .ab-sec.cream{background:var(--cream);border-top:2px solid var(--ink-900);border-bottom:2px solid var(--ink-900)}
.ab-page .ab-h2{font-family:var(--font-display);font-weight:900;font-size:36px;line-height:1.12;letter-spacing:-.015em;margin:0;text-wrap:balance}
.ab-page .prose p{font-size:18px;line-height:1.75;color:var(--ink-700);margin:0 0 1.1em;text-wrap:pretty}
.ab-page .prose p:last-child{margin-bottom:0}
.ab-page .split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;align-items:start}
.ab-page .split .prose{max-width:640px}
.ab-page .ab-hero{position:relative;background:var(--teal-700);color:var(--white);border-bottom:2px solid var(--ink-900);overflow:hidden}
.ab-page .ab-hero .pat{position:absolute;inset:0;width:100%;height:100%;color:var(--cyan-500);opacity:.08;pointer-events:none}
.ab-page .ab-hero .inner{position:relative;max-width:1120px;margin:0 auto;padding:88px 32px 96px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:56px;align-items:center}
.ab-page .ab-hero .ab-label{color:var(--gold-500)}
.ab-page .ab-hero h1{font-family:var(--font-display);font-weight:900;font-size:56px;line-height:1.05;letter-spacing:-.02em;margin:0 0 22px;color:var(--white);text-wrap:balance}
.ab-page .ab-hero .sub{font-size:19px;line-height:1.65;color:var(--cyan-200);margin:0 0 28px;max-width:560px;text-wrap:pretty}
.ab-page .ab-hero .sub strong{color:var(--white);font-weight:700}
.ab-page .namenote{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;max-width:540px;background:var(--teal-900);border:2px solid var(--cyan-500);border-radius:var(--r-md);padding:16px 18px}
.ab-page .namenote .say{font-family:var(--font-display);font-weight:900;font-size:15px;color:var(--teal-900);background:var(--gold-500);border:2px solid var(--ink-900);border-radius:999px;padding:4px 12px;white-space:nowrap;box-shadow:2px 2px 0 var(--ink-900)}
.ab-page .namenote p{margin:0;font-size:15px;line-height:1.6;color:var(--cyan-200)}
.ab-page .namenote p q{color:var(--white);font-weight:600}
.ab-page .ab-hero .art{position:relative;justify-self:center;width:min(320px,100%)}
.ab-page .ab-hero .badge-ring{width:100%;aspect-ratio:1/1;border-radius:999px;border:4px solid var(--gold-500);overflow:hidden;box-shadow:12px 12px 0 0 var(--ink-900);background:var(--teal-900)}
.ab-page .ab-hero .badge-ring img{width:100%;height:100%;object-fit:cover}
.ab-page .make{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:40px}
.ab-page .mk{display:flex;flex-direction:column;gap:10px;background:var(--white);border:2px solid var(--ink-900);border-radius:var(--r-md);box-shadow:5px 5px 0 var(--ink-900);padding:22px;color:var(--ink-900);text-decoration:none;transition:transform 140ms var(--ease-out),box-shadow 140ms var(--ease-out)}
.ab-page .mk:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink-900)}
.ab-page .mk:focus-visible{outline:3px solid var(--cyan-500);outline-offset:3px}
.ab-page .mk .ic{width:46px;height:46px;border-radius:var(--r-sm);border:2px solid var(--ink-900);display:grid;place-items:center;background:var(--cyan-200);color:var(--teal-700)}
.ab-page .mk:nth-child(2) .ic{background:var(--gold-200);color:var(--wood-500)}
.ab-page .mk:nth-child(3) .ic{background:var(--coral-200);color:var(--coral-600)}
.ab-page .mk:nth-child(4) .ic{background:var(--teal-100);color:var(--teal-700)}
.ab-page .mk .ic svg{width:22px;height:22px}
.ab-page .mk h3{margin:4px 0 0;font-family:var(--font-display);font-weight:900;font-size:19px;line-height:1.25}
.ab-page .mk p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-700);flex:1}
.ab-page .mk .go{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:800;font-size:14px;color:var(--teal-700)}
.ab-page .mk .go svg{width:15px;height:15px}
.ab-page .trustsec{position:relative;background:var(--teal-900);color:var(--white);border-top:2px solid var(--ink-900);border-bottom:2px solid var(--ink-900);padding:96px 0;overflow:hidden}
.ab-page .trustsec .pat{position:absolute;inset:0;width:100%;height:100%;color:var(--cyan-500);opacity:.07;pointer-events:none}
.ab-page .trustsec .ab-wrap{position:relative}
.ab-page .trustsec .ab-label{color:var(--gold-500)}
.ab-page .trustsec .ab-h2{color:var(--white)}
.ab-page .principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:44px}
.ab-page .pc{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;background:var(--cream);color:var(--ink-900);border:2px solid var(--ink-900);border-radius:var(--r-md);box-shadow:6px 6px 0 var(--ink-900);padding:24px}
.ab-page .pc .ic{width:52px;height:52px;border-radius:var(--r-sm);border:2px solid var(--ink-900);display:grid;place-items:center;background:var(--cyan-500);color:var(--teal-900)}
.ab-page .pc:nth-child(2) .ic{background:var(--coral-500)}
.ab-page .pc:nth-child(3) .ic{background:var(--gold-500)}
.ab-page .pc:nth-child(4) .ic{background:var(--teal-100);color:var(--teal-700)}
.ab-page .pc .ic svg{width:26px;height:26px}
.ab-page .pc h3{margin:2px 0 8px;font-family:var(--font-display);font-weight:900;font-size:20px;line-height:1.25}
.ab-page .pc p{margin:0;font-size:15.5px;line-height:1.65;color:var(--ink-700);text-wrap:pretty}
.ab-page .corr{grid-column:1 / -1;display:flex;align-items:center;gap:18px 24px;flex-wrap:wrap;background:var(--gold-500);border:2px solid var(--ink-900);border-radius:var(--r-md);box-shadow:6px 6px 0 var(--ink-900);padding:22px 24px;color:var(--ink-900)}
.ab-page .corr .ic{width:52px;height:52px;flex:none;border-radius:50%;border:2px solid var(--ink-900);background:var(--white);display:grid;place-items:center;color:var(--teal-700)}
.ab-page .corr .ic svg{width:24px;height:24px}
.ab-page .corr .t{flex:1;min-width:240px}
.ab-page .corr h3{margin:0 0 4px;font-family:var(--font-display);font-weight:900;font-size:20px}
.ab-page .corr p{margin:0;font-size:15.5px;line-height:1.55}
.ab-page .corr a.mail{font-weight:700;color:var(--ink-900);text-decoration:underline;text-underline-offset:3px}
.ab-page .who-text{font-family:var(--font-display);font-weight:700;font-size:26px;line-height:1.5;color:var(--ink-900);margin:0;max-width:760px;text-wrap:pretty}
.ab-page .who-text b{font-weight:900;color:var(--teal-700)}
.ab-page .company{margin-top:48px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px 22px;align-items:center;background:var(--white);border:2px solid var(--ink-900);border-radius:var(--r-md);padding:20px 22px;box-shadow:4px 4px 0 var(--ink-900);max-width:900px}
.ab-page .company .ic{width:46px;height:46px;border-radius:var(--r-sm);border:2px solid var(--ink-900);background:var(--paper);display:grid;place-items:center;color:var(--teal-700)}
.ab-page .company .ic svg{width:22px;height:22px}
.ab-page .company .k{font-family:var(--font-display);font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500);margin-bottom:4px}
.ab-page .company p{margin:0;font-size:15.5px;line-height:1.6;color:var(--ink-700)}
.ab-page .company p b{color:var(--ink-900);font-weight:700}
.ab-page .extlink{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:800;font-size:14.5px;color:var(--teal-700);border-bottom:2px solid var(--cyan-500);padding-bottom:2px;white-space:nowrap;text-decoration:none}
.ab-page .extlink:hover{color:var(--teal-500)}
.ab-page .extlink svg{width:15px;height:15px}
.ab-page .contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);gap:20px;margin-top:36px}
.ab-page .cc{background:var(--white);border:2px solid var(--ink-900);border-radius:var(--r-md);padding:22px;display:flex;flex-direction:column;gap:10px}
.ab-page .cc .k{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500)}
.ab-page .cc .k svg{width:16px;height:16px;color:var(--teal-500)}
.ab-page .cc .big{font-family:var(--font-display);font-weight:900;font-size:21px;color:var(--ink-900);word-break:break-word;text-decoration:none}
.ab-page .cc .big:hover{color:var(--teal-700)}
.ab-page .cc p{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink-700)}
.ab-page .socials-row{display:flex;flex-wrap:wrap;gap:10px}
.ab-page .sbtn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:2px solid var(--ink-900);border-radius:999px;background:var(--cream);font-family:var(--font-display);font-weight:800;font-size:14px;color:var(--ink-900);text-decoration:none;transition:background 140ms,transform 140ms var(--ease-out)}
.ab-page .sbtn:hover{background:var(--cyan-200);transform:translateY(-1px)}
.ab-page .sbtn svg{width:18px;height:18px}
.ab-page .sbtn .h{font-weight:600;color:var(--ink-500);font-size:13px}
.ab-page .cc.biz{background:var(--teal-700);color:var(--white)}
.ab-page .cc.biz .k{color:var(--gold-500)}
.ab-page .cc.biz .k svg{color:var(--gold-500)}
.ab-page .cc.biz p{color:var(--cyan-200);font-size:16px}
.ab-page .cc.biz .btn{align-self:flex-start;margin-top:4px;white-space:nowrap}
.ab-page a:focus-visible{outline:3px solid var(--cyan-500);outline-offset:3px;border-radius:6px}
.ab-page .nl-block{background:var(--gold-500);border:2px solid var(--ink-900);border-radius:var(--r-lg);box-shadow:8px 8px 0 var(--ink-900);padding:44px 48px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:center}
.ab-page .nl-block h2{font-family:var(--font-display);font-weight:900;font-size:32px;line-height:1.1;margin:0 0 10px}
.ab-page .nl-block p{margin:0;font-size:16px;line-height:1.55;color:var(--ink-700)}
.ab-page .ab-nlform{display:flex;flex-direction:column;gap:12px}
.ab-page .ab-nlform .row{display:flex;gap:10px;flex-wrap:wrap}
.ab-page .ab-nlform input[type=email]{flex:1;min-width:200px;font-family:var(--font-body);font-size:15px;padding:14px 16px;min-height:50px;background:var(--white);border:2px solid var(--ink-900);border-radius:var(--r-md)}
.ab-page .ab-nlform input[type=email]:focus{outline:none;box-shadow:0 0 0 3px var(--teal-700)}
.ab-page .ab-nlform .fine{font-size:12.5px;color:var(--ink-700)}
@media (max-width:980px){
.ab-page .ab-hero .inner{grid-template-columns:1fr;gap:44px}
.ab-page .ab-hero .art{order:-1;width:240px;justify-self:start}
.ab-page .make{grid-template-columns:repeat(2,minmax(0,1fr))}
.ab-page .split{grid-template-columns:1fr;gap:20px}
.ab-page .contact{grid-template-columns:1fr 1fr}
.ab-page .cc.biz{grid-column:1 / -1}
.ab-page .nl-block{grid-template-columns:1fr}
}
@media (max-width:640px){
.ab-page .ab-wrap{padding:0 18px}
.ab-page .ab-sec,.ab-page .trustsec{padding:64px 0}
.ab-page .ab-hero .inner{padding:44px 18px 64px}
.ab-page .ab-hero h1{font-size:38px}
.ab-page .ab-hero .sub{font-size:17px}
.ab-page .ab-hero .art{width:180px}
.ab-page .ab-hero .badge-ring{box-shadow:7px 7px 0 var(--ink-900)}
.ab-page .namenote{grid-template-columns:1fr;gap:10px}
.ab-page .namenote .say{justify-self:start}
.ab-page .ab-h2{font-size:28px}
.ab-page .prose p{font-size:17px}
.ab-page .make,.ab-page .principles,.ab-page .contact{grid-template-columns:1fr}
.ab-page .pc{grid-template-columns:1fr;gap:12px;padding:20px}
.ab-page .pc .ic{width:46px;height:46px}
.ab-page .who-text{font-size:21px}
.ab-page .company{grid-template-columns:auto minmax(0,1fr)}
.ab-page .company .extlink{grid-column:1 / -1;justify-self:start;white-space:normal}
.ab-page .nl-block{padding:26px 20px;box-shadow:5px 5px 0 var(--ink-900)}
.ab-page .nl-block h2{font-size:25px}
.ab-page .ab-nlform .btn{width:100%;justify-content:center}
.ab-page .cc.biz .btn{align-self:stretch;justify-content:center}
}
/* Privacy notice (long-form legal text in the About styles). */
.ab-page .ab-hero--short .inner{grid-template-columns:1fr;padding:64px 32px 56px}
.ab-page .ab-hero--short h1{margin-bottom:10px}
.ab-page .ab-hero--short .sub{margin:0}
.ab-page .prose.legal{max-width:760px}
.ab-page .prose.legal h2{font-family:var(--font-display);font-weight:900;font-size:24px;line-height:1.2;margin:40px 0 12px;color:var(--ink-900)}
.ab-page .prose.legal h2:first-child{margin-top:0}
.ab-page .prose.legal p,.ab-page .prose.legal li{font-size:16.5px;line-height:1.7;color:var(--ink-700)}
.ab-page .prose.legal ul{margin:0 0 1.1em;padding-left:22px}
.ab-page .prose.legal li{margin:0 0 6px}
.ab-page .prose.legal a{color:var(--teal-700);font-weight:600;text-decoration:underline}
@media (max-width:640px){.ab-page .ab-hero--short .inner{padding:40px 18px 40px}}
.ab-page .btn svg{width:18px;height:18px;flex:none}
