:root{--bg: #f1f6f1;--bg2: #f9fcf9;--ink: #1e281f;--ink-soft: #536156;--card: #ffffff;--line: rgba(28, 74, 44, .16);--olive: #2e6b43;--olive-deep: #1c4a2c;--on-olive: #f1f6f1;--sage: #86a894;--accent: #b3d1bb;--accent-ink: #142b1c;--header-bg: rgba(241, 246, 241, .9);--blob-a: rgba(134, 168, 148, .5);--blob-b: rgba(134, 168, 148, .32);--blob-c: rgba(179, 209, 187, .55);--dark: #17331f;--dark2: #0e2416;--on-dark: #e8efe6;--on-dark-soft: rgba(232, 239, 230, .72)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}input,textarea,select{font:inherit}a{color:inherit}img{display:block;max-width:100%}p,h1,h2,h3,h4{margin:0;text-wrap:pretty}:focus-visible{outline:2px solid var(--olive);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--ink)}.serif{font-family:Fraunces,serif}.mono{font-family:DM Mono,monospace}.rim-desktop-nav,.rim-desktop-actions{display:flex}.rim-mobile-actions{display:none}@media (max-width: 900px){.rim-desktop-nav,.rim-desktop-actions{display:none}.rim-mobile-actions{display:flex}}.rim-navlink{transition:color .25s}.rim-navlink:hover{color:var(--olive-deep)}.rim-navbar{position:absolute;left:14px;right:14px;bottom:4px;height:2px;background:var(--olive);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.22,.61,.36,1)}.rim-navlink:hover .rim-navbar{transform:scaleX(1)}.rim-cta{transition:transform .3s,box-shadow .3s,background .3s}.rim-cta:hover{background:var(--olive)!important;box-shadow:0 14px 28px -12px #1c4a2c8c;transform:translateY(-1px)}.rim-outline-btn{transition:border-color .3s,transform .3s}.rim-outline-btn:hover{border-color:var(--olive)!important;transform:translateY(-2px)}.rim-card{transition:border-color .35s,box-shadow .35s,transform .35s}.rim-card:hover{border-color:var(--olive)!important;box-shadow:0 22px 44px -30px #2b2b2480;transform:translateY(-3px)}.rim-card:hover .rim-svc-icon{transform:scale(1.08) rotate(-4deg)}.rim-svc-icon{transition:transform .35s cubic-bezier(.22,.61,.36,1)}.rim-svc-card{transition:box-shadow .4s ease,transform .4s ease}.rim-svc-card:hover{transform:translateY(-4px);box-shadow:0 44px 84px -46px #2b2b2473}.rim-svc-row{display:grid;grid-template-columns:1fr 1fr;min-height:300px}.rim-svc-row.reverse .rim-svc-media{order:1}.rim-svc-row.reverse .rim-svc-body{order:0}.rim-svc-media{overflow:hidden}.rim-svc-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.22,.61,.36,1)}.rim-svc-card:hover .rim-svc-media img{transform:scale(1.04)}@media (max-width: 860px){.rim-svc-row{grid-template-columns:1fr;min-height:0}.rim-svc-row .rim-svc-media{order:-1!important;min-height:220px}}@media (max-width: 560px){.rim-wiz-primary{flex:1 1 auto!important;min-width:0;padding-left:14px!important;padding-right:14px!important;white-space:normal!important}}.rim-chat-bar{left:12px;right:12px;max-width:620px;margin-left:auto;margin-right:auto}@media (max-width: 560px){.rim-chat-input{font-size:16px!important}}.rim-info-row{transition:background .25s}.rim-info-row:hover{background:#2e6b430d}.rim-contact-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(20px,3vw,32px);align-items:start}.rim-contact-locs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:clamp(18px,2.4vw,24px)}@media (max-width: 940px){.rim-contact-split{grid-template-columns:1fr}}.rim-svc-section{position:relative;isolation:isolate;overflow:clip}.rim-mesh{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none}.rim-mesh span{position:absolute;border-radius:50%;filter:blur(64px);opacity:.55}.rim-mesh .m1{width:46vw;height:46vw;left:-12vw;top:-8vw;background:radial-gradient(circle at 40% 40%,var(--blob-a),transparent 70%);animation:rimFloat 24s ease-in-out infinite}.rim-mesh .m2{width:42vw;height:42vw;right:-12vw;top:22%;background:radial-gradient(circle at 50% 50%,var(--blob-c),transparent 70%);animation:rimFloat2 28s ease-in-out infinite}.rim-mesh .m3{width:40vw;height:40vw;left:32%;bottom:-14vw;background:radial-gradient(circle at 50% 50%,var(--blob-b),transparent 70%);animation:rimFloat 30s ease-in-out infinite reverse}.rim-svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,264px),1fr));gap:16px}.reveal.rim-rise{transform:translateY(24px);transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1)}.reveal.rim-rise.is-visible{transform:none}.rim-rise{height:100%}.rim-svc{position:relative;height:100%;border-radius:20px;padding:24px;background:linear-gradient(160deg,#ffffffb8,#ffffff70);border:1px solid rgba(255,255,255,.6);box-shadow:inset 0 1px #ffffffa6,0 18px 40px -30px #1c4a2c80;-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s,background .35s,border-color .35s}.rim-svc:hover,.rim-svc:focus-within{transform:translateY(-4px);background:linear-gradient(160deg,#b3d1bb99,#b3d1bb52);border-color:#2e6b436b;box-shadow:inset 0 1px #ffffffbf,0 28px 56px -30px #1c4a2c8c}.rim-svc-ic2{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(140deg,#2e6b432e,#2e6b430f);color:var(--olive-deep);box-shadow:0 8px 16px -10px #1c4a2c99;transition:transform .35s cubic-bezier(.22,.61,.36,1)}.rim-svc:hover .rim-svc-ic2{transform:translateY(-2px) scale(1.05)}.rim-feat-head{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,56px);align-items:end}.rim-feat-head p{font-size:16.5px;line-height:1.65;color:var(--ink-soft)}@media (max-width: 780px){.rim-feat-head{grid-template-columns:1fr;gap:20px;align-items:start}}.rim-feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,26px);align-items:start;margin-top:clamp(40px,5vw,64px)}.rim-feat-offset{margin-top:clamp(28px,4vw,52px)}@media (max-width: 820px){.rim-feat-grid{grid-template-columns:1fr}.rim-feat-offset{margin-top:0}}.rim-feat{display:block;width:100%;text-align:left;position:relative;border-radius:24px;overflow:hidden;box-shadow:0 30px 60px -32px #1c4a2c80;transition:transform .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s}.rim-feat:hover,.rim-feat:focus-visible{transform:translateY(-6px);box-shadow:0 46px 84px -36px #1c4a2c94}.rim-feat-media{display:block;position:relative;aspect-ratio:4 / 5}.rim-feat-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,.61,.36,1)}.rim-feat:hover .rim-feat-media img{transform:scale(1.06)}.rim-feat-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(14,36,22,.86),rgba(14,36,22,.14) 52%,transparent 78%)}.rim-feat-cap{position:absolute;left:0;bottom:0;padding:clamp(18px,2vw,26px);display:flex;flex-direction:column;gap:7px}.rim-feat-kicker{font-family:DM Mono,monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#b3d1bbf2}.rim-feat-title{font-family:Fraunces,serif;font-weight:400;font-size:clamp(24px,2.4vw,28px);line-height:1.04;color:#fff}.rim-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px clamp(24px,4vw,44px)}@media (max-width: 720px){.rim-spec-grid{grid-template-columns:1fr 1fr}}@media (max-width: 460px){.rim-spec-grid{grid-template-columns:1fr}}.rim-spec{display:inline-flex;align-items:center;gap:12px;text-align:left;color:var(--ink-soft);font-size:15px;transition:color .25s}.rim-spec:hover{color:var(--olive-deep)}.rim-spec-dot{display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--olive);transition:color .25s,transform .25s}.rim-spec:hover .rim-spec-dot{color:var(--olive-deep);transform:scale(1.14)}.rim-liv{display:inline-flex}.rim-liv svg{transform-origin:center;overflow:visible}.rim-liv-beat svg{animation:rimBeat 1.6s ease-in-out infinite}@keyframes rimBeat{0%,24%,50%,to{transform:scale(1)}12%{transform:scale(1.16)}36%{transform:scale(1.08)}}.rim-liv-ekg svg path{stroke-dasharray:48;animation:rimEkg 1.9s ease-in-out infinite}@keyframes rimEkg{0%{stroke-dashoffset:48}55%,to{stroke-dashoffset:0}}.rim-liv-twinkle svg{animation:rimTwinkle 2.6s ease-in-out infinite}@keyframes rimTwinkle{0%,to{transform:scale(1) rotate(0);opacity:.85}50%{transform:scale(1.13) rotate(8deg);opacity:1}}.rim-liv-blow svg{animation:rimBlow 2.8s ease-in-out infinite}@keyframes rimBlow{0%,to{transform:translate(0) skew(0)}50%{transform:translate(2.5px) skew(-5deg)}}.rim-liv-swing svg{transform-origin:50% 12%;animation:rimSwing 2.6s ease-in-out infinite}@keyframes rimSwing{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}.rim-liv-wiggle svg{animation:rimWiggle 2.4s ease-in-out infinite}@keyframes rimWiggle{0%,to{transform:rotate(-5deg) scale(1)}50%{transform:rotate(5deg) scale(1.04)}}.rim-liv-inject svg{animation:rimInject 3s ease-in-out infinite}@keyframes rimInject{0%,58%,to{transform:translate(0)}74%{transform:translate(-2.2px,2.2px)}86%{transform:translate(0)}}.rim-liv-rock svg{transform-origin:50% 88%;animation:rimRock 3s ease-in-out infinite}@keyframes rimRock{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.rim-liv-swirl svg{animation:rimSwirl 3.2s ease-in-out infinite}@keyframes rimSwirl{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.rim-liv-drip svg{animation:rimDrip 2.6s cubic-bezier(.5,0,.5,1) infinite}@keyframes rimDrip{0%{transform:translateY(-1.5px) scaleY(1)}45%{transform:translateY(0) scaleY(1.06)}72%{transform:translateY(2.5px) scaleY(.93)}to{transform:translateY(-1.5px) scaleY(1)}}.rim-liv-guard svg{animation:rimGuard 2.8s ease-in-out infinite}@keyframes rimGuard{0%,to{transform:scale(1)}50%{transform:scale(1.09)}}.rim-liv-shine svg{animation:rimShine 14s linear infinite}@keyframes rimShine{to{transform:rotate(360deg)}}.rim-liv-spin svg{transform-style:preserve-3d;animation:rimTurn 4.6s ease-in-out infinite}@keyframes rimTurn{0%,to{transform:perspective(240px) rotateY(-34deg)}50%{transform:perspective(240px) rotateY(34deg)}}.rim-liv-scan svg{animation:rimScan 3.2s ease-in-out infinite}@keyframes rimScan{0%,to{transform:translate(0)}25%{transform:translate(2px,-1px)}50%{transform:translateY(-2px)}75%{transform:translate(-2px,-1px)}}.rim-liv-flash svg{animation:rimFlash 2.6s ease-in-out infinite}@keyframes rimFlash{0%,to{opacity:1;transform:scale(1)}50%{opacity:.78;transform:scale(1.06)}}.rim-liv-stamp svg{animation:rimStamp 3.4s ease-in-out infinite}@keyframes rimStamp{0%,72%,to{transform:scale(1)}78%{transform:scale(.88)}86%{transform:scale(1.07)}92%{transform:scale(1)}}.rim-liv-balance svg{animation:rimBalance 3.4s ease-in-out infinite}@keyframes rimBalance{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.rim-liv svg,.rim-liv-ekg svg path{animation-delay:var(--d, 0s)}.rim-liv svg,.rim-liv-ekg svg path,.rim-mesh span{animation-play-state:paused}.rim-svc-section.in-view .rim-liv svg,.rim-svc-section.in-view .rim-liv-ekg svg path,.rim-svc-section.in-view .rim-mesh span{animation-play-state:running}.rim-svc-section.in-view .rim-mesh span{will-change:transform}.rim-cond-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}@media (max-width: 980px){.rim-cond-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 720px){.rim-cond-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 460px){.rim-cond-grid{grid-template-columns:1fr}}.rim-cond-body{overflow:hidden;max-height:0;opacity:0;transition:max-height .45s cubic-bezier(.22,.61,.36,1),opacity .4s}.rim-cond-card:hover .rim-cond-body,.rim-cond-card:focus-within .rim-cond-body{max-height:140px;opacity:1}.rim-cond-chev{transition:transform .35s cubic-bezier(.22,.61,.36,1)}.rim-cond-card:hover .rim-cond-chev,.rim-cond-card:focus-within .rim-cond-chev{transform:rotate(180deg)}.rim-finder{display:grid;grid-template-columns:1fr;gap:clamp(22px,3vw,32px);align-items:center}@media (min-width: 860px){.rim-finder{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);column-gap:clamp(24px,2.4vw,34px)}}.rim-fchip{transition:transform .25s cubic-bezier(.22,.61,.36,1),background .25s,color .25s,border-color .25s,box-shadow .25s}.rim-fchip:hover{transform:translateY(-2px);box-shadow:0 12px 24px -14px #1c4a2c99}.rim-foot-link{transition:color .25s,transform .25s}.rim-foot-link:hover{color:var(--on-olive)!important;transform:translate(3px)}.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1)}.reveal.is-visible{opacity:1;transform:none}@keyframes rimRise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes rimFloat{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(14px,-18px) rotate(2deg)}}@keyframes rimFloat2{0%,to{transform:translate(0)}50%{transform:translate(-14px,12px)}}@keyframes rimDraw{to{stroke-dashoffset:0}}@keyframes rimPop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.06);opacity:1}to{transform:scale(1);opacity:1}}@keyframes rimConfetti{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot));opacity:0}}@keyframes rimBlink{50%{opacity:.35}}@keyframes rimPulse{0%{box-shadow:0 0 #2e6b4366}70%{box-shadow:0 0 0 16px #2e6b4300}to{box-shadow:0 0 #2e6b4300}}@keyframes rimDots{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:1}}@keyframes rimSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}
