:root{--bg: #f2f5f7;--surface: #ffffff;--ink: #12263a;--muted: #58697a;--line: #d5dde4;--accent: #0b6e78;--accent-ink: #ffffff;--mark: #f0b429;--focus: #0b6e78;--display: "Bricolage Grotesque", system-ui, sans-serif;--body: "Source Serif 4", Georgia, serif}@media (prefers-color-scheme: dark){:root{--bg: #0f1b27;--surface: #16283a;--ink: #e8eef3;--muted: #9fb0bf;--line: #27405a;--accent: #56c2cc;--accent-ink: #0f1b27;--focus: #56c2cc}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.65}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}h1,h2,h3,.brand{font-family:var(--display);line-height:1.1;margin:0}p{margin:0 0 1em;max-width:68ch}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--bg);padding:.5rem 1rem;z-index:10}.skip:focus{left:0}.header{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.header__inner{max-width:72rem;margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.brand{font-weight:800;font-size:1.2rem;text-decoration:none;color:var(--ink)}.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:.25rem 1.25rem;flex-wrap:wrap}.nav a{font-family:var(--display);font-weight:500;font-size:.95rem;color:var(--ink);text-decoration:none;padding:.35rem 0;border-bottom:2px solid transparent}.nav a:hover{border-bottom-color:var(--mark)}.menu-btn{display:none;font:600 .9rem var(--display);background:none;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:.4rem .8rem;cursor:pointer}@media (max-width: 820px){.menu-btn{display:inline-block}.nav{display:none;width:100%}.nav--open{display:block}.nav ul{flex-direction:column;gap:0}.nav a{display:block;padding:.6rem 0;border-bottom:1px solid var(--line)}}.hero{background:var(--ink);color:var(--bg)}@media (prefers-color-scheme: dark){.hero{background:#0a1520;color:#e8eef3}}.hero__inner{max-width:72rem;margin:0 auto;padding:4rem 1.25rem 4.5rem;display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:end}.hero h1{font-weight:800;font-size:clamp(2.6rem,7vw,5.2rem);letter-spacing:-.03em}.hero__tagline{font-family:var(--display);font-size:1.35rem;margin:1rem 0 .5rem;color:var(--mark)}.hero__desc{color:#c3d0db}.services{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;gap:.5rem;flex-wrap:wrap}.services li{border:1px solid #47617a;border-radius:999px;padding:.25rem .9rem;font-family:var(--display);font-size:.9rem}.latest{display:flex;flex-direction:column;gap:.6rem;text-decoration:none;color:inherit;background:var(--surface);color:var(--ink);border-radius:10px;padding:1.5rem;border-left:6px solid var(--mark);transition:transform .15s ease}.latest:hover{transform:translateY(-3px)}.latest__label{font-family:var(--display);font-size:.85rem;color:var(--muted)}.latest__title{font-family:var(--display);font-weight:700;font-size:1.5rem;line-height:1.15}.latest__excerpt{color:var(--muted);font-size:.98rem}.latest__date{font-size:.9rem;color:var(--accent)}@media (max-width: 820px){.hero__inner{grid-template-columns:1fr;padding:2.5rem 1.25rem 3rem;gap:2rem}}@media (prefers-reduced-motion: reduce){.latest{transition:none}.latest:hover{transform:none}}.layout{max-width:72rem;margin:0 auto;padding:3rem 1.25rem;display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:3rem;align-items:start}@media (max-width: 960px){.layout{grid-template-columns:1fr}}.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.section-head h2{font-size:1.8rem}.search input{font:inherit;font-size:.95rem;padding:.5rem .8rem;min-width:14rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.posts{list-style:none;margin:0;padding:0}.post{padding:1.5rem 0;border-top:1px solid var(--line)}.post:first-child{border-top:2px solid var(--ink)}.post time{font-family:var(--display);font-size:.9rem;color:var(--muted)}.post h3{font-size:1.5rem;font-weight:700;margin:.3rem 0 .6rem}.post h3 a{color:var(--ink);text-decoration:none}.post h3 a:hover{color:var(--accent);text-decoration:underline;text-decoration-thickness:2px}.post p{color:var(--muted);margin-bottom:.6rem}.read{font-family:var(--display);font-weight:600;font-size:.95rem}.older{margin-top:1.5rem}.older a{font-family:var(--display);font-weight:600}.empty{border:1px dashed var(--line);border-radius:8px;padding:1.5rem}.empty button{font:600 .9rem var(--display);background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:.5rem 1rem;cursor:pointer}.sidebar{display:grid;gap:1.5rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:1.25rem}.card h2{font-size:1.2rem;margin-bottom:.75rem}.card p{font-size:.98rem}.muted{color:var(--muted)}.popular{list-style:none;margin:0;padding:0}.popular li{padding:.8rem 0;border-top:1px solid var(--line)}.popular li:first-child{border-top:0;padding-top:0}.popular a{font-family:var(--display);font-weight:600;line-height:1.25;display:inline-block}.popular p{margin:.25rem 0 0;color:var(--muted);font-size:.92rem}.footer{border-top:1px solid var(--line);background:var(--surface)}.footer__inner{max-width:72rem;margin:0 auto;padding:1.75rem 1.25rem;font-size:.92rem;color:var(--muted)}.footer p{margin-bottom:.3rem}.top{font-family:var(--display);font-weight:600}.single{max-width:52rem;margin:0 auto;padding:3rem 1.25rem}.h1{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.02em;margin:.4rem 0 1rem}.article time{font-family:var(--display);font-size:.9rem;color:var(--muted)}.lede{font-size:1.2rem}.notice{border-left:4px solid var(--mark);background:var(--surface);padding:.9rem 1.1rem;border-radius:0 8px 8px 0}.chips{list-style:none;display:flex;gap:.5rem;flex-wrap:wrap;padding:0;margin:0 0 1.5rem}.chips a{display:inline-block;font-family:var(--display);font-size:.85rem;padding:.2rem .8rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink)}.chips a:hover{border-color:var(--accent)}.chips a[aria-current]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pager{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);font-family:var(--display);font-weight:600}.pager a{max-width:22rem}.prose{overflow-wrap:anywhere}.prose h1,.prose h2,.prose h3,.prose h4{margin:2rem 0 .75rem}.prose h2{font-size:1.6rem}.prose h3{font-size:1.3rem}.prose img,.prose iframe,.prose video{max-width:100%;height:auto}.prose iframe{aspect-ratio:16 / 9;width:100%;border:0}.prose pre,.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem}.prose pre{background:var(--ink);color:#e8eef3;padding:1rem 1.25rem;border-radius:8px;overflow-x:auto;line-height:1.5}.prose :not(pre)>code{background:var(--surface);border:1px solid var(--line);padding:.05em .35em;border-radius:4px}.prose table{display:block;overflow-x:auto;border-collapse:collapse;max-width:100%}.prose th,.prose td{border:1px solid var(--line);padding:.4rem .7rem;text-align:left}.prose blockquote{margin:1.25rem 0;padding-left:1rem;border-left:4px solid var(--line);color:var(--muted)}.prose p,.prose li{max-width:72ch}.prose .separator,.prose .tr-caption-container{text-align:center}.topics{display:grid;gap:1.75rem;margin:1.5rem 0 2rem}.topics__group{font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.6rem}.topics ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.75rem}.topics a{display:flex;flex-direction:column;gap:.15rem;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--mark);border-radius:8px;padding:.8rem 1rem;transition:border-color .15s ease}.topics a:hover{border-color:var(--accent);border-left-color:var(--accent)}.topics a span{font-family:var(--display);font-weight:700;font-size:1.05rem}.topics small{color:var(--muted);font-size:.85rem}.topics--compact{gap:1rem;margin:0 0 2.5rem}.topics--compact ul{display:flex;flex-wrap:wrap;gap:.5rem}.topics--compact a{flex-direction:row;border-left-width:1px;border-radius:999px;padding:.3rem .9rem}.topics--compact a span{font-size:.92rem;font-weight:600}.topics--compact .topics__group{margin-bottom:.4rem;font-size:.8rem}.home-topics .section-head a{font-family:var(--display);font-weight:600}@media (prefers-reduced-motion: reduce){.topics a{transition:none}}.crumb{font-family:var(--display);font-size:.9rem;margin-bottom:.25rem}.search--wide input{width:100%;max-width:28rem;margin:.5rem 0 1.5rem}.qsection{margin-bottom:2.25rem}.qsection h2{font-size:1.35rem;padding-bottom:.4rem;border-bottom:2px solid var(--ink);margin-bottom:.5rem}.qlist{margin:0;padding-left:2.2rem}.qlist li{padding:.6rem 0;border-bottom:1px solid var(--line)}.qlist li::marker{font-family:var(--display);font-weight:700;color:var(--muted)}.badge{font:700 .7rem var(--display);text-transform:uppercase;letter-spacing:.06em;background:var(--mark);color:#12263a;border-radius:4px;padding:.1rem .45rem;margin-left:.6rem;vertical-align:middle}.asked{display:block;color:var(--muted);font-size:.85rem;margin-top:.15rem}.header{background:#fffefa;border-bottom-color:#e7e8df}.header__inner{max-width:82rem;min-height:5.4rem;padding:.8rem 1.5rem;flex-wrap:nowrap}.brand{display:inline-flex;align-items:center;gap:.7rem;flex-shrink:0}.brand__mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:50%;background:#c7e879;color:#153d36;font:800 1.2rem var(--display);letter-spacing:-.08em}.brand__name{font-size:1rem;letter-spacing:-.025em}.header .nav{margin-left:auto}.header .nav ul{gap:.25rem 1.65rem}.header .nav a{font-size:.88rem;color:#52615a}.header .nav a:hover,.header .nav a[aria-current=page]{color:#183f37;border-bottom-color:#bddc75}.nav-dropdown{position:relative}.nav-dropdown__trigger{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem 0;border:0;border-bottom:2px solid transparent;background:transparent;color:#52615a;font:500 .88rem var(--display);cursor:pointer}.nav-dropdown__trigger:hover,.nav-dropdown--open .nav-dropdown__trigger{color:#183f37;border-bottom-color:#bddc75}.nav-dropdown__trigger>span{color:#789353;font-size:1rem}.nav-dropdown__menu{position:absolute;z-index:8;top:calc(100% + 1.2rem);left:50%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.4rem;width:min(65rem,calc(100vw - 2rem));max-height:min(70vh,42rem);overflow:auto;padding:1.5rem;transform:translate(-50%);border:1px solid #e1e6db;background:#fffefa;box-shadow:0 16px 40px #122d2529}.nav-dropdown__menu[hidden]{display:none}.nav-dropdown__group h2{margin:0 0 .7rem;color:#82966d;font:600 .68rem var(--display);letter-spacing:.1em;text-transform:uppercase}.nav-dropdown__group ul{display:grid;gap:.1rem;margin:0;padding:0;list-style:none}.header .nav .nav-dropdown__group a{display:block;padding:.35rem 0;border:0;color:#314c3d;font:500 .79rem/1.4 var(--display);text-decoration:none}.header .nav .nav-dropdown__group a:hover,.header .nav .nav-dropdown__group a[aria-current=page]{color:#66824f;text-decoration:underline;text-decoration-color:#bddc75;text-underline-offset:3px}.nav-dropdown__home{padding-right:.7rem;border-right:1px solid #e1e6db}.nav-dropdown__home a span{margin-left:.25rem;color:#789353}.header__contact{display:inline-flex;align-items:center;gap:.85rem;padding:.7rem 1rem;border-radius:3px;background:#173f37;color:#fffefa;font:600 .88rem var(--display);text-decoration:none;white-space:nowrap;transition:background .2s ease}.header__contact:hover{background:#285c4d}.menu-btn{color:#183f37;border-color:#d9ded3;border-radius:3px}.footer{background:#123b35;border-top:0}.footer__inner{max-width:82rem;padding:1.6rem 1.5rem;color:#d6e1d8;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer p{margin:0}.footer .top{color:#d6e1d8}.landing{color:#183d36;font-family:var(--display)}.landing-container{max-width:78rem;margin:0 auto;padding-right:1.5rem;padding-left:1.5rem}.landing-hero{background:#173f37;color:#fffefa;overflow:hidden}.landing-hero__grid{max-width:82rem;min-height:39rem;margin:0 auto;padding:4rem 1.5rem 1.15rem;display:grid;grid-template-columns:1.04fr .96fr;grid-template-rows:1fr auto;align-items:center;column-gap:4.3rem}.landing-hero__copy{padding:.4rem 0 2.25rem}.eyebrow{display:flex;align-items:center;gap:.65rem;margin:0 0 1.55rem;color:#708078;font:600 .72rem var(--display);letter-spacing:.13em;text-transform:uppercase}.eyebrow>span{width:1.55rem;height:1px;background:#92b858}.landing-hero .eyebrow{color:#d2ddcf}.landing-hero h1{max-width:11ch;color:#fffefa;font-size:clamp(3.4rem,6.8vw,6.4rem);font-weight:500;letter-spacing:-.075em;line-height:.99}.landing-hero h1 span,.contact-band h2 span{color:#c7e879}.landing-hero__lede{max-width:36rem;margin:1.5rem 0 0;color:#d1dcd4;font:400 1.08rem/1.75 var(--body)}.landing-hero__actions{display:flex;align-items:center;gap:1.7rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:3.25rem;padding:.75rem 1.2rem;font:600 .88rem var(--display);text-decoration:none;transition:background .2s ease,color .2s ease,transform .2s ease}.button:hover{transform:translateY(-2px)}.button--light{background:#c7e879;color:#173f37}.button--light:hover{background:#d8f19a}.home-arrow{display:inline-block;font:500 1.05rem var(--display);transition:transform .2s ease}a:hover .home-arrow{transform:translate(2px,-2px)}.text-link{display:inline-flex;align-items:center;gap:.6rem;color:#235344;font:600 .88rem var(--display);text-decoration:none;border-bottom:1px solid #b8c7ba;padding-bottom:.3rem}.text-link:hover{border-color:#235344}.text-link--light{color:#f2f3e9;border-color:#738c7e}.text-link--light:hover{border-color:#d1e789}.landing-hero__note{display:flex;align-items:center;gap:.75rem;margin-top:3.2rem;padding-top:1.15rem;border-top:1px solid #45665d}.landing-hero__note-mark{color:#c7e879;font-size:1.3rem}.landing-hero__note p{margin:0;color:#d1dcd4;font:400 .83rem/1.5 var(--display)}.landing-hero__visual{position:relative;height:27rem;min-width:0}.landing-hero__visual:before{position:absolute;z-index:1;top:-1rem;right:1rem;bottom:1rem;left:-1rem;border:1px solid #87a28d;content:"";pointer-events:none}.landing-hero__visual img{position:relative;z-index:0;display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.68)}.visual-caption{position:absolute;right:-1rem;bottom:1.4rem;z-index:2;display:flex;align-items:center;gap:.65rem;padding:.9rem 1rem;background:#fffefa;color:#173f37;font:600 .8rem var(--display)}.visual-caption__dot{width:.55rem;height:.55rem;border-radius:50%;background:#a9cf59}.visual-index{position:absolute;right:0;top:-1.7rem;color:#e6ecdf;font:600 .72rem var(--display);letter-spacing:.1em}.visual-index span{padding:0 .3rem;color:#8aa196}.landing-hero__bottom{grid-column:1 / -1;display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid #45665d;color:#b9c9bc;font:500 .72rem var(--display);letter-spacing:.04em}.landing-hero__bottom a{color:#e8eee5;text-decoration:none}.landing-hero__bottom a span{margin-left:.35rem;color:#c7e879}.services-section{padding:6.5rem 0 7rem;background:#fffefa}.section-intro{margin-bottom:2.7rem}.section-intro__row{display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-intro h2,.insights-heading h2{color:#173f37;font-size:clamp(2.4rem,4.4vw,4rem);font-weight:500;line-height:1.05;letter-spacing:-.065em}.section-intro h2 span,.insights-heading h2 span{color:#82966d}.section-intro__row>p{max-width:23rem;margin:0 0 .2rem;color:#69766f;font:400 .98rem/1.7 var(--body)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dce2d8;border-bottom:1px solid #dce2d8}.service-card{min-height:22rem;padding:1.45rem 1.55rem 1.55rem;display:flex;flex-direction:column;border-right:1px solid #dce2d8}.service-card:first-child{padding-left:0}.service-card:last-child{padding-right:0;border-right:0}.service-card__top{display:flex;align-items:center;justify-content:space-between}.service-card__number{color:#87958b;font:600 .72rem var(--display);letter-spacing:.08em}.service-card__icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid #dce2d8;border-radius:50%;color:#46745a;font-size:1.2rem}.service-card h3{margin:1.8rem 0 .65rem;color:#173f37;font-size:1.45rem;font-weight:600;letter-spacing:-.04em}.service-card>p{min-height:5.2rem;margin:0;color:#69766f;font:400 .91rem/1.7 var(--body)}.service-card__tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0;margin:1rem 0 1.2rem}.service-card__tags li{padding:.28rem .55rem;background:#f1f4eb;color:#526b56;font:500 .68rem var(--display)}.service-card__link,.insight-card__read{display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:auto;padding-top:.9rem;border-top:1px solid #e3e6df;color:#285744;font:600 .8rem var(--display);text-decoration:none}.about-section{padding:6.8rem 0;background:#f1f2e9}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.about-photo{position:relative;min-height:30rem}.about-photo:after{position:absolute;top:1rem;right:-1rem;bottom:-1rem;left:1rem;border:1px solid #9ba88f;content:"";pointer-events:none}.about-photo img{position:relative;z-index:1;display:block;width:100%;height:30rem;object-fit:cover;filter:saturate(.72)}.about-photo__label{position:absolute;z-index:2;left:-1rem;bottom:1.5rem;max-width:15rem;padding:.9rem 1rem;background:#fffefa;color:#315243;font:600 .82rem/1.45 var(--display)}.about-copy h2{max-width:12ch;color:#173f37;font-size:clamp(2.5rem,4vw,3.9rem);font-weight:500;letter-spacing:-.07em;line-height:1.03}.about-copy h2 span{color:#82966d}.about-copy__lede{margin:1.3rem 0 .65rem;color:#334c40;font:600 1rem/1.65 var(--display)}.about-copy__body{margin:0;color:#69766f;font:400 .93rem/1.75 var(--body)}.capability-list{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1rem;list-style:none;padding:1.3rem 0;margin:1.4rem 0 1.5rem;border-top:1px solid #d5dacf;border-bottom:1px solid #d5dacf;color:#41584a;font:500 .78rem var(--display)}.capability-list li{display:flex;align-items:center;gap:.5rem}.capability-list li span{color:#789353;font-size:.9rem}.insights-section{padding:6.3rem 0 7rem;background:#fffefa}.insights-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:2.4rem}.insights-heading .eyebrow{margin-bottom:1rem}.insights-heading .text-link{margin-bottom:.35rem}.insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dce2d8}.insight-card{display:flex;flex-direction:column;min-height:17rem;padding:1.15rem 1.4rem 1.4rem;border-right:1px solid #dce2d8}.insight-card:first-child{padding-left:0}.insight-card:last-child{padding-right:0;border-right:0}.insight-card__index{color:#8a9a86;font:600 .72rem var(--display);letter-spacing:.08em}.insight-card time{margin-top:1.2rem;color:#879188;font:500 .72rem var(--display)}.insight-card h3{margin:.55rem 0 .6rem;font-size:1.22rem;font-weight:600;letter-spacing:-.03em}.insight-card h3 a{color:#173f37;text-decoration:none}.insight-card h3 a:hover{color:#66824f}.insight-card>p{margin:0 0 1rem;color:#69766f;font:400 .84rem/1.65 var(--body)}.insight-card__read{padding-top:.75rem}.contact-band{overflow:hidden;background:#173f37;color:#fffefa}.contact-band__inner{position:relative;min-height:19rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.eyebrow--light{margin-bottom:1rem;color:#d2ddcf}.contact-band h2{color:#fffefa;font-size:clamp(2.8rem,5.4vw,5rem);font-weight:500;letter-spacing:-.075em;line-height:.98}.button--outline{position:relative;z-index:1;border:1px solid #8ba295;color:#fffefa}.button--outline:hover{background:#fffefa;color:#173f37}.contact-band__spark{position:absolute;right:22%;bottom:-4.5rem;color:#275447;font-size:16rem;line-height:1}@media (max-width: 900px){.header__inner{flex-wrap:wrap}.header .nav{margin-left:auto}.header__contact{display:none}.landing-hero__grid{min-height:35rem;column-gap:2.2rem}.landing-hero__visual{height:23rem}.about-grid{gap:3rem}.about-photo,.about-photo img{min-height:26rem;height:26rem}}@media (max-width: 640px){.header__inner{padding:.7rem 1rem}.brand__name{font-size:.9rem}.landing-container{padding-right:1.15rem;padding-left:1.15rem}.landing-hero__grid{min-height:0;padding:3.1rem 1.15rem 1rem;grid-template-columns:1fr;gap:2rem}.landing-hero__copy{padding:0}.landing-hero h1{font-size:clamp(3.2rem,14vw,5rem)}.landing-hero__lede{font-size:1rem}.landing-hero__actions{gap:1rem}.landing-hero__note{margin-top:2rem}.landing-hero__visual{height:19rem;margin-left:.5rem}.visual-caption{right:-.5rem}.landing-hero__bottom{margin-top:.3rem;font-size:.66rem}.services-section,.insights-section{padding:4.5rem 0}.section-intro__row,.insights-heading{align-items:start;flex-direction:column}.section-intro__row{gap:1rem}.section-intro h2,.insights-heading h2{font-size:clamp(2.5rem,11vw,3.5rem)}.service-grid{grid-template-columns:1fr}.service-card,.service-card:first-child,.service-card:last-child{min-height:0;padding:1.35rem 0;border-right:0;border-bottom:1px solid #dce2d8}.service-card:last-child{border-bottom:0}.service-card h3{margin-top:1.1rem}.service-card>p{min-height:0}.about-section{padding:4.5rem 0}.about-grid{grid-template-columns:1fr;gap:3rem}.about-photo,.about-photo img{min-height:20rem;height:20rem}.about-copy h2{font-size:clamp(2.7rem,11vw,3.7rem)}.insights-heading{gap:1.2rem;margin-bottom:1.6rem}.insights-grid{grid-template-columns:1fr}.insight-card,.insight-card:first-child,.insight-card:last-child{min-height:0;padding:1.1rem 0 1.3rem;border-right:0;border-bottom:1px solid #dce2d8}.insight-card:last-child{border-bottom:0}.contact-band__inner{min-height:0;padding-top:3.8rem;padding-bottom:3.8rem;align-items:start;flex-direction:column}.contact-band h2{font-size:clamp(3rem,12vw,4.3rem)}.contact-band__spark{right:-3rem;bottom:-2.5rem;font-size:10rem}.footer__inner{padding:1.4rem 1.15rem}}@media (max-width: 820px){.nav-dropdown{width:100%}.nav-dropdown__trigger{display:flex;width:100%;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--line);text-align:left}.nav-dropdown__menu{position:static;width:auto;max-height:55vh;margin:.6rem 0;padding:.8rem;transform:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;border:1px solid #e1e6db;box-shadow:none}.nav-dropdown__home{padding-right:0;border-right:0}.header .nav .nav-dropdown__group a{padding:.35rem 0;border:0}}@media (max-width: 420px){.nav-dropdown__menu{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.button,.header__contact,.home-arrow{transition:none}.button:hover{transform:none}}.java-page.single{max-width:82rem;padding:1.6rem 1.5rem 5rem;font-family:var(--display)}.java-page__breadcrumb{display:flex;align-items:center;gap:.6rem;margin-bottom:1.1rem;color:#849188;font:500 .75rem var(--display)}.java-page__breadcrumb a{color:#55745f;text-decoration:none}.java-page__breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}.java-page__breadcrumb [aria-current=page]{max-width:22rem;overflow:hidden;color:#4d5e53;text-overflow:ellipsis;white-space:nowrap}.java-page__hero{position:relative;overflow:hidden;margin-bottom:1.5rem;padding:2.4rem 2.7rem 2rem;background:#173f37;color:#fffefa}.java-page__hero:after{position:absolute;top:-5rem;right:4rem;width:14rem;height:14rem;border:1px solid rgb(199 232 121 / 22%);border-radius:50%;box-shadow:0 0 0 2rem #c7e8790d,0 0 0 4rem #c7e8790a;content:"";pointer-events:none}.java-page__hero .eyebrow{position:relative;z-index:1;margin-bottom:.85rem;color:#d0ddce}.java-page__hero h1{position:relative;z-index:1;max-width:20ch;color:#fffefa;font-size:clamp(2.3rem,5vw,4rem);font-weight:600;letter-spacing:-.065em;line-height:1.04}.java-page__hero>p:not(.eyebrow){position:relative;z-index:1;max-width:42rem;margin:.85rem 0 0;color:#d4dfd7;font:400 1rem/1.7 var(--body)}.java-page__hero-meta{display:flex;align-items:center;gap:.55rem;margin-top:1.3rem;color:#c7e879;font:600 .72rem var(--display);letter-spacing:.03em}.java-page__layout{display:grid;grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);gap:1.5rem;align-items:start}.java-page__sidebar{position:sticky;top:7rem;max-height:calc(100vh - 8rem);overflow:auto;border:1px solid #dfe5dc;background:#fffefa}.java-page__lesson-list>summary{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:1rem;color:#173f37;font:700 .88rem var(--display);cursor:pointer;list-style:none}.java-page__lesson-list>summary::-webkit-details-marker{display:none}.java-page__lesson-list>summary:after{color:#789353;content:"⌄"}.java-page__lesson-list[open]>summary{border-bottom:1px solid #e1e6db}.java-page__lesson-count{margin-left:auto;color:#88948b;font:500 .67rem var(--display)}.java-page__lesson-groups{display:grid;gap:1rem;padding:1rem}.java-page__lesson-groups h2{margin:0 0 .5rem;color:#87967d;font:700 .64rem var(--display);letter-spacing:.1em;text-transform:uppercase}.java-page__lesson-groups ul{display:grid;gap:.1rem;margin:0;padding:0;list-style:none}.java-page__lesson-groups a{display:block;padding:.42rem .55rem;border-left:2px solid transparent;color:#506257;font:500 .75rem/1.4 var(--display);text-decoration:none}.java-page__lesson-groups a:hover{background:#f3f5ed;color:#173f37}.java-page__lesson-groups a[aria-current=page]{border-left-color:#8faf55;background:#f1f4e8;color:#173f37;font-weight:700}.java-page__article{min-width:0;padding:clamp(1.25rem,3.4vw,2.75rem);border:1px solid #e1e6db;background:#fffefa;box-shadow:0 8px 24px #1635280a}.java-page__article .prose{color:#354a3d;font:400 1rem/1.82 var(--body)}.java-page__article .prose>:first-child{margin-top:0}.java-page__article .prose h1,.java-page__article .prose h2,.java-page__article .prose h3,.java-page__article .prose h4{color:#173f37;font-family:var(--display);font-weight:700;letter-spacing:-.035em;line-height:1.2}.java-page__article .prose h1{margin:1.5rem 0 .8rem;font-size:1.8rem}.java-page__article .prose h2{margin:2.3rem 0 .8rem;padding-bottom:.55rem;border-bottom:1px solid #e2e7dd;font-size:1.5rem}.java-page__article .prose h3{margin:1.8rem 0 .7rem;font-size:1.2rem}.java-page__article .prose h4{margin:1.4rem 0 .6rem;font-size:1rem}.java-page__article .prose p{margin:0 0 1rem;max-width:76ch}.java-page__article .prose a{color:#2c7253;text-decoration-thickness:1px;text-underline-offset:3px}.java-page__article .prose a:hover{color:#173f37;text-decoration-thickness:2px}.java-page__article .prose ul,.java-page__article .prose ol{padding-left:1.5rem}.java-page__article .prose li{padding:.12rem 0}.java-page__article .prose blockquote{padding:1rem 1.2rem;border-left-color:#9dbc66;background:#f3f5ed;color:#536457}.java-page__article .prose pre{margin:1.2rem 0 1.5rem;padding:1.2rem 1.35rem;border:1px solid #31584a;border-radius:4px;background:#17352f;color:#e6efe4;font-size:.86rem;-moz-tab-size:4;tab-size:4}.java-page__article .prose :not(pre)>code{border-color:#e1e7dc;background:#f2f4ed;color:#254b3c}.java-page__article .prose table{width:100%;margin:1.2rem 0 1.5rem;border-collapse:collapse;font:400 .86rem/1.55 var(--display)}.java-page__article .prose th{background:#eff3e9;color:#264d3d;font-weight:700}.java-page__article .prose td,.java-page__article .prose th{padding:.65rem .8rem;border:1px solid #dfe5dc}.java-page__article .prose [style*=background],.java-page__article .prose [bgcolor]{background-color:#f0f3e9!important;background-image:none!important}.java-page__article .prose img{max-width:100%;height:auto}.java-page__pager{display:flex;justify-content:space-between;gap:1rem;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid #e1e6db}.java-page__pager a{display:grid;gap:.35rem;max-width:48%;color:#294d3b;text-decoration:none}.java-page__pager a:last-child{margin-left:auto;text-align:right}.java-page__pager a:hover strong{color:#66824f;text-decoration:underline;text-underline-offset:3px}.java-page__pager span{color:#879188;font:600 .66rem var(--display);letter-spacing:.08em;text-transform:uppercase}.java-page__pager strong{font:600 .84rem/1.4 var(--display)}.contact-page{color:#183d36;font-family:var(--display)}.contact-page__hero{padding:4.5rem 0 4rem;background:#173f37;color:#fffefa}.contact-page__hero .eyebrow{margin-bottom:1.1rem;color:#d2ddcf}.contact-page__hero h1{color:#fffefa;font-size:clamp(3rem,7vw,5.5rem);font-weight:500;letter-spacing:-.075em;line-height:.98}.contact-page__hero h1 span{color:#c7e879}.contact-page__intro{max-width:39rem;margin:1.25rem 0 0;color:#d1dcd4;font:400 1.05rem/1.75 var(--body)}.contact-page__content{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2.5rem,7vw,7rem);padding-top:5rem;padding-bottom:6rem}.contact-page__details{padding-top:.5rem}.contact-page__details .eyebrow{margin-bottom:1rem}.contact-page__details h2{max-width:12ch;color:#173f37;font-size:clamp(2rem,3.5vw,3rem);font-weight:500;letter-spacing:-.06em;line-height:1.05}.contact-page__details-copy{margin:1rem 0 2rem;color:#69766f;font:400 .98rem/1.75 var(--body)}.contact-page__detail{display:grid;gap:.35rem;padding:1rem 0;border-top:1px solid #dce2d8}.contact-page__detail>span{color:#879188;font:600 .68rem var(--display);letter-spacing:.1em;text-transform:uppercase}.contact-page__detail a{width:fit-content;color:#285744;font:600 .96rem var(--display);text-decoration:none;overflow-wrap:anywhere}.contact-page__detail a:hover{text-decoration:underline;text-underline-offset:4px}.contact-page__location{margin-top:1rem;color:#69766f;font:500 .8rem var(--display)}.contact-page__form-wrap{padding:clamp(1.25rem,3vw,2.5rem);border:1px solid #e1e6db;background:#fffefa;box-shadow:0 8px 24px #1635280a}.contact-page__form-wrap h2{color:#173f37;font-size:1.65rem;font-weight:600;letter-spacing:-.04em}.contact-page__form-note{margin:.55rem 0 1.7rem;color:#69766f;font:400 .83rem/1.6 var(--body)}.contact-page__form-note span,.contact-form label>span[aria-hidden=true]{color:#6d8d45}.contact-form{display:grid;gap:1.15rem}.contact-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-form label{display:grid;gap:.45rem;color:#385344;font:600 .78rem var(--display)}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-width:0;border:1px solid #d7dfd5;border-radius:0;padding:.8rem .85rem;background:#fffefa;color:#183d36;font:400 .9rem var(--body)}.contact-form textarea{min-height:8rem;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#66824f;outline:2px solid rgb(102 130 79 / 20%);outline-offset:1px}.contact-form__optional{color:#879188;font:400 .7rem var(--display)}.contact-form__submit{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;width:fit-content;min-height:3.2rem;padding:.75rem 1.2rem;border:0;background:#173f37;color:#fffefa;font:600 .85rem var(--display);cursor:pointer;transition:background .2s ease,transform .2s ease}.contact-form__submit:hover{transform:translateY(-2px);background:#285c4d}@media (max-width: 760px){.contact-page__hero{padding:3.5rem 0}.contact-page__content{grid-template-columns:1fr;gap:2.5rem;padding-top:3rem;padding-bottom:4rem}}@media (max-width: 520px){.contact-form__row{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.contact-form__submit{transition:none}.contact-form__submit:hover{transform:none}}@media (max-width: 760px){.java-page.single{padding:1rem 1rem 3rem}.java-page__hero{padding:1.8rem 1.4rem 1.5rem}.java-page__hero:after{right:-5rem}.java-page__layout{grid-template-columns:1fr;gap:.85rem}.java-page__sidebar{position:static;max-height:none;overflow:visible}.java-page__lesson-groups{grid-template-columns:repeat(2,minmax(0,1fr));max-height:18rem;overflow:auto}.java-page__article{padding:1.25rem}}@media (max-width: 460px){.java-page__lesson-groups{grid-template-columns:1fr}.java-page__pager{flex-direction:column}.java-page__pager a{max-width:100%}.java-page__pager a:last-child{text-align:left}}@media (prefers-reduced-motion: reduce){.java-page__lesson-groups a{transition:none}}
