.st3-home { --st3-ink:#111a2e; --st3-muted:#5c687c; --st3-line:#e2e7f0; --st3-soft:#f5f7fb; color:var(--st3-ink); background:#fff; font-family:inherit; overflow:hidden; }
.st3-home *, .st3-home *::before, .st3-home *::after { box-sizing:border-box; }
.st3-home-wrap { width:min(100% - 40px, 1240px); margin:0 auto; }
.st3-narrow { width:min(100% - 40px, 800px); }
.st3-home-section { padding:var(--st3-space) 0; }
.st3-home h1,.st3-home h2,.st3-home h3,.st3-home p { margin-top:0; }
.st3-home h1,.st3-home h2,.st3-home h3 { color:var(--st3-ink); font-family:inherit; letter-spacing:-.035em; }
.st3-home p { color:var(--st3-muted); line-height:1.7; }
.st3-home a { text-decoration:none; }
.st3-eyebrow,.st3-section-kicker { color:var(--st3-accent)!important; font-size:.75rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.st3-home-hero { position:relative; padding:clamp(72px,11vw,150px) 0 clamp(76px,10vw,140px); background:linear-gradient(120deg,#f7f9ff 0%,#fff 54%,#eef2ff 100%); border-bottom:1px solid var(--st3-line); }
.st3-home-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.55; background-image:linear-gradient(rgba(38,78,210,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(38,78,210,.07) 1px,transparent 1px); background-size:44px 44px; mask-image:linear-gradient(to right,#000,transparent 85%); }
.st3-hero-grid { position:relative; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); align-items:center; gap:clamp(36px,8vw,110px); }
.st3-hero-copy { max-width:690px; }
.st3-hero-copy h1 { max-width:720px; margin-bottom:24px; font-size:clamp(2.7rem,6vw,5.4rem); line-height:.98; font-weight:780; }
.st3-hero-description { max-width:620px; margin-bottom:30px!important; font-size:clamp(1rem,1.4vw,1.18rem); }
.st3-button-row { display:flex; flex-wrap:wrap; gap:12px; }
.st3-button { display:inline-flex; justify-content:center; align-items:center; gap:8px; min-height:47px; padding:12px 19px; border-radius:calc(var(--st3-radius) - 6px); border:1px solid transparent; font-size:.94rem; font-weight:700; line-height:1; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.st3-button:hover,.st3-button:focus-visible { transform:translateY(-2px); box-shadow:0 10px 22px rgba(25,50,110,.15); }
.st3-button-primary { color:#fff!important; background:var(--st3-button); }
.st3-button-secondary { color:var(--st3-ink)!important; background:#fff; border-color:#cfd7e8; }
.st3-button-light { color:var(--st3-ink)!important; background:#fff; }
.st3-hero-art { position:relative; justify-self:center; width:min(100%,420px); aspect-ratio:1; }
.st3-hero-core { position:absolute; z-index:2; display:grid; place-items:center; inset:32%; border-radius:50%; background:radial-gradient(circle at 35% 28%,#6788ff,#284bda 58%,#15236d); color:#fff; font-weight:800; font-size:clamp(1.6rem,3vw,2.4rem); letter-spacing:.05em; box-shadow:0 20px 55px rgba(34,69,200,.35); }
.st3-orbit { position:absolute; inset:6%; border:1px solid rgba(35,87,255,.28); border-radius:50%; }
.st3-orbit-two { inset:18%; border-style:dashed; transform:rotate(50deg); }
.st3-orb { position:absolute; z-index:3; width:13px; aspect-ratio:1; border-radius:50%; background:var(--st3-accent); box-shadow:0 0 0 8px rgba(35,87,255,.1); }
.st3-orb-a { top:14%; left:19%; }.st3-orb-b { right:10%; bottom:27%; background:#0facb7; }.st3-orb-c { bottom:7%; left:34%; width:8px; background:#ffb53d; }
.st3-introduction { text-align:center; }.st3-introduction h2,.st3-section-heading h2,.st3-about h2,.st3-project h2,.st3-final h2,.st3-faq h2 { margin-bottom:18px; font-size:clamp(2rem,4vw,3.2rem); line-height:1.08; }
.st3-introduction > div > p:not(.st3-section-kicker):not(.st3-topic-line) { font-size:1.07rem; }
.st3-direct-answer { padding:18px 22px; margin:28px 0 20px!important; border-left:3px solid var(--st3-accent); border-radius:0 10px 10px 0; background:var(--st3-soft); text-align:left; }.st3-direct-answer strong { color:var(--st3-ink); }
.st3-topic-line { color:var(--st3-ink)!important; font-size:.86rem; font-weight:700; }.st3-topic-line span { margin:0 8px; color:var(--st3-accent); }
.st3-pillars { background:var(--st3-soft); border-top:1px solid var(--st3-line); border-bottom:1px solid var(--st3-line); }
.st3-section-heading { max-width:720px; margin-bottom:40px; }.st3-section-heading p:last-child { margin-bottom:0; }
.st3-grid { display:grid; gap:18px; }.st3-pillar-grid { grid-template-columns:repeat(3,1fr); }
.st3-card { position:relative; border:1px solid var(--st3-line); border-radius:var(--st3-radius); background:#fff; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }.st3-card:hover { border-color:color-mix(in srgb,var(--st3-accent) 40%,var(--st3-line)); transform:translateY(-3px); box-shadow:0 15px 38px rgba(18,31,67,.08); }
.st3-pillar-card { padding:30px; }.st3-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:var(--st3-accent); background:color-mix(in srgb,var(--st3-accent) 10%,#fff); }.st3-icon svg { width:23px; height:23px; }
.st3-card h3 { margin:22px 0 10px; font-size:1.45rem; }.st3-card p { margin-bottom:21px; font-size:.94rem; }
.st3-text-link { display:inline-flex; align-items:center; gap:7px; color:var(--st3-accent)!important; font-size:.9rem; font-weight:750; }.st3-text-link span { transition:transform .2s ease; }.st3-text-link:hover span { transform:translateX(4px); }
.st3-weekly { padding-top:calc(var(--st3-space) + 10px); }.st3-weekly-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; max-width:none; }.st3-weekly-heading > p { max-width:440px; margin-bottom:4px; }
.st3-weekly-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr); gap:30px; }.st3-featured-post { overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.85fr); border:1px solid var(--st3-line); border-radius:var(--st3-radius); background:#fff; }.st3-post-image { min-height:100%; background:#e9edf6; }.st3-featured-image { display:block; width:100%; height:100%; min-height:370px; object-fit:cover; }.st3-featured-content { align-self:center; padding:32px; }.st3-featured-content h3 { margin:14px 0; font-size:clamp(1.4rem,2.2vw,2.05rem); line-height:1.13; }.st3-featured-content h3 a,.st3-secondary-post h3 a { color:var(--st3-ink)!important; }.st3-featured-content p { font-size:.94rem; }
.st3-post-meta { display:flex; flex-wrap:wrap; gap:8px 11px; color:#6b778b; font-size:.73rem; font-weight:700; }.st3-post-meta span:first-child { color:var(--st3-accent); }.st3-byline { margin:12px 0!important; color:#6a7484!important; font-size:.78rem!important; font-weight:700; }
.st3-secondary-posts { display:grid; align-content:start; gap:17px; }.st3-secondary-post { display:grid; grid-template-columns:118px 1fr; gap:15px; align-items:start; padding-bottom:17px; border-bottom:1px solid var(--st3-line); }.st3-secondary-image { height:86px; overflow:hidden; border-radius:10px; background:#e9edf6; }.st3-secondary-thumb { width:100%; height:100%; object-fit:cover; }.st3-secondary-post h3 { margin:7px 0 0; font-size:1rem; line-height:1.25; }
.st3-image-placeholder { display:grid; place-items:center; width:100%; height:100%; min-height:150px; color:var(--st3-accent); background:linear-gradient(135deg,#eef2ff,#f8f9fc); }.st3-image-placeholder svg { width:36px; }
.st3-empty { display:flex; align-items:center; gap:14px; min-height:100px; padding:22px; border:1px dashed #b9c4d8; border-radius:var(--st3-radius); background:#fafbfe; }.st3-empty p { margin:0; }
.st3-categories { background:var(--st3-soft); }.st3-category-grid { grid-template-columns:repeat(3,1fr); }.st3-category-card { min-height:242px; padding:26px; color:var(--st3-ink)!important; }.st3-category-card h3 { font-size:1.14rem; }.st3-category-card p { font-size:.9rem; }.st3-card-arrow { position:absolute; right:25px; bottom:22px; color:var(--st3-accent); font-size:1.15rem; }
.st3-split-heading { display:flex; justify-content:space-between; gap:40px; max-width:none; }.st3-split-heading > div { max-width:570px; }.st3-split-heading > p { max-width:400px; margin:23px 0 0; }.st3-service-grid { grid-template-columns:repeat(5,1fr); }.st3-service-card { padding:23px; }.st3-service-card h3 { font-size:1.05rem; }.st3-service-card p { font-size:.86rem; }.st3-proof { color:var(--st3-ink)!important; font-size:.78rem!important; font-weight:700; }
.st3-why { background:#111a2e; }.st3-why .st3-section-kicker { color:#94b0ff!important; }.st3-why h2,.st3-why h3 { color:#fff; }.st3-why-grid { grid-template-columns:repeat(4,1fr); gap:0; border:1px solid rgba(255,255,255,.18); border-radius:var(--st3-radius); overflow:hidden; }.st3-why-grid article { min-height:205px; padding:27px; border-right:1px solid rgba(255,255,255,.18); }.st3-why-grid article:last-child { border-right:0; }.st3-why-grid h3 { margin:19px 0 10px; font-size:1.05rem; }.st3-why-grid p { margin:0; color:#bdc8df; font-size:.88rem; }.st3-number { color:#94b0ff; font-size:1.4rem; }
.st3-project { padding-top:calc(var(--st3-space) * .8); padding-bottom:calc(var(--st3-space) * .8); }.st3-project-inner { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:clamp(32px,5vw,65px); border-radius:var(--st3-radius); background:var(--st3-accent); }.st3-project .st3-section-kicker,.st3-project h2 { color:#fff!important; }.st3-project h2 { margin-bottom:14px; }.st3-project p:not(.st3-section-kicker) { max-width:700px; margin-bottom:0; color:rgba(255,255,255,.85); }
.st3-about { border-top:1px solid var(--st3-line); }.st3-about-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(40px,9vw,140px); }.st3-about-copy { margin-bottom:27px!important; color:var(--st3-ink)!important; font-size:1.12rem; line-height:1.75!important; }.st3-about-detail { margin-top:18px; padding:20px; border-left:2px solid var(--st3-accent); background:var(--st3-soft); }.st3-about-detail h3 { margin-bottom:8px; font-size:1rem; }.st3-about-detail p { margin:0; font-size:.91rem; }
.st3-team { background:var(--st3-soft); }.st3-team-grid { grid-template-columns:repeat(4,1fr); }.st3-team-card { overflow:hidden; padding:22px; }.st3-team-photo { display:block; width:calc(100% + 44px); height:190px; margin:-22px -22px 20px; object-fit:cover; }.st3-team-card h3 { margin:0 0 5px; font-size:1.12rem; }.st3-role { color:var(--st3-accent)!important; font-size:.78rem!important; font-weight:700; }.st3-team-card p:last-child { margin-bottom:0; font-size:.88rem; }
.st3-faq { border-top:1px solid var(--st3-line); }.st3-faq h2 { margin-bottom:30px; }.st3-faq-list { border-top:1px solid var(--st3-line); }.st3-faq details { border-bottom:1px solid var(--st3-line); }.st3-faq summary { display:flex; justify-content:space-between; gap:20px; padding:20px 0; color:var(--st3-ink); font-size:1.03rem; font-weight:730; cursor:pointer; list-style:none; }.st3-faq summary::-webkit-details-marker { display:none; }.st3-faq summary span { color:var(--st3-accent); font-size:1.35rem; line-height:.8; }.st3-faq details[open] summary span { transform:rotate(45deg); }.st3-faq details p { padding:0 25px 20px 0; margin:0; font-size:.94rem; }
.st3-final { text-align:center; padding-bottom:calc(var(--st3-space) + 20px); background:linear-gradient(180deg,#fff,#f2f5ff); }.st3-final-inner { max-width:800px; }.st3-final p:not(.st3-section-kicker) { max-width:600px; margin:0 auto 27px; font-size:1.04rem; }
.st3-home a:focus-visible,.st3-home summary:focus-visible { outline:3px solid color-mix(in srgb,var(--st3-accent) 45%,#fff); outline-offset:3px; }
@media (max-width: 1024px) { .st3-service-grid { grid-template-columns:repeat(3,1fr); }.st3-weekly-grid,.st3-featured-post { grid-template-columns:1fr; }.st3-featured-image { min-height:260px; }.st3-why-grid { grid-template-columns:repeat(2,1fr); }.st3-why-grid article:nth-child(2) { border-right:0; }.st3-why-grid article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.18); }.st3-team-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width: 720px) { .st3-home-wrap,.st3-narrow { width:min(100% - 32px,1240px); }.st3-home-section { padding:clamp(58px,13vw,var(--st3-space)) 0; }.st3-hero-grid,.st3-about-grid { grid-template-columns:1fr; }.st3-hero-copy h1 { font-size:clamp(2.55rem,12vw,4.3rem); }.st3-hero-art { width:min(74vw,330px); }.st3-pillar-grid,.st3-category-grid { grid-template-columns:1fr; }.st3-pillar-card { padding:25px; }.st3-weekly-heading,.st3-split-heading,.st3-project-inner { align-items:flex-start; flex-direction:column; }.st3-weekly-heading { gap:4px; }.st3-secondary-post { grid-template-columns:104px 1fr; }.st3-service-grid { grid-template-columns:repeat(2,1fr); }.st3-why-grid { grid-template-columns:1fr; }.st3-why-grid article,.st3-why-grid article:nth-child(2) { border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }.st3-why-grid article:last-child { border-bottom:0; }.st3-button { width:auto; }.st3-project-inner .st3-button { width:100%; }.st3-about-copy { font-size:1.03rem; }.st3-team-grid { grid-template-columns:1fr; } }
@media (max-width: 420px) { .st3-button-row { display:grid; grid-template-columns:1fr; }.st3-button { width:100%; }.st3-service-grid { grid-template-columns:1fr; }.st3-featured-content { padding:24px; }.st3-secondary-post { grid-template-columns:92px 1fr; }.st3-secondary-image { height:76px; } }
@media (prefers-reduced-motion: reduce) { .st3-home *, .st3-home *::before, .st3-home *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
