@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-VariableFont_wght.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Italic-VariableFont_wght.ttf) format("truetype");font-weight:100 900;font-style:italic;font-display:swap}:root{--color-forest-deep: #2D5A27;--color-forest-dark: #1E3D1A;--color-forest-mid: #3D6E37;--color-forest-light: #4A8A42;--color-forest-pale: #D4E8D1;--color-forest-tint: #EEF5ED;--color-bronze: #A0784A;--color-gold: #C9A96E;--color-gold-light: #E8D5B0;--color-gold-tint: #F7F0E4;--font-display: "Cormorant Garamond", Georgia, serif;--font-ui: "Montserrat", system-ui, sans-serif;--font-mono: "DM Mono", "Courier New", monospace;--ink: #16352a;--ink-deep: #0c2018;--green: #0c6b4a;--green-dark: #0a5740;--mint: #7fd4ab;--mint-bg: #eef5ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f0f6f2;color:#2c2c2c;font-family:var(--font-ui);-webkit-font-smoothing:antialiased}a{color:inherit}.karly-site,.karly-svc{overflow-x:hidden}.wrap{max-width:1240px;margin:0 auto;padding:0 40px}.serif{font-family:var(--font-display)}.eyebrow{font:600 11px var(--font-ui);letter-spacing:.2em;text-transform:uppercase}.btn-primary{display:inline-flex;align-items:center;gap:9px;font:600 13px var(--font-ui);letter-spacing:.02em;text-decoration:none;background:#0c6b4a;color:#fff;padding:14px 26px;border-radius:999px;border:none;cursor:pointer;transition:background .2s,transform .12s,box-shadow .2s}.btn-primary:hover{background:#0a5740;box-shadow:0 12px 32px -12px #0c6b4a8c;transform:translateY(-1px)}.btn-primary:active{transform:scale(.97)}.btn-ghost{display:inline-flex;align-items:center;gap:9px;font:600 13px var(--font-ui);text-decoration:none;background:transparent;color:#fff;padding:14px 26px;border-radius:999px;border:1.4px solid rgba(255,255,255,.4);cursor:pointer;transition:background .2s}.btn-ghost:hover{background:#ffffff1a}.btn-dark{display:inline-flex;align-items:center;gap:9px;font:600 13px var(--font-ui);text-decoration:none;background:#16352a;color:#fff;padding:14px 26px;border-radius:999px;border:none;cursor:pointer;transition:background .2s,transform .12s,box-shadow .2s}.btn-dark:hover{background:#0c2018;box-shadow:0 12px 32px -12px #0c201880;transform:translateY(-1px)}.btn-dark:active{transform:scale(.97)}.btn-outline-dark{display:inline-flex;align-items:center;gap:9px;font:600 13px var(--font-ui);text-decoration:none;background:transparent;color:#16352a;padding:14px 26px;border-radius:999px;border:1.4px solid #cdd4cd;cursor:pointer}.btn-outline-dark:hover{border-color:#16352a}.navlink{position:relative;font:500 13.5px var(--font-ui);text-decoration:none;color:#ffffffd1;letter-spacing:.01em;transition:color .2s;white-space:nowrap}.navlink:hover{color:#fff}.navlink:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1.5px;background:#c9a96e;transition:width .35s cubic-bezier(.4,0,.2,1)}.navlink:hover:after{width:100%}.lang-seg{display:inline-flex;border:1px solid rgba(255,255,255,.28);border-radius:999px;overflow:hidden}.lang-seg button{font:600 11px var(--font-ui);letter-spacing:.06em;padding:7px 13px;border:none;cursor:pointer;background:transparent;color:#ffffffa6}.ph{position:relative;overflow:hidden;background:linear-gradient(135deg,#e8f1ea,#d4e7da 55%,#e1ebe3);box-shadow:inset 0 0 0 1px #16352a0d}.ph:after{content:attr(data-label);position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 18px;font:600 10.5px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:#16352a66}.svc-card{transition:transform .25s,box-shadow .25s}.svc-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px -20px #16352a47}.feat-card{background:#fff;border:1px solid #ececE6;border-radius:16px;padding:28px 26px;box-shadow:0 2px 8px #0000000a}details.faq{border-bottom:1px solid #e2e2db}details.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 4px;font-family:var(--font-display);font-size:24px;font-weight:600;color:#16352a}details.faq summary::-webkit-details-marker{display:none}details.faq summary .pm{flex:0 0 auto;width:34px;height:34px;border-radius:999px;border:1.4px solid #c7cdc6;display:flex;align-items:center;justify-content:center;font-family:var(--font-ui);font-size:20px;font-weight:400;color:#0c6b4a;transition:transform .25s,background .2s}details.faq[open] summary .pm{transform:rotate(45deg);background:#0c6b4a;border-color:#0c6b4a;color:#fff}details.faq .ans{padding:0 4px 26px;max-width:780px;font:400 14.5px/1.7 var(--font-ui);color:#55564f}.field-label{display:block;font:600 12px var(--font-ui);letter-spacing:.04em;color:#3d3d3d;margin-bottom:8px}.field{width:100%;font:400 14px var(--font-ui);color:#2c2c2c;background:#fff;border:1px solid #d8d8d2;border-radius:10px;padding:13px 15px;outline:none;transition:border .2s,box-shadow .2s}.field:focus{border-color:#0c6b4a;box-shadow:0 0 0 3px #0c6b4a21}.chip{font:600 12.5px var(--font-ui);padding:10px 16px;border-radius:999px;border:1.3px solid #d8d8d2;background:#fff;color:#3d3d3d;cursor:pointer;transition:all .18s}.chip:hover{border-color:#0c6b4a}.chip.on{background:#16352a;border-color:#16352a;color:#fff}.proj-tile{position:relative;border-radius:14px;overflow:hidden;cursor:pointer}.proj-tile img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.proj-tile:hover img{transform:scale(1.05)}.proj-tile .cap{position:absolute;left:0;right:0;bottom:0;padding:18px 20px;background:linear-gradient(180deg,transparent,rgba(10,24,16,.85));color:#fff;pointer-events:none;transform:translateY(5px);transition:transform .45s cubic-bezier(.2,.6,.2,1)}.proj-tile:hover .cap{transform:none}.iso-scene{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#f2f8f3,#e0eee5)}.iso-scene:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(22,53,42,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(22,53,42,.07) 1px,transparent 1px);background-size:44px 44px}.iso-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(100% 80% at 50% 35%,transparent 45%,rgba(22,53,42,.07))}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.marq{overflow:hidden;white-space:nowrap;border-top:1px solid rgba(22,53,42,.1);border-bottom:1px solid rgba(22,53,42,.1);background:#fff}.marq-in{display:inline-flex;gap:60px;align-items:center;padding:20px 0;animation:marq 38s linear infinite;will-change:transform}@keyframes marq{0%{transform:translate(0)}to{transform:translate(-50%)}}.marq span{font-family:var(--font-display);font-size:32px;font-style:italic;color:#16352a66;letter-spacing:.01em}.marq b{color:#c9a96e;font-weight:400;font-size:18px}.rv{opacity:0;transform:translateY(26px);transition:opacity .85s cubic-bezier(.2,.6,.2,1),transform .85s cubic-bezier(.2,.6,.2,1)}.rv.on{opacity:1;transform:none}@media print{.rv{opacity:1!important;transform:none!important}}@media (prefers-reduced-motion: reduce){.rv{opacity:1;transform:none;transition:none}.marq-in{animation:none}}@media (max-width: 1100px){.nav-links{display:none!important}}@media (max-width: 880px){.wrap{padding:0 22px}.hero-grid,.two-col{grid-template-columns:1fr!important}.nav-links{display:none!important}.hero-cards{grid-template-columns:1fr!important}.stats-row,.svc-grid{grid-template-columns:1fr 1fr!important}.proj-grid{grid-template-columns:1fr!important}.h-hero{font-size:46px!important}.svc-hero-grid{grid-template-columns:1fr!important}.feat-grid{grid-template-columns:1fr 1fr!important}.step-grid{grid-template-columns:1fr!important}.gal-grid{grid-template-columns:1fr 1fr!important}.h-svc{font-size:42px!important}}
