@charset "UTF-8";
:root{--ink:#1c1d23;--muted:#595b64;--accent:#bc3e2c;--line:#e1e2e6;--pad:clamp(1.3rem,5.4vw,6.5rem)}
*{box-sizing:border-box}html{scroll-padding-top:2rem}body{margin:0;background:#fff;color:var(--ink);font:1rem/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.055em;line-height:1.08}h2{font-size:clamp(2.6rem,4.7vw,5rem);font-weight:500}h3{font-size:1.65rem;font-weight:500;letter-spacing:-.035em}em{font-style:normal;color:var(--accent)}.eyebrow{font-size:.875rem;line-height:1.6;letter-spacing:.1em;font-weight:500;color:var(--muted)}
.site-header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.65rem var(--pad);border-bottom:1px solid var(--line);background:white}.brand{display:inline-flex;flex:none}.brand-lockup{display:flex;flex-direction:column;gap:.3rem}.brand-lockup strong{font-size:2.25rem;line-height:1;letter-spacing:-.065em}.brand-lockup>span{font-size:.75rem;letter-spacing:.16em}.brand-dot{color:var(--accent)}.site-header nav{display:flex;align-items:center;gap:2rem}.site-header nav>a:not(.nav-cta){font-size:1rem}.site-header nav>a:hover{color:var(--accent)}.nav-cta,.button{display:inline-flex;align-items:center;gap:1.5rem;border:1px solid var(--line);border-radius:3rem;font-size:1rem;padding:.35rem .35rem .35rem 1.35rem;min-height:3.35rem;transition:transform .2s}.nav-cta span,.button span{width:2.6rem;height:2.6rem;border-radius:50%;background:var(--accent);color:white;display:grid;place-items:center;font-size:1.5rem;line-height:1}.button:hover{transform:translateY(-3px)}.button.coral{background:var(--accent);color:white;border-color:var(--accent)}.button.coral span{background:white;color:var(--accent)}.menu-toggle{display:none}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:1rem;padding:4.5rem var(--pad) 9.5rem;max-width:1800px;margin:auto;min-height:720px;background:white}.hero-copy{position:relative;z-index:1}.hero .eyebrow{margin-bottom:2rem}.hero h1{font-size:clamp(3rem,6.65vw,7.45rem);line-height:1.1;font-weight:600;letter-spacing:-.065em}.headline-first,.headline-second{display:block;white-space:nowrap}.headline-second{padding-left:.28em}.hero-introduction{display:grid;grid-template-columns:minmax(0,1fr) 7rem;align-items:center;gap:2rem;max-width:34rem;margin-top:2rem}.intro{font-size:1.1rem;line-height:1.65;color:var(--muted)}.hero .round-button{height:7rem;width:7rem;display:flex;flex-direction:column;justify-content:center;gap:.5rem;padding:1rem;border:1px solid #aaaab0;background:white;border-radius:50%;font-size:.875rem;line-height:1.25;text-align:center}.hero .round-button span{background:none;color:inherit;width:auto;height:auto;border-radius:0;line-height:1.25;font-size:.875rem;display:block}.hero .round-button .round-arrow{font-size:1.6rem;color:var(--accent)}.hero-aside{position:relative;align-self:center;padding-top:1rem}.coral-loop{width:100%;height:auto}.hello-card{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;background:white;border:1px solid var(--line);padding:1.2rem 1.5rem;max-width:17rem;margin:-1.3rem 0 0 auto;position:relative;border-radius:0 1.5rem 0 1.5rem;line-height:1.35}.hello-card strong{font-size:1.5rem;letter-spacing:-.04em;font-weight:500}.hello-arrow{font-size:2rem;color:var(--accent)}.hello-card:hover{border-color:var(--accent)}.hero-bottom{position:absolute;bottom:2.5rem;left:var(--pad);right:var(--pad);display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.hero-bottom p{font-size:.875rem;color:var(--muted)}.scroll-link{display:flex;align-items:center;gap:1rem;font-size:.75rem;letter-spacing:.08em}.scroll-link span{font-size:1.5rem;color:var(--accent)}.service-strip{display:flex;align-items:center;justify-content:space-around;gap:1.5rem;padding:1.5rem var(--pad);border-block:1px solid var(--line);font-size:1rem;background:white}.service-strip span:before{content:"✳";color:var(--accent);margin-right:1.6rem}
.section{padding:6rem var(--pad);background:white}.split-heading{display:grid;grid-template-columns:.6fr 2fr;gap:3rem;max-width:1440px;margin:auto}.split-heading>.eyebrow{padding-top:.5rem}.split-heading h2{max-width:60rem}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:1.8rem;margin-top:2rem;color:var(--muted);max-width:56rem}.about-copy .button{grid-column:1/-1;justify-self:start;margin-top:.3rem}.strategy-visual{max-width:1440px;margin:3.5rem auto 0}.strategy-visual img{width:100%;height:clamp(25rem,44vw,43rem);object-fit:cover;object-position:center 48%;border-radius:0 0 6rem 0}.strategy-visual figcaption{display:flex;justify-content:space-between;gap:1.5rem;padding-top:1rem;font-size:.875rem;color:var(--muted)}.strategy-visual figcaption>span:first-child{letter-spacing:.06em;font-size:.75rem}
.services{border-top:1px solid var(--line)}.section-heading{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:1.5rem 5rem;align-items:end}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{color:var(--muted);font-size:1.075rem;max-width:30rem}.service-grid{max-width:1440px;margin:3.2rem auto 0}.service-card{display:grid;grid-template-columns:2rem 1.05fr 1.2fr 3.3rem;gap:2rem;align-items:start;padding:2.7rem 0;border-top:1px solid var(--line)}.service-card:last-child{border-bottom:1px solid var(--line)}.service-number{color:var(--accent);font-size:.875rem;padding-top:.4rem}.service-card h3{font-size:clamp(2rem,3vw,3.1rem)}.service-card p{color:var(--muted)}.service-card ul{list-style:none;padding:0;margin:1.1rem 0 0;display:flex;flex-wrap:wrap;gap:.55rem;font-size:.875rem}.service-card li{border:1px solid var(--line);border-radius:2rem;padding:.25rem .7rem}.service-link span{display:grid;place-items:center;width:3.3rem;height:3.3rem;border:1px solid #a7a8ae;border-radius:50%;font-size:1.7rem}.service-link:hover{color:var(--accent)}
.creative-section{padding-top:1rem}.creative-heading{max-width:1440px;margin:0 auto 2.6rem}.creative-heading .eyebrow{margin-bottom:1.5rem}.journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0 auto;max-width:1440px;border-block:1px solid var(--line)}.journey li{padding:2rem 2rem 2rem 0}.journey li+li{border-left:1px solid var(--line);padding-left:2rem}.journey li>span{color:var(--accent);font-size:.875rem;letter-spacing:.06em}.journey h3{margin:1.6rem 0 1rem;font-size:1.7rem}.journey p{color:var(--muted)}.approach{display:grid;grid-template-columns:1fr 1fr;gap:5rem;border-top:1px solid var(--line)}.approach .eyebrow,.faq-heading .eyebrow{margin-bottom:1.5rem}.section-intro{color:var(--muted);font-size:1.1rem;max-width:30rem;margin-top:1.6rem}.underlined-link{display:inline-flex;align-items:center;gap:1.5rem;margin-top:2rem;padding-bottom:.5rem;border-bottom:1px solid #909199}.underlined-link span{color:var(--accent);font-size:1.5rem}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:1.7rem;padding:1.7rem 0;border-top:1px solid var(--line)}.steps li>span{font-size:1.2rem;color:var(--accent)}.steps h3{margin-bottom:.7rem}.steps p{color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 1fr;gap:5rem;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:1.5rem 0}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;font-size:1.125rem;font-weight:500;line-height:1.4;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:1.6rem;font-weight:400;color:var(--accent);transition:transform .2s;flex:none}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding-top:1rem}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end;border-top:1px solid var(--line)}.contact .eyebrow{margin-bottom:1.7rem}.contact h2{font-size:clamp(5rem,9vw,10rem);font-weight:500;line-height:.98}.contact-details{max-width:31rem;min-width:0;justify-self:end}.contact-details>p{font-size:1.15rem;color:var(--muted);margin-bottom:1.8rem}.email-link{border-bottom:1px solid #96969e;overflow-wrap:anywhere;padding-bottom:.3rem}.contact-details .button{margin-top:2rem}.contact-heading{min-width:0}footer{padding:3rem var(--pad);display:flex;justify-content:space-between;align-items:center;gap:2rem;border-top:1px solid var(--line);background:white}footer>p{font-size:.875rem;color:var(--muted)}footer>div{display:flex;flex-direction:column;text-align:right;gap:.4rem;min-width:0}.domain-label{font-size:.875rem;overflow-wrap:anywhere}footer small{font-size:.75rem;color:var(--muted)}.skip-link{position:fixed;left:1rem;top:1rem;z-index:50;padding:1rem;background:white;color:var(--ink);border:1px solid var(--accent)}.skip-link:not(:focus){clip-path:inset(50%);height:1px;width:1px;overflow:hidden;padding:0;white-space:nowrap}
@media(min-width:1700px){.section{padding-inline:calc((100vw - 1440px)/2)}}
@media(max-width:1100px){.site-header nav{gap:1.2rem}.site-header nav>a:not(.nav-cta){font-size:.875rem}.hero{min-height:640px;padding-top:3.5rem}.hero-introduction{gap:1.3rem;grid-template-columns:minmax(0,1fr) 6.3rem}.hero .round-button{height:6.3rem;width:6.3rem}.intro{font-size:1rem}.section{padding-block:4.5rem}.split-heading{grid-template-columns:.5fr 2fr;gap:2rem}.section-heading{gap:1.5rem 2.5rem}.service-card{gap:1.3rem;grid-template-columns:1.5rem 1fr 1.2fr 3rem}.service-link span{width:3rem;height:3rem}.approach,.faq,.contact{gap:3rem}.creative-section{padding-top:0}.journey li{padding-right:1.4rem}.journey li+li{padding-left:1.4rem}.journey h3{font-size:1.5rem}}
@media(max-width:850px){.site-header nav{gap:1rem}.site-header .brand-lockup strong{font-size:1.9rem}.site-header .brand-lockup>span{letter-spacing:.09em}.nav-cta{gap:.7rem;padding-left:1rem}.split-heading{grid-template-columns:1fr;gap:1.5rem}.faq{grid-template-columns:1fr;gap:2.5rem}.hello-card{padding:1rem;font-size:.875rem}.hello-card strong{font-size:1.25rem}.service-strip{font-size:.875rem}.service-strip span:before{margin-right:.8rem}footer{flex-wrap:wrap}footer>p{order:3;flex-basis:100%}}
@media(max-width:700px){.site-header{padding-block:1.3rem;gap:1rem}.menu-toggle{display:flex;gap:.8rem;align-items:center;background:white;border:1px solid #aaaab0;border-radius:3rem;color:var(--ink);padding:.65rem 1rem;font:inherit;font-size:.875rem;cursor:pointer}.menu-lines{width:1rem;height:.5rem;border-block:1px solid var(--ink)}.site-header nav{display:none;position:absolute;top:calc(100% - .2rem);left:var(--pad);right:var(--pad);padding:1rem;background:white;border:1px solid var(--line);border-radius:1rem;box-shadow:0 15px 50px #22222212;flex-direction:column;align-items:stretch;gap:0}.menu-toggle[aria-expanded="true"]+nav{display:flex}.site-header nav>a:not(.nav-cta){display:block;padding:.8rem 1rem;font-size:1rem}.site-header nav>.nav-cta{display:flex;justify-content:space-between;margin-top:.5rem}.hero{display:block;padding-top:2.7rem;padding-bottom:2rem;min-height:0}.hero h1{font-size:clamp(2.55rem,10vw,4.5rem);line-height:1.13}.headline-second{padding-left:.1em}.hero .eyebrow{font-size:.75rem;margin-bottom:1.4rem;letter-spacing:.07em}.hero-introduction{margin-top:1.6rem;grid-template-columns:minmax(0,1fr) 6rem;gap:1rem}.hero .round-button{height:6rem;width:6rem}.hero-aside{max-width:27rem;width:90%;margin:1rem auto 0;padding:0}.hello-card{margin-top:-2rem;max-width:14rem}.hero-bottom{position:static;margin-top:2.2rem}.scroll-link{display:none}.service-strip{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.65rem 1.2rem;padding-block:1.2rem}.service-strip span{font-size:.875rem}.section{padding-block:3.5rem}.about-copy{grid-template-columns:1fr;gap:1.2rem}.about-copy .button{grid-column:auto}.strategy-visual{margin-top:2.5rem}.strategy-visual img{height:22rem;border-radius:0 0 3rem 0;object-position:45% center}.strategy-visual figcaption{flex-direction:column;gap:.4rem}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:1.5rem}.section-heading>p:last-child{margin-top:1.5rem;font-size:1rem}.service-grid{margin-top:2rem}.service-card{grid-template-columns:1.3rem minmax(0,1fr) 2.5rem;gap:1rem;padding-block:2rem}.service-number{grid-column:1;grid-row:1}.service-card h3{grid-column:2;grid-row:1;font-size:clamp(1.65rem,7.6vw,2.7rem)}.service-detail{grid-column:2/-1;grid-row:2}.service-link{grid-column:3;grid-row:1}.service-link span{width:2.5rem;height:2.5rem;font-size:1.5rem}.creative-section{padding-top:0}.journey{grid-template-columns:1fr}.journey li,.journey li+li{padding:1.7rem 0;border-left:0}.journey li+li{border-top:1px solid var(--line)}.journey h3{margin-top:1rem;font-size:1.7rem}.approach,.contact{grid-template-columns:1fr;gap:2.5rem}.section-intro{font-size:1rem}.underlined-link{gap:1rem;font-size:1rem}.steps li{gap:1.3rem}.steps h3{font-size:1.5rem}.contact h2{font-size:clamp(5rem,23vw,8rem)}.contact-details{justify-self:start;max-width:none}.contact-details>p{font-size:1rem}.email-link{font-size:1rem}.contact-details .button{margin-top:1.6rem}footer{padding-block:2.3rem;align-items:flex-start}footer>div{text-align:left}.brand-lockup strong{font-size:2rem}}
@media(max-width:360px){.hero-introduction{display:block}.hero .round-button{margin-top:1.3rem}.hero h1{font-size:10.3vw}.headline-second{padding-left:0}.hero-aside{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Original service artwork and a light, RGB pointer accent. */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.service-card,.service-card:last-child{display:flex;flex-direction:column;gap:0;padding:1.2rem 1.2rem 1.5rem;border:1px solid var(--line);border-radius:1.6rem;min-width:0;background:#fff;transition:border-color .3s,box-shadow .3s}
.service-art{overflow:hidden;border-radius:.8rem;width:100%;aspect-ratio:1;background:#fff;margin-bottom:1.5rem}
.service-art img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.6,.3,1)}
.service-card .service-number{padding:0 0 .75rem;letter-spacing:.12em;font-size:.75rem}
.service-card h3{font-size:clamp(1.7rem,2.45vw,2.5rem);margin-bottom:1.25rem}
.service-card .service-detail{flex:1;font-size:1rem}
.service-card ul{font-size:.75rem;gap:.4rem}
.service-card .service-link{align-self:flex-end;margin-top:1.5rem}
.service-card .service-link span{background:#fff;border-color:var(--line);color:var(--accent)}
.approach-visual{margin-top:2.4rem;max-width:35rem}
.approach-visual img{width:100%;height:auto;border-radius:1.5rem}
.approach-visual figcaption{font-size:.75rem;color:var(--muted);letter-spacing:.09em;margin-top:.85rem}
.contact-details{display:flex;flex-direction:column;align-items:flex-start}
.rgb-cursor{position:fixed;top:0;left:0;width:0;height:0;z-index:2147483000;pointer-events:none!important;opacity:0;transition:opacity .2s;will-change:transform;contain:layout style}
.rgb-cursor.is-visible{opacity:1}
.rgb-cursor:before{content:"";position:absolute;width:94px;height:94px;left:-47px;top:-47px;border-radius:50%;background:conic-gradient(#ff645e,#32d7b5,#548cff,#e470ff,#ff645e);filter:blur(22px);opacity:.18;pointer-events:none}
.rgb-cursor-ring{position:absolute;left:-18px;top:-18px;width:36px;height:36px;border-radius:50%;background:conic-gradient(#f45255,#2fc79e,#527bf9,#d65ceb,#f45255);padding:1.5px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.8;transition:width .2s,height .2s,left .2s,top .2s;pointer-events:none}
.rgb-cursor.is-interactive .rgb-cursor-ring{width:50px;height:50px;left:-25px;top:-25px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.service-card:hover{border-color:#c3b3af;box-shadow:0 18px 50px #37211b09}.service-card:hover .service-art img{transform:scale(1.035)}}
@media(max-width:1000px) and (min-width:701px){.service-grid{gap:1rem}.service-card,.service-card:last-child{padding:1rem}.service-card h3{font-size:1.7rem}.service-card .service-detail{font-size:.9375rem}}
@media(max-width:700px){.service-grid{grid-template-columns:1fr;gap:1.5rem}.service-card,.service-card:last-child{padding:1.2rem}.service-art{aspect-ratio:1.15}.service-card h3{font-size:2rem}.approach-visual{max-width:none;margin-top:2rem}}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.rgb-cursor{display:none!important}}

/* Service detail pages share the homepage's type, spacing and colour palette. */
.service-card .service-link{display:inline-flex;align-items:center;gap:1rem;align-self:flex-start;font-size:.875rem}
.service-card h3 a:hover{color:var(--accent)}
footer{flex-wrap:wrap}.footer-services{display:flex;flex-wrap:wrap;gap:1rem 2rem;width:100%;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.875rem;order:5}.footer-services a:hover{color:var(--accent)}
.service-hero{padding-top:2rem;padding-bottom:0}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;font-size:.75rem;color:var(--muted);margin-bottom:2.5rem}.breadcrumbs a:hover{color:var(--accent)}
.service-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:3rem;align-items:center;max-width:1440px;margin:auto}
.service-hero-copy{min-width:0}.service-hero-copy>.eyebrow{margin-bottom:1.5rem}.service-hero h1{font-size:clamp(2.5rem,4.6vw,5.2rem);font-weight:500;line-height:1.08;letter-spacing:-.06em}.service-lead{color:var(--muted);font-size:1.125rem;line-height:1.7;margin:1.6rem 0 1.8rem;max-width:35rem}.service-hero .button{font-size:.9375rem}.service-topics{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;margin:1.5rem 0 0;padding:0;font-size:.75rem;color:var(--muted)}.service-topics li:before{content:"↗";color:var(--accent);padding-right:.4rem}.service-hero-art{min-width:0}.service-hero-art img{width:100%;height:auto}.service-hero-art figcaption{border-top:1px solid var(--line);padding-top:.7rem;font-size:.75rem;color:var(--muted);letter-spacing:.04em}
.service-switcher{display:flex;flex-wrap:wrap;gap:.7rem 2rem;max-width:1440px;margin:3.5rem auto 0;padding:1.3rem 0;border-block:1px solid var(--line);font-size:.875rem}.service-switcher a{padding:.4rem 0;color:var(--muted)}.service-switcher a[aria-current],.service-switcher a:hover{color:var(--accent)}.service-switcher a[aria-current]{box-shadow:0 1px var(--accent)}
.scope-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;max-width:1440px;margin:3rem auto 0}.scope-card{padding:1.7rem 1.3rem;border:1px solid var(--line);border-radius:1rem}.scope-card .eyebrow{color:var(--accent)}.scope-card h3{font-size:1.5rem;margin:1.8rem 0 1rem}.scope-card p{color:var(--muted);font-size:.9375rem}.scope-note{max-width:1440px;margin:1.4rem auto 0;color:var(--muted);font-size:.8125rem}
.service-feature{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:4rem;padding-top:0}.service-feature .eyebrow{margin-bottom:1.5rem}.service-feature h2{font-size:clamp(2.4rem,4vw,4rem)}.service-feature-art img{width:100%;height:auto;border-radius:0 2rem 2rem 2rem}
.service-fit{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:5rem;align-items:start;border-top:1px solid var(--line)}.service-fit h2{font-size:clamp(2.3rem,3.6vw,3.8rem);margin-top:1.5rem}.fit-list{list-style:none;padding:0;margin:2rem 0 0}.fit-list li{padding:1rem 0 1rem 1.7rem;position:relative;border-top:1px solid var(--line);color:var(--muted)}.fit-list li:before{content:"↗";position:absolute;left:0;color:var(--accent)}.example-card{padding:2.2rem;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:0 0 1.5rem 1.5rem}.example-card .eyebrow{font-size:.75rem;color:var(--accent)}.example-card h3{font-size:1.8rem;margin:1.5rem 0 1rem}.example-card p{color:var(--muted)}
.service-contact{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:4rem;align-items:end;border-top:1px solid var(--line)}.service-contact .eyebrow{margin-bottom:1.5rem}.service-contact h2{font-size:clamp(2.5rem,4.3vw,4.7rem)}.related-section{padding-top:2rem}.related-section>.eyebrow{margin-bottom:1.25rem}.related-section h2{font-size:clamp(2rem,3vw,3rem)}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}.related-service{display:flex;gap:1.5rem;align-items:center;padding:1.1rem;border:1px solid var(--line);border-radius:1rem;min-width:0}.related-service img{width:6rem;height:6rem;object-fit:cover;flex:none;border-radius:.5rem}.related-service>span{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;font-size:1.25rem;line-height:1.3}.related-service>span>span{font-size:1.6rem;color:var(--accent)}.related-service:hover{border-color:var(--accent)}
@media(max-width:1100px){.scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-hero-grid{gap:1.5rem}.service-feature,.service-fit,.service-contact{gap:2.5rem}.service-lead{font-size:1rem}.service-hero h1{font-size:clamp(2.5rem,4.6vw,4.8rem)}}
@media(max-width:700px){.service-hero-grid,.service-feature,.service-fit,.service-contact{grid-template-columns:1fr;gap:2.3rem}.service-hero h1{font-size:clamp(2.35rem,8.9vw,3.8rem);line-height:1.12}.service-hero-art{width:100%;max-width:27rem;margin:auto}.breadcrumbs{margin-bottom:2rem;gap:.4rem;font-size:.6875rem}.service-hero .button{font-size:.875rem;gap:.8rem;max-width:100%}.service-switcher{gap:.6rem 1.5rem;margin-top:2.5rem;font-size:.8125rem}.scope-grid{gap:1rem;margin-top:2rem}.scope-card{padding:1.3rem 1rem}.scope-card h3{font-size:1.35rem;margin-top:1.2rem}.service-feature{padding-top:0}.service-feature-art img{border-radius:1.5rem}.service-fit h2{font-size:2.3rem}.example-card{padding:1.5rem}.service-contact .contact-details{justify-self:start}.related-grid{grid-template-columns:1fr}.related-service{gap:1rem}.related-service img{width:4.5rem;height:4.5rem}.related-service>span{font-size:1.125rem}.related-section{padding-top:1rem}}
@media(max-width:420px){.scope-grid{grid-template-columns:1fr}.scope-card{padding:1.5rem}.scope-card h3{font-size:1.5rem}.service-topics{gap:.5rem .8rem}.service-contact h2{font-size:2.5rem}}

/* Searchable, readable FAQ rotation. All answers remain available without JS. */
.faq-library{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2.3rem 4rem;align-items:end}
.faq-library [hidden]{display:none!important}.faq-library-heading .eyebrow{margin-bottom:1.4rem}.faq-library-heading h2{font-size:clamp(2.6rem,4.2vw,4.4rem)}.faq-library-heading>p:last-child{max-width:37rem;color:var(--muted);margin-top:1.5rem}
.faq-tools{display:grid;gap:1rem;align-self:end}.faq-tools label{display:flex;flex-direction:column;gap:.45rem;font-size:.8125rem;color:var(--muted)}.faq-tools input,.faq-tools select{width:100%;min-width:0;padding:.95rem 1rem;border:1px solid #b8b9bf;border-radius:.65rem;font:inherit;font-size:1rem;line-height:1.5;color:var(--ink);background:white}.faq-tools input:focus-visible,.faq-tools select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.faq-answers{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start;min-height:12rem}.faq-entry{border:1px solid var(--line);border-radius:1rem;background:white;overflow:hidden}.faq-entry summary{display:flex;align-items:center;justify-content:space-between;gap:1.3rem;min-height:5.7rem;list-style:none;cursor:pointer;font-size:1.0625rem;line-height:1.5;padding:1.4rem 1.5rem}.faq-entry summary::-webkit-details-marker{display:none}.faq-question{font-size:inherit;color:var(--ink)}.faq-plus{font-size:1.6rem;line-height:1;color:var(--accent);flex:none;transition:transform .2s}.faq-entry[open] .faq-plus{transform:rotate(45deg)}.faq-entry[open]{border-color:#bfb2ae}.faq-answer{padding:0 1.5rem 1.5rem}.faq-answer p{color:var(--muted);margin-top:.75rem;line-height:1.7}.faq-topic{display:inline-block;font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.faq-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;border-top:1px solid var(--line);padding-top:1.5rem}.faq-status{font-size:.8125rem;color:var(--muted);font-variant-numeric:tabular-nums}.faq-navigation{display:flex;flex-wrap:wrap;gap:.6rem}.faq-navigation button{border:1px solid #aeb0b7;border-radius:2rem;padding:.65rem 1rem;min-height:44px;font:inherit;font-size:.875rem;line-height:1.3;color:var(--ink);background:white;cursor:pointer}.faq-navigation button span{color:var(--accent)}.faq-navigation button:disabled{opacity:.45;cursor:default}.faq-navigation .faq-pause{border-color:var(--accent);color:var(--accent)}.faq-navigation .faq-pause[aria-pressed="true"]{background:var(--accent);color:white}.faq-navigation .faq-pause:disabled{background:white;color:var(--muted);border-color:var(--line);opacity:1}.faq-rotation-note{grid-column:1/-1;color:var(--muted);font-size:.75rem;line-height:1.6;margin-top:-1.1rem}.faq-empty{grid-column:1/-1;border:1px dashed var(--line);border-radius:1rem;padding:2rem;color:var(--muted)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .rgb-cursor:before{width:130px;height:130px;left:-65px;top:-65px;filter:blur(27px);opacity:.2}
  .button:hover,.nav-cta:hover,.related-service:hover,.scope-card:hover,.faq-entry:hover,.faq-navigation button:not(:disabled):hover{border-color:hsl(var(--motion-hue,15) 58% 45%);box-shadow:0 7px 28px hsl(var(--motion-hue,15) 75% 60% / .12)}
  .service-card:hover{border-color:hsl(var(--motion-hue,15) 58% 45%);box-shadow:0 18px 50px hsl(var(--motion-hue,15) 75% 60% / .13)}
}
@media(max-width:850px){.faq-library{grid-template-columns:1fr;gap:2rem}.faq-tools{grid-template-columns:1.3fr 1fr}.faq-answers{min-height:0}}
@media(max-width:600px){.faq-tools,.faq-answers{grid-template-columns:1fr}.faq-library-heading h2{font-size:clamp(2.1rem,8.4vw,3.1rem)}.faq-entry summary{font-size:1rem;padding:1.15rem;min-height:5rem}.faq-answer{padding:0 1.15rem 1.15rem}.faq-controls{align-items:flex-start}.faq-navigation{gap:.5rem}.faq-navigation button{font-size:.8125rem;padding:.7rem .85rem}.faq-rotation-note{margin-top:-.7rem}}

/* v1.4: Services disclosure and understated motion on the white canvas. */
.services-menu{position:relative;font-size:1rem}
.services-menu>summary{display:flex;align-items:center;gap:.55rem;min-height:44px;list-style:none;cursor:pointer;user-select:none}
.services-menu>summary::-webkit-details-marker{display:none}
.services-menu>summary:hover,.services-menu[open]>summary{color:var(--accent)}
.dropdown-chevron{display:block;width:.45rem;height:.45rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.services-menu[open] .dropdown-chevron{transform:translateY(1px) rotate(225deg)}
.services-dropdown{position:absolute;top:calc(100% + .65rem);left:-1.4rem;width:25rem;max-width:calc(100vw - 3rem);padding:1rem;background:#fff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:1.2rem;box-shadow:0 22px 65px #331c1820;z-index:10}
.services-menu:not([open])>.services-dropdown{display:none}
.dropdown-eyebrow{display:block;padding:.45rem .7rem .8rem;color:var(--muted);font-size:.625rem;letter-spacing:.14em}
.services-dropdown>a{display:flex;align-items:center;gap:.75rem;padding:1rem .7rem;border-radius:.65rem;line-height:1.4;min-width:0;transition:background-color .2s,color .2s}
.services-dropdown>a+a{border-top:1px solid #eeeeef}
.dropdown-number{font-size:.625rem;color:var(--accent);align-self:flex-start;padding-top:.2rem}
.services-dropdown strong{font-size:.9375rem;font-weight:500;display:block;letter-spacing:-.015em}
.services-dropdown small{font-size:.75rem;color:var(--muted);display:block;margin-top:.3rem}
.dropdown-arrow{margin-left:auto;color:var(--accent);font-size:1.15rem;transition:transform .25s}
.services-dropdown>a:hover,.services-dropdown>a:focus-visible,.services-dropdown>a[aria-current="page"]{background:#fff4ee;color:var(--accent)}
.services-dropdown>a:hover .dropdown-arrow{transform:translate(2px,-2px)}
.services-dropdown>a.dropdown-overview{justify-content:space-between;border-radius:0;margin-top:.5rem;padding-bottom:.35rem;font-size:.8125rem;color:var(--accent)}
.page-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),#e59475,#b773b5);transform-origin:left;pointer-events:none;z-index:80}
@keyframes dropdown-arrive{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@keyframes artwork-arrive{from{opacity:.2;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){
  .services-menu[open]>.services-dropdown{animation:dropdown-arrive .22s ease-out both}
  .hero-aside,.service-hero-art{animation:artwork-arrive .9s cubic-bezier(.2,.7,.3,1) both}
  .reveal-target{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1),box-shadow .3s,border-color .3s;transition-delay:var(--reveal-delay,0ms),var(--reveal-delay,0ms),0ms,0ms}
  .reveal-pending{opacity:0;transform:translateY(22px)}
  .reveal-target:focus-within{opacity:1;transform:none}
  .button span,.nav-cta span,.service-link span,.underlined-link span,.hello-arrow{transition:transform .3s cubic-bezier(.2,.7,.3,1)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .service-card:not(.reveal-pending):hover,.scope-card:not(.reveal-pending):hover,.related-service:not(.reveal-pending):hover{transform:translateY(-6px)}
  .scope-card,.related-service{transition:transform .4s,border-color .3s,box-shadow .3s}
  .button:hover span,.nav-cta:hover span,.service-link:hover span{transform:rotate(-12deg)}
  .underlined-link:hover span,.hello-card:hover .hello-arrow{transform:translate(3px,-3px)}
  .site-header nav>a:not(.nav-cta){position:relative}
  .site-header nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:0;bottom:-.3rem;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s}
  .site-header nav>a:not(.nav-cta):hover:after{transform:scaleX(1)}
}
@media(max-width:1100px){.services-menu{font-size:.875rem}.services-dropdown{left:-5rem}}
@media(max-width:700px){
  .site-header nav{max-height:calc(100dvh - 8rem);overflow-y:auto;overscroll-behavior:contain}
  .services-menu{width:100%;font-size:1rem}
  .services-menu>summary{padding:.8rem 1rem;justify-content:space-between}
  .services-dropdown{position:static;width:100%;max-width:none;margin:.2rem 0 .65rem;padding:.6rem;border-radius:.8rem;box-shadow:none;border-top-width:1px;background:#fffaf7}
  .services-dropdown>a{padding:.85rem .45rem;gap:.6rem}
  .services-dropdown strong{font-size:.875rem}
  .services-dropdown small{font-size:.6875rem}
  .dropdown-number{display:none}
}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}.page-progress{display:none}}
@media print{.reveal-pending{opacity:1;transform:none}.rgb-cursor,.page-progress{display:none!important}}
