@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{--lime:#dcfa32;--dark:#252625;--paper:#f7f7f2;--gray:#bcbeb8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--dark);color:var(--paper);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--lime);outline-offset:5px}header{height:106px;display:flex;align-items:center;justify-content:space-between;padding:20px 6%;border-bottom:1px solid #ffffff20}.logo{width:102px;display:block}nav{display:flex;gap:34px;font-size:14px}nav a:hover,.text-link:hover{color:var(--lime)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--lime);color:var(--dark);padding:18px 25px;border-radius:3px;font-weight:700;font-size:15px;transition:background .2s,transform .2s}.button:hover{background:#eaff81;transform:translateY(-2px)}.button.small{padding:13px 24px}.hero{min-height:750px;position:relative;display:grid;grid-template-columns:1.35fr 1fr;padding:74px 6% 95px;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0 0 30px;line-height:1.7}.eyebrow span{display:inline-block;width:7px;height:7px;background:var(--lime);margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif}h1{font-size:clamp(62px,7.4vw,112px);font-weight:500;line-height:1.04;letter-spacing:-6px;margin-bottom:28px}em{font-style:normal;color:var(--lime)}.intro{font-size:18px;line-height:1.7;color:#c6c8c1;max-width:425px;margin-bottom:34px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center}.hero-art>img{width:81%;height:540px;object-fit:contain;position:relative;z-index:1;transform:rotate(14deg)}.orbit{border:1px solid #c9db7433;position:absolute;width:95%;aspect-ratio:1;border-radius:50%;transform:rotate(-25deg) scaleY(.86)}.art-note{position:absolute;right:0;bottom:10px;color:var(--gray);font-size:13px;line-height:1.7}.hero-bottom{position:absolute;bottom:25px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.5px;color:var(--gray)}.ticker{display:flex;align-items:center;justify-content:space-around;gap:26px;background:var(--lime);color:var(--dark);padding:24px 3%;font-size:14px;letter-spacing:1.4px;font-weight:700}.ticker b{font-size:25px}.section{padding:110px 7%}.about{background:var(--paper);color:var(--dark);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about em,.recipe em{color:#727e22}h2{font-size:clamp(36px,4.1vw,64px);font-weight:500;line-height:1.13;letter-spacing:-2.5px;margin-bottom:30px}.body-copy{font-size:16px;line-height:1.8;color:#61625c;max-width:510px}.about figure{margin:0}.about figure img{width:100%;height:440px;object-fit:cover;filter:grayscale(1)}figcaption{font-size:13px;margin-top:14px;color:#777}.values{display:flex;gap:18px;margin-top:30px;flex-wrap:wrap}.values span{font-size:12px;border-top:1px solid #bbb;padding-top:12px}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:50px}.section-heading h2{margin:0}.section-heading>p{font-size:16px;line-height:1.7;color:#b8bbb3;margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.service-grid article{border-top:1px solid #777;padding-top:24px}.number{font-size:13px;color:var(--lime)}h3{font-size:21px;letter-spacing:-.7px;line-height:1.3;margin:36px 0 20px}.service-grid p,.steps p{font-size:15px;line-height:1.75;color:#bdc0b7}.service-grid ul{list-style:none;padding:0;margin-top:25px;font-size:13px;line-height:1.6;color:#e1e3dc}.service-grid li{padding:12px 0;border-top:1px solid #ffffff15}.specialty{background:var(--lime);color:var(--dark);display:grid;grid-template-columns:1fr 2fr;gap:4%}.specialty em{color:#697519}.specialty p:not(.eyebrow){max-width:575px;font-size:17px;line-height:1.8}.text-link{font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:8px}.specialty .text-link:hover{color:#697519}.recipe{background:var(--paper);color:var(--dark)}.recipe .section-heading>p{color:#666}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps article{border-top:1px solid #bbb;padding-top:25px}.steps span{font-size:11px;font-weight:700;letter-spacing:1px}.steps h3{margin-top:25px}.steps p{color:#676963}.contact{text-align:center;background:#30322c;padding-top:100px;padding-bottom:100px}.contact h2{font-size:clamp(54px,7.6vw,105px);letter-spacing:-4px}.contact>p:not(.eyebrow){font-size:17px;line-height:1.8;color:#c6c8c0}.contact-note{display:inline-block;border:1px solid #76796c;padding:17px 25px;margin-top:15px;font-size:14px}footer{display:flex;justify-content:space-between;align-items:center;padding:38px 6%;font-size:12px;color:#b9bbb3}footer .logo{width:75px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){.hero{min-height:680px}h1{letter-spacing:-3px}.hero-art>img{height:420px;width:95%}.service-grid,.steps{grid-template-columns:repeat(2,1fr)}.section{padding:75px 6%}.about{gap:5%}.about figure img{height:400px}.specialty{grid-template-columns:1fr}.ticker{font-size:11px}.ticker b:last-child{display:none}.section-heading{align-items:start}.section-heading>p{max-width:240px}}@media(max-width:600px){header{height:84px;padding:15px 6%}.logo{width:80px}nav{display:none}.button.small{font-size:13px}.hero{padding-top:46px;display:block;min-height:860px}.eyebrow{font-size:10px;letter-spacing:1.3px;margin-bottom:23px}h1{font-size:64px;letter-spacing:-3.5px;position:relative;z-index:2}.intro{font-size:16px;max-width:325px}.hero-art{height:300px;margin-top:10px}.hero-art>img{height:310px;width:80%;transform:rotate(45deg)}.orbit{width:70%}.art-note{font-size:11px;bottom:-10px}.hero-bottom{font-size:9px;letter-spacing:.4px}.hero-bottom span:last-child{display:none}.ticker{justify-content:center;padding:17px 10px;font-size:10px;gap:15px;flex-wrap:wrap}.ticker b{font-size:16px}.ticker b:last-child{display:block}.section{padding:65px 6%}h2{font-size:39px;letter-spacing:-1.8px}.about{grid-template-columns:1fr;gap:40px}.about figure img{height:290px}.section-heading{display:block;margin-bottom:36px}.section-heading>p{max-width:none;margin-top:22px}.service-grid{grid-template-columns:1fr;gap:24px}.service-grid h3{margin:19px 0 14px}.service-grid ul{margin-top:16px}.steps{gap:22px}.steps h3{font-size:19px}.steps p{font-size:14px}.steps span{font-size:10px}.contact h2{font-size:63px;letter-spacing:-3px}.contact>p:not(.eyebrow){font-size:15px}footer{flex-wrap:wrap;gap:25px}footer>span:first-of-type{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Business photography: retain Lemon Pie identity with a human focus. */
.hero-people{align-self:center;min-width:0;padding:0 0 48px 20px}.hero-people>img{width:100%;height:520px;object-fit:cover;object-position:center;transform:none;border-radius:3px}.hero-people .art-note{bottom:0;right:0;color:var(--paper);font-size:14px;line-height:1.5;background:var(--dark);padding:16px 0 0 22px;margin:0}.specialty{grid-template-columns:1fr 1.35fr;gap:8%;align-items:center}.business-visual img{display:block;width:100%;height:350px;object-fit:cover;border-radius:3px}.business-visual .eyebrow{font-size:12px}.about figure img{filter:none}@media(max-width:900px){.hero-people>img{height:430px}.specialty{grid-template-columns:1fr 1.2fr;gap:5%}.business-visual img{height:330px}}@media(max-width:600px){.hero-people{height:auto;margin:40px 0 30px;padding:0 0 42px}.hero-people>img{width:100%;height:310px;transform:none;object-position:center}.hero-people .art-note{font-size:14px;bottom:0}.hero{padding-bottom:65px}.specialty{grid-template-columns:1fr;gap:35px}.business-visual img{height:280px}}

.specialty>.eyebrow{align-self:start}.hero-people>img{object-position:center 35%}


/* Softer background for the selected business story section. */
.specialty{background:#f1ec99}
/* Share content rows so each service list begins at the same height. */
.service-grid{row-gap:0}
.service-grid article{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;min-width:0}
.service-grid article>p{margin-bottom:0}
.service-grid ul{align-self:start;margin-bottom:0}
.contact-note:hover{border-color:var(--lime);color:var(--lime)}
@media(min-width:601px) and (max-width:900px){.service-grid article:nth-child(n+3){margin-top:36px}}
@media(max-width:600px){.service-grid{row-gap:24px}.service-grid article{display:block;grid-row:auto}}

.hero-people{display:block;padding-bottom:0;container-type:inline-size}
.hero-people .art-note{position:static;margin:18px 0 0;padding:0;font-size:clamp(14px,4.55cqw,25px);font-weight:500;line-height:1.5;white-space:nowrap;text-align:center;background:transparent}
@media(max-width:600px){.hero-people{padding-bottom:0}.hero-people .art-note{font-size:4.55cqw}}
