@import url('/case-studies.css?v=3');
@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;600;700;800&family=Caveat:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');
@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');
.services .service .service-icon{height:118px;display:flex;align-items:center;justify-content:flex-start;margin:-5px 0 1px;flex:none}
.services .service .service-icon img{display:block;width:118px;height:118px;object-fit:contain;object-position:left center}
.services .service .service-copy{display:flex;flex-direction:column;flex:1}
@media(max-width:750px){.services .service{grid-template-columns:82px 1fr}.services .service .service-icon{grid-column:1;grid-row:1;height:82px;margin:0}.services .service .service-icon img{width:82px;height:82px}.services .service .number{grid-column:1;align-self:start}.services .service h3{grid-column:2;grid-row:1;align-self:center}.services .service .service-copy{grid-column:2}}
:root{--ink:#172032;--lime:#e9ff66;--paper:#fafbf8;--line:#d9dedc;--muted:#58616c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #788b08;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:27px 5%;border-bottom:1px solid var(--line);gap:30px}.brand{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:28px;letter-spacing:-1.3px;line-height:1.15}.brand span{display:block;font-family:'DM Sans',Arial,sans-serif;letter-spacing:2px;font-size:10px;margin-top:10px;font-weight:600}nav{display:flex;align-items:center;gap:29px;font-size:14px}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.nav-contact{background:var(--ink);color:white;padding:12px 22px}.menu{display:none}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;margin:0 0 24px;display:flex;align-items:center;gap:13px}.eyebrow:before{content:'';width:24px;height:2px;background:currentColor}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.08;letter-spacing:-.055em}h1{font-size:clamp(48px,5.7vw,89px);font-weight:500;margin-bottom:27px}h2{font-size:clamp(36px,4vw,61px);font-weight:500}h3{font-size:27px;font-weight:600;letter-spacing:-.035em}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:635px}.hero-copy{padding:72px 8% 65px 9.3%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero p.description{max-width:430px;color:var(--muted);font-size:18px}.hero-image{position:relative;min-height:450px;overflow:hidden}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 50%}.image-label{position:absolute;bottom:28px;left:28px;color:white;border:1px solid #ffffff70;padding:8px 14px;font-size:12px;letter-spacing:1.5px;backdrop-filter:blur(15px);background:#17203266}.buttons{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:12px}.button{display:inline-block;padding:15px 24px;background:var(--lime);color:var(--ink);font-weight:600;font-size:15px;border:0;cursor:pointer}.button:hover{background:#d4ed42}.text-link{font-size:15px;border-bottom:1px solid;padding-bottom:3px}.strip{display:flex;justify-content:space-between;padding:24px 5%;gap:22px;background:var(--ink);color:white;font-size:14px}.strip span:first-child{color:var(--lime)}.section{padding:90px 7%}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:44px}.section-heading h2{margin:0}.section-heading p{max-width:460px;color:var(--muted);margin:0}.services{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:70px 1fr 1fr;gap:30px;padding:33px 0;border-bottom:1px solid var(--line);align-items:start}.number{font-size:13px;color:var(--muted);padding-top:5px}.service h3{margin:0}.service p{color:var(--muted);margin:0}.service details{margin-top:15px}.service summary{cursor:pointer;font-size:14px;font-weight:600}.service details p{padding:14px 0 0;font-size:15px}.dark{background:var(--ink);color:var(--paper)}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%}.split p{color:#c9ced6}.split h2 em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}.principle{padding:24px 0;border-top:1px solid #ffffff35}.principle h3{font-size:24px}.principle p{margin-bottom:0}.cta{background:var(--lime);padding:60px 7%;display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{max-width:700px;margin-bottom:15px}.cta p{margin:0}.cta .button{background:var(--ink);color:white;white-space:nowrap}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:50px 5%}footer>div{text-align:right;font-size:14px}footer p{color:var(--muted);margin:8px 0 0}.page-intro{padding:80px 7% 65px;max-width:1150px}.page-intro h1{max-width:900px}.page-intro .lead{font-size:21px;max-width:680px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.step{border-top:1px solid var(--line);padding-top:22px}.step .number{display:block;margin-bottom:36px}.step h3{font-size:27px}.step p{color:var(--muted);font-size:16px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;padding:0 7% 90px}form{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;font-weight:600}input,select,textarea{display:block;width:100%;padding:13px;border:1px solid #aeb6b9;border-radius:0;background:white;margin-top:7px;color:var(--ink)}textarea{resize:vertical;min-height:140px}.full{grid-column:1/-1}.form-note{font-size:14px;color:var(--muted);margin:0}.contact-aside h3{font-size:25px}.contact-aside a{overflow-wrap:anywhere;border-bottom:1px solid}.contact-aside p{color:var(--muted)}.contact-aside{padding-top:20px}.skip{position:absolute;left:20px;top:-100px;background:var(--lime);padding:12px;z-index:10}.skip:focus{top:10px}.small-label{font-size:12px;color:var(--muted)}@media(max-width:900px){header{padding:23px 5%}.brand{font-size:24px}nav{gap:17px;font-size:13px}.hero{min-height:560px}.hero-copy{padding-top:45px;padding-bottom:45px}h1{font-size:60px}.section{padding:65px 6%}.steps{grid-template-columns:1fr 1fr}.service{grid-template-columns:35px 1fr 1.2fr;gap:20px}.strip{flex-wrap:wrap}.page-intro{padding-top:55px}}@media(max-width:650px){header{position:relative}.brand span{font-size:9px}.menu{display:block;border:1px solid var(--ink);padding:8px 12px;background:transparent;font-size:14px}nav{display:none;position:absolute;left:0;right:0;top:100%;padding:25px 5%;background:var(--paper);z-index:5;border-bottom:1px solid var(--line);font-size:17px}nav.open{display:flex;align-items:flex-start;flex-direction:column}.hero{grid-template-columns:1fr}.hero-copy{padding:46px 6%}h1{font-size:54px}.hero-image{min-height:340px}.strip{gap:12px 25px;font-size:12px}.strip span:first-child{width:100%}.section-heading,.split,.contact-grid{grid-template-columns:1fr;gap:28px}.section{padding:56px 6%}.service{grid-template-columns:28px 1fr;gap:12px}.service>div:last-child{grid-column:2}.service h3{font-size:25px}.cta{display:block;padding:45px 6%}.cta .button{margin-top:22px}footer{align-items:flex-start;flex-direction:column}footer>div{text-align:left}.page-intro{padding:50px 6% 36px}.page-intro .lead{font-size:19px}.steps{grid-template-columns:1fr}.step .number{margin-bottom:18px}form{grid-template-columns:1fr}form>*{grid-column:1}.contact-grid{padding:0 6% 55px}h2{font-size:39px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* The Nitty Gritty brand direction */

:root{--ink:#1f2d48;--lime:#e0a526;--paper:#fff5e3;--line:#d9cbb5;--muted:#55594e;--rust:#bc4a1c;--sage:#8fa486}body{font-family:Inter,Arial,sans-serif;background:var(--paper)}header{padding:18px 5%;border-bottom:1px solid #d9cbb5}.brand{display:block;width:172px;flex-shrink:0}.brand img{display:block;width:140px;height:82px;object-fit:contain}.brand span{font-size:9px;letter-spacing:.8px;margin-top:8px;white-space:nowrap}nav{font-size:14px;font-weight:600;gap:29px}.nav-contact{background:var(--rust);border-radius:5px;padding:12px 23px}.nav-contact:hover{background:#9a3b15}h1,h2,h3{font-family:'Baloo 2',Arial,sans-serif;font-weight:800;letter-spacing:-.035em}h1{font-size:clamp(52px,6.4vw,94px);line-height:.98}h2{line-height:1.04}h3{line-height:1.15}.hero{grid-template-columns:1fr 1.07fr;min-height:600px;max-width:1600px;margin:auto}.hero-copy{padding:60px 5% 65px 10%}.hero .eyebrow{font-size:11px;letter-spacing:1.35px;margin-bottom:27px}.hero p.description{font-size:16px;line-height:1.7;max-width:420px}.hero-promise{display:block;font-family:'Baloo 2',Arial,sans-serif;font-size:25px;font-weight:700;line-height:1.2;color:var(--ink);margin:0 0 20px}.rust{color:var(--rust)}.hero-image{margin:35px 5% 35px 0;border-radius:10px 70px 10px 10px;min-height:470px;background:#eaddc4}.hero-image img{object-position:50% 50%;object-fit:cover}.button{background:var(--rust);color:#fff9ef;border-radius:5px;font-size:14px;padding:15px 22px}.button:hover{background:#9b3b16}.text-link{font-size:14px}.buttons{gap:20px}.strip{background:var(--ink);padding-top:22px;padding-bottom:22px}.strip span:first-child{color:#edbc50;font-size:12px;letter-spacing:.6px}.section{padding:76px 7%}.eyebrow{font-size:12px;letter-spacing:1.4px}.section-heading h2{font-size:clamp(39px,4.4vw,63px)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border:0}.service{display:flex;flex-direction:column;gap:22px;padding:32px 28px;border:1px solid #20304725;border-radius:10px;background:#aeb89a}.service:nth-child(2){background:#efb17f}.service:nth-child(3){background:#edbc50}.service .number{font-family:'Caveat',cursive;font-size:28px;color:var(--ink);font-weight:700;line-height:1}.service h3{font-size:32px}.service>div{display:flex;flex-direction:column;flex:1}.service p{color:#28312b;font-size:16px}.service details{margin-top:auto;padding-top:24px}.service summary{font-size:14px;border-top:1px solid #20304740;padding-top:15px}.dark{background:#1f2d48}.dark h2 em{color:#e7b647;font-family:Caveat,cursive;letter-spacing:-.02em;font-size:1.15em;line-height:1.1}.dark p{color:#f2eadb}.dark .eyebrow{color:#e9b74f}.dark .text-link{color:#fff5e3}.principle{border-color:var(--line)}.dark .principle{border-color:#fff5e345}.principle p{color:var(--muted)}.dark .principle p{color:#f2eadb}.cta{background:#e9b44b;position:relative;border-top:1px solid #c99430;border-bottom:1px solid #c99430}.cta .eyebrow{font-family:Caveat,cursive;letter-spacing:0;text-transform:none;font-size:29px;margin-bottom:20px}.cta .eyebrow:before{display:none}.cta h2{font-size:clamp(36px,4vw,58px)}footer{background:#f7ebd6}footer .brand{width:190px}footer .brand img{width:130px}.page-intro h1{line-height:1.03;max-width:1000px}.page-intro .lead{font-size:20px}.step .number{font-family:Caveat,cursive;font-size:31px;color:var(--rust);font-weight:700}.step{border-top:2px solid #caa676}.step h3{font-size:32px}input,select,textarea{border-color:#b5a58e;background:#fffaf0;border-radius:4px}.contact-aside h3{font-size:29px}.contact-aside a{font-size:16px}.menu{border-radius:4px}.nav-contact[aria-current=page]{text-decoration:none;box-shadow:0 0 0 3px #e9b44b}.skip{background:#e9b44b;color:var(--ink)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#bc4a1c}@media(max-width:1050px){nav{gap:19px}.hero-copy{padding-left:9%}h1{font-size:65px}.hero-image{min-height:450px}.service{padding:26px 22px}.service h3{font-size:29px}}@media(max-width:750px){nav{gap:14px;font-size:12px}.brand{width:150px}.brand img{width:120px;height:72px}.services{grid-template-columns:1fr}.service{display:grid;grid-template-columns:35px 1fr;gap:16px}.service>div{grid-column:2}.service details{padding-top:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 6% 28px}.hero-image{margin:0 6% 36px;min-height:390px;border-radius:8px 50px 8px 8px}.hero p.description{max-width:550px}.hero h1{font-size:72px}}@media(max-width:650px){header{padding:16px 6%}nav{font-size:17px}.hero h1{font-size:60px}.hero-promise{font-size:25px}.hero-image{min-height:320px}.section{padding:52px 6%}.section-heading h2{font-size:42px}.service{padding:25px 20px}.service h3{font-size:31px}.page-intro h1{font-size:52px}.page-intro .lead{font-size:18px}.strip{gap:12px 21px}.strip span:first-child{font-size:10px}.brand span{font-size:8px}.cta .eyebrow{font-size:28px}footer .brand span{font-size:8px}footer .brand img{height:80px}h2{font-size:42px}.contact-aside a{font-size:15px}}
/* Branded mug and venue carousel */
/* Case studies: a reusable start-to-finish project roadmap */
.case-index-intro{padding-bottom:48px}.case-picker{padding:0 7% 90px}.case-card{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);max-width:1260px;margin:auto;background:var(--ink);color:var(--paper);border-radius:12px;overflow:hidden;box-shadow:0 18px 50px #1f2d481c}.case-card-image{display:block;min-height:620px;background:#e4d5ba}.case-card-image img{display:block;width:100%;height:100%;object-fit:cover}.case-card-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:9%}.case-card-copy .eyebrow{color:#e9b44b}.case-card-copy h2{font-size:clamp(45px,5vw,72px);margin-bottom:22px}.case-card-copy>p:not(.eyebrow){max-width:580px;color:#f2eadb;font-size:18px}.case-card-copy dl{width:100%;margin:22px 0 34px;border-top:1px solid #fff5e340}.case-card-copy dl div{display:grid;grid-template-columns:100px 1fr;padding:16px 0;border-bottom:1px solid #fff5e340}.case-card-copy dt{color:#e9b44b;font-size:12px;text-transform:uppercase;letter-spacing:1.3px}.case-card-copy dd{margin:0}.case-card-copy .button{background:#e9b44b;color:var(--ink)}
.case-hero{display:grid;grid-template-columns:.95fr 1.05fr;min-height:710px;background:var(--ink);color:var(--paper)}.case-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:70px 10%}.case-back{font-size:14px;border-bottom:1px solid #fff5e365;margin-bottom:58px}.case-hero .eyebrow{color:#e9b44b}.case-hero h1{font-size:clamp(62px,7vw,105px);max-width:720px}.case-hero .lead{max-width:610px;color:#f2eadb;font-size:19px}.case-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.case-meta span{border:1px solid #fff5e34f;border-radius:99px;padding:8px 14px;font-size:12px;letter-spacing:.3px}.case-hero-image{min-height:600px;overflow:hidden}.case-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.case-roadmap-intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:end;padding:95px 7% 60px;max-width:1500px;margin:auto}.case-roadmap-intro h2{margin-bottom:0}.case-roadmap-intro>p:last-child{max-width:540px;color:var(--muted);font-size:18px}.roadmap{position:relative;max-width:1500px;margin:auto;padding:25px 7% 110px}.roadmap:before{content:'';position:absolute;top:35px;bottom:100px;left:50%;width:2px;background:#bda67c;transform:translateX(-1px)}.roadmap-step{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr);align-items:center;gap:28px;margin:0 0 96px}.roadmap-step:nth-child(even) .roadmap-copy{grid-column:3}.roadmap-step:nth-child(even) .roadmap-marker{grid-column:2}.roadmap-step:nth-child(even) .roadmap-media{grid-column:1;grid-row:1}.roadmap-copy{padding:34px;max-width:550px}.roadmap-copy .eyebrow{color:var(--rust);margin-bottom:18px}.roadmap-copy h3{font-size:clamp(34px,3.3vw,50px);margin-bottom:20px}.roadmap-copy>p:last-child{color:var(--muted);margin:0}.roadmap-count{font-family:'Caveat',cursive;font-weight:700;color:var(--rust);font-size:24px;margin-bottom:7px}.roadmap-marker{position:relative;z-index:1;grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:auto;border-radius:50%;background:var(--ink);color:var(--paper);border:7px solid var(--paper);box-shadow:0 0 0 2px #bda67c;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px}.roadmap-media{grid-column:3;grid-row:1;margin:0;border-radius:8px 42px 8px 8px;overflow:hidden;background:#e7dac4;box-shadow:0 15px 38px #1f2d4818}.roadmap-media img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.case-outcome{display:grid;grid-template-columns:1fr minmax(330px,.68fr);gap:8%;align-items:center;padding:85px 7%;background:#8fa486}.case-outcome>div{max-width:720px}.case-outcome h2{font-size:clamp(42px,5vw,68px)}.case-outcome>div>p:last-child{max-width:620px;font-size:18px}.case-outcome img{display:block;width:100%;max-height:660px;object-fit:cover;border-radius:8px 38px 8px 8px;box-shadow:0 15px 38px #1f2d4825}
@media(max-width:1100px){nav{gap:12px;font-size:12px}.case-card{grid-template-columns:.9fr 1.1fr}.case-card-image{min-height:540px}.case-hero{min-height:620px}.case-hero-copy{padding-left:8%;padding-right:8%}.roadmap-step{grid-template-columns:minmax(0,1fr) 65px minmax(0,1fr);gap:18px}.roadmap-copy{padding:22px}}
@media(max-width:750px){.case-card{grid-template-columns:1fr}.case-card-image{min-height:0;aspect-ratio:4/5}.case-card-copy{padding:48px 7%}.case-hero{grid-template-columns:1fr}.case-hero-copy{padding:55px 7%}.case-back{margin-bottom:40px}.case-hero-image{min-height:0;aspect-ratio:4/5}.case-roadmap-intro{grid-template-columns:1fr;padding:65px 6% 35px}.roadmap{padding:10px 6% 65px}.roadmap:before{left:34px;top:25px;bottom:60px}.roadmap-step,.roadmap-step:nth-child(even){grid-template-columns:42px 1fr;gap:12px;margin-bottom:65px;align-items:start}.roadmap-marker,.roadmap-step:nth-child(even) .roadmap-marker{grid-column:1;grid-row:1;width:42px;height:42px;border-width:5px;font-size:12px}.roadmap-copy,.roadmap-step:nth-child(even) .roadmap-copy{grid-column:2;grid-row:1;padding:0 0 24px}.roadmap-media,.roadmap-step:nth-child(even) .roadmap-media{grid-column:2;grid-row:2;border-radius:6px 28px 6px 6px}.roadmap-copy h3{font-size:34px}.case-outcome{grid-template-columns:1fr;padding:58px 6%;gap:35px}.case-outcome img{max-height:none}.case-picker{padding:0 6% 60px}}
.brand-lockup{display:flex;align-items:center;gap:4px;flex-shrink:0}.mug-home{display:block;width:91px;height:97px;transition:transform .2s ease}.mug-home img{width:100%;height:100%;object-fit:contain}.mug-home:hover{transform:rotate(-5deg)}.brand-lockup .brand{width:160px}.venue-carousel{position:relative;isolation:isolate}.venue-slides{position:absolute;inset:0}.venue-slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;pointer-events:none}.venue-slide.is-active{opacity:1}.venue-slide img{object-fit:cover;object-position:center}.carousel-controls{position:absolute;z-index:2;bottom:16px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px;border-radius:8px;background:#fff5e3f5;box-shadow:0 2px 15px #1f2d4820}.venue-selectors{display:flex;gap:3px;flex-wrap:wrap}.carousel-controls button{border:0;border-radius:5px;padding:11px 12px;font-size:13px;line-height:1.3;font-weight:600;cursor:pointer;background:transparent;color:var(--ink);min-height:40px}.venue-selectors button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.carousel-controls .carousel-pause{border:1px solid #1f2d4840;font-size:12px}.carousel-controls button:hover{background:#dfceb1}.venue-selectors button[aria-pressed=true]:hover{background:var(--ink)}.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}@media(max-width:1050px){header{gap:15px}nav{gap:17px}.brand-lockup .brand{width:140px}.mug-home{width:75px;height:85px}.brand-lockup{gap:0}}@media(min-width:651px) and (max-width:850px){header{padding-left:3%;padding-right:3%}nav{gap:11px;font-size:12px}.nav-contact{padding:11px 15px}.mug-home{width:57px;height:75px}.brand-lockup .brand{width:126px}.brand-lockup .brand img{width:114px}.brand-lockup .brand span{font-size:7px}}@media(max-width:650px){.mug-home{width:74px;height:83px}.brand-lockup .brand{width:130px}.brand-lockup .brand img{width:115px;height:68px}.brand-lockup .brand span{font-size:7px}.carousel-controls{bottom:10px;left:10px;right:10px;gap:4px;padding:6px}.carousel-controls button{padding:10px 8px;font-size:11px}.carousel-controls .carousel-pause{padding:10px 7px;font-size:11px}.venue-selectors{gap:0}.hero-image{min-height:350px}}@media(prefers-reduced-motion:reduce){.venue-slide,.mug-home{transition:none}.mug-home:hover{transform:none}}
