/* Shared visual system: white space, original artwork and restrained motion. */
:root{--studio-ease:cubic-bezier(.2,.65,.25,1)}
::selection{background:#e8d9aa;color:var(--ink)}
.line-icon{display:block;width:28px;height:28px;flex-shrink:0;color:var(--accent-ink)}
.studio-image{display:block;width:100%;height:auto;object-fit:cover}
.concept-label{font-size:9px;font-weight:400;letter-spacing:.04em;color:#6a6256;white-space:nowrap}
.site-header{background:#ffffffed}
.desktop-nav a::after{content:"";position:absolute;inset:auto 0 6px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--studio-ease)}
.desktop-nav a:hover::after{transform:scaleX(1)}
.button span[aria-hidden]{transition:transform .3s var(--studio-ease)}
.button:hover span[aria-hidden]{transform:translate(2px,-2px)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent-ink);outline-offset:5px}
.pain-hero{padding:58px 0 0;background:radial-gradient(ellipse at 77% 44%,#f7f3e9 0,transparent 56%),#fff}
.pain-hero .hero-grid{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:58px}
.pain-hero .hero-copy h1{font-size:clamp(39px,3.7vw,53px);line-height:1.35;letter-spacing:-.06em;margin-bottom:25px;text-wrap:initial}
.pain-hero .hero-copy h1 em{display:block;color:var(--ink)}
.pain-hero .hero-copy>.eyebrow{color:var(--accent-ink);font-size:10px;letter-spacing:.18em;margin-bottom:27px}
.pain-hero .hero-description{font-size:15px;line-height:1.95;max-width:490px;margin-bottom:28px}
.pain-hero .hero-project-links{gap:10px}
.pain-hero .button{font-size:12px;padding:14px 15px;gap:17px}
.pain-hero .hero-footnote{font-size:11px;margin-top:19px}
.hero-assurance{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:40px;border-top:1px solid var(--line);margin-top:48px;padding:28px 0}
.hero-assurance>div{display:flex;gap:17px;align-items:center;min-width:0}
.hero-assurance>div+div{border-left:1px solid var(--line);padding-left:35px}
.hero-assurance strong{display:block;font-size:13px;font-weight:600}
.hero-assurance small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.hero-assurance .experience-number{font-size:42px;font-weight:500;line-height:1;letter-spacing:-.07em;font-family:Arial,sans-serif}
.experience-number span{font-size:26px;color:var(--accent-ink);vertical-align:top;line-height:1.2}
.hero-assurance>div:first-child>span{font-size:11px;line-height:1.6;color:var(--muted)}
.client-strip{background:#fcfcfb;padding:27px 0}
.client-strip-label>span{font-size:12px;color:var(--ink);font-weight:600}
.client-strip-label small{font-size:10px}
.client-logo-list{gap:40px}
.section-intro .eyebrow,.delivery-confidence-intro>.eyebrow{color:var(--accent-ink)}
.service-grid.service-overview{gap:26px;align-items:stretch}
.service-overview .service-card{padding:0;display:flex;overflow:hidden;border-radius:16px;transition:box-shadow .35s,border-color .35s,transform .35s var(--studio-ease)}
.service-overview .service-card:hover{transform:translateY(-4px);border-color:#d4c19a;box-shadow:0 18px 42px #382e1610}
.service-art{width:100%;position:relative;aspect-ratio:1.95;overflow:hidden;background:#eee8de;border-bottom:1px solid #e6ded0}
.service-art .studio-image{height:100%;object-position:center 47%;transition:transform .75s var(--studio-ease)}
.service-card:hover .studio-image{transform:scale(1.035)}
.service-art-label{position:absolute;top:19px;left:21px;font-size:10px;letter-spacing:.14em;font-weight:600;background:#fffcf0e6;border:1px solid #ffffff9c;border-radius:4px;padding:5px 9px;color:#514631}
.service-art-arrow{position:absolute;right:20px;bottom:20px;border:1px solid #fffc;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;font-size:22px;background:#fff9;color:var(--ink);backdrop-filter:blur(8px)}
.service-card-copy{padding:29px 32px 32px;display:flex;align-items:flex-start;flex-direction:column;flex:1}
.service-overview .service-kicker{margin-bottom:14px}
.service-overview .service-card h3{font-size:28px;line-height:1.45;margin-bottom:16px}
.service-overview .service-card p{font-size:14px;line-height:1.95;margin-bottom:20px}
.service-overview .service-examples{font-size:11px;margin-bottom:18px}
.service-overview .text-link{font-size:13px}
.service-continuity{padding:0;display:grid;grid-template-columns:32% 1fr;gap:0;border-radius:16px;overflow:hidden;margin-top:26px;background:#fbfaf7}
.continuity-art{height:100%;min-height:260px;overflow:hidden;background:#eee8de}
.continuity-art .studio-image{height:100%;object-fit:cover}
.continuity-copy{padding:30px 40px}
.continuity-copy .service-kicker{font-size:10px;letter-spacing:.13em;color:var(--accent-ink);display:block;margin-bottom:10px}
.service-continuity h3{font-size:24px;line-height:1.5}
.service-continuity p{font-size:13px;margin:11px 0 19px;max-width:620px}
.needs-scope{position:static;background:#fff;padding:30px 26px;overflow:hidden}


.needs-scope h3{font-size:28px}
.needs-scope>p{font-size:13px;margin-bottom:17px}
.demand-card{transition:border-color .25s,box-shadow .25s}
.demand-card:hover{border-color:#cfbd94;box-shadow:0 8px 25px #30281708}
.demand-card-top>.line-icon{width:30px;height:30px;padding:4px;border-radius:6px;background:var(--accent-soft)}
.needs-examples .demand-card h3{font-size:21px}
.delivery-confidence{background:linear-gradient(130deg,#fff 45%,#faf8f2)}
.delivery-confidence-number{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--accent-line);border-radius:50%;font-size:10px;line-height:1;background:#fff}
.delivery-confidence-list>li{column-gap:23px}
.delivery-visual{background:#fff;border:1px solid var(--accent-line);border-radius:14px;padding:27px 34px;margin-top:40px;overflow:hidden}
.delivery-visual-heading{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;margin-bottom:26px}
.delivery-visual-heading .line-icon{width:23px;height:23px}
.delivery-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:0}
.delivery-track li{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.delivery-track li:not(:last-child)::after{content:"";position:absolute;top:16px;left:43px;right:15px;height:1px;background:linear-gradient(90deg,#b69a43,#eadfc5);transform-origin:left}
.delivery-track li>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--accent-line);border-radius:50%;font-size:10px;color:var(--accent-ink);background:#faf8f1;z-index:1}
.delivery-track strong{font-size:13px;font-weight:500}
.delivery-confidence-next{margin-top:27px}
.page-hero-visual{background:linear-gradient(120deg,#fff 45%,#f7f4ed);padding:62px 0}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:62px;align-items:center}
.page-hero-visual h1{font-size:clamp(32px,3.1vw,44px);line-height:1.45;letter-spacing:-.05em}
.page-hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.95;color:var(--muted);max-width:680px}
.page-hero-copy>.eyebrow{font-size:12px;color:var(--accent-ink)}
.page-hero-copy .button{font-size:13px;padding:14px 18px;gap:20px}
.editorial-visual{min-width:0;margin:0;border:1px solid #e0d8c9;background:#faf8f3;border-radius:16px;overflow:hidden;box-shadow:0 20px 55px #4f3b130c}
.editorial-visual-image{position:relative;aspect-ratio:1.5;overflow:hidden}
.editorial-visual-image .studio-image{height:100%;object-position:center}
.art-corner{position:absolute;right:16px;top:12px;color:#6e5d3c;font-size:24px;font-weight:300}
.editorial-visual figcaption{display:flex;align-items:end;justify-content:space-between;gap:10px;padding:18px 20px;border-top:1px solid #e0d8c9}
.editorial-visual figcaption small{display:block;color:var(--accent-ink);font-size:8px;letter-spacing:.12em;margin-bottom:6px}
.editorial-visual figcaption strong{font-weight:500;font-size:13px}
.info-card{border-radius:14px;background:linear-gradient(135deg,#fff,#fcfbf8)}
.info-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}
.info-card-top>.line-icon{width:42px;height:42px;padding:9px;border:1px solid var(--accent-line);border-radius:11px;background:#fff}
.info-card-top .number-label{font-size:11px;letter-spacing:.1em;color:var(--muted);margin-bottom:0}
.process-grid>li{position:relative}
.process-grid>li .number-label{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:50%;font-size:11px;color:var(--accent-ink);margin-bottom:20px}
.pricing-preview{background:#fff}
.pricing-summary{padding:44px;border:1px solid var(--accent-line);border-radius:16px;background:radial-gradient(ellipse at 97% 0,#f4e8cb60,transparent 52%),#fff}
.pricing-summary-rate{position:relative}
.pricing-overview{border-color:var(--accent-line);background:linear-gradient(120deg,#f9f6ee,#fff)}
.pricing-hero-grid{display:grid;grid-template-columns:1fr 270px;align-items:center;gap:40px}
.pricing-hero-art{border-radius:12px;overflow:hidden;aspect-ratio:2.1;border:1px solid var(--accent-line)}
.pricing-hero-art .studio-image{height:100%}
.contact-art{overflow:hidden;border:1px solid #e0d8c9;border-radius:14px;margin-bottom:30px;aspect-ratio:1.8;grid-column:1/-1}
.contact-art .studio-image{height:100%}
.contact-planning-hero{background:radial-gradient(ellipse at 86% 25%,#f6f0e4,transparent 58%)}
.planning-calendar{box-shadow:0 12px 45px #382e1608}
.cta-section{background:#faf8f3;overflow:hidden;padding:50px 0}
.cta-inner{display:grid;grid-template-columns:1fr auto;gap:60px}


.cta-copy{min-width:0}
.cta-inner h2{font-size:31px;margin-bottom:16px}
.cta-inner p{font-size:13px}
.cta-inner .button{font-size:13px;gap:20px;justify-self:start}
.site-footer{background:#fff}
.faq-list summary>span{color:var(--accent-ink);transition:transform .25s var(--studio-ease)}
/* Elements are visible by default, including without JavaScript. Animations run once on entry. */
@keyframes studio-reveal{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}

@keyframes studio-connect{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:no-preference){
  .motion-enter{animation:studio-reveal .75s var(--studio-ease) both;animation-delay:var(--reveal-delay,0ms)}
  .delivery-visual.is-visible .delivery-track li:not(:last-child)::after{animation:studio-connect 1.4s var(--studio-ease) both;animation-delay:.4s}
  .delivery-visual.is-visible .delivery-track li:nth-child(2)::after{animation-delay:.8s}
  .delivery-visual.is-visible .delivery-track li:nth-child(3)::after{animation-delay:1.2s}
}
@media(min-width:1500px){.pain-hero .hero-copy h1{font-size:53px}}
@media(max-width:1100px){
  .pain-hero .hero-grid{gap:30px}.pain-hero .hero-copy h1{font-size:41px}.pain-hero .hero-description{font-size:14px}.pain-hero .hero-project-links{gap:8px}.pain-hero .button{font-size:11px;padding:12px;gap:12px}
  .hero-assurance{gap:20px}.hero-assurance>div+div{padding-left:23px}.hero-assurance strong{font-size:12px}.hero-assurance small{font-size:10px}
  .service-card-copy{padding:25px}.service-overview .service-card h3{font-size:25px}.continuity-copy{padding:26px 30px}
  .page-hero-grid{gap:32px}.page-hero-visual h1{font-size:35px}.page-hero-copy>p:not(.eyebrow){font-size:14px}
  .cta-inner{grid-template-columns:1fr auto;gap:35px}.cta-inner h2{font-size:27px}
}
@media(max-width:900px){.needs-scope{display:block;padding:28px;max-width:none}.needs-scope h3{margin-bottom:20px}.needs-scope .button{max-width:330px}}
@media(max-width:850px){
  .pain-hero{padding-top:42px}.pain-hero .hero-grid{grid-template-columns:1fr;gap:34px}.pain-hero .hero-copy h1{font-size:49px;max-width:660px}.pain-hero .hero-description{font-size:15px;max-width:600px}.pain-hero .button{font-size:13px;padding:14px 18px}.hero-copy{max-width:none}
  .hero-assurance{margin-top:32px;grid-template-columns:.75fr 1fr 1fr;gap:16px}.hero-assurance>div{gap:12px}.hero-assurance>div+div{padding-left:16px}.hero-assurance .line-icon{display:none}.hero-assurance small{font-size:9px}.hero-assurance .experience-number{font-size:36px}
  .service-grid.service-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.service-overview .service-card{padding:0}.service-card-copy{padding:23px}.service-overview .service-card h3{font-size:23px}.service-overview .service-card p{font-size:13px}.service-art{aspect-ratio:1.5}.service-art-label{left:13px;top:13px;font-size:8px;padding:4px 6px}.service-art-arrow{right:13px;bottom:13px;width:30px;height:30px;font-size:18px}
  .service-continuity{grid-template-columns:34% 1fr}.continuity-art{min-height:270px}.continuity-copy{padding:24px}.service-continuity h3{font-size:21px}
  .page-hero-grid{grid-template-columns:1fr;gap:33px}.page-hero-visual h1{font-size:42px}.editorial-visual{max-width:680px;width:100%}.editorial-visual-image{aspect-ratio:1.5}.page-hero-copy>p:not(.eyebrow){font-size:15px}
  .pricing-summary{padding:30px}.cta-inner{grid-template-columns:1fr auto;gap:20px 30px}.cta-inner .button{grid-column:2}.contact-art{max-height:290px;margin-bottom:8px}
  .pricing-hero-grid{grid-template-columns:1fr 220px;gap:25px}
}
@media(max-width:580px){
  .pain-hero{padding-top:31px}.pain-hero .hero-copy>.eyebrow{font-size:9px;margin-bottom:19px}.pain-hero .hero-copy h1{font-size:clamp(31px,8.6vw,46px);line-height:1.4;margin-bottom:19px}.pain-hero .hero-description{font-size:14px;margin-bottom:23px}.pain-hero .hero-description br{display:none}.pain-hero .hero-project-links{display:grid;grid-template-columns:1fr;width:100%;gap:9px}.pain-hero .button{font-size:13px;padding:13px 17px;min-height:48px}.pain-hero .hero-footnote{font-size:10px;margin-top:16px}.pain-hero .hero-grid{gap:29px}
  .hero-assurance{grid-template-columns:1fr 1fr;gap:22px 18px;padding:24px 0;margin-top:28px}.hero-assurance>div:first-child{grid-column:1/-1}.hero-assurance>div+div{border-left:0;padding-left:0}.hero-assurance>div:last-child{border-left:1px solid var(--line);padding-left:18px}.hero-assurance strong{font-size:11px}.hero-assurance small{font-size:9px;line-height:1.7}.hero-assurance .experience-number{font-size:39px}.hero-assurance>div:first-child>span{font-size:11px}.hero-assurance>div:first-child br{display:none}
  .service-grid.service-overview{grid-template-columns:1fr;gap:22px}.service-art{aspect-ratio:1.8}.service-overview .service-card{padding:0}.service-card-copy{padding:24px}.service-overview .service-card h3{font-size:26px}.service-overview .service-card p{font-size:14px}.service-art-label{font-size:9px;left:17px;top:16px}.service-continuity{grid-template-columns:1fr}.continuity-art{height:190px;min-height:0}.continuity-art .studio-image{object-position:center 52%}.continuity-copy{padding:24px}.service-continuity h3{font-size:24px}
  .needs-scope{padding:24px}.needs-scope h3{font-size:28px}.needs-scope .button{max-width:none}.needs-examples .demand-card h3{font-size:21px}.demand-card-top>.line-icon{width:32px;height:32px}
  .delivery-confidence-list>li{grid-template-columns:29px 1fr;gap:15px}.delivery-confidence-list h3{font-size:19px}.delivery-visual{padding:23px;margin-top:28px}.delivery-visual-heading{font-size:12px;margin-bottom:24px}.delivery-track{grid-template-columns:1fr 1fr;gap:25px 17px}.delivery-track li:nth-child(2)::after{display:none}.delivery-track li:nth-child(3)::after{right:0}.delivery-track strong{font-size:12px}.delivery-track li:not(:last-child)::after{right:0}
  .page-hero-visual{padding:35px 0}.page-hero-visual h1{font-size:32px;line-height:1.45}.page-hero-copy>p:not(.eyebrow){font-size:14px}.page-hero-grid{gap:27px}.editorial-visual-image{aspect-ratio:1.45}.editorial-visual figcaption{padding:15px 17px}.editorial-visual figcaption strong{font-size:12px}.editorial-visual figcaption small{font-size:7px}.editorial-visual .concept-label{font-size:8px}.page-hero-copy .button{font-size:12px;padding:13px 16px}
  .pricing-summary{padding:27px 24px}.pricing-summary-rate{padding-top:23px}.pricing-hero-grid{grid-template-columns:1fr;gap:20px}.pricing-hero-art{max-height:150px;aspect-ratio:2.6}.pricing-hero h1{font-size:31px}.pricing-hero .eyebrow{font-size:10px}
  .cta-inner{grid-template-columns:1fr;gap:22px}.cta-inner .button{grid-column:auto}.cta-inner h2{font-size:28px}.cta-inner p{font-size:13px}.cta-inner .eyebrow{font-size:11px}.cta-section{padding:37px 0}
}
@media(prefers-reduced-motion:reduce){.motion-enter{animation:none!important;opacity:1;transform:none}.studio-image,.button,.service-card,.text-link{animation:none!important;transition:none!important;transform:none!important}}
@media print{.motion-enter{animation:none!important;opacity:1!important;transform:none!important}.editorial-visual,.service-art,.continuity-art,.contact-art,.pricing-hero-art{display:none}.hero-assurance{margin-top:20px}.service-overview .service-card{break-inside:avoid}.delivery-visual{break-inside:avoid}.page-hero-grid{display:block}}

/* Quiet native App-screen backdrop in the service section. */
.services-atmosphere{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#fcfaf5 0,#fff 45%)}
.services-atmosphere>.wrap{position:relative;z-index:1}
.ambient-apps{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;mask-image:linear-gradient(#000 0,#000 60%,transparent 96%)}
.ambient-panel{position:absolute;stroke:#b4a383;stroke-width:1;fill:#fff8;opacity:.2;filter:drop-shadow(0 18px 24px #75602910)}
.ambient-accent{stroke:#af8933;stroke-width:2}
.ambient-panel-mobile{width:210px;left:-105px;top:12px;transform:rotate(-18deg)}
.ambient-panel-web{width:400px;right:-130px;top:20px;transform:rotate(-15deg);opacity:.16}
.ambient-panel-flow{width:250px;left:26%;top:50px;transform:rotate(-13deg);opacity:.1}
@keyframes ambient-mobile{from{transform:translate3d(-12px,65px,0) rotate(-18deg)}to{transform:translate3d(0,0,0) rotate(-18deg)}}
@keyframes ambient-web{from{transform:translate3d(30px,-55px,0) rotate(-15deg)}to{transform:translate3d(0,0,0) rotate(-15deg)}}
@keyframes ambient-flow{from{transform:translate3d(-20px,45px,0) rotate(-13deg)}to{transform:translate3d(0,0,0) rotate(-13deg)}}
@media(prefers-reduced-motion:no-preference){
 .ambient-apps.is-visible .ambient-panel-mobile{animation:ambient-mobile 4.6s var(--studio-ease) both}
 .ambient-apps.is-visible .ambient-panel-web{animation:ambient-web 4.6s var(--studio-ease) both}
 .ambient-apps.is-visible .ambient-panel-flow{animation:ambient-flow 4.6s var(--studio-ease) both}
}
@media(max-width:580px){.ambient-panel-mobile{width:140px;left:-80px}.ambient-panel-web{width:260px;right:-140px;top:110px}.ambient-panel-flow{display:none}.ambient-panel{opacity:.12}}
@media print{.ambient-apps{display:none}}

/* Motion direction: staged typography, physical depth and a continuous reading thread. */
:root{--studio-ease:cubic-bezier(.16,1,.3,1)}
.site-header{transition:box-shadow .45s,border-color .45s}
.site-header.is-scrolled{box-shadow:0 8px 35px #3b301709;border-bottom-color:#e4ddcd}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,#ab8835,#dbc888);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.editorial-visual{position:relative;transition:transform .7s var(--studio-ease),box-shadow .7s var(--studio-ease);transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
.editorial-visual.pointer-active{box-shadow:0 26px 65px #4f3b1318}
.editorial-visual-image::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#fff6 45%,transparent 65%);transform:translateX(-130%);pointer-events:none;z-index:2}
.editorial-visual .art-corner{transition:transform .8s var(--studio-ease)}
.editorial-visual.pointer-active .art-corner{transform:rotate(90deg)}
.service-card,.info-card,.demand-card{position:relative;isolation:isolate}
.service-card::after,.info-card::after,.demand-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--light-x,50%) var(--light-y,50%),#d1b66b13,transparent 70%);box-shadow:inset 0 0 0 1px #c5aa6950;transition:opacity .5s;z-index:2}
.pointer-active::after{opacity:1}
.info-card{transition:border-color .45s,box-shadow .45s}
.info-card:hover{border-color:#cebb8c;box-shadow:0 14px 38px #4e3d0f08}
.process-grid{position:relative;isolation:isolate}
ol.process-grid>li{border-top:0;padding-top:0}
.process-grid::before,.process-grid::after{content:"";position:absolute;top:19px;left:19px;right:calc((100% - 72px)/4 - 19px);height:1px;background:#e7dfcd;z-index:-1;pointer-events:none}
.process-grid::after{height:2px;background:linear-gradient(90deg,#9c792b,#cfb565);transform:scaleX(var(--process-progress,0));transform-origin:left}
.process-grid>li .number-label{box-shadow:0 0 0 8px #fff;transition:background .5s,color .5s,border-color .5s,box-shadow .5s}
.process-grid>li.step-lit .number-label{background:#a18338;color:#fff;border-color:#a18338;box-shadow:0 0 0 8px #fff,0 0 0 9px #eadfc3}
@keyframes studio-type{from{opacity:0;transform:translateY(25px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(-8% -3% -8% -3%)}}
@keyframes studio-art{from{opacity:0;transform:perspective(1200px) translateY(35px) rotateY(-6deg) rotateX(3deg) scale(.97)}to{opacity:1;transform:perspective(1200px) translateY(0) rotateY(0) rotateX(0) scale(1)}}
@keyframes studio-sheen{from{transform:translateX(-130%)}to{transform:translateX(130%)}}
@keyframes studio-draw{from{stroke-dashoffset:72}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:no-preference){
  .motion-enter{animation-duration:1s}
  .hero-copy.motion-enter,.page-hero-copy.motion-enter,.section-intro.motion-enter,.founder-intro-grid.motion-enter{animation:none}
  :is(.hero-copy,.page-hero-copy).motion-enter>*,.section-intro.motion-enter>*,.founder-intro-grid.motion-enter>*{animation:studio-reveal .9s var(--studio-ease) both;animation-delay:calc(var(--reveal-delay,0ms) + 70ms)}
  :is(.hero-copy,.page-hero-copy).motion-enter>h1{animation:studio-type 1.1s var(--studio-ease) both;animation-delay:100ms}
  :is(.hero-copy,.page-hero-copy).motion-enter>p{animation-delay:250ms}
  :is(.hero-copy,.page-hero-copy).motion-enter>.button-row{animation-delay:380ms}
  .hero-copy.motion-enter>.hero-footnote{animation-delay:490ms}
  .section-intro.motion-enter>p,.founder-intro-grid.motion-enter>div+div{animation-delay:220ms}
  .editorial-visual.motion-enter{animation:studio-art 1.2s var(--studio-ease) both;animation-delay:140ms}
  .editorial-visual.motion-enter .editorial-visual-image::after{animation:studio-sheen 1.45s var(--studio-ease) both;animation-delay:200ms}
  .editorial-visual.motion-enter figcaption{animation:studio-reveal .8s var(--studio-ease) both;animation-delay:370ms}
  .info-card.motion-enter .line-icon>*{stroke-dasharray:72;animation:studio-draw 1.25s var(--studio-ease) both;animation-delay:calc(var(--reveal-delay,0ms) + 150ms)}
}
@media(min-width:851px) and (prefers-reduced-motion:no-preference){
  .motion-ready :is(.editorial-visual-image,.service-art,.continuity-art,.contact-art) .studio-image{transform:translate3d(0,var(--image-drift,0px),0) scale(1.09);transition:transform .55s cubic-bezier(.2,.6,.3,1)}
  .motion-ready .service-card:hover .studio-image{transform:translate3d(0,var(--image-drift,0px),0) scale(1.13)}
}
@media(max-width:850px){
  .process-grid::before,.process-grid::after{display:none}
  ol.process-grid>li{padding-top:20px;border-top:1px solid #e4dcc9}
  .process-grid>li::after{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,#b2954b,#e1d2a6);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--studio-ease)}
  .process-grid>li.step-lit::after{transform:scaleX(1)}
}
@media(prefers-reduced-motion:reduce){
  .site-header::after,.editorial-visual-image::after,.service-card::after,.info-card::after,.demand-card::after{display:none}
  .editorial-visual,.editorial-visual *,.process-grid *,.process-grid>li::after,.info-card,.site-header{animation:none!important;transition:none!important;transform:none!important}
  .process-grid::after{transform:scaleX(1)}
}
@media print{.site-header::after,.editorial-visual-image::after,.process-grid::before,.process-grid::after{display:none}}
