:root{
  --blue:#324997;
  --green:#42ab4f;
  --yellow:#d2c313;
  --orange:#e85c1e;
  --paper:#f3f2ed;
  --white:#fff;
  --ink:#101010;
  --muted:#62625e;
  --line:rgba(16,16,16,.2);
}

/* Standalone reserve copy */
.reserve-banner{position:fixed;z-index:79;left:50%;bottom:18px;transform:translateX(-50%);padding:8px 13px;border-radius:999px;background:rgba(16,28,81,.86);color:#fff;font-size:9px;letter-spacing:.11em;text-transform:uppercase;backdrop-filter:blur(10px);pointer-events:none}
.bp-site .site-header{grid-template-columns:1fr auto 1fr}
.bp-site .site-header .brand img{filter:none}
.bp-site .desktop-nav a{color:#fff}
.bp-site .menu-toggle{color:#fff}
.contact-form-status.is-success{color:#1d7430}.contact-form-status.is-error{color:#b52f22}
.bp-site .contact-form-direct a{max-width:560px}
@media(max-width:700px){.reserve-banner{bottom:8px;max-width:calc(100vw - 24px);width:max-content}.bp-site .desktop-nav{display:none}.bp-site .menu-toggle{display:block;justify-self:center}.bp-site .header-call{font-size:0}.bp-site .header-call span{font-size:16px;margin:0}.mobile-menu.is-open{display:flex}}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
body:has(.mobile-menu.is-open){overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img{display:block;max-width:100%}
main{overflow:hidden}

.site-header{
  position:fixed;
  z-index:80;
  inset:0 0 auto;
  height:78px;
  padding:0 3.2vw;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  background:rgba(243,242,237,.94);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(14px);
}
.brand{width:52px;height:58px;display:grid;place-items:center;overflow:hidden}
.brand img{width:48px}
.desktop-nav{display:flex;gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.desktop-nav a,.header-call{transition:opacity .2s}
.desktop-nav a:hover,.header-call:hover{opacity:.5}
.header-call{justify-self:end;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.header-call span{margin-left:10px}
.menu-toggle{display:none;border:0;background:transparent;text-transform:uppercase;font-size:11px;letter-spacing:.12em;padding:14px 0}
.mobile-menu{display:none}

.hero{
  min-height:100svh;
  padding:128px 4vw 38px;
  position:relative;
  display:flex;
  color:var(--ink);
  background:var(--paper);
  overflow:hidden;
}
.hero-content{width:100%;align-self:flex-end;position:relative;z-index:3}
.eyebrow,.section-index,.project-label{
  font-size:11px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.eyebrow.light,.section-index.inverted{color:#fff}
.hero h1{
  margin:34px 0 42px;
  max-width:1180px;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(70px,10.2vw,158px);
  font-weight:400;
  line-height:.79;
  letter-spacing:-.065em;
  text-transform:uppercase;
}
.hero h1 span{display:block;white-space:nowrap}
.hero h1 span:last-child{color:var(--blue)}
.hero-meta{
  position:absolute;
  z-index:4;
  right:4vw;
  top:112px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  font-size:10px;
  line-height:1.55;
  letter-spacing:.17em;
}
.hero-bottom{
  padding-top:20px;
  border-top:1px solid var(--line);
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
}
.hero-bottom p{max-width:570px;margin:0;font-size:18px;line-height:1.42}
.pill{
  min-width:230px;
  border:1px solid currentColor;
  border-radius:999px;
  padding:16px 20px;
  display:inline-flex;
  justify-content:space-between;
  align-items:center;
  gap:28px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:.25s;
}
.pill:hover{background:var(--ink);color:#fff}
.pill-light:hover{background:#fff;color:var(--ink)}
.hero-rings{
  position:absolute;
  z-index:1;
  width:min(44vw,680px);
  height:min(25vw,380px);
  right:-3vw;
  top:24%;
  transform:rotate(-14deg);
}
.hero-rings span{position:absolute;inset:0;border:1.5px solid;border-radius:50%}
.hero-rings span:nth-child(1){color:var(--blue)}
.hero-rings span:nth-child(2){color:var(--green);transform:translateY(17%)}
.hero-rings span:nth-child(3){color:var(--yellow);transform:translateY(34%)}
.hero-rings span:nth-child(4){color:var(--orange);transform:translateY(51%)}
.brand-spectrum{position:absolute;left:0;right:0;bottom:0;height:8px;display:grid;grid-template-columns:repeat(4,1fr)}
.brand-spectrum span:nth-child(1){background:var(--blue)}
.brand-spectrum span:nth-child(2){background:var(--green)}
.brand-spectrum span:nth-child(3){background:var(--yellow)}
.brand-spectrum span:nth-child(4){background:var(--orange)}

.section-pad{padding:120px 4vw}
.section-index{color:var(--muted)}
.manifesto{
  min-height:76svh;
  display:grid;
  grid-template-columns:1fr 3fr;
  gap:4vw;
  align-content:center;
  border-bottom:1px solid var(--line);
}
.manifesto-body h2,.section-head h2,.case-copy h2,.singularity h2,.about h2,.contact-cta h2{
  margin:0;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(52px,7vw,108px);
  font-weight:400;
  line-height:.86;
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.manifesto-body>p{max-width:720px;margin:44px 0;font-size:20px;line-height:1.45}
.approach-tags{display:flex;flex-wrap:wrap;gap:8px}
.approach-tags span{padding:11px 16px;border:1px solid var(--line);border-radius:999px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}

.services-section{background:var(--white)}
.section-head{display:grid;grid-template-columns:1fr 3fr;gap:4vw;margin-bottom:74px}
.service-explorer{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.service-tabs{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--line)}
.service-tabs button{
  min-height:112px;
  padding:16px 14px;
  border:0;
  border-right:1px solid var(--line);
  background:transparent;
  text-align:left;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  color:var(--ink);
  cursor:pointer;
  font-size:11px;
  line-height:1.2;
  text-transform:uppercase;
}
.service-tabs button:last-child{border-right:0}
.service-tabs button span{font-size:9px;color:var(--muted)}
.service-tabs button[aria-selected=true]{background:var(--ink);color:#fff}
.service-tabs button[aria-selected=true] span{color:#fff}
.service-detail{display:grid;grid-template-columns:1.2fr 1fr;min-height:470px}
.service-intro{padding:38px 42px;border-right:1px solid var(--line);display:grid;grid-template-columns:76px 1fr;align-content:start}
.service-number{font-size:13px;letter-spacing:.1em}
.service-intro h3{margin:0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(48px,6vw,86px);font-weight:400;line-height:.86;letter-spacing:-.055em;text-transform:uppercase}
.service-intro p{grid-column:2;max-width:510px;margin:42px 0 0;font-size:18px;line-height:1.45}
.service-detail ol{list-style:none;margin:0;padding:0}
.service-detail li{min-height:25%;padding:22px 26px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:17px}
.service-detail li:last-child{border-bottom:0}
.service-detail li b{font-size:9px;letter-spacing:.12em;color:var(--muted)}
.section-link-row{display:flex;justify-content:flex-end;margin-top:32px}
.text-link{display:inline-flex;gap:38px;align-items:center;padding:14px 0 7px;border-bottom:1px solid currentColor;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}

.featured-case{background:var(--paper);color:var(--ink)}
.featured-case-head{display:grid;grid-template-columns:1fr 3fr;gap:4vw;margin-bottom:54px}
.featured-case-head>p{margin:0;font-size:13px;letter-spacing:.12em}
.case-layout{display:grid;grid-template-columns:1.02fr .98fr;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.case-visual{min-height:760px;position:relative;overflow:hidden;background:var(--orange)}
.case-cover{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}
.case-mark{position:absolute;left:28px;top:26px;color:#fff;font-size:11px;letter-spacing:.16em}
.case-copy{padding:44px 4vw;display:flex;flex-direction:column;align-items:flex-start}
.case-copy h2{font-size:clamp(46px,5.4vw,82px)}
.case-description{max-width:600px;margin:40px 0;font-size:18px;line-height:1.45}
.case-stats{width:100%;margin:auto 0 40px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}
.case-stats div{padding:22px 14px 0 0}
.case-stats strong{display:block;font-size:clamp(36px,4vw,62px);font-weight:400;line-height:1;letter-spacing:-.055em}
.case-stats span{display:block;margin-top:8px;font-size:10px;line-height:1.25;letter-spacing:.08em;text-transform:uppercase}

.singularity{background:var(--ink);color:#fff}
.singularity-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:8vw;align-items:end;margin-top:64px}
.singularity-main>p:not(.project-label){max-width:610px;margin:34px 0;font-size:18px;line-height:1.48}
.singularity-main .text-link{color:var(--yellow)}
.singularity-progress{height:100%;min-height:470px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:grid;place-content:center;text-align:center;position:relative;color:var(--yellow)}
.singularity-progress strong{font-size:clamp(100px,14vw,210px);font-weight:400;line-height:.68;letter-spacing:-.08em}
.singularity-progress>span{position:absolute;right:18%;top:23%;font-size:28px}
.singularity-progress small{margin-top:34px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#fff}

.clothing-feature{height:100svh;min-height:760px;position:relative;background:#222;color:#fff}
.clothing-feature>img{width:100%;height:100%;object-fit:cover;object-position:center 44%;filter:brightness(.62)}
.clothing-overlay{position:absolute;inset:0;padding:104px 4vw 48px;display:flex;flex-direction:column;justify-content:space-between}
.clothing-overlay>div:last-child{max-width:900px}
.clothing-overlay h2{margin:18px 0 28px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(64px,9vw,138px);font-weight:400;line-height:.82;letter-spacing:-.06em;text-transform:uppercase}
.clothing-overlay p:not(.project-label){max-width:530px;margin:0 0 30px;font-size:18px;line-height:1.45}

.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.about-photo{aspect-ratio:4/5;overflow:hidden;background:#ddd}
.about-photo img{width:100%;height:100%;object-fit:cover}
.about-copy .section-index{margin-bottom:60px}
.about-copy .lead{margin:38px 0 20px;font-size:28px;line-height:1.2}
.about-copy>p:not(.lead){max-width:620px;font-size:17px;line-height:1.55}
.about-copy blockquote{margin:56px 0 26px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:22px;font-style:italic;line-height:1.35}

.selected{background:var(--white)}
.selected-head{margin-bottom:70px}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.project-card{margin-bottom:34px}
.project-image-wrap{aspect-ratio:4/5;overflow:hidden;background:#ddd}
.project-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.project-card:hover img{transform:scale(1.025)}
.project-card-meta{padding-top:13px;display:flex;justify-content:space-between;gap:18px}
.project-card h3{margin:0;font-size:13px;text-transform:uppercase}
.project-card-meta span{max-width:130px;text-align:right;font-size:9px;line-height:1.25;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

.contact-cta{min-height:86svh;padding:120px 4vw 48px;background:var(--blue);color:#fff;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.contact-rings{position:absolute;width:56vw;height:31vw;right:-9vw;top:6%;opacity:.55;transform:rotate(-12deg)}
.contact-rings span{position:absolute;inset:0;border:1px solid #fff;border-radius:50%}
.contact-rings span:nth-child(2){transform:translateY(18%)}
.contact-rings span:nth-child(3){transform:translateY(36%)}
.contact-cta h2{position:relative;z-index:2;font-size:clamp(68px,10vw,156px);margin:24px 0 34px}
.contact-cta>p:not(.eyebrow){position:relative;z-index:2;max-width:560px;margin:0;font-size:18px;line-height:1.45}
.phone-link{position:relative;z-index:2;margin-top:52px;padding-top:19px;border-top:1px solid rgba(255,255,255,.5);display:flex;justify-content:space-between;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(36px,5vw,72px);text-transform:uppercase}
.phone-number{position:relative;z-index:2;margin-top:10px;font-size:12px;letter-spacing:.13em}

.site-footer{padding:64px 4vw 24px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:54px;background:var(--paper)}
.footer-brand img{width:90px;margin-bottom:18px}
.footer-brand p,.footer-contact span{font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.footer-nav,.footer-contact{display:flex;flex-direction:column;gap:12px;font-size:13px}
.footer-bottom{grid-column:1/-1;margin-top:48px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;letter-spacing:.1em;text-transform:uppercase}

/* Internal pages */
.inner-hero,.case-hero{min-height:78svh;padding:150px 4vw 56px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}
.inner-hero h1,.case-hero h1,.contacts-page h1,.clothing-page-hero h1{margin:24px 0 32px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(68px,10vw,156px);font-weight:400;line-height:.82;letter-spacing:-.06em;text-transform:uppercase}
.inner-hero>p:last-child,.case-hero>p:last-child{max-width:620px;margin:0;font-size:19px;line-height:1.42}
.orange-page{background:var(--orange);color:#fff}
.green-page{background:var(--green);color:#fff}
.blue-page{background:var(--blue);color:#fff}
.yellow-page{background:var(--yellow)}
.service-catalog{display:grid;gap:18px}
.service-group{min-height:420px;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}
.service-group-head{padding:30px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)}
.service-group-head h2{margin:0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(42px,5.8vw,82px);font-weight:400;line-height:.88;letter-spacing:-.05em;text-transform:uppercase}
.service-group ul{list-style:none;margin:0;padding:0}
.service-group li{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:16px}
.service-group li:last-child{border-bottom:0}
.compact-cta{padding:100px 4vw;background:var(--ink);color:#fff}
.compact-cta h2{max-width:1100px;margin:0 0 32px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(52px,7vw,108px);font-weight:400;line-height:.86;letter-spacing:-.055em;text-transform:uppercase}
.compact-cta p{max-width:620px;font-size:18px;line-height:1.45}
.compact-cta a{display:block;margin-top:50px;padding-top:18px;border-top:1px solid rgba(255,255,255,.35);font-size:clamp(30px,4vw,58px)}
.projects-page-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:52px 18px}
.projects-page-grid>a:first-child{grid-column:1/-1}
.work-card .work-image{aspect-ratio:4/5;overflow:hidden;background:#ddd}
.work-card.work-featured .work-image{aspect-ratio:16/8}
.work-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.work-card:hover img{transform:scale(1.025)}
.work-card>div:last-child{padding-top:14px;display:flex;justify-content:space-between;gap:20px}
.work-card h2{margin:0;font-size:15px;text-transform:uppercase}
.work-card p{margin:0;text-align:right;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.singularity-card{width:100%;height:100%;padding:30px;background:var(--yellow);display:flex;flex-direction:column;justify-content:flex-end;text-transform:uppercase;position:relative;overflow:hidden}
.singularity-card:before,.singularity-card:after{content:"";position:absolute;width:82%;height:44%;right:-22%;top:16%;border:1px solid rgba(0,0,0,.25);border-radius:50%;transform:rotate(-14deg)}
.singularity-card:after{top:25%}
.singularity-card span{font-size:clamp(70px,10vw,150px);line-height:.75;letter-spacing:-.08em}
.singularity-card strong{margin-top:32px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(34px,5vw,70px);font-weight:400;line-height:.88;letter-spacing:-.05em}
.singularity-card small{margin-top:12px;font-size:9px;letter-spacing:.13em}
.dark-page{background:var(--ink);color:#fff}
.yda-hero{background:var(--orange)}
.case-story{background:var(--ink)}
.case-story-intro,.about-statement{display:grid;grid-template-columns:1fr 3fr;gap:40px;margin-bottom:110px}
.case-story-intro span,.about-statement span,.case-method span,.role-panel>span{font-size:10px;font-weight:700;letter-spacing:.14em}
.case-story-intro p,.about-statement p{margin:0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(36px,5vw,72px);line-height:.96;letter-spacing:-.045em;text-transform:uppercase}
.metric-wall{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:110px;border-top:1px solid rgba(255,255,255,.25);border-left:1px solid rgba(255,255,255,.25)}
.metric-wall div{padding:38px;border-right:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}
.metric-wall strong{display:block;font-size:clamp(54px,8vw,116px);font-weight:400;line-height:.9;letter-spacing:-.06em}
.metric-wall span{font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.case-method{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-bottom:100px}
.case-method ul{list-style:none;padding:0;margin:34px 0 0}
.case-method li{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.25);font-size:17px}
.case-method p{font-size:19px;line-height:1.45}
.stats-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.stats-gallery img{max-height:920px;margin:auto;border-radius:22px}
.case-progress{position:absolute;right:4vw;bottom:56px;display:flex;flex-direction:column;align-items:flex-end}
.case-progress strong{font-size:clamp(92px,16vw,220px);font-weight:400;line-height:.75;letter-spacing:-.08em}
.case-progress span{font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.singularity-hero{background:var(--yellow);color:var(--ink)}
.singularity-body{background:var(--paper)}
.work-list{margin:0 0 100px 25%}
.work-list>div{padding:21px 0;display:grid;grid-template-columns:80px 1fr;border-top:1px solid var(--line)}
.work-list p{margin:0;font-size:clamp(22px,3vw,40px)}
.role-panel{padding:56px;background:var(--blue);color:#fff}
.role-panel h2{margin:72px 0 28px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(50px,8vw,110px);font-weight:400;line-height:.86;letter-spacing:-.055em;text-transform:uppercase}
.role-panel p{max-width:650px;font-size:18px;line-height:1.5}
.role-panel b{display:block;margin-top:64px;padding-top:20px;border-top:1px solid rgba(255,255,255,.4);font-size:9px;letter-spacing:.12em}
.about-page{background:var(--paper)}
.about-editorial{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;margin-bottom:110px}
.about-editorial img{width:100%;aspect-ratio:4/5;object-fit:cover}
.about-editorial h2{margin:0 0 32px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(52px,7vw,102px);font-weight:400;line-height:.86;letter-spacing:-.055em;text-transform:uppercase}
.about-editorial .lead{font-size:27px;line-height:1.2}
.about-editorial p:not(.lead){font-size:17px;line-height:1.55}
.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.principles>div{min-height:300px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.principles h3{margin:90px 0 18px;font-size:20px;text-transform:uppercase}
.principles p{line-height:1.5}
.clothing-page-hero{height:100svh;min-height:720px;position:relative;background:#222;color:#fff;overflow:hidden}
.clothing-page-hero>img{width:100%;height:100%;object-fit:cover;filter:brightness(.62)}
.clothing-page-hero>div{position:absolute;inset:0;padding:130px 4vw 46px;display:flex;flex-direction:column;justify-content:flex-end}
.clothing-intro{display:grid;grid-template-columns:1fr 3fr}
.clothing-intro p{margin:0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(38px,5.4vw,76px);line-height:.96;letter-spacing:-.045em;text-transform:uppercase}
.clothing-gallery{display:grid;grid-template-columns:repeat(3,1fr);height:86svh;min-height:650px}
.clothing-gallery img{width:100%;height:100%;object-fit:cover}
.order-section{background:var(--yellow)}
.order-intro{max-width:640px;margin:0 0 48px 25%;font-size:18px;line-height:1.45}
.order-form{margin-left:25%;border-top:1px solid rgba(0,0,0,.35)}
.form-grid{display:grid;grid-template-columns:1fr 1fr}
.order-form label{padding:20px;display:flex;flex-direction:column;gap:11px;border-right:1px solid rgba(0,0,0,.25);border-bottom:1px solid rgba(0,0,0,.25);font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.order-form input,.order-form select{padding:10px 0;border:0;border-bottom:1px solid rgba(0,0,0,.35);background:transparent;font-size:16px;outline:none}
.form-submit{width:100%;padding:23px;border:0;background:var(--ink);color:#fff;display:flex;justify-content:space-between;font-size:14px;text-transform:uppercase;cursor:pointer}
.form-note{font-size:11px}
.contacts-page{min-height:100svh;padding:140px 4vw 70px;background:var(--blue);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}
.contacts-page-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}
.contacts-page h1{position:relative;z-index:2}
.contacts-page-grid>div>p{max-width:650px;font-size:18px;line-height:1.5}

.contact-form{position:relative;z-index:3;width:100%;margin-top:42px;border-top:1px solid currentColor}
.contact-form-grid{display:grid;grid-template-columns:1fr 1fr}
.contact-form label{display:flex;flex-direction:column;gap:10px;padding:18px 0;border-bottom:1px solid currentColor}
.contact-form-grid label:first-child{padding-right:20px}
.contact-form-grid label:last-child{padding-left:20px;border-left:1px solid currentColor}
.contact-form label>span{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.contact-form input,.contact-form textarea{width:100%;padding:8px 0;border:0;background:transparent;color:inherit;outline:none;font-size:17px;line-height:1.45;resize:vertical}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:currentColor;opacity:.55}
.contact-form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-form-actions{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;padding-top:18px}
.contact-form-actions button{min-height:64px;padding:0 22px;border:0;border-radius:999px;background:var(--bp-blue,var(--blue));color:#fff;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.1em;cursor:pointer}
.contact-form-actions button:disabled{opacity:.6;cursor:wait}
.contact-form-actions button b{font-size:20px;transform:rotate(-45deg)}
.contact-form-actions p{margin:0;font-size:10px;line-height:1.45;opacity:.7}
.contact-form-status{min-height:24px;margin-top:16px;font-size:13px;line-height:1.4}
.contact-form-direct{margin-top:20px;padding-top:18px;border-top:1px solid currentColor}
.contact-form-direct>span{display:block;margin-bottom:10px;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.contact-form-direct a{min-height:82px;padding:14px 18px 14px 22px;border:1px solid currentColor;border-radius:22px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 20px;transition:transform .25s,background .25s,color .25s}
.contact-form-direct small{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.72}
.contact-form-direct strong{grid-column:1;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(23px,2.65vw,38px);font-weight:400;line-height:1;letter-spacing:-.045em;white-space:nowrap}
.contact-form-direct b{grid-column:2;grid-row:1/3;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--bp-orange,#ff6a22);color:#fff;font-size:20px;font-weight:400}
.contact-form-direct a:hover{transform:translateY(-3px);background:var(--bp-blue,var(--blue));color:#fff}
.contact-form-light{color:#fff}
.contact-form-light .contact-form-actions button{background:#fff;color:var(--blue)}
.contact-form-light .contact-form-direct a:hover{background:#fff;color:var(--blue)}
.contact-form-home{max-width:900px;color:var(--bp-blue)}
.contacts-page .contact-form-grid{grid-template-columns:1fr}
.contacts-page .contact-form-grid label:first-child,.contacts-page .contact-form-grid label:last-child{padding-left:0;padding-right:0;border-left:0}
.contacts-page .contact-form-direct strong{font-size:clamp(22px,2vw,29px)}

.requests-page{min-height:100svh;padding:140px 4vw 80px;background:var(--paper)}
.requests-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:60px}
.requests-head h1,.requests-page>h1{margin:22px 0 0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(64px,9vw,130px);font-weight:400;line-height:.82;text-transform:uppercase}
.requests-head>a{padding:12px 18px;border:1px solid var(--ink);border-radius:999px;font-size:11px;text-transform:uppercase}
.requests-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.requests-list article{padding:26px;border:1px solid var(--line);background:#fff}
.requests-list article>div{display:flex;gap:18px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.requests-list article h2{margin:46px 0 10px;font-size:28px;font-weight:400}
.request-contact{font-size:14px;text-decoration:underline}
.requests-list article>p:last-child{margin:28px 0 0;white-space:pre-wrap;font-size:15px;line-height:1.55}
.requests-empty{font-size:20px}

@media(max-width:900px){
  .site-header{height:68px;padding:0 18px;grid-template-columns:1fr auto}
  .brand{width:44px;height:52px}
  .brand img{width:40px}
  .desktop-nav,.header-call{display:none}
  .menu-toggle{display:block}
  .mobile-menu{display:flex;position:fixed;z-index:70;inset:68px 0 0;padding:34px 20px 26px;background:var(--paper);flex-direction:column;justify-content:space-between;transform:translateY(-110%);transition:transform .35s cubic-bezier(.2,.7,.1,1);pointer-events:none}
  .mobile-menu.is-open{transform:translateY(0);pointer-events:auto}
  .mobile-menu nav{display:flex;flex-direction:column}
  .mobile-menu nav a{padding:17px 0;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:18px;font-family:"Arial Narrow",Arial,sans-serif;font-size:38px;line-height:1;text-transform:uppercase}
  .mobile-menu nav span{font-family:Arial,sans-serif;font-size:9px;letter-spacing:.1em}
  .mobile-menu-phone{padding-top:16px;border-top:1px solid var(--ink);display:flex;justify-content:space-between;font-size:18px}
  .hero{min-height:100svh;padding:96px 20px 28px}
  .hero-meta{top:90px;right:20px}
  .hero h1{font-size:clamp(58px,13.3vw,104px);line-height:.82}
  .hero-rings{width:68vw;height:40vw;right:-20vw;top:25%}
  .section-pad{padding:88px 20px}
  .manifesto,.section-head,.featured-case-head{grid-template-columns:1fr}
  .manifesto{min-height:0;gap:46px}
  .manifesto-body h2,.section-head h2{font-size:clamp(50px,10vw,82px)}
  .service-tabs{grid-template-columns:repeat(3,1fr)}
  .service-tabs button:nth-child(3){border-right:0}
  .service-tabs button:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .service-detail{grid-template-columns:1fr}
  .service-intro{border-right:0;border-bottom:1px solid var(--line)}
  .case-layout{grid-template-columns:1fr}
  .case-visual{min-height:720px}
  .case-copy{padding:56px 0 0}
  .singularity-grid{grid-template-columns:1fr;gap:70px}
  .singularity-progress{width:min(520px,100%);aspect-ratio:1.6/1;min-height:0;justify-self:center}
  .clothing-overlay{padding:92px 20px 34px}
  .about{grid-template-columns:1fr;gap:64px}
  .project-grid{grid-template-columns:repeat(2,1fr)}
  .contact-cta{padding:100px 20px 42px}
  .site-footer{padding:54px 20px 22px;grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .inner-hero,.case-hero{padding:120px 20px 42px}
  .service-group{grid-template-columns:1fr}
  .service-group-head{min-height:280px;border-right:0;border-bottom:1px solid var(--line)}
  .projects-page-grid{grid-template-columns:1fr}
  .projects-page-grid>a:first-child{grid-column:1}
  .work-card.work-featured .work-image{aspect-ratio:4/5}
  .case-story-intro,.about-statement,.case-method,.about-editorial{grid-template-columns:1fr}
  .case-story-intro,.about-statement{margin-bottom:70px}
  .metric-wall{grid-template-columns:1fr}
  .stats-gallery{grid-template-columns:1fr 1fr}
  .work-list{margin-left:0}
  .case-progress{position:static;align-items:flex-start;margin-top:54px}
  .principles{grid-template-columns:1fr}
  .clothing-intro{grid-template-columns:1fr}
  .clothing-gallery{height:auto;grid-template-columns:1fr 1fr}
  .clothing-gallery img{aspect-ratio:4/5}
  .clothing-gallery img:last-child{grid-column:1/-1;aspect-ratio:16/9}
  .order-intro,.order-form{margin-left:0}
  .contacts-page{padding:120px 20px 42px}
  .contacts-page-grid{grid-template-columns:1fr;gap:40px}
}

@media(max-width:600px){
  .hero{padding-top:90px}
  .hero-meta{display:none}
  .hero h1{margin:26px 0 32px;font-size:clamp(46px,15vw,68px);line-height:.87;letter-spacing:-.055em}
  .hero h1 span{white-space:normal}
  .hero-rings{width:88vw;height:54vw;right:-38vw;top:26%}
  .hero-bottom{align-items:stretch;flex-direction:column;gap:24px}
  .hero-bottom p{max-width:92%;font-size:15px}
  .hero-bottom .pill{width:100%}
  .section-pad{padding:72px 18px}
  .section-index{margin-bottom:34px}
  .manifesto{gap:0}
  .manifesto-body h2,.section-head h2,.case-copy h2,.singularity h2,.about h2,.contact-cta h2{font-size:clamp(44px,13vw,64px);line-height:.9;letter-spacing:-.05em}
  .manifesto-body>p{margin:30px 0;font-size:17px}
  .approach-tags{display:grid;grid-template-columns:1fr 1fr}
  .approach-tags span{text-align:center;padding:10px}
  .section-head{margin-bottom:42px}
  .service-tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .service-tabs::-webkit-scrollbar{display:none}
  .service-tabs button{flex:0 0 46%;min-height:98px;border-bottom:0!important;scroll-snap-align:start}
  .service-intro{padding:26px 20px;grid-template-columns:42px 1fr}
  .service-intro h3{font-size:clamp(38px,11vw,52px);line-height:.9}
  .service-intro p{grid-column:1/-1;margin-top:30px;font-size:16px}
  .service-detail li{padding:18px 20px;font-size:15px}
  .featured-case-head{margin-bottom:28px}
  .featured-case-head>p{font-size:11px}
  .case-visual{min-height:0;aspect-ratio:4/5}
  .case-copy{padding-top:38px}
  .case-description{margin:28px 0;font-size:16px}
  .case-stats{grid-template-columns:1fr 1fr;margin-bottom:32px}
  .case-stats div:nth-child(3){grid-column:1/-1;border-top:1px solid var(--line);margin-top:18px;padding-top:18px}
  .case-stats strong{font-size:42px}
  .case-copy .pill{width:100%}
  .singularity-grid{margin-top:0;gap:50px}
  .singularity-main>p:not(.project-label){font-size:16px}
  .singularity-progress{aspect-ratio:1.25/1}
  .singularity-progress strong{font-size:112px}
  .singularity-progress>span{right:17%;top:18%;font-size:21px}
  .clothing-feature{min-height:720px}
  .clothing-feature>img{object-position:57% center}
  .clothing-overlay h2{font-size:clamp(52px,15vw,72px);line-height:.86}
  .clothing-overlay p:not(.project-label){font-size:16px}
  .clothing-overlay .pill{width:100%}
  .about-copy .section-index{margin-bottom:34px}
  .about-copy .lead{margin-top:28px;font-size:23px}
  .about-copy blockquote{font-size:19px}
  .project-grid{grid-template-columns:1fr}
  .selected-head{margin-bottom:40px}
  .contact-rings{width:110vw;height:65vw;right:-54vw;top:8%}
  .contact-cta{min-height:76svh}
  .contact-cta h2{font-size:clamp(52px,15vw,72px);line-height:.86}
  .phone-link{font-size:28px}
  .site-footer{grid-template-columns:1fr;gap:28px}
  .footer-brand,.footer-bottom{grid-column:1}
  .footer-bottom{margin-top:24px;flex-direction:column;gap:9px}
  .inner-hero,.case-hero{min-height:70svh;padding:104px 18px 34px}
  .inner-hero h1,.case-hero h1,.contacts-page h1,.clothing-page-hero h1{font-size:clamp(46px,14vw,68px);line-height:.9;letter-spacing:-.05em;overflow-wrap:break-word}
  .inner-hero>p:last-child,.case-hero>p:last-child{font-size:16px}
  .service-group-head{min-height:230px;padding:22px}
  .service-group-head h2{font-size:42px}
  .compact-cta{padding:70px 18px}
  .compact-cta h2{font-size:48px}
  .work-card>div:last-child{flex-direction:column;gap:8px}
  .work-card p{text-align:left}
  .stats-gallery,.form-grid,.clothing-gallery{grid-template-columns:1fr}
  .metric-wall div{padding:26px}
  .role-panel{padding:32px 20px}
  .work-list>div{grid-template-columns:48px 1fr}
  .about-editorial .lead{font-size:23px}
  .clothing-gallery img:last-child{grid-column:1;aspect-ratio:4/5}
  .order-form label{border-right:0}
  .contact-form-grid,.contact-form-actions,.requests-list{grid-template-columns:1fr}
  .contact-form-grid label:first-child,.contact-form-grid label:last-child{padding-left:0;padding-right:0;border-left:0}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* By P. homepage — blue intersection system */
.bp-site{
  --bp-blue:#324997;
  --bp-deep:#101c51;
  --bp-electric:#4665de;
  --bp-orange:#ff6a22;
  --bp-ice:#e9edff;
  --bp-paper:#f4f5f8;
  background:var(--bp-paper);
  color:var(--bp-deep);
}
.bp-site .site-header{
  height:72px;
  background:rgba(50,73,151,.9);
  color:#fff;
  border-color:rgba(255,255,255,.22);
  backdrop-filter:blur(18px);
  animation:bpHeaderIn .75s cubic-bezier(.2,.8,.2,1) both;
}
.bp-site .site-header .brand img{filter:invert(1);}
.bp-site .site-header .brand{width:62px;height:54px}
.bp-site .header-call{padding:12px 18px;border-radius:999px;background:var(--bp-orange);color:#fff;box-shadow:0 8px 28px rgba(255,106,34,.34)}
.bp-site .mobile-menu{background:var(--bp-blue);color:#fff}
.bp-site .mobile-menu nav a,.bp-site .mobile-menu-phone{border-color:rgba(255,255,255,.28)}
.bp-site .bp-pad{padding:132px 4vw}
.bp-site h1,.bp-site h2,.bp-site h3{font-stretch:condensed}

.bp-hero{
  min-height:100svh;
  padding:104px 4vw 34px;
  position:relative;
  display:grid;
  grid-template-rows:auto 1fr auto;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px) 0 0/25% 100%,
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px) 0 0/100% 25%,
    var(--bp-blue);
}
.bp-hero:before{content:"";position:absolute;z-index:0;width:min(72vw,1050px);height:min(62vw,900px);right:-18vw;top:4%;border-radius:50%;background:radial-gradient(circle,rgba(255,106,34,.26) 0,rgba(255,106,34,.1) 28%,transparent 66%);filter:blur(10px);animation:bpGlow 8s ease-in-out infinite}
.bp-hero:after{content:"";position:absolute;inset:72px 0 auto;height:1px;background:rgba(255,255,255,.2)}
.bp-hero-topline{display:grid;grid-template-columns:1fr 1fr 1fr;position:relative;z-index:3;font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;animation:bpHeroRise .75s .2s cubic-bezier(.2,.8,.2,1) both}
.bp-hero-topline span:nth-child(2){text-align:center}.bp-hero-topline span:last-child{text-align:right}
.bp-hero-title{align-self:center;position:relative;z-index:4;padding:8vh 0 4vh}
.bp-hero-title>p{width:max-content;margin:0 0 24px;padding:9px 13px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(16,28,81,.28);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(8px);animation:bpHeroRise .8s .4s cubic-bezier(.2,.8,.2,1) both}
.bp-hero h1{margin:0;max-width:1450px;font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-size:clamp(64px,10.25vw,164px);font-weight:700;line-height:.78;letter-spacing:-.075em;text-transform:uppercase}
.bp-hero h1 span{display:block;white-space:nowrap;animation:bpTitleIn .9s cubic-bezier(.16,.84,.25,1) both}
.bp-hero h1 span:nth-child(1){animation-delay:.52s}
.bp-hero h1 span:nth-child(2){animation-delay:.68s}
.bp-hero h1 span:nth-child(3){animation-delay:.84s}
.bp-hero h1 span:nth-child(2){margin-left:8vw}
.bp-hero h1 span:nth-child(3){margin-left:1.8vw}
.bp-hero h1 em{position:relative;display:inline-block;font-family:Georgia,serif;font-size:.79em;font-weight:400;letter-spacing:-.06em;text-transform:none;color:var(--bp-orange);-webkit-text-stroke:0;text-shadow:0 10px 38px rgba(255,106,34,.34);animation:bpNewPulse 4.5s ease-in-out infinite}
.bp-hero h1 em:after{content:"";position:absolute;left:4%;right:-2%;bottom:-.04em;height:.055em;border-radius:999px;background:var(--bp-orange);transform:rotate(-2deg);transform-origin:left center}
.bp-hero-orbit{position:absolute;z-index:1;width:min(56vw,830px);height:min(31vw,455px);right:-5vw;top:25%;transform:rotate(-11deg);animation:bpFloat 9s ease-in-out infinite}
.bp-hero-orbit i{position:absolute;inset:0;border:1px solid rgba(255,255,255,.66);border-radius:50%;animation:bpRingReveal .8s cubic-bezier(.2,.8,.2,1) both}
.bp-hero-orbit i:nth-child(2){transform:translateY(18%)}
.bp-hero-orbit i:nth-child(3){transform:translateY(36%)}
.bp-hero-orbit i:nth-child(4){transform:translateY(54%)}
.bp-hero-orbit i:nth-child(1){animation-delay:.25s}.bp-hero-orbit i:nth-child(2){animation-delay:.36s}.bp-hero-orbit i:nth-child(3){animation-delay:.47s}.bp-hero-orbit i:nth-child(4){animation-delay:.58s}
.bp-hero-orbit b{position:absolute;left:46%;top:50%;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--bp-orange);color:#fff;font-size:28px;font-weight:400;box-shadow:0 0 0 10px rgba(255,106,34,.13),0 14px 38px rgba(16,28,81,.3);transform:rotate(11deg);animation:bpCoreIn .7s .9s cubic-bezier(.2,.9,.25,1.3) both}
.social-rain{position:absolute;z-index:2;inset:72px 0 0;overflow:hidden;pointer-events:none;animation:bpSocialLayerIn .8s .85s ease-out both}
.social-drop{--x:70%;--drift:0vw;--land:42vh;--turn:320deg;--duration:9s;--delay:-1s;position:absolute;left:var(--x);top:-104px;width:clamp(66px,5.8vw,90px);aspect-ratio:1;border:1px solid rgba(255,255,255,.7);border-radius:25%;display:grid;place-items:center;color:#fff;opacity:0;box-shadow:0 22px 55px rgba(9,18,66,.42),inset 0 1px 0 rgba(255,255,255,.28);animation:socialFall var(--duration) cubic-bezier(.22,.72,.26,1) var(--delay) infinite;will-change:transform,opacity;backdrop-filter:blur(6px)}
.social-logo{display:block;width:68%;height:68%;filter:drop-shadow(0 3px 8px rgba(0,0,0,.14))}
.social-logo svg{display:block;width:100%;height:100%;overflow:visible}
.social-logo path,.social-logo rect,.social-logo circle{fill:#fff}
.social-instagram .social-logo rect,.social-instagram .social-logo circle:not(.icon-fill){fill:none;stroke:#fff;stroke-width:1.9}
.social-instagram .social-logo .icon-fill{fill:#fff;stroke:0}
.social-max .social-logo{width:72%;height:72%}.social-max .max-wave{fill:none;stroke:#6252ef;stroke-width:1.55;stroke-linecap:round}
.social-tiktok .tiktok-cyan{fill:#25f4ee}.social-tiktok .tiktok-pink{fill:#fe2c55}.social-tiktok .social-logo>svg>path:last-child{fill:#fff}
.social-rutube .rutube-dot{fill:#ed143b}
.social-telegram{--x:55%;--drift:9vw;--land:35vh;--turn:280deg;--duration:8.5s;--delay:-.4s;background:#2aabee;border-radius:50%}
.social-instagram{--x:67%;--drift:3vw;--land:45vh;--turn:-310deg;--duration:10.2s;--delay:-7.2s;background:radial-gradient(circle at 30% 105%,#ffd600 0 22%,#ff7a00 36%,#ff0169 56%,#d300c5 75%,#7638fa 100%)}
.social-max{--x:79%;--drift:-7vw;--land:29vh;--turn:240deg;--duration:9.4s;--delay:-3.8s;background:linear-gradient(145deg,#5d4cff,#20b8f9)}
.social-facebook{--x:90%;--drift:-10vw;--land:52vh;--turn:-260deg;--duration:11s;--delay:-8.8s;background:#1877f2;border-radius:50%}
.social-tiktok{--x:61%;--drift:12vw;--land:59vh;--turn:310deg;--duration:10.8s;--delay:-5.1s;background:#070707}
.social-vk{--x:74%;--drift:8vw;--land:65vh;--turn:-220deg;--duration:9.8s;--delay:-6.6s;background:#0077ff}
.social-youtube{--x:86%;--drift:-3vw;--land:39vh;--turn:260deg;--duration:8.9s;--delay:-2.2s;background:#ff0033;border-radius:24%}
.social-rutube{--x:94%;--drift:-15vw;--land:61vh;--turn:-300deg;--duration:11.4s;--delay:-9.6s;background:#100943}
.bp-hero-footer{position:relative;z-index:3;padding-top:20px;border-top:1px solid rgba(255,255,255,.4);display:flex;justify-content:space-between;align-items:flex-end;gap:30px;animation:bpHeroRise .85s 1.06s cubic-bezier(.2,.8,.2,1) both}
.bp-hero-footer>p{max-width:620px;margin:0;font-size:18px;line-height:1.4}
.bp-circle-link{width:126px;height:126px;padding:20px;border:1px solid var(--bp-orange);border-radius:50%;background:var(--bp-orange);color:#fff;display:flex;flex-direction:column;justify-content:space-between;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.09em;box-shadow:0 16px 42px rgba(16,28,81,.28);transition:.3s}
.bp-circle-link b{align-self:flex-end;font-size:18px;transform:rotate(-45deg)}.bp-circle-link:hover{background:#fff;border-color:#fff;color:var(--bp-blue);transform:rotate(6deg) scale(1.04)}

.bp-ticker{overflow:hidden;background:#fff;color:var(--bp-blue);border-bottom:1px solid rgba(50,73,151,.25);white-space:nowrap}
.bp-ticker div{width:max-content;padding:17px 0;font-family:"Arial Narrow",Arial,sans-serif;font-size:16px;font-weight:700;letter-spacing:.08em;animation:bpTicker 24s linear infinite}
.bp-ticker i{padding:0 25px;font-family:Georgia,serif;font-weight:400;color:var(--bp-orange)}

.bp-kicker{display:flex;align-items:center;gap:26px;font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--bp-blue)}
.bp-kicker span:first-child{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:8px}
.bp-kicker-light{color:#fff}
.bp-intro{min-height:88svh;display:grid;grid-template-columns:1fr 2.2fr 1fr;gap:5vw;align-items:start;position:relative;overflow:hidden}
.bp-intro-copy h2,.bp-lab-head h2,.bp-section-head h2,.bp-case-copy h2,.bp-founder-copy h2{
  margin:0;font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-size:clamp(56px,7.4vw,116px);font-weight:700;line-height:.83;letter-spacing:-.065em;text-transform:uppercase
}
.bp-intro-copy p{max-width:690px;margin:52px 0 0 25%;font-size:21px;line-height:1.48}
.bp-cross-grid{height:430px;position:relative;align-self:center}
.bp-cross-grid:before,.bp-cross-grid:after{content:"";position:absolute;background:var(--bp-blue)}
.bp-cross-grid:before{left:50%;top:0;width:1px;height:100%}.bp-cross-grid:after{left:0;top:50%;width:100%;height:1px}
.bp-cross-grid span{position:absolute;width:78%;height:42%;left:11%;top:29%;border:1px solid rgba(50,73,151,.5);border-radius:50%;transform:rotate(25deg);animation:bpCrossA 9s ease-in-out infinite}
.bp-cross-grid span:nth-child(2){transform:rotate(-25deg);animation-name:bpCrossB;animation-duration:11s}.bp-cross-grid span:nth-child(3){transform:rotate(90deg);animation-name:bpCrossC;animation-duration:13s}
.bp-cross-grid b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--bp-orange);color:#fff;font-size:12px;letter-spacing:.12em;box-shadow:0 12px 34px rgba(255,106,34,.24);animation:bpCorePulse 4s ease-in-out infinite}

.bp-lab{background:var(--bp-deep);color:#fff}
.bp-lab-head{display:grid;grid-template-columns:1.5fr .55fr;gap:10vw;align-items:end;margin:60px 0 80px}
.bp-lab-head p{margin:0;font-size:18px;line-height:1.5}
.intersection-tool{border:1px solid rgba(255,255,255,.28);display:grid;grid-template-columns:310px 1fr;min-height:690px}
.intersection-options{border-right:1px solid rgba(255,255,255,.28);display:flex;flex-direction:column}
.intersection-options button{flex:1;min-height:82px;padding:19px 22px;border:0;border-bottom:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;display:flex;align-items:center;gap:26px;text-align:left;text-transform:uppercase;font-size:13px;letter-spacing:.05em;cursor:pointer;transition:.25s}
.intersection-options button:last-child{border-bottom:0}.intersection-options button span{font-size:9px;opacity:.5}
.intersection-options button:hover{background:rgba(255,255,255,.07)}
.intersection-options button.is-active{background:#fff;color:var(--bp-deep)}
.intersection-stage{position:relative;min-height:690px;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(70,101,222,.22),transparent 45%)}
.intersection-circle{position:absolute;width:min(44vw,610px);aspect-ratio:1;border:1px solid rgba(255,255,255,.72);border-radius:50%;display:grid;place-items:center;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.intersection-circle span{padding:10px 16px;border-radius:999px;background:var(--bp-deep);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.circle-a{left:8%;top:50%;transform:translateY(-50%);animation:bpCircleA 8s ease-in-out infinite}.circle-b{right:8%;top:50%;transform:translateY(-50%);animation:bpCircleB 10s ease-in-out infinite}
.intersection-result{position:absolute;z-index:3;left:50%;top:50%;width:min(290px,34%);transform:translate(-50%,-50%);text-align:center}
.intersection-result small{display:block;margin-bottom:15px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;opacity:.7}
.intersection-result strong{font-family:Georgia,serif;font-size:clamp(24px,3vw,46px);font-weight:400;font-style:italic;line-height:1.08}

.bp-services{background:#fff}
.bp-services .bp-kicker span:first-child{border-color:var(--bp-orange);background:var(--bp-orange);color:#fff;box-shadow:0 8px 22px rgba(255,106,34,.24)}
.bp-section-head{display:grid;grid-template-columns:.7fr 1.55fr .55fr;gap:5vw;align-items:end;margin-bottom:78px}
.bp-section-head>p{margin:0;font-size:17px;line-height:1.5}
.bp-site .service-explorer{border-color:var(--bp-blue)}
.bp-site .service-tabs{border-color:rgba(50,73,151,.25)}
.bp-site .service-tabs button{min-height:132px;border-color:rgba(50,73,151,.2);color:var(--bp-deep)}
.bp-site .service-tabs button[aria-selected=true]{background:var(--bp-blue);color:#fff}
.bp-site .service-detail{min-height:520px}
.bp-site .service-intro{border-color:rgba(50,73,151,.25)}
.bp-site .service-intro h3{color:var(--bp-blue)}
.bp-site .service-detail li{border-color:rgba(50,73,151,.22)}
.bp-line-link{margin:36px 0 0 auto;width:min(460px,100%);padding:20px 2px 12px;border-bottom:1px solid currentColor;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.12em;transition:padding .25s}
.bp-line-link b{font-size:18px;transform:rotate(-45deg)}.bp-line-link:hover{padding-left:14px;padding-right:14px}
.bp-line-link-light{color:#fff}

.bp-case{background:var(--bp-blue);color:#fff}
.bp-case-grid{margin-top:60px;border-top:1px solid rgba(255,255,255,.35);display:grid;grid-template-columns:.9fr 1.1fr}
.bp-case-visual{min-height:760px;position:relative;overflow:hidden;background:var(--bp-deep)}
.bp-case-visual:after,.bp-project-image:after{content:"";position:absolute;inset:0;background:var(--bp-blue);mix-blend-mode:color;pointer-events:none}
.bp-case-visual img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08);transition:transform .8s}
.bp-case-visual:hover img{transform:scale(1.03)}
.bp-case-stamp{position:absolute;z-index:2;inset:24px auto auto 24px;width:84px;height:84px;padding:13px;border:1px solid #fff;border-radius:50%;display:flex;flex-direction:column;justify-content:space-between;font-size:8px;letter-spacing:.14em}
.bp-case-stamp b{align-self:flex-end;font-size:16px}
.bp-case-copy{padding:54px 0 0 5vw;display:flex;flex-direction:column;align-items:flex-start}
.bp-overline{margin:0 0 30px;font-size:10px;font-weight:700;letter-spacing:.16em}
.bp-case-copy h2{font-size:clamp(48px,5.5vw,84px)}
.bp-case-copy>p:not(.bp-overline){max-width:610px;margin:42px 0;font-size:18px;line-height:1.52}
.bp-metrics{width:100%;margin:auto 0 0;border-top:1px solid rgba(255,255,255,.32);display:grid;grid-template-columns:repeat(3,1fr)}
.bp-metrics div{padding:24px 18px 0 0}
.bp-metrics strong{display:block;font-size:clamp(42px,5vw,74px);font-weight:400;letter-spacing:-.07em;line-height:1}
.bp-metrics span{display:block;margin-top:9px;font-size:9px;line-height:1.35;letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.bp-case-copy .bp-line-link{margin-top:42px}

.bp-projects{background:var(--bp-paper)}
.bp-section-head-projects{grid-template-columns:.7fr 2.1fr}.bp-section-head-projects h2{grid-column:auto / span 2}
.bp-project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.bp-project{grid-column:span 6;margin-bottom:58px}
.bp-project:nth-child(2),.bp-project:nth-child(3){grid-column:span 3}
.bp-project-image{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--bp-blue)}
.bp-project:first-child .bp-project-image{aspect-ratio:16/10}
.bp-project-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);transition:transform .6s,filter .6s}
.bp-project:hover img{transform:scale(1.035);filter:grayscale(.2)}
.bp-project-image span{position:absolute;z-index:2;left:16px;top:16px;width:38px;height:38px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:8px}
.bp-project>div:last-child{padding-top:16px;border-top:1px solid rgba(50,73,151,.3);display:grid;grid-template-columns:1.25fr 1fr auto;gap:20px;align-items:start}
.bp-project h3,.bp-project p,.bp-project b{margin:0;font-size:10px;line-height:1.35;letter-spacing:.09em;text-transform:uppercase}
.bp-project h3{font-size:13px}.bp-project p{color:var(--bp-blue)}.bp-project b{font-weight:400;text-align:right}

.bp-founder{padding-top:0!important;padding-bottom:0!important;display:grid;grid-template-columns:1fr 1fr;background:var(--bp-deep);color:#fff}
.bp-founder-image{position:relative;min-height:900px;margin-left:-4vw;overflow:hidden;background:var(--bp-blue)}
.bp-founder-image img{width:100%;height:100%;object-fit:cover;object-position:58% 52%;filter:none}
.bp-founder-image span{position:absolute;z-index:2;left:24px;bottom:24px;font-size:9px;letter-spacing:.16em}
.bp-founder-copy{padding:120px 4vw 110px 7vw;display:flex;flex-direction:column;align-items:flex-start}
.bp-founder-copy h2{margin-top:76px;font-size:clamp(64px,7.2vw,112px)}
.bp-founder-lead{max-width:660px;margin:54px 0 0;font-size:20px;line-height:1.45}
.bp-about-text{max-width:690px;margin:34px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:28px}
.bp-about-text p{margin:0;font-size:15px;line-height:1.55;color:rgba(255,255,255,.78)}
.bp-about-tags{width:100%;margin:38px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.bp-about-tags span{padding:10px 14px;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:9px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.bp-founder-copy blockquote{width:100%;margin:auto 0 0;padding:28px 0;border-top:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3);font-family:Georgia,serif;font-size:24px;font-weight:400;font-style:italic;line-height:1.4}

.bp-contact{min-height:95svh;padding:130px 4vw 54px;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:var(--bp-ice);color:var(--bp-blue)}
.bp-contact>p:first-of-type{position:relative;z-index:2;margin:0;font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.bp-contact h2{position:relative;z-index:2;margin:20px 0 30px;display:grid;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(64px,8.4vw,138px);font-weight:700;line-height:.78;letter-spacing:-.07em;text-transform:uppercase}
.bp-contact h2 span{display:block;white-space:nowrap}
.bp-contact h2 em{font-family:Georgia,serif;font-size:.82em;font-weight:400;text-transform:none;color:var(--bp-orange)}
.bp-contact-text{position:relative;z-index:2;max-width:600px;margin:0;font-size:18px;line-height:1.48}
.bp-contact-orbits{position:absolute;width:64vw;height:34vw;right:-12vw;top:10%;transform:rotate(-10deg);animation:bpContactFloat 12s ease-in-out infinite}
.bp-contact-orbits span{position:absolute;inset:0;border:1px solid rgba(50,73,151,.52);border-radius:50%}
.bp-contact-orbits span:nth-child(2){transform:translateY(18%)}.bp-contact-orbits span:nth-child(3){transform:translateY(36%)}.bp-contact-orbits span:nth-child(4){transform:translateY(54%)}
.bp-site .site-footer{background:var(--bp-blue);color:#fff}.bp-site .footer-brand img{filter:invert(1)}.bp-site .footer-bottom{border-color:rgba(255,255,255,.25)}
.bp-site .contact-form-actions button{background:var(--bp-orange);box-shadow:0 12px 30px rgba(255,106,34,.22)}

@keyframes bpFloat{0%,100%{transform:rotate(-11deg) translateY(0)}50%{transform:rotate(-8deg) translateY(-16px)}}
@keyframes bpGlow{0%,100%{opacity:.74;transform:scale(.96)}50%{opacity:1;transform:scale(1.07)}}
@keyframes bpNewPulse{0%,100%{filter:brightness(1);transform:translateY(0)}50%{filter:brightness(1.16);transform:translateY(-.025em)}}
@keyframes bpHeaderIn{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}
@keyframes bpHeroRise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes bpTitleIn{from{opacity:0;transform:translate3d(0,1em,0) rotate(1.5deg);filter:blur(8px)}to{opacity:1;transform:translate3d(0,0,0) rotate(0);filter:blur(0)}}
@keyframes bpRingReveal{from{opacity:0;stroke-dashoffset:100;filter:blur(5px)}to{opacity:1;stroke-dashoffset:0;filter:blur(0)}}
@keyframes bpCoreIn{from{opacity:0;transform:rotate(11deg) scale(.25)}to{opacity:1;transform:rotate(11deg) scale(1)}}
@keyframes bpSocialLayerIn{from{opacity:0}to{opacity:1}}
@keyframes socialFall{
  0%{opacity:0;transform:translate3d(0,-110px,0) rotate(0) scale(.72)}
  8%{opacity:1}
  58%{opacity:1;transform:translate3d(var(--drift),var(--land),0) rotate(var(--turn)) scale(1)}
  66%{transform:translate3d(var(--drift),calc(var(--land) - 18px),0) rotate(calc(var(--turn) + 18deg)) scale(1.06)}
  74%{transform:translate3d(var(--drift),var(--land),0) rotate(calc(var(--turn) + 34deg)) scale(1)}
  90%{opacity:1;transform:translate3d(calc(var(--drift) + 2vw),calc(var(--land) + 9px),0) rotate(calc(var(--turn) + 66deg)) scale(.96)}
  100%{opacity:0;transform:translate3d(calc(var(--drift) + 4vw),calc(var(--land) + 36px),0) rotate(calc(var(--turn) + 100deg)) scale(.78)}
}
@keyframes bpTicker{to{transform:translateX(-50%)}}
@keyframes bpCrossA{0%,100%{transform:rotate(25deg) scale(1)}50%{transform:rotate(38deg) scale(1.05)}}
@keyframes bpCrossB{0%,100%{transform:rotate(-25deg) scale(1.03)}50%{transform:rotate(-39deg) scale(.97)}}
@keyframes bpCrossC{0%,100%{transform:rotate(90deg) scale(.98)}50%{transform:rotate(106deg) scale(1.04)}}
@keyframes bpCorePulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.12)}}
@keyframes bpCircleA{0%,100%{transform:translate(-2%,-50%) rotate(-3deg)}50%{transform:translate(5%,-50%) rotate(5deg)}}
@keyframes bpCircleB{0%,100%{transform:translate(2%,-50%) rotate(3deg)}50%{transform:translate(-5%,-50%) rotate(-5deg)}}
@keyframes bpContactFloat{0%,100%{transform:rotate(-10deg) translate3d(0,0,0)}50%{transform:rotate(-6deg) translate3d(-4%,3%,0)}}
@keyframes bpArrowPulse{0%,100%{transform:rotate(-45deg) translateX(0)}50%{transform:rotate(-45deg) translateX(5px)}}

@media(max-width:1000px){
  .bp-site .bp-pad{padding:100px 24px}
  .bp-hero{padding-left:24px;padding-right:24px}
  .bp-intro{grid-template-columns:1fr 2fr}.bp-cross-grid{grid-column:2}
  .bp-section-head{grid-template-columns:1fr 2fr}.bp-section-head>p{grid-column:2}
  .intersection-tool{grid-template-columns:250px 1fr}.intersection-stage{min-height:600px}
  .bp-case-grid{grid-template-columns:1fr}.bp-case-visual{min-height:0;aspect-ratio:4/5}.bp-case-copy{padding:55px 0 0}
  .bp-founder-image{margin-left:-24px}.bp-founder-copy{padding-left:6vw}
}

@media(max-width:700px){
  .bp-site .site-header{height:64px;padding:0 18px}.bp-site .site-header .brand{width:48px}
  .bp-site .bp-pad{padding:78px 18px}
  .bp-hero{min-height:100svh;padding:88px 18px 24px}
  .bp-hero-topline{grid-template-columns:1fr 1fr}.bp-hero-topline span:nth-child(2){display:none}.bp-hero-topline span:last-child{text-align:right}
  .bp-hero-title{padding:8vh 0 3vh}
  .bp-hero-title>p{max-width:240px;font-size:8px;line-height:1.45}
  .bp-hero h1{font-size:clamp(48px,15.8vw,75px);line-height:.82;letter-spacing:-.065em}
  .bp-hero h1 span{white-space:normal}.bp-hero h1 span:nth-child(2),.bp-hero h1 span:nth-child(3){margin-left:0}
  .bp-hero h1 em{display:block;font-size:.82em}
  .bp-hero-orbit{width:105vw;height:64vw;right:-50vw;top:29%}.bp-hero-orbit b{width:38px;height:38px;font-size:20px}
  .social-rain{inset:64px 0 0}.social-drop{top:-72px;width:clamp(48px,13vw,58px);border-radius:15px;--land:38vh}.social-logo{width:68%;height:68%}.social-telegram{--x:43%;--drift:11vw}.social-instagram{--x:57%;--drift:4vw}.social-max{--x:70%;--drift:-4vw}.social-facebook{--x:84%;--drift:-15vw}.social-tiktok{--x:50%;--drift:17vw}.social-vk{--x:66%;--drift:8vw}.social-youtube{--x:78%;--drift:-7vw}.social-rutube{--x:88%;--drift:-19vw}
  .bp-hero-footer{align-items:stretch}.bp-hero-footer>p{max-width:67%;font-size:14px}.bp-circle-link{width:98px;height:98px;padding:15px}
  .bp-ticker div{font-size:13px}
  .bp-intro{min-height:0;grid-template-columns:1fr;gap:45px}.bp-intro-copy p{margin:34px 0 0;font-size:17px}.bp-cross-grid{grid-column:1;height:320px}
  .bp-intro-copy h2,.bp-lab-head h2,.bp-section-head h2,.bp-case-copy h2,.bp-founder-copy h2{font-size:clamp(45px,13.2vw,66px);line-height:.87}
  .bp-lab-head{grid-template-columns:1fr;gap:30px;margin:48px 0}
  .bp-lab-head p{font-size:16px}
  .intersection-tool{grid-template-columns:1fr;min-height:0}.intersection-options{border-right:0;border-bottom:1px solid rgba(255,255,255,.25);display:grid;grid-template-columns:repeat(2,1fr)}
  .intersection-options button{min-height:72px;padding:15px;border-right:1px solid rgba(255,255,255,.2);font-size:11px;gap:12px}
  .intersection-stage{min-height:430px}.intersection-circle{width:82vw}.circle-a{left:-29%}.circle-b{right:-29%}.intersection-result{width:48%}.intersection-result strong{font-size:25px}
  .bp-section-head{grid-template-columns:1fr;gap:32px;margin-bottom:48px}.bp-section-head>p{grid-column:1;font-size:16px}
  .bp-site .service-tabs button{min-height:100px}.bp-site .service-detail{min-height:0}
  .bp-case-grid{margin-top:42px}.bp-case-visual{aspect-ratio:4/5}.bp-case-copy{padding-top:40px}.bp-case-copy>p:not(.bp-overline){margin:30px 0;font-size:16px}
  .bp-metrics{grid-template-columns:1fr 1fr}.bp-metrics div:last-child{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.25);margin-top:20px}.bp-metrics strong{font-size:42px}
  .bp-project-grid{grid-template-columns:1fr;gap:0}.bp-project,.bp-project:nth-child(2),.bp-project:nth-child(3){grid-column:1}.bp-project:first-child .bp-project-image,.bp-project-image{aspect-ratio:4/5}
  .bp-project>div:last-child{grid-template-columns:1fr auto}.bp-project>div:last-child p{grid-row:2}.bp-project>div:last-child b{grid-column:2;grid-row:1/3}
  .bp-founder{grid-template-columns:1fr;padding:0!important}.bp-founder-image{min-height:0;aspect-ratio:4/5;margin:0}.bp-founder-copy{padding:76px 18px}.bp-founder-copy h2{margin-top:48px}.bp-founder-lead{margin-top:34px;font-size:17px}.bp-founder-copy blockquote{margin-top:68px;font-size:20px}.bp-about-text{grid-template-columns:1fr;gap:18px}.bp-about-tags{margin-top:30px}
  .bp-contact{min-height:92svh;padding:90px 18px 32px}.bp-contact h2{font-size:clamp(45px,12.6vw,64px);line-height:.86;letter-spacing:-.055em}.bp-contact h2 span{white-space:normal}.bp-contact-text{font-size:16px}.bp-contact-link{margin-top:36px;padding:15px 16px 15px 22px;font-size:25px}.bp-contact-link b{width:46px;height:46px}.bp-contact-orbits{width:120vw;height:70vw;right:-62vw;top:11%}
}

@media(prefers-reduced-motion:reduce){.bp-site .site-header,.bp-hero-topline,.bp-hero-title>p,.bp-hero h1 span,.bp-hero-footer,.bp-hero:before,.bp-hero h1 em,.bp-hero-orbit,.bp-hero-orbit i,.bp-hero-orbit b,.social-rain,.social-drop,.bp-ticker div,.bp-cross-grid span,.bp-cross-grid b,.intersection-circle,.bp-contact-orbits,.bp-contact-link b{animation:none}.social-drop{display:none}}
