/* Generated by scripts/build-styles.mjs. Edit the original stylesheets. */
/* Local copies of DM Sans and Manrope. Licenses: dmsans-OFL.txt and manrope-OFL.txt */

/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/dm-sans-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/dm-sans-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/manrope-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/manrope-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/manrope-greek.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/manrope-vietnamese.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/manrope-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/fonts/manrope-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{--paper:#f5f5ef;--ink:#20221f;--muted:#6a6d65;--line:#d9dbd1;--lime:#d2ef77;--font:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #6d8d22;outline-offset:5px}::selection{background:var(--lime);color:var(--ink)}.wrap{width:min(1280px,calc(100% - 104px));margin-inline:auto}.header{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{font-family:var(--display);font-size:52px;line-height:1;font-weight:800;letter-spacing:-5px;padding-right:5px}.brand-dot{color:#86a936}.header nav{display:flex;gap:35px;font-size:14px}.header nav a:hover{color:#6b851e}.nav-contact{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:5px;display:flex;gap:40px}.nav-contact span{font-size:22px;line-height:1}.hero{padding-top:57px}.eyebrow{font-size:11px;letter-spacing:1.65px;font-weight:650;margin:0 0 26px;line-height:1.6}.signal{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8aa835;margin:0 9px 1px 0}.hero-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:50px;align-items:end}.hero h1{font-family:var(--display);font-size:clamp(66px,7.6vw,110px);font-weight:600;line-height:1.06;letter-spacing:-6px;margin:0}.hero h1>span{position:relative;z-index:0;white-space:nowrap}.hero h1>span:before{content:'';position:absolute;z-index:-1;inset:55% -8px 2% -4px;background:var(--lime);transform:rotate(-1.2deg)}.hero-side{max-width:340px;justify-self:end;padding-bottom:6px}.hero-side p{font-size:19px;line-height:1.5;margin:0 0 16px}.hero-side .muted{color:var(--muted);font-size:15px;margin-bottom:26px}.button{border:0;border-radius:0;min-height:54px;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:15px 23px;font-size:14px;font-weight:500;transition:background .2s,transform .2s}.button span{font-size:22px;line-height:1}.button.dark{background:var(--ink);color:#fff}.button.dark:hover{background:#3d4730;transform:translateY(-2px)}.hero-foot{margin-top:66px;border-top:1px solid var(--line);padding:19px 0;display:flex;justify-content:space-between;gap:30px;font-size:11px;color:var(--muted)}.hero-foot span:last-child{display:flex;gap:20px}.hero-foot span span{font-size:20px;color:var(--ink)}.section{padding-top:108px;padding-bottom:105px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:18px}h2{font-family:var(--display);font-weight:500;font-size:clamp(34px,3.5vw,49px);line-height:1.15;letter-spacing:-2px;margin:0}.section-heading>p{max-width:310px;font-size:15px;color:var(--muted);margin:0 0 5px}.filters{display:flex;gap:7px;flex-wrap:wrap;margin:37px 0 33px}.filter{background:transparent;border:1px solid var(--line);padding:9px 18px;border-radius:30px;font-size:12px;transition:all .15s}.filter:hover{border-color:#989f89}.filter.active{color:var(--paper);background:var(--ink);border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:53px 28px}.project[hidden]{display:none}.project-visual{position:relative;width:100%;border:0;overflow:hidden;height:340px;padding:0;display:block;text-align:left;transition:background .2s}.screen{background:#e1e2d9;padding:34px 28px 0}.screen img{display:block;object-fit:cover;object-position:top;width:100%;height:auto;box-shadow:0 5px 23px #0002;transition:transform .4s;min-height:230px}.screen:hover img{transform:translateY(-8px)}.percentil{background:#e0e4de}.interchile{background:#dfe4e5}.browser-bar{height:23px;background:#fff;display:flex;align-items:center;gap:4px;border-radius:5px 5px 0 0;padding:0 9px;position:relative;z-index:1}.browser-bar i{width:4px;height:4px;border-radius:50%;background:#bbb}.browser-bar span{font-size:8px;color:#8b8c87;position:absolute;left:50%;transform:translateX(-50%);font-weight:400}.browser-bar b{margin-left:auto;font-size:10px;color:#aaa}.view-case{position:absolute;right:17px;bottom:17px;background:var(--ink);color:#fff;padding:9px 13px;font-size:11px;opacity:0;transform:translateY(4px);transition:all .2s}.project-visual:hover .view-case,.project-visual:focus-visible .view-case{opacity:1;transform:none}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:21px}.project-meta p{font-size:9px;font-weight:600;letter-spacing:1px;margin:0}.status{white-space:nowrap;font-size:10px;padding:4px 8px;line-height:1.4;border:1px solid var(--line);border-radius:3px}.status:before{content:'';display:inline-block;width:4px;height:4px;margin-right:5px;vertical-align:2px;border-radius:50%;background:#72912e}.status.progress:before{background:#b58b43}.project h3{font-family:var(--display);font-weight:600;font-size:25px;letter-spacing:-.9px;line-height:1.2;margin:13px 0 10px}.project h3 button{padding:0;background:none;border:0;font:inherit;display:flex;width:100%;align-items:center;justify-content:space-between;text-align:left}.project h3 button span{font-size:24px;font-weight:400}.project-description{color:var(--muted);font-size:14px;margin:0;max-width:490px}.graphic{padding:30px;display:flex;flex-direction:column;justify-content:space-between}.onpoint{background:#242b38;color:#e4e9f0}.visual-kicker{font-size:9px;letter-spacing:1.8px;font-weight:600}.flow{display:flex;align-items:center;justify-content:center;gap:28px;font-family:var(--display);font-size:48px;font-weight:500}.flow>span{position:relative;border:1px solid #667080;border-radius:17px;width:132px;height:119px;display:flex;align-items:center;justify-content:center}.flow b{font-size:32px;color:#b3c4e3;font-weight:400}.tiny-spark{position:absolute;right:10px;top:7px;font-size:18px;color:#badb97}.visual-caption{font-size:12px;opacity:.65}.bikids{background:#e3e9ce}.bikids-word{display:block;align-self:center;font-size:89px;letter-spacing:-6px;font-weight:700;position:relative}.bikids-word>span:first-child{color:#6a8b42}.bikids-star{font-size:51px;position:absolute;right:-32px;top:-25px;color:#99af63}.bobby{background:#e8dfd7;color:#5a3d31}.bobby-word{align-self:center;text-align:center;display:block;font-family:Georgia,serif;font-size:67px;line-height:.9;font-style:italic;letter-spacing:-4px}.bobby-word>span{display:block;font-family:var(--font);font-style:normal;text-transform:uppercase;font-size:12px;letter-spacing:5px;margin-top:18px}.project-wide{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.project-wide .project-visual{height:300px}.project-wide-info{padding:0 35px}.project-wide .project-meta{margin-top:0}.text-link{background:none;border:0;border-bottom:1px solid var(--ink);font-size:13px;padding:0 0 5px;display:inline-flex;gap:25px;align-items:center;margin-top:25px}.services{background:#eaece3}.service-list{border-top:1px solid #cbd0c2;margin-top:50px}details{border-bottom:1px solid #cbd0c2}summary{display:flex;gap:30px;align-items:center;padding:27px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-symbol{font-size:28px;font-family:Arial,sans-serif;width:30px;line-height:1;flex-shrink:0}summary h3{font-family:var(--display);font-size:23px;letter-spacing:-.6px;font-weight:500;margin:0}.detail-toggle{margin-left:auto;font-size:28px;line-height:1;font-weight:400}details[open] .detail-toggle{transform:rotate(45deg)}.service-content{padding:0 55px 30px 0;max-width:820px}.service-content p{font-size:16px;margin:0 0 17px;color:#555d4e}.service-content>span{font-size:11px;color:#68725c}.about{display:grid;grid-template-columns:1fr 1.3fr;gap:120px;padding-block:125px}.about h2{font-size:70px;letter-spacing:-3px}.lime-dot{color:#8daa37}.about-name{font-size:12px;line-height:1.8;color:var(--muted);margin-top:28px}.about-copy{padding-top:32px}.about-copy .large-copy{font-family:var(--display);font-size:24px;line-height:1.5;letter-spacing:-.6px;color:var(--ink);margin:0 0 25px}.about-copy p{color:var(--muted);font-size:15px;line-height:1.75}.approach{display:flex;gap:14px;align-items:center;margin-top:36px;padding-top:23px;border-top:1px solid var(--line);font-size:10px}.contact{background:var(--lime);padding:39px 48px 46px}.contact-top{display:flex;justify-content:space-between}.contact-top>span{font-size:60px;font-family:Arial,sans-serif;line-height:.9}.contact h2{font-size:clamp(37px,4.5vw,62px);letter-spacing:-2.5px}.contact-bottom{margin-top:35px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.contact-bottom p{font-size:15px;margin:0;line-height:1.7}.footer{display:flex;align-items:center;gap:35px;justify-content:space-between;padding-block:52px}.footer .brand{font-size:40px;letter-spacing:-4px}.footer p{margin:0;font-size:11px;color:var(--muted)}.footer>a:last-child{font-size:11px}.skip{position:fixed;left:20px;top:-100px;z-index:99;background:var(--ink);color:white;padding:10px}.skip:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{background:var(--paper);color:var(--ink);border:0;width:min(760px,calc(100% - 32px));max-height:90dvh;padding:50px;overflow:auto}dialog::backdrop{background:#151a15aa;backdrop-filter:blur(4px)}body:has(dialog[open]){overflow:hidden}.close-dialog{position:absolute;top:15px;right:20px;border:0;background:none;font-size:33px;line-height:1;width:36px;height:36px}.dialog-image{width:100%;margin:28px 0 10px;border:1px solid var(--line)}.dialog-intro{color:var(--muted);font-size:16px;margin:22px 0}.dialog-body h3{font-size:13px;text-transform:uppercase;letter-spacing:1px;margin-top:30px}.dialog-body p,.dialog-body li{font-size:15px;color:#5d6457}.dialog-body ul{padding-left:20px}.dialog-body .status{display:inline-block;margin-top:18px}.dialog-body .button{margin-top:20px}.dialog-note{border-top:1px solid var(--line);padding-top:15px;font-size:12px!important}.dialog-source{font-size:12px;color:var(--muted);margin-top:17px}form{display:grid;gap:18px}label{display:grid;gap:7px;font-size:13px}input,textarea,select{width:100%;border:1px solid #cbd0c2;background:#fff9;color:var(--ink);padding:12px;border-radius:0;min-height:45px;font-size:15px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid #91a85d;outline-offset:2px}.form-notice{font-size:11px;color:var(--muted);margin:0}#copy-status{font-size:12px}
.antonia{background:#dedfe1}.ayl{background:#dbdfe6}.contact-links{border-top:1px solid #abc65e;margin-top:30px;padding-top:19px;display:flex;gap:25px;flex-wrap:wrap;font-size:12px}.contact-links a:hover{text-decoration:underline}.contact-links button{background:none;border:0;padding:0;font:inherit;margin-left:auto;text-decoration:underline;text-underline-offset:4px}.send-options{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:20px}.send-options .text-link{margin-top:0}.dialog-image{height:auto}
@media(min-width:1500px){.hero h1{font-size:114px}.hero-grid{grid-template-columns:1.8fr 1fr}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero h1{letter-spacing:-4px;font-size:8.3vw}.hero-grid{gap:30px}.hero-side{max-width:290px}.hero-side p{font-size:17px}.project-visual{height:290px}.screen{padding:28px 20px 0}.project-meta{flex-wrap:wrap}.about{gap:60px}.project-wide-info{padding:0 10px}.hero-foot{font-size:10px}.hero-foot>span:last-child{display:none}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{height:85px;gap:15px}.brand{font-size:44px;letter-spacing:-4px}.header nav{gap:18px;font-size:12px}.header nav a:last-child{display:none}.nav-contact{font-size:12px;gap:12px}.nav-contact span{font-size:18px}.hero{padding-top:35px}.eyebrow{font-size:9px;letter-spacing:1.2px;margin-bottom:25px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{font-size:clamp(52px,10.8vw,80px);letter-spacing:-3px;line-height:1.08}.hero-side{justify-self:start;max-width:100%;padding:0;position:relative;padding-right:0}.hero-side p{max-width:470px;font-size:17px;margin-bottom:10px}.hero-side .muted{font-size:14px;margin-bottom:22px}.button{padding:14px 20px;min-height:51px;font-size:13px}.hero-foot{margin-top:35px;padding-block:17px;font-size:9px}.section{padding-block:65px}.section-heading{display:block;margin-bottom:26px}.section-heading>p{margin-top:20px;max-width:340px;font-size:14px}h2{font-size:35px;letter-spacing:-1.4px}.filters{gap:6px;margin:25px 0}.filter{padding:8px 13px;font-size:11px}.project-grid{gap:36px 20px}.project-visual{height:240px}.screen{padding:20px 15px 0}.project h3{font-size:21px}.project-meta{gap:8px;margin-top:15px}.project-meta p{font-size:8px;letter-spacing:.6px}.status{font-size:9px}.project-description{font-size:13px}.flow{gap:15px;font-size:32px}.flow>span{width:80px;height:78px;border-radius:12px}.flow b{font-size:23px}.graphic{padding:20px}.visual-kicker{font-size:8px;letter-spacing:1px}.visual-caption{font-size:10px}.bikids-word{font-size:67px}.bikids-star{font-size:35px;right:-24px;top:-14px}.bobby-word{font-size:52px}.project-wide{display:block}.project-wide .project-visual{height:260px}.project-wide-info{padding:0}.project-wide .project-meta{margin-top:18px}.view-case{display:none}.service-list{margin-top:35px}summary{padding-block:24px;gap:18px}summary h3{font-size:19px;letter-spacing:-.5px}.service-symbol{font-size:25px;width:25px}.service-content{padding:0 0 23px}.service-content p{font-size:14px}.service-content>span{font-size:10px}.about{grid-template-columns:1fr;gap:25px}.about h2{font-size:58px}.about-copy{padding-top:0}.about-copy .large-copy{font-size:22px}.about-copy p{font-size:14px}.about-name{margin-top:20px}.approach{gap:10px;flex-wrap:wrap;font-size:10px}.contact{padding:28px 25px}.contact h2{font-size:38px;letter-spacing:-1.8px}.contact-top>span{font-size:44px}.contact-bottom{display:block;margin-top:23px}.contact-bottom p{font-size:13px}.contact-bottom .button{margin-top:25px;width:100%}.footer{gap:20px;flex-wrap:wrap;padding-block:35px}.footer p{font-size:10px;max-width:190px}.footer>a:last-child{margin-left:auto}.dialog-body h2{font-size:34px}dialog{padding:48px 25px 30px}.dialog-body p,.dialog-body li{font-size:14px}}
@media(max-width:520px){.project-grid{grid-template-columns:1fr}.project-wide{grid-column:auto}.project-visual{height:290px}.screen{padding:27px 22px 0}.project h3{font-size:24px}.project-meta p{font-size:9px}.status{font-size:10px}.project-description{font-size:14px}.flow{font-size:45px;gap:25px}.flow>span{width:110px;height:103px}.bikids-word{font-size:86px}.graphic{padding:26px}.visual-caption{font-size:12px}.project-wide .project-visual{height:290px}.bobby-word{font-size:67px}.footer>a:last-child{display:none}.hero .eyebrow{max-width:285px;line-height:1.9}.hero h1{font-size:clamp(48px,11vw,57px)}}
.project{min-width:0}
.kronos{background:#dde4d7;color:#293d2d}.kronos-word{font-family:var(--display);font-size:clamp(40px,5vw,70px);font-weight:500;letter-spacing:-3px;align-self:center;line-height:1.1}.kronos-word small{font-family:var(--font);font-size:13px;letter-spacing:0;padding:6px 9px;border:1px solid #9ba995;border-radius:3px;vertical-align:middle}
.about{grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.about-portrait{margin:0;min-width:0}.about-portrait img{display:block;width:100%;height:580px;object-fit:cover;object-position:50% 68%;background:#dce0da}.about-portrait figcaption{font-size:10px;letter-spacing:.4px;color:var(--muted);padding-top:12px}.about-copy{padding-top:0}.about-copy .eyebrow{margin-bottom:20px}.about-copy .about-name{margin:20px 0 28px;font-size:12px;line-height:1.8}.about-copy .large-copy{font-size:23px;line-height:1.4;margin-bottom:20px}
@media(max-width:1100px) and (min-width:761px){.about{gap:45px}.about h2{font-size:58px}.about-portrait img{height:610px}}
@media(max-width:760px){.about{grid-template-columns:1fr;gap:35px}.about-portrait{max-width:460px;width:100%;margin-inline:auto}.about-portrait img{height:auto;aspect-ratio:4/5;object-position:50% 68%}.about-copy .large-copy{font-size:22px}}
@media(max-width:520px){.project-grid{grid-template-columns:minmax(0,1fr)}.contact-links button{margin-left:0}}
@media(max-width:400px){.header{gap:10px}.header nav{gap:12px}.nav-contact{gap:8px}}
@media(max-width:360px){.flow{gap:15px;font-size:34px}.flow>span{width:85px;height:85px}.graphic{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

body{overflow-wrap:break-word}.header{height:96px;position:relative;z-index:20}.header nav{gap:28px}.header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-color:#91ad43}.nav-cta{background:var(--ink);color:var(--paper);padding:11px 19px;font-size:12px;white-space:nowrap}.nav-cta:hover{background:#3d4730}#menu-toggle{display:none}.button.secondary{background:transparent;border:1px solid #aeb3a3;color:var(--ink)}.button.secondary:hover{background:#e7eadf}.hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:28px}.button{justify-content:center}.text-link{line-height:1.5}
.home-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:75px;align-items:center;padding-block:70px 50px}.home-hero .eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:27px}.home-hero h1{font-family:var(--display);font-size:clamp(45px,4.9vw,70px);line-height:1.1;font-weight:600;letter-spacing:-3.6px;margin:0 0 27px}.home-hero h1 span{position:relative;z-index:0;white-space:nowrap}.home-hero h1 span:before{content:'';position:absolute;z-index:-1;inset:60% -5px 0;background:var(--lime);transform:rotate(-1deg)}.hero-lead{font-family:var(--display);font-size:23px;line-height:1.45;letter-spacing:-.6px;max-width:520px;margin:0 0 16px}.hero-description{max-width:490px;color:var(--muted);font-size:15px;line-height:1.75;margin:0}.hero-reassurance{font-size:11px;color:var(--muted);margin:15px 0 0}.home-photo{margin:0;position:relative;min-width:0}.home-photo img{display:block;width:100%;height:470px;object-fit:cover;object-position:50% 65%}.home-photo figcaption{padding:17px 20px;background:#e6e9dd;display:grid;gap:3px}.home-photo figcaption strong{font-family:var(--display);font-size:16px;font-weight:600}.home-photo figcaption span{font-size:12px;color:#626a56}.home-proof{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;padding-block:17px;font-size:11px;color:#636a58}.home-proof span{display:flex;align-items:center;gap:10px}.home-proof span:before{content:'';width:5px;height:5px;background:#8ba537;border-radius:50%}
.needs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.needs-grid>a,.needs-grid>div{border-top:1px solid #b5bdaa;padding:25px 0 0;min-width:0}.needs-grid h3{font-family:var(--display);font-size:23px;line-height:1.3;letter-spacing:-.7px;font-weight:500;margin:0 0 15px}.needs-grid p{font-size:14px;color:var(--muted);line-height:1.8;margin:0}.needs-grid a>span{display:inline-block;font-size:12px;margin-top:22px;border-bottom:1px solid #9ba88a;padding-bottom:4px}.needs-grid>a:hover h3{color:#657b2e}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 35px}.solution-card{padding:30px 0 27px;border-top:1px solid #c3caba;display:block}.solution-card h3{font-family:var(--display);font-size:22px;line-height:1.35;letter-spacing:-.5px;font-weight:500;min-height:60px;margin:0 0 14px}.solution-card p{font-size:14px;color:#626b56;line-height:1.7;min-height:48px;margin:0 0 24px}.solution-card>span{font-size:11px;display:inline-block;border-bottom:1px solid #8e9a7c;padding-bottom:3px}.solution-card:hover h3{color:#6a802c}
.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.featured-grid .project-visual{height:240px;padding:22px 18px 0}.featured-grid .project h3{font-size:23px}.featured-grid .project-meta{display:grid;gap:7px;justify-content:start}.featured-grid .project-meta .status{justify-self:start}.project-meta p{text-transform:uppercase}.project-meta{flex-wrap:wrap}.project-grid .project{min-width:0}.project h3 a:hover{text-decoration:underline;text-underline-offset:5px}.screen img{min-height:0}.process-section{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;border-block:1px solid var(--line)}.process-list>div{padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid var(--line)}.process-list>div:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}.process-list h3{font-family:var(--display);font-size:22px;font-weight:500;letter-spacing:-.5px;margin:0 0 8px}.process-list p{font-size:14px;color:var(--muted);line-height:1.75;margin:0}.home-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq-list{border-top:1px solid var(--line);min-width:0}.faq-list summary{padding:22px 0;gap:25px}.faq-list summary h3{font-size:18px;line-height:1.5}.faq-list .service-content{padding:0 30px 22px 0}.faq-list .service-content p{font-size:14px;line-height:1.8}
.cta-band{padding:42px 48px 35px;margin-bottom:75px}.cta-band h2{font-size:clamp(34px,3.7vw,52px);max-width:900px}.cta-band .contact-bottom{margin-top:25px;align-items:center}.cta-band .contact-bottom p{max-width:600px}.band-contact{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid #afc76a;padding-top:19px;margin-top:27px;font-size:13px}.band-contact a:hover{text-decoration:underline}.site-footer{padding-bottom:30px}.footer-main{display:grid;grid-template-columns:1.1fr .7fr 1fr;gap:60px;padding:0 0 42px}.footer-main p{font-size:14px;line-height:1.7;margin:20px 0}.footer-main .footer-small{font-size:11px;color:var(--muted);margin-bottom:0}.footer-nav,.footer-contacts{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding-top:8px;font-size:13px}.footer-contacts a{overflow-wrap:anywhere}.footer-main a:hover:not(.brand){text-decoration:underline;text-underline-offset:4px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;font-size:10px;color:var(--muted);gap:20px}
.page-intro{padding-block:68px 50px}.page-intro .eyebrow{margin-bottom:22px}.page-intro h1{font-family:var(--display);font-size:clamp(42px,5vw,70px);line-height:1.12;letter-spacing:-3px;font-weight:500;max-width:1050px;margin:0 0 24px}.page-intro h1>span{color:#6e862e}.page-intro>p:not(.eyebrow){font-size:18px;line-height:1.8;color:var(--muted);max-width:750px;margin:0}.page-intro .breadcrumb{display:inline-block;font-size:12px;margin-bottom:35px;border-bottom:1px solid #a5af97;padding-bottom:3px}.section-first{padding-top:24px}.two-column{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.two-column p{font-size:16px;color:var(--muted);line-height:1.9;margin:0 0 22px}.two-column .large-copy{font-size:24px;color:var(--ink);line-height:1.5;letter-spacing:-.5px}.detail-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;border-top:1px solid var(--line)}.detail-layout aside p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.9}.detail-layout h2{font-size:33px;letter-spacing:-1px}.detail-layout>div>p{font-size:16px;line-height:1.9;color:var(--muted)}.scope-list{list-style:none;padding:0;margin:25px 0}.scope-list li{padding:14px 0 14px 22px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.7;position:relative}.scope-list li:before{content:'';position:absolute;left:0;top:24px;background:#97ad56;width:5px;height:5px;border-radius:50%}.subheading{font-family:var(--display);font-size:25px;font-weight:500;letter-spacing:-.6px;margin:42px 0 20px}.outcome-list{display:grid;gap:7px}.outcome-list p{background:#e8ece0;margin:0;padding:13px 18px;font-size:14px}
.project-intro .status{font-size:12px;margin-bottom:20px;display:inline-block}.project-intro>p{margin-top:5px!important}.project-intro .button{margin-top:25px}.case-screenshot{margin-block:0}.case-screenshot img{display:block;width:100%;height:auto;border:1px solid var(--line)}.case-screenshot figcaption{font-size:11px;color:var(--muted);padding:13px 0 24px}.project-progress{background:#e9ecdf;padding:24px;margin:32px 0}.project-progress h3{font-family:var(--display);font-size:21px;letter-spacing:-.5px;font-weight:500;margin:0 0 13px}.project-progress p{font-size:15px;line-height:1.8;color:#5f6853;margin:0}.case-note{font-size:12px!important;line-height:1.8;border-top:1px solid var(--line);padding-top:22px;margin-top:30px}.about-page{padding-block:75px 90px}.about-page h1{font-family:var(--display);font-size:70px;font-weight:500;letter-spacing:-3px;line-height:1.1;margin:0}.about-page .about-portrait img{height:640px}.about-page .button{margin-top:13px}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:85px}.contact-options{display:grid;gap:18px;align-content:start}.contact-choice{display:block;padding:27px 30px;border:1px solid #d4d9ca;background:#ecede5}.contact-choice-lime{background:var(--lime);border-color:var(--lime)}.contact-choice>span{font-size:9px;letter-spacing:1.4px;display:block;margin-bottom:13px}.contact-choice h2{font-size:30px;letter-spacing:-.9px;margin-bottom:12px}.contact-choice p{font-size:14px;line-height:1.7;color:#5c6550;margin:0 0 15px}.contact-choice p.contact-value{font-size:20px;letter-spacing:-.4px;overflow-wrap:anywhere;color:var(--ink);margin:0}.contact-choice strong{font-size:12px;font-weight:500;text-decoration:underline;text-underline-offset:4px}.contact-choice:hover{border-color:#8d9e6e}.instagram-link{font-size:13px;margin-top:5px;text-decoration:underline;text-underline-offset:4px}.contact-form-panel h2{font-size:34px}.contact-form-panel>p{font-size:15px;color:var(--muted);line-height:1.8;margin:20px 0 30px}.project-form{gap:22px}.project-form label{font-size:13px}.project-form input,.project-form textarea,.project-form select{padding:14px;min-height:49px}.project-form .form-notice{line-height:1.7}.send-options{gap:12px}.send-options .text-link{border:0;background:none}
.booking-intro{padding-bottom:40px}.booking-facts{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.booking-facts span{font-size:12px;border:1px solid #cfd6bf;border-radius:30px;padding:7px 14px}.booking-layout{display:grid;grid-template-columns:.6fr 1.4fr;gap:45px;align-items:start;margin-bottom:30px}.booking-explanation{padding:30px 0}.booking-explanation h2{font-size:30px}.booking-explanation>p{font-size:14px;line-height:1.8;color:var(--muted)}.booking-explanation .scope-list li{font-size:14px}.booking-hours{font-size:12px!important;padding:16px;background:#e9eddf}.booking-panel{background:#fff;border:1px solid var(--line);padding:8px 8px 22px;min-width:0}.booking-panel iframe{width:100%;height:800px;border:0;display:block}.booking-panel>p{font-size:12px;line-height:1.7;padding-inline:18px}.booking-panel a{text-decoration:underline;text-underline-offset:3px}.prose{max-width:850px}.prose h2{font-size:27px;margin-bottom:20px;margin-top:40px;letter-spacing:-.7px}.prose p{font-size:16px;color:var(--muted);line-height:1.9}.prose a{text-decoration:underline}
@media(max-width:1100px){.header nav{gap:20px}.home-hero{gap:40px}.home-hero h1{font-size:clamp(43px,5.4vw,62px);letter-spacing:-2.8px}.home-photo img{height:430px}.hero-lead{font-size:21px}.solution-grid{gap:0 25px}.featured-grid{gap:20px}.featured-grid .project-visual{height:205px;padding:18px 12px 0}.process-section{gap:50px}.home-faq{gap:45px}.footer-main{gap:35px}.detail-layout{gap:65px}.contact-layout{gap:45px}.booking-layout{grid-template-columns:.7fr 1.3fr;gap:30px}.booking-panel iframe{height:850px}}
@media(max-width:820px){.header{height:85px;gap:15px}.header nav{gap:15px;font-size:12px}.nav-cta{font-size:11px;padding:11px 13px}.home-hero{gap:30px}.home-hero h1{font-size:43px;letter-spacing:-2px}.hero-lead{font-size:19px}.hero-description{font-size:14px}.hero-actions{gap:10px}.hero-actions .button{font-size:12px;padding:13px 17px}.home-photo img{height:450px}.needs-grid{gap:25px}.needs-grid h3{font-size:20px}.solution-grid{grid-template-columns:1fr 1fr}.featured-grid{grid-template-columns:1fr 1fr}.featured-grid .project:last-child{grid-column:1/-1;max-width:calc(50% - 10px)}.footer-main{grid-template-columns:1fr 1fr}.footer-contacts{grid-column:1/-1;flex-direction:row;gap:25px;flex-wrap:wrap}.detail-layout{grid-template-columns:.85fr 1.15fr;gap:40px}.booking-layout{grid-template-columns:1fr}.booking-explanation{display:none}.booking-panel iframe{height:830px}}
@media(max-width:760px){.header nav a:last-child{display:inline}.page-intro{padding-block:45px 32px}.page-intro h1{font-size:43px;letter-spacing:-1.8px;line-height:1.17}.page-intro>p:not(.eyebrow){font-size:16px;line-height:1.8}.page-intro .eyebrow{font-size:10px}.home-hero{grid-template-columns:1fr;padding-block:42px 30px}.home-hero h1{font-size:clamp(40px,7.5vw,60px);line-height:1.15;letter-spacing:-2.3px;max-width:650px;margin-bottom:20px}.home-hero .eyebrow{font-size:9px;margin-bottom:24px}.home-hero .hero-lead{font-size:21px;max-width:490px}.home-photo{max-width:100%;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;margin-top:5px}.home-photo img{height:240px;object-position:50% 50%}.home-photo figcaption{align-content:center;gap:10px;padding:23px}.home-photo figcaption strong{font-size:20px}.home-photo figcaption span{font-size:13px;line-height:1.7}.home-proof{font-size:10px;gap:15px;flex-wrap:wrap;justify-content:flex-start;padding-block:17px}.home-proof span{gap:7px}.needs-grid{grid-template-columns:1fr}.needs-grid>a,.needs-grid>div{padding-top:20px}.needs-grid h3{font-size:24px}.needs-grid p{font-size:15px}.needs-grid a>span{margin-top:15px;margin-bottom:12px}.solution-card{padding-top:25px}.solution-card h3{font-size:21px}.solution-card p{font-size:14px}.featured-grid .project-visual{height:230px}.featured-grid .project-meta p{font-size:9px}.process-section,.home-faq,.two-column,.detail-layout{grid-template-columns:1fr;gap:35px}.process-list h3{font-size:23px}.home-faq h2{font-size:33px}.faq-list summary h3{font-size:17px}.cta-band{padding:29px 25px;margin-bottom:50px}.cta-band h2{font-size:35px;letter-spacing:-1.5px}.cta-band .contact-bottom{display:block}.cta-band .contact-bottom p{font-size:14px}.cta-band .button{margin-top:23px;width:100%}.band-contact{display:grid;gap:12px;font-size:13px}.footer-main{gap:30px;padding-bottom:30px}.footer-main .brand{font-size:46px}.footer-main p{font-size:13px;max-width:200px}.footer-nav{font-size:12px;gap:13px}.footer-contacts{flex-direction:column;gap:15px;padding-top:0}.footer-bottom{line-height:1.7;font-size:10px}.section-first{padding-top:18px}.page-intro .breadcrumb{margin-bottom:28px}.detail-layout h2{font-size:31px}.detail-layout aside p:not(.eyebrow){font-size:15px}.detail-layout>div>p{font-size:15px}.scope-list li{font-size:14px}.about-page{padding-block:45px 55px}.about-page .about-portrait img{height:auto;aspect-ratio:4/5}.about-page h1{font-size:58px}.about-page .about-copy p{font-size:15px}.about-page .about-copy .large-copy{font-size:22px}.contact-layout{grid-template-columns:1fr;gap:50px;padding-bottom:60px}.contact-choice{padding:25px}.contact-choice h2{font-size:29px}.contact-choice p.contact-value{font-size:22px}.contact-form-panel h2{font-size:32px}.booking-panel iframe{height:860px}.booking-panel{padding-inline:0}.booking-panel>p{font-size:12px;padding-inline:15px}.booking-intro{padding-bottom:30px}.booking-layout{width:calc(100% - 24px)}.project-intro .status{font-size:10px}.case-screenshot figcaption{font-size:10px;line-height:1.7}.project-progress{padding:22px}.case-note{font-size:12px!important}}
@media(max-width:620px){.header{justify-content:space-between}.header .brand{margin-right:auto}#menu-toggle{display:block;background:none;border:1px solid var(--line);padding:9px 12px;font-size:12px}.header #main-nav{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;background:var(--paper);border:1px solid var(--line);padding:15px 20px;box-shadow:0 10px 15px #20221f0a;flex-direction:column;gap:0;font-size:15px}.header #main-nav.is-open{display:flex}.header #main-nav a{display:block;padding:13px 0}.nav-cta{padding:10px 13px;font-size:11px}.home-hero h1{font-size:clamp(35px,8vw,48px);letter-spacing:-1.8px}.hero-actions .button{min-height:50px;font-size:13px;padding:13px 20px}.hero-actions{align-items:stretch}.home-photo img{height:220px}.home-photo figcaption{padding:20px}.home-photo figcaption strong{font-size:18px}.solution-grid{grid-template-columns:1fr}.solution-card h3{min-height:0;font-size:24px;margin-bottom:10px}.solution-card p{min-height:0;margin-bottom:18px;font-size:15px;max-width:390px}.solution-card>span{font-size:12px}.featured-grid{grid-template-columns:1fr}.featured-grid .project:last-child{grid-column:auto;max-width:100%}.featured-grid .project-visual{height:280px;padding:27px 22px 0}.featured-grid .project h3{font-size:25px}.featured-grid .project-meta{display:flex;justify-content:space-between;gap:9px}.page-intro h1{font-size:38px;letter-spacing:-1.5px}.page-intro h1>span{overflow-wrap:normal}.page-intro .hero-actions{display:grid}.page-intro .hero-actions .button{width:100%}.booking-facts{gap:7px}.booking-facts span{font-size:11px;padding:7px 12px}.booking-panel iframe{height:920px}.project .status{font-size:9px}.prose p{font-size:15px}}
@media(max-width:360px){.header{gap:9px}.nav-cta{font-size:10px;padding:10px}.header .brand{font-size:39px}#menu-toggle{font-size:11px;padding:8px}.home-hero h1{font-size:32px;letter-spacing:-1.6px}.home-hero h1 span{white-space:normal}.home-hero .eyebrow{font-size:8px}.hero-actions .button{width:100%}.home-photo{grid-template-columns:1fr}.home-photo img{height:280px;object-position:50% 56%}.home-photo figcaption{padding:18px}.home-photo figcaption strong{font-size:17px}.home-photo figcaption span{font-size:12px}.page-intro h1{font-size:34px}.contact-choice p.contact-value{font-size:19px}.featured-grid .project-visual{height:245px}.footer-main{grid-template-columns:1fr}.footer-contacts{grid-column:auto}.footer-nav{flex-direction:row;flex-wrap:wrap;gap:15px}.booking-panel iframe{height:980px}}
.channel-icon{display:block;width:22px;height:22px;flex:0 0 22px;object-fit:contain}
.button.channel-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 18px;border:1px solid #b8c0ac;background:transparent;color:var(--ink);text-decoration:none;text-align:left;font-size:13px;line-height:1.4;transition:background .18s,border-color .18s}
.button.channel-button span{font-size:inherit;line-height:1.4}.channel-copy{display:grid;gap:3px;min-width:0}.channel-copy small{font-size:11px;color:#626b56;overflow-wrap:anywhere;font-weight:400}
.button.channel-button:hover{background:#e6eadc;border-color:#8c9c73;text-decoration:none}
.channel-button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.footer-main .footer-contacts{gap:10px;align-items:stretch;max-width:340px;width:100%}
.footer-contacts .button.channel-button{justify-content:flex-start;width:100%;padding:12px 16px}
.footer-main .footer-contacts a:hover{text-decoration:none}
.cta-band .band-contact{gap:12px;padding-top:23px}
.cta-band .band-contact .button{width:auto;margin-top:0;background:#ffffff24;border-color:#a7bb70;min-height:48px;padding:12px 18px}
.cta-band .band-contact .button:hover{background:#ffffff65;border-color:#6a7f37;text-decoration:none}
.channel-heading{display:flex;align-items:center;gap:13px}.channel-heading .channel-icon{width:28px;height:28px;flex-basis:28px}
.contact-options>.channel-button{justify-self:start}.booking-explanation>.channel-button{margin-top:12px}
@media(max-width:820px){.footer-main .footer-contacts{max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.footer-contacts .button.channel-button{padding:12px}}
@media(max-width:760px){.cta-band .band-contact{display:flex;flex-wrap:wrap}.cta-band .band-contact .button{flex:1 1 auto;justify-content:center}.footer-main .footer-contacts{grid-template-columns:1fr;max-width:100%}.footer-contacts .button.channel-button{padding:13px 16px;gap:14px}.channel-copy small{font-size:12px}.contact-options>.channel-button{justify-self:stretch}}

/* Typography from the original BYL design, applied to the current pages. */
body,input,select,textarea,button{font-family:var(--font)}
h1,h2,h3{font-family:var(--display)}
.home-hero h1{font-family:var(--display);font-size:clamp(66px,7.6vw,110px);font-weight:600;line-height:1.06;letter-spacing:-6px}
.home-hero .hero-lead{font-family:var(--font);font-size:19px;font-weight:400;line-height:1.5;letter-spacing:normal}
.hero-description{font-family:var(--font);font-size:15px;line-height:1.55;letter-spacing:normal}
.page-intro h1,.about-page h1{font-family:var(--display);font-weight:500;line-height:1.15;letter-spacing:-2px}
.page-intro h1{font-size:clamp(42px,4.9vw,70px)}
h2{font-weight:500;line-height:1.15}
.needs-grid h3,.solution-card h3,.process-list h3{font-family:var(--display);font-weight:500;letter-spacing:-.6px}
.page-intro>p:not(.eyebrow){font-family:var(--font);font-size:16px;line-height:1.75}
@media(min-width:1500px){.home-hero h1{font-size:114px}}
@media(max-width:1100px){.home-hero h1{font-size:8.3vw;letter-spacing:-4px}.home-hero .hero-lead{font-size:17px}}
@media(max-width:760px){.home-hero h1{font-size:clamp(52px,10.8vw,80px);line-height:1.08;letter-spacing:-3px}.home-hero .hero-lead{font-size:17px;line-height:1.5}.hero-description{font-size:14px}.page-intro h1{font-size:43px;letter-spacing:-1.4px}}
@media(max-width:520px){.home-hero h1{font-size:clamp(48px,11vw,57px)}.page-intro h1{font-size:38px}}
@media(max-width:360px){.home-hero h1{font-size:46px}.home-hero h1 span{white-space:normal}.page-intro h1{font-size:34px}}

.ai-visual.ai-chat-visual{padding:20px;background:#e5e9dd}
.chat-demo{background:#f8f9f5;border:1px solid #cbd2c2;border-radius:10px;overflow:hidden;box-shadow:0 10px 35px #25351d08}
.chat-demo-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:#fff;border-bottom:1px solid #e1e6d9}
.chat-demo-title{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;line-height:1.4}.chat-demo-title>svg{width:20px;height:20px;color:#607b37;flex:none}
.chat-demo-badge{border:1px solid #d5dfc4;padding:5px 7px;border-radius:4px;color:#607349;font-size:7px;letter-spacing:.6px;white-space:nowrap}
.chat-demo-layout{display:grid;grid-template-columns:130px minmax(0,1fr)}
.chat-threads{padding:15px 8px;background:#f0f3eb;border-right:1px solid #e1e6d9;display:flex;flex-direction:column;gap:8px}
.chat-thread{display:flex;align-items:center;gap:9px;position:relative;padding:12px 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:#69725d;text-align:left;min-width:0;width:100%;font:inherit;transition:background .15s}
.chat-thread:hover{background:#e6eddb}.chat-thread[aria-selected="true"]{background:#fff;color:var(--ink);border-color:#d7e1c6;box-shadow:0 2px 5px #23361404}
.chat-client-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#e1e8d5;color:#596b42;font-size:9px}
.chat-thread-label{display:grid;gap:5px;min-width:0}.chat-thread-label b{font-size:10px;font-weight:500;white-space:nowrap}.chat-thread-label small{font-size:9px;line-height:1.3;color:#808c72}
.chat-thread-indicator{position:absolute;width:4px;height:4px;right:7px;top:12px;border-radius:50%;background:#94ad60;opacity:0}.chat-thread[aria-selected="true"] .chat-thread-indicator{opacity:1}
.chat-conversation{min-width:0}.chat-panel{display:flex;flex-direction:column;min-height:425px}.chat-panel[hidden]{display:none}
.chat-conversation-head{display:flex;align-items:center;gap:10px;padding:15px 16px;border-bottom:1px solid #e3e8dc;background:#fff}.chat-bot-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 31px;width:31px;height:31px;border-radius:8px;background:#e5edda;color:#5e763c}.chat-bot-avatar svg{width:21px;height:21px}.chat-conversation-head>div{display:grid;gap:4px}.chat-conversation-head strong{font-size:11px;font-weight:600}.chat-conversation-head small{font-size:9px;color:#8c9583;line-height:1.4}
.chat-messages{display:flex;flex-direction:column;gap:14px;margin:0;padding:18px 16px 20px;list-style:none;flex:1}
.chat-message{max-width:92%;min-width:0}.chat-message>span{display:block;font-size:8px;color:#87917a;margin-bottom:5px}.chat-message p{margin:0;padding:10px 12px;font-size:11px;line-height:1.65;border-radius:7px}
.chat-message--client{align-self:flex-end}.chat-message--client>span{text-align:right}.chat-message--client p{background:#e8ecdf;color:#48533c;border-bottom-right-radius:2px}
.chat-message--bot{align-self:flex-start}.chat-message--bot p{background:#fff;border:1px solid #e0e6d7;color:#4f5945;border-bottom-left-radius:2px}
.chat-outcome{display:flex;align-items:center;gap:7px;margin:0 16px 16px;padding:9px 10px;background:#ecf3df;border:1px solid #dae7c7;border-radius:5px;font-size:9px;color:#637b43;line-height:1.5}.chat-outcome>span{font-size:12px}
.chat-demo-note{font-size:9px;color:#87917b;line-height:1.6;margin:0;padding:11px 16px;border-top:1px solid #e1e6d9;background:#fff;text-align:center}
.chat-thread:focus-visible,.chat-panel:focus-visible{outline:2px solid #7a9650;outline-offset:-2px}
@media(min-width:821px) and (max-width:1100px){.chat-demo-layout{grid-template-columns:100px minmax(0,1fr)}.chat-client-avatar{display:none}.chat-thread{padding:13px 7px}.chat-demo-top{padding:13px 12px}.chat-demo-title{font-size:11px;gap:6px}.chat-demo-badge{font-size:6px}.chat-messages{padding-inline:12px}.chat-conversation-head{padding-inline:12px}.chat-panel{min-height:465px}.ai-visual.ai-chat-visual{padding:13px}}
@media(max-width:620px){.ai-visual.ai-chat-visual{padding:14px}.chat-demo-layout{grid-template-columns:1fr}.chat-threads{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:9px;gap:6px;border-right:0;border-bottom:1px solid #e1e6d9}.chat-thread{padding:9px 6px;justify-content:center;gap:0}.chat-client-avatar{display:none}.chat-thread-label{gap:4px;text-align:center}.chat-thread-label b{font-size:10px}.chat-thread-label small{font-size:8px}.chat-thread-indicator{display:none}.chat-panel{min-height:420px}.chat-demo-top{padding:13px 11px;gap:7px}.chat-demo-title{font-size:11px;gap:6px}.chat-demo-title>svg{width:18px;height:18px}.chat-demo-badge{font-size:6px;padding:4px 5px}.chat-conversation-head{padding:12px}.chat-messages{padding:15px 12px;gap:13px}.chat-message p{font-size:12px}.chat-message{max-width:94%}.chat-outcome{margin-inline:12px}.chat-demo-note{font-size:8px;padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.chat-thread{transition:none}}

/* A concise footer, direct contact and an explorable services page. */
.footer-clean{border-top:1px solid var(--line);padding-top:34px;padding-bottom:23px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-identity{display:flex;align-items:center;gap:25px}.footer-identity .brand{font-size:47px;letter-spacing:-4px}.footer-identity p{font-size:12px;margin:0;line-height:1.65}.footer-identity small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.footer-links{display:flex;align-items:center;gap:26px;font-size:12px}.footer-links a{padding:10px 0}.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-contact-row{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:27px;padding-top:22px;border-top:1px solid var(--line)}.footer-direct{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}.footer-direct>a,.footer-direct>.footer-email{display:inline-flex;align-items:center;gap:9px;min-height:42px;font-size:12px;padding:5px 0}.footer-direct .channel-icon{width:19px;height:19px;flex-basis:19px}.footer-direct>a:hover span{text-decoration:underline;text-underline-offset:4px}.footer-booking{font-size:12px;padding:11px 16px;border:1px solid #b7c0a8;white-space:nowrap;transition:background .2s}.footer-booking:hover{background:#e5eadb}.footer-legal{display:flex;justify-content:space-between;gap:20px;margin-top:22px;font-size:10px;color:#858c7b}.footer-legal a:hover{text-decoration:underline}
.contact-simple{max-width:1000px;padding-block:75px 85px}.contact-simple h1{font-family:var(--display);font-weight:500;font-size:clamp(45px,5.5vw,77px);line-height:1.12;letter-spacing:-3px;margin:0 0 27px}.contact-simple h1>span{color:#6e862e}.contact-simple>p:not(.eyebrow){font-size:17px;color:var(--muted);line-height:1.8;max-width:620px}.contact-direct-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:35px}.contact-direct-actions .button.channel-button{min-height:57px;padding:16px 24px;font-size:14px;gap:13px;background:#fff6}.contact-direct-actions .channel-copy span{font-size:14px;line-height:1.4}.contact-direct-actions .button.channel-button:first-child{background:var(--lime);border-color:var(--lime)}.contact-direct-actions .button.channel-button:first-child:hover{background:#c5e56b}.contact-direct-actions .button.channel-button:hover{background:#e8edde}.contact-meeting{margin-top:70px;border-top:1px solid var(--line);padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.contact-meeting h2{font-size:27px;letter-spacing:-.8px}.contact-meeting p{font-size:13px;color:var(--muted);margin:10px 0 0;line-height:1.8}.contact-meeting .button{flex-shrink:0;font-size:13px}
.services-intro{padding-bottom:40px}.services-intro h1{font-size:clamp(45px,5.2vw,74px);max-width:950px}.services-intro>p:not(.eyebrow){max-width:600px;font-size:16px}
.services-explorer{display:grid;grid-template-columns:270px minmax(0,1fr);gap:40px;align-items:start;margin-bottom:90px}.services-selector{display:flex;flex-direction:column;gap:9px;position:sticky;top:22px}.service-option{display:flex;align-items:center;gap:17px;padding:19px 18px;min-height:82px;width:100%;border:1px solid var(--line);background:transparent;text-align:left;transition:background .2s,border-color .2s}.service-option:hover{background:#e9eddf;border-color:#b8c4a2}.service-option[aria-selected="true"]{background:var(--lime);border-color:var(--lime)}.service-option-number{font-size:10px;color:#7c8c62;align-self:flex-start;padding-top:3px}.service-option>span:last-child{display:grid;gap:6px;min-width:0}.service-option b{font-size:14px;font-weight:500;line-height:1.4}.service-option small{font-size:11px;color:#738060;line-height:1.5}
.services-panels{min-width:0}.service-panel{background:#fff8;border:1px solid var(--line);overflow:hidden}.service-panel[hidden]{display:none}.service-panel-copy{padding:36px 40px}.service-panel-copy .eyebrow{font-size:9px;color:#7a8c58;margin-bottom:18px}.service-panel h2{font-size:clamp(29px,3vw,41px);letter-spacing:-1.5px;max-width:600px;line-height:1.2}.service-panel-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);max-width:620px;margin:20px 0}.service-tags{list-style:none;margin:22px 0 27px;padding:0;display:flex;gap:8px;flex-wrap:wrap}.service-tags li{font-size:10px;border:1px solid #d8e0cb;background:#eef2e6;padding:6px 11px;border-radius:20px;line-height:1.5}.service-panel-copy .button{font-size:12px;min-height:48px;padding:13px 19px}
.service-example{display:block;margin:0 40px 35px;border:1px solid #d4dbca;background:#e6ebdf}.service-example-image{aspect-ratio:36/25;overflow:hidden;background:#e6ebdf}.service-example-image img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}.service-example:hover .service-example-caption b{text-decoration-thickness:2px}.service-example-kicker{font-size:8px;letter-spacing:1.3px;color:#768463;margin-bottom:5px}.service-example-caption{padding:17px 20px;display:grid;gap:5px;background:#f3f5ed;border-top:1px solid #d4dbca}.service-example-caption strong{font-size:13px;font-weight:500}.service-example-caption span{font-size:11px;line-height:1.7;color:#7b866c}.service-example-caption b{font-size:10px;font-weight:500;margin-top:7px;text-decoration:underline;text-underline-offset:3px}
.service-flow-example{margin:0 40px 35px;padding:28px;background:#e6ecdb;border:1px solid #d2ddc1}.service-flow-kicker{font-size:8px;letter-spacing:1px;color:#6c7e53}.service-flow-nodes{display:grid;grid-template-columns:1fr 18px 1fr 18px 1fr;align-items:center;margin-top:25px}.service-flow-nodes>div{display:flex;flex-direction:column;gap:10px;min-height:145px;padding:17px 13px;background:#fff9;border:1px solid #cfd9bf}.service-flow-nodes>div>span{font-size:9px;color:#82946a}.service-flow-nodes strong{font-size:13px;font-weight:500;line-height:1.5;margin-top:auto}.service-flow-nodes small{font-size:10px;line-height:1.5;color:#7c896b}.service-flow-nodes i{height:1px;background:#a5b58e}.service-flow-example>p{font-size:11px;color:#7e8b6b;line-height:1.8;margin-bottom:0}.service-chat-example{margin:0 40px 35px}.service-chat-example .chat-panel{min-height:385px}.service-chat-example .chat-demo-layout{grid-template-columns:140px minmax(0,1fr)}.services-noscript{display:flex;gap:20px;flex-wrap:wrap;padding-bottom:40px}
.project .project-visual{display:flex;flex-direction:column}.project .browser-bar{flex:0 0 23px;width:100%}.project-window{display:block;position:relative;flex:1;min-height:0;overflow:hidden;background:#f1f3eb}.project .project-visual .project-window img{display:block;width:100%;height:auto!important;min-height:0;max-width:100%;box-shadow:none;transform:translateY(0);transition:transform .7s ease;will-change:transform}.project .project-visual .project-window:not([data-scroll-preview]) img{height:100%!important;object-fit:cover;object-position:top}
@media(hover:hover) and (pointer:fine){.project .project-visual:hover .project-window[data-scroll-preview] img,.project .project-visual:focus-visible .project-window[data-scroll-preview] img{transform:translateY(var(--preview-distance,0px));transition-duration:var(--preview-duration,8s);transition-timing-function:linear}.project .preview-toggle{display:none}}
.project.is-previewing .project-visual .project-window[data-scroll-preview] img{transform:translateY(var(--preview-distance,0px));transition-duration:var(--preview-duration,8s);transition-timing-function:linear}.preview-toggle{display:inline-flex;align-items:center;margin-top:13px;font-size:11px;border:1px solid #bbc6a9;padding:9px 13px;background:transparent}.preview-toggle:hover{background:#e6edd9}.project-preview-hint{font-size:11px;color:#859173;margin:-13px 0 27px;line-height:1.7}
@media(max-width:1000px){.footer-identity{gap:18px}.footer-links{gap:19px}.footer-direct{gap:15px 23px}.services-explorer{grid-template-columns:225px minmax(0,1fr);gap:25px}.service-panel-copy{padding:29px}.service-example,.service-flow-example,.service-chat-example{margin-inline:29px}.service-flow-nodes{grid-template-columns:1fr;gap:0}.service-flow-nodes i{height:16px;width:1px;margin-left:23px}.service-flow-nodes>div{min-height:0;gap:8px;padding:16px}.service-flow-nodes strong{margin-top:0}.service-flow-nodes small{font-size:11px}.service-chat-example .chat-demo-layout{grid-template-columns:105px minmax(0,1fr)}}
@media(max-width:760px){.footer-top{align-items:flex-start;flex-direction:column;gap:21px}.footer-identity .brand{font-size:44px}.footer-links{gap:21px;flex-wrap:wrap}.footer-contact-row{align-items:flex-start;flex-direction:column;gap:20px;margin-top:22px;padding-top:18px}.footer-direct{gap:8px 23px}.footer-direct>a,.footer-direct>.footer-email{font-size:12px}.footer-legal{margin-top:25px}.footer-clean{padding-top:27px;padding-bottom:22px}.contact-simple{padding-block:48px 60px}.contact-simple h1{font-size:clamp(42px,8.5vw,61px);letter-spacing:-2px}.contact-simple>p:not(.eyebrow){font-size:15px;max-width:490px}.contact-direct-actions{gap:10px;margin-top:28px}.contact-direct-actions .button.channel-button{font-size:13px;padding:14px 20px}.contact-direct-actions .channel-copy span{font-size:13px}.contact-meeting{margin-top:47px;align-items:flex-start;flex-direction:column;gap:22px}.contact-meeting h2{font-size:26px}.services-intro{padding-bottom:30px}.services-intro h1{font-size:clamp(40px,7vw,52px);letter-spacing:-1.5px}.services-explorer{grid-template-columns:1fr;gap:22px;margin-bottom:55px}.services-selector{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-option{min-height:69px;padding:12px;gap:10px}.service-option-number{display:none}.service-option b{font-size:12px}.service-option small{font-size:9px}.service-panel-copy{padding:27px}.service-panel h2{font-size:32px;letter-spacing:-1px}.service-panel-copy>p:not(.eyebrow){font-size:14px}.service-example,.service-flow-example,.service-chat-example{margin:0 27px 27px}.service-flow-nodes{grid-template-columns:1fr 18px 1fr 18px 1fr;gap:0}.service-flow-nodes i{width:18px;height:1px;margin-left:0}.service-flow-nodes>div{min-height:140px;padding:13px 10px;gap:10px}.service-flow-nodes strong{margin-top:auto;font-size:12px}.service-flow-nodes small{font-size:9px}.service-chat-example .chat-demo-layout{grid-template-columns:125px minmax(0,1fr)}}
@media(max-width:520px){.footer-direct{flex-direction:column;align-items:flex-start;gap:3px}.footer-booking{width:auto}.footer-identity{gap:20px}.footer-identity p{font-size:11px}.footer-links{gap:19px;font-size:11px}.contact-simple h1{font-size:43px;letter-spacing:-1.7px}.contact-direct-actions{display:grid;grid-template-columns:1fr 1fr}.contact-direct-actions .button.channel-button{padding:14px 15px;justify-content:center}.contact-direct-actions .button.channel-button{grid-column:1/-1}.contact-meeting .button{width:100%;justify-content:center}.services-selector{grid-template-columns:1fr 1fr}.service-option{min-height:68px;padding:12px}.service-panel-copy{padding:23px}.service-panel h2{font-size:30px}.service-panel-copy>p:not(.eyebrow){font-size:14px}.service-tags{gap:6px;margin-block:20px}.service-tags li{font-size:9px;padding:6px 9px}.service-panel-copy .button{width:100%;justify-content:center}.service-example,.service-flow-example,.service-chat-example{margin-inline:18px;margin-bottom:18px}.service-example-caption{padding:14px 15px}.service-flow-example{padding:23px}.service-flow-nodes{grid-template-columns:1fr}.service-flow-nodes>div{min-height:0;gap:6px;padding:15px}.service-flow-nodes strong{margin-top:0;font-size:13px}.service-flow-nodes small{font-size:10px}.service-flow-nodes i{height:16px;width:1px;margin-left:22px}.service-chat-example .chat-demo-layout{grid-template-columns:1fr}}
@media(max-width:360px){.contact-simple h1{font-size:38px}.footer-links{gap:17px}.footer-identity{gap:16px}.footer-identity p{font-size:10px}.contact-direct-actions .button.channel-button{font-size:12px;gap:9px}}
@media(hover:none){.project-preview-hint{display:none}}
@media(max-width:760px){.project .preview-toggle{display:inline-flex}.project-preview-hint{display:none}}
@media(prefers-reduced-motion:reduce){.service-option,.service-example-image img,.project .project-visual .project-window img{transition:none!important}.project .project-visual:hover .project-window[data-scroll-preview] img,.project .project-visual:focus-visible .project-window[data-scroll-preview] img{transform:none}.project .preview-toggle{display:inline-flex}.project-preview-hint{display:none}}

/* Full-page website tours on individual project pages. */
.case-browser{border:1px solid var(--line);background:#fff;overflow:hidden}.case-browser .browser-bar{height:30px;justify-content:flex-start;padding-inline:14px;position:relative;background:#fff}.case-browser .browser-bar span{position:absolute;left:90px;right:90px;text-align:center;font-size:10px;color:var(--muted)}
.case-preview-window{height:clamp(220px,53vw,700px);max-height:70vh;overflow:hidden;position:relative;background:#f1f3eb}.case-screenshot .case-preview-window img{display:block;width:100%;height:auto;border:0;transform:translateY(0);transition:transform .7s ease;will-change:transform}.case-preview-window:focus-visible{outline:3px solid #849c43;outline-offset:-3px}
.case-scroll-preview.is-previewing .case-preview-window img,.case-scroll-preview .case-preview-window:focus-visible img{transform:translateY(var(--preview-distance,0px));transition-duration:var(--preview-duration,25s);transition-timing-function:linear}.case-scroll-preview figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px}.case-scroll-preview .preview-toggle{margin:0;flex-shrink:0}
@media(hover:hover) and (pointer:fine){.case-preview-window:hover img{transform:translateY(var(--preview-distance,0px));transition-duration:var(--preview-duration,25s);transition-timing-function:linear}.case-scroll-preview .preview-toggle{display:none}}
@media(max-width:760px){.case-scroll-preview .preview-toggle{display:inline-flex}.case-preview-hint{display:none}.case-scroll-preview figcaption{align-items:flex-start;flex-direction:column;gap:10px}.case-browser .browser-bar span{left:55px;right:25px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.case-screenshot .case-preview-window img{transition:none!important}.case-scroll-preview.is-previewing .case-preview-window img,.case-scroll-preview .case-preview-window:focus-visible img,.case-preview-window:hover img{transform:none}.case-scroll-preview .preview-toggle{display:inline-flex}.case-preview-hint{display:none}}

.seo-breadcrumb{display:flex;flex-wrap:wrap;gap:.6rem;padding-top:1.5rem;font-size:.75rem;color:var(--muted);line-height:1.7}
.seo-breadcrumb a{text-decoration:underline;text-underline-offset:.2em}
.seo-breadcrumb [aria-current]{color:var(--ink)}
.seo-breadcrumb+.page-intro{padding-top:2rem}
.service-coverage{margin-top:1.2rem;color:var(--muted);font-size:.875rem;line-height:1.7}

/* Compact round marks, with optical sizing for each original logo. */
.home-clients{--client-size:132px;--client-interchile-size:156px;--client-slot:156px;--client-gap:22px;--client-border:#cbd0c1;--client-label:13px;margin-bottom:40px}
.home-clients>.client-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--client-gap);align-items:start}
.home-clients .client-logo{min-width:0;display:grid;justify-items:center;gap:12px;text-align:center}
.client-logo-slot{height:var(--client-slot);width:100%;display:flex;align-items:center;justify-content:center}
.client-logo-mark{width:var(--client-size);height:var(--client-size);border-radius:50%;border:1px solid var(--client-border);background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;transition:border-color 200ms ease-out,box-shadow 200ms ease-out}
.client-logo-mark img{display:block;width:78%;height:78%;max-width:none;object-fit:contain;flex-shrink:0}
.client-logo-name{font-size:var(--client-label);line-height:1.4;color:var(--ink)}
.client-logo--interchile .client-logo-mark{width:var(--client-interchile-size);height:var(--client-interchile-size)}
.client-logo--interchile img{width:90%;height:90%}
.client-logo--bikids img{width:84%;height:84%}
.client-logo--onpoint img{width:82%;height:82%}
.client-logo--percentil .client-logo-mark{background:#030704}
.client-logo--percentil img{width:87%;height:87%;filter:brightness(1.8)}
.client-logo--bobby .client-logo-mark{background:#fcf3e3}
.client-logo--bobby img{width:170%;height:auto}
.client-logo:is(:hover,:focus-visible) .client-logo-mark{border-color:#6d8d22;box-shadow:0 0 0 3px var(--lime)}
.client-logo:focus-visible{outline:none}
@media(max-width:1000px){.home-clients{--client-size:112px;--client-interchile-size:132px;--client-slot:132px;--client-gap:16px}}
@media(max-width:760px){.home-clients{--client-size:96px;--client-interchile-size:108px;--client-slot:112px;--client-gap:12px;--client-label:12px;margin-bottom:30px}.home-clients>.client-logos{grid-template-columns:repeat(6,minmax(0,1fr));gap:22px var(--client-gap)}.home-clients .client-logo{grid-column:span 2;gap:8px}.home-clients .client-logo:nth-child(4){grid-column:2/span 2}.home-clients .client-logo:last-child{grid-column:4/span 2}}
@media(max-width:360px){.home-clients{--client-size:82px;--client-interchile-size:94px;--client-slot:98px;--client-gap:8px;--client-label:11px}}
@media(prefers-reduced-motion:reduce){.client-logo-mark{transition:none}}

/* Targeted home polish: the existing BYL typefaces and palette stay in charge. */
.home-services,.home-process,.home-aftercare--renewed{
 --hs-white:#fff;--hs-dark:#27332c;--hs-olive:#526736;--hs-soft:#e6ebdc;
 --hs-sage:#dbe4ce;--hs-lime-soft:#eaf3cd;--hs-border:#c8d1bb;--hs-caption:#566347;
 --hs-shadow:0 12px 30px #202c2010;--hs-radius:8px;--hs-pill:999px;
 --hs-2:2px;--hs-4:4px;--hs-6:6px;--hs-8:8px;--hs-10:10px;--hs-12:12px;
 --hs-14:14px;--hs-16:16px;--hs-18:18px;--hs-20:20px;--hs-24:24px;
 --hs-28:28px;--hs-32:32px;--hs-36:36px;--hs-40:40px;--hs-44:44px;
 --hs-48:48px;--hs-56:56px;--hs-64:64px;--hs-72:72px;
 --hs-tiny:10px;--hs-small:12px;--hs-body:14px;--hs-label:15px;--hs-title:26px;
 --hs-display:48px;--hs-track:-.8px;--hs-wide:1.2px;
 --hs-scene-height:190px;--hs-scene-mobile:180px;--hs-shop-width:104px;--hs-hub-width:300px;--hs-hub-height:160px;--hs-copy-max:260px;--hs-footnote-max:280px;--hs-person-max:520px;--hs-care-max:600px;--hs-half-node:22px;
 --hs-ui:220ms;--hs-scene:850ms;--hs-shift:translateY(-8px);
}
.home-solution-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--hs-radius);overflow:hidden;background:var(--paper);transition:border-color var(--hs-ui) ease-out}
.home-solution-card:is(:hover,:focus-within){border-color:var(--hs-olive)}
.solution-scene{height:var(--hs-scene-height);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--hs-soft);color:var(--hs-dark);isolation:isolate}
.solution-scene svg{width:var(--hs-32);height:var(--hs-32);flex-shrink:0}
.solution-browser{position:absolute;width:62%;left:12%;top:var(--hs-32);background:var(--hs-white);border:1px solid var(--hs-border);border-radius:var(--hs-6);box-shadow:var(--hs-shadow);transform:rotate(-5deg);transition:transform var(--hs-ui) ease-out}
.mini-toolbar{display:flex;gap:var(--hs-4);padding:var(--hs-8);border-bottom:1px solid var(--line)}
.mini-toolbar i{width:var(--hs-4);height:var(--hs-4);border-radius:50%;background:var(--hs-border)}
.mini-site{padding:var(--hs-16);display:grid;grid-template-columns:1fr var(--hs-40);gap:var(--hs-8)}
.mini-site>span{font-family:var(--display);font-size:var(--hs-18);line-height:1.3;grid-row:span 2}
.mini-site b{font-weight:600}.mini-site>i{background:var(--hs-sage);border-radius:var(--hs-2)}.mini-site>i:last-child{background:var(--lime)}
.solution-shop{position:absolute;width:var(--hs-40);min-width:var(--hs-shop-width);right:var(--hs-24);bottom:var(--hs-20);background:var(--hs-dark);color:var(--paper);border-radius:var(--hs-6);padding:var(--hs-12);display:grid;justify-items:center;gap:var(--hs-8);transform:rotate(5deg);transition:transform var(--hs-ui) ease-out;box-shadow:var(--hs-shadow)}
.solution-shop>span{font-size:var(--hs-tiny)}.solution-shop>b{font-size:var(--hs-tiny);color:var(--lime);font-weight:500}
.home-solution-card--web:is(:hover,:focus-within) .solution-browser{transform:rotate(0)}
.home-solution-card--web:is(:hover,:focus-within) .solution-shop{transform:rotate(0) var(--hs-shift)}
.home-solution-card--software .solution-scene{background:var(--hs-dark);color:var(--paper)}
.solution-hub{position:relative;width:var(--hs-hub-width);height:var(--hs-hub-height);max-width:100%}.hub-item,.hub-center{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid var(--hs-caption);border-radius:var(--hs-4);background:var(--hs-dark);font-size:var(--hs-small);padding:var(--hs-8) var(--hs-12);transition:background var(--hs-ui) ease-out,color var(--hs-ui) ease-out}
.hub-item--one{left:var(--hs-8);top:var(--hs-12)}.hub-item--two{right:var(--hs-8);top:var(--hs-12)}.hub-item--three{left:50%;bottom:0;transform:translateX(-50%)}
.hub-center{left:50%;top:50%;transform:translate(-50%,-50%);border-color:var(--lime);color:var(--lime);line-height:1.3;display:block;padding:var(--hs-10) var(--hs-24);border-radius:var(--hs-pill)}.hub-center b{font-weight:500}
.solution-hub .hub-lines{position:absolute;inset:0;width:100%;height:100%;stroke:var(--hs-caption);stroke-width:1.5;z-index:0}
.home-solution-card--software:is(:hover,:focus-within) .hub-center{background:var(--lime);color:var(--hs-dark)}
.home-solution-card--automation .solution-scene{background:var(--hs-lime-soft);flex-direction:column;gap:var(--hs-18)}
.solution-flow{display:flex;align-items:center;justify-content:center;width:100%;padding:0 var(--hs-24)}
.solution-flow>span{flex:0 0 var(--hs-64);display:flex;flex-direction:column;align-items:center;gap:var(--hs-8);padding:var(--hs-12) var(--hs-6);background:var(--paper);border:1px solid var(--hs-border);border-radius:var(--hs-6)}
.solution-flow b{font-size:var(--hs-tiny);font-weight:500}.solution-flow>i{height:1px;background:var(--hs-border);flex:1;position:relative;max-width:var(--hs-40)}
.solution-flow>i:after{content:'';position:absolute;top:calc(var(--hs-2) * -1);left:0;width:var(--hs-6);height:var(--hs-6);border-radius:50%;background:var(--hs-olive);transition:left var(--hs-ui) ease-out}
.home-solution-card--automation:is(:hover,:focus-within) .solution-flow>i:after{left:calc(100% - var(--hs-6))}
.flow-caption{font-size:var(--hs-tiny);color:var(--hs-caption)}



/* A short route from the offer, through real work, to a conversation. */
:root{--home-space:64px;--home-gap:28px;--home-surface:#ebece4;--home-soft:#e6e9dd;--home-heading:clamp(30px,3vw,42px);--home-body:16px;--home-small:14px;--home-card-title:25px;--home-photo-height:410px;--home-preview-height:360px}
.home-hero{padding-block:44px 48px;gap:48px}
.home-hero .hero-lead{max-width:560px;font-size:18px;line-height:1.6;margin:0}
.home-hero .hero-reassurance{font-size:var(--home-small);margin-top:18px}
.home-hero .hero-actions{gap:12px}
.home-photo img{height:var(--home-photo-height)}
.home-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--home-gap);margin-bottom:30px}
.home-heading h2,.home-contact h2{font-size:var(--home-heading);letter-spacing:-1.5px;line-height:1.2}
.home-heading .button{flex-shrink:0}
.home-services{padding-block:42px var(--home-space);border-top:1px solid var(--line)}
.home-service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--home-gap)}
.home-service-groups article{min-width:0;padding:0;border:1px solid var(--line);--hs-scene-height:160px}
.home-service-groups article:is(:hover,:focus-within){border-color:var(--hs-olive)}
.home-service-copy{padding:22px;display:flex;flex-direction:column;flex:1}
.home-service-copy .home-service-links{margin-top:auto}
.home-service-groups h3{font-family:var(--display);font-size:var(--home-card-title);font-weight:500;letter-spacing:-.7px;line-height:1.3;margin:0 0 12px}
.home-service-groups p{font-size:var(--home-body);line-height:1.6;color:var(--muted);margin:0 0 20px;max-width:340px;min-height:52px}
.home-service-links{display:flex;flex-wrap:wrap;gap:8px}
.home-service-links a{display:inline-flex;align-items:center;min-height:44px;padding:9px 12px;font-size:var(--home-small);border:1px solid #aeb3a3;transition:background .2s ease-out}
.home-service-links a:hover{background:var(--lime)}
.home-maintenance{display:inline-block;margin-top:26px;font-size:var(--home-small);text-decoration:underline;text-underline-offset:5px}
.home-work{padding-block:var(--home-space);background:var(--home-surface);scroll-margin-top:30px}
.home-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px var(--home-gap)}
.home-projects .project:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:var(--home-gap);align-items:center}
.home-projects .project:last-child .project-info{padding:24px;max-width:480px}
.home-projects .project:last-child .project-meta{margin-top:0}
.home-projects .project-visual{height:var(--home-preview-height);padding:18px 14px 0}
.home-projects .project-meta{align-items:start;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:18px}
.home-projects .project-meta p{font-size:11px;letter-spacing:.4px;flex-basis:100%}
.home-projects .project h3{font-size:var(--home-card-title);font-weight:500}
.home-projects .project-description{font-size:var(--home-small);line-height:1.6}
.home-contact{display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--lime);padding:36px;margin-top:48px;margin-bottom:24px}
.home-contact p{font-size:var(--home-body);margin:14px 0 0;max-width:440px}
.home-contact-actions{display:grid;gap:10px;flex-shrink:0}
.home-contact-actions .button{width:100%}
.home-how{padding-block:var(--home-space) 12px;--how-node:48px;--how-rule:#a4b18c;--how-active:#526736;--how-gap:28px;--how-motion:800ms}
.home-how-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--home-gap);margin-bottom:32px}
.home-how-heading h2{font-size:var(--home-heading);letter-spacing:-1.5px}
.home-how-heading>p{font-size:18px;line-height:1.6;margin:0;color:var(--muted)}
.home-how-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--how-gap);padding:0;margin:0;position:relative;isolation:isolate}
.home-how-steps:before,.home-how-steps:after{content:'';position:absolute;z-index:-1;top:calc(var(--how-node)/2);left:calc(var(--how-node)/2);right:calc((100% + var(--how-gap))/3 - var(--how-node)/2);height:2px;background:var(--how-rule)}
.home-how-steps:after{background:var(--how-active);transform-origin:left}
.home-how-steps[data-motion-ready]:after{transform:scaleX(0)}
.home-how-steps.is-in-view:after{transform:scaleX(1);transition:transform var(--how-motion) ease-out}
.home-step-number{display:grid;place-items:center;width:var(--how-node);height:var(--how-node);margin-bottom:22px;border:1px solid var(--how-active);border-radius:50%;background:var(--paper);font-family:var(--display);font-size:18px;font-weight:600;transition:background 220ms ease-out}
.home-how-steps li:last-child .home-step-number,.home-how-steps li:hover .home-step-number{background:var(--lime)}
.home-how-steps h3{font-family:var(--display);font-size:var(--home-card-title);font-weight:500;letter-spacing:-.7px;line-height:1.3;margin:0 0 12px}
.home-how-steps p{font-size:var(--home-body);line-height:1.7;color:var(--muted);max-width:350px;margin:0}
@media(max-width:1100px){:root{--home-gap:20px;--home-preview-height:310px;--home-card-title:23px}.home-hero{gap:30px}.home-service-groups p{min-height:78px}.home-contact{padding:30px}}
@media(max-width:760px){:root{--home-space:40px;--home-gap:22px;--home-heading:32px;--home-card-title:25px;--home-preview-height:285px}.home-hero{padding-block:30px 32px;gap:26px}.home-hero .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:20px}.home-hero .hero-lead{font-size:17px}.home-hero .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}.home-hero .hero-actions .button{font-size:14px;width:100%}.home-hero .hero-reassurance{font-size:13px;margin-top:14px}.home-photo{display:block;margin:0;max-width:100%;background:var(--home-soft);--home-mobile-photo:180px}.home-photo img{height:var(--home-mobile-photo);object-position:50% 60%}.home-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:26px}.home-heading .button{min-height:44px;font-size:14px;padding:10px 16px}.home-services{padding-top:30px}.home-service-groups{grid-template-columns:1fr;gap:24px}.home-service-groups article{padding-top:20px}.home-service-groups p{min-height:0;margin-bottom:14px;max-width:none}.home-maintenance{line-height:1.7;margin-top:24px}.home-projects{grid-template-columns:1fr;gap:30px}.home-projects .project:last-child{display:block;grid-column:auto}.home-projects .project:last-child .project-info{padding:0;max-width:none}.home-projects .project:last-child .project-meta{margin-top:14px}.home-projects .project-meta{flex-direction:row;justify-content:space-between;align-items:center;margin-top:14px}.home-projects .project-meta p{flex-basis:auto;font-size:10px}.home-projects .project .status{font-size:11px}.home-projects .project h3{margin-block:12px 8px}.home-projects .project-description{font-size:15px}.home-contact{flex-direction:column;align-items:stretch;gap:24px;padding:26px 22px;margin-top:32px;margin-bottom:0}.home-contact-actions .button{font-size:14px}}
@media(prefers-reduced-motion:reduce){.home-service-links a{transition:none}}
/* Keep the restored illustrations and process concise on small screens. */
@media(max-width:760px){.home-service-groups article{padding:0;--hs-scene-height:130px}.home-service-copy{padding:22px}.home-service-groups .solution-browser{top:20px;width:55%;left:14%}.home-service-groups .solution-shop{bottom:12px;padding:8px}.home-service-groups .solution-hub{height:120px;width:280px}.home-service-groups .hub-center{font-size:11px;padding:8px 18px}.home-service-groups .hub-item{font-size:11px;padding:5px 9px}.home-service-groups .hub-item--one,.home-service-groups .hub-item--two{top:4px}.home-service-groups .solution-flow{max-width:320px}.home-service-groups .flow-caption{font-size:11px}.home-service-groups .solution-scene{gap:10px}.home-how{--how-node:40px;--how-gap:24px;padding-top:40px}.home-how-heading{display:block;margin-bottom:26px}.home-how-heading>p{font-size:16px;margin-top:16px}.home-how-heading>p br{display:none}.home-how-steps{grid-template-columns:1fr;gap:var(--how-gap)}.home-how-steps:before,.home-how-steps:after{top:20px;bottom:20px;left:20px;right:auto;width:2px;height:auto;transform-origin:top}.home-how-steps[data-motion-ready]:after{transform:scaleY(0)}.home-how-steps.is-in-view:after{transform:scaleY(1)}.home-how-steps li{display:grid;grid-template-columns:var(--how-node) minmax(0,1fr);gap:18px}.home-step-number{margin:0;font-size:16px}.home-how-steps li>div{background:var(--paper);padding-top:4px}.home-how-steps h3{font-size:22px;margin-bottom:8px}.home-how-steps p{font-size:15px;line-height:1.6}}
@media(prefers-reduced-motion:reduce){.home-service-groups *,.home-step-number{transition:none!important}.home-how-steps[data-motion-ready]:after{transform:none;transition:none}}
