:root{--cream: #f3efe6;--cream-soft: #f8f4ec;--cream-warm: #eee7da;--cream-line: #d8d0c1;--ink: #1b1a16;--ink-soft: #56524a;--ink-faint: #8b867b;--green: #1f3d2c;--green-mid: #2c5640;--orange: #B76D4D;--orange-dark: #9C5739;--display: "Funnel Display", system-ui, -apple-system, sans-serif;--body: "DM Sans", system-ui, -apple-system, sans-serif;--maxw: 1480px;--ease: cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{background:var(--cream);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.58;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,a,button,span,li{overflow-wrap:break-word}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{margin:0 auto;max-width:min(var(--maxw),calc(100% - 48px));width:100%}.sec{padding:clamp(58px,7vw,112px) 0}.band-warm{background:var(--cream-warm);isolation:isolate;position:relative}.band-warm:before{background:var(--cream-warm);content:"";inset:0 calc(50% - 50vw);position:absolute;z-index:-1}.label{color:var(--green-mid);display:block;font-size:12px;font-weight:600;letter-spacing:.08em;margin-bottom:14px;text-transform:uppercase}.display{font-family:var(--display);font-weight:500;letter-spacing:-.012em;line-height:1.02}.btn{align-items:center;border:0;border-radius:50px;cursor:pointer;display:inline-flex;font-family:var(--display);font-size:16px;font-weight:700;gap:10px;justify-content:center;line-height:1.1;padding:13px 28px;transition:background .18s ease,border-color .18s ease,color .18s ease;white-space:nowrap}.btn-solid{background:#3a614d;color:#fffbea}.btn-solid:hover{background:#2c4a3b}.btn-orange{background:var(--orange);color:#fffbea}.btn-orange:hover{background:var(--orange-dark)}.btn-line{background:transparent;border:1px solid var(--ink);color:var(--ink)}.btn-line:hover{background:var(--green);border-color:var(--green);color:var(--cream)}.arrow-link{color:var(--green);display:inline-flex;font-size:15px;font-weight:600;gap:9px}.arrow-link:hover{color:var(--orange)}.service-card .arrow-link{align-items:center;align-self:flex-start;background:var(--green);border-radius:999px;color:var(--cream);font-family:var(--display);font-size:13px;font-weight:700;gap:8px;justify-content:center;justify-self:start;line-height:1.1;margin-top:auto;min-height:34px;padding:0 15px;transition:background .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}.service-card .arrow-link:hover{background:#14291f;box-shadow:0 8px 18px #120e0a3d;color:var(--cream);transform:translateY(-1px)}.motion-item{opacity:1;transform:none;transition:opacity .82s var(--ease),transform .82s var(--ease);transition-delay:var(--motion-delay, 0ms)}.motion-item.in-view{opacity:1;transform:none}header.nav{backdrop-filter:blur(18px) saturate(1.4);background:#120e0a6b;border:1px solid rgba(255,255,255,.1);border-radius:60px;box-shadow:0 4px 32px #0000002e;left:50%;max-width:1360px;position:fixed;top:20px;transform:translate(-50%);transition:background .35s var(--ease);width:calc(100% - (clamp(24px,5vw,80px)*2));z-index:50}header.nav.scrolled{background:#f3efe6db}.nav-inner{align-items:center;display:flex;gap:24px;justify-content:space-between;padding:12px clamp(16px,2vw,28px)}.logo-img{height:clamp(34px,2.8vw,42px);width:auto}.logo-img-dark{display:none}header.nav.scrolled .logo-img-dark{display:block}header.nav.scrolled .logo-img-light{display:none}.nav-cluster{align-items:center;display:flex;gap:clamp(12px,1.6vw,24px)}.nav-links{align-items:center;display:flex;gap:clamp(12px,1.4vw,26px);list-style:none}.nav-links a{color:#f3efe6db;font-size:13.5px;font-weight:600}header.nav.scrolled .nav-links a{color:var(--ink-soft)}.nav .btn-line{background:var(--cream);border-color:var(--cream);color:var(--green);padding:8px 20px}.nav .btn-line:hover{background:#fffbea;border-color:#fffbea;color:var(--green)}header.nav.scrolled .btn-line{background:var(--green);border-color:var(--green);color:var(--cream)}.burger{background:none;border:0;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:6px}.burger span{background:var(--cream);height:1.5px;transition:.3s var(--ease);width:22px}header.nav.scrolled .burger span{background:var(--ink)}.mobile-menu{display:none}.hero{padding:clamp(112px,11vw,160px) 0 clamp(40px,5vw,74px)}.hero-grid{align-items:end;display:grid;gap:clamp(24px,5vw,84px);grid-template-columns:minmax(320px,1fr) minmax(300px,.82fr)}.hero h1{font-size:clamp(38px,5.8vw,82px);max-width:15ch}.hero-copy{color:var(--ink-soft);font-size:clamp(17px,1.45vw,22px);max-width:50ch}.hero-foot{border-top:1px solid var(--cream-line);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-top:clamp(34px,5vw,76px);padding-top:18px}.hero-foot span{color:var(--ink-faint);font-size:13px}.scroll-services{width:100%}.service-stack{border-top:1px solid var(--cream-line)}.service-panel{border-bottom:1px solid var(--cream-line);min-height:clamp(520px,72vh,760px);opacity:1;padding:clamp(32px,5vw,74px) 0;transform:none;transition:opacity .55s var(--ease),transform .55s var(--ease)}.service-panel.in-view{opacity:1;transform:none}.service-panel.is-active{opacity:1;transform:translateY(0) scale(1)}.service-card{border:1px solid transparent;border-radius:clamp(16px,2vw,28px);display:grid;gap:clamp(18px,2vw,30px);grid-template-columns:auto minmax(280px,.74fr) minmax(320px,1.06fr);overflow:hidden;padding:clamp(22px,3vw,38px);transition:background .35s ease,border-color .35s ease,color .35s ease}.service-panel.is-active .service-card{background:var(--orange);border-color:var(--orange);color:var(--cream)}.service-card-num{color:var(--ink-faint);font-family:var(--display);font-size:clamp(32px,3.2vw,48px);line-height:1;transition:color .35s ease}.service-panel.is-active .service-card-num{color:#fffbeab8}.service-card h2{font-family:var(--display);font-size:clamp(34px,5vw,76px);font-weight:500;letter-spacing:-.014em;line-height:.98;margin-bottom:16px}.service-card p{color:var(--ink-soft);max-width:52ch;transition:color .35s ease}.service-panel.is-active .service-card p{color:#fffbead1}.service-tags{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin-top:24px}.service-tags li{border:1px solid var(--cream-line);border-radius:999px;color:var(--ink-soft);font-size:13px;padding:7px 12px;transition:border-color .35s ease,color .35s ease}.service-panel.is-active .service-tags li{border-color:#fffbea61;color:#fffbead6}.service-card .arrow-link{grid-column:2;margin-top:8px}.service-panel.is-active .arrow-link{color:var(--cream)}.service-image{align-self:stretch;background:var(--cream-soft);border-radius:clamp(10px,1.2vw,18px);grid-column:3;grid-row:1 / span 2;min-height:100%;overflow:hidden}.service-image img{height:100%;min-height:clamp(320px,38vw,520px);object-fit:cover;object-position:center;transform:scale(1.04) translateY(18px);transition:transform .75s var(--ease);width:100%}.service-panel.is-active .service-image img{transform:scale(1) translateY(0)}.method-grid{display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.method-card{background:var(--cream);border:1px solid var(--cream-line);padding:clamp(22px,3vw,38px)}.method-card span{color:var(--orange);display:block;font-family:var(--display);font-size:34px;line-height:1;margin-bottom:22px}.method-card h3{font-family:var(--display);font-size:clamp(22px,2vw,30px);font-weight:500;line-height:1.08;margin-bottom:12px}.method-card p{color:var(--ink-soft);font-size:14.5px}.cta-block{align-items:center;border:1px solid var(--cream-line);display:grid;gap:clamp(28px,4vw,72px);grid-template-columns:minmax(300px,1fr) auto;padding:clamp(32px,5vw,70px)}.cta-block h2{font-family:var(--display);font-size:clamp(32px,4vw,62px);font-weight:500;letter-spacing:-.012em;line-height:1.04;max-width:17ch}.cta-block p{color:var(--ink-soft);margin-top:16px;max-width:54ch}footer.foot{border-top:1px solid var(--cream-line)}.foot-cols{display:grid;gap:clamp(28px,4vw,60px);grid-template-columns:1.7fr 1fr 1fr 1.2fr;padding:clamp(54px,7vw,90px) 0 clamp(40px,5vw,64px)}.foot-brand img{height:34px;margin-bottom:16px;width:auto}.foot-brand p{color:var(--ink-faint);max-width:30ch}.foot-col h4{color:var(--green-mid);font-size:12px;font-weight:600;letter-spacing:.1em;margin-bottom:18px;text-transform:uppercase}.foot-col ul{display:flex;flex-direction:column;gap:10px;list-style:none}.foot-col a{color:var(--ink-soft);font-size:15px}.foot-col a:hover{color:var(--orange)}.foot-bottom{border-top:1px solid var(--cream-line);color:var(--ink-faint);display:flex;flex-wrap:wrap;font-size:13px;justify-content:space-between;padding:24px 0 42px}@media(max-width:1050px){.hero-grid,.cta-block{grid-template-columns:1fr}.service-card{grid-template-columns:auto 1fr}.service-image{grid-column:1 / -1;grid-row:auto}.method-grid,.foot-cols{grid-template-columns:1fr 1fr}}@media(max-width:760px){body{font-size:16px}.wrap{max-width:none;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.nav-links,.nav-cluster .btn-line{display:none}.burger{display:flex}.mobile-menu{background:var(--cream);display:flex;flex-direction:column;inset:0;padding:110px 20px 40px;position:fixed;transform:translateY(-100%);transition:transform .45s var(--ease);z-index:45}.mobile-menu.open{transform:none}.mobile-menu a{border-bottom:1px solid var(--cream-line);font-family:var(--display);font-size:clamp(30px,9vw,38px);padding:12px 0}.mobile-menu .btn-solid{align-self:flex-start;border-bottom:0;font-size:15px;margin-top:30px;padding:11px 22px}body.menu-open{overflow:hidden}.burger.x span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.burger.x span:nth-child(2){opacity:0}.burger.x span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero{padding-top:96px}.hero h1{font-size:clamp(34px,10vw,48px)}.service-panel{min-height:auto;padding:18px 0}.service-card{grid-template-columns:1fr;padding:24px 20px}.service-card .arrow-link,.service-image{grid-column:auto}.service-image img{min-height:260px}.method-grid,.foot-cols{grid-template-columns:1fr}.cta-block{padding:28px 20px}.cta-block .btn{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.motion-item{opacity:1;transform:none}}
