@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap";:root{--lime:#9dd016;--olive:#718a3a;--ink:#121b1a;--paper:#f7faf5;--muted:#dfe5da;--serif:"Playfair Display", Georgia, serif;--sans:Inter, Arial, sans-serif;--mono:"DM Mono", monospace;color:var(--ink);background:var(--paper);font-family:var(--sans)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.section{padding:clamp(5.5rem,10vw,9rem) max(1.4rem,50vw - 590px)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:-.055em;font-weight:600}h2{max-width:14ch;margin-bottom:1.6rem;font-size:clamp(2.55rem,5vw,5rem);line-height:.98}h3{font-size:1.12rem;line-height:1.25}p{line-height:1.7}.navbar{z-index:20;width:100%;color:var(--paper);grid-template-columns:1fr auto 1fr;align-items:center;padding:1.25rem max(1.35rem,50vw - 640px);transition:background .25s,box-shadow .25s,color .25s;display:grid;position:fixed;top:0;left:0}.navbar--solid{color:var(--ink);background:var(--paper);box-shadow:0 2px 16px #121b1a16}.brand{letter-spacing:-.07em;align-items:center;gap:.65rem;width:max-content;font-size:1.02rem;font-weight:700;display:flex}.brand-mark{background:var(--ink);border:1px solid #f7faf55c;border-radius:15px;place-items:center;width:52px;height:52px;display:grid;overflow:hidden;box-shadow:0 5px 16px #00000030}.brand img{object-fit:cover;width:100%;height:100%;display:block}.brand span span{color:var(--lime)}.desktop-nav{gap:1.55rem;font-size:.77rem;font-weight:600;display:flex}.desktop-nav a{transition:color .2s}.desktop-nav a:hover{color:var(--lime)}.nav-cta{color:var(--ink);background:var(--lime);justify-self:end;align-items:center;gap:.35rem;padding:.75rem 1rem;font-size:.78rem;font-weight:700;display:flex}.menu-toggle{color:inherit;background:0 0;border:0;padding:0;display:none}.hero{min-height:100svh;color:var(--paper);isolation:isolate;align-items:center;padding:clamp(6rem,10vw,9rem) max(1.4rem,50vw - 590px);display:flex;position:relative;overflow:hidden}.hero-image{z-index:-1;filter:blur(.45px);background-image:url(/hero-desktop.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:-2px;transform:scale(1.008)}.hero-content{text-shadow:0 1px 5px #000000b8;max-width:655px}.hero-eyebrow{text-transform:uppercase;letter-spacing:.16em;font:500 .69rem var(--mono);margin-bottom:1.25rem}h1{margin-bottom:1.35rem;font-size:clamp(3rem,5.7vw,5.65rem);line-height:.96}.hero-content>p:not(.hero-eyebrow){max-width:58ch;margin-bottom:2rem;font-size:clamp(1rem,1.5vw,1.18rem)}.hero-actions{text-shadow:none;flex-wrap:wrap;gap:.8rem;display:flex}.button{justify-content:center;align-items:center;gap:.55rem;min-height:48px;padding:.95rem 1.15rem;font-size:.88rem;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--lime{color:var(--ink);background:var(--lime)}.button--outline{color:var(--paper);background:#121b1a44;border:1px solid #f7faf5aa}.button--dark{color:var(--paper);background:var(--ink)}.hero-scroll{font:500 .68rem var(--mono);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.35rem;display:flex;position:absolute;bottom:2rem;right:max(1.4rem,50vw - 590px)}.about{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(2rem,9vw,11rem);display:grid}.about-copy p{color:#43504c;max-width:60ch}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:.4rem;margin-top:1rem;padding-bottom:.35rem;font-weight:700;display:inline-flex}.about-art{background:var(--ink);place-items:center;min-height:410px;display:grid;position:relative;overflow:hidden}.about-art:before{content:"";aspect-ratio:1;border:1px solid #9dd01670;border-radius:50%;width:155%;position:absolute;top:-63%;right:-38%}.about-art:after{content:"";border:1px solid #f7faf52e;border-radius:20px;position:absolute;inset:12% 9%}.about-logo{z-index:1;aspect-ratio:1;width:min(62%,195px);box-shadow:12px 12px 0 var(--lime);background:#0b1211;border-radius:28px;place-items:center;padding:10px;display:grid;position:relative;overflow:hidden}.about-logo img{object-fit:contain;image-rendering:auto;width:100%;height:100%;display:block}.art-text{z-index:2;color:var(--paper);background:var(--ink);font:500 1.45rem/1.05 var(--serif);align-items:flex-start;gap:1rem;padding:1.35rem 1.6rem;display:flex;position:absolute;bottom:0;left:0}.services{background:#e7ece3}.section-head{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.25rem;display:flex}.section-head h2{margin:0}.section-head p{color:#43504c;max-width:35ch;margin:0}.filters{gap:.5rem;margin-bottom:1.1rem;padding-bottom:.3rem;display:flex;overflow:auto}.filters button{white-space:nowrap;color:#43504c;cursor:pointer;background:0 0;border:1px solid #aeb8ad;padding:.55rem .8rem;font-size:.75rem}.filters .is-active{border-color:var(--ink);background:var(--ink);color:var(--paper)}.swipe-hint{display:none}.carousel-wrap{position:relative}.embla{overflow:hidden}.embla__container{touch-action:pan-y;margin-left:-1rem;display:flex}.embla__slide{min-width:33.333%;padding-left:1rem}.service-card{background:var(--paper);border-top:3px solid var(--lime);flex-direction:column;min-height:330px;padding:1.7rem;display:flex}.service-card>span{font:500 .68rem var(--mono);color:var(--olive)}.service-card h3{font:600 1.7rem/1.05 var(--serif);letter-spacing:-.04em;margin:1.9rem 0 .8rem}.service-card p{color:#43504c;margin-bottom:auto;font-size:.87rem}.service-card div{justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.service-card em{text-transform:uppercase;letter-spacing:.05em;font-size:.66rem;font-style:normal}.service-card a{background:var(--lime);place-items:center;width:34px;height:34px;display:grid}.carousel-arrow{z-index:1;width:42px;height:42px;color:var(--paper);background:var(--ink);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:calc(50% - 22px)}.prev{left:-20px}.next{right:-20px}.dots{justify-content:center;gap:.45rem;margin-top:1.35rem;display:flex}.dots button{cursor:pointer;background:#aeb8ad;border:0;border-radius:50%;width:6px;height:6px;padding:0}.dots .is-active{background:var(--ink);border-radius:9px;width:21px}.method{background:var(--lime)}.method .section-head{align-items:flex-start}.method ol{grid-template-columns:repeat(5,1fr);gap:1rem;margin:3rem 0;padding:0;list-style:none;display:grid}.method li{border-top:1px solid #121b1a77;padding-top:1rem}.method li>span{font:500 .68rem var(--mono);margin-bottom:2.7rem;display:block}.method li h3{margin-bottom:.7rem}.method li p{max-width:21ch;margin:0;font-size:.83rem;line-height:1.6}.difference{background:var(--ink);color:var(--paper);grid-template-columns:.9fr 1.1fr;gap:4rem;display:grid}.difference-intro p{color:#c9d0c8;max-width:42ch}.difference-grid{background:#f7faf538;grid-template-columns:repeat(2,1fr);align-self:start;gap:1px;display:grid}.difference-grid article{background:var(--ink);min-height:235px;padding:1.6rem}.difference-grid span{font:500 .67rem var(--mono);color:var(--lime)}.difference-grid h3{font:500 1.4rem/1.1 var(--serif);letter-spacing:-.035em;margin:2.3rem 0 .7rem}.difference-grid p{color:#c9d0c8;margin:0;font-size:.82rem;line-height:1.6}.faq{grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,10vw,10rem);display:grid}.faq-intro p{color:#43504c;max-width:31ch}.accordion{border-top:1px solid #bfc7bc}.faq-item{border-bottom:1px solid #bfc7bc}.faq-item button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0;font-weight:600;display:flex}.faq-item button svg{flex:none;transition:transform .25s}.faq-item button[aria-expanded=true] svg{transform:rotate(180deg)}.faq-panel{grid-template-rows:0fr;transition:grid-template-rows .25s;display:grid}.faq-panel>p{color:#43504c;margin:0;font-size:.9rem;overflow:hidden}.faq-panel.is-open{grid-template-rows:1fr}.faq-panel.is-open p{padding-bottom:1.4rem}.contact{background:#e7ece3;grid-template-columns:.85fr 1.15fr;gap:1.5rem;display:grid}.contact-card{background:var(--paper);padding:clamp(2rem,5vw,4rem)}.contact-card h2{font-size:clamp(2.4rem,4vw,4rem)}.contact-card>p{color:#43504c;max-width:32ch;margin-bottom:2.4rem}.contact-card a{border-top:1px solid #d5dbd3;align-items:center;gap:.9rem;padding:1rem 0;font-size:.85rem;display:flex}.contact-card a svg{color:var(--olive)}.contact-card strong{color:var(--ink);font-size:.92rem}.map{background:#cddac0;min-height:420px;display:block;position:relative;overflow:hidden}.map-lines,.map-lines:before,.map-lines:after{content:"";background:repeating-linear-gradient(23deg,#0000 0 49px,#f7faf5 50px 53px,#0000 54px 91px),repeating-linear-gradient(105deg,#0000 0 65px,#f7faf5aa 66px 68px,#0000 69px 126px);position:absolute;inset:0;transform:scale(1.2)rotate(-6deg)}.map-lines:after{opacity:.6;transform:rotate(60deg)}.map-pin{color:var(--ink);text-align:center;background:var(--lime);box-shadow:8px 8px 0 var(--ink);flex-direction:column;align-items:center;gap:.4rem;padding:1.4rem;font-size:.82rem;line-height:1.45;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map small{background:var(--paper);align-items:center;gap:.3rem;padding:.7rem .8rem;font-weight:700;display:flex;position:absolute;bottom:1.2rem;right:1.2rem}.closing{background:var(--olive);color:var(--paper);justify-content:space-between;align-items:center;gap:2rem;padding-block:clamp(5rem,10vw,8rem);display:flex}.closing h2{margin-bottom:1rem}.closing p{max-width:56ch;margin:0}.closing .button{flex:none}footer{color:var(--paper);background:#0d1514;padding:4rem max(1.4rem,50vw - 590px) 1.4rem}.footer-top{grid-template-columns:1.5fr 1fr 1fr;gap:2rem;padding-bottom:3rem;display:grid}.footer-top .brand-mark{border-radius:13px;width:44px;height:44px}.footer-top>div:first-child p{color:#b9c2b8;max-width:26ch;margin-top:1rem;font-size:.85rem}.footer-top h3{color:var(--lime);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;font-size:.72rem}.footer-top a:not(.brand),.footer-top p{color:#dfe5da;font-size:.83rem;line-height:1.8;display:block}.footer-bottom{color:#aab5a9;border-top:1px solid #f7faf526;justify-content:space-between;gap:1rem;padding-top:1.25rem;font-size:.7rem;display:flex}.floating-wa{z-index:15;width:50px;height:50px;color:var(--ink);background:var(--lime);opacity:0;pointer-events:none;border-radius:50%;place-items:center;transition:all .25s;display:grid;position:fixed;bottom:1.3rem;right:1.3rem;transform:translateY(12px);box-shadow:0 7px 22px #121b1a44}.floating-wa.is-visible{opacity:1;pointer-events:auto;transform:none}.mobile-menu{display:none}.about-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:2rem 0 1.2rem;display:grid}.about-points article{border-top:2px solid var(--lime);background:#e7ece3;padding:1rem .9rem}.about-points h3{font:600 1rem/1.1 var(--serif);letter-spacing:-.025em;margin:0 0 .55rem}.about-points p{color:#43504c;margin:0;font-size:.76rem;line-height:1.55}.floating-wa a{width:100%;height:100%;color:inherit;place-items:center;display:grid}.navbar--solid .brand>span:last-child span,.service-card>span{color:#566f2a}.closing{background:#566f2a}.hero-content{text-shadow:0 2px 9px #000000d9}@media (width<=800px){.navbar{justify-content:space-between;padding:1rem 1.2rem;display:flex}.desktop-nav,.desktop-cta{display:none}.menu-toggle{display:block}.navbar--solid .menu-toggle{color:var(--ink)}.mobile-menu{z-index:30;background:var(--ink);color:var(--paper);flex-direction:column;min-height:100dvh;padding:1rem 1.4rem 1.5rem;display:flex;position:fixed;inset:0}.mobile-top{justify-content:space-between;align-items:center;display:flex}.mobile-menu nav{flex-direction:column;margin-top:auto;display:flex}.mobile-menu nav a{font:500 clamp(1.7rem, 8vw, 2.6rem)/1.1 var(--serif);border-bottom:1px solid #f7faf52a;justify-content:space-between;align-items:center;padding:.8rem 0;display:flex}.mobile-menu-cta{margin-top:2rem}.hero{align-items:flex-end;padding:6.4rem 1.4rem 4.1rem}.hero-image{background-image:url(/hero-mobile.png);background-position:50%;background-size:cover}.hero-content{max-width:335px}.hero-scroll{bottom:1.5rem;right:1.4rem}.section{padding:4.8rem 1.4rem}.about,.difference,.faq,.contact{grid-template-columns:1fr;gap:2.7rem}.about-points{grid-template-columns:1fr}.about-art{min-height:320px}.section-head{display:block}.section-head p{margin-top:1.1rem}.embla__slide{min-width:85%}.carousel-arrow{display:none}.swipe-hint{font:500 .66rem var(--mono);text-align:center;margin:1.6rem 0 .7rem;display:block}.method ol{grid-template-columns:1fr;gap:0;margin:2rem 0}.method li{grid-template-columns:50px 1fr;gap:.5rem;padding:1.1rem 0;display:grid}.method li>span{margin:0}.method li p{max-width:40ch}.difference-grid{grid-template-columns:1fr}.difference-grid article{min-height:180px}.difference-grid h3{margin-top:1.5rem}.closing{flex-direction:column;align-items:flex-start}.footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.map{min-height:330px}}@media (width<=380px){h1{font-size:2.6rem}.hero-actions,.hero-actions .button{width:100%}.brand{font-size:.92rem}.brand-mark{border-radius:14px;width:46px;height:46px}.contact-card{padding:1.7rem}}
