
:root{--display:"Cinzel",Georgia,serif;--body:"Source Sans 3",system-ui,sans-serif;--display-weight:700;--display-track:.01em;--radius:2px;
--paper:#F4F1EC;--ink:#23211F;--brand:#23211F;--brand-ink:#fff;--accent:#A85A26;--accent-ink:#fff;--accent-text:#8C4A1E;--stone:#E9E3D9;--line:#D2C8B8}
html[data-theme="green"]{--accent:#3F6B52;--accent-text:#305241}
html[data-theme="gold"]{--accent:#B08D3C;--accent-ink:#23211F;--accent-text:#7A6127}
html[data-theme="navy"]{--accent:#2F4A6D;--accent-text:#2F4A6D}
body{font-size:1.06rem}
.btn-line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.site-header .logo .mark{background:var(--ink);color:#E9D3B8;border-radius:2px;font-family:var(--display)}
.ai-scroll{display:block;width:13rem;height:1.4rem;color:var(--accent);margin:1.1rem 0 1rem}
.hero-ai{padding:2.5rem 0 3.5rem;background:linear-gradient(180deg,var(--paper),var(--stone))}
.ai-grid{display:grid;gap:2.5rem;align-items:center}
.ai-kicker{font-weight:600;letter-spacing:.2em;text-transform:uppercase;font-size:.78rem;color:var(--accent-text);margin-bottom:.8rem}
.hero-ai h1{font-size:clamp(2.3rem,9vw,4.4rem);line-height:1.04;max-width:12ch}
.ai-frame{position:relative;padding:14px;background:var(--ink);border-radius:999px 999px 2px 2px}
.ai-frame::before{content:"";position:absolute;inset:6px;border:1.5px solid #8C7A63;border-radius:999px 999px 0 0;pointer-events:none}
.ai-frame .photo{aspect-ratio:4/5;border-radius:999px 999px 0 0}
.ai-frame .tag{bottom:.75rem}
.sec-services .svc-grid{gap:1.5rem}
.svc{background:#fff;padding:.7rem .7rem 1.2rem;border:1px solid var(--line);border-radius:999px 999px 2px 2px;text-align:center}
.svc .photo{aspect-ratio:3/4;border-radius:999px 999px 0 0}
.svc .photo .tag{bottom:.6rem}
.svc h3{font-size:1.3rem;margin-top:.4rem}
.sec-forge{background:var(--ink);color:#EDE6DA}
.sec-forge h2{color:#fff;text-align:center}
.sec-forge .quotes li{text-align:center;padding:1rem .5rem;border-top:1px solid #4A443D}
.sec-forge .quotes blockquote{font-family:var(--display);font-weight:700;font-size:1.2rem;line-height:1.35}
.sec-forge .quotes cite{color:#C9A47E}
.sec-steps .steps li{border-top:0;border-bottom:2px solid var(--accent);padding-bottom:1rem}
.sec-steps .steps li::before{font-family:var(--display);color:var(--accent)}
.cta-band{background:var(--ink)}
@media (min-width:800px){.hero-ai{padding:4.5rem 0}.ai-grid{grid-template-columns:1.1fr .9fr;gap:4.5rem}
.sec-services .svc-grid{grid-template-columns:repeat(3,1fr)}}
