:root{--brown:#3d261f;--brown-deep:#2a1a14;--sage:#a6c96c;--sage-deep:#6e9438;--orange:#ff5630;--cream:#fffcd9;--paper:#fffef5;--line:#ece9d4;--ink:#1f1411;--ink-soft:#6b5a52;--serif:"Sorts Mill Goudy","Times New Roman",Georgia,serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--radius-sm:10px;--radius-md:18px;--radius-pill:999px;--max:1200px;--pad:clamp(20px,5vw,56px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{background:radial-gradient(ellipse 720px 620px at 95% 2%,rgba(255,86,48,.14) 0,transparent 60%),radial-gradient(ellipse 640px 540px at 3% 18%,rgba(166,201,108,.22) 0,transparent 65%),radial-gradient(ellipse 700px 640px at 92% 38%,rgba(255,252,217,.55) 0,transparent 60%),radial-gradient(ellipse 680px 580px at 5% 58%,rgba(255,86,48,.1) 0,transparent 65%),radial-gradient(ellipse 700px 600px at 96% 75%,rgba(166,201,108,.2) 0,transparent 60%),radial-gradient(ellipse 720px 620px at 8% 96%,rgba(255,252,217,.55) 0,transparent 60%),var(--paper);background-attachment:fixed;color:var(--ink);font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.6;margin:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}a:hover{color:var(--orange)}h1,h2,h3{color:var(--ink);font-family:var(--serif);font-weight:400;letter-spacing:-.015em;line-height:1.08;margin:0 0 .4em}h1{font-size:clamp(2.6rem,6.4vw,5.5rem);line-height:1.02}h2{font-size:clamp(2rem,4.5vw,3.5rem)}h3{font-family:var(--sans);font-size:1.15rem;font-weight:600;letter-spacing:-.005em;line-height:1.3}h1 em{color:var(--sage-deep);font-style:normal}p{margin:0 0 1em}.eyebrow{align-items:center;color:var(--ink-soft);display:inline-flex;font-family:var(--sans);font-size:.78rem;font-weight:600;gap:10px;letter-spacing:.14em;margin:0 0 1.2em;text-transform:uppercase}.eyebrow--center{justify-content:center}.eyebrow__dot{background:var(--orange);border-radius:50%;display:inline-block;height:7px;width:7px}.about__inner,.contact__inner,.container,.footer__inner,.hero__inner,.services__grid,section>.section__head{margin-inline:auto;max-width:var(--max)}.nav{backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);background:rgba(255,254,245,.7);justify-content:space-between;padding:18px var(--pad);position:sticky;top:0;z-index:50}.nav,.nav__brand{align-items:center;display:flex}.nav__brand{line-height:0}.nav__logo{height:100px;width:auto}.nav__links{align-items:center;display:flex;gap:32px}.nav__links a{color:var(--brown);font-size:.92rem;font-weight:500;letter-spacing:-.005em}.nav__links a:hover{color:var(--orange)}.nav__cta{background:var(--sage);border-radius:var(--radius-pill);color:var(--brown)!important;font-weight:600!important;padding:10px 20px;transition:background .2s ease,transform .15s ease}.nav__cta:hover{background:var(--sage-deep);color:#fff!important;transform:translateY(-1px)}section{padding:clamp(48px,6.6vw,96px) var(--pad)}.section__head{margin-bottom:clamp(48px,6vw,88px);max-width:760px;text-align:center}.section__lede{color:var(--ink-soft);font-size:1.08rem;margin-top:.6em}.hero{background:transparent;padding-bottom:clamp(48px,7.2vw,96px);padding-top:clamp(48px,7.8vw,108px);position:relative}.hero__inner{max-width:1000px;position:relative}.hero__title{margin-bottom:.45em;max-width:22ch}.hero__lede{color:var(--ink-soft);font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.55;margin-bottom:2.4em;max-width:56ch}.hero__ctas{display:flex;flex-wrap:wrap;gap:14px}.btn{align-items:center;border:1.5px solid transparent;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-family:var(--sans);font-size:.97rem;font-weight:600;gap:10px;letter-spacing:-.005em;padding:15px 28px;transition:transform .15s ease,background .2s ease,color .2s ease,border-color .2s ease}.btn span{transition:transform .2s ease}.btn:hover span{transform:translateX(3px)}.btn--primary{background:var(--sage);color:var(--brown)}.btn--primary:hover{background:var(--sage-deep);color:#fff}.btn--ghost{background:transparent;border-color:var(--brown);color:var(--brown)}.btn--ghost:hover{background:var(--sage);border-color:var(--sage);color:var(--brown)}.services{background:transparent}.services__grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr));justify-items:stretch;list-style:none;margin:0 auto;padding:0}@media (max-width:900px){.services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.services__grid{grid-template-columns:1fr}}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 1px 2px rgba(61,38,31,.04),0 4px 14px rgba(61,38,31,.04);display:flex;flex-direction:column;gap:12px;padding:36px 32px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card:hover{border-color:var(--orange);box-shadow:0 8px 28px rgba(61,38,31,.1);transform:translateY(-4px)}.card__icon{font-size:1.9rem;line-height:1;margin-bottom:4px}.card h3{color:var(--ink);margin:0}.card p{color:var(--ink-soft);font-size:.97rem;line-height:1.6;margin:0}.about{background:transparent;text-align:center}.about__inner{max-width:720px}.about p{color:var(--ink-soft);font-family:var(--sans);font-size:clamp(1rem,1.3vw,1.15rem);font-weight:400;letter-spacing:0;line-height:1.7;margin-inline:auto;max-width:60ch}.contact{background:transparent;color:var(--brown)}.contact__form{margin:0 auto;max-width:640px}.contact a{color:var(--orange);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.contact a:hover{color:#ff7a5a}.form{display:flex;flex-direction:column;gap:22px}.form__row{display:grid;gap:18px;grid-template-columns:1fr 1fr}.field{display:flex;flex-direction:column;font-size:.85rem;gap:8px}.field--group legend,.field>span{color:var(--brown);font-size:.85rem;font-weight:500;letter-spacing:.02em;padding:0}.field input,.field textarea{background:transparent;border:0;border-bottom:1.5px solid rgba(61,38,31,.45);border-radius:0;color:var(--brown);font-family:var(--sans);font-size:1rem;padding:14px 0;transition:border-color .15s ease}.field input::placeholder,.field textarea::placeholder{color:rgba(61,38,31,.5)}.field input:focus,.field textarea:focus{border-color:var(--sage-deep);outline:none}.field textarea{min-height:110px;padding:14px 0;resize:vertical}.field--group{border:0;margin:0;padding:0}.field--group legend{display:block;margin-bottom:14px}.field__hint{font-size:.8rem;font-weight:400;margin-left:6px;opacity:.5}.checks{display:grid;gap:10px 20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.check{align-items:center;color:var(--brown);cursor:pointer;display:flex;font-size:.93rem;font-weight:400;gap:11px;letter-spacing:0;user-select:none}.check input{appearance:none;-webkit-appearance:none;aspect-ratio:1/1;background:transparent;border:2px solid var(--brown);border-radius:6px;cursor:pointer;display:inline-block;flex-shrink:0;height:22px;position:relative;transition:border-color .15s ease,background .15s ease;width:22px}.check input:checked,.check input:hover{border-color:var(--sage-deep)}.check input:checked{background:var(--sage-deep)}.check input:checked:after{border:solid #fff;border-width:0 2.5px 2.5px 0;content:"";height:11px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:6px}.check input:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.form__submit{align-self:flex-start;background:var(--sage);color:var(--brown);margin-top:8px}.form__submit:hover{background:var(--sage-deep);color:#fff}.form__submit:disabled{cursor:progress;opacity:.6}.form__status{color:var(--ink-soft);font-size:.92rem;margin:4px 0 0;min-height:1.4em}.form__status.is-ok{color:var(--sage-deep)}.form__status.is-err{color:#c9352a}.footer{background:transparent;padding:32px var(--pad)}.footer__inner{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.footer__logo{height:28px;width:auto}.footer p{color:var(--ink-soft);font-size:.85rem;margin:0}.footer a{color:var(--brown)}.footer a:hover{color:var(--orange)}.page-intro{padding:clamp(48px,6.6vw,96px) var(--pad) clamp(28px,3.5vw,48px);text-align:center}.page-intro__inner{margin:0 auto;max-width:760px}.page-intro__title{font-family:var(--serif);font-size:clamp(2.4rem,5vw,4rem);letter-spacing:-.015em;margin:0 0 .4em}.page-intro__lede{color:var(--ink-soft);font-size:1.08rem;margin:0 auto;max-width:56ch}.portfolio{padding:clamp(24px,3vw,40px) var(--pad) clamp(48px,6.6vw,96px)}.portfolio__grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0 auto;max-width:var(--max);padding:0}@media (max-width:900px){.portfolio__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.portfolio__grid{grid-template-columns:1fr}}.tile,.tile__link{display:flex}.tile__link{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 1px 2px rgba(61,38,31,.04),0 4px 14px rgba(61,38,31,.04);color:inherit;flex-direction:column;overflow:hidden;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;width:100%}.tile__link:hover{border-color:var(--sage);box-shadow:0 14px 36px rgba(61,38,31,.1);transform:translateY(-4px)}.tile__media{aspect-ratio:1/1;background:var(--cream);overflow:hidden}.tile__media img{display:block;height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.tile__link:hover .tile__media img{transform:scale(1.02)}.tile__meta{padding:22px 24px 26px}.tile__title{color:var(--ink);font-family:var(--serif);font-size:1.6rem;font-weight:400;letter-spacing:-.015em;line-height:1.15;margin:10px 0 6px}.tile__cats{color:var(--ink-soft);font-size:.85rem;letter-spacing:.005em;margin:0}.tag{border-radius:999px;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.12em;line-height:1.4;padding:4px 10px;text-transform:uppercase}.tag--real{background:rgba(166,201,108,.25);color:var(--sage-deep)}.tag--concept{background:rgba(255,86,48,.15);color:#c93f1e}.tag--inline{margin-left:10px;transform:translateY(-1px);vertical-align:middle}.case{margin:0 auto;max-width:var(--max);padding:clamp(48px,6.6vw,96px) var(--pad);scroll-margin-top:140px}.case+.case{border-top:1px solid var(--line)}.case__head{margin:0 auto clamp(36px,4vw,56px);max-width:760px;text-align:center}.case__head h2{font-size:clamp(2rem,4vw,3rem);margin:0 0 .4em}.case__head .eyebrow{justify-content:center}.case__lede{color:var(--ink-soft);font-size:1.1rem;margin:0 auto;max-width:60ch}.case__body{display:grid;gap:clamp(24px,3vw,40px);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:clamp(40px,5vw,64px)}@media (max-width:820px){.case__body{grid-template-columns:1fr}}.case__col h3{color:var(--orange);font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.14em;margin:0 0 12px;text-transform:uppercase}.case__col p{color:var(--ink);font-size:.97rem;line-height:1.65;margin:0}.case__gallery{display:grid;gap:18px;grid-template-columns:repeat(3,1fr);margin-bottom:28px}@media (max-width:700px){.case__gallery{grid-template-columns:1fr}}.case__gallery img{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);height:auto;width:100%}.case__gallery--logos{grid-template-columns:repeat(5,1fr)}@media (max-width:900px){.case__gallery--logos{grid-template-columns:repeat(3,1fr)}}@media (max-width:560px){.case__gallery--logos{grid-template-columns:repeat(2,1fr)}}.case__gallery--logos img{aspect-ratio:1/1;background:#fff;object-fit:contain;padding:16px}.case__link{margin:28px 0 0;text-align:center}.case__link a{color:var(--brown);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.case__link a:hover{color:var(--sage-deep)}.page-cta{padding:clamp(48px,6.6vw,96px) var(--pad);text-align:center}.page-cta__inner{margin:0 auto;max-width:600px}.page-cta h2{font-size:clamp(1.8rem,3.5vw,2.6rem);margin-bottom:.4em}.page-cta p{color:var(--ink-soft);font-size:1.05rem;margin-bottom:1.6em}@media (max-width:820px){.nav{padding:14px 5vw}.nav__links{display:none;gap:18px}.nav__logo{height:64px}.form__row{grid-template-columns:1fr}.footer__inner{flex-direction:column;justify-content:center;text-align:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}