/* ==== AI Tech Cloud design tokens ==== */
:root{
  --aitc-cta:#5B3CC4; --aitc-cta-hover:#4A2FA8;
  --aitc-brand:#0E5A5F; --aitc-brand-dark:#0F3D40;
  --aitc-ink:#1C2426; --aitc-ink-muted:#4A5558;
  --aitc-surface:#FAF8F4; --aitc-surface-alt:#F1EEE7; --aitc-line:#DDD8CE;
  --aitc-proof:#2E7D4F; --aitc-warn:#8A5A12; --aitc-warn-tint:#FBF1DF;
  --aitc-radius-sm:6px; --aitc-radius-md:10px; --aitc-radius-lg:16px;
  --aitc-shadow:0 1px 2px rgba(16,24,40,.06),0 8px 24px rgba(16,24,40,.08);
  --aitc-section:96px; --aitc-block:48px; --aitc-stack:24px; --aitc-gutter:32px;
}
@media (max-width:1024px){:root{--aitc-section:72px;--aitc-block:40px;--aitc-stack:20px;--aitc-gutter:24px}}
@media (max-width:767px){:root{--aitc-section:56px;--aitc-block:32px;--aitc-stack:16px;--aitc-gutter:16px}}

h1,h2,h3,h4,h5,h6{font-family:'Source Serif 4',Georgia,'Times New Roman',serif}
table,.aitc-num{font-variant-numeric:tabular-nums}
:focus-visible{outline:3px solid var(--aitc-brand);outline-offset:2px}

/* ==== Sections (full-bleed band + 1200px inner wrap) ==== */
.aitc-section{padding:var(--aitc-section) var(--aitc-gutter);margin:0!important}
.aitc-section.alignfull{max-width:none;width:100%}
.aitc-wrap{max-width:1200px;margin-left:auto!important;margin-right:auto!important}
.aitc-narrow{max-width:760px;margin-left:auto!important;margin-right:auto!important}
.aitc-alt{background:var(--aitc-surface-alt)}
.aitc-dark{background:var(--aitc-brand-dark);color:#fff}
.aitc-dark h1,.aitc-dark h2,.aitc-dark h3,.aitc-dark h4,.aitc-dark p,.aitc-dark li{color:#fff}
.aitc-dark a:not(.wp-block-button__link){color:#fff}
.aitc-dark .wp-block-button__link,.aitc-dark .kb-button{box-shadow:0 0 0 2px #fff}
.aitc-dark :focus-visible{outline-color:#fff}
.aitc-center{text-align:center}
.aitc-stack>*+*{margin-top:var(--aitc-stack)}

/* ==== Type helpers ==== */
.aitc-display{font-size:clamp(36px,2.4vw + 24px,56px)!important;line-height:1.1!important;font-weight:700!important}
.aitc-eyebrow{font-family:'Public Sans',system-ui,sans-serif;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--aitc-brand);margin-bottom:12px}
.aitc-dark .aitc-eyebrow{color:#BFE3E0}
.aitc-lead{font-size:clamp(18px,.6vw + 15px,21px);line-height:1.52;color:var(--aitc-ink-muted)}
.aitc-dark .aitc-lead{color:#E6EFEE}
.aitc-micro{font-size:13px;line-height:1.4;color:var(--aitc-ink-muted)}
.aitc-dark .aitc-micro{color:#D5E3E2}
.aitc-price{font-family:'Public Sans',system-ui,sans-serif;font-size:clamp(36px,1.2vw + 30px,48px);font-weight:700;line-height:1.08;color:var(--aitc-ink);font-variant-numeric:tabular-nums}
.aitc-price small{font-size:17px;font-weight:500;color:var(--aitc-ink-muted)}
.aitc-stat{font-family:'Public Sans',system-ui,sans-serif;font-size:clamp(30px,1vw + 26px,40px);font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}

/* ==== Links ==== */
.entry-content a:not(.wp-block-button__link):not(.aitc-chip):not(.aitc-app__cta):not(.aitc-logotile){color:var(--aitc-brand);text-decoration:underline;text-underline-offset:3px}
.entry-content a:not(.wp-block-button__link):hover{color:var(--aitc-brand-dark)}

/* ==== Buttons ==== */
.wp-block-button__link{border-radius:var(--aitc-radius-md);padding:14px 24px;font-weight:600;font-size:17px;line-height:1.2;min-height:48px;display:inline-flex;align-items:center;justify-content:center}
.wp-block-button:not(.is-style-outline) .wp-block-button__link{background:var(--aitc-cta);color:#fff}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover{background:var(--aitc-cta-hover);color:#fff}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--aitc-brand);border:1.5px solid var(--aitc-brand)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--aitc-surface-alt)}
.aitc-dark .wp-block-button.is-style-outline .wp-block-button__link{color:#fff;border-color:#fff;box-shadow:none}
@media (max-width:767px){.aitc-btn-full .wp-block-button,.aitc-btn-full .wp-block-button__link{width:100%}.wp-block-button__link{min-height:52px}}

/* ==== Cards ==== */
.aitc-card{background:#fff;border:1px solid var(--aitc-line);border-radius:var(--aitc-radius-md);padding:32px;height:100%}
@media (max-width:767px){.aitc-card{padding:24px}}
.aitc-card>*:first-child{margin-top:0}
.aitc-card h3{margin-top:0;margin-bottom:12px}
.aitc-card--hover{transition:box-shadow .2s ease}
.aitc-card--hover:hover{box-shadow:var(--aitc-shadow)}
.aitc-card--featured{border:2px solid var(--aitc-brand);box-shadow:var(--aitc-shadow);position:relative}
.aitc-badge{display:inline-block;font-size:13px;font-weight:600;padding:4px 10px;border-radius:var(--aitc-radius-sm);background:var(--aitc-brand);color:#fff;margin-bottom:12px}
.aitc-promises{counter-reset:aitc-promise}
.aitc-promise{counter-increment:aitc-promise}
.aitc-promise::before{content:counter(aitc-promise,decimal-leading-zero);display:block;font-family:'Public Sans',sans-serif;font-weight:700;font-size:14px;color:var(--aitc-brand);margin-bottom:12px;letter-spacing:.04em}

/* ==== Tick lists ==== */
ul.aitc-ticks{list-style:none;padding-left:0;margin-left:0}
ul.aitc-ticks li{position:relative;padding-left:30px;margin:10px 0}
ul.aitc-ticks li::before{content:"";position:absolute;left:0;top:.35em;width:18px;height:18px;border-radius:50%;background:var(--aitc-brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat}

/* ==== Trust bar ==== */
ul.aitc-trustbar{list-style:none;margin:0;padding:16px 0;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:center;font-size:15px;font-weight:500;color:var(--aitc-ink)}
ul.aitc-trustbar li{display:flex;align-items:center;gap:8px;margin:0}
ul.aitc-trustbar li::before{content:"";width:16px;height:16px;flex:none;border-radius:50%;background:var(--aitc-brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/10px no-repeat}
@media (max-width:767px){ul.aitc-trustbar{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scroll-snap-type:x mandatory;padding-bottom:12px}ul.aitc-trustbar li{flex:none;scroll-snap-align:start;background:#fff;border:1px solid var(--aitc-line);border-radius:var(--aitc-radius-sm);padding:8px 12px}}

/* ==== Chips ==== */
.aitc-chips{display:flex;flex-wrap:wrap;gap:8px}
.aitc-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--aitc-line);border-radius:var(--aitc-radius-sm);background:#fff;color:var(--aitc-ink);font-weight:500;text-decoration:none;cursor:pointer}
.aitc-chip:hover{border-color:var(--aitc-brand)}
.aitc-chip.is-selected,.aitc-chip[aria-checked=true]{background:var(--aitc-brand);border-color:var(--aitc-brand);color:#fff}

/* ==== Steps ==== */
ol.aitc-steps{list-style:none;counter-reset:aitc-step;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--aitc-stack)}
ol.aitc-steps>li{counter-increment:aitc-step;position:relative;padding-top:52px;margin:0}
ol.aitc-steps>li::before{content:counter(aitc-step);position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;background:var(--aitc-brand);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:'Public Sans',sans-serif}
@media (max-width:767px){ol.aitc-steps{grid-template-columns:1fr}ol.aitc-steps>li{padding:0 0 0 56px}}

/* ==== Tables ==== */
.aitc-table table{width:100%;border-collapse:collapse;background:#fff;font-size:16px}
.aitc-table th,.aitc-table td{border:0;border-bottom:1px solid var(--aitc-line);padding:14px 16px;text-align:left;vertical-align:top}
.aitc-table thead th{font-weight:600;background:var(--aitc-surface-alt);position:sticky;top:0}
.aitc-table--hl td:last-child,.aitc-table--hl th:last-child{background:#EEF6F5}
.aitc-table figcaption{font-size:13px;color:var(--aitc-ink-muted)}
@media (max-width:767px){.aitc-table{overflow-x:auto}.aitc-table table{font-size:14px}}

/* ==== FAQ accordion (core Details block) ==== */
.aitc-faq .wp-block-details{border-bottom:1px solid var(--aitc-line);padding:0;margin:0}
.aitc-faq .wp-block-details summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-weight:600;font-size:18px;position:relative;min-height:44px}
.aitc-faq .wp-block-details summary::-webkit-details-marker{display:none}
.aitc-faq .wp-block-details summary::after{content:"+";position:absolute;right:4px;top:16px;font-size:24px;color:var(--aitc-brand);transition:transform .2s}
.aitc-faq .wp-block-details[open] summary::after{transform:rotate(45deg)}
.aitc-faq .wp-block-details>*:not(summary){padding-bottom:20px;margin-top:0;color:var(--aitc-ink-muted)}

/* ==== Notice banner ==== */
.aitc-notice{background:var(--aitc-warn-tint);border-left:4px solid var(--aitc-warn);border-radius:var(--aitc-radius-sm);padding:20px 24px}
.aitc-notice h3,.aitc-notice h4{margin-top:0}

/* ==== Forms ==== */
.entry-content input[type=text],.entry-content input[type=email],.entry-content input[type=tel],.entry-content input[type=number],.entry-content select,.entry-content textarea{min-height:48px;border:1px solid var(--aitc-line);border-radius:var(--aitc-radius-sm);padding:10px 14px;font-size:17px;background:#fff;color:var(--aitc-ink);width:100%}
.entry-content input:focus,.entry-content select:focus,.entry-content textarea:focus{border-color:var(--aitc-brand);outline:3px solid rgba(14,90,95,.25);outline-offset:0}
.entry-content label{font-weight:600;font-size:15px;display:block;margin-bottom:6px}
.aitc-capture{display:flex;gap:12px;flex-wrap:wrap;max-width:560px}
.aitc-capture input{flex:1 1 240px}

/* ==== Mobile sticky booking bar ==== */
.aitc-stickybar{display:none}
@media (max-width:767px){
  .aitc-stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:999;padding:8px 16px calc(8px + env(safe-area-inset-bottom));background:rgba(250,248,244,.96);border-top:1px solid var(--aitc-line);transform:translateY(110%);transition:transform .2s ease}
  .aitc-stickybar.is-visible{transform:none}
  .aitc-stickybar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:56px;border-radius:var(--aitc-radius-md);background:var(--aitc-cta);color:#fff;font-weight:600;font-size:17px;text-decoration:none}
  .aitc-stickybar a:hover{background:var(--aitc-cta-hover)}
  body.aitc-has-stickybar{padding-bottom:80px}
}
@media (prefers-reduced-motion:reduce){.aitc-stickybar,.aitc-card--hover,.aitc-faq summary::after{transition:none}}

/* ==== Footer (dark band) ==== */
#colophon,#colophon p,#colophon li,#colophon .footer-html{color:#E6EFEE}
#colophon h3.aitc-footer-title{color:#fff;font-size:17px;font-family:'Public Sans',system-ui,sans-serif;font-weight:600;letter-spacing:.02em;margin:0 0 14px}
#colophon a:not(.wp-block-button__link){color:#fff;text-decoration:none}
#colophon a:not(.wp-block-button__link):hover{text-decoration:underline;text-underline-offset:3px}
ul.aitc-footer-links{list-style:none;padding:0;margin:0}
ul.aitc-footer-links li{margin:0 0 10px}
#colophon .wp-block-button__link{box-shadow:0 0 0 2px #fff}
#colophon .site-bottom-footer-wrap{border-top:1px solid rgba(255,255,255,.15)}
#colophon .footer-navigation .menu{justify-content:flex-end}
@media (max-width:767px){#colophon .footer-navigation .menu{justify-content:flex-start}}

/* Kadence zeroes side padding on full-width blocks; restore our gutter */
.entry-content .aitc-section.alignfull,.entry-content .alignfull.aitc-trustbar-band{padding-left:var(--aitc-gutter)!important;padding-right:var(--aitc-gutter)!important}
.entry-content .aitc-trustbar-band{margin:0!important}

/* ==== Supported apps grid: 4 across on desktop, 2 on tablet, 1 on mobile ==== */
@media (min-width:782px) and (max-width:1024px){.wp-block-columns.aitc-apps{flex-wrap:wrap!important}.wp-block-columns.aitc-apps>.wp-block-column{flex-basis:calc(50% - 1em)!important}}
.aitc-apps ul.aitc-ticks li{margin:8px 0}

/* Beat Kadence's .entry-content list padding */
.entry-content ul.aitc-ticks,.entry-content ul.aitc-trustbar,.entry-content ol.aitc-steps{padding-left:0;margin-left:0}

/* App directory [aitc_apps] */
.aitc-appdir__tools{display:flex;flex-direction:column;align-items:center;gap:16px;margin:0 auto var(--aitc-stack);max-width:760px}
.aitc-appdir__tools input{width:100%;padding:14px 20px;border:1px solid var(--aitc-line);border-radius:999px;font:inherit;background:#fff}
.aitc-appdir__tools input:focus{outline:2px solid var(--aitc-brand);outline-offset:2px}
.aitc-appdir__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.aitc-appdir .aitc-chip{font:inherit;font-size:15px;padding:8px 16px;border-radius:999px;border:1px solid var(--aitc-line);background:#fff;color:var(--aitc-ink);cursor:pointer;text-decoration:none}
.aitc-appdir .aitc-chip[aria-pressed="true"]{background:var(--aitc-brand);border-color:var(--aitc-brand);color:#fff}
.aitc-appdir__count{text-align:center;margin:0 0 16px}
.entry-content ul.aitc-appdir__grid,.aitc-appdir__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.aitc-app{display:flex;flex-direction:column;background:#fff;border:1px solid var(--aitc-line);border-radius:var(--aitc-radius-md);padding:24px;transition:box-shadow .2s ease}
.aitc-app:hover{box-shadow:var(--aitc-shadow)}
.aitc-app[hidden]{display:none}
.aitc-app__head{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:12px}
.aitc-app__mark{display:flex;align-items:center;height:52px}
.aitc-app__mark img{height:48px;width:160px;object-fit:contain;object-position:left center;border-radius:6px}
.aitc-app__mark.is-letter{width:48px;height:48px;justify-content:center;border-radius:var(--aitc-radius-sm);background:var(--aitc-surface-alt);color:var(--aitc-brand);font-family:"Source Serif 4",Georgia,serif;font-weight:600;font-size:22px}
.aitc-app h3{font-size:20px;line-height:1.25;margin:0}
.aitc-app__maker{margin:2px 0 0;font-size:14px;color:var(--aitc-ink-muted)}
.aitc-app__note{font-size:16px;margin:0 0 20px;flex:1}
.aitc-app__cta{display:block;text-align:center;padding:12px 16px;border:1.5px solid var(--aitc-brand);border-radius:10px;color:var(--aitc-brand);font-weight:600;font-size:16px;text-decoration:none}
.aitc-app__cta:hover{background:var(--aitc-brand);color:#fff}
.aitc-appdir__empty{max-width:560px;margin:0 auto;text-align:center}
.aitc-appdir__empty[hidden]{display:none}
.aitc-appdir__tm{text-align:center;margin-top:var(--aitc-stack)}
@media (max-width:1024px){.entry-content ul.aitc-appdir__grid,.aitc-appdir__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.entry-content ul.aitc-appdir__grid,.aitc-appdir__grid{grid-template-columns:1fr;gap:16px}.aitc-appdir__chips{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;width:100%;padding-bottom:4px}.aitc-appdir .aitc-chip{white-space:nowrap}}
/* /book/: booking column + side panel. Mobile-first: columns stack, booking comes first. */
.aitc-book{margin-top:var(--aitc-block);gap:var(--aitc-stack)}
.aitc-book__side>.aitc-card{height:auto;padding:24px}
.aitc-book__side>.aitc-card+.aitc-card{margin-top:var(--aitc-stack)}
.aitc-book__side h3{font-size:20px}
.aitc-book__embed{min-height:520px;display:flex;align-items:center;justify-content:center;text-align:center;border:2px dashed var(--aitc-line);border-radius:var(--aitc-radius-md);background:var(--aitc-surface);color:var(--aitc-ink-muted);font-weight:600;padding:24px}
@media (max-width:767px){.aitc-book__embed{min-height:420px}}
.aitc-appdir__more{text-align:center;margin:24px 0 0}
.aitc-appdir__more[hidden]{display:none}
.aitc-appdir__more .aitc-app__cta{display:inline-block;background:#fff;cursor:pointer;font:inherit;font-weight:600;padding:12px 28px}

/* Audit fixes, 6 Oct 2026 */
/* Readable links and outline buttons on dark bands (Kadence's .entry-content link color was winning) */
.entry-content .aitc-dark a:not(.wp-block-button__link){color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.aitc-dark .wp-block-button.is-style-outline .wp-block-button__link{color:#fff!important;border-color:#fff!important;background:transparent!important}
.aitc-dark .wp-block-button.is-style-outline .wp-block-button__link:hover{background:rgba(255,255,255,.12)!important}
/* Footer legal menu contrast */
#colophon .footer-navigation a,#colophon .footer-navigation .menu-item a{color:#E6EFEE!important;opacity:1}
#colophon .footer-navigation a:hover{color:#fff!important}
/* Proof strip: even grid, no sideways scroll */
ul.aitc-trustbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));justify-items:center}
@media (max-width:767px){ul.aitc-trustbar{grid-template-columns:1fr 1fr;overflow:visible;justify-items:stretch;gap:8px}
ul.aitc-trustbar li{font-size:14px;line-height:1.3;align-items:flex-start}}
/* Tables fit the phone screen instead of hiding columns */
@media (max-width:767px){.aitc-table{overflow-x:visible}
.aitc-table table{table-layout:auto;width:100%}
.aitc-table th,.aitc-table td{padding:10px 8px;overflow-wrap:anywhere;hyphens:auto}}
/* Booking confirmed page: nothing asks the visitor to book again */
body.page-id-27 .header-button-wrap,body.page-id-27 .mobile-header-button-wrap,body.page-id-27 #colophon .wp-block-buttons{display:none!important}
/* Homepage logo strip [aitc_logo_strip] */
.entry-content ul.aitc-logostrip,ul.aitc-logostrip{list-style:none;margin:0 0 var(--aitc-stack);padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
ul.aitc-logostrip li{margin:0}
.entry-content a.aitc-logotile,a.aitc-logotile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;min-height:128px;padding:20px 16px;background:#fff;border:1px solid var(--aitc-line);border-radius:var(--aitc-radius-md);color:var(--aitc-ink);text-decoration:none;font-weight:600;font-size:15px;text-align:center;transition:box-shadow .2s ease,border-color .2s ease}
a.aitc-logotile:hover{box-shadow:var(--aitc-shadow);border-color:var(--aitc-brand)}
a.aitc-logotile img{height:44px;width:150px;object-fit:contain;border-radius:6px}
@media (max-width:1024px){.entry-content ul.aitc-logostrip,ul.aitc-logostrip{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.entry-content ul.aitc-logostrip,ul.aitc-logostrip{grid-template-columns:1fr 1fr;gap:10px}a.aitc-logotile{min-height:108px;padding:14px 10px;font-size:14px}a.aitc-logotile img{height:36px;width:120px}}
/* Proof strip alignment: centered columns sized to content, balanced rows */
ul.aitc-trustbar{grid-template-columns:repeat(5,max-content);justify-content:center;justify-items:start;column-gap:40px;row-gap:14px}
ul.aitc-trustbar:not(:has(>li:nth-child(5))){grid-template-columns:repeat(4,max-content)}
ul.aitc-trustbar:not(:has(>li:nth-child(4))){grid-template-columns:repeat(3,max-content)}
ul.aitc-trustbar:has(>li:nth-child(6)){grid-template-columns:repeat(3,max-content)}
ul.aitc-trustbar:has(>li:nth-child(7)){grid-template-columns:repeat(4,max-content)}
ul.aitc-trustbar li{white-space:nowrap;align-items:center}
@media (max-width:1100px){ul.aitc-trustbar,ul.aitc-trustbar:has(>li:nth-child(6)),ul.aitc-trustbar:has(>li:nth-child(7)){grid-template-columns:repeat(3,max-content)}}
@media (max-width:767px){ul.aitc-trustbar,ul.aitc-trustbar:not(:has(>li:nth-child(5))),ul.aitc-trustbar:not(:has(>li:nth-child(4))),ul.aitc-trustbar:has(>li:nth-child(6)),ul.aitc-trustbar:has(>li:nth-child(7)){grid-template-columns:1fr 1fr;column-gap:8px}
ul.aitc-trustbar li{white-space:normal;align-items:flex-start}}
/* Homepage hero subhead + example invoice card */
.aitc-hero-sub{font-size:22px;line-height:1.45;font-weight:500;color:var(--aitc-brand);margin:16px 0 0}
@media (max-width:767px){.aitc-hero-sub{font-size:19px}}
.entry-content ul.aitc-invoice,ul.aitc-invoice{list-style:none;margin:8px 0 12px;padding:0;font-size:15px}
ul.aitc-invoice li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--aitc-line);margin:0}
ul.aitc-invoice li span:last-child{font-weight:600;text-align:right;white-space:nowrap}
ul.aitc-invoice li:nth-child(4) span:last-child{color:var(--aitc-brand);white-space:normal}
ul.aitc-invoice li:last-child{border-bottom:0;border-top:2px solid var(--aitc-ink);font-weight:700;margin-top:4px}
