:root{--purple: #6016c4;--orange: #ee7a45;--magenta: #c03b8b;--coral: #dc5869;--grad: linear-gradient(135deg, var(--purple) 0%, var(--magenta) 56%, var(--orange) 100%);--bg: #ffffff;--bg-muted: #f6f9fc;--text: #0a2540;--text-muted: #425466;--accent: #635bff;--border: rgba(0, 0, 0, 0.04);--ease-out: cubic-bezier(0.215, 0.61, 0.355, 1);--shadow-card: 0 2px 5px rgba(0, 0, 0, 0.04), 0 15px 35px rgba(50, 50, 93, 0.08);--shadow-hover: 0 4px 8px rgba(0, 0, 0, 0.05), 0 22px 42px rgba(50, 50, 93, 0.12);--article-prose: 45rem;--article-shell: 70rem;--ink: var(--text);--ink-soft: var(--text-muted);--paper: var(--bg);--paper-2: var(--bg-muted);--line: var(--border);--display: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sub: var(--display);--body: var(--display);--wrap: 75rem;} *, *::before, *::after{box-sizing: border-box;margin: 0;padding: 0;} .visually-hidden{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;} html{scroll-behavior: smooth;} body{font-family: var(--body);color: var(--text);background: var(--bg);line-height: 1.6;font-size: 1rem;-webkit-font-smoothing: antialiased;} :focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;} .wrap{max-width: var(--wrap);margin: 0 auto;padding: 0 28px;} a{color: inherit;text-decoration: none;} h1, h2, h3, h4{font-family: var(--display);font-weight: 600;line-height: 1.08;letter-spacing: -0.02em;color: var(--text);} h1 em, h2 em, h3 em{font-style: italic;font-weight: inherit;} .eyebrow{font-family: var(--sub);font-weight: 700;text-transform: uppercase;letter-spacing: 0.18em;font-size: 0.74rem;} .chev{display: inline-block;width: 1em;height: 1em;vertical-align: -0.12em;flex-shrink: 0;color: inherit;overflow: visible;} .chev, .chev use{fill: none;stroke: currentColor;} .btn{font-family: var(--sub);font-weight: 600;font-size: 0.97rem;display: inline-flex;align-items: center;gap: 0.5em;padding: 0.7em 1.3em;border-radius: 999px;border: 0;cursor: pointer;text-decoration: none;line-height: 1.2;transition: transform 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out), filter 0.2s var(--ease-out), color 0.15s var(--ease-out), background 0.15s var(--ease-out), border-color 0.15s var(--ease-out);} .btn .chev{transition: transform 0.2s var(--ease-out);} .btn:hover .chev{transform: translateX(3px);} .btn-solid{background: var(--grad);color: #fff;box-shadow: var(--shadow-card);} .btn-solid:hover{filter: brightness(1.03);color: #fff;box-shadow: var(--shadow-hover);transform: scale(1.02);} .btn-solid:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;} .btn-ghost{border: 1.5px solid rgba(255, 255, 255, 0.55);color: #fff;} .btn-ghost:hover{background: rgba(255, 255, 255, 0.12);color: #fff;} .btn-ink{border: 1px solid var(--border);color: var(--text);background: var(--bg);box-shadow: var(--shadow-card);} .btn-ink:hover{border-color: transparent;color: var(--accent);box-shadow: var(--shadow-hover);transform: scale(1.02);} .header-cta{white-space: nowrap;flex-shrink: 0;padding-inline: 1.45em;} .header-cta .chev{opacity: 0.92;} #hdr{position: sticky;top: 0;z-index: 500;isolation: isolate;background: rgba(255, 255, 255, 0.94);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border-bottom: 1px solid transparent;transition: border-color 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out), background 0.2s var(--ease-out);} #hdr.scrolled{border-color: var(--border);background: rgba(255, 255, 255, 0.98);box-shadow: var(--shadow-card);} .blog-post-page #hdr{background: #fff;} .blog-post-page #hdr.scrolled{background: #fff;box-shadow: var(--shadow-card);} .bar{display: flex;align-items: center;justify-content: space-between;height: 78px;gap: 1rem;position: relative;overflow: visible;} .bar > a:first-child{flex-shrink: 0;} .bar img{height: 34px;width: auto;display: block;} nav.links{display: flex;gap: 34px;align-items: center;overflow: visible;} nav.links a{font-family: var(--sub);font-weight: 500;font-size: 0.98rem;color: var(--text-muted);transition: color 0.15s var(--ease-out);} nav.links a:hover, nav.links a[aria-current="page"]{color: var(--accent);} nav.links a[aria-current="page"]{font-weight: 700;} .nav-toggle{display: none;border: 0;background: transparent;padding: 0.5rem;cursor: pointer;} .nav-toggle span{display: block;width: 1.5rem;height: 2px;background: var(--ink);margin: 5px 0;} .hero{position: relative;overflow: hidden;background: var(--grad);color: #fff;} .hero::before{content: "";position: absolute;inset: -20%;background: radial-gradient(circle at 20% 30%, rgba(196, 181, 253, 0.45), transparent 42%), radial-gradient(circle at 78% 18%, rgba(254, 215, 170, 0.35), transparent 38%), radial-gradient(circle at 62% 82%, rgba(167, 243, 208, 0.28), transparent 40%), radial-gradient(circle at 12% 78%, rgba(186, 230, 253, 0.32), transparent 36%);filter: blur(40px);opacity: 0.85;pointer-events: none;animation: hero-mesh-drift 18s var(--ease-out) infinite alternate;z-index: 0;} @keyframes hero-mesh-drift{from{transform: translate3d(-2%, -1%, 0) scale(1);} to{transform: translate3d(2%, 1.5%, 0) scale(1.04);}} .hero::after{content: "";position: absolute;inset: 0;background: radial-gradient(120% 90% at 12% 0%, rgba(27, 19, 48, 0.34), transparent 60%);pointer-events: none;} .hero-bg{position: absolute;inset: 0;opacity: 0.16;pointer-events: none;} .hero-bg svg{position: absolute;right: -6%;top: 50%;transform: translateY(-50%);height: 150%;width: auto;} .hero .wrap{position: relative;z-index: 2;width: 100%;max-width: var(--wrap);margin: 0 auto;padding: clamp(4.5rem, 11vw, 7rem) 28px clamp(4rem, 9vw, 6rem);} .hero-copy{display: flex;flex-direction: column;max-width: 56.25rem;} .hero .eyebrow{display: block;color: rgba(255, 255, 255, 0.78);margin-bottom: 1.5rem;} .hero h1{font-family: "Ubuntu", var(--display);font-size: clamp(2.5rem, 5vw, 4.5rem);font-weight: 600;line-height: 1.02;letter-spacing: -0.02em;color: #fff;text-wrap: balance;margin: 0;} .hero-line{display: block;} .hero p.lede{font-family: var(--sub);font-weight: 400;font-size: clamp(1.05rem, 1.75vw, 1.28rem);line-height: 1.6;max-width: 50rem;margin: 1.65rem 0 0;color: rgba(255, 255, 255, 0.9);} .hero .cta{display: flex;gap: 14px;flex-wrap: wrap;margin-top: 2.35rem;} .btn-hero-light{background: #fff;color: var(--purple);border: 1px solid #fff;box-shadow: var(--shadow-card);} .btn-hero-light:hover{filter: brightness(1.02);color: var(--purple);transform: scale(1.02);box-shadow: var(--shadow-hover);} .js .scroll-reveal{opacity: 0;transform: translateY(24px);transition: opacity 0.5s var(--ease-out), transform 0.5s var(--ease-out);} .js .scroll-reveal.is-visible{opacity: 1;transform: none;} .js .reveal-h{opacity: 1;transform: translateY(24px);animation: rise 0.55s var(--ease-out) forwards;} .js .hero .eyebrow{animation-delay: 0.08s;} .js .hero h1{animation-delay: 0.18s;} .js .hero p.lede{animation-delay: 0.32s;} .js .hero .cta{animation-delay: 0.46s;} @keyframes rise{from{transform: translateY(24px);} to{transform: none;}} .proof-strip{background: var(--bg-muted);padding: 4rem 0 4.25rem;position: relative;} .proof-strip::before{content: "";position: absolute;top: 0;left: 0;right: 0;height: 3px;background: var(--grad);} .proof-grid{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1.25rem;} .proof-item{background: var(--bg);border: 1px solid var(--border);border-radius: 16px;padding: 1.35rem 1.25rem 1.25rem;box-shadow: var(--shadow-card);position: relative;overflow: hidden;height: 10.25rem;display: flex;flex-direction: column;transition: transform 0.22s var(--ease-out), box-shadow 0.22s var(--ease-out);} .proof-item:hover{transform: translateY(-3px);box-shadow: var(--shadow-hover);} .proof-item::before{content: "";position: absolute;left: 0;top: 0;width: 100%;height: 3px;background: var(--proof-accent, var(--purple));} .proof-item:nth-child(1){--proof-accent: var(--purple);} .proof-item:nth-child(2){--proof-accent: var(--magenta);} .proof-item:nth-child(3){--proof-accent: var(--orange);} .proof-label{display: block;font-family: var(--sub);font-size: 0.72rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--magenta);margin-bottom: 0.65rem;} .proof-title{font-family: var(--sub);font-weight: 700;font-size: 1.02rem;line-height: 1.35;color: var(--ink);margin: 0 0 0.45rem;} .proof-title a{color: inherit;text-decoration: none;transition: color 0.2s ease;} .proof-title a:hover{color: var(--purple);} .proof-detail{margin: 0;font-size: 0.92rem;line-height: 1.55;color: var(--ink-soft);} section.block{padding: clamp(6rem, 10vw, 8.75rem) 0;} #about{padding-top: 50px;padding-bottom: 50px;} #insights{padding: clamp(4rem, 8vw, 6rem) 0;background: var(--paper-2);} .proof-strip + section.block{padding-top: 3.25rem;} #services{padding: clamp(4rem, 8vw, 6rem) 0;} .section-head{max-width: 62ch;margin: 0 auto 54px;} .section-head .eyebrow{color: var(--magenta);display: block;margin-bottom: 16px;} .section-head h2{font-size: clamp(2rem, 3.6vw, 2.9rem);} .section-head p{font-family: var(--sub);font-size: 1.18rem;color: var(--ink-soft);margin-top: 16px;} .cards{display: grid;grid-template-columns: repeat(6, minmax(0, 1fr));gap: 20px;} .card{grid-column: span 2;position: relative;background: var(--paper-2);border: 1px solid var(--border);border-radius: 16px;padding: 38px 32px 34px;box-shadow: var(--shadow-card);transition: transform 0.22s var(--ease-out), box-shadow 0.22s var(--ease-out), border-color 0.22s var(--ease-out);overflow: hidden;} .card::before{content: "";position: absolute;left: 0;top: 0;height: 5px;width: 100%;background: var(--accent);} .card:hover{transform: translateY(-3px);box-shadow: var(--shadow-hover);border-color: transparent;} .card .mark{color: var(--accent);margin-bottom: 24px;} .card .mark .chev{width: 2.1rem;height: 2.1rem;transition: transform 0.22s var(--ease-out);} .card:hover .mark .chev{transform: translateY(-2px) rotate(-2deg);} .card h3{font-size: 1.42rem;margin-bottom: 12px;} .card p{color: var(--ink-soft);font-size: 1rem;} .card ul{list-style: none;margin-top: 18px;display: flex;flex-direction: column;gap: 9px;} .card li{font-family: var(--sub);font-size: 0.98rem;padding-left: 24px;position: relative;color: var(--ink);} .card li::before{content: "";position: absolute;left: 0;top: 0.55em;width: 8px;height: 8px;border-right: 2px solid var(--accent);border-top: 2px solid var(--accent);transform: rotate(45deg);} .c1{--accent: var(--purple);} .c2{--accent: var(--magenta);} .c3{--accent: var(--orange);} .about{background: var(--paper-2);} .split{display: grid;grid-template-columns: 1.05fr 0.95fr;gap: 64px;align-items: center;} .about .split{align-items: stretch;} .about h2{font-size: clamp(2rem, 3.6vw, 2.8rem);margin-bottom: 22px;} .about .eyebrow{color: var(--orange);display: block;margin-bottom: 16px;} .about p{color: var(--ink-soft);font-size: 1.08rem;margin-bottom: 18px;} .about p strong{color: var(--ink);} .cred{display: flex;flex-wrap: wrap;gap: 10px;margin-top: 26px;} .cred span{font-family: var(--sub);font-weight: 500;font-size: 0.9rem;padding: 0.45em 1em;border: 1px solid var(--line);border-radius: 999px;color: var(--ink-soft);background: #fff;} .portrait{aspect-ratio: 4/5;border-radius: 20px;background: var(--grad);position: relative;overflow: hidden;box-shadow: var(--shadow-hover);} .about .split .portrait, .about-intro .portrait{aspect-ratio: auto;height: 100%;} .portrait > img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;object-position: center 15%;} .portrait .ov{position: absolute;inset: 0;background: radial-gradient(120% 80% at 80% 10%, rgba(27, 19, 48, 0.35), transparent 55%), linear-gradient( to top, rgba(10, 37, 64, 0.94) 0%, rgba(10, 37, 64, 0.72) 32%, rgba(10, 37, 64, 0.2) 58%, transparent 72% );pointer-events: none;} .portrait .who{position: absolute;left: 0;right: 0;bottom: 0;padding: 1.35rem 1.75rem;color: #fff;z-index: 2;} .portrait .who b{font-family: var(--display);font-size: 1.5rem;display: block;letter-spacing: -0.01em;color: #fff;} .portrait .who em{font-family: var(--sub);font-style: normal;color: rgba(255, 255, 255, 0.86);} .content-photo{margin: 2rem 0;border-radius: 16px;overflow: hidden;border: 1px solid var(--border);box-shadow: var(--shadow-card);} .content-photo img{display: block;width: 100%;height: auto;} .insights-grid{display: grid;grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));gap: 24px;margin-bottom: 36px;} .insights-layout{display: grid;grid-template-columns: minmax(16rem, 0.82fr) minmax(0, 1.18fr);gap: clamp(2rem, 5vw, 4.5rem);align-items: start;} .insights-intro{position: sticky;top: 6.5rem;padding-top: 0.35rem;border-left: 3px solid var(--purple);padding-left: 1.35rem;} .insights-intro .eyebrow{color: var(--magenta);display: block;margin-bottom: 1rem;} .insights-intro h2{font-size: clamp(1.85rem, 3.2vw, 2.55rem);line-height: 1.12;letter-spacing: -0.02em;margin-bottom: 1rem;} .insights-intro p{color: var(--ink-soft);font-size: 1.08rem;line-height: 1.65;margin-bottom: 1.75rem;max-width: 34ch;} .insights-intro .btn{margin-top: 0.25rem;} .insights-feed{display: flex;flex-direction: column;background: var(--bg);border: 1px solid var(--border);border-radius: 20px;box-shadow: var(--shadow-card);overflow: hidden;} .insight-feature{--insight-accent: var(--purple);} .insight-feature:nth-child(2){--insight-accent: var(--magenta);} .insight-feature:nth-child(3){--insight-accent: var(--orange);} .insight-feature + .insight-feature{border-top: 1px solid var(--border);} .insight-feature__link{display: grid;grid-template-columns: auto 1fr auto;gap: 1rem 1.5rem;align-items: center;padding: clamp(1.35rem, 2.5vw, 1.85rem) clamp(1.25rem, 2.5vw, 1.75rem);border-left: 3px solid transparent;transition: background-color 0.22s var(--ease-out), border-color 0.22s var(--ease-out), transform 0.22s var(--ease-out);} .insight-feature__link:hover, .insight-feature__link:focus-visible{background: linear-gradient(90deg, rgba(96, 22, 196, 0.04) 0%, transparent 42%);border-left-color: var(--insight-accent);} .insight-feature__index{font-family: var(--display);font-size: clamp(1.35rem, 2vw, 1.65rem);font-weight: 600;letter-spacing: -0.03em;color: var(--insight-accent);line-height: 1;min-width: 2.25rem;} .insight-feature__body{min-width: 0;} .insight-feature__meta{display: flex;flex-wrap: wrap;align-items: center;gap: 0.55rem 0.85rem;margin-bottom: 0.65rem;} .insight-feature__section{font-family: var(--sub);font-size: 0.72rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--insight-accent);} .insight-feature__meta time{font-family: var(--sub);font-size: 0.82rem;color: var(--ink-soft);} .insight-feature__body h3{font-size: clamp(1.15rem, 2vw, 1.38rem);line-height: 1.25;margin-bottom: 0.55rem;} .insight-feature__body p{color: var(--ink-soft);font-size: 0.98rem;line-height: 1.55;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;} .insight-feature__arrow{display: flex;align-items: center;justify-content: center;width: 2.5rem;height: 2.5rem;border-radius: 999px;border: 1px solid var(--border);color: var(--insight-accent);background: var(--bg);transition: transform 0.22s var(--ease-out), background-color 0.22s var(--ease-out), border-color 0.22s var(--ease-out);} .insight-feature__arrow .chev{width: 1.15rem;height: 1.05rem;} .insight-feature__link:hover .insight-feature__arrow, .insight-feature__link:focus-visible .insight-feature__arrow{transform: translateX(3px);background: var(--insight-accent);border-color: var(--insight-accent);color: #fff;} .blog-card{display: block;background: var(--bg);border: 1px solid var(--border);border-radius: 16px;padding: 28px 26px;box-shadow: var(--shadow-card);transition: transform 0.22s var(--ease-out), box-shadow 0.22s var(--ease-out), border-color 0.22s var(--ease-out);} .blog-card:hover{transform: translateY(-3px);box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05), 0 22px 42px rgba(50, 50, 93, 0.12);border-color: transparent;color: inherit;} .blog-meta{font-family: var(--sub);font-size: 0.82rem;color: var(--magenta);text-transform: uppercase;letter-spacing: 0.12em;margin-bottom: 12px;} .blog-card h3{font-size: 1.25rem;margin-bottom: 10px;} .blog-card p{color: var(--ink-soft);font-size: 0.98rem;margin-bottom: 16px;} .read-more{font-family: var(--sub);font-weight: 600;color: var(--accent);display: inline-flex;align-items: center;gap: 0.35em;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .read-more:hover{color: var(--purple);background-size: 100% 1px;} .cta-band{background: var(--grad);color: #fff;position: relative;overflow: hidden;} .cta-band::after{content: "";position: absolute;inset: 0;background: radial-gradient(110% 120% at 90% 100%, rgba(27, 19, 48, 0.34), transparent 55%);} .cta-band .wrap{position: relative;z-index: 2;padding: 50px 28px;text-align: center;} .cta-band h2{font-size: clamp(2rem, 4vw, 3rem);max-width: 18ch;margin: 0 auto 18px;color: rgba(255, 255, 255, 1);} .cta-band p{font-family: var(--sub);font-size: 1.2rem;color: rgba(255, 255, 255, 0.92);max-width: 48ch;margin: 0 auto 34px;} #site-footer{background: var(--purple);color: rgba(255, 255, 255, 0.72);padding: clamp(3.5rem, 6vw, 4.5rem) 0 2.5rem;} .foot{display: flex;justify-content: space-between;gap: 40px;flex-wrap: wrap;align-items: flex-start;} #site-footer img{height: 30px;margin-bottom: 18px;} #site-footer .tag{font-family: var(--sub);max-width: 34ch;font-size: 0.96rem;} .foot-col h4{font-family: var(--sub);font-weight: 700;color: #fff;font-size: 0.82rem;letter-spacing: 0.14em;text-transform: uppercase;margin-bottom: 14px;} .foot-col a, .foot-col p{display: block;font-size: 0.96rem;margin-bottom: 8px;color: rgba(255, 255, 255, 0.72);transition: color 0.2s;} .foot-col a:hover{color: var(--orange);} .rule{border: 0;border-top: 1px solid rgba(255, 255, 255, 0.14);margin: 42px 0 22px;} .legal{display: flex;justify-content: space-between;flex-wrap: wrap;gap: 12px;font-size: 0.84rem;color: rgba(255, 255, 255, 0.5);} .page-masthead{background: var(--paper);padding: clamp(2.5rem, 5vw, 3.25rem) 0 0;} .page-main, main#top, .article-main{position: relative;z-index: 0;isolation: isolate;} .page-masthead .wrap{max-width: 56rem;padding-bottom: clamp(2.25rem, 4vw, 3rem);} .page-eyebrow{display: block;font-family: var(--sub);font-size: 0.74rem;font-weight: 700;letter-spacing: 0.18em;text-transform: uppercase;color: var(--magenta);margin-bottom: 0.85rem;} .page-masthead h1{font-size: clamp(2rem, 4.5vw, 3.15rem);line-height: 1.08;letter-spacing: -0.02em;max-width: 22ch;text-wrap: balance;} .page-masthead-rule{height: 3px;background: var(--grad);} .page-content{background: var(--bg-muted);padding: clamp(3.5rem, 7vw, 5.5rem) 0 clamp(3.5rem, 7vw, 5rem);} .page-content > .wrap{max-width: 56rem;} .page-summary{font-family: var(--sub);font-size: 1.125rem;line-height: 1.65;color: var(--text-muted);max-width: none;margin: 0 0 2rem;padding: 0;border-left: 0;} .page-content .insights-grid{margin-top: 0.5rem;} .content-block{padding: 72px 0 96px;} .prose{max-width: 42rem;margin-inline: auto;width: 100%;} .prose-wide{max-width: 56rem;margin-inline: auto;width: 100%;} .prose h2, .prose h3{margin: 2.5rem 0 1rem;} .prose h2{font-size: clamp(1.75rem, 2.2vw, 2rem);font-weight: 700;letter-spacing: -0.015em;color: var(--text);} .prose h3{font-family: var(--display);font-size: clamp(1.25rem, 1.6vw, 1.375rem);font-weight: 600;color: var(--text);} .prose p, .prose ul, .prose ol{margin: 0 0 1.25em;color: var(--text-muted);font-size: 1.0625rem;line-height: 1.65;} .prose strong{color: var(--text);font-weight: 600;} .prose a{color: var(--accent);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .prose a:hover{color: var(--purple);background-size: 100% 1px;} .prose ul, .prose ol{padding-left: 1.25rem;} .prose li + li{margin-top: 0.5rem;} .prose blockquote{margin: 2rem 0;padding: 0;border: 0;background: none;font-size: clamp(1.375rem, 2vw, 1.5rem);font-weight: 500;line-height: 1.45;color: var(--text);font-style: italic;} .case-study-banner{position: relative;overflow: hidden;} .case-study-banner img{display: block;width: 100%;max-height: clamp(240px, 42vw, 420px);object-fit: cover;object-position: center 55%;transform: scale(1.06);transition: transform 1.4s cubic-bezier(0.2, 0.7, 0.2, 1);} .case-study-banner-chevs{position: absolute;right: 2%;top: 8%;height: 84%;opacity: 0.28;z-index: 2;pointer-events: none;} .case-study-banner-ov{position: absolute;inset: 0;background: radial-gradient(120% 80% at 88% 15%, rgba(27, 19, 48, 0.35), transparent 55%);z-index: 1;pointer-events: none;} .js .reveal-photo{opacity: 0;transform: translateY(24px);transition: opacity 0.5s var(--ease-out), transform 0.5s var(--ease-out);} .js .reveal-photo.is-visible{opacity: 1;transform: none;} .js .reveal-photo--delay-1{transition-delay: 0.12s;} .js .reveal-photo--delay-2{transition-delay: 0.24s;} .js .reveal-photo--hero.is-visible img{transform: scale(1);} .case-study-glance-logo img{display: block;width: 132px;height: auto;} .reveal-photo.content-photo, .reveal-photo .content-photo{overflow: hidden;} .js .reveal-photo.is-visible.content-photo img, .js .reveal-photo.is-visible .content-photo img{transition: transform 0.65s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .reveal-photo.is-visible.content-photo:hover img, .js .reveal-photo.is-visible .content-photo:hover img{transform: scale(1.03);} .page-content--case-study .prose-wide{max-width: 56rem;} .block.content-block > .wrap.prose{max-width: 56rem;} .case-study-glance{display: grid;grid-template-columns: auto 1fr;gap: 2rem;align-items: start;margin-bottom: 0.5rem;} .case-study-glance-logo{margin: 0;padding: 0;background: transparent;line-height: 0;} .case-study-glance ul{margin: 0;} .case-study-duo{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 20px;margin: 2.5rem 0;} .case-study-duo figure{margin: 0;} .case-study-duo .content-photo{margin: 0;} .case-study-duo figcaption, .case-study-caption{font-family: var(--sub);font-size: 0.84rem;line-height: 1.5;margin-top: 0.75rem;color: var(--ink-soft);} .prose .content-photo figcaption.case-study-caption{margin: 0;padding: 0.85rem 1rem 1rem;border-top: 1px solid var(--line);background: #fff;} .about-content{padding-top: 2rem;} .about-prose > :first-child{margin-top: 0;} .about-intro{display: grid;grid-template-columns: 1.05fr 0.95fr;gap: clamp(2rem, 5vw, 4rem);align-items: stretch;margin-bottom: 3.5rem;} .about-intro .eyebrow{display: block;font-family: var(--sub);font-size: 0.74rem;font-weight: 700;letter-spacing: 0.18em;text-transform: uppercase;color: var(--orange);margin-bottom: 1rem;} .about-lede{color: var(--ink-soft);font-size: 1.08rem;line-height: 1.65;margin: 0 0 1.15rem;} .about-quote{margin: 1.75rem 0;padding: 1.15rem 0 1.15rem 1.15rem;border-left: 3px solid var(--purple);font-family: var(--display);font-size: clamp(1.2rem, 2.2vw, 1.45rem);line-height: 1.35;letter-spacing: -0.01em;color: var(--ink);} .about-intro .cred{margin-top: 1.5rem;} .about-portrait > img{object-position: center 8%;} .about-world{margin: 0 0 3.5rem;padding: clamp(1.75rem, 4vw, 2.5rem);border-radius: 24px;background: linear-gradient(135deg, rgba(96, 22, 196, 0.05) 0%, rgba(192, 59, 139, 0.05) 52%, rgba(238, 122, 69, 0.07) 100%);border: 1px solid var(--line);box-shadow: 0 28px 60px -44px rgba(96, 22, 196, 0.35);} .about-world-head{max-width: 38rem;margin-bottom: 2.25rem;} .about-world-head .eyebrow{display: block;font-family: var(--sub);font-size: 0.74rem;font-weight: 700;letter-spacing: 0.18em;text-transform: uppercase;color: var(--magenta);margin-bottom: 0.85rem;} .about-world-head h2{font-size: clamp(1.65rem, 3vw, 2.15rem);line-height: 1.12;letter-spacing: -0.02em;margin: 0 0 0.85rem;} .about-world-head p{margin: 0;color: var(--ink-soft);line-height: 1.6;} .about-route{display: grid;grid-template-columns: repeat(6, minmax(0, 1fr));gap: 12px;list-style: none;padding: 0;margin: 0 0 2rem;position: relative;} .about-prose .about-route, .about-prose .about-langs{padding-left: 0;} .about-prose .about-route .about-city, .about-prose .about-langs .about-lang{margin: 0;} .about-route::before{content: "";position: absolute;top: 6px;left: 8%;right: 8%;height: 2px;background: var(--grad);opacity: 0.55;z-index: 0;} .about-city{position: relative;z-index: 1;text-align: center;} .about-city-dot{display: block;width: 14px;height: 14px;margin: 0 auto 0.85rem;border-radius: 50%;background: var(--purple);border: 3px solid var(--paper-2);box-shadow: 0 0 0 2px rgba(96, 22, 196, 0.35);} .about-city-name{display: block;font-family: var(--display);font-size: 1rem;letter-spacing: -0.01em;color: var(--ink);} .about-city-region{display: block;margin-top: 0.2rem;font-family: var(--sub);font-size: 0.72rem;line-height: 1.35;color: var(--ink-soft);} .about-langs{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 14px;list-style: none;padding: 0;margin: 0;} .about-lang{padding: 1rem 1.1rem;border-radius: 16px;background: #fff;border: 1px solid var(--line);} .about-lang-top{display: flex;align-items: baseline;justify-content: space-between;gap: 0.75rem;} .about-lang-name{font-family: var(--display);font-size: 1.05rem;color: var(--ink);} .about-lang-level{font-family: var(--sub);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase;color: var(--magenta);} .about-lang-bar{display: block;height: 6px;margin-top: 0.75rem;border-radius: 999px;background: rgba(27, 19, 48, 0.08);overflow: hidden;} .about-lang-bar::after{content: "";display: block;height: 100%;width: var(--level, 50%);border-radius: inherit;background: var(--grad);transform-origin: left center;transform: scaleX(0);transition: transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .about-lang.is-visible .about-lang-bar::after{transform: scaleX(1);} .about-prose h2:first-of-type{margin-top: 0;} .about-credentials{margin: 3.5rem 0;padding: clamp(1.75rem, 4vw, 2.5rem);border-radius: 24px;background: #fff;border: 1px solid var(--line);box-shadow: 0 28px 60px -44px rgba(96, 22, 196, 0.28);} .about-credentials-head{max-width: 36rem;margin-bottom: 2rem;} .about-credentials-head .eyebrow{display: block;font-family: var(--sub);font-size: 0.74rem;font-weight: 700;letter-spacing: 0.18em;text-transform: uppercase;color: var(--purple);margin-bottom: 0.85rem;} .about-credentials-head h2{font-size: clamp(1.65rem, 3vw, 2.15rem);line-height: 1.12;letter-spacing: -0.02em;margin: 0 0 0.85rem;} .about-credentials-head p{margin: 0;color: var(--ink-soft);line-height: 1.6;} .about-credentials-grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: clamp(1.5rem, 4vw, 2.5rem);} .about-credentials-col h3{position: relative;font-family: var(--sub);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--magenta);margin: 0 0 1rem;padding-bottom: 0.65rem;border-bottom: none;} .about-credentials-col h3::after{content: "";position: absolute;left: 0;bottom: 0;width: 100%;height: 2px;background: rgba(96, 22, 196, 0.12);transform: scaleX(0);transform-origin: left center;transition: transform 0.65s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .about-credentials-col.reveal-photo.is-visible h3::after{transform: scaleX(1);} .js .about-credentials-col.reveal-photo h3{opacity: 0;transform: translateY(10px);transition: opacity 0.55s cubic-bezier(0.2, 0.7, 0.2, 1), transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .about-credentials-col.reveal-photo.is-visible h3{opacity: 1;transform: none;} .about-cred-list{list-style: none;padding: 0;margin: 0;display: grid;gap: 12px;} .about-prose .about-cred-list{padding-left: 0;} .about-prose .about-cred-list .about-cred{margin: 0;} .about-cred{display: grid;grid-template-columns: auto 1fr;gap: 1rem;align-items: center;padding: 1rem 1.05rem;border-radius: 16px;background: var(--paper-2);border: 1px solid var(--line);transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .about-credentials .about-cred.reveal-photo{transform: translateY(16px);} .js .about-credentials .about-cred.reveal-photo.is-visible{transform: none;} .js .about-credentials .about-cred.reveal-photo.is-visible:hover{transform: translateY(-2px);} .about-cred-list .about-cred.reveal-photo:nth-child(1){transition-delay: 0.06s;} .about-cred-list .about-cred.reveal-photo:nth-child(2){transition-delay: 0.13s;} .about-cred-list .about-cred.reveal-photo:nth-child(3){transition-delay: 0.2s;} .about-cred-list .about-cred.reveal-photo:nth-child(4){transition-delay: 0.27s;} .about-cred-list .about-cred.reveal-photo:nth-child(5){transition-delay: 0.34s;} .about-cred:hover{border-color: rgba(96, 22, 196, 0.22);box-shadow: 0 16px 36px -28px rgba(96, 22, 196, 0.45);} .about-cred-mark{flex-shrink: 0;width: 52px;height: 52px;border-radius: 14px;background: var(--grad);color: #fff;font-family: var(--display);font-size: clamp(0.62rem, 1.4vw, 0.78rem);font-weight: 700;letter-spacing: 0.03em;display: flex;align-items: center;justify-content: center;text-align: center;line-height: 1.1;transform: scale(0.84);transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1) 0.12s;} .js .about-cred.reveal-photo.is-visible .about-cred-mark{transform: scale(1);} .about-cred-body{display: grid;gap: 0.2rem;opacity: 0;transform: translateX(8px);transition: opacity 0.5s ease 0.18s, transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1) 0.18s;} .js .about-cred.reveal-photo.is-visible .about-cred-body{opacity: 1;transform: none;} .about-cred-title{font-family: var(--display);font-size: 1rem;line-height: 1.35;letter-spacing: -0.01em;color: var(--ink);} .about-cred-org{font-family: var(--sub);font-size: 0.84rem;line-height: 1.45;color: var(--ink-soft);} .about-training{margin-top: 2rem;padding-top: 1.75rem;border-top: 1px solid var(--line);} .about-training h3{font-family: var(--sub);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--magenta);margin: 0 0 1rem;} .about-training .cred{margin-top: 0;} .js .about-training.reveal-photo > h3{opacity: 0;transform: translateY(8px);transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .about-training.reveal-photo.is-visible > h3{opacity: 1;transform: none;} .js .about-training.reveal-photo .cred span{opacity: 0;transform: translateY(10px);transition: opacity 0.45s ease, transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);} .js .about-training.reveal-photo.is-visible .cred span:nth-child(1){opacity: 1;transform: none;transition-delay: 0.12s;} .js .about-training.reveal-photo.is-visible .cred span:nth-child(2){opacity: 1;transform: none;transition-delay: 0.22s;} .js .about-training.reveal-photo.is-visible .cred span:nth-child(3){opacity: 1;transform: none;transition-delay: 0.32s;} .back-link{font-family: var(--sub);font-weight: 700;color: var(--purple);display: inline-flex;align-items: center;gap: 0.35em;margin-bottom: 2rem;} .back-link:hover{color: var(--coral);} .post-header{padding-bottom: 2rem;margin-bottom: 2rem;border-bottom: 1px solid var(--line);} .post-header h1{font-size: clamp(2rem, 4vw, 2.75rem);margin: 0.5rem 0 0;} .blog-post-page{background: var(--bg);} .article-main{padding: clamp(2rem, 4vw, 3rem) 0 clamp(5rem, 8vw, 7rem);} .article-shell{max-width: var(--article-shell);} .article-layout{display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, min(var(--article-prose), 100%)) minmax(0, 1fr);} .article-breadcrumb, .article-header{grid-column: 2;} .article-breadcrumb{display: flex;flex-wrap: wrap;align-items: center;gap: 0.35rem 0.5rem;font-size: 0.875rem;line-height: 1.4;color: var(--text-muted);margin-bottom: 1.25rem;} .article-breadcrumb a{color: var(--text-muted);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .article-breadcrumb a:hover{color: var(--accent);background-size: 100% 1px;} .article-breadcrumb__sep{color: rgba(66, 84, 102, 0.45);} .article-breadcrumb__current{color: var(--text-muted);min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;} .article-header{margin-bottom: 1.5rem;position: static;z-index: auto;} .article-title{font-family: var(--display);font-size: clamp(2rem, 3.5vw, 3rem);font-weight: 600;line-height: 1.08;letter-spacing: -0.02em;color: var(--text);text-wrap: balance;margin: 0;} .article-title em{font-style: italic;} .article-date{display: block;margin-top: 1rem;font-size: 0.875rem;line-height: 1.4;color: var(--text-muted);} .article-authors{display: flex;flex-direction: column;gap: 0.5rem;margin-top: 1.5rem;} .article-author{display: flex;align-items: center;gap: 0.85rem;} .article-author__avatar{width: 48px;height: 48px;border-radius: 50%;object-fit: cover;flex-shrink: 0;} .article-author__name{font-family: var(--sub);font-size: 0.95rem;font-weight: 600;line-height: 1.3;color: var(--text);} .article-author__role{font-size: 0.875rem;line-height: 1.35;color: var(--text-muted);} .article-body{display: contents;} .article-body > :first-child{margin-top: 0;} .article-body > p, .article-body > ul, .article-body > ol, .article-body > blockquote, .article-body > h2, .article-body > h3, .article-body > table{grid-column: 2;} .article-body > p, .article-body > ul, .article-body > ol{font-size: 1.125rem;line-height: 1.65;color: var(--text-muted);margin: 0 0 1.25em;} .article-body > p.article-lede{font-size: clamp(1.2rem, 1.35vw, 1.3125rem);line-height: 1.65;color: var(--text);font-weight: 500;} .article-body > h2, .article-body > h2#frequently-asked-questions{grid-column: 2;font-family: var(--display);font-size: clamp(1.75rem, 2.2vw, 2rem);font-weight: 700;line-height: 1.15;letter-spacing: -0.015em;color: var(--text);margin: clamp(2rem, 3vw, 2.5rem) 0 1rem;border: 0;background: none;} .article-body > h2#frequently-asked-questions{grid-column: 1 / -1;width: 100%;max-width: min(var(--article-shell), 100%);justify-self: center;margin-top: clamp(3rem, 5vw, 3.5rem);margin-bottom: 1.25rem;} .article-body > h3{font-family: var(--display);font-size: clamp(1.25rem, 1.6vw, 1.375rem);font-weight: 600;line-height: 1.25;color: var(--text);margin: 2.5rem 0 1rem;} .article-body > table{width: 100%;border-collapse: collapse;margin: 0 0 1.5rem;font-size: 1rem;line-height: 1.55;} .article-body > table thead:has(th:empty){display: none;} .article-body > table th, .article-body > table td{border: 1px solid var(--border);padding: 0.7rem 0.85rem;text-align: left;vertical-align: top;} .article-body > table td:first-child{width: 38%;font-weight: 600;color: var(--text);background: var(--bg-muted);} .article-body > table td:last-child{color: var(--text-muted);} .article-body > h4, .article-body > h5, .article-body > h6{font-size: 1.125rem;font-weight: 600;margin: 2rem 0 0.75rem;} .article-body a{color: var(--accent);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .article-body a:hover{color: var(--magenta);background-size: 100% 1px;} .article-body strong{color: var(--text);font-weight: 600;} .article-body ul, .article-body ol{padding-left: 1.2rem;} .article-body li + li{margin-top: 0.5rem;} .article-body ul{list-style-type: disc;} .article-body blockquote{margin: 2rem 0;padding: 0;border: 0;background: none;font-size: clamp(1.375rem, 2vw, 1.5rem);font-weight: 500;line-height: 1.45;color: var(--text);font-style: italic;} .article-body blockquote p{margin: 0;} .article-body blockquote cite, .article-body blockquote footer{display: block;margin-top: 0.85rem;font-size: 1.125rem;font-style: normal;font-weight: 400;color: var(--text-muted);} .article-body .article-figure{grid-column: 1 / -1;width: 100%;max-width: min(var(--article-shell), 100%);justify-self: center;margin: 3rem auto 2rem;border-radius: 12px;overflow: hidden;box-shadow: var(--shadow-card);} .article-body .article-figure img{display: block;width: 100%;height: auto;} .article-body .article-figure figcaption{margin-top: 0.75rem;font-size: 0.875rem;line-height: 1.45;font-style: italic;color: var(--text-muted);} .js .article-body .article-figure{opacity: 0;transition: opacity 200ms var(--ease-out);} .js .article-body .article-figure.is-visible{opacity: 1;} .article-end{grid-column: 1 / -1;width: 100%;max-width: min(var(--article-shell), 100%);justify-self: center;margin-top: 6rem;} .surface-card{background: var(--bg);border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-card);} .article-subscribe{padding: clamp(1.75rem, 3vw, 2.25rem);} .article-subscribe h2{font-size: clamp(1.35rem, 2vw, 1.5rem);font-weight: 600;letter-spacing: -0.015em;color: var(--text);margin: 0 0 0.65rem;} .article-subscribe p{font-size: 1rem;line-height: 1.55;color: var(--text-muted);margin: 0 0 1.35rem;max-width: 42rem;} .article-subscribe-row{display: flex;flex-wrap: wrap;gap: 0.75rem;} .article-subscribe-row input[type="email"]{flex: 1 1 14rem;min-width: 0;padding: 0.85rem 1rem;border: 1px solid var(--border);border-radius: 10px;font: inherit;font-size: 1rem;color: var(--text);background: var(--bg);transition: border-color 150ms var(--ease-out), box-shadow 150ms var(--ease-out);} .article-subscribe-row input[type="email"]:focus{outline: none;border-color: rgba(96, 22, 196, 0.35);box-shadow: 0 0 0 3px rgba(96, 22, 196, 0.12);} .article-cards{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1rem;margin-top: 1rem;} .article-card{display: block;padding: 1.5rem 1.35rem;color: inherit;transition: transform 0.22s var(--ease-out), box-shadow 0.22s var(--ease-out);} .article-card:hover{transform: translateY(-2px);box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05), 0 22px 42px rgba(50, 50, 93, 0.12);color: inherit;} .article-card h3{font-size: 1.05rem;font-weight: 600;letter-spacing: -0.01em;color: var(--text);margin: 0 0 0.45rem;} .article-card p{font-size: 0.95rem;line-height: 1.5;color: var(--text-muted);margin: 0;} .blog-post-page .faq-accordion{grid-column: 1 / -1;width: 100%;max-width: min(var(--article-shell), 100%);justify-self: center;margin: 0 auto;border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-card);background: var(--bg);} .blog-post-page .faq-accordion + p{grid-column: 2;margin-top: 0.5rem;font-size: 0.95rem;line-height: 1.6;color: var(--text-muted);} .blog-post-page .faq-question{font-weight: 600;} .blog-post-page .faq-panel-inner p{font-size: 1.0625rem;line-height: 1.65;color: var(--text-muted);} .faq-accordion{margin: 1.5rem 0 2.5rem;border: 1px solid var(--border);border-radius: 16px;overflow: hidden;background: var(--bg);box-shadow: var(--shadow-card);} .faq-item{border-bottom: 1px solid var(--line);} .faq-item:last-child{border-bottom: 0;} .faq-question{display: flex;align-items: center;justify-content: space-between;gap: 1rem;padding: 1.15rem 1.35rem;font-family: var(--sub);font-weight: 700;font-size: 1.02rem;line-height: 1.45;color: var(--ink);cursor: pointer;list-style: none;transition: color 0.25s ease, background 0.25s ease;} .faq-question::-webkit-details-marker{display: none;} .faq-question::marker{content: "";} .faq-question:hover, .faq-item[open] .faq-question{color: var(--purple);background: rgba(96, 22, 196, 0.04);} .faq-chevron{flex-shrink: 0;width: 1.1rem;height: 1.1rem;color: var(--magenta);transform: rotate(0deg);transition: transform 0.35s ease, color 0.25s ease;} .faq-item[open] .faq-chevron{transform: rotate(90deg);color: var(--purple);} .faq-panel{display: grid;grid-template-rows: 0fr;transition: grid-template-rows 0.4s ease;} .faq-item[open] .faq-panel{grid-template-rows: 1fr;} .faq-panel-inner{overflow: hidden;} .faq-panel-inner > :first-child{margin-top: 0;} .faq-panel-inner > :last-child{margin-bottom: 0;} .faq-panel-inner p{padding: 0 1.35rem 1.25rem;color: var(--ink-soft);} @media (prefers-reduced-motion: reduce){.faq-panel, .faq-chevron, .faq-question{transition: none;} .hero::before{animation: none;} .js .scroll-reveal, .js .reveal-h{opacity: 1;transform: none;animation: none;transition: none;} .js .reveal-photo{opacity: 1;transform: none;transition: none;} .js .article-body .article-figure{opacity: 1;transition: none;} .case-study-banner img, .js .reveal-photo.is-visible.content-photo img, .js .reveal-photo.is-visible .content-photo img{transform: none;transition: none;} .js .about-lang.is-visible .about-lang-bar::after{transform: scaleX(1);transition: none;} .js .about-cred.reveal-photo .about-cred-mark, .js .about-cred.reveal-photo.is-visible .about-cred-mark, .js .about-cred.reveal-photo .about-cred-body, .js .about-cred.reveal-photo.is-visible .about-cred-body, .js .about-credentials-col.reveal-photo h3, .js .about-credentials-col.reveal-photo.is-visible h3, .js .about-credentials-col.reveal-photo.is-visible h3::after, .js .about-training.reveal-photo > h3, .js .about-training.reveal-photo.is-visible > h3, .js .about-training.reveal-photo .cred span, .js .about-training.reveal-photo.is-visible .cred span{opacity: 1;transform: none;transition: none;}} .service-list{display: grid;gap: 0;} .service-item{display: grid;grid-template-columns: auto 1fr;gap: 1.25rem;padding: 1.75rem 0;border-bottom: 1px solid var(--line);} .service-item:last-child{border-bottom: 0;} .service-number{font-family: var(--display);font-size: 1.5rem;color: var(--purple);line-height: 1;} .contact-layout{display: grid;grid-template-columns: 1fr 1.1fr;gap: 3rem;align-items: start;max-width: 56rem;margin-inline: auto;} .contact-details{background: var(--paper-2);border: 1px solid var(--line);border-radius: 20px;padding: 2rem;} .contact-details h2{margin: 0 0 1rem;font-size: 1.5rem;} .contact-details p{margin: 0 0 1rem;color: var(--ink-soft);} .contact-details a{color: var(--purple);} .contact-form{display: grid;gap: 1rem;} .form-field label{display: block;font-family: var(--sub);font-weight: 700;font-size: 0.875rem;margin-bottom: 0.4rem;} .form-field input, .form-field textarea, .form-field select{width: 100%;padding: 0.85rem 1rem;border: 1px solid var(--line);border-radius: 0.75rem;font: inherit;background: #fff;transition: border-color 0.2s ease, box-shadow 0.2s ease;} .form-field input:focus, .form-field textarea:focus, .form-field select:focus{outline: none;border-color: var(--purple);box-shadow: 0 0 0 3px rgba(96, 22, 196, 0.15);} .form-field textarea{min-height: 9rem;resize: vertical;} .form-status{padding: 0.85rem 1rem;border-radius: 0.75rem;font-size: 0.9375rem;display: none;} .form-status.is-visible{display: block;} .form-status.success{background: rgba(96, 22, 196, 0.08);color: #4f12a3;} .form-status.error{background: #fdecec;color: #8b1e1e;} .section-actions{margin-top: 8px;} .services-layout{display: grid;grid-template-columns: minmax(16rem, 0.78fr) minmax(0, 1.22fr);gap: clamp(2rem, 5vw, 4rem);align-items: start;} .services-intro{position: sticky;top: 6.5rem;padding-top: 0.35rem;border-left: 3px solid var(--magenta);padding-left: 1.35rem;} .services-intro .eyebrow{color: var(--magenta);display: block;margin-bottom: 1rem;} .services-intro h2{font-size: clamp(1.85rem, 3.2vw, 2.55rem);line-height: 1.12;letter-spacing: -0.02em;margin-bottom: 1rem;} .services-intro p{color: var(--ink-soft);font-size: 1.08rem;line-height: 1.65;max-width: 34ch;} .services-tracks{display: flex;flex-direction: column;gap: 1rem;} .service-track{--track-accent: var(--purple);background: var(--bg);border: 1px solid var(--border);border-radius: 20px;padding: clamp(1.35rem, 2.5vw, 1.75rem);box-shadow: var(--shadow-card);transition: transform 0.22s var(--ease-out), box-shadow 0.22s var(--ease-out), border-color 0.22s var(--ease-out);} .service-track:hover{transform: translateY(-2px);box-shadow: var(--shadow-hover);border-color: transparent;} .service-track--org{--track-accent: var(--purple);} .service-track--ind{--track-accent: var(--orange);} .service-track h2{font-size: clamp(1.15rem, 2vw, 1.32rem);line-height: 1.2;margin-bottom: 0.85rem;padding-bottom: 0.85rem;border-bottom: 1px solid var(--border);} .service-track > p:first-of-type{color: var(--ink-soft);font-size: 0.98rem;line-height: 1.6;margin-bottom: 0;} .service-track > p:nth-of-type(2){margin-top: 1.1rem;margin-bottom: 0.65rem;font-family: var(--sub);font-size: 0.72rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--track-accent);} .service-track ul{list-style: none;margin: 0;border: 1px solid var(--border);border-radius: 14px;overflow: hidden;background: var(--paper-2);} .service-track li{padding: 0.85rem 1rem;border-bottom: 1px solid var(--border);font-size: 0.94rem;line-height: 1.55;color: var(--ink-soft);} .service-track li:last-child{border-bottom: 0;} .service-track li::before{content: none;} .service-track li a{color: var(--ink);font-weight: 600;text-decoration: none;transition: color 0.15s var(--ease-out);} .service-track li a:hover{color: var(--track-accent);} .service-track > p:last-child{margin-top: 1.15rem;margin-bottom: 0;} .service-track > p:last-child a{display: inline-flex;align-items: center;gap: 0.35rem;font-family: var(--sub);font-weight: 600;color: var(--track-accent);transition: gap 0.15s var(--ease-out);} .service-track > p:last-child a::after{content: "→";transition: transform 0.15s var(--ease-out);} .service-track > p:last-child a:hover{gap: 0.55rem;} .service-track > p:last-child a:hover::after{transform: translateX(2px);} .nav-dropdown{position: relative;} .nav-dropdown-toggle{border: 0;background: transparent;font-family: var(--sub);font-weight: 500;font-size: 1rem;color: var(--ink-soft);cursor: pointer;padding: 0;} .nav-dropdown-toggle:hover, .nav-dropdown.is-open .nav-dropdown-toggle{color: var(--purple);} .nav-dropdown-panel{display: none;position: absolute;top: calc(100% + 12px);left: 0;min-width: 220px;padding: 12px;background: #fff;border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-hover);flex-direction: column;gap: 4px;z-index: 510;} .nav-dropdown-panel a{display: block;padding: 0.45rem 0.65rem;border-radius: 10px;} .nav-dropdown-panel a:hover{background: var(--paper-2);} .nav-dropdown.is-open .nav-dropdown-panel{display: flex;} .legal a{color: rgba(255, 255, 255, 0.72);} .legal a:hover{color: var(--orange);} @media (max-width: 880px){.cards, .split, .contact-layout{grid-template-columns: 1fr;} .split{gap: 40px;} .about .split .portrait, .about-intro .portrait{aspect-ratio: 4/5;height: auto;} .services-layout, .insights-layout{grid-template-columns: 1fr;gap: 2.25rem;} .services-intro, .insights-intro{position: static;max-width: 38rem;} .services-intro p, .insights-intro p{max-width: none;} .insight-feature__link{grid-template-columns: auto 1fr;gap: 1rem 1.15rem;} .insight-feature__arrow{display: none;}} @media (max-width: 820px){.nav-dropdown{width: 100%;} .nav-dropdown-toggle{width: 100%;text-align: left;padding: 0.65rem 0;} .nav-dropdown-panel{position: static;box-shadow: none;border: 0;padding: 0 0 0.5rem 1rem;min-width: 0;}} @media (max-width: 820px){.wrap{padding-inline: max(1.35rem, calc(env(safe-area-inset-left, 0px) + 1.15rem));} nav.links{display: none;position: absolute;top: 78px;left: 0;right: 0;flex-direction: column;align-items: stretch;gap: 0;padding: 1rem max(1.35rem, calc(env(safe-area-inset-left, 0px) + 1.15rem)) 1.5rem;background: rgba(255, 255, 255, 0.98);border-bottom: 1px solid var(--line);box-shadow: 0 12px 30px -20px rgba(27, 19, 48, 0.35);} nav.links.is-open{display: flex;z-index: 301;} nav.links a{padding: 0.65rem 0;} .nav-toggle{display: block;} .header-cta{display: none;} .bar{position: relative;} .foot{flex-direction: column;gap: 2rem;} .foot-col{flex: 1 1 100%;min-width: 0;}} @media (max-width: 880px){.proof-grid{grid-template-columns: 1fr;} .proof-item{height: auto;} .case-study-duo{grid-template-columns: 1fr;} .about-intro{grid-template-columns: 1fr;gap: 2rem;} .about-portrait{max-width: 380px;margin: 0 auto;} .about-route{grid-template-columns: repeat(3, minmax(0, 1fr));row-gap: 1.5rem;} .about-route::before{display: none;}} @media (max-width: 680px){.hero-copy{text-align: center;margin-inline: auto;align-items: center;} .hero h1{max-width: none;} .hero p.lede{margin-inline: auto;} .hero .cta{justify-content: center;} .hero-line{display: inline;} .page-masthead h1{max-width: none;} .case-study-glance{grid-template-columns: 1fr;justify-items: center;text-align: left;} .about-route{grid-template-columns: repeat(2, minmax(0, 1fr));} .about-langs{grid-template-columns: 1fr;} .about-credentials-grid{grid-template-columns: 1fr;} .article-cards{grid-template-columns: 1fr;} .article-breadcrumb__current{white-space: normal;} .proof-grid{grid-template-columns: 1fr;} .proof-item{height: auto;min-height: 0;} .cards{grid-template-columns: 1fr;} .card{grid-column: auto;} section.block{padding: 72px 0;}} .service-page{background: var(--bg);} .service-main{position: relative;z-index: 0;isolation: isolate;} .service-subnav{position: sticky;top: 78px;z-index: 400;background: var(--bg);border-bottom: 1px solid var(--border);} .service-subnav__inner{display: flex;align-items: center;justify-content: space-between;gap: 1rem;min-height: 56px;} .service-subnav__title{font-weight: 600;font-size: 0.95rem;color: var(--text);white-space: nowrap;} .service-subnav__tabs{display: flex;flex-wrap: wrap;gap: 0.35rem 1.25rem;} .service-subnav__tabs a{font-size: 0.875rem;color: var(--text-muted);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .service-subnav__tabs a:hover{color: var(--accent);background-size: 100% 1px;} .service-hero{padding: clamp(3rem, 6vw, 4.5rem) 0 6rem;} .service-hero__grid{display: grid;grid-template-columns: 1.05fr 0.95fr;gap: clamp(2rem, 4vw, 3.5rem);align-items: center;} .service-hero__copy h1{font-size: clamp(2.25rem, 4vw, 3.5rem);font-weight: 600;letter-spacing: -0.02em;line-height: 1.06;color: var(--text);text-wrap: balance;margin: 0 0 1.25rem;} .service-hero__copy h1 em{font-style: italic;} .service-hero__subhead{font-size: clamp(1.05rem, 1.5vw, 1.2rem);line-height: 1.65;color: var(--text-muted);max-width: 42rem;margin: 0 0 1.75rem;} .service-hero__cta{display: flex;flex-wrap: wrap;gap: 0.75rem;} .service-eyebrow{display: block;font-size: 0.8125rem;font-weight: 600;letter-spacing: 0.08em;text-transform: uppercase;color: var(--purple);margin-bottom: 0.85rem;} .service-eyebrow--center{text-align: center;} .service-prose{max-width: 60ch;} .service-prose p{font-size: 1.0625rem;line-height: 1.65;color: var(--text-muted);margin: 0 0 1.25em;} .service-link{display: inline-flex;align-items: center;gap: 0.35em;font-weight: 600;font-size: 0.95rem;color: var(--accent);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .service-link:hover{color: var(--purple);background-size: 100% 1px;} .service-value{padding-bottom: clamp(4rem, 7vw, 6rem);} .service-value__grid{display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));gap: 1rem;} .service-value-tile{padding: 1.35rem 1.25rem;} .service-value-tile h3{font-size: clamp(1.05rem, 1.2vw, 1.2rem);font-weight: 600;color: var(--text);margin: 0 0 0.65rem;} .service-value-tile p{font-size: 0.98rem;line-height: 1.6;color: var(--text-muted);margin: 0 0 0.85rem;} .service-logos{padding-bottom: clamp(4rem, 7vw, 6rem);} .service-logos__row{display: flex;flex-wrap: wrap;justify-content: center;gap: 2rem 2.5rem;} .service-logo{font-size: 0.82rem;font-weight: 600;letter-spacing: 0.06em;text-transform: uppercase;color: rgba(66, 84, 102, 0.55);} .service-logo--small{font-size: 0.72rem;} .service-problem{padding-bottom: clamp(4rem, 7vw, 6rem);} .service-problem__intro h2{font-size: clamp(1.85rem, 3vw, 2.5rem);font-weight: 700;letter-spacing: -0.015em;color: var(--text);max-width: 22ch;margin-bottom: 1.25rem;} .service-fact-cloud{display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));gap: 1rem;margin-top: 2.5rem;} .service-fact-card{grid-column: span 4;padding: 1rem 1.1rem;background: var(--bg);border: 1px solid var(--border);border-radius: 14px;box-shadow: var(--shadow-card);transform: rotate(var(--rotate, 0deg));} .service-fact-card:nth-child(3n + 2){grid-column: 3 / span 4;} .service-fact-card:nth-child(3n){grid-column: 5 / span 4;} .service-fact-card p{margin: 0;font-size: 0.95rem;line-height: 1.55;color: var(--text-muted);} .service-resource{max-width: 36rem;margin: 2.5rem auto 0;padding: 1.5rem 1.35rem;} .service-resource h3{font-size: 1.15rem;margin: 0 0 0.5rem;} .service-resource p{color: var(--text-muted);margin: 0 0 1rem;} .service-use-cases{padding: clamp(4rem, 7vw, 6rem) 0;} .service-use-cases h2{font-size: clamp(1.85rem, 3vw, 2.35rem);margin-bottom: 2rem;} .service-use-block h3{font-size: 1.25rem;margin: 0 0 0.65rem;} .service-use-block p{max-width: 60ch;color: var(--text-muted);margin: 0 0 0.85rem;} .service-use-block__logos{display: flex;flex-wrap: wrap;gap: 1rem 1.25rem;margin-top: 1.25rem;} .service-divider{border: 0;border-top: 1px solid var(--border);margin: 4rem 0;} .service-how-overview{padding-bottom: clamp(4rem, 7vw, 6rem);} .service-how-overview h2{font-size: clamp(1.85rem, 3vw, 2.35rem);margin-bottom: 2rem;} .service-how-overview__track{display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));gap: 1.25rem;position: relative;} .service-how-overview__track::before{content: "";position: absolute;top: 1.35rem;left: 8%;right: 8%;border-top: 1px dashed var(--border);z-index: 0;} .service-step-overview{position: relative;z-index: 1;} .service-step-num{display: inline-flex;align-items: center;justify-content: center;width: 2.5rem;height: 2.5rem;border: 2px solid var(--accent);border-radius: 50%;font-size: 1rem;font-weight: 600;color: var(--accent);margin-bottom: 0.85rem;background: var(--bg);} .service-step-overview h3{font-size: 1.05rem;margin: 0 0 0.45rem;} .service-step-overview p{font-size: 0.95rem;line-height: 1.55;color: var(--text-muted);margin: 0;} .service-step-dive{padding: clamp(3.5rem, 6vw, 5rem) 0;} .service-step-dive:nth-child(even){background: var(--bg-muted);} .service-step-dive__grid{display: grid;grid-template-columns: 1fr 1fr;gap: clamp(2rem, 4vw, 3rem);align-items: center;} .service-step-dive--reverse .service-step-dive__copy{order: 2;} .service-step-dive--reverse .service-step-dive__visual{order: 1;} .service-step-dive__copy h2{font-size: clamp(1.65rem, 2.5vw, 2.1rem);margin-bottom: 1rem;} .service-testimonials{padding: clamp(4rem, 7vw, 6rem) 0;} .service-testimonials h2{margin-bottom: 1.5rem;} .service-testimonials__stage{position: relative;min-height: 12rem;} .service-testimonial{display: none;margin: 0;} .service-testimonial.is-active{display: block;} .service-testimonial blockquote p{font-size: clamp(1.375rem, 2vw, 1.5rem);font-weight: 500;line-height: 1.45;color: var(--text);margin: 0 0 1.25rem;} .service-testimonial figcaption{display: flex;flex-wrap: wrap;align-items: center;gap: 0.35rem 0.75rem;color: var(--text-muted);font-size: 0.95rem;} .service-testimonial figcaption strong{color: var(--text);} .service-testimonials__dots{display: flex;gap: 0.5rem;margin-top: 1.5rem;} .service-testimonial-dot{width: 0.55rem;height: 0.55rem;border-radius: 50%;border: 0;background: rgba(66, 84, 102, 0.25);cursor: pointer;padding: 0;} .service-testimonial-dot.is-active{background: var(--accent);} .service-included{padding-bottom: clamp(4rem, 7vw, 6rem);} .service-included h2{margin-bottom: 1.75rem;} .service-included__grid{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1rem;} .service-included-col{padding: 1.35rem 1.25rem;} .service-included-col h3{font-size: 1.1rem;margin: 0 0 0.45rem;} .service-included-col p{color: var(--text-muted);margin: 0 0 0.85rem;} .service-included-col ul{list-style: disc;padding-left: 1.1rem;margin: 0;} .service-included-col li{font-size: 0.95rem;line-height: 1.55;color: var(--text-muted);margin-bottom: 0.35rem;} .service-resources{padding-bottom: clamp(4rem, 7vw, 6rem);} .service-resources h2{margin-bottom: 1.25rem;} .service-resources__cols{display: grid;grid-template-columns: 1fr 1fr;gap: 0.5rem 2rem;margin-bottom: 1.25rem;} .service-resources__cols ul{list-style: none;padding: 0;margin: 0;} .service-resources__cols li + li{margin-top: 0.65rem;} .service-final-cta{background: var(--bg-muted);padding: clamp(4rem, 7vw, 5.5rem) 0;} .service-final-cta__inner{text-align: center;max-width: 40rem;margin: 0 auto;} .service-final-cta h2{font-size: clamp(1.75rem, 3vw, 2.25rem);margin-bottom: 0.75rem;} .service-final-cta p{color: var(--text-muted);margin: 0 0 1.5rem;} .service-final-cta .service-hero__cta{justify-content: center;} .service-cross-sell{padding: clamp(3.5rem, 6vw, 5rem) 0 clamp(4rem, 7vw, 6rem);} .service-cross-sell__grid{display: grid;grid-template-columns: 1fr 1fr;gap: 1rem;} .service-cross{padding: 1.35rem 1.25rem;} .service-cross h3{font-size: 1.1rem;margin: 0 0 0.45rem;} .service-cross p{color: var(--text-muted);margin: 0 0 0.85rem;} .service-mock{background: var(--bg);border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-card);padding: 1.1rem 1rem 1rem;font-size: 0.82rem;} .service-mock__bar{display: flex;justify-content: space-between;align-items: center;gap: 0.5rem;margin-bottom: 0.85rem;font-weight: 600;color: var(--text);} .service-mock__pill{font-size: 0.68rem;font-weight: 600;padding: 0.2em 0.55em;border-radius: 999px;} .service-mock__pill--green{background: rgba(34, 139, 84, 0.12);color: #1f7a4f;} .service-mock__pill--amber{background: rgba(238, 122, 69, 0.15);color: #b45309;} .service-mock__score{display: flex;justify-content: space-between;align-items: baseline;margin-bottom: 0.75rem;} .service-mock__score-value{font-size: 1.65rem;font-weight: 700;color: var(--text);} .service-mock__score-value span{font-size: 0.95rem;font-weight: 500;color: var(--text-muted);} .service-mock__findings{list-style: none;padding: 0;margin: 0;} .service-mock__findings li{display: flex;align-items: flex-start;gap: 0.5rem;color: var(--text-muted);line-height: 1.45;margin-bottom: 0.45rem;} .dot{width: 0.55rem;height: 0.55rem;border-radius: 50%;margin-top: 0.35rem;flex-shrink: 0;} .dot--green{background: #22a066;} .dot--amber{background: var(--orange);} .dot--red{background: var(--coral);} .service-mock--toc{padding: 1.35rem 1.15rem 1.2rem;display: flex;flex-direction: column;gap: 0.75rem;} .service-toc__label{margin: 0;font-size: 0.68rem;font-weight: 600;letter-spacing: 0.06em;text-transform: uppercase;color: var(--text-muted);} .service-toc__subline{margin: 0;font-size: 0.82rem;line-height: 1.45;text-align: center;color: var(--text-muted);text-wrap: balance;} .service-toc__strip{display: flex;align-items: flex-start;gap: 0.2rem;margin-top: 0.15rem;} .service-toc__col{flex: 1 1 0;min-width: 0;} .service-toc__header{margin: 0 0 0.35rem;font-family: var(--body);font-size: 0.62rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase;color: var(--text);} .service-toc__col p{margin: 0;font-size: 0.72rem;line-height: 1.45;color: var(--text-muted);} .service-toc__arrow{flex: 0 0 auto;display: flex;align-items: center;justify-content: center;align-self: center;width: 1rem;color: var(--accent);font-size: 0.85rem;font-weight: 600;line-height: 1;padding-top: 0.15rem;} .service-toc__arrow::before{content: "→";} @media (max-width: 720px){.service-toc__strip{flex-direction: column;align-items: stretch;gap: 0;} .service-toc__arrow{width: auto;padding: 0.35rem 0;align-self: center;} .service-toc__arrow::before{content: "↓";}} .service-mock__swatches{display: grid;grid-template-columns: repeat(4, 1fr);gap: 0.45rem;margin-bottom: 0.85rem;} .service-mock__swatches span{height: 2.2rem;border-radius: 8px;} .service-mock__voice, .service-mock__note{color: var(--text-muted);line-height: 1.45;margin: 0 0 0.65rem;} .service-mock__type-label{display: block;font-size: 0.68rem;text-transform: uppercase;letter-spacing: 0.08em;color: var(--text-muted);} .service-mock__type-sample{display: block;margin-top: 0.25rem;color: var(--text-muted);} .service-mock__grid{display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.5rem;} .service-mock__grid div{background: var(--bg-muted);border-radius: 10px;padding: 0.55rem 0.6rem;} .service-mock__grid span{display: block;font-weight: 700;color: var(--accent);margin-bottom: 0.15rem;} .service-mock__grid p{margin: 0;color: var(--text-muted);line-height: 1.35;} .service-mock__feedback-row, .service-mock__doc-line{display: flex;justify-content: space-between;align-items: center;gap: 0.5rem;margin-bottom: 0.35rem;} .service-mock__doc-line p{margin: 0;flex: 1;color: var(--text-muted);} .tag{font-size: 0.68rem;font-weight: 600;padding: 0.15em 0.45em;border-radius: 6px;} .tag--green{background: rgba(34, 139, 84, 0.12);color: #1f7a4f;} .tag--amber{background: rgba(238, 122, 69, 0.15);color: #b45309;} .service-mock__meter label{display: block;font-size: 0.72rem;color: var(--text-muted);margin-bottom: 0.2rem;} .service-mock__meter .bar{height: 0.35rem;background: var(--bg-muted);border-radius: 999px;overflow: hidden;margin-bottom: 0.55rem;} .service-mock__meter .bar span{display: block;height: 100%;background: var(--purple);border-radius: inherit;} .service-mock__meter .bar--accent span{background: var(--accent);} @media (max-width: 1024px){.service-value__grid{grid-template-columns: repeat(2, minmax(0, 1fr));} .service-fact-card, .service-fact-card:nth-child(3n + 2), .service-fact-card:nth-child(3n){grid-column: span 6;} .service-how-overview__track{grid-template-columns: repeat(2, minmax(0, 1fr));}} @media (max-width: 820px){.service-subnav__inner{flex-direction: column;align-items: stretch;gap: 0.5rem;min-height: 0;padding-block: 0.65rem;} .service-subnav__title{white-space: normal;} .service-subnav__tabs{display: flex;flex-wrap: nowrap;justify-content: flex-start;gap: 0.75rem 1.25rem;overflow-x: auto;-webkit-overflow-scrolling: touch;scrollbar-width: none;padding-bottom: 0.15rem;scroll-padding-inline: max(1.35rem, calc(env(safe-area-inset-left, 0px) + 1.15rem));} .service-subnav__tabs::-webkit-scrollbar{display: none;} .service-hero{padding: 2.25rem 0 3rem;} .service-hero__grid{grid-template-columns: 1fr;gap: 2rem;} .service-hero__copy, .service-hero__visual{min-width: 0;} .service-hero__copy h1{font-size: clamp(1.85rem, 8vw, 2.35rem);} .service-hero__subhead{max-width: none;} .service-hero__cta{flex-direction: column;align-items: stretch;} .service-hero__cta .btn{justify-content: center;width: 100%;} .service-value__grid, .service-included__grid, .service-resources__cols, .service-cross-sell__grid, .service-how-overview__track, .service-step-dive__grid{grid-template-columns: 1fr;} .service-how-overview__track{gap: 1.5rem;} .service-how-overview__track::before{display: none;} .service-step-overview{display: grid;grid-template-columns: auto 1fr;grid-template-rows: auto auto;column-gap: 1rem;align-items: start;} .service-step-num{grid-row: 1 / span 2;margin-bottom: 0;} .service-step-overview h3{margin-top: 0.15rem;} .service-step-dive--reverse .service-step-dive__copy, .service-step-dive--reverse .service-step-dive__visual{order: unset;} .service-fact-cloud{grid-template-columns: 1fr;} .service-fact-card, .service-fact-card:nth-child(3n + 2), .service-fact-card:nth-child(3n){grid-column: 1 / -1;transform: none;} .service-mock{width: 100%;} .service-mock__grid{grid-template-columns: 1fr;} .service-value, .service-how-overview, .service-included, .service-resources{padding-bottom: 3rem;} .service-final-cta{padding: 3rem 0;} .service-cross-sell{padding: 2.5rem 0 3.5rem;} .service-value__grid > *, .service-included__grid > *, .service-cross-sell__grid > *, .service-resources__cols > *{min-width: 0;} .service-testimonial blockquote p{font-size: 1.2rem;}} .blog-post-page{background: var(--bg-muted);} .blog-post-page .article-main{padding: clamp(2rem, 4vw, 3rem) 0 clamp(4rem, 7vw, 6rem);} .blog-post-page .article-wrap{max-width: var(--article-shell);} .blog-post-page .article-body-layout{display: grid;grid-template-columns: minmax(0, 1fr) minmax(14rem, 17.5rem);gap: clamp(1.5rem, 3vw, 2.5rem);align-items: start;} .blog-post-page .article-sidebar__inner{position: sticky;top: calc(var(--header-height, 4.5rem) + 1.25rem);padding: 1.25rem;background: var(--bg);border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-card);} .blog-post-page .article-sidebar__title{font-size: 0.8125rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase;color: var(--text-muted);margin: 0 0 1rem;} .blog-post-page .article-sidebar__list{display: flex;flex-direction: column;gap: 0;} .blog-post-page .sidebar-related{display: block;padding: 0.85rem 0;border-top: 1px solid var(--border);color: inherit;text-decoration: none;transition: color 150ms var(--ease-out);} .blog-post-page .sidebar-related:first-child{border-top: 0;padding-top: 0;} .blog-post-page .sidebar-related:last-child{padding-bottom: 0;} .blog-post-page .sidebar-related:hover{color: inherit;} .blog-post-page .sidebar-related:hover .sidebar-related__title{color: var(--accent);} .blog-post-page .sidebar-related__title{display: block;font-size: 0.9375rem;font-weight: 600;line-height: 1.35;color: var(--text);margin-bottom: 0.35rem;transition: color 150ms var(--ease-out);} .blog-post-page .sidebar-related time{font-size: 0.8125rem;color: var(--text-muted);} .blog-post-page .article-hero{margin-bottom: clamp(2rem, 4vw, 2.75rem);} .blog-post-page .article-back{display: inline-flex;align-items: center;gap: 0.35rem;margin-bottom: 1.25rem;font-size: 0.875rem;font-weight: 600;color: var(--text-muted);text-decoration: none;transition: color 150ms var(--ease-out);} .blog-post-page .article-back .chev{width: 1rem;height: 0.9rem;transform: scaleX(-1);} .blog-post-page .article-back:hover{color: var(--accent);} .blog-post-page .article-hero__meta{display: flex;flex-wrap: wrap;align-items: center;gap: 0.65rem 1rem;margin-bottom: 1rem;font-size: 0.875rem;color: var(--text-muted);} .blog-post-page .article-hero__category{display: inline-flex;padding: 0.25rem 0.65rem;border-radius: 999px;background: rgba(96, 22, 196, 0.08);color: var(--purple);font-weight: 600;letter-spacing: 0.04em;text-transform: uppercase;font-size: 0.72rem;} .blog-post-page .article-title{font-size: clamp(2rem, 4.5vw, 2.75rem);line-height: 1.1;letter-spacing: -0.025em;} .blog-post-page .article-byline{display: flex;align-items: center;gap: 0.75rem;margin-top: 1.5rem;padding-top: 1.5rem;border-top: 1px solid var(--border);} .blog-post-page .article-byline__avatar{width: 40px;height: 40px;border-radius: 50%;object-fit: cover;} .blog-post-page .article-byline__name, .blog-post-page .article-byline__role{display: block;line-height: 1.35;} .blog-post-page .article-byline__name{font-size: 0.95rem;font-weight: 600;color: var(--text);} .blog-post-page .article-byline__role{font-size: 0.8125rem;color: var(--text-muted);} .blog-post-page .article-content{background: var(--bg);border: 1px solid var(--border);border-radius: 20px;box-shadow: var(--shadow-card);padding: clamp(1.75rem, 4vw, 2.5rem);} .blog-post-page .article-content > p, .blog-post-page .article-content > ul, .blog-post-page .article-content > ol{font-size: 1.0625rem;line-height: 1.75;margin: 0 0 1.5em;color: var(--text-muted);} .blog-post-page .article-content > p.article-lede{font-size: clamp(1.125rem, 1.35vw, 1.25rem);line-height: 1.7;color: var(--text);font-weight: 500;margin-bottom: 2rem;} .blog-post-page .article-content > h2, .blog-post-page .article-content > h2#frequently-asked-questions{font-size: clamp(1.5rem, 2.2vw, 1.75rem);font-weight: 600;line-height: 1.2;margin: 2.75rem 0 0.85rem;grid-column: unset;max-width: none;width: auto;} .blog-post-page .article-content > h2:first-child{margin-top: 0;} .blog-post-page .article-content > h3{font-size: clamp(1.125rem, 1.5vw, 1.25rem);margin: 2rem 0 0.65rem;} .blog-post-page .article-content > table{margin: 0 0 1.75rem;font-size: 0.98rem;} .blog-post-page .article-end{margin-top: clamp(3rem, 6vw, 4.5rem);padding-top: clamp(2rem, 4vw, 3rem);border-top: 1px solid var(--border);} .blog-post-page .article-related .eyebrow{display: block;margin-bottom: 0.75rem;} .blog-post-page .article-related h2{font-size: clamp(1.75rem, 3vw, 2.25rem);font-weight: 600;line-height: 1.15;letter-spacing: -0.02em;color: var(--text);margin: 0 0 1.5rem;} .blog-post-page .article-related__grid{display: grid;grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));gap: 1rem;} .blog-post-page .article-cta{margin-top: 1.75rem;padding: 1.35rem 1.25rem;background: var(--bg);border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-card);display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 1rem 1.5rem;} .blog-post-page .article-cta p{margin: 0;flex: 1 1 16rem;font-size: 1rem;line-height: 1.55;color: var(--text-muted);} .blog-post-page .article-cta .btn.btn-ink{color: var(--magenta);border-color: rgba(192, 59, 139, 0.22);background: var(--bg);flex-shrink: 0;} .blog-post-page .article-cta .btn.btn-ink .chev{color: currentColor;} .blog-post-page .article-cta .btn.btn-ink:hover, .blog-post-page .article-cta .btn.btn-ink:focus-visible{color: var(--magenta);border-color: var(--magenta);box-shadow: var(--shadow-hover);transform: scale(1.02);} .blog-post-page .faq-accordion{grid-column: unset;max-width: none;width: auto;margin: 0 0 1.5rem;box-shadow: none;background: var(--bg-muted);} .blog-post-page .faq-accordion + p{grid-column: unset;margin-top: 1.5rem;font-size: 0.9375rem;line-height: 1.65;} .insights-spotlight__head{display: flex;flex-wrap: wrap;align-items: flex-end;justify-content: space-between;gap: 1.25rem 2rem;margin-bottom: 1.75rem;} .insights-spotlight__head h2{font-size: clamp(1.85rem, 3.2vw, 2.55rem);line-height: 1.12;letter-spacing: -0.02em;margin: 0.35rem 0 0.65rem;} .insights-spotlight__head p{color: var(--ink-soft);font-size: 1.05rem;line-height: 1.65;margin: 0;max-width: 42ch;} .insights-carousel__track{display: flex;gap: 1rem;overflow-x: auto;scroll-snap-type: x mandatory;scroll-behavior: smooth;-webkit-overflow-scrolling: touch;scrollbar-width: none;padding: 0.25rem 0 0.5rem;} .insights-carousel__track::-webkit-scrollbar{display: none;} .insight-card{flex: 0 0 min(88%, 20rem);scroll-snap-align: start;} .insight-card__link{display: flex;flex-direction: column;height: 100%;min-height: 14rem;padding: 1.35rem 1.25rem;background: var(--bg);border: 1px solid var(--border);border-radius: 16px;box-shadow: var(--shadow-card);color: inherit;text-decoration: none;transition: transform 0.22s var(--ease-out), box-shadow 0.22s var(--ease-out), border-color 0.22s var(--ease-out);} .insight-card__link:hover{transform: translateY(-3px);box-shadow: var(--shadow-hover);border-color: transparent;color: inherit;} .insight-card__section{display: inline-block;margin-bottom: 0.75rem;font-size: 0.72rem;font-weight: 700;letter-spacing: 0.12em;text-transform: uppercase;color: var(--purple);} .insight-card:nth-child(2) .insight-card__section{color: var(--magenta);} .insight-card:nth-child(3) .insight-card__section{color: var(--orange);} .insight-card__link h3{font-size: clamp(1.05rem, 1.8vw, 1.2rem);line-height: 1.28;margin: 0 0 0.65rem;} .insight-card__link p{flex: 1;margin: 0 0 1rem;font-size: 0.95rem;line-height: 1.55;color: var(--text-muted);display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;} .insight-card__link time{font-size: 0.8125rem;color: var(--text-muted);} .insights-carousel__nav{display: flex;justify-content: flex-end;gap: 0.5rem;margin-top: 0.85rem;} .insights-carousel__btn{display: inline-flex;align-items: center;justify-content: center;width: 2.5rem;height: 2.5rem;border: 1px solid var(--border);border-radius: 999px;background: var(--bg);color: var(--purple);cursor: pointer;transition: background-color 0.2s var(--ease-out), border-color 0.2s var(--ease-out), color 0.2s var(--ease-out);} .insights-carousel__btn .chev{width: 1.1rem;height: 1rem;} .insights-carousel__btn[data-carousel-prev] .chev{transform: scaleX(-1);} .insights-carousel__btn:hover, .insights-carousel__btn:focus-visible{background: var(--purple);border-color: var(--purple);color: #fff;outline: none;} .blog-card__section{display: inline-block;margin-bottom: 0.65rem;font-size: 0.72rem;font-weight: 700;letter-spacing: 0.12em;text-transform: uppercase;color: var(--purple);} @media (max-width: 960px){.blog-post-page .article-body-layout{grid-template-columns: 1fr;} .blog-post-page .article-sidebar{display: none;}} @media (min-width: 768px){.insight-card{flex-basis: min(46%, 18rem);}} @media (min-width: 1024px){.insight-card{flex-basis: min(32%, 17rem);}} .blog-post-page .article-content a{color: var(--accent);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .blog-post-page .article-content a:hover{color: var(--magenta);background-size: 100% 1px;} .blog-post-page .article-content strong{color: var(--text);font-weight: 600;} .blog-post-page .article-content ul, .blog-post-page .article-content ol{padding-left: 1.25rem;color: var(--text-muted);} .blog-post-page .article-content li + li{margin-top: 0.45rem;} .blog-post-page .article-content ul{list-style-type: disc;} .blog-post-page .article-content blockquote{margin: 2rem 0;padding: 0;border: 0;background: none;font-size: clamp(1.25rem, 1.8vw, 1.4rem);font-weight: 500;line-height: 1.5;color: var(--text);font-style: italic;} .blog-post-page .article-content blockquote p{margin: 0;} .blog-post-page .article-content blockquote cite, .blog-post-page .article-content blockquote footer{display: block;margin-top: 0.75rem;font-size: 1rem;font-style: normal;font-weight: 400;color: var(--text-muted);} .blog-post-page .article-content .article-figure{margin: 2rem 0 1.75rem;border-radius: 12px;overflow: hidden;box-shadow: var(--shadow-card);} .blog-post-page .article-content .article-figure img{display: block;width: 100%;height: auto;} .blog-post-page .article-content .article-figure figcaption{margin-top: 0.65rem;font-size: 0.875rem;line-height: 1.45;font-style: italic;color: var(--text-muted);} .js .blog-post-page .article-content .article-figure{opacity: 0;transition: opacity 200ms var(--ease-out);} .js .blog-post-page .article-content .article-figure.is-visible{opacity: 1;} .blog-post-page .article-content > table th, .blog-post-page .article-content > table td{border: 1px solid var(--border);padding: 0.7rem 0.85rem;text-align: left;vertical-align: top;} .blog-post-page .article-content > table td:first-child{width: 38%;font-weight: 600;color: var(--text);background: var(--bg-muted);} .blog-post-page .article-content > table td:last-child{color: var(--text-muted);} .blog-post-page .article-content > table thead:has(th:empty){display: none;} .contact-page{background: var(--bg-muted);} .contact-main{padding-bottom: clamp(3rem, 6vw, 5rem);} .contact-hero{position: relative;overflow: hidden;background: var(--grad);color: #fff;padding: clamp(3rem, 6vw, 4.75rem) 0 clamp(4.5rem, 8vw, 6rem);} .contact-hero__bg{position: absolute;inset: 0;background: radial-gradient(120% 90% at 12% 0%, rgba(27, 19, 48, 0.34), transparent 60%), radial-gradient(110% 120% at 90% 100%, rgba(27, 19, 48, 0.34), transparent 55%);pointer-events: none;} .contact-hero__inner{position: relative;z-index: 1;max-width: 42rem;} .contact-hero__eyebrow{display: block;font-family: var(--sub);font-size: 0.74rem;font-weight: 700;letter-spacing: 0.18em;text-transform: uppercase;color: rgba(255, 255, 255, 0.82);margin-bottom: 0.85rem;} .contact-hero h1{font-size: clamp(2.35rem, 5vw, 3.5rem);line-height: 1.06;letter-spacing: -0.025em;margin: 0 0 1rem;text-wrap: balance;color: #fff;} .contact-hero__lede{font-size: clamp(1.0625rem, 1.5vw, 1.2rem);line-height: 1.65;color: rgba(255, 255, 255, 0.9);margin: 0;max-width: 38ch;} .contact-actions{margin-top: clamp(-3rem, -6vw, -2.25rem);position: relative;z-index: 2;} .contact-actions__grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1rem;} .contact-body{padding: clamp(2rem, 4vw, 3rem) 0 0;} .contact-body__grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1rem;} .contact-card{background: var(--bg);border: 1px solid var(--border);border-radius: 20px;padding: clamp(1.35rem, 2.5vw, 1.75rem);box-shadow: var(--shadow-card);} .contact-card--primary{background: var(--grad) 0 0 / 100% 3px no-repeat, var(--bg);} .contact-card--email .contact-card__email{display: inline-block;margin-top: 0.35rem;font-size: clamp(1.05rem, 1.5vw, 1.2rem);font-weight: 600;color: var(--magenta);text-decoration: none;background-image: linear-gradient(currentColor, currentColor);background-size: 0% 1px;background-repeat: no-repeat;background-position: 0 100%;transition: color 150ms var(--ease-out), background-size 150ms var(--ease-out);} .contact-card--email .contact-card__email:hover{color: var(--purple);background-size: 100% 1px;} .contact-card--wide{grid-column: 1 / -1;} .contact-card--quiet{grid-column: 1 / -1;background: transparent;border-style: dashed;box-shadow: none;} .contact-card--quiet p{margin: 0;font-size: 0.9375rem;line-height: 1.6;color: var(--text-muted);} .contact-card--quiet a{color: var(--accent);text-decoration: none;} .contact-card--quiet a:hover{color: var(--magenta);} .contact-card__label{display: block;margin-bottom: 0.65rem;font-size: 0.72rem;font-weight: 700;letter-spacing: 0.12em;text-transform: uppercase;color: var(--magenta);} .contact-card--primary .contact-card__label{color: var(--purple);} .contact-card h2{font-size: clamp(1.25rem, 2vw, 1.45rem);line-height: 1.2;margin: 0 0 0.65rem;color: var(--text);} .contact-card > p{margin: 0 0 1.15rem;font-size: 0.98rem;line-height: 1.6;color: var(--text-muted);} .contact-card .btn-solid{margin-top: 0.15rem;} .contact-tips{list-style: none;margin: 0;padding: 0;display: grid;gap: 1rem;} @media (min-width: 768px){.contact-tips{grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1.25rem;}} .contact-tips li{padding-top: 1rem;border-top: 1px solid var(--border);} .contact-tips strong{display: block;margin-bottom: 0.35rem;font-size: 0.95rem;color: var(--text);} .contact-tips span{display: block;font-size: 0.9375rem;line-height: 1.55;color: var(--text-muted);} .contact-facts{margin: 0;} .contact-facts div + div{margin-top: 1rem;padding-top: 1rem;border-top: 1px solid var(--border);} .contact-facts dt{font-size: 0.72rem;font-weight: 700;letter-spacing: 0.1em;text-transform: uppercase;color: var(--text-muted);margin-bottom: 0.25rem;} .contact-facts dd{margin: 0;font-size: 0.98rem;line-height: 1.45;color: var(--text);} .contact-steps{margin: 0;padding: 0;list-style: none;counter-reset: contact-step;} .contact-steps li{position: relative;padding-left: 2.35rem;font-size: 0.9375rem;line-height: 1.55;color: var(--text-muted);} .contact-steps li + li{margin-top: 0.85rem;} .contact-steps li::before{counter-increment: contact-step;content: counter(contact-step);position: absolute;left: 0;top: 0.05rem;width: 1.65rem;height: 1.65rem;border-radius: 999px;display: grid;place-items: center;font-size: 0.78rem;font-weight: 700;color: #fff;background: var(--grad);} @media (max-width: 820px){.contact-actions__grid, .contact-body__grid{grid-template-columns: 1fr;} .contact-card--wide, .contact-card--quiet{grid-column: auto;}}