@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{--dark:#171b1b;--paper:#f1eee7;--muted:#bcbcb6;--orange:#ff6b3d;--line:rgba(255,255,255,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--dark);font:400 1rem/1.6 "DM Sans",Arial,sans-serif}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}::selection{background:var(--orange);color:var(--dark)}.skip{position:absolute;z-index:100;top:-5rem;left:1rem;background:#fff;padding:.6rem}.skip:focus{top:1rem}.header{height:88px;background:var(--dark);color:var(--paper);display:flex;align-items:center;gap:4vw;padding:0 4%;border-bottom:1px solid var(--line)}.signature{display:flex;align-items:center;gap:12px;line-height:1}.footer-logo span{color:var(--orange)}.header nav{display:flex;gap:2.6rem;margin-left:auto;font-size:.9rem}.header nav a,.nav-contact{transition:color .2s}.header nav a:hover,.nav-contact:hover{color:var(--orange)}.nav-contact{margin-left:2vw;border:1px solid rgba(255,255,255,.45);border-radius:100px;padding:.65rem 1rem;font-weight:600;font-size:.85rem;white-space:nowrap}.nav-contact span{color:var(--orange);margin-left:.7rem}.hero{background:var(--dark);color:var(--paper);min-height:calc(100svh - 88px);overflow:hidden;padding:2rem 4% 0;display:flex;flex-direction:column;position:relative}.hero:after{content:"";position:absolute;width:62vw;height:62vw;right:-29vw;top:3vh;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}.hero-top{display:flex;justify-content:space-between;text-transform:uppercase;font-size:.67rem;letter-spacing:.16em;font-weight:700;line-height:1.5}.hero-top span:last-child{text-align:right}.hero-main{position:relative;padding:clamp(2rem,5vw,6rem) 0 2rem}.hero h1,.intro h2,.work h2,.about h2,.contact h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-.075em;font-weight:800;line-height:1.01;margin:0}.hero h1{font-size:clamp(4rem,10vw,11rem);max-width:1000px;position:relative;z-index:1}.hero h1 em,.work h2 em,.about h2 em,.contact h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}.hero h1 em{color:var(--orange)}.hero-stamp{position:absolute;right:4%;bottom:7%;width:142px;height:142px;border-radius:50%;background:var(--orange);color:var(--dark);transform:rotate(12deg);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;font-size:.61rem;line-height:1.25;font-weight:800;letter-spacing:.09em}.hero-stamp b{font-size:3rem;line-height:1}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-top:auto;padding:1.5rem 0 2rem}.hero-bottom p{max-width:570px;margin:0;font-size:clamp(1.05rem,1.6vw,1.45rem);line-height:1.55}.circle-link{height:107px;width:107px;flex:none;border:1px solid var(--paper);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:.35rem;line-height:1.2;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;transition:background .2s,color .2s,transform .2s}.circle-link b{font-size:1.2rem;font-weight:400}.circle-link:hover{background:var(--paper);color:var(--dark);transform:rotate(-10deg)}.section-pad{padding:7rem 4%}.section-kicker{border-top:1px solid currentColor;display:flex;align-items:center;gap:.7rem;padding-top:1rem;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:800}.section-kicker>span:last-child{margin-left:auto}.kicker-dot{height:8px;width:8px;background:var(--orange);border-radius:50%}.intro-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:5%;padding:5rem 0}.intro h2{font-size:clamp(2.7rem,5.6vw,6.5rem)}.intro h2 i{font-family:Georgia,serif;color:#df613d;font-weight:400}.intro-copy{max-width:470px;align-self:end;font-size:1.18rem;line-height:1.7}.intro-copy p:last-child{font-size:1rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #a9a8a1}.service-grid article{padding:2.5rem 2rem 0 0}.service-grid article+article{border-left:1px solid #a9a8a1;padding-left:2rem}.service-grid span{font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.service-grid h3{font:800 clamp(1.3rem,2vw,2rem)/1.12 Manrope,sans-serif;letter-spacing:-.055em;margin:2.5rem 0 .75rem}.service-grid p{max-width:340px;line-height:1.65;margin:0;color:#505453}.work{background:#dedbd3}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:4rem;padding:4.5rem 0 3rem}.work h2{font-size:clamp(3rem,6vw,7rem)}.work h2 em{color:#d65b38}.work-heading p{max-width:350px;font-size:1.07rem;margin:0 0 .6rem}.work-footnote{font-size:.82rem;text-align:right;margin:1.2rem 0 0}.about{background:var(--dark);color:var(--paper)}.about-grid{display:grid;grid-template-columns:1.2fr .65fr;gap:8%;padding:5rem 0 1rem}.about-year{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--orange);margin:0 0 2.4rem;font-weight:700}.about-year span{color:var(--paper)}.about h2{font-size:clamp(3.5rem,6.5vw,8rem)}.about h2 em{color:var(--orange)}.about-copy{font-size:1.08rem;line-height:1.75;align-self:end}.about-copy p{margin:0 0 1.3rem}.text-link{border-bottom:1px solid var(--orange);padding:.2rem 0 .65rem;display:inline-flex;justify-content:space-between;gap:5rem;font-weight:700;margin-top:2rem}.text-link span{color:var(--orange)}.contact{background:var(--orange)}.contact h2{font-size:clamp(4.5rem,10vw,12rem);margin:4rem 0 5rem}.contact h2 em{color:var(--paper)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:4rem}.contact-bottom p{font-size:1.15rem;line-height:1.55;max-width:470px;margin:0}.contact-button{background:var(--dark);color:var(--paper);padding:1.2rem 1.5rem;border-radius:100px;min-width:230px;display:flex;justify-content:space-between;font-size:.9rem;font-weight:700;transition:transform .2s}.contact-button:hover{transform:translateY(-4px)}footer{background:var(--dark);color:var(--paper);display:flex;align-items:center;gap:3rem;padding:2.4rem 4%;font-size:.75rem}footer .footer-logo{font:800 2rem/1 Manrope,sans-serif;letter-spacing:-.13em;margin-right:auto}footer a:last-child{text-decoration:underline;text-underline-offset:.3em}dialog{border:0;padding:0;max-width:min(850px,calc(100vw - 28px));width:100%;max-height:min(90vh,900px);background:var(--paper);color:var(--dark);box-shadow:0 30px 90px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(8,12,12,.82);backdrop-filter:blur(6px)}dialog h2{font:800 clamp(2.8rem,6vw,5.5rem)/1.02 Manrope,sans-serif;letter-spacing:-.075em;max-width:650px;margin:0 0 1.5rem}@media(max-width:950px){.header{height:75px}.header nav{gap:1.1rem}.nav-contact{margin-left:0}.hero-stamp{width:100px;height:100px;right:0;bottom:12%}.hero h1{font-size:clamp(4rem,10vw,8rem)}}@media(max-width:700px){.header{padding:0 5%;height:70px}.header nav{display:none}.nav-contact{margin-left:auto;padding:.55rem .8rem;font-size:.73rem}.hero{padding:1.5rem 5% 0;min-height:min(840px,calc(100svh - 70px))}.hero-top{font-size:.58rem}.hero-top span:last-child{max-width:115px}.hero-main{padding:5rem 0 1rem}.hero h1{font-size:clamp(3.25rem,11vw,5.5rem)}.hero-stamp{width:77px;height:77px;font-size:.42rem;right:2%;bottom:-65px}.hero-stamp b{font-size:1.5rem}.hero-bottom{margin-top:auto;align-items:end;gap:1.2rem;padding:3rem 0 1.5rem}.hero-bottom p{font-size:1rem}.circle-link{height:69px;width:69px;font-size:.56rem;gap:0}.circle-link b{display:none}.section-pad{padding:5rem 5%}.intro-grid,.about-grid{display:block;padding:3.5rem 0}.intro h2{font-size:clamp(2.7rem,8vw,5rem)}.intro-copy{margin-top:3rem;font-size:1.03rem}.service-grid{display:block}.service-grid article,.service-grid article+article{padding:1.8rem 0;border-left:0;border-bottom:1px solid #a9a8a1}.service-grid h3{margin:1rem 0 .4rem}.work-heading{display:block;padding:3rem 0 2rem}.work-heading p{margin-top:1.5rem}.about-copy{margin-top:3rem}.contact h2{font-size:clamp(4.2rem,12vw,7rem);margin:3.5rem 0}.contact-bottom{display:block}.contact-button{margin-top:2rem}footer{padding:2rem 5%;gap:1rem;flex-wrap:wrap}footer .footer-logo{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
html{scroll-padding-top:85px}.header{position:sticky;top:0;z-index:50;transition:height .2s,box-shadow .2s}.header.is-scrolled{height:70px;box-shadow:0 12px 30px #0003}.back-top{position:fixed;z-index:45;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:var(--dark);font:700 1.6rem Manrope,sans-serif;box-shadow:0 10px 28px #0004;opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .25s,transform .25s}.back-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.breadcrumb{padding:1.2rem 4%;display:flex;flex-wrap:wrap;gap:.7rem;font-size:.8rem;color:#60635e}.breadcrumb a:hover{text-decoration:underline}.inside-intro{padding:5rem 4% 5.5rem;background:var(--dark);color:var(--paper)}.inside-intro .section-kicker{border-color:#fff3}.inside-intro h1{font:800 clamp(4rem,8vw,9rem)/1 Manrope,sans-serif;letter-spacing:-.075em;margin:3rem 0 2.5rem}.inside-intro h1 em{font-family:Georgia,serif;font-weight:400;color:var(--orange)}.inside-intro>p{font-size:clamp(1.05rem,1.8vw,1.45rem);line-height:1.55;max-width:650px;margin:0}.inside-grid{padding:4rem 4% 7rem;background:#dedbd3}.visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.visual-card{min-width:0;background:var(--card);display:flex;flex-direction:column;overflow:hidden;transition:transform .3s,box-shadow .3s}.visual-card:hover{transform:translateY(-6px);box-shadow:0 22px 34px #0002}.visual-card-image{height:clamp(240px,31vw,430px);overflow:hidden;background:#292c2a}.visual-card-image img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform .7s}.visual-card:hover .visual-card-image img{transform:scale(1.045)}.visual-card-content{padding:1.5rem 1.75rem 2rem;min-height:190px}.visual-card-content span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.visual-card-content h3{font:800 clamp(1.65rem,2.9vw,3rem)/1.03 Manrope,sans-serif;letter-spacing:-.065em;margin:.55rem 0 .7rem;display:flex;justify-content:space-between;gap:1rem}.visual-card-content h3 b{font-size:1.5rem;font-weight:400}.visual-card-content p{font-size:.95rem;line-height:1.5;max-width:480px;margin:0}.home-grid .visual-card:first-child{grid-column:span 2;display:grid;grid-template-columns:1.15fr .85fr}.home-grid .visual-card:first-child .visual-card-image{height:470px}.home-grid .visual-card:first-child .visual-card-content{display:flex;flex-direction:column;justify-content:end;padding:2.5rem}.home-grid .visual-card:first-child h3{font-size:clamp(3rem,5vw,6rem)}.all-work{display:flex;justify-content:space-between;border-top:1px solid #8e8d86;padding:1.2rem 0;margin-top:2rem;font-weight:700;font-size:1.1rem}.all-work span{font-size:1.6rem}.detail{padding:2.5rem 4% 7rem}.detail-header{display:flex;justify-content:space-between;gap:2rem;margin:2rem 0 3.5rem}.detail-header>div{width:min(850px,100%)}.detail-header h1{font:800 clamp(3.5rem,8vw,9rem)/1 Manrope,sans-serif;letter-spacing:-.075em;margin:3rem 0 1.5rem;overflow-wrap:anywhere}.detail-header p{max-width:720px;font-size:clamp(1.15rem,2.2vw,1.9rem);line-height:1.45;margin:0}.detail-figure{margin:0 0 4rem;background:#dbd8d0}.detail-figure img{width:100%;height:auto;display:block}.detail-figure figcaption{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;padding:.75rem 1rem}.detail-secondary{width:min(760px,100%);margin:1rem auto 3rem}.detail-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:3rem 0 5rem;border-top:1px solid #a6a69e}.detail-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#ad4b2c}.detail-story h2{font:800 clamp(2rem,3vw,3.6rem)/1.06 Manrope,sans-serif;letter-spacing:-.06em;margin:1.5rem 0}.detail-story p{max-width:510px;font-size:1.08rem;line-height:1.7}.outbound{display:flex;justify-content:space-between;border-top:1px solid #898b85;border-bottom:1px solid #898b85;padding:1.3rem 0;font-weight:700}.end-cta{padding:5.5rem 4%;background:var(--orange)}.end-cta>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.end-cta h2{font:800 clamp(2.8rem,5vw,6rem)/1 Manrope,sans-serif;letter-spacing:-.065em;margin:1.5rem 0 2.5rem}.end-cta em{font-family:Georgia,serif;font-weight:400;color:var(--paper)}.end-cta a{display:inline-flex;gap:3rem;background:var(--dark);color:var(--paper);padding:1rem 1.4rem;border-radius:50px;font-weight:700}.bio-grid{padding:6rem 4%;display:grid;grid-template-columns:1fr 1fr;gap:8%}.bio-grid h2{font:800 clamp(2rem,4vw,4rem)/1.05 Manrope,sans-serif;letter-spacing:-.06em;margin:0 0 2rem}.bio-grid p{font-size:1.1rem;line-height:1.75}.contact-page{min-height:70vh}.email-link{display:flex;justify-content:space-between;gap:1rem;max-width:850px;border-bottom:1px solid var(--orange);padding:1rem 0;margin:3rem 0;font:700 clamp(1.3rem,3vw,3rem)/1.2 Manrope,sans-serif;overflow-wrap:anywhere}.email-link span{color:var(--orange)}.contact-page .contact-local{font-size:.95rem;color:#c6c7c1}@media(max-width:700px){.header.is-scrolled{height:64px}.breadcrumb{padding:1rem 5%}.inside-intro{padding:3.5rem 5% 4rem}.inside-intro h1{font-size:clamp(3.5rem,11vw,6rem)}.inside-grid{padding:2rem 5% 5rem}.visual-grid{grid-template-columns:1fr}.home-grid .visual-card:first-child{grid-column:auto;display:flex}.home-grid .visual-card:first-child .visual-card-image,.visual-card-image{height:260px}.home-grid .visual-card:first-child .visual-card-content{padding:1.5rem}.home-grid .visual-card:first-child h3{font-size:2.3rem}.visual-card-content{min-height:auto}.detail{padding:2rem 5% 5rem}.detail-header{margin:1rem 0 2rem}.detail-header h1{font-size:clamp(3.2rem,11vw,6rem)}.detail-story{grid-template-columns:1fr;gap:2rem}.detail-figure{margin-bottom:3rem}.bio-grid{padding:4rem 5%;display:block}.end-cta{padding:4rem 5%}.back-top{right:16px;bottom:16px;width:46px;height:46px}}@media(prefers-reduced-motion:reduce){.visual-card:hover,.visual-card:hover img{transform:none}}
.menu-toggle{display:none}.hero-stamp{transform:rotate(12deg) translateY(var(--parallax-shift,0px))}.detail-figure img{transform:translateY(var(--image-shift,0px)) scale(1.025)}@media(max-width:700px){.menu-toggle{display:block;margin-left:auto;background:transparent;color:var(--paper);border:1px solid #fff7;border-radius:100px;padding:.48rem .85rem;font-size:.8rem}.header .nav-contact{margin-left:0}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--dark);padding:1.5rem 5%;border-top:1px solid #fff4;box-shadow:0 12px 30px #0003;flex-direction:column;gap:1rem;font-size:1.05rem}.header.menu-open nav{display:flex}}@media(prefers-reduced-motion:reduce){.hero-stamp,.detail-figure img{transform:none}}
.hero h1{font-size:clamp(3.45rem,7.1vw,7.5rem);line-height:1.055}.intro h2{font-size:clamp(2.45rem,4.3vw,5rem)}.work h2,.about h2{font-size:clamp(2.9rem,5vw,5.6rem)}.contact h2{font-size:clamp(3.3rem,7.1vw,8rem)}.inside-intro h1{font-size:clamp(3.3rem,6.5vw,6.6rem);line-height:1.06}.detail-header h1{font-size:clamp(3rem,6vw,6rem);line-height:1.07}.detail-header p{font-size:clamp(1.1rem,1.7vw,1.45rem)}.detail-story h2{font-size:clamp(1.8rem,2.3vw,2.7rem)}.visual-card-image{height:clamp(190px,20vw,280px)}.home-grid .visual-card:first-child .visual-card-image{height:360px}.visual-card-content{min-height:155px;padding:1.25rem 1.5rem 1.5rem}.visual-card-content h3{font-size:clamp(1.5rem,2.3vw,2.45rem)}.home-grid .visual-card:first-child h3{font-size:clamp(2.4rem,3.4vw,4rem)}.detail-figure{max-width:900px;margin:0 auto 4rem;overflow:hidden}.detail-figure img{max-height:500px;object-fit:contain}.detail-secondary{max-width:680px}.detail-secondary img{max-height:420px}.detail{padding-top:1rem}.detail-header{margin:1rem 0 2.5rem}.hero-stamp{right:2%;bottom:4%}.back-top{border:0;cursor:pointer}.intro-copy{align-self:start}.portrait-about{margin:0;max-width:520px}.portrait-about img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.portrait-about figcaption{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin-top:.75rem}.service-more{display:flex;justify-content:space-between;width:min(370px,100%);margin-top:3rem;border-bottom:1px solid;padding-bottom:.7rem;font-weight:700}.service-more span{color:var(--orange)}
.project-scope{display:grid;grid-template-columns:1fr 1.3fr;gap:5%;border-top:1px solid #a8a8a0;padding:3rem 0;margin:1rem 0 0}.project-scope h2{font:800 clamp(1.9rem,2.8vw,3.1rem)/1.1 Manrope,sans-serif;letter-spacing:-.06em;margin:1.1rem 0}.project-scope ul{margin:0;padding:0;list-style:none}.project-scope li{position:relative;padding:1rem .5rem 1rem 1.7rem;border-bottom:1px solid #c4c3bb;font-size:1.05rem;line-height:1.5}.project-scope li:before{content:"↗";position:absolute;left:0;color:#c45c39}.project-insight{background:#ddd8cc;padding:2.4rem 3rem;margin:0 0 4rem}.project-insight p{max-width:850px;font:500 clamp(1.18rem,1.7vw,1.55rem)/1.55 "DM Sans",sans-serif}.project-insight a{display:inline-flex;gap:2rem;align-items:center;border-bottom:1px solid;padding-bottom:.35rem;font-weight:700}.project-insight a span{color:#c45c39}.service-intro h1{max-width:950px}.service-tiles{padding:4rem 4% 6rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.service-tile{background:#e1ddd4;min-height:270px;padding:2rem;position:relative;transition:background .2s,transform .2s}.service-tile:hover{background:#d4d0c6;transform:translateY(-4px)}.service-tile>span{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.service-tile h2{font:800 clamp(1.8rem,2.6vw,3.1rem)/1.05 Manrope,sans-serif;letter-spacing:-.06em;max-width:480px;margin:2.7rem 0 .8rem}.service-tile p{max-width:430px;font-size:1rem;line-height:1.5}.service-tile>b{position:absolute;right:2rem;top:1.7rem;font-size:1.5rem;font-weight:400}.service-article{padding:4rem 4% 6rem}.service-lead{display:grid;grid-template-columns:.6fr 1.4fr 1.2fr;gap:3%;padding-bottom:4rem;border-bottom:1px solid #aba9a2}.service-lead h2,.service-process h2,.service-related h2{font:800 clamp(1.9rem,3vw,3.3rem)/1.1 Manrope,sans-serif;letter-spacing:-.06em;margin:0}.service-lead p{font-size:1.07rem;line-height:1.7;margin:0}.service-process{padding:4rem 0}.service-process h2{margin-bottom:2rem}.service-process article{display:grid;grid-template-columns:4rem 1fr;border-top:1px solid #bab8b0;padding:1.4rem 0;gap:2rem;max-width:1050px}.service-process article>span{color:#b55332;font-weight:700}.service-process h3{font:800 1.5rem/1.15 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 .5rem}.service-process p{margin:0;font-size:1.03rem;line-height:1.6;max-width:680px}.service-note{background:#d8d4c8;padding:2rem 2.5rem;margin-bottom:4rem}.service-note p{font-size:1.2rem;line-height:1.55;max-width:900px;margin:0}.service-related{padding:2rem 0 3rem}.service-related>div{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 2rem;margin-top:2rem}.service-related a{display:flex;justify-content:space-between;padding:1rem 0;border-top:1px solid #a8a8a0;font-weight:700}.service-related a span{color:#c45c39}
@media(max-width:1050px){.header .menu-toggle{display:block;margin-left:auto;background:transparent;color:var(--paper);border:1px solid #fff7;border-radius:100px;padding:.48rem .85rem;font-size:.8rem}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--dark);padding:1.5rem 5%;border-top:1px solid #fff4;box-shadow:0 12px 30px #0003;flex-direction:column;gap:1rem;font-size:1.05rem}.header.menu-open nav{display:flex}.header .nav-contact{margin-left:0}}
@media(max-width:700px){.hero h1{font-size:clamp(3.1rem,10vw,4.7rem)}.hero-main{padding:4rem 0 1rem}.hero-stamp{right:0;bottom:-4rem}.intro h2{font-size:clamp(2.3rem,7.3vw,4rem)}.work h2,.about h2{font-size:clamp(2.8rem,8vw,4.8rem)}.contact h2{font-size:clamp(3rem,10vw,5.3rem)}.inside-intro h1{font-size:clamp(2.9rem,9vw,5rem)}.detail-header h1{font-size:clamp(2.8rem,9vw,5rem)}.visual-card-image,.home-grid .visual-card:first-child .visual-card-image{height:220px}.visual-card-content{min-height:auto}.detail-figure img{max-height:320px}.project-scope{display:block;padding:2rem 0}.project-scope ul{margin-top:1.5rem}.project-insight{padding:1.7rem}.service-tiles{grid-template-columns:1fr;padding:2rem 5% 4rem}.service-tile{min-height:230px}.service-article{padding:3rem 5% 5rem}.service-lead{display:block;padding-bottom:2rem}.service-lead h2{margin:1rem 0}.service-process{padding:3rem 0}.service-related>div{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.visual-card:hover{transform:none}}
@view-transition{navigation:auto}
::view-transition-old(root){animation:.18s ease-in both page-out}
::view-transition-new(root){animation:.33s ease-out both page-in}
@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes page-in{from{opacity:0;transform:translateY(12px)}}
body{overflow-x:hidden}.scroll-progress{position:fixed;left:0;top:0;width:100%;height:4px;background:var(--orange);z-index:100;transform:scaleX(0);transform-origin:left;pointer-events:none;box-shadow:0 0 13px #ff6b3d70}.header{border-bottom:1px solid #ffffff25}.header .nav-contact{transition:background .25s,color .25s,transform .25s}.header .nav-contact:hover{background:var(--orange);color:var(--dark);transform:translateY(-2px)}.header .nav-contact:hover span{color:var(--dark)}
.hero{background:#141818;position:relative;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 28%,#ffffff0d,transparent 33%),repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#ffffff09 25%);pointer-events:none}.hero:after{width:55vw;height:55vw;right:-21vw;top:-18vw;border-color:#ff6b3d3b;transform:rotate(-15deg)}.hero-main{min-height:62vh;display:flex;flex-direction:column;justify-content:center;padding:2rem 0 3rem}.hero h1{font-size:clamp(3.45rem,6.25vw,7rem);max-width:70%;letter-spacing:-.07em;line-height:1.09}.hero h1 em{display:inline-block;transform-origin:left center}.hero-portrait{position:absolute;right:3.5%;top:12%;width:clamp(220px,26vw,380px);height:min(46vw,520px);min-height:380px;margin:0;z-index:0;transform:rotate(4deg) translateY(var(--portrait-shift,0px));background:var(--orange);padding:11px 11px 0;box-shadow:20px 20px 0 #ffffff10;clip-path:polygon(0 0,100% 0,100% 93%,89% 100%,0 100%)}.hero-portrait img{display:block;width:100%;height:calc(100% - 68px);object-fit:cover;object-position:center 22%;filter:grayscale(.55) contrast(1.05)}.hero-portrait figcaption{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#141818;height:68px;text-transform:uppercase;font-weight:800;letter-spacing:.06em;font-size:.73rem;line-height:1.18}.hero-portrait figcaption span{text-align:right;font-size:.59rem}.hero-stamp{z-index:3;right:31%;bottom:4%;width:118px;height:118px;box-shadow:0 8px 30px #0005}.hero-bottom{position:relative;z-index:3}.hero-bottom p{max-width:630px}.hero .circle-link{background:var(--paper);color:var(--dark);border:0}.hero .circle-link:hover{background:var(--orange);transform:rotate(-12deg) scale(1.07)}
@keyframes runline{to{transform:translateX(-50%)}}
.intro{position:relative;padding-top:9rem}.intro:before{content:"STUDIO / SAMUEL";position:absolute;right:4%;top:5.5rem;font-size:.7rem;letter-spacing:.26em;font-weight:800;writing-mode:vertical-rl;color:#7a7e77}.intro-grid{grid-template-columns:1.15fr .85fr;gap:7%;align-items:start}.intro h2{font-size:clamp(2.8rem,4.55vw,5.3rem);max-width:750px}.intro h2 i{display:inline-block;transform:rotate(-4deg);color:#db5b37}.service-grid{position:relative}.service-grid article{transition:transform .3s}.service-grid article:hover{transform:translateY(-7px)}.service-grid article span{display:inline-block;background:#1c2121;color:var(--paper);padding:.35rem .65rem}.service-grid article:nth-child(2) span{background:var(--orange);color:var(--dark)}.service-more{margin-left:auto}.service-more:hover{color:#d35935}
.work{background:#e7e4dd;position:relative;overflow:hidden}.work:before{content:"SELECTED / WORK";position:absolute;right:-1rem;top:5rem;font:800 clamp(4rem,12vw,13rem)/1 Manrope,sans-serif;letter-spacing:-.1em;white-space:nowrap;color:#181b1b0c;pointer-events:none}.work-heading{position:relative;z-index:1}.work-heading h2{font-size:clamp(3rem,5vw,5.7rem)}.visual-grid{align-items:start;gap:3.4rem 3.2rem}.visual-card{background:transparent;box-shadow:none;overflow:visible;position:relative;transform:none}.visual-card:hover{transform:none;box-shadow:none}.visual-card-image{height:clamp(220px,24vw,320px);position:relative;overflow:hidden;background:#cfcbc2;clip-path:polygon(0 0,100% 0,100% 91%,91% 100%,0 100%)}.visual-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,#ff6b3d00 55%,#15181860);opacity:0;transition:opacity .4s;pointer-events:none}.visual-card:hover .visual-card-image:after{opacity:1}.visual-card-image img{transform:translate3d(0,var(--image-float,0px),0) scale(1.035)}.visual-card:hover .visual-card-image img{transform:translate3d(0,var(--image-float,0px),0) scale(1.09)}.visual-card-content{background:var(--card);margin:-2.2rem 1.2rem 0 0;position:relative;z-index:2;border-left:5px solid #171b1b;padding:1.2rem 1.4rem 1.45rem;min-height:155px;box-shadow:10px 12px 0 #171b1b15;transition:transform .35s}.visual-card:hover .visual-card-content{transform:translate(8px,-6px)}.visual-card-content h3{font-size:clamp(1.75rem,2.3vw,2.7rem)}.home-grid{grid-template-columns:1.08fr .92fr;gap:2rem 4vw}.home-grid .visual-card:first-child{grid-column:auto;display:flex}.home-grid .visual-card:first-child .visual-card-image{height:clamp(280px,31vw,420px)}.home-grid .visual-card:first-child .visual-card-content{display:block;padding:1.4rem 1.5rem;min-height:0}.home-grid .visual-card:first-child h3{font-size:clamp(2.2rem,3.1vw,3.6rem)}.home-grid .visual-card:nth-child(2){margin-top:8rem}.home-grid .visual-card:nth-child(3){margin-top:-4rem}.home-grid .visual-card:nth-child(4){margin-top:4rem}.inside-grid .visual-card:nth-child(4n/**/+2){margin-top:4rem}.inside-grid .visual-card:nth-child(4n/**/+3){margin-top:-1.5rem}.all-work{max-width:490px;margin-left:auto}.all-work:hover{color:#d25431}
.about{position:relative;clip-path:polygon(0 0,100% 2.5rem,100% 100%,0 100%);margin-top:-2.5rem;padding-top:10rem}.about:after{content:"17+";position:absolute;bottom:-.13em;left:-.06em;font:800 clamp(12rem,28vw,32rem)/1 Manrope,sans-serif;letter-spacing:-.15em;color:#ffffff08;pointer-events:none}.about-grid{position:relative;z-index:1}.about h2{font-size:clamp(3rem,5vw,6rem)}.about-year{border-left:3px solid var(--orange);padding-left:1rem}.contact{position:relative;overflow:hidden}.contact:after{content:"↗";position:absolute;right:0;top:-.4em;font:400 clamp(20rem,35vw,40rem)/1 Georgia,serif;color:#171b1b14;pointer-events:none}.contact h2,.contact-bottom{position:relative;z-index:1}.contact h2{font-size:clamp(3.7rem,7vw,8.5rem)}.contact-button:hover{transform:translate(5px,-5px);box-shadow:-5px 5px 0 var(--paper)}
.service-tiles{gap:2rem}.service-tile{overflow:hidden;isolation:isolate;transition:transform .35s,background .35s}.service-tile:before{content:attr(data-index);position:absolute;right:-.05em;bottom:-.32em;font:800 14rem/1 Manrope,sans-serif;letter-spacing:-.13em;color:#171b1b0a;z-index:-1}.service-tile:nth-child(3n/**/+2){background:#dfbb9c}.service-tile:nth-child(3n/**/+3){background:#bfcac3}.service-tile:hover{transform:translateY(-9px) rotate(-1deg);background:var(--orange)}.service-tile h2{max-width:380px}.inside-intro{position:relative;overflow:hidden}.inside-intro:after{content:"S / T";position:absolute;right:-.08em;bottom:-.35em;font:800 clamp(12rem,32vw,35rem)/1 Manrope,sans-serif;letter-spacing:-.13em;color:#ffffff09;pointer-events:none}.inside-intro h1,.inside-intro>p,.inside-intro .section-kicker{position:relative;z-index:1}.inside-intro h1{font-size:clamp(3.3rem,6vw,6.2rem)}.detail-figure{transform:rotate(-.5deg);box-shadow:16px 16px 0 #1a1e1e16}.detail-figure img{transform:translateY(var(--image-shift,0px)) scale(1.025)}.portrait-about{transform:rotate(-2deg);box-shadow:16px 16px 0 var(--orange)}.project-scope li:hover{background:#e4dfd5}.end-cta{position:relative;isolation:isolate}.end-cta:before{content:"✳";position:absolute;right:3%;top:-.55em;font-size:clamp(14rem,27vw,32rem);color:#171b1b10;z-index:-1;transform:rotate(var(--asterisk-angle,0deg))}
.has-motion .reveal{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.has-motion .reveal.is-inview{opacity:1;transform:translateY(0)}.has-motion .visual-card.reveal:nth-child(even){transition-delay:.12s}.has-motion .hero h1{animation:hero-enter .9s both cubic-bezier(.2,.8,.2,1)}.has-motion .hero-portrait{animation:portrait-enter 1.1s .15s both cubic-bezier(.2,.8,.2,1)}@keyframes hero-enter{from{opacity:0;transform:translateY(35px)}}@keyframes portrait-enter{from{opacity:0;transform:rotate(12deg) translateY(45px)}to{opacity:1;transform:rotate(4deg) translateY(0)}}
@media(max-width:1050px){.hero h1{max-width:68%;font-size:clamp(3.2rem,7vw,6rem)}.hero-portrait{width:29vw;min-height:330px}.hero-stamp{right:27%}}
@media(max-width:700px){.hero-main{min-height:auto;padding:3rem 0 1rem}.hero h1{font-size:clamp(3rem,10vw,4.8rem);max-width:none}.hero-portrait{position:relative;right:auto;top:auto;width:min(75%,310px);height:360px;min-height:0;margin:2rem 0 0 auto;transform:rotate(3deg) translateY(var(--portrait-shift,0px))}.hero-stamp{right:auto;left:0;bottom:7rem;width:84px;height:84px}.hero-bottom{padding-top:2rem}.hero-bottom p{font-size:.95rem}.intro{padding-top:6rem}.intro:before{display:none}.intro-grid{display:block}.intro h2{font-size:clamp(2.6rem,8vw,4.5rem)}.visual-grid,.home-grid{grid-template-columns:1fr;gap:2.2rem}.home-grid .visual-card:nth-child(n),.inside-grid .visual-card:nth-child(n){margin-top:0}.home-grid .visual-card:first-child .visual-card-image,.visual-card-image{height:245px}.visual-card-content{margin-top:-1.3rem}.about{clip-path:none;margin-top:0;padding-top:5rem}.contact:after{right:-.35em;top:.5em}.service-tiles{gap:1rem}.inside-intro:after{opacity:.55}.detail-figure{transform:none;box-shadow:8px 8px 0 #1a1e1e16}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.has-motion .reveal{opacity:1;transform:none}.hero-portrait{transform:none!important}}
.visual-card-image img{transform:translate3d(var(--image-pan,0px),var(--image-float,0px),0) scale(1.035)}.visual-card:hover .visual-card-image img{transform:translate3d(var(--image-pan,0px),var(--image-float,0px),0) scale(1.09)}@keyframes portrait-enter{from{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur(0)}}
.hero-portrait{z-index:2}.has-motion .hero-portrait{animation:none}
.header{position:sticky;top:0;z-index:90}.header nav{align-items:center}.nav-group{position:relative;display:flex;align-items:center;gap:.2rem}.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;color:var(--paper);border:0;background:transparent;cursor:pointer;transition:transform .25s}.nav-group.is-open .submenu-toggle,.nav-group:hover .submenu-toggle{transform:rotate(180deg)}.submenu{position:absolute;top:calc(100% + 24px);left:-1.5rem;width:min(440px,90vw);padding:1.3rem;background:#242b29;color:#f1eee7;border:1px solid #ffffff30;box-shadow:0 22px 44px #0004;display:grid;grid-template-columns:1fr 1fr;gap:.2rem .8rem;opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;transition:opacity .2s,transform .2s,visibility .2s}.submenu:before{content:"";position:absolute;inset:-26px 0 auto;height:26px}.submenu a{padding:.6rem .5rem;border-bottom:1px solid #ffffff1e;font-size:.78rem;line-height:1.3}.submenu a:hover,.submenu a:focus-visible{background:#ff6b3d;color:#181c1c}.nav-group:hover .submenu,.nav-group:focus-within .submenu,.nav-group.is-open .submenu{opacity:1;visibility:visible;transform:none;pointer-events:auto}.header .nav-contact{white-space:normal;text-align:center}

.hero{background:#1a2221}.hero:before{background:radial-gradient(circle at 77% 42%,#6c826526,transparent 36%)}.hero:after{display:none}.hero-main{min-height:57vh}.hero h1{font-family:"DM Sans",Arial,sans-serif;font-weight:700;letter-spacing:-.058em;max-width:64%;font-size:clamp(3.2rem,5.8vw,6.4rem);line-height:1.1}.hero h1 em{letter-spacing:-.05em}.hero-art{position:absolute;right:2.2%;top:6%;width:min(43%,580px);height:90%;z-index:1;pointer-events:none;display:grid;place-items:center;transform:translateY(var(--art-shift,0px))}.hero-art svg{width:100%;max-height:100%;filter:drop-shadow(0 26px 30px #070d0d4d);overflow:visible}@keyframes art-float{50%{transform:translateY(-12px) rotate(2deg)}}.hero-bottom{padding-bottom:2.4rem}.hero-bottom p{max-width:560px}.hero .circle-link{position:relative;z-index:4}

.intro h2,.work-heading h2,.about h2,.contact h2,.inside-intro h1,.detail-header h1{font-family:"DM Sans",Arial,sans-serif;letter-spacing:-.05em;font-weight:700}.intro h2,.work-heading h2,.about h2{font-size:clamp(2.4rem,4vw,4.8rem)}.contact h2{font-size:clamp(3.2rem,5.8vw,6.7rem)}.intro:before,.work:before,.about:after,.inside-intro:after{display:none}.service-grid article{position:relative}.service-grid .line-icon{width:36px;height:36px;display:block;margin-bottom:1.8rem;stroke:#d65c38}.service-grid article h3{margin-top:1.1rem}.service-grid article:nth-child(2) .line-icon{stroke:#226753}.service-grid article:nth-child(3) .line-icon{stroke:#555d9b}

.work{background:#eae9e3}.visual-grid,.home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem 1.4rem;align-items:stretch}.visual-card,.home-grid .visual-card:first-child{display:flex;flex-direction:column;min-width:0;margin:0!important;background:transparent;overflow:visible;box-shadow:none}.visual-card-image,.home-grid .visual-card:first-child .visual-card-image{width:100%;height:clamp(180px,19vw,285px);display:flex;align-items:center;justify-content:center;background:#f6f4ee;clip-path:none;overflow:hidden;border-radius:3px;padding:1rem}.visual-card-image:after{display:none}.visual-card-image img,.visual-card:hover .visual-card-image img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;filter:none;transition:transform .45s ease}.visual-card:hover .visual-card-image img{transform:scale(1.025)}.visual-card-content,.home-grid .visual-card:first-child .visual-card-content{background:transparent;margin:0;padding:1.1rem 0 0;min-height:0;box-shadow:none;border:0;transition:none}.visual-card:hover .visual-card-content{transform:none}.visual-card-content span{color:#555e5c;font-size:.64rem}.visual-card-content h3,.home-grid .visual-card:first-child h3{font-family:"DM Sans",sans-serif;letter-spacing:-.04em;font-size:clamp(1.3rem,1.65vw,2.1rem);margin:.55rem 0 .4rem;line-height:1.13}.visual-card-content h3 b{width:31px;height:31px;display:grid;place-items:center;border:1px solid #747e79;border-radius:50%;font-size:1rem;flex:none;transition:background .25s,color .25s,transform .25s}.visual-card:hover h3 b,.visual-card:focus-visible h3 b{background:#1a2221;color:#fff;transform:rotate(45deg)}.visual-card-content p{font-size:.86rem;color:#454e4b}.visual-card{transition:transform .3s ease}.visual-card:hover{transform:translateY(-4px);box-shadow:none}.visual-card-image{transition:background .3s,box-shadow .3s}.visual-card:hover .visual-card-image,.visual-card:focus-visible .visual-card-image{background:#fff;box-shadow:0 15px 35px #26342e1c}.inside-grid{background:#eae9e3}.inside-grid .visual-card:nth-child(n){margin:0}.inside-grid .visual-grid{gap:3.5rem 1.4rem}

.inside-intro{background:var(--page-bg,#1a2221)}.inside-intro h1 em{color:var(--page-accent,#ff6b3d)}.end-cta{background:var(--page-accent,var(--orange));overflow:hidden;isolation:isolate}.end-cta:before{top:3%;right:1%;font-size:clamp(10rem,20vw,21rem);z-index:0;pointer-events:none;opacity:.45}.end-cta>span,.end-cta h2,.end-cta a{position:relative;z-index:2}.end-cta em{color:#fff}.end-cta a{transition:transform .25s,box-shadow .25s}.end-cta a:hover{transform:translateY(-3px);box-shadow:0 10px 30px #0003}.inside .end-cta em{color:#35413e}.inside-intro:after{display:none}
.service-tile{display:flex;flex-direction:column}.service-tile .line-icon{width:34px;height:34px;margin-bottom:1.5rem}.service-tile>span{order:-1}.service-tile .line-icon{order:0}.service-tile h2{margin:1rem 0 .8rem}.service-tile:nth-child(3n/**/+2){background:#d9d7cf}.service-tile:nth-child(3n/**/+3){background:#d4ddd7}.service-tile:hover{background:#e5e5db}.service-tile:before{font-size:9rem;opacity:.38;pointer-events:none}
.service-related>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem;margin-top:1.8rem}.service-related a{min-width:0;display:grid;grid-template-columns:1fr auto;align-items:start;gap:.8rem;border:0;padding:0;font-size:.94rem}.related-image{grid-column:1/-1;display:flex;align-items:center;justify-content:center;background:#eae9e3;width:100%;height:clamp(155px,16vw,230px);padding:.7rem;overflow:hidden}.related-image img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.service-related a:hover img{transform:scale(1.035)}.related-title{line-height:1.3}.related-arrow{color:#c45c39;transition:transform .2s}.service-related a:hover .related-arrow{transform:translate(3px,-3px)}
.detail-figure,.detail-secondary{transform:none;box-shadow:none;background:transparent}.detail-figure img{transform:none;max-height:560px;object-fit:contain}.detail-figure figcaption{padding:.8rem 0}.detail-figure.detail-secondary img{max-height:440px}.service-more,.all-work{position:relative;z-index:1}.contact-button{position:relative;z-index:2}
@media(max-width:1050px){.header nav{gap:1.3rem}.hero h1{max-width:66%;font-size:clamp(3.15rem,6.4vw,5.5rem)}.visual-grid,.home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art{width:42%}}
@media(max-width:700px){.header nav{align-items:stretch}.nav-group{display:block}.nav-group>a{display:inline-block}.submenu-toggle{float:right;width:44px;height:38px;border:1px solid #ffffff37}.submenu{position:static;width:100%;padding:.6rem 0 0;box-shadow:none;border:0;background:transparent;display:none;visibility:visible;opacity:1;transform:none;pointer-events:auto;grid-template-columns:1fr 1fr}.nav-group:hover .submenu{display:none}.nav-group.is-open .submenu{display:grid}.submenu:before{display:none}.submenu a{font-size:.79rem}.header nav{max-height:calc(100svh - 70px);overflow-y:auto}.hero-main{min-height:auto;padding:3rem 0 1.5rem}.hero h1{font-size:clamp(3.1rem,11vw,4.8rem);max-width:100%;position:relative;z-index:2}.hero-art{position:relative;width:min(88%,390px);height:300px;right:auto;top:auto;margin:-.2rem 0 0 auto}.hero-art svg{max-height:300px}.hero-bottom{padding:1.6rem 0 2rem}.visual-grid,.home-grid{grid-template-columns:1fr;gap:2.6rem}.visual-card-image,.home-grid .visual-card:first-child .visual-card-image{height:250px}.service-related>div{grid-template-columns:1fr 1fr;gap:1.5rem .9rem}.related-image{height:150px}.end-cta:before{font-size:12rem;top:2rem}.inside-intro h1{font-size:clamp(2.8rem,8vw,4.4rem)}}
@media(max-width:460px){.hero h1{font-size:clamp(2.7rem,10.7vw,3.8rem)}.hero-art{height:255px}.hero-art svg{max-height:255px}.service-related>div{grid-template-columns:1fr}.related-image{height:215px}.nav-contact{font-size:.66rem!important}.submenu{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hero-art{transform:none!important}}
.header{height:88px;gap:2.2vw}.header nav{gap:clamp(1rem,2vw,2.3rem);font-size:1rem;font-weight:700}.header nav>a,.nav-group>a{position:relative}.header nav>a:after,.nav-group>a:after{content:"";position:absolute;left:0;right:100%;bottom:-.33rem;height:2px;background:#ff6b3d;transition:right .28s}.header nav>a:hover:after,.nav-group:hover>a:after,.header nav>a:focus-visible:after,.nav-group>a:focus-visible:after{right:0}.signature{min-width:213px;gap:.75rem}.brand-copy{display:flex;flex-direction:column;gap:4px;line-height:1.12}.brand-copy strong{font:800 1.05rem/1.05 "DM Sans",sans-serif;letter-spacing:-.04em}.brand-copy small{font-size:.58rem;letter-spacing:.065em;color:#d2d5d1;white-space:nowrap;text-transform:uppercase}.header .nav-contact{font-size:.82rem;line-height:1.2;padding:.78rem 1.05rem}
.nav-group{position:static}.submenu{position:absolute;top:calc(100% - 1px);left:0;width:100%;padding:2.2rem max(4%,calc((100% - 1500px)/2));background:#f3f0e9;color:#1b2522;border:0;border-top:1px solid #242c2640;box-shadow:0 26px 40px #0a141145;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2.5rem;transform:translateY(-8px)}.submenu:before{display:none}.submenu a{display:flex;gap:.8rem;align-items:baseline;font-size:1.12rem;font-weight:700;padding:1rem .3rem;border-bottom:1px solid #aeb6ae;transition:color .22s,padding-left .22s;background:transparent}.submenu a i{font:500 .68rem "DM Sans",sans-serif;color:#c25837;font-style:normal}.submenu a:hover,.submenu a:focus-visible{background:transparent;color:#d95933;padding-left:.7rem}
.hero{background:#1c2421}.hero:before{background:radial-gradient(circle at 78% 45%,#35504740,transparent 40%)}.hero-top{gap:1rem}.hero-top span:last-child{text-align:right}.hero h1{font-size:clamp(3.3rem,6.25vw,7rem)}.hero-main{min-height:64vh}@keyframes draw-stroke{to{stroke-dashoffset:0}}.hero-bottom{position:relative;z-index:3}
.intro h2 i,.work h2 em,.about h2 em,.contact h2 em,.inside-intro h1 em,.end-cta h2 em,.method-inline h2 em,.bio-grid h2 em,.service-process h2 em{display:inline-block;transform:rotate(-4deg);transform-origin:left 60%;font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}.work h2 em{color:#d75c39}.about h2 em{color:#ff956e}.contact h2 em{color:#f1eee7}
.inside-intro{background:var(--page-bg,#ff6b3d);color:#1b2623;position:relative}.inside-intro .section-kicker{border-color:#1b26234a}.inside-intro h1{font-size:clamp(2.9rem,5vw,5.4rem);max-width:1100px;line-height:1.05;margin:2.7rem 0 1.9rem}.inside-intro h1 em{color:#f8f3e9;font-size:1.04em}.inside-intro>p{font-size:clamp(1.02rem,1.6vw,1.25rem);max-width:640px}.inside-intro .kicker-dot{background:#1a2522}.inside-intro.service-intro{min-height:390px;padding:3.4rem 4% 5rem;overflow:hidden}.service-intro .section-kicker,.service-intro h1,.service-intro p{position:relative;z-index:2}.service-intro h1{max-width:min(66%,960px)}.service-intro p{max-width:600px}.service-hero-icon{position:absolute;right:7%;top:18%;width:clamp(190px,23vw,360px);aspect-ratio:1;display:grid;place-items:center;transform:rotate(-9deg)}.service-hero-icon:before{content:"";position:absolute;inset:7%;border:1px solid #1b26235e;border-radius:50%}.service-hero-icon .feature-icon{width:56%;height:56%;stroke:#1b2623;stroke-width:.8;transition:transform .5s}.service-hero-icon:hover .feature-icon{transform:rotate(7deg) scale(1.05)}.service-hero-icon span{position:absolute;bottom:-.25rem;right:0;font-size:.7rem;font-weight:800;letter-spacing:.18em}.service-hero-icon:after{content:"✳";position:absolute;top:0;right:-.2rem;font-size:2.4rem;color:#f8f3e9}
.service-article{padding:5.5rem 4% 6rem}.service-lead{display:grid;grid-template-columns:.37fr 1fr;gap:1.4rem 8%;border:0;padding:0 0 5rem}.service-lead .detail-label{align-self:start;border-top:2px solid #d65c38;padding-top:.8rem}.service-lead h2{font-family:"DM Sans",sans-serif;font-size:clamp(2.5rem,4.5vw,5.1rem);line-height:1.06;max-width:980px;font-weight:700;letter-spacing:-.06em}.service-lead p{grid-column:2;max-width:730px;font-size:1.17rem;line-height:1.65}.service-process{border-top:1px solid #a9aaa1;padding:5rem 0}.service-process h2{font-family:"DM Sans",sans-serif;font-size:clamp(2.3rem,3.6vw,4.1rem);letter-spacing:-.055em;margin-bottom:2.2rem}.service-process h2 em{color:#d65c38}.service-process article{display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;gap:.7rem 1.4rem;max-width:none;min-height:160px;border-top:0;padding:1.8rem;background:#e7e4dc;transition:background .28s,transform .28s}.service-process article+article{margin-top:.7rem}.service-process article:nth-of-type(2){background:#e1ebe4}.service-process article:nth-of-type(3){background:#eee3d4}.service-process article:hover{transform:translateX(7px);background:#f1ceba}.service-process article>.feature-icon{grid-column:1;grid-row:1;width:36px;height:36px;stroke:#d25937}.service-process article>span{grid-column:1;grid-row:2;align-self:end;color:#79584d;font-size:.75rem}.service-process article>div{grid-column:2;grid-row:1/3;align-self:center}.service-process h3{font-family:"DM Sans",sans-serif;font-size:clamp(1.5rem,2vw,2rem);letter-spacing:-.045em}.service-process p{max-width:700px;font-size:1rem}.service-note{background:#202a26;color:#f3efe7;position:relative;overflow:hidden;padding:3rem 3.5rem;border-left:7px solid #ff6b3d}.service-note:after{content:"✳";font-size:14rem;color:#ffffff0e;position:absolute;right:1.5rem;top:-5rem;pointer-events:none}.service-note p{position:relative;z-index:1;max-width:800px;font-size:clamp(1.15rem,1.6vw,1.45rem)}.service-related h2{font-family:"DM Sans",sans-serif;font-size:clamp(2rem,3.1vw,3.3rem)}
.visual-card-image,.home-grid .visual-card:first-child .visual-card-image{height:auto;max-height:none;display:block;line-height:0;padding:0;background:transparent;border-radius:0;overflow:hidden;align-self:stretch}.visual-card-image img,.home-grid .visual-card:first-child .visual-card-image img,.visual-card:hover .visual-card-image img{width:100%;height:auto;max-height:none;object-fit:initial;transform:none;display:block}.visual-card:hover .visual-card-image img{transform:scale(1.014)}.visual-card:hover .visual-card-image,.visual-card:focus-visible .visual-card-image{background:transparent;box-shadow:none}.visual-card-content{padding-top:1rem}.related-image{background:transparent;height:auto;padding:0;display:block;line-height:0}.related-image img{height:auto;width:100%;object-fit:initial;display:block}.service-related a:hover img{transform:scale(1.014)}
.bio-grid{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:9%;align-items:center}.portrait-about{position:relative;max-width:450px;transform:none;box-shadow:none;margin:0}.portrait-about img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 25%;clip-path:polygon(0 0,100% 0,100% 92%,92% 100%,0 100%);filter:none;transition:filter .45s,transform .45s}.portrait-about:hover img{filter:saturate(1.13);transform:translateY(-5px)}.portrait-about figcaption{margin:0;background:#202a26;color:#f3efe7;padding:1rem;font-size:.68rem;letter-spacing:.1em}.portrait-counter{position:absolute;right:-2rem;bottom:2rem;z-index:2;background:#ff6b3d;color:#1b2623;border-radius:50%;width:92px;height:92px;display:flex;align-items:center;justify-content:center;flex-direction:column;font:800 2.5rem/1 "DM Sans",sans-serif;transform:rotate(12deg)}.portrait-counter span{font-size:.6rem;line-height:1.2;text-transform:uppercase;letter-spacing:.12em}.bio-grid h2{font-family:"DM Sans",sans-serif;font-weight:700;letter-spacing:-.06em;font-size:clamp(2.4rem,3.5vw,4.2rem)}.bio-grid h2 em{color:#d65c38}.method-inline{padding:6rem 4%;background:#e7e7df}.method-inline h2{font:700 clamp(2.7rem,4.5vw,5rem)/1.05 "DM Sans",sans-serif;letter-spacing:-.06em;margin:2rem 0 3.5rem}.method-inline h2 em{color:#d65c38}.method-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:1.7rem}.method-mini article{border-top:1px solid #909a94;padding:1.5rem .7rem 0 0}.method-mini .feature-icon{width:38px;height:38px;stroke:#d65c38}.method-mini article span{display:block;margin:1.5rem 0 .6rem;font-size:.7rem;font-weight:800;letter-spacing:.13em}.method-mini h3{font:700 clamp(1.6rem,2vw,2.3rem)/1.1 "DM Sans",sans-serif;letter-spacing:-.04em;margin:0 0 .8rem}.method-mini p{font-size:1rem;line-height:1.6;max-width:360px}
.end-cta{background:var(--page-accent,#ff6b3d)}.end-cta:before{opacity:.25}.end-cta h2 em{color:#f8f3e9}
@media(max-width:1050px){.header{gap:1.4vw}.header nav{gap:1.1rem;font-size:.91rem}.brand-copy strong{font-size:.92rem}.brand-copy small{font-size:.51rem}.signature{min-width:185px}.service-hero-icon{right:2%;width:240px}}
@media(max-width:700px){.header{height:70px;gap:.5rem}.signature{min-width:0}.brand-copy strong{font-size:.86rem}.brand-copy small{font-size:.43rem}.header .nav-contact{padding:.48rem .55rem;font-size:.62rem!important}.header nav{font-size:1.02rem;align-items:stretch}.header nav>a:after,.nav-group>a:after{display:none}.nav-group{position:relative}.submenu{position:static;width:100%;padding:.6rem 0 0;grid-template-columns:1fr;background:transparent;color:#f1eee7;box-shadow:none;border:0;gap:0;transform:none}.submenu a{color:#f1eee7;font-size:.86rem;padding:.62rem .4rem;border-color:#ffffff22}.submenu a:hover{color:#ff6b3d}.hero-main{min-height:auto}.inside-intro.service-intro{padding:3rem 5% 3.5rem;min-height:0}.service-intro h1{max-width:100%;font-size:clamp(2.5rem,8.5vw,4.6rem);margin:2.2rem 0 1.2rem}.service-hero-icon{position:relative;top:auto;right:auto;width:150px;margin:1.5rem 0 0 auto}.service-article{padding:3rem 5% 5rem}.service-lead{display:block;padding:0 0 3rem}.service-lead h2{font-size:clamp(2.2rem,7.4vw,3.7rem);margin:1.6rem 0}.service-lead p{font-size:1.05rem}.service-process{padding:3.5rem 0}.service-process article{padding:1.3rem;grid-template-columns:42px 1fr;gap:.5rem 1rem}.service-process article>.feature-icon{width:28px}.service-process h3{font-size:1.5rem}.service-note{padding:2rem 1.5rem}.bio-grid{display:block;padding:3.5rem 5%}.portrait-about{max-width:370px;margin:0 auto 3rem}.portrait-counter{right:-.5rem}.method-inline{padding:4rem 5%}.method-mini{grid-template-columns:1fr;gap:1.5rem}.method-mini article span{margin:.8rem 0 .4rem}.visual-card-image,.home-grid .visual-card:first-child .visual-card-image{height:auto}.related-image{height:auto}}
@media(max-width:430px){.brand-copy small{max-width:120px;white-space:normal;line-height:1.1}.header .nav-contact{max-width:120px}.service-hero-icon{width:130px}}
@media(prefers-reduced-motion:reduce){.service-process article:hover{transform:none}}
:root{--paper:#fff;--dark:#171B1B;--orange:#fff;--ink:#1C2421}body{background:#fff;color:#171B1B}.header,footer{background:#171B1B}.signature{min-width:205px}.footer-logo span{color:#fff}.brand-copy small{color:#fff;opacity:.75}.header nav{font-size:1rem;gap:clamp(.9rem,1.6vw,1.9rem)}.header .nav-contact{border:1px solid #fff;background:transparent;color:#fff;font-weight:700;box-shadow:none}.header .nav-contact span{color:#fff}.header .nav-contact:hover{background:#fff;color:#171B1B}.header .nav-contact:hover span{color:#171B1B}.header nav>a:after,.nav-group>a:after{background:#fff}

.nav-group.is-open .submenu{opacity:1;visibility:visible;transform:none;pointer-events:auto}.submenu{background:#fff;color:#171B1B;border-top:1px solid #171B1B;top:100%;box-shadow:0 18px 35px #171b1b33}.submenu a i{color:#1C2421}.submenu a{border-color:#171b1b32}.submenu a:hover,.submenu a:focus-visible{color:#171B1B;background:#f4f5f4}.submenu-toggle:focus-visible,.header a:focus-visible,.visual-card:focus-visible,main a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #fff;outline-offset:3px}.submenu a:focus-visible,.visual-card:focus-visible,main a:focus-visible,summary:focus-visible{outline-color:#171B1B}
.hero{background:#1C2421}.hero:before{background:linear-gradient(90deg,transparent 60%,#fff06 60%,#fff06 60.1%,transparent 60.1%)}.hero h1{max-width:67%;line-height:1.12}.hero h1 em{color:#fff;text-shadow:none}.hero-top{color:#fff}.hero-type{position:absolute;right:3%;top:18%;width:min(38%,480px);height:380px;pointer-events:none;transform:rotate(-4deg)}@keyframes word-draw{to{clip-path:inset(0 0 0 0)}}@keyframes rule-draw{to{width:80%}}
.intro,.work,.inside-grid,.method-inline,.services-context,.service-article,.bio-grid,.about-continuation,.contact-guidance{background:#fff;color:#171B1B}.intro h2 i,.work h2 em,.method-inline h2 em,.bio-grid h2 em,.service-process h2 em,.about-continuation h2 em,.services-context h2 em,.home-proof h2 em,.portfolio-context h2 em,.contact-guidance h2 em{color:inherit}.intro h2,.work h2,.about h2,.contact h2,.inside-intro h1,.service-lead h2{line-height:1.15}.intro h2 i,.work h2 em,.about h2 em,.contact h2 em,.inside-intro h1 em,.end-cta h2 em,.method-inline h2 em,.bio-grid h2 em,.service-process h2 em,.home-proof h2 em,.portfolio-context h2 em,.services-context h2 em,.about-continuation h2 em,.contact-guidance h2 em{display:inline-block;transform:rotate(-3deg);transform-origin:center;vertical-align:-.08em;margin:.09em .09em .14em .1em;line-height:1.15;white-space:normal}.hero h1 em{margin:0;vertical-align:0}.service-intro h1 em{margin-top:.19em}.contact-page h1 em{margin-top:.23em}.about h2 em{color:#fff}.service-grid article .line-icon,.service-grid article:nth-child(2) .line-icon,.service-grid article:nth-child(3) .line-icon{stroke:#171B1B}.service-grid article span,.service-grid article:nth-child(2) span{background:#1C2421;color:#fff}.service-grid p{color:#1C2421}.service-grid article+article{border-color:#171b1b45}.service-grid{border-color:#171b1b45}
.work{background:#fff}.visual-card-image,.visual-card:hover .visual-card-image{background:#fff}.visual-card-content span,.visual-card-content p{color:#1C2421}.visual-card-content h3 b{border-color:#171B1B;background:#fff;color:#171B1B}.visual-card:hover h3 b,.visual-card:focus-visible h3 b{background:#171B1B;color:#fff}.visual-card:hover .visual-card-image{box-shadow:0 14px 25px #171b1b16}.inside-grid{background:#fff}.all-work,.service-more,.text-link,.outbound,.project-insight a,.home-proof a,.portfolio-context a,.services-context a,.contact-guidance a{display:inline-flex;align-items:center;justify-content:space-between;gap:1.6rem;border:1px solid #171B1B;border-radius:40px;background:#fff;color:#171B1B;min-height:48px;padding:.7rem 1.25rem;font-size:.95rem;font-weight:700;text-decoration:none;max-width:none;width:auto;transition:transform .28s,box-shadow .28s,background .28s,color .28s}.all-work,.service-more{margin-top:2rem}.all-work:hover,.service-more:hover,.text-link:hover,.outbound:hover,.project-insight a:hover,.home-proof a:hover,.portfolio-context a:hover,.services-context a:hover,.contact-guidance a:hover{background:#171B1B;color:#fff;transform:translateY(-4px);box-shadow:0 8px 0 #1c24213b}.all-work span,.service-more span,.text-link span{color:inherit}.about,.contact,.home-proof{background:#1C2421;color:#fff}.about-grid{display:grid;grid-template-columns:1fr minmax(180px,.6fr) 1fr;gap:3%;align-items:center}.about-copy{margin:0}.home-portrait{margin:0;min-width:0}.home-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 25%}.home-portrait figcaption{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin-top:.7rem}.about .text-link,.home-proof a{background:transparent;color:#fff;border-color:#fff}.about .text-link:hover,.home-proof a:hover{background:#fff;color:#171B1B}.contact h2 em{color:#fff}.contact-button,.end-cta a,.nav-contact{border:1px solid #fff;background:#fff;color:#171B1B;box-shadow:none;transition:transform .28s,box-shadow .28s,background .28s,color .28s}.contact-button:hover,.end-cta a:hover{background:#1C2421;color:#fff;transform:translateY(-4px);box-shadow:0 8px 0 #ffffff40}.contact-button span,.end-cta a span{color:inherit}.contact-bottom p{color:#fff}.end-cta{background:#171B1B;color:#fff}.end-cta h2 em,.inside .end-cta em{color:#fff}.end-cta:before{color:#ffffff12}.end-cta a{background:#fff;color:#171B1B}.home-proof{padding:5rem 4%;display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem 6%}.home-proof>span{grid-column:1/-1;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em}.home-proof h2{font:700 clamp(2.3rem,3.6vw,4.3rem)/1.13 "DM Sans",sans-serif;letter-spacing:-.055em;margin:0}.home-proof h2 em{font-family:Georgia,serif;font-weight:400}.home-proof p{font-size:1.05rem;line-height:1.7;margin:0}.home-proof a{grid-column:2;justify-self:start}
.inside-intro,.inside-intro.service-intro,.inside-intro.contact-page{background:#1C2421;color:#fff}.inside-intro .section-kicker{border-color:#ffffff4d}.inside-intro .kicker-dot{background:#fff}.inside-intro h1 em{color:#fff}.service-hero-icon:before{border-color:#ffffff75}.service-hero-icon .feature-icon{stroke:#fff}.service-hero-icon:after{color:#fff}.service-hero-icon span{color:#fff}.breadcrumb{background:#171B1B;color:#fff;padding:.55rem 4%;height:auto;min-height:0;font-size:.72rem}.breadcrumb a{color:#fff}.breadcrumb span{opacity:.75}
.service-tiles{background:#fff}.service-tile,.service-tile:nth-child(3n/**/+2),.service-tile:nth-child(3n/**/+3){background:#fff;border:1px solid #171B1B;color:#171B1B}.service-tile:hover{background:#1C2421;color:#fff}.service-tile:before{color:#171b1b14}.service-tile:hover:before{color:#ffffff18}.service-tile .line-icon{stroke:currentColor}.service-tile b{color:inherit}.service-process article,.service-process article:nth-of-type(2),.service-process article:nth-of-type(3){background:#fff;border:1px solid #171B1B}.service-process article:hover{background:#1C2421;color:#fff}.service-process article>.feature-icon,.service-process article>span{stroke:currentColor;color:inherit}.service-process h2 em{color:#171B1B}.service-note{background:#1C2421;color:#fff;border-left:7px solid #171B1B}.service-depth{padding:4rem 0 5rem;border-top:1px solid #171b1b50}.service-depth h2{font:700 clamp(2.3rem,3.6vw,4rem)/1.15 "DM Sans",sans-serif;letter-spacing:-.055em;max-width:950px;margin:1.8rem 0}.service-depth h2 em{font-family:Georgia,serif;font-weight:400;font-style:italic;display:inline-block;transform:rotate(-3deg);vertical-align:-.08em;margin:.1em}.depth-intro{font-size:1.17rem;line-height:1.7;max-width:800px}.depth-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:3rem 0 4rem}.depth-grid article{border-top:2px solid #171B1B;padding-top:1.3rem}.depth-grid span{font-size:.74rem;font-weight:800;letter-spacing:.14em}.depth-grid h3{font:700 clamp(1.4rem,1.8vw,2rem)/1.2 "DM Sans",sans-serif;letter-spacing:-.04em;margin:1.2rem 0 .6rem}.depth-grid p{line-height:1.68;margin:0;color:#1C2421}.service-faq{max-width:950px;margin:0 auto;padding:2.5rem 0 0}.service-faq h3{font:700 clamp(1.8rem,2.8vw,3rem)/1.1 "DM Sans",sans-serif;letter-spacing:-.05em;margin:0 0 1.6rem}.service-faq details{border-top:1px solid #171B1B}.service-faq details:last-child{border-bottom:1px solid #171B1B}.service-faq summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 0;list-style:none;font-weight:700;font-size:1.05rem}.service-faq summary::-webkit-details-marker{display:none}.service-faq summary span{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid #171B1B;border-radius:50%;font-size:1.2rem;font-weight:400;transition:transform .25s,background .25s,color .25s}.service-faq details[open] summary span{transform:rotate(45deg);background:#171B1B;color:#fff}.service-faq details p{max-width:750px;line-height:1.7;margin:0 0 1.4rem}.service-related a .related-arrow{color:#171B1B}.service-related a:hover .related-arrow{color:#171B1B}
.portfolio-context{margin:0 auto 3rem;padding:3rem 0 0;border-top:1px solid #171B1B;display:grid;grid-template-columns:1fr 1.1fr;gap:1rem 5%;align-items:start}.portfolio-context>span{grid-column:1/-1;text-transform:uppercase;letter-spacing:.13em;font-size:.73rem;font-weight:800}.portfolio-context h2{font:700 clamp(2rem,3.4vw,4rem)/1.15 "DM Sans",sans-serif;letter-spacing:-.055em;margin:0}.portfolio-context h2 em{font-family:Georgia,serif;font-weight:400}.portfolio-context p{font-size:1.08rem;line-height:1.65;margin:0}.portfolio-context a{grid-column:2;justify-self:start}.case-more{padding:4rem 4%;border-top:1px solid #171b1b52;background:#fff;color:#171B1B;display:grid;grid-template-columns:1fr 1fr;gap:1rem 6%}.case-more .section-kicker{grid-column:1/-1}.case-more h2{font:700 clamp(2rem,3.3vw,3.8rem)/1.12 "DM Sans",sans-serif;letter-spacing:-.055em;margin:2rem 0}.case-more p{font-size:1.05rem;line-height:1.7}
.services-context,.about-continuation,.contact-guidance{padding:4.5rem 4%;border-top:1px solid #171b1b45}.services-context h2,.about-continuation h2,.contact-guidance h2{font:700 clamp(2.2rem,3.4vw,4rem)/1.16 "DM Sans",sans-serif;letter-spacing:-.05em;max-width:900px;margin:0 0 1.4rem}.services-context h2 em,.about-continuation h2 em,.contact-guidance h2 em{font-family:Georgia,serif;font-weight:400}.services-context p,.about-continuation p,.contact-guidance p{font-size:1.08rem;line-height:1.72;max-width:850px}.services-context a,.contact-guidance a{margin-top:1rem}.bio-grid{background:#fff}.portrait-about{max-width:450px;transform:none;box-shadow:none}.portrait-about img{aspect-ratio:auto;object-fit:initial;clip-path:none;transform:none!important;filter:none!important}.portrait-about figcaption{margin:.6rem 0 0;padding:0;background:transparent;color:#171B1B;font-size:.72rem}.portrait-counter{display:none}.bio-grid h2 em{color:#171B1B}.method-inline{background:#fff}.method-inline h2 em{color:#171B1B}.method-mini .feature-icon{stroke:#171B1B}.method-mini article{border-color:#171B1B}.contact-page a{color:#fff}.contact-page a:hover{color:#171B1B}.back-top{background:#fff;color:#171B1B;border:1px solid #171B1B}.back-top:hover{background:#171B1B;color:#fff}
@media(max-width:1050px){.about-grid{grid-template-columns:1fr minmax(150px,.5fr) 1fr}.hero-type{right:1%;width:36%}}
@media(max-width:700px){.signature{min-width:0}.header nav{font-size:1.02rem}.submenu{background:#171B1B;color:#fff;box-shadow:none;border:0}.submenu a,.submenu a i{color:#fff}.submenu a:hover{background:#1C2421;color:#fff}.hero h1{max-width:100%}.hero-type{position:relative;right:auto;top:auto;width:min(88%,330px);height:210px;margin:0 0 0 auto}.about-grid{display:block}.home-portrait{max-width:260px;margin:2.5rem 0}.about-copy{margin-top:2rem}.home-proof,.portfolio-context,.case-more{display:block}.home-proof p,.portfolio-context p{margin:1.5rem 0}.depth-grid{grid-template-columns:1fr;gap:2rem}.service-depth{padding:3rem 0}.portfolio-context a{margin-top:1rem}.case-more h2{margin:1rem 0}.breadcrumb{padding:.45rem 5%}.inside-intro h1{line-height:1.18}.service-intro h1{max-width:100%}.contact-page h1 em{margin-top:.3em}}

.hero:before{background:none}.submenu a:hover,.submenu a:focus-visible{background:#fff;text-decoration:underline;text-underline-offset:.35em}.service-tile:hover .line-icon{stroke:#fff}.has-motion .depth-grid article,.has-motion .case-more,.has-motion .portfolio-context,.has-motion .home-portrait{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.has-motion .depth-grid article.in-view,.has-motion .case-more.in-view,.has-motion .portfolio-context.in-view,.has-motion .home-portrait.in-view{opacity:1;transform:none}.depth-grid article:nth-child(2){transition-delay:.09s}.depth-grid article:nth-child(3){transition-delay:.18s}
.hero-type{transform:translateY(var(--type-shift,0px)) rotate(-4deg)}.detail-label,.project-scope li:before,.project-insight a span,.service-related a .related-title,.service-related a .related-arrow{color:#171B1B}.project-insight{background:#fff;border:1px solid #171B1B}.scroll-progress{background:#fff;box-shadow:none}.service-lead .detail-label{border-color:#171B1B}.service-process article>span{color:inherit}.related-image{background:#fff}.service-related a:hover .related-title{text-decoration:underline;text-underline-offset:.2em}
.service-crosslinks{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;margin:0 0 3rem;padding:1.3rem 0;border-top:1px solid #171B1B;border-bottom:1px solid #171B1B}.service-crosslinks strong{margin-right:auto;font-size:.85rem}.service-crosslinks a{display:inline-flex;gap:1rem;align-items:center;padding:.55rem .9rem;background:#fff;border:1px solid #171B1B;border-radius:40px;font-size:.82rem;font-weight:700;transition:background .25s,color .25s,transform .25s}.service-crosslinks a:hover{background:#171B1B;color:#fff;transform:translateY(-3px)}.contact-page .contact-local{color:#fff;opacity:.75}.hero .circle-link{transition:transform .28s,box-shadow .28s,background .28s}.hero .circle-link:hover{background:#fff;color:#171B1B;transform:translateY(-4px);box-shadow:0 8px 0 #ffffff35}.back-top{transition:transform .28s,box-shadow .28s,background .28s}.back-top:hover{transform:translateY(-4px);box-shadow:0 8px 0 #171b1b45}
.case-aspects{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem;margin-top:2rem;padding-top:2.2rem;border-top:1px solid #171B1B}.case-aspects h3{grid-column:1/-1;font:700 clamp(1.6rem,2.3vw,2.5rem)/1.1 "DM Sans",sans-serif;letter-spacing:-.04em;margin:0 0 .5rem}.case-aspects>div{border-top:1px solid #171b1b70;padding-top:1rem}.case-aspects strong{font-size:1rem}.case-aspects p{font-size:.96rem;line-height:1.58;margin:.6rem 0 0}.contact-guidance p+p{margin-top:1rem}
.case-reading{grid-column:1/-1;display:grid;grid-template-columns:.9fr 1.1fr;gap:5%;border-top:1px solid #171B1B;padding-top:2rem;margin-top:1rem}.case-reading h3{font:700 clamp(1.6rem,2.25vw,2.6rem)/1.15 "DM Sans",sans-serif;letter-spacing:-.04em;margin:.2rem 0}.case-reading p{font-size:1.06rem;line-height:1.7;margin:0;max-width:780px}
@media(max-width:700px){.case-aspects{grid-template-columns:1fr;gap:1.5rem}.case-aspects h3{grid-column:1}}
@media(max-width:700px){.case-reading{display:block}.case-reading p{margin-top:1.1rem}}
@media(prefers-reduced-motion:reduce){.has-motion .depth-grid article,.has-motion .case-more,.has-motion .portfolio-context,.has-motion .home-portrait{opacity:1;transform:none;transition:none}}

.header .brand-copy strong{font-size:1.15rem}
.header .brand-copy small{font-size:.65rem}
.signature{min-width:250px}
.submenu a,.submenu a:link,.submenu a:visited{color:#171B1B;background:#fff}
.submenu a:hover,.submenu a:focus-visible{color:#fff;background:#1C2421;text-decoration:none;padding-left:.8rem}
.submenu-toggle{width:40px;height:40px;font-size:1.45rem;line-height:1}
.submenu-toggle span{display:block;transform:translateY(-.12em)}
.submenu-toggle:hover,.submenu-toggle:focus-visible{background:#fff;color:#171B1B;border-radius:50%}
.submenu{z-index:100}

.hero{min-height:0}
.hero-main{min-height:0;padding:clamp(3.8rem,8vw,8rem) 0 clamp(2.6rem,5vw,5rem);display:flex;justify-content:center;text-align:center}
.hero h1{max-width:1100px;margin:0 auto;font-size:clamp(3.6rem,7.1vw,8.5rem);line-height:1.04;letter-spacing:-.065em}
.hero h1 em{display:inline-block;transform:rotate(-3deg);line-height:1.13;margin:.05em .06em .07em}
.hero-bottom{max-width:1120px;margin:0 auto;align-items:center}
.hero-bottom p{max-width:690px}
.intro h2,.work h2,.about h2,.contact h2,.inside-intro h1,.service-lead h2,.detail-header h1{letter-spacing:-.045em;line-height:1.13}
.intro h2 i,.work h2 em,.about h2 em,.contact h2 em,.inside-intro h1 em,.end-cta h2 em,.method-inline h2 em,.bio-grid h2 em,.service-process h2 em,.home-proof h2 em,.portfolio-context h2 em,.services-context h2 em,.about-continuation h2 em,.contact-guidance h2 em,.site-faq h2 em,.reviews-section h2 em{transform:rotate(-2deg);transform-origin:center center;vertical-align:baseline;display:inline-block;max-width:100%;margin:.13em .04em .16em;line-height:1.15}
.service-grid .line-icon{width:54px;height:54px;stroke-width:1.35;margin-bottom:1.35rem}
.service-grid article h3{margin-top:.5rem}
.work .all-work{margin-top:clamp(3.5rem,6vw,6rem)}
.work-footnote{font-size:clamp(1.08rem,1.45vw,1.35rem);font-weight:700;text-align:center;line-height:1.45;max-width:700px;margin:2rem auto 0}
.home-portrait figcaption,.portrait-about figcaption{display:none}
.home-proof{background:#fff;color:#171B1B;grid-template-columns:1fr;justify-items:center;text-align:center;gap:1.2rem;padding:clamp(4.2rem,7vw,7rem) 4%}
.home-proof>span,.home-proof h2,.home-proof p,.home-proof a{grid-column:1}
.home-proof h2{max-width:1000px;line-height:1.2;text-wrap:balance}
.home-proof p{max-width:790px;margin:1rem auto;font-size:1.1rem}
.home-proof a{justify-self:center;background:#171B1B;color:#fff;border-color:#171B1B}
.home-proof a:hover{background:#fff;color:#171B1B;box-shadow:0 8px 0 #171b1b40}
.about-grid{grid-template-columns:minmax(0,1fr) minmax(210px,.72fr) minmax(0,1.1fr)}

.inside-intro,.inside-intro.service-intro,.inside-intro.contact-page{padding:clamp(2.3rem,4vw,4rem) 4% clamp(3.5rem,5vw,5rem);min-height:0;text-align:center}
.inside-intro .section-kicker{justify-content:center;max-width:1100px;margin:0 auto;font-size:.87rem;line-height:1.45}
.inside-intro .section-kicker .kicker-dot{display:none}
.inside-intro .section-kicker>span:last-child{margin-left:0}
.inside-intro h1,.inside-intro.service-intro h1{max-width:1060px;margin:2rem auto 1.35rem;text-align:center;line-height:1.18;text-wrap:balance}
.inside-intro>p,.inside-intro.service-intro>p{max-width:760px;margin:0 auto;text-align:center;font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.58}
.inside-intro h1 em{margin:.15em .04em .12em;line-height:1.2}
.service-hero-icon,.inside-intro:after{display:none}
.breadcrumb{font-size:.8rem}
.service-article{padding-top:3rem}
.service-depth .section-kicker,.case-more .section-kicker{font-size:.84rem}
.portfolio-context{margin-top:0}
.about-continuation{max-width:none}
.method-inline .section-kicker{display:flex;flex-direction:row;justify-content:flex-start;text-align:left;font-size:.88rem}
.method-inline .section-kicker .kicker-dot{display:none}
.method-inline h2{margin-top:1.6rem}
.contact-page{display:flex;flex-direction:column;align-items:center}
.contact-page h1,.contact-page p,.contact-page .contact-local{text-align:center;margin-left:auto;margin-right:auto}
.contact-guidance{text-align:center}
.contact-guidance h2,.contact-guidance p{margin-left:auto;margin-right:auto}
.contact-page .contact-form-jump{display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;margin-top:2rem;padding:.9rem 1.35rem;border:1px solid var(--lime,#dcfa68);border-radius:999px;background:var(--lime,#dcfa68);color:#171b1b;font-weight:700;transition:background .25s,transform .25s}
.contact-page .contact-form-jump:hover,.contact-page .contact-form-jump:focus-visible{background:#fff;color:#171b1b;transform:translateY(-3px)}
.contact-form-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:clamp(2rem,6vw,7rem);row-gap:2.8rem;padding:clamp(4rem,7vw,7rem) 5%;background:#fff;color:#171b1b}
.contact-form-intro{grid-column:1;grid-row:1}.contact-form-intro h2{font:700 clamp(2.3rem,3.4vw,4rem)/1.14 "DM Sans",sans-serif;letter-spacing:-.05em;max-width:620px;margin:2rem 0 1.5rem;text-wrap:balance}.contact-form-intro h2 em{font-family:Georgia,serif;font-weight:400;display:inline-block;transform:rotate(-2deg);margin:.13em .04em .16em;line-height:1.15}.contact-form-intro>p{font-size:1.08rem;line-height:1.7;max-width:55ch}
.contact-form-panel{grid-column:2;grid-row:1/span 2;min-width:0;min-height:620px;border-left:1px solid #171b1b45;padding-left:clamp(1.5rem,4vw,4rem)}.contact-form-panel .elfsight-app-97a8639d-5d5e-49d1-8899-8db91d746616{min-height:590px}.contact-form-panel noscript{display:block;padding:1rem}
.contact-direct{grid-column:1;grid-row:2;align-self:end;min-width:0}.contact-direct h3{font-size:1rem;margin:0 0 1rem}.contact-direct a{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #171b1b70;padding:.9rem 0;font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:700;overflow-wrap:anywhere}.contact-direct a:hover,.contact-direct a:focus-visible{color:#476300}.contact-direct a:nth-of-type(2){border-bottom:1px solid #171b1b70}.contact-direct p{font-size:.94rem;line-height:1.6;color:#515651;max-width:42ch;margin:1.3rem 0 0}
@media(max-width:850px){.contact-form-section{grid-template-columns:1fr;row-gap:2rem}.contact-form-intro,.contact-form-panel,.contact-direct{grid-column:1;grid-row:auto}.contact-form-panel{border-left:0;border-top:1px solid #171b1b45;padding:2rem 0 0;min-height:580px}.contact-form-panel .elfsight-app-97a8639d-5d5e-49d1-8899-8db91d746616{min-height:550px}.contact-direct{margin-top:0}}
.about-continuation{text-align:center}
.about-continuation h2,.about-continuation p{margin-left:auto;margin-right:auto}
.detail-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.7rem}
.detail-header>div{width:min(100%,930px)}
.detail-header h1{margin:1.6rem auto 1.2rem;line-height:1.1;text-wrap:balance}
.detail-header p{margin:0 auto}

.end-cta{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1.4rem;padding:clamp(4.4rem,7vw,8rem) 4%}
.end-cta>span{font-size:.88rem}
.end-cta h2{margin:0 auto;font-size:clamp(2.7rem,5.2vw,6.3rem);line-height:1.18;max-width:1000px;text-wrap:balance}
.end-cta a{margin:1rem auto 0;display:inline-flex;align-items:center;gap:2rem;justify-content:space-between;min-width:235px}
.end-cta:before{display:none}
.nav-contact:hover,.contact-button:hover,.end-cta a:hover{transform:translateY(-4px);box-shadow:0 8px 0 #ffffff4a}
.header .nav-contact:hover{box-shadow:0 6px 0 #ffffff50}
.all-work:hover,.service-more:hover,.text-link:hover,.outbound:hover,.project-insight a:hover,.home-proof a:hover,.portfolio-context a:hover,.services-context a:hover,.contact-guidance a:hover,.service-crosslinks a:hover{transform:translateY(-4px);box-shadow:0 8px 0 #171b1b40}
.visual-card:hover{transform:translateY(-4px);box-shadow:0 8px 0 #171b1b30}
.contact .contact-button{background:#fff;color:#171B1B}
.contact .contact-button:hover{background:#171B1B;color:#fff}
.header a,.header button,.site-footer a,main a,main button{cursor:pointer}

.reviews-section,.site-faq{background:#fff;color:#171B1B;padding:clamp(4rem,6vw,6.5rem) 4%}
.reviews-section .section-kicker,.site-faq .section-kicker{font-size:.87rem;max-width:1100px;margin:0 auto;justify-content:center}
.reviews-section h2,.site-faq h2{font:700 clamp(2.2rem,4vw,4.8rem)/1.18 "DM Sans",sans-serif;letter-spacing:-.05em;text-align:center;max-width:1050px;margin:1.8rem auto 1rem;text-wrap:balance}
.reviews-section h2 em,.site-faq h2 em{font-family:Georgia,serif;font-weight:400}
.reviews-section>p{font-size:1.12rem;line-height:1.6;text-align:center;margin:0 auto 2.5rem;max-width:650px}

.instagram-section{background:#fff;color:#171B1B;padding:clamp(4rem,6vw,6.5rem) 4%}
.instagram-section .section-kicker{font-size:.87rem;max-width:1100px;margin:0 auto;justify-content:center}
.instagram-section h2{font:700 clamp(2.2rem,4vw,4.8rem)/1.18 "DM Sans",sans-serif;letter-spacing:-.05em;text-align:center;max-width:1050px;margin:1.8rem auto 2.5rem;text-wrap:balance}
.instagram-section h2 em{font-family:Georgia,serif;font-weight:400;display:inline-block;transform:rotate(-2deg);transform-origin:center center;vertical-align:baseline;margin:.13em .04em .16em;line-height:1.15}
.instagram-section .elfsight-app-962f70c1-b7bb-42d0-a315-7535c81bf82a{min-height:320px}
.instagram-follow{text-align:center;margin:2.5rem 0 0}
@media(max-width:700px){.instagram-section{padding:4rem 5%}.instagram-section .elfsight-app-962f70c1-b7bb-42d0-a315-7535c81bf82a{min-height:250px}}

.faq-items{max-width:930px;margin:2rem auto 0}
.faq-items details{border-top:1px solid #171B1B}
.faq-items details:last-child{border-bottom:1px solid #171B1B}
.faq-items summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:700}
.faq-items summary::-webkit-details-marker{display:none}
.faq-items summary span{flex:none;width:38px;height:38px;border:1px solid #171B1B;border-radius:50%;display:grid;place-items:center;transition:transform .25s,background .25s,color .25s}
.faq-items details[open] summary span{transform:rotate(45deg);background:#171B1B;color:#fff}
.faq-items details p{font-size:1.04rem;line-height:1.7;max-width:760px;margin:0 0 1.4rem}
.inside-grid+.site-faq,.service-tiles+.site-faq{border-top:1px solid #171b1b38}
.legal-content{max-width:850px;padding:4rem 4% 6rem;margin:0 auto;font-size:1.08rem;line-height:1.72}
.legal-content h2{font:700 clamp(1.5rem,2.4vw,2.3rem)/1.2 "DM Sans",sans-serif;letter-spacing:-.03em;margin:2.5rem 0 .7rem}
.legal-content h2:first-child{margin-top:0}
.legal-content a{text-decoration:underline;text-underline-offset:.2em}
.legal-intro{padding-bottom:3rem!important}
.site-footer{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap}
.site-footer nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.site-footer nav a{font-size:.78rem;text-decoration:underline;text-underline-offset:.3em}
.site-footer .footer-logo{margin-right:.4rem}
.site-footer>span:last-child{margin-left:auto}
.site-footer a:hover{text-decoration-thickness:2px}

@media(max-width:1050px){.signature{min-width:225px}.inside-intro.service-intro h1{max-width:100%}.hero h1{font-size:clamp(3.5rem,7vw,7rem)}}
@media(max-width:700px){
 .signature{min-width:0}.header .brand-copy strong{font-size:.84rem}.header .brand-copy small{font-size:.45rem}
 .submenu a,.submenu a:link,.submenu a:visited{background:#171B1B;color:#fff}.submenu a:hover,.submenu a:focus-visible{background:#fff;color:#171B1B}
 .submenu-toggle{width:42px;height:42px;border-radius:50%}
 .hero-main{padding:3.5rem 0 2.5rem}.hero h1{font-size:clamp(3rem,10.4vw,5.5rem);line-height:1.12}
 .hero-bottom{display:flex;gap:1rem}.hero-bottom p{font-size:1rem}.hero .circle-link{width:76px;height:76px}
 .inside-intro,.inside-intro.service-intro,.inside-intro.contact-page{padding:2rem 5% 3.1rem}
 .inside-intro .section-kicker{font-size:.78rem}
 .inside-intro h1,.inside-intro.service-intro h1{font-size:clamp(2.7rem,9vw,4.8rem);margin:1.7rem auto 1rem}
 .service-grid .line-icon{width:48px;height:48px}
 .home-proof{padding:4rem 5%}.home-proof h2{font-size:clamp(2.1rem,7.2vw,3.6rem)}
 .end-cta{padding:4rem 5%}.end-cta h2{font-size:clamp(2.65rem,8vw,4rem)}
 .reviews-section,.site-faq{padding:4rem 5%}.site-footer{gap:1rem}.site-footer nav{gap:.85rem}.site-footer>span:last-child{margin-left:0;margin-right:4.5rem}
}
:root{--lime:#dcfa68}
::selection{background:var(--lime);color:#171B1B}
.header{z-index:200}
.header>.menu-toggle{display:none!important}
.header .signature,.header .menu-trigger{position:relative;z-index:3}
.header .nav-contact{margin-left:auto;order:2}
.header .menu-trigger{order:3}
.menu-trigger{min-width:110px;min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:1.2rem;border:1px solid #fff;border-radius:50px;padding:.55rem .85rem .55rem 1.1rem;background:transparent;color:#fff;cursor:pointer;font:700 .86rem/1 "DM Sans",sans-serif;transition:background .25s,color .25s,transform .25s}
.menu-trigger:hover,.menu-trigger:focus-visible{background:var(--lime);border-color:var(--lime);color:#171B1B;transform:translateY(-2px)}
.menu-trigger-mark{width:20px;height:20px;display:grid;place-items:center;position:relative}
.menu-trigger-mark i{width:19px;height:2px;background:currentColor;display:block;grid-area:1/1;transition:transform .25s}
.menu-trigger-mark i:first-child{transform:translateY(-4px)}
.menu-trigger-mark i:last-child{transform:translateY(4px)}
body.menu-open .menu-trigger{background:var(--lime);border-color:var(--lime);color:#171B1B}
body.menu-open .menu-trigger-mark i:first-child{transform:rotate(45deg)}
body.menu-open .menu-trigger-mark i:last-child{transform:rotate(-45deg)}
body.menu-open{overflow:hidden}
body.menu-open .header .nav-contact{opacity:0;pointer-events:none}
.header .site-overlay-nav[hidden]{display:none!important}
.header .site-overlay-nav{display:block;position:fixed;inset:0;width:100%;height:100dvh;max-height:none;overflow-y:auto;z-index:2;margin:0;padding:clamp(7rem,12vh,9rem) 4% 3rem;background:#171B1B;color:#fff;opacity:0;visibility:hidden;transition:opacity .32s ease,visibility .32s}
.header .site-overlay-nav.is-open{opacity:1;visibility:visible}
.menu-layout{width:min(1600px,100%);min-height:100%;margin:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.65fr);gap:5vw;align-items:center}
.menu-primary{align-self:center}
.menu-primary>a,.menu-primary>details>summary{display:flex;align-items:baseline;gap:clamp(1.4rem,4vw,4.5rem);font:700 clamp(3.1rem,6.6vw,7.3rem)/1.08 "DM Sans",sans-serif;letter-spacing:-.075em;color:#fff;text-decoration:none;cursor:pointer;transition:color .2s,transform .25s;text-wrap:balance}
.menu-primary>a span,.menu-primary>details>summary span{font:600 .77rem/1 "DM Sans",sans-serif;letter-spacing:.12em;color:var(--lime);align-self:center;flex:none;min-width:2.5rem}
.menu-primary>a:hover,.menu-primary>a:focus-visible,.menu-primary>details>summary:hover,.menu-primary>details>summary:focus-visible{color:var(--lime);transform:translateX(12px)}
.menu-primary>details>summary{list-style:none}
.menu-primary>details>summary::-webkit-details-marker{display:none}
.menu-primary>details>summary b{font-size:clamp(1.8rem,3vw,3rem);font-weight:400;letter-spacing:0;margin-left:auto;transition:transform .3s;color:var(--lime)}
.menu-primary>details[open]>summary b{transform:rotate(45deg)}
.menu-service-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 2rem;padding:1rem 0 1.5rem clamp(4rem,7vw,7.5rem)}
.menu-service-links a{padding:.4rem 0;color:#fff;font-size:clamp(.87rem,1.1vw,1.15rem);font-weight:600;letter-spacing:-.02em;border-bottom:1px solid #ffffff37;transition:color .2s,padding-left .2s}
.menu-service-links a:hover,.menu-service-links a:focus-visible{color:var(--lime);padding-left:.4rem}
.menu-aside{align-self:end;border-top:1px solid #ffffff5c;padding:2rem 0 .7rem}
.menu-aside-line{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--lime)}
.menu-aside p{font-size:clamp(1.5rem,2.8vw,3rem);font-weight:700;letter-spacing:-.045em;line-height:1.12;margin:1.5rem 0 2rem}
.menu-aside p em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}
.menu-aside>a{font-size:clamp(1rem,1.5vw,1.4rem);font-weight:700;border-bottom:1px solid var(--lime);padding-bottom:.5rem}
.menu-social{display:flex;gap:1.5rem;margin-top:2.4rem;font-size:.77rem;text-transform:uppercase;letter-spacing:.1em}
.menu-social a:hover{color:var(--lime)}
.site-overlay-nav.is-open .menu-primary>*{animation:menu-enter .48s ease both}
.site-overlay-nav.is-open .menu-primary>*:nth-child(2){animation-delay:.05s}
.site-overlay-nav.is-open .menu-primary>*:nth-child(3){animation-delay:.1s}
.site-overlay-nav.is-open .menu-primary>*:nth-child(4){animation-delay:.15s}
.site-overlay-nav.is-open .menu-primary>*:nth-child(5){animation-delay:.2s}
@keyframes menu-enter{from{opacity:.35;transform:translateY(18px)}to{opacity:1;transform:none}}

.hero{background:#171B1B}
.hero-top span:first-child:before{background:var(--lime)}
.hero h1 em{color:var(--lime);text-shadow:none}
.hero .circle-link{background:var(--lime);color:#171B1B;border-color:var(--lime)}
.hero .circle-link:hover{background:#fff;color:#171B1B;border-color:#fff}

.intro{background:#fff;color:#171B1B}
.intro .kicker-dot{background:var(--lime);border:1px solid #171B1B}
.intro h2 i{color:#171B1B;background:linear-gradient(transparent 78%,var(--lime) 78%)}
.intro .service-grid article .line-icon,.intro .service-grid article:nth-child(2) .line-icon,.intro .service-grid article:nth-child(3) .line-icon{stroke:#171B1B}
.intro .service-grid article span,.intro .service-grid article:nth-child(2) span{background:#171B1B;color:#fff}
.intro .service-grid{border-color:#171b1b60}
.intro .service-grid article+article{border-color:#171b1b60}
.inside-intro h1 em,.inside-intro.service-intro h1 em{color:var(--lime)}
.inside-intro .section-kicker,.contact .section-kicker{color:var(--lime)}
.inside-intro .kicker-dot,.contact .kicker-dot{background:var(--lime)}
.header .nav-contact{border-color:var(--lime);color:var(--lime)}
.header .nav-contact:hover{background:var(--lime);color:#171B1B;box-shadow:0 7px 0 #dcfa6840}
.header .nav-contact span{color:inherit}
.contact-button,.contact .contact-button{background:var(--lime);border-color:var(--lime);color:#171B1B}
.contact-button:hover,.contact .contact-button:hover{background:#fff;color:#171B1B}
.end-cta{background:var(--lime);color:#171B1B}
.end-cta h2 em,.inside .end-cta em{color:#171B1B}
.end-cta a{background:#171B1B;color:#fff;border-color:#171B1B}
.end-cta a:hover{background:#fff;color:#171B1B;box-shadow:0 8px 0 #171b1b38}
.about h2 em{color:var(--lime)}
.about-year{border-color:var(--lime);color:var(--lime)}
.about .text-link{background:var(--lime);border-color:var(--lime);color:#171B1B}
.about .text-link:hover{background:#fff;color:#171B1B}
.home-proof a:hover,.all-work:hover,.service-more:hover{background:var(--lime);color:#171B1B;border-color:#171B1B}
.work-footnote{border-top:2px solid var(--lime);padding-top:1.4rem}
.back-top{background:var(--lime);border-color:#171B1B;color:#171B1B}
.back-top:hover{background:#171B1B;color:var(--lime)}
.service-tile:hover{background:#171B1B;color:var(--lime)}
.service-tile:hover .line-icon{stroke:var(--lime)}
.site-footer a:hover,.site-footer a:focus-visible{color:var(--lime)}
.section-kicker{font-size:clamp(.8rem,.85vw,.92rem)}


.word-reveal{display:inline-block;opacity:1;vertical-align:baseline}
.reveal-active .word-reveal{animation:word-rise .64s cubic-bezier(.2,.7,.18,1) both;animation-delay:calc(var(--wi,0) * 48ms)}
@keyframes word-rise{from{opacity:.65;transform:translateY(.32em);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
.soft-enter.in-view{animation:copy-rise .7s ease both}
@keyframes copy-rise{from{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:none}}

@media(max-width:1050px){.menu-layout{grid-template-columns:1fr .7fr}.menu-primary>a,.menu-primary>details>summary{font-size:clamp(3rem,7vw,5.5rem)}}
@media(max-width:700px){
 .header .nav-contact{display:none}
 .header .menu-trigger{min-width:50px;width:50px;height:48px;padding:.6rem;justify-content:center}
 .menu-trigger-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .header .site-overlay-nav{display:block;position:fixed;inset:0;width:100%;height:100dvh;max-height:none;overflow-y:auto;padding:6.5rem 5% 2rem;background:#171B1B;color:#fff;visibility:hidden;opacity:0}
 .header .site-overlay-nav.is-open{visibility:visible;opacity:1}
 .menu-layout{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:2rem}
 .menu-primary>a,.menu-primary>details>summary{font-size:clamp(2.6rem,9.4vw,4.5rem);gap:1.2rem;line-height:1.15}
 .menu-primary>a span,.menu-primary>details>summary span{font-size:.65rem;min-width:1.9rem}
 .menu-service-links{grid-template-columns:1fr;padding-left:3.1rem;gap:.2rem}
 .menu-service-links a{font-size:.9rem}
 .menu-aside{margin-top:auto;padding:1.4rem 0 .5rem}
 .menu-aside p{font-size:1.6rem;margin:1rem 0}
 .menu-social{margin-top:1.3rem}
 .hero h1 em{color:var(--lime)}
}
@media(prefers-reduced-motion:reduce){.reveal-active .word-reveal,.soft-enter.in-view,.site-overlay-nav.is-open .menu-primary>*{animation:none!important}.header .site-overlay-nav,.menu-trigger,.menu-trigger-mark i{transition:none!important}}





.editorial-lens{margin:0 auto clamp(3rem,6vw,6rem);max-width:960px;padding:clamp(1.5rem,4vw,3.5rem);background:#f6f6f4;border-left:5px solid #171b1b;color:#171b1b;text-align:left}
.editorial-lens>span,.identity-context>span{font-size:.85rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.editorial-lens h2,.identity-context h2{font-size:clamp(1.9rem,3.4vw,3.4rem);line-height:1.12;max-width:800px;margin:.8rem 0 1rem}
.editorial-lens p,.identity-context p{font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.7;max-width:760px}
.editorial-lens a,.identity-context a{display:inline-flex;margin-top:1.1rem;padding:.9rem 1.25rem;border:1px solid #171b1b;border-radius:100px;color:#171b1b;text-decoration:none;font-weight:750;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.editorial-lens a:hover,.editorial-lens a:focus-visible,.identity-context a:hover,.identity-context a:focus-visible{transform:translateY(-4px);box-shadow:0 6px 0 #171b1b55;background:#dcfa68}
.identity-context{padding:clamp(3rem,6vw,6rem) 5%;text-align:center;background:#171b1b;color:#fff}
.identity-context h2,.identity-context p{margin-left:auto;margin-right:auto}
.identity-context a{color:#fff;border-color:#fff}
.identity-context a:hover,.identity-context a:focus-visible{color:#171b1b;box-shadow:0 6px 0 #ffffff55}
@media(max-width:650px){.editorial-lens{margin-left:0;margin-right:0}}
.section-kicker .kicker-dot{background:var(--lime,#dcfa68);border:1px solid #171b1b}
.inside-intro .section-kicker .kicker-dot,.about .section-kicker .kicker-dot{border-color:#fff}


.intro .service-grid article .line-icon,
.intro .service-grid article:nth-child(2) .line-icon,
.intro .service-grid article:nth-child(3) .line-icon{width:54px;height:54px;padding:10px;background:var(--lime,#dcfa68);border:1px solid #171b1b;border-radius:50%;stroke:#171b1b;overflow:visible;transition:transform .25s ease}
.intro .service-grid article:hover .line-icon{transform:rotate(-9deg) translateY(-3px)}
.intro .service-grid article h3{display:table;box-shadow:inset 0 -.13em 0 transparent;transition:box-shadow .25s ease}
.intro .service-grid article:hover h3{box-shadow:inset 0 -.13em 0 var(--lime,#dcfa68)}


.detail-header h1:after{content:"";display:block;width:clamp(5rem,10vw,10rem);height:6px;margin:1.2rem auto 0;background:var(--lime,#dcfa68);transform:rotate(-2deg)}
.detail-figure{border-top:5px solid var(--lime,#dcfa68)}
.detail-story .detail-label{display:inline-flex;align-items:center;gap:.6rem;color:#171b1b}
.detail-story .detail-label:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--lime,#dcfa68);border:1px solid #171b1b}
.detail-story h2{line-height:1.12;text-wrap:balance}
.project-scope{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(2rem,5vw,7rem);border-top:1px solid #171b1b;padding:clamp(2.5rem,5vw,5rem) 0;margin:0}
.project-scope-head{position:sticky;top:105px}
.project-scope .detail-label{display:inline-flex;align-items:center;gap:.6rem;color:#171b1b}
.project-scope .detail-label:before{content:"";width:9px;height:9px;border:1px solid #171b1b;border-radius:50%;background:var(--lime,#dcfa68)}
.project-scope h2{max-width:390px;margin:1.3rem 0 0;line-height:1.09}
.project-scope h2:after{content:"";display:block;width:4.5rem;height:5px;background:var(--lime,#dcfa68);margin-top:1.4rem;transform:rotate(-2deg)}
.project-scope ul{counter-reset:project-task;list-style:none;padding:0;margin:0;border-top:1px solid #171b1b}
.project-scope li{counter-increment:project-task;display:grid;grid-template-columns:2.1rem minmax(0,1fr);align-items:start;gap:1.1rem;margin:0;padding:1.05rem .3rem;border-bottom:1px solid #171b1b55;border-radius:0;background:transparent;font-size:clamp(1rem,1.2vw,1.14rem);line-height:1.5;transition:background .25s ease,padding-left .25s ease}
.project-scope li:before{content:counter(project-task,decimal-leading-zero);position:static;display:grid;place-items:center;width:2.05rem;height:2.05rem;border:1px solid #171b1b;border-radius:50%;background:var(--lime,#dcfa68);color:#171b1b;font-size:.69rem;font-weight:800;letter-spacing:-.03em;line-height:1}
.project-scope li:hover{background:#f4f6eb;padding-left:.8rem}

.project-insight{background:#1c2421;color:#fff;border:0;padding:clamp(2rem,4vw,4rem);margin:0 0 clamp(3rem,6vw,6rem);display:grid;grid-template-columns:minmax(160px,.3fr) minmax(0,1fr);column-gap:5%;align-items:start}
.project-insight .detail-label{color:var(--lime,#dcfa68);display:inline-flex;align-items:center;gap:.6rem}
.project-insight .detail-label:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime,#dcfa68)}
.project-insight p{color:#fff;margin:0;max-width:890px;font-size:clamp(1.25rem,2vw,1.9rem);line-height:1.48;letter-spacing:-.02em}
.project-insight a{grid-column:2;justify-self:start;margin-top:2rem;background:transparent;border:1px solid #fff;color:#fff}
.project-insight a span{color:var(--lime,#dcfa68)}
.project-insight a:hover,.project-insight a:focus-visible{background:var(--lime,#dcfa68);color:#171b1b;border-color:var(--lime,#dcfa68);box-shadow:0 8px 0 #dcfa6840}
.project-insight a:hover span,.project-insight a:focus-visible span{color:#171b1b}


.case-more{display:block;background:#fff;color:#171b1b;padding:clamp(3.5rem,6vw,7rem) 4%;border-top:0}
.case-more .section-kicker{margin-bottom:clamp(2rem,4vw,4rem)}
.case-more>h2{max-width:920px;margin:0 auto 2rem;font-size:clamp(2.8rem,5vw,5.5rem);line-height:1.06;text-align:center;text-wrap:balance}
.case-more>h2:after{content:"";display:block;width:5.5rem;height:6px;background:var(--lime,#dcfa68);margin:1.5rem auto 0;transform:rotate(-2deg)}
.case-more>div:not(.case-aspects):not(.case-reading){width:min(100%,760px);margin:0 auto clamp(3.5rem,6vw,6rem)}
.case-more>div:not(.case-aspects):not(.case-reading) p{font-size:clamp(1.06rem,1.3vw,1.2rem);line-height:1.75;margin:0 0 1.25rem}
.case-aspects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;border:0;padding:0;margin:0 auto clamp(3.5rem,6vw,6rem);max-width:1460px}
.case-aspects h3{grid-column:1/-1;margin:0 0 1.1rem;text-align:center;font-size:clamp(1.7rem,2.4vw,2.6rem)}
.case-aspects>div{counter-increment:case-aspect;min-width:0;background:#f6f7f3;border:1px solid #171b1b28;border-top:5px solid var(--lime,#dcfa68);padding:clamp(1.3rem,2vw,2rem);transition:transform .25s ease,box-shadow .25s ease}
.case-aspects{counter-reset:case-aspect}
.case-aspects>div:before{content:counter(case-aspect,decimal-leading-zero);display:block;font-size:.75rem;font-weight:800;letter-spacing:.12em;margin-bottom:1.3rem}
.case-aspects>div:hover{transform:translateY(-4px);box-shadow:0 7px 0 #171b1b18}
.case-aspects strong{display:block;font-size:clamp(1.2rem,1.6vw,1.5rem);line-height:1.2}
.case-aspects p{max-width:38ch;margin:.75rem 0 0;line-height:1.65}
.case-reading{display:grid;grid-template-columns:minmax(210px,.65fr) minmax(0,1.35fr);align-items:start;gap:clamp(1.5rem,5vw,6rem);width:min(100%,1460px);margin:0 auto;padding:clamp(2rem,4vw,4rem);border:0;background:#f3f6e8}
.case-reading h3{margin:0;max-width:420px;font-size:clamp(1.65rem,2.7vw,3rem);line-height:1.12}
.case-reading h3:before{content:"";display:block;width:9px;height:9px;border-radius:50%;background:var(--lime,#dcfa68);border:1px solid #171b1b;margin-bottom:1.3rem}
.case-reading p{margin:0;max-width:72ch;font-size:clamp(1.05rem,1.3vw,1.19rem);line-height:1.7}
.detail-header .detail-label{color:#171b1b;box-shadow:inset 0 -.32em 0 var(--lime,#dcfa68)}



@media(max-width:760px){
 .project-scope{display:block;padding:3rem 0}.project-scope-head{position:static}.project-scope ul{margin-top:2rem}
 .project-insight{display:block;margin-bottom:3rem}.project-insight p{margin-top:1.2rem}.project-insight a{margin-top:1.5rem}
 .case-more{padding:3.5rem 5%}.case-aspects{grid-template-columns:1fr}.case-aspects h3{text-align:left}
 .case-reading{display:block}.case-reading p{margin-top:1.5rem}
}
@media(prefers-reduced-motion:reduce){.project-scope li,.case-aspects>div,.intro .service-grid article .line-icon{transition:none!important}.case-aspects>div:hover,.intro .service-grid article:hover .line-icon{transform:none}}
.method-inline .method-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #171b1b60;margin-top:clamp(2.5rem,4vw,4rem)}
.method-inline .method-mini article{min-width:0;border:0;padding:clamp(2rem,3vw,3rem) clamp(1.4rem,2vw,2.4rem) 0;position:relative}
.method-inline .method-mini article:first-child{padding-left:0}
.method-inline .method-mini article+article{border-left:1px solid #171b1b60}
.method-inline .method-mini .feature-icon{display:block;box-sizing:border-box;width:54px;height:54px;padding:10px;border:1px solid #171b1b;border-radius:50%;background:var(--lime,#dcfa68);stroke:#171b1b;stroke-width:1.4;overflow:visible;transition:transform .25s ease}
.method-inline .method-mini article:hover .feature-icon{transform:rotate(-9deg) translateY(-3px)}
.method-inline .method-mini article>span{display:inline-block;width:auto;margin:1.45rem 0 .6rem;padding:.45rem .65rem;background:#171b1b;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.09em;line-height:1.2;text-transform:uppercase}
.method-inline .method-mini h3{display:table;font-size:clamp(1.55rem,2vw,2.05rem);line-height:1.12;margin:0 0 .65rem;box-shadow:inset 0 -.13em 0 transparent;transition:box-shadow .25s ease}
.method-inline .method-mini article:hover h3{box-shadow:inset 0 -.13em 0 var(--lime,#dcfa68)}
.method-inline .method-mini p{max-width:350px;margin:0;color:#1c2421;font-size:1rem;line-height:1.65}
.method-inline .section-kicker .kicker-dot{display:inline-block}
@media(max-width:760px){.method-inline .method-mini{display:block}.method-inline .method-mini article,.method-inline .method-mini article:first-child{padding:2rem 0;border-left:0}.method-inline .method-mini article+article{border-left:0;border-top:1px solid #171b1b60}}
@media(prefers-reduced-motion:reduce){.method-inline .method-mini .feature-icon{transition:none}.method-inline .method-mini article:hover .feature-icon{transform:none}}
.detail-header h1:after,.project-scope h2:after,.case-more>h2:after{content:none!important;display:none!important}
.detail-header .detail-label{box-shadow:none}
.project-insight{background:#fff;color:#171b1b;border:0;border-top:1px solid #171b1b;border-bottom:1px solid #171b1b;padding:clamp(2rem,4vw,3.5rem) 0}
.project-insight .detail-label{color:#171b1b}
.project-insight p{color:#171b1b}
.project-insight a{background:#fff;color:#171b1b;border-color:#171b1b}
.project-insight a span{color:#171b1b}
.case-aspects>div{background:#fff;border:1px solid #171b1b48;border-top:1px solid #171b1b48}
.case-aspects>div:before{display:inline-grid;place-items:center;width:2rem;height:2rem;margin-bottom:1.2rem;border:1px solid #171b1b;border-radius:50%;background:#fff;color:#171b1b}
.case-reading{background:#fff;border-top:1px solid #171b1b;padding:clamp(2rem,4vw,4rem) 0}
.project-scope li:hover{background:transparent;padding-left:.3rem}
.case-aspects>div:hover{box-shadow:0 7px 0 #171b1b15}
.detail-figure{border-top:0}


main h1 em,main h2 em,main h2 i{background-image:linear-gradient(to bottom,transparent 78%,var(--lime,#dcfa68) 78%,var(--lime,#dcfa68) 91%,transparent 91%);background-repeat:no-repeat;background-position:bottom;background-size:100% 100%;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero h1 em,.inside-intro h1 em,.about h2 em{background-image:linear-gradient(to bottom,transparent 78%,#fff 78%,#fff 91%,transparent 91%)}
.intro h2 i{background-image:linear-gradient(to bottom,transparent 78%,var(--lime,#dcfa68) 78%,var(--lime,#dcfa68) 91%,transparent 91%)}
.home-proof h2 em,.identity-context h2 em{background-image:linear-gradient(to bottom,transparent 78%,var(--lime,#dcfa68) 78%,var(--lime,#dcfa68) 91%,transparent 91%)}


.hero{isolation:isolate}
.hero:after{display:none!important}
.hero .hero-wire{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.8;mask-image:linear-gradient(90deg,transparent 21%,#000 58%);-webkit-mask-image:linear-gradient(90deg,transparent 21%,#000 58%)}
.hero .hero-top,.hero .hero-main,.hero .hero-bottom{position:relative;z-index:1}
@media(max-width:700px){.hero .hero-wire{opacity:.34;mask-image:linear-gradient(90deg,transparent,#000 70%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 70%)}}

.end-cta h2 em{background-image:linear-gradient(to bottom,transparent 78%,#fff 78%,#fff 91%,transparent 91%)}
.hero h1 em,.hero h2 em,.hero h2 i,
.inside-intro h1 em,.inside-intro h2 em,.inside-intro h2 i,
.about h1 em,.about h2 em,.about h2 i,
.contact h1 em,.contact h2 em,.contact h2 i,
.identity-context h1 em,.identity-context h2 em,.identity-context h2 i,
.service-note h2 em,.service-note h2 i {background-image:none!important;box-shadow:none!important}


.project-scope li{position:relative;padding-right:2.6rem;transition:transform .25s ease,border-color .25s ease}
.project-scope li::before{transition:background .25s ease,color .25s ease,transform .25s ease}
.project-scope li::after{content:"↗";position:absolute;right:.35rem;top:50%;font-size:1.35rem;font-weight:500;line-height:1;color:#171b1b;opacity:0;transform:translate(-7px,-50%);transition:opacity .25s ease,transform .25s ease}
.project-scope li:hover{background:transparent;padding-left:.3rem;transform:translateX(6px);border-bottom-color:#171b1b}
.project-scope li:hover::before{background:#171b1b;color:var(--lime,#dcfa68);transform:rotate(-9deg)}
.project-scope li:hover::after{opacity:1;transform:translate(0,-50%)}
.case-reading h3::before{content:none!important;display:none!important}

@media(max-width:700px){.header .menu-trigger{margin-left:auto;flex:none}}
@media(prefers-reduced-motion:reduce){.project-scope li,.project-scope li::before,.project-scope li::after{transition:none!important}.project-scope li:hover{transform:none}}
main :is(h1,h2) :is(em,i),
main :is(.hero,.intro,.work,.about,.contact,.inside-intro,.end-cta,.method-inline,.bio-grid,.service-process,.home-proof,.portfolio-context,.services-context,.about-continuation,.contact-guidance,.site-faq,.reviews-section) :is(h1,h2) :is(em,i){margin:.04em .035em .05em;line-height:1.08}
.inside-intro h1,.inside-intro.service-intro h1{line-height:1.1}
.intro{padding-top:clamp(4.5rem,7vw,7rem);padding-bottom:clamp(3rem,5vw,4.5rem)}
.hero .hero-wire{opacity:.75;mask-image:linear-gradient(90deg,transparent 15%,#000 60%);-webkit-mask-image:linear-gradient(90deg,transparent 15%,#000 60%)}
@media(max-width:700px){.hero .hero-wire{opacity:.4}}
.section-kicker,.editorial-lens>span,.identity-context>span,.detail-label{font-size:13.92px!important;line-height:1.45}
.faq-items summary,.service-faq summary{font-size:1.125rem;line-height:1.45}
.faq-items details p,.service-faq details p{font-size:1.04rem;line-height:1.68}
.faq-items summary span,.service-faq summary span{width:38px;height:38px;flex:none}


.service-depth{border-top:0;padding-top:1rem}

.contact-page .email-link:hover,.contact-page .email-link:focus-visible{color:var(--lime,#dcfa68);border-bottom-color:var(--lime,#dcfa68)}
.contact-page .email-link:hover span,.contact-page .email-link:focus-visible span{color:inherit}


.inside-grid .visual-grid .visual-card[hidden]{display:none!important}






.home-proof>span{font-size:13.92px!important;line-height:1.45}








#projets-igweb{scroll-margin-top:7rem}


.detail>.outbound{display:flex;width:100%;min-height:94px;margin:clamp(2rem,4vw,3.5rem) 0;padding:1.2rem 1.4rem 1.2rem clamp(1.4rem,3vw,2.5rem);border:1px solid #1c2421;border-radius:0;background:#1c2421;color:#fff;font:700 clamp(1.15rem,2.1vw,1.65rem)/1.2 "DM Sans",sans-serif;letter-spacing:-.02em;text-decoration:none;box-shadow:none;transition:background .25s,color .25s,transform .25s}
.detail>.outbound span{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid #171b1b;border-radius:50%;background:var(--lime,#dcfa68);color:#171b1b;font-size:1.5rem;transition:transform .25s}
.detail>.outbound:hover,.detail>.outbound:focus-visible{transform:translateY(-3px);background:#303e35;color:#fff;box-shadow:0 9px 0 #1c242126}
.detail>.outbound:hover span,.detail>.outbound:focus-visible span{transform:translate(3px,-3px);color:#171b1b}
@media(max-width:700px){.detail>.outbound{min-height:78px;padding:1rem 1.1rem;gap:1rem}.detail>.outbound span{width:40px;height:40px;font-size:1.2rem}}


.inside-grid .visual-card:target{scroll-margin-top:7rem}
.service-related .related-title small{display:block;margin-top:.3rem;font-size:13.92px;font-weight:500;color:#565d59}



/* Composants de la marque iGweb */
.footer-logo{font-size:clamp(1.45rem,2.4vw,2.2rem);letter-spacing:-.075em;font-weight:800;line-height:1;color:inherit}.header-phone{font-size:.78rem;font-weight:700;white-space:nowrap;color:inherit;text-decoration:none;margin-inline:1rem}.hero-seo-line{display:block;font-family:inherit;font-style:normal;font-size:13.92px;font-weight:700;line-height:1.45;letter-spacing:.055em;text-transform:uppercase;margin-bottom:1.4rem}.service-tagline{font-family:Georgia,serif;font-style:italic;font-size:clamp(1.6rem,3.5vw,3.3rem);line-height:1.14}.project-navigation{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:2rem 0;border-block:1px solid currentColor}.project-navigation a,.service-related-projects a{color:inherit;text-decoration:underline;text-decoration-color:#dbf35b;text-underline-offset:.25em}.service-related-projects{padding:2rem 0;border-top:1px solid #999;display:flex;flex-direction:column;gap:1rem}.visual-card[hidden]{display:none!important}.detail-header h1{font-size:clamp(2.5rem,5vw,5rem)}@media(max-width:850px){.header-phone{font-size:.78rem;padding:.55rem .65rem}}

.header-phone{margin-left:auto;display:inline-flex;align-items:center;padding:.65rem 1rem;border:1px solid #dbf35b;border-radius:999px;background:#dbf35b;color:#171b1b;font-size:.9rem;font-weight:800;white-space:nowrap;transition:transform .2s,box-shadow .2s}.header-phone:hover,.header-phone:focus-visible{transform:translateY(-2px);box-shadow:0 4px 0 #fff}.footer-address{font-style:normal;font-size:.8rem;line-height:1.6}.service-areas{margin-top:1rem}.contact-phone{padding:2rem}@media(max-width:850px){.header-phone{font-size:.78rem;padding:.55rem .65rem}}

@media(max-width:600px){.header .brand-copy{display:none}.header-phone{font-size:.78rem;padding:.55rem .6rem}.header{gap:.5rem}}@media(max-width:370px){.header-phone{font-size:.73rem;padding:.52rem .45rem}}
.questionnaire-intro{padding-bottom:2rem}.questionnaire-form{width:min(1050px,92%);margin:0 auto 5rem;min-height:1100px}.questionnaire-form iframe{display:block;width:100%;border:0}.reviews-section .elfsight-app-c4597b70-1550-441e-b7ce-3bc1877be6d3{min-height:250px}.contact-phone a{color:inherit;text-decoration-color:#dbf35b;text-decoration-thickness:.18em;text-underline-offset:.15em;font-weight:800}.visual-card-content h3 b{display:grid;place-items:center}.portfolio-context{margin-bottom:3rem}


/* En-tête et navigation entre les projets */
.header{gap:clamp(.55rem,1.4vw,1.4rem)}
.header .signature{flex:0 1 auto;min-width:0;max-width:min(44vw,330px)}
.header .brand-copy{min-width:0}
.header .brand-copy small{white-space:nowrap}
.header-phone{order:1;flex:none;margin:0 0 0 auto}
.header .nav-contact{order:2;flex:none;margin-left:0;white-space:nowrap}
.header .menu-trigger{order:3;flex:none;margin-left:0}
@media(max-width:1120px){.header .nav-contact{display:none}.header .signature{max-width:50vw}}
@media(max-width:740px){.header .brand-copy{display:none}.header .signature{max-width:none}.header-phone{font-size:.78rem;padding:.55rem .65rem}}
@media(max-width:410px){.header{padding-inline:3%;gap:.35rem}.header-phone{font-size:.72rem;padding:.48rem .42rem}.header .menu-trigger{min-width:44px;width:44px;height:44px}}

.detail{padding-bottom:0}
.detail .project-insight{margin-bottom:0}
.case-more{padding-top:clamp(2.75rem,4vw,4.5rem)}
.project-navigation{display:grid;grid-template-columns:1fr minmax(220px,.9fr) 1fr;gap:1px;margin:clamp(2rem,4vw,4rem) 5%;padding:1px;background:#39433e;border:0;color:#fff}
.project-navigation a{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:172px;min-width:0;padding:1.6rem clamp(1rem,2vw,2rem);background:#1c2421;color:#fff;text-decoration:none;transition:background .25s,color .25s}
.project-navigation .project-nav-label{display:block;margin-bottom:1rem;font-size:.72rem;line-height:1.3;font-weight:800;letter-spacing:.095em;text-transform:uppercase;color:#dcfa68}
.project-navigation strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-right:1.2rem;font-size:clamp(1.05rem,1.4vw,1.45rem);line-height:1.2;letter-spacing:-.025em}
.project-navigation .project-nav-arrow{position:absolute;right:1.3rem;bottom:1.35rem;font-size:1.4rem;transition:transform .25s}
.project-navigation a:hover,.project-navigation a:focus-visible{background:#dcfa68;color:#1c2421}
.project-navigation a:hover .project-nav-label,.project-navigation a:focus-visible .project-nav-label{color:#1c2421}
.project-navigation a:hover .project-nav-arrow,.project-navigation a:focus-visible .project-nav-arrow{transform:translate(3px,-3px)}
.project-navigation .project-nav-all{background:#28332d}
@media(max-width:800px){.project-navigation{grid-template-columns:1fr 1fr}.project-navigation .project-nav-all{grid-column:1/-1;grid-row:1}.project-navigation a{min-height:145px}}
@media(max-width:480px){.project-navigation{grid-template-columns:1fr}.project-navigation .project-nav-all{grid-column:1;grid-row:auto}.project-navigation a{min-height:122px}}

.service-article>a.all-work{margin-bottom:clamp(2.5rem,4vw,4rem)}
.service-article>.service-related-projects{margin-top:0}

.project-navigation:has(>a:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:480px){.project-navigation:has(>a:nth-child(2):last-child){grid-template-columns:1fr}}

/* Cartes des six services de l'accueil */
.intro .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2.4rem}
.intro .service-grid article{min-width:0}
.intro .service-grid article:nth-child(3n/**/+1){border-left:0;padding-left:0}
.intro .service-grid article:nth-child(n/**/+4){border-top:1px solid #171b1b60;padding-top:2rem}
.intro .service-grid .service-card-link{display:block;height:100%;color:inherit;text-decoration:none}
.intro .service-grid .service-card-link:focus-visible{outline:2px solid #171b1b;outline-offset:.5rem}
.intro .service-grid article:hover,.intro .service-grid article:focus-within{transform:translateY(-7px)}
.intro .service-grid article:hover h3,.intro .service-grid article:focus-within h3{box-shadow:inset 0 -.13em 0 var(--lime,#dcfa68)}
@media(max-width:1020px){.intro .service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.intro .service-grid article:nth-child(n){border-left:0;padding-left:0;padding-right:1rem}.intro .service-grid article:nth-child(even){border-left:1px solid #171b1b60;padding-left:1.5rem}.intro .service-grid article:nth-child(n/**/+3){border-top:1px solid #171b1b60;padding-top:2rem}}
@media(max-width:700px){.intro .service-grid{display:grid;grid-template-columns:1fr;row-gap:0}.intro .service-grid article:nth-child(n){border-left:0;padding:1.8rem 0;border-bottom:1px solid #171b1b60}.intro .service-grid article:nth-child(n/**/+2){border-top:0}}

/* Galeries des fiches réalisations */



.project-gallery{padding:clamp(2rem,4vw,4.5rem) 5% 5rem}
.project-gallery h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.15;margin:0 0 2rem;letter-spacing:-.04em}
.project-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,2rem)}
.project-gallery figure{min-width:0;margin:0}
.project-gallery img{display:block;width:100%;height:auto;background:#f3f3ef}
.project-gallery figcaption{margin-top:.65rem;font-size:.78rem;color:#505453}
@media(max-width:700px){.project-gallery-grid{grid-template-columns:1fr}}






/* Logo iGweb animé */
.brand-logo{display:block;width:clamp(105px,9vw,136px);height:auto;flex:none}.footer-logo .brand-logo{width:138px}.signature{min-width:0}@media(max-width:700px){.brand-logo{width:110px}.footer-logo .brand-logo{width:125px}}
