:root {
    --ink: #101b2e;
    --ink-soft: #5e6b7f;
    --navy: #061326;
    --navy-2: #0a1d38;
    --blue: #1677ee;
    --blue-bright: #43a1ff;
    --blue-pale: #eaf3ff;
    --line: #e4eaf2;
    --surface: #f7f9fc;
    --white: #fff;
    --max: 1160px;
    --radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; color: var(--ink); background: #fff; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, textarea { font: inherit; }
.wrap { width: min(calc(100% - 48px), var(--max)); margin-inline: auto; }
.wrap-narrow { width: min(calc(100% - 48px), 780px); margin-inline: auto; }
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(5, 17, 34, .96); border-bottom: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(16px); }
.header-inner { min-height: 82px; display: flex; align-items: center; gap: 34px; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; color: #fff; }
.brand-mark { display: inline-flex; width: 42px; height: 42px; color: var(--blue-bright); }
.brand-mark svg { width: 100%; height: 100%; }
.brand-copy { display: flex; flex-direction: column; line-height: 1.08; letter-spacing: .13em; }
.brand-copy strong { font-size: 17px; font-weight: 850; letter-spacing: .16em; }
.brand-copy small { color: #8ba5c6; font-size: 9px; font-weight: 700; letter-spacing: .24em; margin-top: 5px; }
.brand-logo { display: block; width: auto; height: 58px; max-width: 225px; object-fit: contain; }
.brand-logo-footer { height: 68px; max-width: 260px; }
.primary-nav { margin-left: auto; }
.primary-nav ul { display: flex; align-items: center; gap: 29px; list-style: none; padding: 0; margin: 0; }
.primary-nav a { color: #c4d0df; font-size: 13px; font-weight: 650; transition: color .2s ease; }
.primary-nav a:hover, .primary-nav .nav-current a { color: #fff; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 53px; padding: 0 23px; border: 1px solid var(--blue); border-radius: 7px; background: var(--blue); color: #fff; font-size: 14px; font-weight: 750; box-shadow: 0 9px 24px rgba(22,119,238,.2); transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.button:hover { transform: translateY(-2px); background: #0866d8; box-shadow: 0 12px 28px rgba(22,119,238,.28); }
.button-small { min-height: 43px; padding-inline: 17px; font-size: 13px; }
.button-light { background: #fff; color: var(--navy); border-color: #fff; box-shadow: none; }
.button-light:hover { background: #e8f2ff; border-color: #e8f2ff; }
.button-wide { width: 100%; }
.menu-toggle { display: none; }
.hero { min-height: 660px; position: relative; display: flex; align-items: center; overflow: hidden; isolation: isolate; background: var(--navy); color: #fff; }
.hero-art, .hero-shade { position: absolute; inset: 0; z-index: -2; }
.hero-art img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-shade { z-index: -1; background: linear-gradient(90deg, rgba(4,15,31,.98) 0%, rgba(4,15,31,.92) 32%, rgba(4,15,31,.53) 58%, rgba(4,15,31,.15) 100%), linear-gradient(0deg, rgba(4,15,31,.48), transparent 35%); }
.hero-content { padding-top: 83px; padding-bottom: 90px; }
.eyebrow { display: flex; align-items: center; gap: 11px; color: #a9bed7; font-size: 10px; font-weight: 800; letter-spacing: .19em; line-height: 1.4; }
.eyebrow-blue { color: #397cc6; }
.eyebrow-line { display: inline-block; width: 27px; height: 2px; background: var(--blue-bright); }
.hero h1 { max-width: 690px; margin: 26px 0 20px; font-size: clamp(46px, 6.4vw, 76px); line-height: 1.045; letter-spacing: -.055em; font-weight: 820; }
.hero h1 span, .approach-copy h2 span, .contact-layout h2 span { color: var(--blue-bright); }
.hero-lede { max-width: 555px; margin: 0; color: #c0cede; font-size: 18px; line-height: 1.72; }
.hero-actions { display: flex; align-items: center; gap: 28px; margin-top: 34px; }
.text-link { display: inline-flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 750; }
.text-link-light { color: #d5e2f2; }
.hero-note { display: flex; align-items: center; gap: 10px; margin-top: 62px; color: #98aac0; font-size: 12px; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #49d49a; box-shadow: 0 0 0 5px rgba(73,212,154,.12); }
.hero-bottom-line { position: absolute; inset-inline: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, #258eff, transparent); opacity: .7; }
.proof-strip { background: #f4f8fd; border-bottom: 1px solid #e9eff7; }
.proof-grid { min-height: 108px; display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; gap: 30px; }
.proof-grid > div { display: flex; align-items: center; gap: 17px; }
.proof-number { color: var(--blue); font-size: 12px; font-weight: 850; letter-spacing: .12em; }
.proof-grid strong, .proof-grid small { display: block; }
.proof-grid strong { font-size: 14px; }
.proof-grid small { color: #7a8799; font-size: 11px; margin-top: 2px; }
.section { padding: 112px 0; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 45px; margin-bottom: 49px; }
.section-heading h2, .approach-copy h2, .contact-layout h2 { margin: 15px 0 0; font-size: clamp(36px, 4.6vw, 53px); line-height: 1.1; letter-spacing: -.045em; }
.section-heading h2 span { color: #8d9bae; }
.section-intro { max-width: 410px; margin: 0 0 4px; color: var(--ink-soft); font-size: 15px; line-height: 1.8; }
.service-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 17px; }
.service-card { display: flex; flex-direction: column; min-height: 342px; padding: 27px 24px 23px; border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 8px 28px rgba(14,38,70,.035); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.service-card:hover { transform: translateY(-5px); border-color: #b8d8ff; box-shadow: 0 16px 35px rgba(14,38,70,.09); }
.service-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 13px; background: var(--blue-pale); color: var(--blue); }
.service-icon svg { width: 31px; height: 31px; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.card-index { margin: 24px 0 9px; color: #6e8fb7; font-size: 9px; font-weight: 850; letter-spacing: .17em; }
.service-card h3 { margin: 0 0 10px; font-size: 19px; line-height: 1.25; letter-spacing: -.025em; }
.service-card > p:not(.card-index) { margin: 0 0 24px; color: #657287; font-size: 13px; line-height: 1.75; }
.card-link { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; color: #176fd5; font-size: 12px; font-weight: 800; }
.card-link span { transition: transform .2s ease; }
.card-link:hover span { transform: translate(3px, -3px); }
.approach-section { padding: 108px 0; color: #fff; background: linear-gradient(115deg, #07172d, #0b2548); overflow: hidden; position: relative; }
.approach-section::after { content: ""; position: absolute; width: 520px; height: 520px; border: 1px solid rgba(54,143,255,.15); border-radius: 50%; right: -160px; top: -235px; box-shadow: 0 0 0 45px rgba(54,143,255,.025), 0 0 0 90px rgba(54,143,255,.02); pointer-events: none; }
.approach-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; position: relative; z-index: 1; }
.approach-copy h2 { margin: 19px 0 20px; }
.approach-copy > p:not(.eyebrow) { max-width: 470px; color: #b6c6d9; font-size: 15px; line-height: 1.85; margin-bottom: 29px; }
.approach-steps { border-top: 1px solid rgba(255,255,255,.15); }
.approach-step { display: grid; grid-template-columns: 42px 1fr; gap: 19px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.approach-step > span { color: var(--blue-bright); font-size: 12px; font-weight: 850; letter-spacing: .1em; padding-top: 3px; }
.approach-step h3 { margin: 0 0 5px; font-size: 17px; }
.approach-step p { margin: 0; color: #a8b8cc; font-size: 13px; line-height: 1.7; }
.insights-section { background: var(--surface); }
.insights-heading { margin-bottom: 38px; }
.post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.post-card { overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.post-image { display: block; height: 190px; overflow: hidden; background: #dce9f9; }
.post-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.post-card:hover .post-image img { transform: scale(1.04); }
.post-image-placeholder { display: grid; place-items: center; background: linear-gradient(135deg, #07172d, #15559b); color: #76b7ff; font-size: 30px; font-weight: 850; letter-spacing: .08em; }
.post-card-content { padding: 22px 23px 24px; }
.post-meta { margin: 0 0 9px; color: #8290a4; font-size: 10px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.post-card h3, .post-card h2 { margin: 0 0 10px; font-size: 19px; line-height: 1.3; letter-spacing: -.02em; }
.post-card h3 a:hover, .post-card h2 a:hover { color: var(--blue); }
.post-card-content > p:not(.post-meta) { color: #657287; font-size: 13px; line-height: 1.7; margin: 0 0 19px; }
.empty-insights { display: flex; align-items: center; gap: 22px; padding: 28px; border: 1px dashed #cbd9e9; border-radius: 12px; background: #fff; }
.empty-insights-mark { display: grid; place-items: center; flex: 0 0 56px; height: 56px; border-radius: 12px; background: var(--blue-pale); color: var(--blue); font-size: 20px; font-weight: 850; }
.empty-insights h3 { margin: 0 0 4px; font-size: 17px; }
.empty-insights p { margin: 0; color: #657287; font-size: 13px; }
.contact-section { position: relative; overflow: hidden; padding: 108px 0; background: #061326; color: #fff; }
.contact-glow { position: absolute; width: 650px; height: 650px; top: -310px; right: -140px; border-radius: 50%; background: radial-gradient(circle, rgba(25,114,221,.24), transparent 67%); pointer-events: none; }
.contact-layout { display: grid; grid-template-columns: 1fr .8fr; align-items: center; gap: 85px; position: relative; z-index: 1; }
.contact-layout h2 { margin: 20px 0; }
.contact-intro { max-width: 470px; margin: 0; color: #b4c4d8; font-size: 15px; line-height: 1.85; }
.contact-panel { padding: 31px; border: 1px solid rgba(255,255,255,.13); border-radius: 14px; background: rgba(255,255,255,.055); }
.contact-panel h3 { margin: 0 0 25px; font-size: 18px; }
.contact-item { display: flex; flex-direction: column; gap: 5px; padding: 15px 0; border-top: 1px solid rgba(255,255,255,.13); }
.contact-label { color: #8fa9c8; font-size: 9px; font-weight: 850; letter-spacing: .16em; }
.contact-item a, .contact-item > span:not(.contact-label) { color: #fff; font-size: 14px; font-weight: 650; overflow-wrap: anywhere; }
.contact-item a:hover { color: var(--blue-bright); }
.setup-hint { color: #b8c7d9 !important; font-size: 12px !important; font-weight: 450 !important; }
.contact-panel .button { margin-top: 15px; }
.site-footer { background: #030d1b; color: #fff; }
.footer-main { display: grid; grid-template-columns: 1.5fr .7fr 1fr; gap: 60px; padding-top: 64px; padding-bottom: 55px; }
.brand-footer { margin-bottom: 15px; }
.footer-brand p { max-width: 290px; margin: 0; color: #91a2b8; font-size: 12px; line-height: 1.8; }
.footer-links, .footer-contact { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.footer-links h2, .footer-contact h2 { margin: 2px 0 9px; font-size: 12px; letter-spacing: .08em; }
.footer-links a, .footer-contact a, .footer-contact span { color: #9fb0c5; font-size: 12px; }
.footer-links a:hover, .footer-contact a:hover { color: #fff; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 18px; padding-bottom: 22px; border-top: 1px solid rgba(255,255,255,.1); color: #72839a; font-size: 10px; }
.archive-hero { padding: 82px 0 70px; background: var(--surface); border-bottom: 1px solid var(--line); }
.archive-hero h1 { margin: 15px 0 10px; font-size: clamp(42px, 6vw, 64px); letter-spacing: -.05em; line-height: 1.1; }
.archive-hero p:last-child { margin: 0; color: #68778c; }
.archive-section { padding-top: 70px; }
.pagination-wrap { margin-top: 44px; text-align: center; }
.pagination { display: inline-flex; gap: 18px; align-items: center; color: #176fd5; font-size: 13px; font-weight: 750; }
.article-shell, .page-shell { padding: 66px 0 95px; }
.article-header, .page-header { text-align: center; }
.back-link { display: inline-block; margin-bottom: 32px; color: #6d7d92; font-size: 12px; font-weight: 700; }
.back-link:hover { color: var(--blue); }
.article-header .eyebrow, .page-header .eyebrow { justify-content: center; }
.article-header h1, .page-header h1 { margin: 17px 0 16px; font-size: clamp(39px, 5vw, 62px); line-height: 1.08; letter-spacing: -.05em; }
.article-excerpt { margin: 0 auto 17px; max-width: 680px; color: #617087; font-size: 18px; line-height: 1.6; }
.article-meta { color: #8390a1; font-size: 11px; }
.article-meta span { padding: 0 7px; }
.article-feature { margin-top: 45px; margin-bottom: 45px; }
.article-feature img { width: 100%; max-height: 560px; object-fit: cover; border-radius: 14px; }
.article-feature figcaption { margin-top: 9px; text-align: center; color: #8090a3; font-size: 11px; }
.gh-content { color: #344258; font-size: 17px; line-height: 1.85; }
.gh-content > * { max-width: 100%; }
.gh-content h2, .gh-content h3, .gh-content h4 { color: var(--ink); line-height: 1.25; letter-spacing: -.03em; }
.gh-content h2 { margin-top: 1.9em; font-size: 32px; }
.gh-content h3 { margin-top: 1.6em; font-size: 24px; }
.gh-content a { color: #126bd2; text-decoration: underline; text-underline-offset: 3px; }
.gh-content img, .gh-content video { border-radius: 10px; }
.gh-content blockquote { margin-inline: 0; padding: 8px 0 8px 22px; border-left: 3px solid var(--blue); color: #52647c; }
.gh-content pre { overflow-x: auto; padding: 20px; border-radius: 10px; background: #0b1b31; color: #e3efff; font-size: 13px; }
.gh-content table { width: 100%; border-collapse: collapse; font-size: 14px; }
.gh-content th, .gh-content td { padding: 10px; border: 1px solid var(--line); text-align: left; }
.article-bottom { margin-top: 55px; text-align: center; }
.page-header { margin-bottom: 40px; }
.error-section { display: grid; min-height: 65vh; align-items: center; padding: 70px 0; background: var(--surface); }
.error-content h1 { max-width: 720px; margin: 17px 0; font-size: clamp(42px, 6vw, 68px); line-height: 1.06; letter-spacing: -.05em; }
.error-content h1 span { color: var(--blue); }
.error-content > p:not(.eyebrow) { margin-bottom: 27px; color: #68778c; }
@media (max-width: 1000px) {
    .header-inner { gap: 20px; }
    .primary-nav ul { gap: 17px; }
    .header-cta { display: none; }
    .service-grid { grid-template-columns: repeat(2, 1fr); }
    .approach-layout { gap: 48px; }
    .contact-layout { gap: 45px; }
}
@media (max-width: 720px) {
    .wrap, .wrap-narrow { width: min(calc(100% - 36px), var(--max)); }
    .header-inner { min-height: 72px; justify-content: space-between; }
    .brand-mark { width: 37px; height: 37px; }
    .brand-logo { height: 52px; max-width: 195px; }
    .brand-logo-footer { height: 62px; max-width: 235px; }
    .brand-copy strong { font-size: 15px; }
    .menu-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 42px; height: 42px; padding: 9px; border: 1px solid rgba(255,255,255,.17); border-radius: 7px; background: transparent; cursor: pointer; }
    .menu-toggle span { display: block; width: 100%; height: 2px; background: #fff; transition: transform .2s ease, opacity .2s ease; }
    .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(7px) rotate(45deg); }
    .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
    .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-7px) rotate(-45deg); }
    .primary-nav { display: none; position: absolute; top: 72px; left: 0; right: 0; padding: 10px 18px 20px; background: #061326; border-bottom: 1px solid rgba(255,255,255,.1); }
    .primary-nav.is-open { display: block; }
    .primary-nav ul { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
    .primary-nav li { border-top: 1px solid rgba(255,255,255,.08); }
    .primary-nav a { display: block; padding: 12px 4px; }
    .hero { min-height: 630px; }
    .hero-art img { object-position: 62% center; }
    .hero-shade { background: linear-gradient(90deg, rgba(4,15,31,.97), rgba(4,15,31,.78)), linear-gradient(0deg, rgba(4,15,31,.45), transparent); }
    .hero-content { padding-top: 70px; padding-bottom: 68px; }
    .hero h1 { font-size: clamp(43px, 12vw, 62px); }
    .hero-lede { font-size: 16px; }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 19px; }
    .hero-note { margin-top: 47px; font-size: 11px; }
    .proof-grid { grid-template-columns: 1fr; gap: 18px; padding-top: 24px; padding-bottom: 24px; }
    .section { padding: 76px 0; }
    .section-heading { display: block; margin-bottom: 32px; }
    .section-intro { margin-top: 20px; }
    .service-grid { grid-template-columns: 1fr; gap: 13px; }
    .service-card { min-height: 0; padding: 24px; }
    .service-card > p:not(.card-index) { margin-bottom: 20px; }
    .approach-section, .contact-section { padding: 78px 0; }
    .approach-layout, .contact-layout { grid-template-columns: 1fr; gap: 40px; }
    .post-grid { grid-template-columns: 1fr; }
    .post-image { height: 210px; }
    .contact-panel { padding: 24px; }
    .footer-main { grid-template-columns: 1fr 1fr; gap: 32px 20px; padding-top: 48px; padding-bottom: 38px; }
    .footer-brand { grid-column: 1 / -1; }
    .footer-bottom { flex-direction: column; gap: 6px; }
    .archive-hero { padding: 62px 0 50px; }
    .archive-section { padding-top: 48px; }
    .article-shell, .page-shell { padding-top: 48px; }
    .article-header h1, .page-header h1 { font-size: 40px; }
    .article-excerpt { font-size: 16px; }
    .gh-content { font-size: 16px; }
    .gh-content h2 { font-size: 28px; }
    .gh-content h3 { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}


/* Ghost Koenig editor width classes */
.gh-content .kg-width-wide {
    width: min(calc(100vw - 48px), 1200px);
    max-width: none;
    margin-left: 50%;
    transform: translateX(-50%);
}
.gh-content .kg-width-full {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
}
.gh-content .kg-width-wide img,
.gh-content .kg-width-wide video,
.gh-content .kg-width-full img,
.gh-content .kg-width-full video {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}
@media (max-width: 720px) {
    .gh-content .kg-width-wide {
        width: calc(100vw - 36px);
    }
}

/* Youngs IT Solutions — dark-first site palette */
:root {
    color-scheme: dark;
    --ink: #edf4ff;
    --ink-soft: #aebed3;
    --navy: #061326;
    --navy-2: #0b203a;
    --blue: #2587ff;
    --blue-bright: #65b5ff;
    --blue-pale: #102c4d;
    --line: rgba(163, 190, 222, .16);
    --surface: #081a30;
    --white: #f6f9ff;
}
html, body { min-height: 100%; background: #061326; color: #edf4ff; }
body { background: #061326; color: var(--ink); }
main { background: #061326; color: var(--ink); }
main h1, main h2, main h3, main h4, main h5, main h6 { color: #f3f7ff; }
main p, main li { color: inherit; }

/* Site-wide surfaces */
.proof-strip { background: #0a1d35; border-bottom-color: rgba(163,190,222,.13); color: #edf4ff; }
.proof-grid strong { color: #edf4ff; }
.proof-grid small { color: #9fb2cb; }
.section { background: #07172b; }
.services-section { background: linear-gradient(180deg, #0a1d35 0%, #07172b 100%); }
.insights-section { background: #081a30; }
.approach-section { background: linear-gradient(115deg, #07172d, #0b2548); }
.contact-section { background: #061326; }
.site-footer { background: #030c19; }

/* Typography and muted copy */
.eyebrow-blue { color: #78baff; }
.section-heading h2 span { color: #91a8c5; }
.section-intro { color: #aebed3; }
.proof-number { color: #65b5ff; }

/* Service and article cards */
.service-card, .post-card, .empty-insights {
    color: #edf4ff;
    background: #0c223d;
    border-color: rgba(163,190,222,.17);
    box-shadow: 0 10px 28px rgba(0,0,0,.18);
}
.service-card:hover, .post-card:hover {
    border-color: rgba(76,158,255,.55);
    box-shadow: 0 16px 36px rgba(0,0,0,.28);
}
.service-card h3, .post-card h2, .post-card h3, .empty-insights h3 { color: #f2f7ff; }
.service-card > p:not(.card-index),
.post-card-content > p:not(.post-meta),
.empty-insights p { color: #aebed3; }
.service-icon, .empty-insights-mark { background: #12345a; color: #78baff; }
.card-index, .post-meta { color: #91afd2; }
.card-link { color: #70b7ff; }
.card-link:hover { color: #b7dcff; }
.post-image { background: #0b1e35; }
.post-image-placeholder { background: linear-gradient(135deg, #07172d, #15559b); color: #9acbff; }

/* Contact and footer */
.contact-panel { background: rgba(13,36,64,.78); border-color: rgba(163,190,222,.2); }
.contact-intro { color: #b7c8dd; }
.contact-item a, .contact-item > span:not(.contact-label) { color: #f1f6ff; }
.contact-label { color: #91b6df; }
.footer-brand p { color: #9aacc3; }
.footer-links a, .footer-contact a, .footer-contact span { color: #afbed1; }
.footer-bottom { color: #8398b3; }

/* Archive, standalone pages, and posts */
.archive-hero { background: #0a1d35; border-bottom-color: rgba(163,190,222,.15); }
.archive-hero p:last-child { color: #b0c0d4; }
.archive-hero h1, .article-header h1, .page-header h1, .error-content h1 { color: #f3f7ff; }
.archive-section, .article-shell, .page-shell, .error-section { background: #07172b; color: #edf4ff; }
.back-link { color: #a8bad1; }
.back-link:hover { color: #72baff; }
.article-excerpt { color: #b2c2d6; }
.article-meta, .article-feature figcaption { color: #8fa4be; }
.gh-content { color: #c8d5e6; }
.gh-content h1, .gh-content h2, .gh-content h3, .gh-content h4, .gh-content h5, .gh-content h6 { color: #f0f6ff; }
.gh-content a { color: #75baff; }
.gh-content a:hover { color: #b9dcff; }
.gh-content blockquote { color: #b4c5da; }
.gh-content pre { background: #020b17; color: #e3efff; border: 1px solid rgba(163,190,222,.15); }
.gh-content table { color: #dbe7f6; }
.gh-content th, .gh-content td { border-color: rgba(163,190,222,.22); }
.gh-content th { background: #102a49; color: #f2f7ff; }
.gh-content hr { border: 0; border-top: 1px solid rgba(163,190,222,.2); }
.error-section { background: #07172b; }
.error-content > p:not(.eyebrow) { color: #b2c2d6; }
.pagination { color: #75baff; }

/* Native Ghost cards and editor content */
.gh-content .kg-callout-card,
.gh-content .kg-toggle-card,
.gh-content .kg-signup-card,
.gh-content .kg-product-card,
.gh-content .kg-header-card,
.gh-content .kg-bookmark-card,
.gh-content .kg-file-card {
    color: #d9e6f7;
    background: #0c223d;
    border-color: rgba(163,190,222,.18);
}
.gh-content .kg-callout-card a,
.gh-content .kg-toggle-card a,
.gh-content .kg-bookmark-card a { color: #79baff; }
.gh-content .kg-bookmark-content,
.gh-content .kg-bookmark-description,
.gh-content .kg-bookmark-metadata,
.gh-content .kg-file-card-caption { color: #aebed3; }
.gh-content .kg-button-card .kg-btn,
.gh-content .kg-header-card .kg-header-card-button { background: #1677ee; color: #fff; }

/* Forms and interactive controls on contact/page content */
input, textarea, select {
    color: #edf4ff;
    background: #0b2039;
    border: 1px solid rgba(163,190,222,.25);
    border-radius: 7px;
}
input::placeholder, textarea::placeholder { color: #91a5bf; }
input:focus, textarea:focus, select:focus, button:focus-visible, a:focus-visible {
    outline: 2px solid #65b5ff;
    outline-offset: 3px;
}
::selection { color: #fff; background: #176fd5; }

/* Keep the white CTA intentional and readable on dark surfaces */
.button-light { background: #f2f7ff; color: #061326; border-color: #f2f7ff; }
.button-light:hover { background: #dbeaff; border-color: #dbeaff; }

@media (max-width: 720px) {
    .primary-nav { background: #061326; }
    .proof-strip { background: #0a1d35; }
    .service-card, .post-card, .empty-insights { background: #0c223d; }
}


/* Request IT Help page */
.help-page { background: #07172b; color: #edf4ff; }
.help-hero { padding: 62px 0 55px; background: radial-gradient(circle at 82% 8%, rgba(28,112,220,.22), transparent 34%), #0a1d35; border-bottom: 1px solid rgba(163,190,222,.14); }
.help-hero h1 { margin: 16px 0 13px; color: #f3f7ff; font-size: clamp(38px, 5vw, 58px); line-height: 1.08; letter-spacing: -.045em; }
.help-lede { max-width: 720px; margin: 0; color: #b8c8dc; font-size: 16px; line-height: 1.8; }
.help-quick-contact { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; margin-top: 22px; color: #9db0c8; font-size: 13px; }
.help-quick-contact a { color: #83bdff; font-weight: 750; }
.help-divider { color: #55708e; }
.help-form-section { padding: 78px 0 100px; background: #07172b; }
.help-layout { display: grid; grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr); gap: 54px; align-items: start; }
.help-aside { padding-top: 14px; }
.help-aside h2 { margin: 17px 0 14px; color: #f2f7ff; font-size: clamp(30px, 3.5vw, 43px); line-height: 1.12; letter-spacing: -.04em; }
.help-aside h2 span { color: #62aaff; }
.help-aside > p:not(.eyebrow) { margin: 0 0 30px; color: #b2c2d6; font-size: 14px; line-height: 1.85; }
.help-step { display: grid; grid-template-columns: 35px 1fr; gap: 14px; padding: 19px 0; border-top: 1px solid rgba(163,190,222,.16); }
.help-step > span { color: #65b5ff; font-size: 12px; font-weight: 850; letter-spacing: .1em; padding-top: 3px; }
.help-step h3 { margin: 0 0 5px; color: #f1f6ff; font-size: 15px; }
.help-step p { margin: 0; color: #9fb1c8; font-size: 12px; line-height: 1.7; }
.help-aside-contact { display: flex; flex-direction: column; gap: 8px; margin-top: 22px; padding: 20px; border: 1px solid rgba(163,190,222,.17); border-radius: 10px; background: rgba(13,36,64,.72); }
.help-aside-contact a { color: #d9e9fb; font-size: 14px; font-weight: 700; overflow-wrap: anywhere; }
.help-form-card { padding: clamp(22px, 4vw, 38px); border: 1px solid rgba(163,190,222,.2); border-radius: 15px; background: linear-gradient(145deg, #102a49, #0b2039); box-shadow: 0 22px 60px rgba(0,0,0,.22); }
.help-form-heading { margin-bottom: 25px; }
.help-form-heading h2 { margin: 12px 0 6px; color: #f3f7ff; font-size: 28px; letter-spacing: -.03em; }
.help-form-heading > p:last-child { margin: 0; color: #a8bad0; font-size: 12px; }
.help-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px 16px; }
.help-field { min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.help-field-full { grid-column: 1 / -1; }
.help-field > label:not(.help-checkbox) { color: #dce9f8; font-size: 12px; font-weight: 750; }
.help-field input:not([type="checkbox"]), .help-field select, .help-field textarea { width: 100%; min-height: 48px; padding: 12px 13px; color: #edf4ff; background: #071a30; border: 1px solid rgba(163,190,222,.28); border-radius: 7px; font: inherit; font-size: 13px; }
.help-field textarea { min-height: 145px; resize: vertical; line-height: 1.65; }
.help-field select:invalid { color: #8fa5bf; }
.help-field select option { color: #edf4ff; background: #071a30; }
.help-field input::placeholder, .help-field textarea::placeholder { color: #8096b2; }
.help-field input:focus, .help-field select:focus, .help-field textarea:focus { border-color: #65b5ff; outline: 2px solid rgba(101,181,255,.22); outline-offset: 1px; }
.help-field small { color: #94a9c3; font-size: 11px; line-height: 1.55; }
.help-consent { padding: 14px; border: 1px solid rgba(163,190,222,.15); border-radius: 8px; background: rgba(4,16,31,.28); }
.help-checkbox { display: flex; align-items: flex-start; gap: 10px; color: #c5d5e8; font-size: 12px; line-height: 1.6; cursor: pointer; }
.help-checkbox input { flex: 0 0 auto; width: 17px; height: 17px; margin: 1px 0 0; accent-color: #258eff; }
.help-submit { min-height: 55px; cursor: pointer; font: inherit; font-weight: 800; }
.help-privacy-note { margin: 11px 0 0; color: #93a8c2; font-size: 11px; line-height: 1.65; text-align: center; }
.help-setup-notice { padding: 25px; border: 1px solid rgba(101,181,255,.25); border-radius: 10px; background: rgba(7,23,43,.6); }
.help-setup-notice h3 { margin: 0 0 9px; color: #f1f6ff; font-size: 19px; }
.help-setup-notice > p { color: #b2c2d6; font-size: 13px; line-height: 1.7; }
.help-setup-small { margin: 17px 0 0; font-size: 11px !important; color: #91a8c4 !important; }
.help-setup-small strong { color: #c9d9ec; }

@media (max-width: 850px) {
    .help-layout { grid-template-columns: 1fr; gap: 35px; }
    .help-aside { max-width: 680px; }
}
@media (max-width: 560px) {
    .help-hero { padding: 44px 0 40px; }
    .help-form-section { padding: 48px 0 65px; }
    .help-form-grid { grid-template-columns: 1fr; }
    .help-field-full { grid-column: auto; }
    .help-form-card { padding: 21px 17px; }
    .help-quick-contact { align-items: flex-start; flex-direction: column; gap: 7px; }
    .help-divider { display: none; }
}


/* Self-hosted Request IT Help form feedback and anti-spam field */
.yits-honeypot { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.help-form-status { min-height: 0; margin: 12px 0 0; padding: 0; font-size: 13px; line-height: 1.6; }
.help-form-status:empty { display: none; }
.help-form-status.is-success { padding: 12px 14px; border: 1px solid rgba(65, 190, 133, .35); border-radius: 8px; background: rgba(31, 145, 93, .12); color: #a9f0ce; }
.help-form-status.is-error { padding: 12px 14px; border: 1px solid rgba(255, 119, 119, .35); border-radius: 8px; background: rgba(176, 48, 48, .13); color: #ffc0c0; }
.help-submit:disabled { opacity: .7; cursor: wait; }

/* Youngs IT Solutions FAQ accordions — native Ghost Toggle cards */
.gh-content .kg-toggle-card {
    margin: 14px 0;
    padding: 0;
    overflow: hidden;
    color: #d9e6f7;
    background: linear-gradient(145deg, #0e2745, #0a1d35);
    border: 1px solid rgba(163,190,222,.19);
    border-radius: 12px;
    box-shadow: 0 9px 24px rgba(0,0,0,.14);
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.gh-content .kg-toggle-card:hover {
    border-color: rgba(101,181,255,.46);
    box-shadow: 0 12px 28px rgba(0,0,0,.2);
}
.gh-content .kg-toggle-card[data-kg-toggle-state="open"] {
    border-color: rgba(101,181,255,.56);
    background: linear-gradient(145deg, #102d50, #0b2039);
}
.gh-content .kg-toggle-card .kg-toggle-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 68px;
    padding: 17px 19px;
    cursor: pointer;
}
.gh-content .kg-toggle-card .kg-toggle-heading-text {
    flex: 1 1 auto;
    margin: 0;
    color: #f2f7ff;
    font-size: 16px;
    font-weight: 750;
    line-height: 1.45;
    letter-spacing: -.012em;
}
.gh-content .kg-toggle-card .kg-toggle-card-icon {
    display: grid;
    flex: 0 0 34px;
    place-items: center;
    width: 34px;
    height: 34px;
    margin: 0;
    padding: 0;
    color: #83c1ff;
    background: rgba(37,135,255,.12);
    border: 1px solid rgba(101,181,255,.28);
    border-radius: 50%;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.gh-content .kg-toggle-card .kg-toggle-card-icon:hover {
    color: #fff;
    background: rgba(37,135,255,.26);
    border-color: rgba(101,181,255,.62);
}
.gh-content .kg-toggle-card .kg-toggle-card-icon svg {
    display: block;
    width: 14px;
    height: 14px;
    color: currentColor;
    transition: transform .2s ease;
}
.gh-content .kg-toggle-card[data-kg-toggle-state="open"] .kg-toggle-card-icon svg {
    transform: rotate(180deg);
}
.gh-content .kg-toggle-card .kg-toggle-content {
    padding: 0 19px 19px;
    color: #b9c9dd;
    font-size: 14px;
    line-height: 1.8;
}
.gh-content .kg-toggle-card .kg-toggle-content p {
    margin: 0 0 12px;
    color: inherit;
}
.gh-content .kg-toggle-card .kg-toggle-content p:last-child,
.gh-content .kg-toggle-card .kg-toggle-content ul:last-child,
.gh-content .kg-toggle-card .kg-toggle-content ol:last-child {
    margin-bottom: 0;
}
.gh-content .kg-toggle-card .kg-toggle-content a {
    color: #82c0ff;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.gh-content .kg-toggle-card .kg-toggle-content a:hover { color: #c5e4ff; }
.gh-content .kg-toggle-card .kg-toggle-content ul,
.gh-content .kg-toggle-card .kg-toggle-content ol {
    margin: 8px 0 12px;
    padding-left: 22px;
}
.gh-content .kg-toggle-card .kg-toggle-content li { margin: 4px 0; }
.gh-content .kg-toggle-card .kg-toggle-heading:focus-within,
.gh-content .kg-toggle-card .kg-toggle-card-icon:focus-visible {
    outline: 2px solid #65b5ff;
    outline-offset: 3px;
}
.gh-content .kg-toggle-card + .kg-toggle-card { margin-top: 12px; }
@media (max-width: 560px) {
    .gh-content .kg-toggle-card .kg-toggle-heading {
        gap: 12px;
        min-height: 62px;
        padding: 15px 14px;
    }
    .gh-content .kg-toggle-card .kg-toggle-heading-text { font-size: 15px; }
    .gh-content .kg-toggle-card .kg-toggle-card-icon {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }
    .gh-content .kg-toggle-card .kg-toggle-content {
        padding: 0 14px 16px;
        font-size: 13px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .gh-content .kg-toggle-card,
    .gh-content .kg-toggle-card .kg-toggle-card-icon,
    .gh-content .kg-toggle-card .kg-toggle-card-icon svg {
        transition: none;
    }
}
