/* Trend4you — a small, editorial design system. */
:root {
	--ink: #10131d;
	--navy: #10172a;
	--navy-2: #171d34;
	--white: #fff;
	--paper: #f8f7fb;
	--muted: #657080;
	--line: #e7e8ee;
	--pink: #ff2f83;
	--magenta: #ec31e8;
	--violet: #8757ff;
	--cyan: #26d9f5;
	--orange: #ff7a1a;
	--yellow: #ffd43b;
	--teal: #22d3c5;
	--gradient-hot: linear-gradient(110deg, #ff7a1a 0%, #ff2f83 45%, #b837f1 100%);
	--gradient-cool: linear-gradient(135deg, #8757ff 0%, #26d9f5 100%);
	--gradient-pastel: linear-gradient(115deg, #adfff5 0%, #f5c7ff 49%, #ffd2a5 100%);
	--radius-sm: 12px;
	--radius-md: 20px;
	--radius-lg: 32px;
	--shadow-soft: 0 18px 46px rgba(16, 19, 29, .10);
	--shadow-card: 0 8px 22px rgba(16, 19, 29, .08);
	--container: 1280px;
	--header-height: 76px;
	--ease: cubic-bezier(.2, .75, .25, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.5; overflow-x: hidden; }
body, button, input, textarea, select { font-synthesis: none; }
body.no-scroll { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; }
p, h1, h2, h3, h4 { margin-top: 0; }
h1, h2, h3, h4 { letter-spacing: -.045em; line-height: 1.02; }
.container { width: min(calc(100% - 64px), var(--container)); margin-inline: auto; }
.section { position: relative; padding-block: clamp(72px, 8vw, 124px); }
.section--paper { background: var(--paper); }
.section--dark { color: var(--white); background: var(--navy); }
.narrow-content { max-width: 860px; }
.screen-reader-text, .skip-link { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { z-index: 100; top: 12px; left: 12px; width: auto; height: auto; padding: 10px 16px; margin: 0; clip: auto; color: var(--white); background: var(--ink); border-radius: 8px; }
:focus-visible { outline: 3px solid var(--pink); outline-offset: 4px; }

.icon { width: 1.2em; height: 1.2em; flex: 0 0 auto; }
.eyebrow { margin-bottom: 19px; color: #748092; font-size: 10px; font-weight: 800; letter-spacing: .17em; line-height: 1.35; text-transform: uppercase; }
.eyebrow--light { color: rgba(255,255,255,.58); }
.handnote { color: var(--ink); font-family: "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive; font-weight: 500; letter-spacing: -.04em; line-height: .95; transform: rotate(-6deg); }
.button-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 13px; padding: 13px 20px; border: 1px solid transparent; border-radius: 999px; font-size: 12px; font-weight: 800; line-height: 1; transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease); }
.button:hover { transform: translateY(-3px); box-shadow: 0 10px 20px rgba(16,19,29,.14); }
.button .icon { width: 17px; height: 17px; transition: transform .25s var(--ease); }
.button:hover .icon { transform: translateX(3px); }
.button--dark { color: var(--white); background: var(--ink); }
.button--outline { color: var(--ink); border-color: #ccd1db; background: transparent; }
.button--pink { color: var(--white); background: var(--pink); }
.button--yellow { color: var(--ink); background: var(--yellow); }
.button--full { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 800; }
.text-link .icon { width: 17px; transition: transform .2s ease; }
.text-link:hover .icon { transform: translateX(4px); }
.text-link--light { color: var(--white); }
.scribble-arrow { display: inline-block; margin-left: 7px; color: var(--pink); font-family: cursive; font-size: .9em; transform: rotate(15deg); }

/* Header */
.site-header { position: relative; z-index: 20; min-height: var(--header-height); background: var(--white); }
.site-header__inner { display: flex; min-height: var(--header-height); align-items: center; gap: 30px; }
.site-header__logo { display: inline-flex; margin-right: auto; }
.brand { display: inline-flex; color: var(--ink); }
.brand__name { font-size: 27px; font-weight: 900; letter-spacing: -.09em; line-height: 1; }
.brand__four { display: inline-block; color: var(--violet); font-style: italic; transform: skew(-9deg); }
.desktop-nav { margin-left: auto; }
.menu { display: flex; align-items: center; gap: clamp(18px, 2.4vw, 37px); padding: 0; margin: 0; list-style: none; }
.menu a { position: relative; display: inline-flex; min-height: 44px; align-items: center; color: #424958; font-size: 12px; font-weight: 600; }
.menu a::after { position: absolute; right: 0; bottom: 8px; left: 0; height: 2px; background: var(--ink); content: ""; transform: scaleX(0); transform-origin: center; transition: transform .2s ease; }
.menu a:hover::after, .menu .current-menu-item > a::after, .menu .current_page_item > a::after { transform: scaleX(1); }
.header-cta { display: inline-flex; min-height: 44px; align-items: center; gap: 12px; padding: 0 18px 0 21px; color: var(--white); background: var(--ink); border-radius: 999px; font-size: 11px; font-weight: 800; }
.header-cta .icon { width: 16px; transition: transform .2s ease; }
.header-cta:hover .icon { transform: translateX(4px); }
.menu-toggle, .mobile-menu { display: none; }

/* Shared hero and CSS artwork */
.hero { position: relative; isolation: isolate; overflow: hidden; background: var(--white); }
.hero__wash { position: absolute; z-index: -1; top: 0; right: -5%; bottom: 0; width: 65%; background: linear-gradient(128deg, rgba(255,255,255,0) 10%, rgba(232, 220, 255, .85) 39%, rgba(255, 114, 184, .66) 77%, rgba(255, 170, 128, .8)); clip-path: polygon(17% 0, 100% 0, 100% 100%, 0 100%, 24% 47%); }
.hero__grid { display: grid; min-height: 606px; grid-template-columns: minmax(0, .92fr) minmax(510px, 1.08fr); align-items: center; }
.hero__copy { position: relative; z-index: 2; padding-block: 70px; }
.hero h1 { max-width: 680px; margin-bottom: 24px; font-size: clamp(3.5rem, 5.5vw, 5.95rem); font-weight: 900; letter-spacing: -.07em; }
.hero h1 em, .projects-archive h1 em { display: inline; color: transparent; font-style: normal; background: var(--gradient-hot); -webkit-background-clip: text; background-clip: text; }
.hero__lead { max-width: 535px; margin-bottom: 30px; color: #525a69; font-size: 17px; line-height: 1.4; }
.mobile-title, .mobile-lead { display: none; }
.hero-stats { display: flex; gap: clamp(28px, 4vw, 58px); margin-top: 30px; }
.hero-stats div { display: grid; gap: 1px; }
.hero-stats strong { font-size: 24px; letter-spacing: -.06em; line-height: 1; }
.hero-stats strong span { color: var(--pink); font-size: .65em; }
.hero-stats small { max-width: 94px; color: #6c7481; font-size: 10px; line-height: 1.25; }
.hero-art { position: relative; min-height: 635px; align-self: stretch; }
.hero-art__halo { position: absolute; top: 8%; right: 4%; width: 90%; height: 85%; background: radial-gradient(circle at 52% 42%, #fd9bbd 0 12%, #d589f2 33%, rgba(119,120,255,.35) 51%, transparent 70%); filter: blur(8px); transform: rotate(-14deg); }
.hero-art__blob { position: absolute; border-radius: 50%; filter: blur(1px); }
.hero-art__blob--pink { z-index: -1; top: 15%; right: 2%; width: 39%; height: 30%; background: radial-gradient(circle at 25% 30%, #ffdf62, #ff2f83 54%, #a629ee); transform: rotate(28deg); }
.hero-art__blob--blue { z-index: -1; right: 11%; bottom: 5%; width: 55%; height: 53%; background: radial-gradient(circle at 50% 20%, #2ce9eb, #625bf5 46%, #171c89); opacity: .9; transform: rotate(-12deg); }
.social-float { position: absolute; z-index: 3; display: grid; width: 60px; height: 60px; place-items: center; color: #fff; border: 2px solid rgba(255,255,255,.65); border-radius: 17px; box-shadow: 0 15px 24px rgba(20,20,60,.2); font-weight: 900; transform: rotate(-8deg); }
.social-float .icon { width: 31px; height: 31px; }
.social-float--instagram { top: 34%; left: 10%; background: linear-gradient(145deg, #ffcd43, #ff1d75 55%, #9c2df3); }
.social-float--tiktok { top: 43%; left: 19%; background: #0c101e; transform: rotate(8deg); }
.social-float--pinterest { left: 7%; bottom: 18%; background: #ee2441; transform: rotate(-14deg); }
.social-float--linkedin { left: 24%; bottom: 9%; background: #087fc0; transform: rotate(2deg); }
.metric-card { position: absolute; z-index: 4; display: grid; grid-template-columns: auto 25px; gap: 0 10px; align-items: center; padding: 13px 16px; background: var(--white); border-radius: 12px; box-shadow: var(--shadow-soft); transform: rotate(-5deg); }
.metric-card strong { font-size: 22px; line-height: 1; letter-spacing: -.06em; }
.metric-card span { grid-column: 1; color: #66707f; font-size: 10px; }
.metric-card > .icon { grid-column: 2; grid-row: 1 / 3; width: 25px; height: 25px; color: var(--teal); }
.metric-card--hero { right: 13%; bottom: 24%; }
.sticker { position: absolute; z-index: 4; padding: 11px 19px; color: var(--white); background: var(--gradient-hot); box-shadow: 0 12px 25px rgba(229,42,143,.25); font-size: 12px; font-weight: 900; line-height: 1.1; transform: rotate(-10deg); }
.sticker--hero { right: -1%; bottom: 9%; }
.sticker--blog { right: 1%; top: 39%; color: var(--ink); background: linear-gradient(140deg, #ff9bd0, #f5a2ff); }
.sticker b { color: var(--pink); }
.handnote--hero { position: absolute; top: 18%; right: -2%; z-index: 4; color: var(--ink); font-size: 27px; }
.handnote--hero b { color: var(--pink); }
.mini-stack { position: absolute; z-index: 2; top: 13%; right: 0; display: grid; gap: 6px; transform: rotate(8deg); }
.mini-stack span { display: block; width: 78px; height: 74px; border: 5px solid var(--white); border-radius: 8px; background: linear-gradient(135deg, #ffaf52, #a94cff); box-shadow: 0 5px 12px rgba(16,19,29,.16); }
.mini-stack span:nth-child(2) { margin-left: -18px; background: linear-gradient(135deg, #91c5ff, #f85dad); }
.mini-stack span:nth-child(3) { margin-left: -35px; background: linear-gradient(135deg, #383b69, #ff9b64); }

/* Homepage sections */
.section-heading { position: relative; display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 30px; }
.section-heading h2 { margin-bottom: 0; font-size: clamp(2rem, 3.4vw, 3.1rem); }
.section-heading--dark h2 { color: var(--white); }
.services { padding-top: 46px; }
.services .section-heading { margin-bottom: 27px; }
.handnote--section { position: absolute; right: 14%; bottom: -12px; color: #4a4d5c; font-size: 20px; transform: rotate(-8deg); }
.services-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 15px; }
.service-card { position: relative; min-height: 204px; padding: 22px 17px 20px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 5px 13px rgba(16,19,29,.03); transition: transform .3s var(--ease), box-shadow .3s var(--ease); }
.service-card::after { position: absolute; right: -34px; bottom: -55px; width: 130px; height: 130px; border-radius: 50%; background: rgba(135,87,255,.06); content: ""; }
.service-card:hover { z-index: 1; box-shadow: var(--shadow-soft); transform: translateY(-7px); }
.service-card--featured { color: #fff; border-color: transparent; background: linear-gradient(145deg, #ff2f83 0%, #ff4d69 51%, #ff884a 100%); }
.service-card--featured::after { width: 190px; height: 190px; right: -53px; bottom: -80px; background: rgba(255,255,255,.13); }
.service-card__icon { display: grid; width: 46px; height: 46px; place-items: center; margin-bottom: 20px; color: #571aff; border-radius: 12px; background: #eee6ff; }
.service-card__icon .icon { width: 25px; height: 25px; }
.service-card--pink .service-card__icon { color: #fff; background: rgba(255,255,255,.25); }
.service-card--violet .service-card__icon { color: #6d2cff; }
.service-card--purple .service-card__icon { color: #a51cfd; background: #efd8ff; }
.service-card--yellow .service-card__icon { color: #222; background: #ffe77c; }
.service-card--cyan .service-card__icon { color: #037e9c; background: #bdf7ff; }
.service-card h3 { max-width: 160px; margin-bottom: 8px; font-size: 16px; letter-spacing: -.035em; }
.service-card p { max-width: 176px; margin-bottom: 0; color: #667080; font-size: 12px; line-height: 1.35; }
.service-card--featured p { color: rgba(255,255,255,.85); }
.service-card__arrow { position: absolute; right: 16px; bottom: 15px; display: grid; width: 26px; height: 26px; place-items: center; border-radius: 50%; color: var(--ink); background: rgba(255,255,255,.9); }
.service-card__arrow .icon { width: 14px; }
.projects { padding-block: clamp(70px, 8vw, 104px); }
.projects .section-heading { margin-bottom: 27px; }
.projects-layout { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 18px; align-items: stretch; }
.projects-track { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }
.project-card { min-width: 0; }
.project-card__media { position: relative; min-height: 290px; overflow: hidden; border-radius: 13px; background: #26304d; }
.project-card__media .editorial-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.project-card__media::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,12,31,.05) 20%, rgba(7,10,24,.8) 100%); content: ""; pointer-events: none; }
.project-card__pill, .category-pill { position: relative; z-index: 2; display: inline-flex; width: max-content; padding: 5px 9px; border-radius: 999px; font-size: 9px; font-weight: 900; letter-spacing: .05em; line-height: 1; text-transform: uppercase; }
.project-card__pill { position: absolute; top: 14px; left: 12px; color: #fff; border: 1px solid rgba(255,255,255,.65); background: rgba(12,15,27,.35); }
.project-card__arrow, .post-card__arrow { position: absolute; z-index: 3; right: 11px; bottom: 11px; display: grid; width: 30px; height: 30px; place-items: center; color: var(--ink); border-radius: 50%; background: #fff; transition: transform .2s ease; }
.project-card:hover .project-card__arrow, .post-card:hover .post-card__arrow { transform: rotate(45deg); }
.project-card__arrow .icon, .post-card__arrow .icon { width: 16px; }
.project-card__result { display: flex; align-items: baseline; gap: 7px; margin-top: 12px; }
.project-card__result strong { font-size: 25px; letter-spacing: -.08em; }
.project-card__result span { color: rgba(255,255,255,.65); font-size: 10px; }
.project-card h3 { margin: 4px 0 0; color: rgba(255,255,255,.92); font-size: 14px; }
.project-note { display: flex; min-height: 350px; flex-direction: column; align-items: flex-start; justify-content: flex-end; padding: 20px 18px 25px; color: var(--ink); background: #f8f2e9; clip-path: polygon(6% 2%, 92% 0, 100% 96%, 3% 100%); transform: rotate(-2deg); }
.project-note__smile { position: absolute; top: 24px; left: 38px; font-size: 54px; line-height: 1; }
.project-note p { margin: auto 0 22px 20px; font-family: "Bradley Hand", "Segoe Print", cursive; font-size: 25px; line-height: .98; transform: rotate(-7deg); }
.project-note p em { color: var(--pink); font-style: normal; }
.project-note .button { margin-left: 12px; }

.growth-cta { isolation: isolate; overflow: hidden; background: var(--gradient-pastel); }
.growth-cta__glow { position: absolute; z-index: -1; border-radius: 50%; filter: blur(12px); opacity: .7; }
.growth-cta__glow--one { top: -80px; right: 18%; width: 430px; height: 340px; background: #c9a8ff; }
.growth-cta__glow--two { right: -100px; bottom: -180px; width: 550px; height: 440px; background: #4fe1e3; }
.growth-cta__grid { display: grid; min-height: 335px; grid-template-columns: .95fr 1.05fr; align-items: center; }
.growth-cta__copy { position: relative; z-index: 2; }
.growth-cta__copy h2 { margin-bottom: 18px; font-size: clamp(2.5rem, 4vw, 4.5rem); }
.growth-cta__copy > p:not(.eyebrow) { max-width: 430px; margin-bottom: 23px; color: #3e4d56; font-size: 15px; line-height: 1.35; }
.client-avatars { display: flex; align-items: center; margin-top: 20px; }
.client-avatars span { width: 29px; height: 29px; margin-right: -7px; border: 2px solid #fff; border-radius: 50%; background: linear-gradient(145deg, #fdb899, #7347c7); }
.client-avatars span:nth-child(2) { background: linear-gradient(145deg, #f8dc9c, #eb4579); }.client-avatars span:nth-child(3) { background: linear-gradient(145deg, #9ee2e4, #506bb8); }.client-avatars span:nth-child(4) { background: linear-gradient(145deg, #ffd5ad, #853d9f); }
.client-avatars small { margin-left: 18px; color: #465562; font-size: 10px; }
.growth-art { position: relative; height: 390px; }
.growth-art__phone { position: absolute; top: 5px; right: 27%; width: 190px; height: 385px; padding: 45px 14px 15px; border: 10px solid #111625; border-radius: 29px; background: #f9fbff; box-shadow: -18px 22px 45px rgba(16,19,29,.23); transform: rotate(-11deg); }
.phone__notch { position: absolute; top: 8px; left: 50%; width: 78px; height: 18px; border-radius: 50px; background: #090d19; transform: translateX(-50%); }
.phone__topline { display: flex; justify-content: space-between; margin-bottom: 15px; font-size: 9px; }.phone__topline b { font-size: 12px; }
.phone__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; }.phone__grid i { aspect-ratio: 1; display: block; border-radius: 5px; background: linear-gradient(145deg, #ff8fa7, #682ef4); }.phone__grid i:nth-child(2n) { background: linear-gradient(145deg, #8ae8ec, #ff72b0); }.phone__grid i:nth-child(3n) { background: linear-gradient(145deg, #ffcd6e, #5c5bf4); }
.metric-card--growth { padding: 15px 18px; transform: rotate(-7deg); }.metric-card--growth strong { font-size: 24px; }.metric-card--mint { top: 27%; left: 3%; background: #f7ffff; }.metric-card--mint::before { width: 21px; height: 21px; margin-right: 7px; color: #24c9a6; content: "▥"; font-size: 22px; grid-row: 1 / 3; }.metric-card--mint { grid-template-columns: 21px auto; }.metric-card--mint strong, .metric-card--mint span { grid-column: 2; }.metric-card--white { right: 3%; bottom: 20%; transform: rotate(6deg); }.metric-card--white b { position: absolute; right: 15px; bottom: 14px; color: var(--pink); font-size: 19px; }.handnote--growth { position: absolute; top: 22%; right: -2%; font-size: 28px; }

/* Blog */
.blog-page .hero { border-bottom: 1px solid var(--line); }
.blog-page .hero__grid { min-height: 494px; grid-template-columns: 1fr 1fr; }
.hero--blog h1 { font-size: clamp(3.1rem, 5vw, 5.1rem); }
.hero--blog .hero-art { min-height: 515px; }.hero--blog .hero-art__portrait { height: 92%; }.hero--blog .social-float--instagram { top: 32%; left: 13%; }.hero--blog .social-float--tiktok { top: 44%; left: 22%; }.hero--blog .metric-card--hero { right: 17%; bottom: 23%; }.hero--blog .handnote--hero { top: 17%; right: 3%; }.hero--blog .hero-art__blob--blue { bottom: 2%; }
.blog-categories { padding-block: 24px 43px; }.blog-categories .section-heading { margin-bottom: 19px; }.blog-categories .section-heading h2 { font-size: 24px; }.heading-mark { position: absolute; bottom: -9px; left: 0; width: 38px; height: 3px; background: var(--pink); }
.category-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }.category-card { display: flex; min-height: 105px; flex-direction: column; align-items: flex-start; justify-content: center; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 4px 12px rgba(16,19,29,.04); transition: transform .25s var(--ease), box-shadow .25s var(--ease); }.category-card:hover { box-shadow: var(--shadow-card); transform: translateY(-4px); }.category-card__icon { display: grid; width: 34px; height: 34px; place-items: center; margin-bottom: 10px; color: #6725e9; border-radius: 9px; background: #eee4ff; }.category-card__icon .icon { width: 19px; height: 19px; }.category-card strong { font-size: 14px; }.category-card small { color: #707887; font-size: 10px; }.category-card--featured { color: #fff; border-color: transparent; background: var(--gradient-hot); }.category-card--featured small { color: rgba(255,255,255,.8); }.category-card--featured .category-card__icon { color: var(--pink); background: #fff; }.category-card--pink .category-card__icon { color: var(--pink); background: #ffe1ed; }.category-card--cyan .category-card__icon { color: #00839c; background: #cefbff; }.category-card--magenta .category-card__icon { color: #9c2df3; background: #f5ddff; }.category-card--yellow .category-card__icon { color: #7c6000; background: #fff2ad; }.category-card--teal .category-card__icon { color: #008e84; background: #cefbf7; }
.blog-feature { padding-block: 0 36px; }.blog-feature__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, .72fr); gap: 16px; }.featured-post { display: grid; min-height: 342px; grid-template-columns: 1.12fr .88fr; overflow: hidden; border-radius: 16px; color: #fff; background: var(--navy); }.featured-post__media { position: relative; min-height: 342px; overflow: hidden; }.featured-post__media .editorial-media { width: 100%; height: 100%; object-fit: cover; }.featured-post__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8,11,27,.89), rgba(8,11,27,.12)); }.featured-post__media .category-pill { position: absolute; top: 16px; left: 18px; }.category-pill--dark { color: #fff; border: 1px solid rgba(255,255,255,.65); background: rgba(9,13,28,.36); }.featured-post__copy { display: flex; flex-direction: column; justify-content: center; padding: 28px 31px 30px 15px; }.featured-post__copy h2 { margin-bottom: 13px; font-size: clamp(1.8rem, 2.8vw, 2.8rem); }.featured-post__copy h2 a:hover { color: #ff81bb; }.featured-post__copy p { margin-bottom: 19px; color: rgba(255,255,255,.72); font-size: 13px; }.featured-post__copy .button { align-self: flex-start; }.metric-card--featured { right: 20px; bottom: 25px; transform: rotate(-7deg); }.media-fallback--beauty { background: radial-gradient(ellipse at 60% 28%, #ffd59e 0 10%, transparent 30%), radial-gradient(ellipse at 35% 55%, #ee6da9 0 18%, transparent 40%), linear-gradient(135deg, #141b32, #61377e 50%, #ff8066); }.media-fallback--ecommerce { background: radial-gradient(circle at 20% 20%, #fdd36d 0 7%, transparent 8%), radial-gradient(circle at 68% 42%, #fa4e9c 0 21%, transparent 22%), linear-gradient(135deg, #ffbfd6, #742dca); }.media-fallback--cyan { background: radial-gradient(circle at 64% 38%, #fff 0 12%, transparent 13%), linear-gradient(135deg, #eef4ff, #9cbafc 48%, #1d60d5); }.media-fallback--paper { background: linear-gradient(145deg, #ffdcca 0 36%, #f4eee0 37% 63%, #b3d6d4 64%); }.media-fallback--fashion { background: radial-gradient(ellipse at 53% 42%, #e5a273 0 10%, transparent 11%), linear-gradient(130deg, #1f2646, #6e83a9 45%, #101321); }.media-fallback--food { background: radial-gradient(circle at 55% 57%, #bb5a23 0 18%, transparent 19%), radial-gradient(circle at 53% 47%, #f4c84c 0 24%, transparent 25%), linear-gradient(135deg, #251b1a, #ad5735 55%, #25121d); }.media-fallback--violet { background: radial-gradient(circle at 58% 38%, #ff98c3 0 11%, transparent 12%), linear-gradient(135deg, #1e214e, #a242b8 56%, #19cae5); }.media-fallback__shape { position: absolute; display: block; border-radius: 50%; filter: blur(1px); }.media-fallback__shape--one { top: 10%; right: 8%; width: 42%; height: 38%; background: rgba(255,255,255,.19); transform: rotate(25deg); }.media-fallback__shape--two { bottom: -18%; left: -10%; width: 65%; height: 60%; background: rgba(10,21,52,.25); }.media-fallback__grain { position: absolute; inset: 0; opacity: .12; background-image: radial-gradient(#fff 0.7px, transparent .7px); background-size: 7px 7px; mix-blend-mode: soft-light; }
.blog-sidebar { display: grid; gap: 14px; }.newsletter-box, .audit-box { border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow-card); }.newsletter-box { padding: 20px 19px 15px; }.newsletter-box__icon { display: grid; width: 36px; height: 36px; place-items: center; margin-bottom: 9px; color: var(--pink); border-radius: 9px; background: #ffe0ee; }.newsletter-box__icon .icon { width: 22px; }.newsletter-box h3, .audit-box h3 { margin-bottom: 10px; font-size: 19px; }.newsletter-box p, .audit-box p { color: #687281; font-size: 11px; line-height: 1.35; }.newsletter-box form { display: grid; gap: 7px; }.newsletter-box input { min-height: 40px; padding: 0 13px; border: 1px solid #dde1e8; border-radius: 999px; background: #fbfcfe; font-size: 11px; }.newsletter-box .button { min-height: 41px; font-size: 11px; }.newsletter-box > small { display: block; margin-top: 8px; color: #9aa1ad; text-align: center; font-size: 9px; }.audit-box { position: relative; overflow: hidden; padding: 16px; background: linear-gradient(130deg, #e1d5ff, #fbf8ff 50%, #cffcff); }.audit-box__icon { display: inline-grid; width: 42px; height: 42px; place-items: center; color: #7b36f0; border-radius: 50%; background: #fff; }.audit-box__icon .icon { width: 25px; }.audit-box h3 { margin-top: 8px; }.audit-box p { max-width: 190px; margin-bottom: 10px; }.audit-box .button { min-height: 39px; font-size: 10px; }.audit-box > div { position: relative; z-index: 1; }.audit-box .handnote { position: absolute; right: 12px; bottom: 15px; color: #252449; font-size: 19px; }
.latest-posts { padding-block: 30px 90px; }.latest-posts .section-heading { margin-bottom: 18px; }.latest-layout { display: grid; grid-template-columns: minmax(0, 1fr) 245px; gap: 22px; }.posts-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.post-card { overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: #fff; transition: transform .3s var(--ease), box-shadow .3s var(--ease); }.post-card:hover { box-shadow: var(--shadow-card); transform: translateY(-5px); }.post-card__media { position: relative; display: block; height: 153px; overflow: hidden; background: #ddd; }.post-card__media .editorial-media { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--ease); }.post-card:hover .post-card__media .editorial-media { transform: scale(1.05); }.post-card__body { padding: 12px 13px 14px; }.category-pill { margin-bottom: 9px; color: var(--violet); background: #efe5ff; }.category-pill--pink { color: #d51367; background: #ffe0ee; }.category-pill--violet, .category-pill--purple { color: #6c2ce7; background: #eee3ff; }.category-pill--cyan { color: #00879e; background: #d6fbff; }.category-pill--yellow { color: #725b00; background: #fff0a8; }.post-card h3 { margin-bottom: 8px; font-size: 17px; line-height: 1.05; }.post-card h3 a:hover { color: var(--pink); }.post-card p { min-height: 33px; margin-bottom: 13px; color: #75808e; font-size: 11px; line-height: 1.35; }.post-card__meta { display: flex; gap: 8px; color: #9299a4; font-size: 9px; }.popular-posts { padding-left: 12px; }.popular-posts h3 { padding-bottom: 11px; margin-bottom: 5px; border-bottom: 2px solid var(--pink); font-size: 16px; }.popular-posts a { display: grid; grid-template-columns: 20px 1fr 13px; gap: 8px; align-items: start; padding-block: 10px; border-bottom: 1px solid var(--line); }.popular-posts a > b { color: var(--pink); font-size: 12px; }.popular-posts a span { font-size: 11px; font-weight: 800; line-height: 1.15; }.popular-posts a small { display: block; margin-top: 4px; color: #8c94a0; font-size: 9px; font-weight: 500; }.popular-posts a > .icon { width: 13px; height: 13px; }.popular-posts a:hover { color: var(--pink); }

/* Abstract replacement artwork keeps a fresh install attractive until real media is uploaded. */
.media-fallback { position: relative; overflow: hidden; }
.media-fallback--purple { background: radial-gradient(circle at 30% 35%, #fff 0 9%, transparent 10%), linear-gradient(135deg, #30204e, #c146d0 55%, #6c4df3); }

/* Content templates */
.page-template, .archive-page { min-height: 60vh; }.page-header, .archive-header { padding-block: 25px 65px; }.page-header h1, .archive-header h1 { margin-bottom: 0; font-size: clamp(3rem, 6vw, 6rem); }.archive-description { max-width: 600px; margin-top: 20px; color: var(--muted); }.posts-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }.posts-grid--four .post-card__media { height: 185px; }.posts-grid--four .post-card p { min-height: 48px; }.pagination { grid-column: 1 / -1; margin-top: 24px; }.pagination .nav-links { display: flex; gap: 8px; }.pagination a, .pagination span { display: grid; min-width: 42px; height: 42px; place-items: center; border-radius: 50%; background: #fff; }
.article-header { padding-block: clamp(65px, 9vw, 120px) 48px; text-align: center; }.article-header .narrow-content { margin-inline: auto; }.article-header h1 { max-width: 920px; margin: 17px auto 22px; font-size: clamp(3rem, 6vw, 6.5rem); }.article-meta { display: flex; justify-content: center; gap: 17px; color: #7a8492; font-size: 11px; }.article-meta span:first-child { color: var(--ink); font-weight: 800; }.article-featured { max-width: 1180px; height: min(54vw, 570px); min-height: 340px; overflow: hidden; border-radius: var(--radius-lg); }.article-featured .editorial-media { width: 100%; height: 100%; object-fit: cover; }.article-layout { display: grid; max-width: 1030px; grid-template-columns: minmax(0, 1fr) 265px; gap: 80px; padding-block: 72px; }.entry-content { color: #4f5968; font-size: 18px; line-height: 1.7; }.entry-content h2, .entry-content h3 { color: var(--ink); margin-top: 1.8em; }.entry-content h2 { font-size: 34px; }.entry-content h3 { font-size: 25px; }.entry-content blockquote { padding: 25px 0 25px 24px; margin: 28px 0; color: var(--ink); border-left: 4px solid var(--pink); font-size: 24px; font-weight: 700; line-height: 1.2; }.entry-content li { margin-bottom: 8px; }.article-aside { align-self: start; }.article-aside__box { position: sticky; top: 30px; padding: 23px; border-radius: 20px; background: var(--gradient-pastel); }.article-aside__box h2 { font-size: 26px; }.post-navigation { display: flex; justify-content: space-between; gap: 20px; padding-block: 20px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 13px; font-weight: 800; }.post-navigation a:hover { color: var(--pink); }.related-posts { padding-top: 80px; }.posts-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.projects-archive__hero { padding-block: 100px; }.projects-archive__hero h1 { margin-bottom: 20px; color: #fff; font-size: clamp(3.2rem, 7vw, 7rem); }.projects-archive__hero p:not(.eyebrow) { max-width: 470px; color: rgba(255,255,255,.7); font-size: 17px; }.projects-grid--archive { grid-template-columns: repeat(3, minmax(0, 1fr)); }.project-card--archive .project-card__media { min-height: 320px; }.project-card--archive h2 { margin: 4px 0 8px; color: var(--ink); font-size: 22px; }.project-card--archive h2 a:hover { color: var(--pink); }.project-card--archive .project-card__result strong { color: var(--ink); }.project-card--archive .project-card__result span { color: var(--muted); }.project-card--archive p { color: var(--muted); font-size: 13px; }
.case-study-header { padding-block: 94px 110px; }.case-study-header h1 { margin: 18px 0 9px; color: #fff; font-size: clamp(3.5rem, 8vw, 8rem); }.category-pill--light { color: var(--ink); background: #fff; }.case-study-header__client { color: rgba(255,255,255,.6); }.case-study-stat { display: flex; align-items: baseline; gap: 12px; margin-top: 32px; }.case-study-stat strong { color: var(--pink); font-size: 32px; }.case-study-stat span { color: rgba(255,255,255,.7); }.case-study-featured { height: min(55vw, 600px); min-height: 350px; margin-top: -62px; overflow: hidden; border-radius: var(--radius-lg); }.case-study-featured .editorial-media { width: 100%; height: 100%; object-fit: cover; }.case-study-layout { display: grid; max-width: 1030px; grid-template-columns: minmax(0, 1fr) 260px; gap: 70px; padding-block: 80px; }.case-study-facts { align-self: start; padding: 24px; border-radius: 18px; background: #fff; box-shadow: var(--shadow-card); }.case-study-facts h2 { font-size: 22px; }.case-study-facts > div { display: grid; gap: 3px; padding-block: 12px; border-bottom: 1px solid var(--line); }.case-study-facts small { color: var(--muted); font-size: 10px; text-transform: uppercase; }.case-study-facts strong { font-size: 15px; }.case-study-facts .button { width: 100%; margin-top: 20px; font-size: 10px; }
.empty-state { padding-block: 100px; }.empty-state h1 { font-size: clamp(3rem, 6vw, 6rem); }

/* Footer */
.site-footer { background: #fff; }.site-footer__grid { display: grid; min-height: 140px; grid-template-columns: 1.3fr 2fr 1fr 1.2fr; gap: 28px; align-items: center; }.site-footer__brand p { margin: 7px 0 0; color: #66707e; font-size: 11px; }.footer-nav .menu { justify-content: center; gap: 17px; }.footer-nav .menu a { min-height: auto; font-size: 10px; }.footer-nav .menu a::after { display: none; }.footer-socials { display: flex; justify-content: center; gap: 13px; }.footer-socials a { display: grid; width: 23px; height: 23px; place-items: center; }.footer-socials .icon { width: 16px; height: 16px; }.footer-socials a:hover { color: var(--pink); }.site-footer__legal { color: #7d8591; font-size: 9px; text-align: right; }.site-footer__legal p { margin: 0; }.mobile-bottom-nav { display: none; }

/* Motion */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .7s var(--ease), transform .7s var(--ease); }.reveal.is-visible { opacity: 1; transform: none; }.reveal--delay { transition-delay: .12s; }

@media (max-width: 1120px) {
	.container { width: min(calc(100% - 44px), var(--container)); }
	.hero__grid { grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr); }.hero h1 { font-size: clamp(3.2rem, 5.3vw, 5rem); }.social-float { width: 53px; height: 53px; }.social-float .icon { width: 27px; height: 27px; }.services-grid { gap: 10px; }.service-card { padding-inline: 14px; }.project-note { padding-inline: 12px; }.project-note p { font-size: 22px; }.category-grid { gap: 9px; }.category-card { padding-inline: 11px; }
}

@media (max-width: 900px) {
	.desktop-nav, .header-cta { display: none; }.menu-toggle { display: grid; width: 44px; height: 44px; place-items: center; padding: 0; color: currentColor; border: 0; background: transparent; }.menu-toggle .icon { width: 27px; height: 27px; }.menu-toggle__close { display: none; }.menu-toggle[aria-expanded="true"] .menu-toggle__open { display: none; }.menu-toggle[aria-expanded="true"] .menu-toggle__close { display: block; }.mobile-menu { display: block; position: absolute; top: 100%; right: 0; left: 0; border-top: 1px solid rgba(16,19,29,.1); background: #fff; box-shadow: var(--shadow-soft); }.mobile-menu[hidden] { display: none; }.mobile-menu__inner { padding: 12px 22px 25px; }.mobile-menu .menu { display: grid; gap: 0; }.mobile-menu .menu a { width: 100%; min-height: 51px; border-bottom: 1px solid var(--line); font-size: 15px; }.mobile-menu .menu a::after { bottom: 0; left: 0; width: 28px; transform-origin: left; }.mobile-menu .button { margin-top: 18px; }.hero__grid { grid-template-columns: 1fr 1fr; }.hero h1 { font-size: clamp(3rem, 6vw, 4.6rem); }.hero-art { min-height: 560px; }.hero-art__portrait { width: 68%; }.services-grid { grid-template-columns: repeat(3, 1fr); }.service-card { min-height: 190px; }.service-card:last-child { grid-column: 2; }.projects-layout { grid-template-columns: 1fr; }.projects-track { overflow-x: auto; grid-template-columns: repeat(4, minmax(190px, 1fr)); padding-bottom: 10px; scroll-snap-type: x mandatory; }.project-card { scroll-snap-align: start; }.project-note { display: none; }.growth-cta__grid { grid-template-columns: 1fr 1fr; }.growth-art__phone { right: 24%; }.handnote--growth { right: -5%; }.category-grid { grid-template-columns: repeat(3, 1fr); }.featured-post { grid-template-columns: 1fr 1fr; }.latest-layout { grid-template-columns: 1fr; }.popular-posts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 20px; padding-left: 0; }.popular-posts h3 { grid-column: 1 / -1; }.posts-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }.site-footer__grid { grid-template-columns: 1.3fr 2fr 1fr; }.site-footer__legal { grid-column: 1 / -1; text-align: left; }.footer-nav .menu { flex-wrap: wrap; justify-content: flex-start; }.case-study-layout, .article-layout { gap: 40px; }
}

@media (max-width: 767px) {
	:root { --header-height: 65px; }
	body { padding-bottom: 71px; }.container { width: min(calc(100% - 36px), var(--container)); }.section { padding-block: 60px; }.site-header { min-height: var(--header-height); }.site-header__inner { min-height: var(--header-height); }.brand__name { font-size: 24px; }
	body.home .site-header { color: #fff; background: var(--navy); }.home .site-header .brand, .home .site-header .menu-toggle { color: #fff; }.home .site-header .brand__four { color: #ff62b2; }.home .mobile-menu { color: var(--ink); }
	.hero__grid, .blog-page .hero__grid { display: block; min-height: auto; }.hero__wash { right: 0; width: 100%; height: 53%; background: linear-gradient(140deg, rgba(255,255,255,.2), rgba(162,104,255,.35) 55%, rgba(255,66,147,.68)); clip-path: polygon(0 0, 100% 0, 100% 78%, 47% 100%, 0 89%); }.hero__copy { padding: 44px 0 16px; }.hero h1, .hero--blog h1 { margin-bottom: 18px; font-size: clamp(2.65rem, 11vw, 4rem); line-height: .96; }.desktop-title, .desktop-lead { display: none; }.mobile-title, .mobile-lead { display: inline; }.hero__lead { max-width: 330px; margin-bottom: 22px; font-size: 14px; line-height: 1.38; }.button-row { gap: 8px; }.button { min-height: 46px; padding-inline: 17px; font-size: 11px; }.hero-stats { position: relative; z-index: 5; justify-content: space-between; gap: 10px; margin-top: 24px; padding: 14px 0 3px; }.hero-stats strong { font-size: 22px; }.hero-stats small { max-width: 73px; font-size: 9px; }
	.hero--home { color: #fff; background: var(--navy); }.hero--home .eyebrow { color: rgba(255,255,255,.56); }.hero--home .hero__lead { color: rgba(255,255,255,.75); }.hero--home .button--outline { color: #fff; border-color: rgba(255,255,255,.5); }.hero--home .hero__wash { opacity: .8; }.hero--home .hero-stats small { color: rgba(255,255,255,.58); }.hero--home .hero-stats strong span { color: #ff78bd; }
	.hero-art, .hero--blog .hero-art { min-height: 356px; margin-inline: -18px; }.hero-art__halo { top: -1%; right: 4%; width: 92%; height: 95%; }.hero-art__portrait { right: 18%; width: 57%; height: 94%; border-radius: 48% 45% 5% 7%; }.hero-art__blob--pink { top: 6%; right: 7%; width: 41%; height: 37%; }.hero-art__blob--blue { right: 5%; bottom: 4%; width: 66%; height: 61%; }.social-float { width: 49px; height: 49px; border-radius: 14px; }.social-float .icon { width: 25px; height: 25px; }.social-float--instagram { top: 29%; left: 11%; }.social-float--tiktok { top: 44%; left: 19%; }.social-float--pinterest { left: 10%; bottom: 18%; }.social-float--linkedin { display: none; }.metric-card { padding: 10px 12px; }.metric-card strong { font-size: 18px; }.metric-card span { font-size: 9px; }.metric-card--hero { right: 10%; bottom: 21%; }.sticker--hero { right: 2%; bottom: 7%; }.handnote--hero { top: 11%; right: 1%; font-size: 19px; }.mini-stack { display: none; }
	.hero--blog { background: #fff; }.hero--blog .hero__copy { padding-top: 41px; }.hero--blog .hero__lead { color: #697281; }.hero--blog .hero-art { min-height: 307px; margin-top: 8px; }.hero--blog .hero-art__portrait { right: 15%; height: 95%; }.hero--blog .social-float--instagram { top: 28%; left: 12%; }.hero--blog .social-float--tiktok { top: 43%; left: 21%; }.hero--blog .metric-card--hero { right: 13%; bottom: 20%; }.hero--blog .sticker--blog { right: 3%; top: 44%; padding: 8px 10px; font-size: 8px; }.hero--blog .handnote--hero { top: 13%; right: 2%; font-size: 17px; }
	.services { padding-top: 46px; }.section-heading { align-items: flex-start; margin-bottom: 22px; }.section-heading h2 { font-size: 30px; line-height: 1; }.handnote--section { display: none; }.services-grid { display: grid; grid-template-columns: 1fr; gap: 9px; }.service-card, .service-card:last-child { display: grid; min-height: 78px; grid-template-columns: 48px 1fr 22px; grid-template-rows: auto auto; column-gap: 13px; align-items: center; padding: 11px 13px; }.service-card__icon { grid-row: 1 / 3; width: 44px; height: 44px; margin: 0; }.service-card h3 { max-width: none; margin: 0; font-size: 15px; }.service-card p { max-width: none; margin: 1px 0 0; font-size: 11px; }.service-card__arrow { position: static; grid-column: 3; grid-row: 1 / 3; width: 27px; height: 27px; }.service-card--featured { min-height: 86px; }
	.projects { padding-bottom: 59px; }.projects .section-heading { align-items: center; }.projects .text-link { font-size: 0; }.projects .text-link .icon { width: 21px; height: 21px; }.projects-track { grid-template-columns: repeat(4, minmax(205px, 1fr)); gap: 10px; margin-right: -18px; }.project-card__media { min-height: 260px; }.project-card__result strong { font-size: 23px; }.project-card h3 { font-size: 13px; }.growth-cta { padding-block: 60px 35px; }.growth-cta__grid { display: block; }.growth-cta__copy h2 { font-size: 39px; }.growth-cta__copy > p:not(.eyebrow) { font-size: 13px; }.client-avatars { margin-bottom: 15px; }.client-avatars small { font-size: 9px; }.growth-art { height: 305px; margin-inline: -18px; }.growth-art__phone { right: 29%; width: 153px; height: 304px; padding: 37px 11px 10px; border-width: 8px; border-radius: 24px; }.phone__notch { top: 7px; width: 62px; height: 14px; }.phone__grid { gap: 4px; }.metric-card--growth { padding: 11px 13px; }.metric-card--growth strong { font-size: 20px; }.metric-card--mint { top: 26%; left: 5%; }.metric-card--white { right: 4%; bottom: 16%; }.handnote--growth { top: 20%; right: -1%; font-size: 21px; }
	.blog-categories { padding-block: 28px 32px; }.blog-categories .section-heading h2 { font-size: 25px; }.category-grid { display: flex; overflow-x: auto; gap: 8px; margin-right: -18px; padding: 3px 18px 12px 0; scrollbar-width: none; }.category-grid::-webkit-scrollbar { display: none; }.category-card { flex: 0 0 103px; min-height: 91px; padding: 11px; }.category-card__icon { width: 29px; height: 29px; margin-bottom: 7px; }.category-card__icon .icon { width: 16px; height: 16px; }.category-card strong { font-size: 11px; line-height: 1.05; }.category-card small { margin-top: 3px; font-size: 8px; }.blog-feature { padding-bottom: 28px; }.blog-feature__grid { display: block; }.featured-post { display: block; min-height: 0; }.featured-post__media { height: 200px; min-height: 0; }.featured-post__copy { padding: 17px 17px 19px; }.featured-post__copy h2 { font-size: 24px; }.featured-post__copy p { margin-bottom: 14px; font-size: 11px; }.metric-card--featured { right: 14px; bottom: 13px; }.blog-sidebar { margin-top: 13px; }.newsletter-box { display: none; }.audit-box { min-height: 165px; }.latest-posts { padding-block: 25px 68px; }.latest-posts .section-heading .text-link { font-size: 0; }.latest-posts .section-heading .text-link .icon { width: 21px; }.latest-layout { display: block; }.posts-grid, .posts-grid--three { display: grid; grid-template-columns: 1fr; gap: 9px; }.post-card { display: grid; grid-template-columns: 118px 1fr; border-radius: 12px; }.post-card__media { height: 100%; min-height: 125px; }.post-card__body { padding: 11px 11px 10px; }.post-card .category-pill { padding: 4px 7px; margin-bottom: 6px; font-size: 7px; }.post-card h3 { margin-bottom: 5px; font-size: 14px; }.post-card p { display: none; }.post-card__meta { gap: 5px; font-size: 8px; }.popular-posts { display: none; }
	.page-header, .archive-header { padding-block: 35px 45px; }.page-header h1, .archive-header h1 { font-size: 48px; }.posts-grid--four { grid-template-columns: 1fr; }.article-header { padding-block: 55px 34px; }.article-header h1 { font-size: 43px; }.article-meta { flex-wrap: wrap; gap: 7px 12px; }.article-featured, .case-study-featured { height: 280px; min-height: 0; border-radius: 20px; }.article-layout, .case-study-layout { display: block; padding-block: 47px; }.entry-content { font-size: 16px; }.entry-content h2 { font-size: 29px; }.entry-content blockquote { font-size: 20px; }.article-aside { margin-top: 35px; }.article-aside__box { position: static; }.post-navigation { font-size: 11px; }.related-posts { padding-top: 55px; }.projects-archive__hero { padding-block: 70px; }.projects-archive__hero h1 { font-size: 48px; }.projects-grid--archive { grid-template-columns: 1fr; }.project-card--archive .project-card__media { min-height: 280px; }.case-study-header { padding-block: 65px 85px; }.case-study-header h1 { font-size: 54px; }.case-study-featured { margin-top: -45px; }.case-study-facts { margin-top: 40px; }.site-footer { padding-bottom: 22px; }.site-footer__grid { display: block; padding-block: 42px 25px; text-align: center; }.site-footer__brand p { margin-bottom: 25px; }.footer-nav .menu { justify-content: center; gap: 10px 17px; }.footer-nav .menu a { min-height: 32px; }.footer-socials { margin-top: 22px; }.site-footer__legal { margin-top: 25px; text-align: center; }.mobile-bottom-nav { position: fixed; z-index: 50; right: 0; bottom: 0; left: 0; display: grid; height: 70px; grid-template-columns: repeat(5, 1fr); padding: 7px 6px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(16,19,29,.1); background: rgba(255,255,255,.95); box-shadow: 0 -6px 24px rgba(16,19,29,.09); backdrop-filter: blur(16px); }.mobile-bottom-nav a { display: grid; min-width: 44px; place-items: center; align-content: center; gap: 2px; color: #626b79; border-radius: 9px; }.mobile-bottom-nav a span { display: grid; width: 27px; height: 27px; place-items: center; }.mobile-bottom-nav .icon { width: 19px; height: 19px; }.mobile-bottom-nav small { font-size: 8px; font-weight: 700; }.mobile-bottom-nav a.is-active { color: var(--pink); }.mobile-bottom-nav a.is-active span { background: #ffe2ee; border-radius: 8px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }.reveal { opacity: 1; transform: none; transition: none; }.button, .post-card, .service-card, .editorial-media { transition: none; }
}

/* Fidelity pass: match the tighter editorial proportions of the supplied mockups. */
@media (min-width: 901px) {
	.hero__grid { min-height: 480px; }
	.hero--home .hero__grid { min-height: 480px; }
	.hero-art { min-height: 500px; }
	.blog-page .hero__grid { min-height: 382px; }
	.hero--blog .hero-art { min-height: 414px; }
	.services { padding-block: 34px 40px; }
	.services-grid .service-card { min-height: 164px; }
	.projects { padding-block: 34px 40px; }
	.project-card__media { min-height: 215px; }
	.project-note { min-height: 248px; }
	.growth-cta { padding-block: 32px; }
	.growth-cta__grid { min-height: 255px; }
	.growth-art { height: 275px; }
	.growth-art__phone { height: 285px; }
	.site-footer__grid { min-height: 88px; }
	.featured-post, .featured-post__media { min-height: 270px; }
	.blog-feature { padding-bottom: 30px; }
	.latest-layout .posts-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.latest-layout .post-card__media { height: 104px; }
	.latest-layout .post-card__body { padding: 11px 11px 12px; }
	.latest-layout .post-card h3 { font-size: 14px; }
	.latest-layout .post-card p { min-height: 31px; font-size: 10px; }
}

@media (max-width: 767px) {
	.hero--home .hero__grid { position: relative; min-height: 575px; }
	.hero--home .hero__copy { height: 575px; padding-top: 43px; }
	.hero--home .hero-art { position: absolute; top: 212px; right: -18px; bottom: auto; left: -18px; height: 350px; min-height: 0; margin: 0; }
	.hero--home .hero-stats { position: absolute; right: 0; bottom: 12px; left: 0; margin-top: 0; }
	.hero--home h1 { font-size: clamp(2.75rem, 11vw, 3.45rem); }
	.hero--home .hero__lead { max-width: 305px; }

	.hero--blog .hero__grid { position: relative; min-height: 330px; }
	.hero--blog .hero__copy { height: 330px; padding-top: 43px; }
	.hero--blog h1 { max-width: 245px; font-size: clamp(2.7rem, 11vw, 3.65rem); }
	.hero--blog .hero__lead { max-width: 214px; font-size: 11px; }
	.hero--blog .hero-art { position: absolute; top: 74px; right: -18px; bottom: auto; left: 29%; height: 252px; min-height: 0; margin: 0; }
	.hero--blog .button-row { position: relative; z-index: 5; margin-top: 11px; }
	.hero--blog .button--outline { display: none; }

	.latest-layout .posts-grid { grid-template-columns: 1fr; }
	.latest-layout .post-card__media { height: 100%; }
}

@media (min-width: 768px) and (max-width: 900px) {
	.hero__grid, .blog-page .hero__grid { min-height: 470px; }
	.hero-art, .hero--blog .hero-art { min-height: 470px; }
	.services { padding-block: 42px 48px; }
	.projects { padding-block: 45px 52px; }
	.project-card__media { min-height: 250px; }
	.growth-cta__grid { min-height: 300px; }
}

/* Photographic editorial rebuild: the portrait and project photography remain separate assets. */
:root {
	--ink: #11131d;
	--navy: #0d1428;
	--pink: #ff347f;
	--magenta: #e72bd6;
	--violet: #7b4cff;
	--cyan: #27d7e7;
	--orange: #ff6f2c;
	--yellow: #ffd23f;
	--container: 1420px;
	--gradient-hot: linear-gradient(105deg, #ff7928 0%, #ff347f 48%, #d824dc 100%);
}
body { font-size: 17px; }
.eyebrow { font-size: 12px; letter-spacing: .16em; }
.brand__name { font-size: 32px; }
.button { min-height: 53px; padding: 14px 24px; font-size: 15px; }
.button .icon { width: 19px; height: 19px; }
.text-link { font-size: 14px; }
.section-heading h2 { font-size: clamp(36px, 3vw, 52px); }
.site-header { border-bottom: 1px solid rgba(16,19,29,.05); }
.site-header__inner { gap: 42px; }
.desktop-nav .menu { gap: clamp(17px, 2.1vw, 33px); }
.desktop-nav .menu a { font-size: 15px; font-weight: 650; }
.header-cta { min-height: 48px; padding-inline: 23px; font-size: 15px; }
.header-cta .icon { width: 18px; }
.hero__wash { right: 0; width: 63%; background: linear-gradient(123deg, transparent 1%, rgba(220,205,255,.58) 31%, rgba(244,169,245,.68) 63%, rgba(255,95,157,.94) 100%); }
.hero__copy { z-index: 4; }
.hero h1 { max-width: 810px; font-size: clamp(3.5rem, 5vw, 5.75rem); line-height: .98; letter-spacing: -.065em; }
.hero__lead { max-width: 570px; color: #475162; font-size: clamp(18px, 1.1vw, 20px); line-height: 1.48; }
.hero-stats { gap: 40px; margin-top: 33px; }
.hero-stats strong { font-size: 30px; }
.hero-stats small { max-width: 132px; font-size: 13px; line-height: 1.27; }
.hero-art { isolation: isolate; }
.hero-art__photo { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 5%; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 15%, #000 100%); mask-image: linear-gradient(90deg, transparent 0%, #000 15%, #000 100%); }
.hero-art__halo { z-index: -1; right: 4%; background: radial-gradient(circle, #f78abc 0 19%, #8c5df2 48%, transparent 70%); }
.hero-art__blob { z-index: -1; }
.hero-art__blob--blue { background: radial-gradient(circle at 50% 20%, #25c8f2, #5337c4 48%, #111a4b); }
.handnote--hero { z-index: 5; top: 12%; right: 0; color: #fff; font-size: 31px; text-shadow: 0 2px 6px rgba(0,0,0,.28); transform: rotate(-9deg); }
.handnote--hero b { color: #fff; }
.social-float { width: 68px; height: 68px; border: 2px solid rgba(255,255,255,.84); }
.social-float .icon { width: 36px; height: 36px; }
.social-float--instagram { top: 43%; left: 12%; }
.social-float--tiktok { top: 56%; left: 23%; }
.social-float--pinterest { left: 12%; bottom: 12%; }
.social-float--linkedin { left: 26%; bottom: 3%; }
.metric-card--hero { right: 16%; bottom: 16%; padding: 16px 21px; }
.metric-card--hero strong { font-size: 27px; }
.metric-card--hero span { font-size: 13px; }
.sticker--hero { right: 0; bottom: 2%; font-size: 15px; line-height: 1.25; }
.mini-stack { top: 18%; right: 1%; z-index: 4; }
.mini-stack img { display: block; width: 92px; height: 89px; object-fit: cover; border: 5px solid #fff; border-radius: 10px; box-shadow: 0 6px 19px rgba(0,0,0,.25); }
.mini-stack img:nth-child(2) { margin-left: -18px; }
.mini-stack img:nth-child(3) { margin-left: -34px; }

.services { padding-block: 46px 58px; }
.services .section-heading { margin-bottom: 28px; }
.service-card { min-height: 223px; padding: 22px 20px; }
.service-card__icon { width: 50px; height: 50px; margin-bottom: 20px; }
.service-card__icon .icon { width: 28px; height: 28px; }
.service-card h3 { max-width: 210px; font-size: 19px; line-height: 1.07; }
.service-card p { max-width: 210px; color: #596270; font-size: 15px; line-height: 1.37; }
.service-card--featured p { color: #fff; }
.service-card__arrow { width: 30px; height: 30px; }
.handnote--section { font-size: 24px; }
.projects { padding-block: 52px 60px; }
.projects-layout { grid-template-columns: minmax(0,1fr) 270px; gap: 24px; }
.projects-track { gap: 12px; }
.project-card { position: relative; }
.project-card__media { min-height: 310px; }
.project-card__media .editorial-media { object-position: center 35%; }
.project-card__media::after { background: linear-gradient(180deg, transparent 25%, rgba(5,7,18,.15) 48%, rgba(5,7,18,.93) 100%); }
.project-card__pill { top: 13px; left: 13px; font-size: 12px; }
.project-card__result { position: absolute; z-index: 3; right: 42px; bottom: 21px; left: 16px; display: block; margin: 0; color: #fff; }
.project-card__result strong { display: block; font-size: 31px; line-height: 1; }
.project-card__result span { color: #fff; font-size: 14px; }
.project-card h3 { display: none; }
.project-card__arrow { right: 12px; bottom: 15px; width: 33px; height: 33px; }
.project-note { min-height: 310px; padding: 25px; }
.project-note p { margin-left: 16px; font-size: 29px; }
.project-note .button { margin-left: 12px; font-size: 14px; }
.growth-cta { padding-block: 45px 25px; }
.growth-cta__grid { min-height: 315px; }
.growth-cta__copy h2 { font-size: clamp(43px,3.9vw,63px); }
.growth-cta__copy > p:not(.eyebrow) { max-width: 510px; font-size: 18px; line-height: 1.42; }
.growth-art { height: 360px; }
.growth-art__phone { right: 27%; height: 365px; }
.phone__grid img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 5px; }
.metric-card--growth strong { font-size: 26px; }
.metric-card--growth span { font-size: 13px; }
.handnote--growth { font-size: 31px; }
.client-avatars small { font-size: 12px; }
.site-footer__grid { min-height: 118px; }
.site-footer__brand p { font-size: 13px; }
.footer-nav .menu a { font-size: 13px; }
.footer-socials .icon { width: 20px; height: 20px; }
.site-footer__legal { font-size: 11px; }

.hero--blog h1 { font-size: clamp(3.45rem, 4.7vw, 5.3rem); }
.hero--blog .hero__lead { max-width: 600px; }
.hero--blog .social-float--instagram { top: 41%; left: 12%; }
.hero--blog .social-float--tiktok { top: 56%; left: 25%; }
.hero--blog .metric-card--hero { right: 22%; bottom: 12%; }
.hero--blog .handnote--hero { top: 10%; right: 2%; }
.sticker--blog { top: 50%; right: 0; padding: 18px 20px; font-size: 14px; line-height: 1.45; }
.blog-categories { padding-block: 26px 38px; }
.blog-categories .section-heading { display: none; }
.category-card { min-height: 142px; padding: 20px; }
.category-card__icon { width: 42px; height: 42px; }
.category-card__icon .icon { width: 23px; height: 23px; }
.category-card strong { font-size: 17px; }
.category-card small { font-size: 13px; }
.blog-feature { padding-bottom: 42px; }
.blog-feature__grid { grid-template-columns: minmax(0,2.1fr) minmax(310px,.74fr); }
.featured-post { position: relative; display: block; min-height: 365px; }
.featured-post__media { position: absolute; inset: 0; min-height: 0; }
.featured-post__media .editorial-media { object-position: center 23%; }
.featured-post__shade { background: linear-gradient(90deg, rgba(7,11,24,.98) 0%, rgba(7,11,24,.83) 37%, rgba(7,11,24,.09) 82%); }
.featured-post__media .category-pill { top: 19px; left: 22px; }
.featured-post__copy { position: relative; z-index: 2; width: 63%; min-height: 365px; padding: 67px 28px 28px 24px; }
.featured-post__copy h2 { font-size: clamp(30px,2.6vw,42px); }
.featured-post__copy p { color: #f2f1f4; font-size: 16px; line-height: 1.4; }
.metric-card--featured { right: 28px; bottom: 24px; }
.newsletter-box { padding: 22px; }
.newsletter-box h3, .audit-box h3 { font-size: 22px; }
.newsletter-box p, .audit-box p { font-size: 14px; }
.newsletter-box input { min-height: 45px; font-size: 14px; }
.newsletter-box .button { min-height: 45px; font-size: 14px; }
.newsletter-box > small { font-size: 11px; }
.audit-box .button { font-size: 14px; }
.audit-box .handnote { font-size: 22px; }
.latest-layout { grid-template-columns: minmax(0,1fr) 290px; }
.latest-layout .post-card__media { height: 175px; }
.latest-layout .post-card__body { padding: 14px; }
.latest-layout .post-card h3 { font-size: 18px; }
.latest-layout .post-card p { min-height: 48px; font-size: 14px; }
.post-card__meta { font-size: 12px; }
.category-pill { font-size: 11px; }
.popular-posts h3 { font-size: 20px; }
.popular-posts a span { font-size: 14px; }
.popular-posts a small { font-size: 11px; }

@media (min-width: 901px) {
	.hero--home .hero__grid { min-height: 570px; }
	.hero--home .hero-art { min-height: 600px; }
	.blog-page .hero__grid { min-height: 400px; }
	.hero--blog .hero-art { min-height: 425px; }
	.hero--blog .hero__copy { padding-block: 38px; }
	.hero--home .handnote--hero { top: 15%; right: auto; left: 0; color: var(--ink); text-shadow: none; }
	.services-grid .service-card { min-height: 223px; }
	.projects { padding-block: 52px 60px; }
	.project-card__media { min-height: 310px; }
	.project-note { min-height: 310px; }
	.growth-cta { padding-block: 45px 25px; }
	.growth-art { height: 360px; }
	.growth-art__phone { height: 365px; }
	.site-footer__grid { min-height: 118px; }
	.latest-layout .posts-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
	.latest-layout .post-card__media { height: 175px; }
	.latest-layout .post-card h3 { font-size: 18px; }
	.latest-layout .post-card p { min-height: 48px; font-size: 14px; }
	.featured-post, .featured-post__copy { min-height: 365px; }
}

@media (max-width: 1120px) and (min-width: 768px) {
	.desktop-nav .menu a { font-size: 13px; }
	.header-cta { font-size: 13px; }
	.hero__lead { font-size: 16px; }
	.service-card h3 { font-size: 17px; }
	.service-card p { font-size: 13px; }
	.projects-layout { grid-template-columns: minmax(0,1fr) 220px; }
	.project-card__media { min-height: 260px; }
	.project-note { min-height: 260px; }
}

@media (max-width: 767px) {
	:root { --header-height: 69px; }
	body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); font-size: 16px; }
	.container { width: min(calc(100% - 36px),var(--container)); }
	.brand__name { font-size: 27px; }
	.button { min-height: 46px; padding: 12px 18px; font-size: 13px; }
	.hero h1, .hero--blog h1 { font-size: clamp(2.65rem,10.5vw,3.6rem); }
	.hero--home .hero__grid { min-height: 625px; }
	.hero--home .hero__copy { height: 625px; padding-top: 45px; }
	.hero--home .hero__lead { max-width: 310px; font-size: 15px; }
	.hero--home .button--dark { color: var(--ink); background: var(--pink); }
	.hero--home .hero-art { top: 310px; height: 315px; min-height: 0; }
	.hero--home .hero-art__photo { object-position: center 22%; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 86%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 86%, transparent 100%); }
	.hero--home .hero__wash { opacity: .34; background: radial-gradient(circle at 91% 38%,rgba(209,63,215,.8),rgba(117,56,205,.35) 40%,transparent 72%); clip-path: none; }
	.hero--home .social-float--instagram { top: 27%; left: 8%; }
	.hero--home .social-float--tiktok { top: 43%; left: 17%; }
	.hero--home .social-float, .hero--home .metric-card--hero, .hero--home .sticker--hero { display: none; }
	.hero--home .handnote--hero { top: 3%; right: 3%; font-size: 18px; }
	.hero--home .hero-stats { bottom: 9px; padding: 16px 0 0; background: var(--navy); }
	.hero-stats strong { font-size: 24px; }
	.hero-stats small { max-width: 90px; font-size: 10px; }
	.hero--blog .hero__grid { min-height: 305px; }
	.hero--blog .hero__copy { height: 305px; padding-top: 35px; }
	.hero--blog .eyebrow { max-width: 225px; margin-bottom: 10px; font-size: 9px; }
	.hero--blog h1 { position: relative; z-index: 3; max-width: 255px; margin-bottom: 10px; font-size: 2rem; line-height: .99; }
	.hero--blog .hero__lead { position: relative; z-index: 3; max-width: 213px; margin-bottom: 9px; color: #4e5666; font-size: 11px; line-height: 1.33; }
	.hero--blog .hero-art { top: 54px; left: 49%; height: 251px; }
	.hero--blog .hero-art__photo { object-position: 53% 16%; -webkit-mask-image: linear-gradient(90deg,transparent 0%,#000 39%,#000 100%); mask-image: linear-gradient(90deg,transparent 0%,#000 39%,#000 100%); }
	.hero--blog .social-float--instagram, .hero--blog .social-float--tiktok, .hero--blog .metric-card--hero, .hero--blog .sticker--blog { display: none; }
	.hero--blog .handnote--hero { top: 68%; right: 4%; color: #fff; font-size: 16px; }
	.hero--blog .button--dark { color: #fff; background: var(--pink); }
	.hero--blog .button-row { margin-top: 5px; }
	.services { padding-block: 46px 54px; }
	.section-heading h2 { font-size: 31px; }
	.services-grid { gap: 9px; }
	.service-card, .service-card:last-child { min-height: 78px; padding: 10px 12px; }
	.service-card__icon { width: 45px; height: 45px; margin: 0; }
	.service-card__icon .icon { width: 24px; height: 24px; }
	.service-card h3 { font-size: 15px; }
	.service-card p { font-size: 11px; }
	.projects { padding-block: 51px 55px; }
	.projects-layout { display: block; }
	.project-card__media { min-height: 265px; }
	.project-card__result { bottom: 19px; }
	.project-card__result strong { font-size: 27px; }
	.project-card__result span { font-size: 12px; }
	.growth-cta { padding-block: 55px 25px; }
	.growth-cta__copy h2 { font-size: 39px; }
	.growth-cta__copy > p:not(.eyebrow) { font-size: 15px; }
	.growth-art { height: 310px; }
	.growth-art__phone { height: 305px; }
	.metric-card--growth span { font-size: 10px; }
	.handnote--growth { font-size: 21px; }
	.blog-categories { padding-block: 13px 16px; }
	.blog-categories .section-heading { display: flex; }
	.blog-categories .section-heading { margin-bottom: 10px; }
	.category-grid { padding-bottom: 3px; }
	.category-card { display: flex; flex-direction: row; align-items: center; flex: 0 0 126px; height: 53px; min-height: 53px; padding: 7px; }
	.category-card__icon { flex: 0 0 31px; width: 31px; height: 31px; margin: 0 7px 0 0; }
	.category-card strong { font-size: 10px; line-height: 1.08; }
	.category-card small { display: none; }
	.blog-feature { padding-top: 0; padding-bottom: 20px; }
	.featured-post, .featured-post__copy { min-height: 260px; }
	.featured-post__media { height: 100%; }
	.featured-post__media .editorial-media { object-position: 55% 17%; }
	.featured-post__shade { background: linear-gradient(90deg,rgba(8,11,27,.95) 0%,rgba(8,11,27,.74) 43%,rgba(8,11,27,.05) 100%); }
	.featured-post__copy { width: 78%; padding: 58px 14px 20px 16px; }
	.featured-post__copy h2 { max-width: 220px; font-size: 24px; }
	.featured-post__copy p { max-width: 215px; font-size: 11px; }
	.featured-post__copy .button { min-height: 41px; }
	.metric-card--featured { display: none; }
	.audit-box h3 { font-size: 21px; }
	.latest-layout .posts-grid { grid-template-columns: 1fr; }
	.latest-layout .post-card__media { height: 100%; }
	.latest-layout .post-card h3 { font-size: 15px; }
	.latest-layout .post-card p { display: none; }
	.post-card__meta { font-size: 10px; }
	.category-pill { font-size: 8px; }
	.mobile-bottom-nav { height: calc(66px + env(safe-area-inset-bottom)); }
	.mobile-bottom-nav small { font-size: 9px; }
	.mobile-bottom-nav .icon { width: 20px; height: 20px; }
}

@media (max-width: 390px) {
	.hero--home h1 { font-size: 2.58rem; }
	.hero--home .hero__lead { max-width: 290px; }
	.hero--blog h1 { max-width: 255px; font-size: 2rem; }
	.hero--blog .hero__lead { max-width: 213px; }
	.hero--blog .hero-art { left: 49%; }
}
