/* Editorial cards and restrained, progressively enhanced motion. */
.service-card{padding:0;overflow:hidden;background:#fbfcf6;border-radius:8px;border:1px solid #d5ddcc;box-shadow:0 3px 10px #163e3503;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.service-card:hover,.service-card:focus-visible{transform:translateY(-6px);box-shadow:0 18px 36px #163e3514;border-color:#91a77c;background:#fbfcf6}
.card-visual{position:relative;overflow:hidden;aspect-ratio:1.8;background:#d6dfcb}
.card-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.8);transition:transform .65s cubic-bezier(.22,.61,.36,1),filter .65s}
.service-card:hover .card-visual img,.service-card:focus-visible .card-visual img{transform:scale(1.045);filter:saturate(1)}
.card-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#102f2966)}
.card-category{position:absolute;z-index:1;left:20px;bottom:17px;color:#fff;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.card-body{display:flex;flex-direction:column;flex:1;padding:27px}.card-body .card-num{margin-bottom:18px;font-size:9px}.card-body h3{font-size:27px;margin-bottom:16px;max-width:none}.card-body p{margin-bottom:24px}.card-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:19px;font-size:12px;font-weight:500}.card-bottom .card-arrow{border-radius:50%;border:1px solid #b8c6a9;width:34px;height:34px;display:grid;place-items:center;font-size:18px;transition:background .25s,color .25s,transform .25s}.service-card:hover .card-arrow{background:var(--forest);color:var(--lime);transform:rotate(6deg)}
.path-section{padding:0 var(--pad) 85px}.path-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.path-heading h2{font-size:34px}.path-heading p{max-width:360px;font-size:16px}.path-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.path-card{padding:28px;display:flex;flex-direction:column;background:#e9ede0;border:1px solid #d6dfcb;border-radius:8px;position:relative;transition:background .25s,transform .25s,border-color .25s}.path-card:nth-child(2){background:var(--forest);color:var(--cream);border-color:var(--forest)}.path-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid #9bac8c;border-radius:50%;margin-bottom:25px}.path-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.path-card h3{font-size:25px;margin-bottom:15px}.path-card p{font-size:15px;line-height:1.7;margin-bottom:25px}.path-card:nth-child(2) p{color:#cfdbc8}.path-card:nth-child(2) .path-icon{color:var(--lime);border-color:#7c9974}.path-link{font-size:13px;border-top:1px solid #bac8ab;padding-top:18px;margin-top:auto;display:flex;justify-content:space-between}.path-card:hover,.path-card:focus-visible{transform:translateY(-4px);border-color:#6d8852}.path-card:not(:nth-child(2)):hover{background:#e0e8d3}.path-link>span{transition:transform .25s}.path-card:hover .path-link>span{transform:translate(3px,-3px)}
.text-link{position:relative}.text-link:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.text-link:hover:after,.text-link:focus-visible:after{transform:scaleX(1)}
.nav-group[open] .mega{animation:menu-enter .2s ease-out both}.faq[open]>p{animation:content-enter .25s ease-out both}.button{transition:background .2s,transform .2s,box-shadow .2s}.button:hover{box-shadow:0 6px 16px #102f2914}.button:active{transform:translateY(0);box-shadow:none}
.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity .65s ease var(--reveal-delay,0ms),transform .65s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}.reveal-ready.is-revealed{opacity:1;transform:translateY(0)}.reveal-ready:focus-within{opacity:1;transform:none;transition-delay:0ms}
.service-card.reveal-ready.is-revealed:hover{transform:translateY(-6px)}.path-card.reveal-ready.is-revealed:hover{transform:translateY(-4px)}
@keyframes menu-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}@keyframes content-enter{from{opacity:.4;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:950px){.path-section{padding-bottom:65px}.path-cards{gap:14px}.path-card{padding:23px}.path-card h3{font-size:23px}.card-body{padding:23px}.card-body h3{font-size:25px}}
@media(max-width:600px){.path-section{padding-bottom:55px}.path-heading{display:block}.path-heading h2{font-size:31px}.path-heading p{margin-top:18px}.path-cards{grid-template-columns:1fr}.path-card{padding:27px}.path-icon{margin-bottom:20px}.path-card h3{font-size:27px}.card-visual{aspect-ratio:1.65}.card-body{padding:27px}.card-body h3{font-size:28px}.service-card:hover{transform:none}.nav-group[open] .mega{animation:none}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none!important;transition:none}.nav-group[open] .mega,.faq[open]>p{animation:none}.service-card,.card-visual img,.path-card,.path-link>span,.card-arrow,.text-link:after{transition:none!important}.service-card:hover,.service-card:focus-visible,.path-card:hover,.path-card:focus-visible,.service-card:hover .card-visual img,.service-card:focus-visible .card-visual img{transform:none}}
