@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#152425;--paper:#f7f9f5;--muted:#556360;--accent:#d0fa82;--line:#d8dfd8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a,button,input,textarea{outline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #598822}.wrap{max-width:1260px;margin:auto;padding-left:44px;padding-right:44px}header{display:flex;align-items:center;justify-content:space-between;min-height:110px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:20px;letter-spacing:-.7px}.mark{background:var(--ink);color:var(--accent);border-radius:10px;display:grid;place-items:center;width:42px;height:42px;font-size:30px;line-height:1}nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}.nav-cta{border:1px solid var(--ink);padding:10px 20px;border-radius:30px}.nav-cta span{margin-left:15px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:54px;align-items:center;padding-top:64px;padding-bottom:86px}.eyebrow,.number{font-size:12px;letter-spacing:1.7px;font-weight:700}.eyebrow{margin:0 0 23px}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:600;line-height:1.1;letter-spacing:-2.5px}h1{font-size:clamp(42px,4.6vw,66px);margin:0 0 25px}h2{font-size:46px;margin:0 0 25px}.serif{font-family:Georgia,serif;font-weight:400;font-style:italic}p{margin:0 0 20px}.intro{max-width:460px;color:var(--muted);font-size:18px;line-height:1.7}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;background:var(--ink);color:white;padding:17px 24px;border:0;border-radius:6px;font-weight:600;font-size:15px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#304d40;transform:translateY(-2px)}.small{font-size:12px;color:var(--muted);margin:16px 0 0}.visual{background:#e3ebdf;border-radius:12px;padding:27px;transform:rotate(2deg)}.visual-top,.visual-footer{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.5px;font-weight:600}.browser-card{margin:28px 0 20px;background:#fff;border-radius:9px;box-shadow:0 15px 30px #1524250d;overflow:hidden;transform:rotate(-4deg)}.browser-bar{border-bottom:1px solid #e5e8e5;padding:12px 17px;display:flex;gap:30px;align-items:center;font-size:9px;letter-spacing:1px}.browser-bar>span:first-child{letter-spacing:3px;color:#849282}.sample{padding:37px 29px;background:#193932;color:#fff}.sample-label{font-size:9px;letter-spacing:1.5px;color:#d0fa82}.sample h2{font-size:43px;letter-spacing:-1.5px;margin:17px 0}.sample h2 i{font-family:Georgia;font-weight:normal;color:#d0fa82}.sample p{font-size:12px;color:#e0e9e5}.sample-button{background:var(--accent);color:var(--ink);font-weight:700;font-size:11px;padding:10px 15px;display:flex;justify-content:space-between;width:155px;border-radius:3px}.workflow{display:flex;gap:15px;align-items:center;background:white;border-radius:7px;padding:20px 15px;transform:rotate(-2deg);margin:0 0 24px 20px;box-shadow:0 5px 20px #15242508}.workflow-icon{background:var(--accent);padding:0 10px;border-radius:8px;font-size:25px}.workflow strong{font-size:13px}.workflow p{font-size:10px;margin:2px 0}.strip{background:var(--accent);padding:22px 0}.strip .wrap{display:flex;justify-content:space-between;gap:24px;font-weight:700;letter-spacing:2px;font-size:12px}.section{padding-top:100px;padding-bottom:100px}.section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:100px}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{align-self:center;max-width:400px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:38px}.services article{border-top:1px solid var(--line);padding-top:28px}.number{color:var(--muted)}h3{font-size:27px;letter-spacing:-1px;margin:22px 0 17px}.services p{font-size:15px;color:var(--muted)}ul{list-style:none;padding:0;font-size:14px;margin:28px 0 0}ul li{padding:6px 0}ul li:before{content:'+';margin-right:12px;color:#446531}.process-section{background:var(--ink);color:white;padding:85px 0}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.process-grid>div>p:last-child{color:#bfcac5;max-width:380px}.process-grid h2 .serif{color:var(--accent)}ol{list-style:none;margin:0;padding:0}ol li{display:flex;gap:25px;padding:23px 0;border-top:1px solid #3d4b49}ol li>span{font-size:12px;color:var(--accent);padding-top:6px}ol h3{font-size:20px;letter-spacing:-.5px;margin:0 0 10px}ol p{font-size:14px;color:#bfcac5;margin:0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.contact>div>p:last-child{max-width:380px;color:var(--muted)}.contact-box{padding:30px;background:#eaf0e6;border:1px solid #dce5d6;border-radius:10px}.contact-box h3{margin:0 0 12px;font-size:24px}.contact-note{font-size:14px;color:var(--muted)}label{display:block;font-size:14px;font-weight:600;margin:16px 0 6px}input,textarea{width:100%;border:1px solid #c4cec2;border-radius:5px;background:#fff;padding:12px;color:var(--ink);font-size:16px}textarea{resize:vertical}.contact-box button{width:100%;margin-top:17px}footer{border-top:1px solid var(--line);padding-top:35px;padding-bottom:35px;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>span{font-size:12px;color:var(--muted);margin:0}footer .brand{font-size:16px}footer .mark{width:33px;height:33px;font-size:24px}.skip{position:absolute;top:-80px;background:var(--ink);color:white;padding:12px;z-index:10}.skip:focus{top:0}@media(min-width:1500px){.hero{padding-top:90px;padding-bottom:115px}}@media(max-width:900px){.wrap{padding-left:26px;padding-right:26px}.hero{gap:28px}h1{font-size:46px}h2{font-size:37px}.visual{padding:18px}.visual-top{font-size:8px}.sample{padding:24px}.sample h2{font-size:36px}.process-grid,.contact{gap:40px}.services{gap:25px}.section-heading{column-gap:35px}footer{flex-wrap:wrap}}@media(max-width:650px){header{min-height:85px}.brand{font-size:17px}.mark{width:35px;height:35px;font-size:25px}nav{gap:0}nav>a:not(.nav-cta){display:none}.nav-cta{padding:8px 13px}.nav-cta span{margin-left:8px}.hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:50px;gap:44px}h1{font-size:clamp(39px,10.5vw,58px);letter-spacing:-2px}.intro{font-size:17px}.visual{margin:0 6px;padding:23px}.visual-top{font-size:9px}.sample{padding:30px}.sample h2{font-size:43px}.strip .wrap{flex-wrap:wrap;gap:10px 22px;font-size:10px;letter-spacing:1px}.section{padding-top:64px;padding-bottom:64px}.section-heading,.services,.process-grid,.contact{grid-template-columns:1fr;gap:25px}.section-heading>p:last-child{margin:0}.services{margin-top:30px}.services h3 br{display:none}.services h3{font-size:25px}.process-section{padding:60px 0}.contact-box{padding:22px}footer{align-items:flex-start;flex-direction:column;gap:15px}h2{font-size:37px;letter-spacing:-1.7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Packages and add-ons */
nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}.packages-intro{padding-top:64px;padding-bottom:44px}.packages-intro .intro{max-width:610px}.pricing-note{max-width:630px;color:var(--muted);font-size:16px}.package-section{padding-bottom:0}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.package-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;padding:30px;background:#fff}.package-card:nth-child(2){background:#eaf0e6;border-color:#becdb6}.package-card h2{font-size:29px;letter-spacing:-1px;margin:24px 0 18px}.package-card p{color:var(--muted)}.package-card ul{margin:0 0 28px;font-size:16px}.package-card li{padding:8px 0}.package-action{margin-top:auto;padding-top:22px;border-top:1px solid var(--line)}.package-action .quote-label{font-size:14px;margin-bottom:14px}.package-action .button{width:100%;gap:12px}.included{display:grid;grid-template-columns:1fr 2fr;gap:35px;border-bottom:1px solid var(--line);padding:35px 0}.included h2{font-size:22px;letter-spacing:-.7px;margin:0}.included p{margin:0;color:var(--muted)}.addon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 42px;margin-top:25px}.addon-grid article{border-top:1px solid var(--line);padding-top:6px}.addon-grid h3{font-size:23px}.addon-grid p{color:var(--muted)}.package-contact{display:flex;align-items:center;justify-content:space-between;gap:40px}.package-contact p:last-child{max-width:550px;color:#bfcac5;margin:0}.package-contact .serif{color:var(--accent)}.package-contact .button{background:var(--accent);color:var(--ink);flex-shrink:0}.package-contact .button:hover{background:#b8e96b}@media(max-width:1000px){header{flex-wrap:wrap;padding-top:20px;padding-bottom:20px;gap:18px}nav{gap:20px}.package-grid{gap:14px}.package-card{padding:22px}.package-card h2{font-size:25px}}@media(max-width:750px){.package-grid,.addon-grid{grid-template-columns:1fr}.included{grid-template-columns:1fr;gap:12px}.package-contact{align-items:flex-start;flex-direction:column}.packages-intro{padding-top:36px}.package-card h2{font-size:29px}}@media(max-width:650px){header{align-items:flex-start;flex-direction:column}nav{width:100%;justify-content:space-between;gap:12px}nav>a.packages-link{display:inline;font-size:14px}.packages-intro h1{font-size:43px}}

/* Pricing extends the existing palette and typography. */
nav .packages-link{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);border:1px solid #b1d66e;border-radius:30px;padding:10px 22px;box-shadow:0 3px 0 #1524250b}
nav .packages-link:hover{background:#b8e96b}
.package-card{border-radius:18px;box-shadow:0 12px 32px #15242508;position:relative;overflow:hidden}
.package-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:#c4d5b9}
.package-card:nth-child(2):before{background:var(--ink)}
.package-action .quote-label{font-size:18px;font-weight:700;color:var(--ink);line-height:1.4}
.pricing-note{border-left:3px solid #8dac63;padding:12px 18px;background:#eaf0e6;border-radius:0 8px 8px 0}
.addon-grid{gap:22px}
.addon-grid article{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;padding:26px;background:linear-gradient(145deg,#fff,#edf3e8);box-shadow:0 8px 24px #15242505}
.addon-grid h3{margin-top:0;line-height:1.25}
.addon-grid .addon-price{margin:auto 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--ink);font-size:16px;font-weight:700}
@media(max-width:650px){nav{flex-wrap:wrap}nav>a.packages-link{display:inline-flex}.packages-intro h1{font-size:clamp(34px,10vw,43px)}}

.contact-preference{border:1px solid #c4cec2;border-radius:8px;margin:22px 0;padding:12px 16px 16px;min-width:0}
.contact-preference legend{font-size:14px;font-weight:600;padding:0 5px}
.contact-preference label{display:flex;align-items:center;gap:10px;margin:10px 0 0;cursor:pointer}
.contact-preference input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--ink)}
[hidden]{display:none!important}
/* Trust, work examples, and contact */
header nav{gap:20px} .hero{grid-template-columns:1.2fr 1fr}.hero h1{font-size:clamp(40px,4.3vw,60px)}
.text-link{text-decoration:underline;text-underline-offset:4px}a:hover.text-link{color:#446531}
.portfolio-grid,.about-grid,.cost-grid,.automation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.portfolio-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:white}.portfolio-card img{width:100%;height:auto;display:block;border-bottom:1px solid var(--line)}.portfolio-card>div{padding:26px}.portfolio-card h3{margin-top:16px}.portfolio-card p{color:var(--muted)}
.automation-grid article{border:1px solid #56645f;border-radius:12px;padding:24px}.automation-grid h3{margin-top:0}.automation-grid p{color:#e0e9e5}.light-note{color:#c3cfc7}.about-grid{align-items:center}
.faq{max-width:1000px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-weight:700;cursor:pointer;font-size:18px}.faq details p{margin:15px 0 0;color:var(--muted)}
.recommended{font-size:12px;font-weight:700;letter-spacing:.8px;background:var(--ink);color:var(--accent);padding:8px 10px;border-radius:6px;line-height:1.5}
.package-action .package-price,.package-price{font-size:36px;line-height:1.3;font-weight:700;color:var(--ink)}.package-price .small{display:block;font-size:14px;font-weight:400;margin:5px 0 0}
.cost-grid article{padding:28px;border:1px solid var(--line);border-radius:14px;background:white}.cost-grid h3{margin-top:0}#ongoing .pricing-note{max-width:none;margin:26px 0 0}
select{width:100%;font:inherit;background:white;border:1px solid #c4cec2;border-radius:5px;padding:12px;color:var(--ink)}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.65;cursor:wait}.contact-note a,.small a{overflow-wrap:anywhere}.contact>div>p a{overflow-wrap:anywhere}
.legal{max-width:850px}.legal h2{font-size:25px;letter-spacing:-.5px;margin-top:36px}.legal p{font-size:17px}footer a{font-size:14px}
@media(max-width:750px){.portfolio-grid,.about-grid,.cost-grid,.automation-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr}.hero h1{font-size:clamp(36px,9vw,54px)}}
@media(max-width:650px){header nav{justify-content:flex-start;gap:12px;flex-wrap:wrap}nav>a:not(.nav-cta){display:inline-flex}header .nav-cta{font-size:13px}.hero h1{letter-spacing:-1.8px}.portfolio-card>div{padding:20px}}
.package-example{margin:0 0 25px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#f7f9f5}.package-example img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .25s}.package-example>a:first-child{display:block;overflow:hidden}.package-example>a:first-child:hover img{transform:scale(1.025)}.package-example p{font-size:12px;line-height:1.5;margin:14px 16px 8px}.package-example>.text-link{display:block;margin:0 16px 17px;font-size:14px;font-weight:600}.package-card .package-example{margin-top:auto}.package-card .package-action{margin-top:0}
.home-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}.home-example-grid .portfolio-card{display:flex;flex-direction:column}.home-example-grid .portfolio-card>div{display:flex;flex:1;flex-direction:column}.home-example-grid .portfolio-card .text-link{margin-top:auto}.package-card .recommended{margin-top:16px;align-self:flex-start}.hero-copy>.small{font-size:15px}.hero-copy>.small .text-link{font-weight:700}@media(max-width:850px){.home-example-grid{grid-template-columns:1fr}.home-example-grid .portfolio-card{display:grid;grid-template-columns:1fr 1fr;align-items:center}}@media(max-width:550px){.home-example-grid .portfolio-card{display:flex}}

/* Shorter hero and working demo preview */
.relay-preview{display:block;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 18px 50px #15242512}.relay-preview img{display:block;width:100%;height:auto}.relay-preview span{display:block;padding:16px 20px;font-weight:700;font-size:14px}.hero{padding-top:36px;padding-bottom:42px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.hero .intro{line-height:1.55}.hero h1{font-size:clamp(36px,4vw,58px)}#work{padding-top:36px}.small{font-size:14px}.home-example-grid .number{letter-spacing:.4px;font-size:14px}.home-example-grid h3{font-size:24px}@media(max-width:650px){header{padding-top:14px;padding-bottom:14px;gap:12px}.hero{padding-top:22px;gap:28px}.hero h1{font-size:clamp(34px,9vw,45px)}.hero .eyebrow{margin-bottom:14px}.hero .intro{font-size:16px;margin-bottom:16px}.hero .button{padding:13px 22px}.hero .small{margin-top:10px}.relay-preview{margin-top:8px}}
@media(max-width:360px){.hero h1{font-size:30px;letter-spacing:-1px;margin-bottom:16px}.hero .intro{font-size:15px;line-height:1.5}.hero .eyebrow{font-size:11px;line-height:1.5}.hero{padding-top:16px}header nav{gap:10px;font-size:13px}header .nav-cta{padding:8px 10px}.wrap{padding-left:20px;padding-right:20px}}

.testimonials-page{min-height:65vh} @media(min-width:651px) and (max-width:1100px){header.wrap{flex-wrap:wrap;gap:18px;padding-top:20px;padding-bottom:20px}header nav{flex-wrap:wrap}}
