/* Alicerce Premium — shared components (TECINFOSP). Theme colors and fonts live in tokens.css */
:root { --ac-radius-sm: calc(var(--ac-radius) * .5); --ac-shadow: 0 1px 2px rgba(0,0,0,.06), 0 8px 24px -12px rgba(0,0,0,.18); --ac-ease: cubic-bezier(.2,.7,.2,1); }
html { scroll-behavior: smooth; }
body { background: var(--ac-bg); color: var(--ac-text); font-family: var(--ac-font-body); font-size: 1.0625rem; line-height: 1.65; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, .ac-display { font-family: var(--ac-font-head); color: var(--ac-ink); font-weight: var(--ac-head-weight); letter-spacing: var(--ac-head-track); line-height: 1.12; }
h1 { font-size: clamp(2.2rem, 3.4vw + 1rem, 3.6rem); } h2 { font-size: clamp(1.75rem, 2vw + 1rem, 2.6rem); } h3 { font-size: 1.3rem; }
a { color: var(--ac-link); text-underline-offset: .2em; } a:hover { color: var(--ac-link-hover); }
p { max-width: 70ch; } .lead { font-size: 1.2rem; color: var(--ac-muted); }
::selection { background: var(--ac-accent); color: var(--ac-on-accent); }
:focus-visible { outline: 3px solid var(--ac-accent); outline-offset: 3px; }
img { max-width: 100%; height: auto; }
.skip-link { position: absolute; left: -999px; top: 8px; z-index: 2000; background: var(--ac-deep); color: #fff; padding: .6rem 1rem; }
.skip-link:focus { left: 8px; }

/* buttons */
.btn { border-radius: var(--ac-radius-btn); font-weight: 700; padding: .8rem 1.4rem; letter-spacing: var(--ac-btn-track); }
.btn-ac { background: var(--ac-accent); color: var(--ac-on-accent); border: 2px solid var(--ac-accent); }
.btn-ac:hover, .btn-ac:focus { background: var(--ac-accent-strong); border-color: var(--ac-accent-strong); color: var(--ac-on-accent); }
.btn-ac-outline { background: transparent; color: var(--ac-ink); border: 2px solid currentColor; }
.btn-ac-outline:hover { background: var(--ac-ink); color: var(--ac-bg); border-color: var(--ac-ink); }
.ac-dark .btn-ac-outline { color: #fff; } .ac-dark .btn-ac-outline:hover { background: #fff; color: var(--ac-ink); }

/* topbar + header */
.ac-topbar { background: var(--ac-deep); color: rgba(255,255,255,.82); font-size: .875rem; }
.ac-topbar .container { display: flex; flex-wrap: wrap; gap: .25rem 1.5rem; justify-content: space-between; padding-block: .45rem; }
.ac-topbar p { margin: 0; } .ac-topbar a { color: #fff; text-decoration: none; }
.ac-header { position: sticky; top: 0; z-index: 1020; background: color-mix(in srgb, var(--ac-bg) 92%, transparent); backdrop-filter: saturate(1.4) blur(10px); border-bottom: 1px solid transparent; transition: border-color .2s, box-shadow .2s; }
.ac-header.is-stuck { border-bottom-color: var(--ac-line); box-shadow: 0 6px 20px -16px rgba(0,0,0,.4); }
.ac-header .navbar { min-height: 76px; }
.ac-brand { display: inline-flex; align-items: center; gap: .6rem; font-family: var(--ac-font-head); font-weight: 800; font-size: 1.3rem; color: var(--ac-ink); text-decoration: none; letter-spacing: var(--ac-head-track); }
.ac-brand:hover { color: var(--ac-ink); }
.ac-brand-mark { width: 30px; height: 30px; flex: none; }
.ac-nav { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .15rem; }
.ac-nav a { display: block; padding: .55rem .2rem; color: var(--ac-ink); text-decoration: none; font-weight: 600; font-size: .98rem; }
.ac-nav .menu-current > a, .ac-nav a:hover { color: var(--ac-accent-text); }
@media (min-width: 992px) { .ac-nav { flex-direction: row; gap: 1.6rem; } .ac-nav .menu-current > a { box-shadow: inset 0 -2px 0 var(--ac-accent); } }
.ac-tools { display: flex; align-items: center; gap: .6rem; }
.ac-mode { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--ac-line); background: transparent; color: var(--ac-ink); display: grid; place-items: center; }
.ac-mode .ic-moon, [data-bs-theme="dark"] .ac-mode .ic-sun { display: none; } [data-bs-theme="dark"] .ac-mode .ic-moon { display: block; }
.ac-search input { width: 11rem; border-radius: var(--ac-radius-btn); border-color: var(--ac-line); background: var(--ac-surface); color: var(--ac-text); }
.navbar-toggler { border: 1px solid var(--ac-line); color: var(--ac-ink); }
.navbar-toggler-icon { filter: var(--ac-toggler-filter, none); }

/* page head and content */
.ac-pagehead { padding: clamp(3rem, 7vw, 6rem) 0 clamp(2rem, 4vw, 3.5rem); background: var(--ac-pagehead-bg); border-bottom: 1px solid var(--ac-line); }
.ac-pagehead .lead { margin: .9rem 0 0; }
.ac-eyebrow { display: inline-flex; align-items: center; gap: .6rem; color: var(--ac-accent-text); font-weight: 700; font-size: .95rem; margin-bottom: 1rem; }
.ac-eyebrow::before { content: ""; width: 28px; height: 3px; background: var(--ac-accent); border-radius: 2px; }
.cms-content { padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.cms-content > p:empty { display: none; }
.cms-content section:not(section section) { width: 100vw; margin-inline: calc(50% - 50vw); }
body:has(.cms-content .ac-hero) .ac-pagehead { display: none; }
body:has(.cms-content .ac-hero) .cms-content { padding-top: 0; }
body:has(.cms-content section) .cms-content { padding-bottom: 0; }

/* sections */
.ac-section { padding: clamp(4rem, 8vw, 7rem) 0; }
.ac-section--alt { background: var(--ac-surface-alt); }
.ac-section--dark, .ac-dark { background: var(--ac-deep); color: rgba(255,255,255,.82); }
.ac-section--dark h2, .ac-section--dark h3, .ac-dark h1, .ac-dark h2, .ac-dark h3 { color: #fff; }
.ac-section--dark .lead, .ac-dark .lead { color: rgba(255,255,255,.75); }
.ac-head { max-width: 46rem; margin-bottom: clamp(2rem, 4vw, 3.25rem); }
.ac-head--center { margin-inline: auto; text-align: center; }

/* hero */
.ac-hero { position: relative; padding: clamp(4rem, 9vw, 8rem) 0 clamp(3.5rem, 7vw, 6rem); overflow: hidden; }
.ac-hero h1 { font-size: clamp(2.6rem, 4.6vw + 1rem, 4.6rem); margin-bottom: 1.2rem; }
.ac-hero .lead { font-size: clamp(1.1rem, .4vw + 1rem, 1.3rem); margin-bottom: 2rem; }
.ac-hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.ac-hero-art { width: 100%; height: auto; border-radius: var(--ac-radius); }
.ac-hero-meta { display: flex; flex-wrap: wrap; gap: 1.5rem 2.5rem; margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid var(--ac-line); }
.ac-dark .ac-hero-meta { border-color: rgba(255,255,255,.18); }
.ac-hero-meta strong { display: block; font-family: var(--ac-font-head); font-size: 1.6rem; color: var(--ac-ink); }
.ac-dark .ac-hero-meta strong { color: #fff; }
.ac-hero-meta span { font-size: .9rem; color: var(--ac-muted); } .ac-dark .ac-hero-meta span { color: rgba(255,255,255,.7); }

/* cards and features */
.ac-card { height: 100%; background: var(--ac-surface); border: 1px solid var(--ac-line); border-radius: var(--ac-radius); padding: 1.9rem; transition: transform .25s var(--ac-ease), box-shadow .25s; }
.ac-card:hover { transform: translateY(-4px); box-shadow: var(--ac-shadow); }
.ac-card h3 { margin: 1.1rem 0 .5rem; } .ac-card p { margin: 0; color: var(--ac-muted); }
.ac-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: var(--ac-radius-icon); background: var(--ac-accent-soft); color: var(--ac-accent-text); }
.ac-icon svg { width: 26px; height: 26px; }
.ac-link-more { display: inline-flex; gap: .4rem; margin-top: 1rem; font-weight: 700; color: var(--ac-accent-text); text-decoration: none; }

/* stats */
.ac-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 1.5rem; }
.ac-stat { padding: 1.4rem 0 0; border-top: 3px solid var(--ac-accent); }
.ac-stat strong { display: block; font-family: var(--ac-font-head); font-size: clamp(2.2rem, 3vw, 3rem); line-height: 1; color: var(--ac-ink); font-variant-numeric: tabular-nums; }
.ac-section--dark .ac-stat strong { color: #fff; }
.ac-stat span { display: block; margin-top: .55rem; color: var(--ac-muted); }
.ac-section--dark .ac-stat span { color: rgba(255,255,255,.72); }

/* steps */
.ac-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 1.25rem; counter-reset: step; }
.ac-steps li { position: relative; padding: 1.4rem 1.4rem 1.4rem 4.6rem; background: var(--ac-surface); border: 1px solid var(--ac-line); border-radius: var(--ac-radius); }
.ac-steps li::before { counter-increment: step; content: counter(step, decimal-leading-zero); position: absolute; left: 1.4rem; top: 1.35rem; font-family: var(--ac-font-head); font-weight: 800; font-size: 1.5rem; color: var(--ac-accent-text); }
.ac-steps h3 { margin: 0 0 .3rem; font-size: 1.15rem; } .ac-steps p { margin: 0; color: var(--ac-muted); }

/* testimonials */
.ac-quote { height: 100%; margin: 0; padding: 2rem; background: var(--ac-surface); border: 1px solid var(--ac-line); border-radius: var(--ac-radius); }
.ac-quote p { font-size: 1.15rem; color: var(--ac-ink); }
.ac-quote footer { display: flex; align-items: center; gap: .9rem; margin-top: 1.4rem; color: var(--ac-muted); font-size: .95rem; }
.ac-quote footer strong { display: block; color: var(--ac-ink); }
.ac-avatar { width: 48px; height: 48px; flex: none; border-radius: 50%; display: grid; place-items: center; font-weight: 800; background: var(--ac-accent-soft); color: var(--ac-accent-text); }
.ac-stars { color: var(--ac-accent); letter-spacing: .15em; margin-bottom: .8rem; }

/* pricing */
.ac-price { height: 100%; display: flex; flex-direction: column; padding: 2.2rem; background: var(--ac-surface); border: 1px solid var(--ac-line); border-radius: var(--ac-radius); }
.ac-price--featured { border: 2px solid var(--ac-accent); box-shadow: var(--ac-shadow); position: relative; }
.ac-badge { position: absolute; top: -.85rem; left: 2.2rem; background: var(--ac-accent); color: var(--ac-on-accent); font-size: .8rem; font-weight: 800; padding: .3rem .8rem; border-radius: 999px; }
.ac-price h3 { margin: 0 0 .4rem; } .ac-price .ac-amount { font-family: var(--ac-font-head); font-size: 2.6rem; color: var(--ac-ink); font-weight: 800; margin: 1rem 0; }
.ac-price .ac-amount small { font-size: 1rem; color: var(--ac-muted); font-weight: 500; }
.ac-price ul { list-style: none; padding: 0; margin: 0 0 1.8rem; display: grid; gap: .55rem; flex: 1; }
.ac-price li { padding-left: 1.6rem; position: relative; } .ac-price li::before { content: "✓"; position: absolute; left: 0; color: var(--ac-accent-text); font-weight: 800; }

/* team */
.ac-member { text-align: center; } .ac-member .ac-portrait { aspect-ratio: 1; border-radius: var(--ac-radius); background: var(--ac-surface-alt); display: grid; place-items: center; font-family: var(--ac-font-head); font-size: 3rem; color: var(--ac-accent-text); margin-bottom: 1rem; border: 1px solid var(--ac-line); }
.ac-member h3 { margin: 0; font-size: 1.15rem; } .ac-member p { margin: .2rem auto 0; color: var(--ac-muted); }

/* faq */
.ac-faq details { border-bottom: 1px solid var(--ac-line); padding: 1.15rem 0; }
.ac-faq summary { cursor: pointer; list-style: none; font-weight: 700; font-size: 1.1rem; color: var(--ac-ink); display: flex; justify-content: space-between; gap: 1rem; }
.ac-faq summary::-webkit-details-marker { display: none; }
.ac-faq summary::after { content: "+"; font-size: 1.5rem; line-height: 1; color: var(--ac-accent-text); transition: transform .2s; }
.ac-faq details[open] summary::after { transform: rotate(45deg); }
.ac-faq details p { margin: .8rem 0 0; color: var(--ac-muted); }

/* cta + logos + contact */
.ac-cta { padding: clamp(3rem, 6vw, 5rem) 0; background: var(--ac-cta-bg); color: var(--ac-cta-text); }
.ac-cta h2 { color: var(--ac-cta-text); margin: 0; max-width: 24ch; }
.ac-cta .container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; }
.ac-logos { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1.5rem 2.5rem; opacity: .75; }
.ac-logos span { font-family: var(--ac-font-head); font-weight: 800; font-size: 1.25rem; color: var(--ac-muted); letter-spacing: .02em; }
.ac-contact-item { display: flex; gap: 1rem; margin-bottom: 1.4rem; } .ac-contact-item p { margin: 0; color: var(--ac-muted); }
.ac-contact-item strong { display: block; color: var(--ac-ink); }
.ac-form .form-control, .ac-form .form-select { border-radius: var(--ac-radius-btn); border-color: var(--ac-line); padding: .8rem 1rem; background: var(--ac-surface); color: var(--ac-text); }
.ac-form label { font-weight: 600; margin-bottom: .35rem; }

/* footer */
.ac-footer { background: var(--ac-footer-bg); color: rgba(255,255,255,.75); padding: clamp(3.5rem, 6vw, 5rem) 0 1.5rem; font-size: .97rem; }
.ac-footer .ac-brand { color: #fff; } .ac-footer a { color: #fff; }
.ac-footer h2 { font-size: 1rem; color: #fff; margin-bottom: 1rem; letter-spacing: .02em; }
.ac-footmenu { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.ac-footmenu a { color: rgba(255,255,255,.8); text-decoration: none; } .ac-footmenu a:hover { color: #fff; text-decoration: underline; }
.ac-footer-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.14); font-size: .88rem; color: rgba(255,255,255,.6); }
.ac-footer-about p:last-child { margin-bottom: 0; }
.ac-top { position: fixed; right: 1.2rem; bottom: 1.2rem; width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--ac-accent); color: var(--ac-on-accent); display: grid; place-items: center; opacity: 0; visibility: hidden; transform: translateY(8px); transition: .25s; z-index: 1030; box-shadow: var(--ac-shadow); }
.ac-top.is-visible { opacity: 1; visibility: visible; transform: none; }

/* motion */
[data-reveal] { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ac-ease), transform .7s var(--ac-ease); }
[data-reveal].is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } [data-reveal] { opacity: 1; transform: none; transition: none; } .ac-card, .ac-top { transition: none; } }
.no-js [data-reveal] { opacity: 1; transform: none; }

/* icons as CSS masks: the text editor keeps them when the page is saved */
.ac-icon { font-size: 0; line-height: 0; }
.ac-icon::before { content: ""; width: 26px; height: 26px; background: currentColor; -webkit-mask: var(--ac-ic) center / contain no-repeat; mask: var(--ac-ic) center / contain no-repeat; }
/* faq: question and answer; theme.js turns them into an accordion */
.ac-faq-item { border-bottom: 1px solid var(--ac-line); padding: 1.15rem 0; }
.ac-faq-item h3 { margin: 0; font-family: var(--ac-font-body); font-size: 1.1rem; font-weight: 700; display: flex; justify-content: space-between; gap: 1rem; cursor: pointer; }
.ac-faq-item h3::after { content: "+"; font-size: 1.5rem; line-height: 1; color: var(--ac-accent-text); transition: transform .2s; }
.ac-faq-item.is-open h3::after { transform: rotate(45deg); }
.ac-faq-item p { margin: .8rem 0 0; color: var(--ac-muted); }
html:not(.no-js) .ac-faq-item:not(.is-open) p { display: none; }
/* team photos */
.ac-member img.ac-portrait { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }
.ac-about-img { width: 100%; border-radius: var(--ac-radius); }
.ac-prose { max-width: 48rem; } .ac-prose h2 { margin-top: 2rem; }
.ac-i-scale{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v18M5%207h14M7%207l-3%207a3%203%200%200%200%206%200L7%207zm10%200-3%207a3%203%200%200%200%206%200l-3-7zM8%2021h8%22/%3E%3C/svg%3E")}
.ac-i-chart{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%22/%3E%3C/svg%3E")}
.ac-i-shield{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203%204%206v6c0%205%203.5%208%208%209%204.5-1%208-4%208-9V6l-8-3z%22/%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22/%3E%3C/svg%3E")}
.ac-i-users{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228%22%20r%3D%223.5%22/%3E%3Cpath%20d%3D%22M2.5%2020a6.5%206.5%200%200%201%2013%200M16%204.5a3.5%203.5%200%200%201%200%207M21.5%2020a6.5%206.5%200%200%200-4-6%22/%3E%3C/svg%3E")}
.ac-i-heart{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2020s-7-4.4-7-10a4%204%200%200%201%207-2.6A4%204%200%200%201%2019%2010c0%205.6-7%2010-7%2010z%22/%3E%3C/svg%3E")}
.ac-i-pulse{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2012h4l2-5%204%2010%202-5h6%22/%3E%3C/svg%3E")}
.ac-i-calendar{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M3%2010h18M8%203v4M16%203v4%22/%3E%3C/svg%3E")}
.ac-i-tooth{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%203c-2%200-4%202-4%205%200%204%202%205%202%209%200%202%201%204%202%204s2-3%203-6h4c1%203%202%206%203%206s2-2%202-4c0-4%202-5%202-9%200-3-2-5-4-5-2%200-3%201-5%201S9%203%207%203z%22/%3E%3C/svg%3E")}
.ac-i-crane{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2021V5l6-2v18M10%206h11M18%206v5M16%2011h4v3h-4zM2%2021h20%22/%3E%3C/svg%3E")}
.ac-i-ruler{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m3%2017%2014-14%204%204L7%2021z%22/%3E%3Cpath%20d%3D%22m7%2013%202%202M10%2010l2%202M13%207l2%202%22/%3E%3C/svg%3E")}
.ac-i-hammer{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m14%206%204%204-9%209-4-4z%22/%3E%3Cpath%20d%3D%22M14%206l2-3%205%205-3%202%22/%3E%3C/svg%3E")}
.ac-i-check{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%206%209%2017l-5-5%22/%3E%3C/svg%3E")}
.ac-i-bolt{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%202%204%2014h7l-1%208%209-12h-7z%22/%3E%3C/svg%3E")}
.ac-i-cloud{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%2018a5%205%200%201%201%201-9.9A6%206%200%200%201%2019%2010a4%204%200%200%201-1%208z%22/%3E%3C/svg%3E")}
.ac-i-lock{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%2211%22%20width%3D%2216%22%20height%3D%2210%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M8%2011V7a4%204%200%200%201%208%200v4%22/%3E%3C/svg%3E")}
.ac-i-code{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m8%208-5%204%205%204M16%208l5%204-5%204M14%204l-4%2016%22/%3E%3C/svg%3E")}
.ac-i-scissors{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%223%22/%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2218%22%20r%3D%223%22/%3E%3Cpath%20d%3D%22M8.5%208%2020%2019M8.5%2016%2020%205%22/%3E%3C/svg%3E")}
.ac-i-pen{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2019l7-7%203%203-7%207zM18%2013l-1.5-7.5L2%202l3.5%2014.5L13%2018z%22/%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%222%22/%3E%3C/svg%3E")}
.ac-i-home{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011%2012%204l9%207v9H3z%22/%3E%3Cpath%20d%3D%22M9%2020v-6h6v6%22/%3E%3C/svg%3E")}
.ac-i-star{--ac-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%202.8%205.7%206.2.9-4.5%204.4%201%206.2-5.5-2.9L6.5%2020l1-6.2L3%209.6l6.2-.9z%22/%3E%3C/svg%3E")}

.ac-quote-by { display: flex; align-items: center; gap: .9rem; margin-top: 1.4rem; color: var(--ac-muted); font-size: .95rem; }
.ac-quote-by strong { display: block; color: var(--ac-ink); }
