@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#141b27;--lime:#d5f15b;--paper:#f5f6f0;--muted:#9fa6b2;--line:#ffffff26;--font:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--font);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:var(--lime);color:var(--ink)}.skip{position:fixed;top:-80px;left:20px;z-index:20;background:var(--lime);color:var(--ink);padding:15px}.skip:focus{top:10px}.header{height:110px;margin:0 5.2%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:11px;font-size:23px;font-weight:800;letter-spacing:.01em;line-height:1}.brand small{display:block;letter-spacing:.46em;font-size:10px;font-weight:500;margin-top:7px}.brand-icon{font-family:Arial,sans-serif;font-size:58px;position:relative;color:var(--lime);line-height:.7;font-weight:800}.brand-icon>span{font-size:19px;position:absolute;right:-5px;top:-10px}.header nav{display:flex;align-items:center;gap:38px;font-size:14px}.header nav>a{transition:color .2s}.header nav>a:hover{color:var(--lime)}.nav-contact{border:1px solid #6a707a;border-radius:30px;padding:14px 20px}.nav-contact span{margin-left:25px}.hero{min-height:740px;height:calc(100svh - 110px);max-height:980px;position:relative;overflow:hidden;padding:30px 5.2% 0}.hero-grid{position:absolute;inset:0 5.2%;background:linear-gradient(90deg,transparent 49.95%,#ffffff07 50%,transparent 50.05%);border-right:1px solid #ffffff06;border-left:1px solid #ffffff06;pointer-events:none}.hero-index{display:flex;justify-content:space-between;color:#959daa;font-size:11px;letter-spacing:.14em}.hero-copy{position:relative;z-index:2;margin-top:76px;pointer-events:none;width:55%}.hero-copy a{pointer-events:auto}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;display:flex;align-items:center;gap:10px}.eyebrow>span{width:6px;height:6px;background:var(--lime);border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Manrope',sans-serif;font-weight:500}h1{font-size:clamp(76px,8.2vw,132px);line-height:1.02;letter-spacing:-.065em;margin-top:28px;margin-bottom:27px;position:relative}em{font-style:normal;color:var(--lime)}.title-star{font-size:.65em;color:var(--lime);display:inline-block;margin-left:25px;vertical-align:top;transform:rotate(10deg)}.hero-description{color:#aab0bb;line-height:1.7;margin-bottom:30px;font-size:16px}.button{border:0;border-radius:50px;display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:17px 25px;font-size:14px;font-weight:600;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.button span{font-size:22px;font-weight:400}.button-lime{background:var(--lime);color:var(--ink)}.button-lime:hover{background:#e5ff86}.button-dark{background:var(--ink);color:white}.model-wrap{position:absolute;z-index:1;right:-4%;top:0;width:65%;height:92%;min-height:590px}.model-wrap:before{content:'';position:absolute;inset:4% 10% 10%;background:radial-gradient(ellipse,#52634a27,transparent 65%);pointer-events:none}canvas{width:100%;height:100%;display:block;position:relative}.orbit-label{position:absolute;font-size:10px;letter-spacing:.1em;color:#abb3b6;line-height:1.6;pointer-events:none}.label-top{right:16%;top:16%;border-top:1px solid #7b8490;padding-top:12px}.label-bottom{left:33%;bottom:5%;font-size:9px}.label-bottom i{display:inline-block;background:var(--lime);width:5px;height:5px;border-radius:50%;margin-right:8px}.hero-bottom{position:absolute;bottom:28px;left:5.2%;right:5.2%;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.07em;z-index:3}.scroll-cue{display:flex;gap:15px;align-items:center}.scroll-cue>span{width:32px;height:44px;border:1px solid #68707b;border-radius:30px;display:grid;place-items:center;font-size:18px}.hero-bottom p{color:#9aa2ad;line-height:1.5;margin:0 0 0 18%}.hero-bottom button{color:#aab0bb;background:none;border:0;display:flex;gap:10px;align-items:center;font-size:12px}.ticker{overflow:hidden;background:var(--lime);color:var(--ink);padding:22px 0}.ticker>div{white-space:nowrap;font-size:17px;letter-spacing:.025em;font-weight:600;display:flex;width:max-content;gap:42px;align-items:center;animation:marquee 35s linear infinite}.ticker span{font-size:26px;line-height:1}@keyframes marquee{to{transform:translateX(-40%)}}.experience,.services,.approach{padding:76px 5.2% 90px}.section-kicker{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;padding-bottom:26px;border-bottom:1px solid var(--line);color:#9fa6b2}.experience-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:56px 0 40px}.experience h2{font-size:clamp(36px,4vw,64px);letter-spacing:-.045em;line-height:1.12;margin:0}.experience h2>span{color:#818b96}.experience-heading>p{font-size:14px;line-height:1.8;color:#aab1bb;margin:0}.clean-stage{height:360px;background:#454a42;border-radius:8px;position:relative;overflow:hidden}.dust-field{position:absolute;inset:0;background-image:radial-gradient(#9c9779 1.4px,transparent 2px),radial-gradient(#242e25 2px,transparent 3px),radial-gradient(#8e906c 1px,transparent 2px);background-size:27px 29px,53px 41px,13px 37px;opacity:.6}.clean-wipe{position:absolute;inset:0;background:var(--lime);clip-path:inset(0 100% 0 0)}.clean-line{position:absolute;top:0;bottom:0;width:1px;background:#f4ffd2;left:0}.clean-line>span{position:absolute;top:43%;left:-21px;font-size:42px;color:#fff}.clean-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink);opacity:0;transform:translateY(20px)}.clean-message>span{font-size:clamp(26px,4vw,58px);font-family:'Manrope',sans-serif;letter-spacing:-.045em}.clean-message p{font-size:16px;margin-top:12px}.before-label,.after-label{position:absolute;top:26px;font-size:10px;letter-spacing:.12em}.before-label{right:26px;color:#d4d5bf}.after-label{left:26px;color:var(--ink);opacity:0}.stage-note{position:absolute;bottom:25px;left:26px;color:#17221f;font-size:10px;letter-spacing:.13em}.services{background:var(--paper);color:var(--ink)}.services .section-kicker{border-color:#141b2726;color:#62696d}.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin:52px 0}.section-title h2{font-size:clamp(50px,6vw,88px);line-height:1.05;letter-spacing:-.06em;margin:0}.section-title em{color:#7d8b46}.section-title p{font-size:14px;line-height:1.8;color:#6b7172;margin:0 7% 0 0}.service-row{display:grid;grid-template-columns:.25fr 1.3fr 1.4fr 50px;gap:22px;align-items:center;border-top:1px solid #141b2730;min-height:132px;transition:padding .3s,background .3s}.service-row:last-child{border-bottom:1px solid #141b2730}.service-row:hover{padding:0 18px;background:#e9eedd}.service-num{color:#8a8e86;font-size:12px}.service-row h3{font-size:32px;font-weight:500;letter-spacing:-.04em;margin:0}.service-row p{color:#717773;font-size:14px;line-height:1.7;margin:0}.service-arrow{border:1px solid #b3b9ab;border-radius:50%;height:44px;width:44px;display:grid;place-items:center;font-size:25px;transition:background .3s}.service-row:hover .service-arrow{background:var(--lime)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:65px}.approach h2{font-size:clamp(45px,5.5vw,85px);line-height:1.08;letter-spacing:-.05em}.approach h2>span{display:block;color:var(--lime);font-size:110px;line-height:1.2;margin-top:40px}.steps article{display:flex;gap:24px;padding:0 0 28px;margin-bottom:26px;border-bottom:1px solid var(--line)}.steps article>span{font-size:12px;color:#a1ab8f;padding-top:5px}.steps h3{font-size:22px;font-weight:500;letter-spacing:-.02em;margin-bottom:12px}.steps p{color:#9fa7b1;font-size:14px;line-height:1.8;margin-bottom:0}.contact{background:var(--lime);color:var(--ink);padding:75px 5.2% 85px;position:relative;overflow:hidden}.contact h2{font-size:clamp(54px,7.5vw,110px);line-height:1.07;letter-spacing:-.065em;margin:32px 0 24px}.contact em{color:#72813f}.contact>p:not(.eyebrow){font-size:16px;margin-bottom:28px}.contact-star{position:absolute;right:6%;top:20%;font-size:300px;line-height:1;transform:rotate(-10deg)}footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:40px;padding:45px 5.2% 25px}footer>p{font-size:14px;color:#aab1bb;text-align:center;margin:0}footer>a:not(.brand){font-size:13px;text-align:right}footer>span{grid-column:1/-1;font-size:10px;color:#8e96a1;border-top:1px solid var(--line);padding-top:22px}body.motion-paused *,body.reduced-motion *{animation-play-state:paused!important}body.reduced-motion,body.motion-paused{scroll-behavior:auto}.model-fallback{position:absolute;left:30%;top:40%;font-size:40px;color:var(--lime)}[hidden]{display:none!important}
@media(min-width:1500px){.hero-copy{margin-top:100px}}@media(max-width:1000px){.hero{min-height:700px}.hero-copy{margin-top:75px}h1{font-size:85px}.title-star{margin-left:10px}.model-wrap{right:-12%;width:70%}.label-top{right:21%;top:10%}.contact-star{font-size:240px;right:3%;top:27%}.service-row h3{font-size:26px}.experience-heading>p{max-width:290px}.header nav{gap:22px}.hero-bottom p{margin-left:0}}@media(max-width:700px){.header{height:86px;margin:0 6%}.brand{font-size:18px}.brand-icon{font-size:45px}.brand small{font-size:8px}.header nav>a:not(.nav-contact){display:none}.nav-contact{font-size:11px;padding:12px 14px}.nav-contact span{margin-left:12px}.hero{height:auto;min-height:950px;padding:23px 6% 0}.hero-index{font-size:9px}.hero-copy{width:100%;margin-top:43px}h1{font-size:clamp(65px,14.7vw,96px);line-height:1.03;margin-top:22px;margin-bottom:20px}.hero .eyebrow{font-size:10px}.title-star{margin-left:20px}.hero-description{font-size:14px;line-height:1.7;margin-bottom:22px}.button{padding:14px 21px;font-size:13px}.model-wrap{height:440px;min-height:0;width:115%;top:455px;right:-5%}.label-top{top:13%;right:11%;font-size:8px}.label-bottom{bottom:5%;left:31%;font-size:8px}.hero-bottom{left:6%;right:6%;bottom:22px}.hero-bottom p{display:none}.hero-bottom button>span{display:none}.scroll-cue{font-size:9px}.scroll-cue>span{height:36px;width:28px}.ticker{padding:17px 0}.ticker>div{font-size:13px;gap:28px}.ticker span{font-size:20px}.experience,.services,.approach{padding:48px 6% 55px}.section-kicker{font-size:9px;gap:20px;padding-bottom:20px}.section-kicker>span:last-child{text-align:right}.experience-heading{display:block;margin:35px 0 25px}.experience h2{font-size:36px}.experience-heading>p{margin-top:24px;font-size:13px}.clean-stage{height:290px}.clean-message>span{font-size:30px}.clean-message p{font-size:13px}.section-title{display:block;margin:35px 0}.section-title h2{font-size:56px}.section-title p{margin-top:23px;font-size:13px}.service-row{grid-template-columns:22px 1fr 38px;gap:12px;padding:25px 0;min-height:0}.service-row h3{font-size:25px}.service-row p{grid-column:2;grid-row:2;font-size:13px}.service-arrow{grid-column:3;grid-row:1/3;width:37px;height:37px;font-size:22px}.service-row:hover{padding:25px 8px}.approach-grid{display:block;padding-top:38px}.approach h2{font-size:55px;position:relative;margin-bottom:43px}.approach h2>span{position:absolute;right:0;top:0;margin:0;font-size:86px}.steps article{gap:20px}.steps h3{font-size:20px}.steps p{font-size:13px}.contact{padding:49px 6% 58px}.contact h2{font-size:clamp(45px,10.5vw,70px)}.contact-star{font-size:120px;top:auto;bottom:48px;right:-35px;opacity:.35}.contact .button{position:relative;z-index:1}.contact .eyebrow{font-size:10px}footer{padding:32px 6% 22px;grid-template-columns:1fr 1fr;gap:28px}footer>p{display:none}footer>a:not(.brand){font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker>div{animation:none}.button{transition:none}}
/* Regular reading text remains legible across viewport sizes. */
.experience-heading>p,.section-title p,.service-row p,.steps p{font-size:16px}.steps h3{line-height:1.35}.hero-description{font-size:16px}.header nav,.nav-contact{font-size:14px}.hero-bottom button{min-width:44px;min-height:44px}.section-kicker,.hero-index,.orbit-label,.eyebrow,.before-label,.after-label,.stage-note,.scroll-cue{font-size:12px}.label-bottom{font-size:10px}label{font-size:14px}footer>span{font-size:12px}@media(max-width:700px){.section-kicker{font-size:10px}.hero-index{font-size:10px}.orbit-label{font-size:10px}.scroll-cue{font-size:10px}.nav-contact{font-size:12px}.experience-heading>p,.section-title p,.service-row p,.steps p{font-size:16px}.service-row{grid-template-columns:20px 1fr 38px}.hero{min-height:970px}.model-wrap{top:465px}.hero-description{font-size:16px}}
/* Direct contact options remain available without JavaScript. */
.contact-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;position:relative;z-index:1;max-width:900px;margin:32px 0}.contact-person{padding:26px;border:1px solid #141b2740;border-radius:14px;background:var(--lime)}.contact-person h3{font-size:20px;margin:0 0 10px;font-weight:500}.phone-number{display:inline-block;font-size:clamp(23px,2.5vw,34px);font-weight:600;letter-spacing:-.03em;margin-bottom:22px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.contact-actions .button{gap:18px}.button-outline{border:1px solid var(--ink);color:var(--ink);background:transparent}.button-outline:hover{background:#e5ff86}.service-row h3{overflow-wrap:anywhere;line-height:1.2;padding:15px 0}@media(max-width:700px){.contact-people{grid-template-columns:1fr;gap:16px}.contact-person{padding:22px}.phone-number{font-size:29px}.contact-actions .button{flex:1;min-width:125px}.service-row h3{padding:0}.service-row p{line-height:1.6}}

.contact-address{position:relative;z-index:1;max-width:900px;margin:0 0 28px;padding:22px 0;border-top:1px solid #141b2740}.contact-address h3{font-size:18px;font-weight:600;margin:0 0 10px}.contact-address address{font-style:normal;font-size:16px;line-height:1.7;overflow-wrap:anywhere}

.map-directions{margin:20px 0}.address-map{display:block;width:100%;height:360px;border:1px solid #141b2740;border-radius:14px;background:var(--paper)}@media(max-width:700px){.address-map{height:280px}}
