/* Homepage-only editorial refresh. Other service pages retain their existing layout. */
.homepage { line-height: 1.65; }
.homepage h1,.homepage h2,.homepage h3 { text-wrap: balance; }
.homepage .hero,.homepage .section { padding-left: max(6vw,calc((100vw - 1320px)/2)); padding-right: max(6vw,calc((100vw - 1320px)/2)); }
.homepage .hero { padding-top: 112px; padding-bottom: 72px; min-height: auto; }
.homepage .hero-top { grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); gap: 70px; align-items: center; }
.homepage .hero h1 { font-size: clamp(54px,6.2vw,94px); line-height: 1.08; letter-spacing: -.055em; }
.homepage .hero-lead { font-size: 18px; line-height: 1.85; }
.homepage .eyebrow { font-size: 10px; line-height: 1.8; flex-wrap: wrap; margin-bottom: 32px; }
.homepage .hero-actions { flex-wrap: wrap; gap: 12px; }
.homepage .button,.homepage .secondary-button { padding: 14px 22px; line-height: 1.5; min-height: 50px; }
.homepage .entry-offer { padding: 20px; gap: 18px; }
.homepage .entry-offer>span { border-radius: 8px; }
.homepage .microcopy { font-size: 12px; margin-top: 18px; }
.homepage .system-window { margin-top: 76px; }
.homepage .window-copy { padding: 44px; }
.homepage .window-copy>strong { line-height: 1.18; letter-spacing: -.035em; margin: 30px 0 22px; }
.homepage .window-copy p { font-size: 15px; line-height: 1.8; }
.homepage .system-grid { padding: 32px; gap: 16px; }
.homepage .system-card { padding: 25px; gap: 16px; }
.homepage .system-card small,.homepage .system-card span { font-size: 11px; }
.homepage .section { padding-top: 120px; padding-bottom: 120px; }
.homepage .section-label { font-size: 11px; line-height: 1.8; letter-spacing: .12em; }
.homepage .section-head { gap: 70px; margin-bottom: 56px; align-items: start; }
.homepage .section-head>div { flex: 1; }
.homepage .section-head>p { flex: .75; font-size: 16px; line-height: 1.85; padding-top: 32px; }
.homepage .section-head h2,.homepage .problem h2,.homepage .partner-callout h2,.homepage .faq h2,.homepage .apply h2,.homepage .collaboration-story h2 { font-size: clamp(38px,4.3vw,62px); line-height: 1.15; letter-spacing: -.04em; margin-top: 22px; }
.homepage .problem { gap: 48px; }
.homepage .problem-copy p,.homepage .problem-card p { line-height: 1.85; font-size: 16px; }
.homepage .trust-strip div { padding: 28px 20px; }
.homepage .trust-strip span { font-size: 10px; line-height: 1.6; }
.homepage .trust-strip b { font-size: 13px; }
.homepage .work { background: #f5f5f2; }
.collection-nav { display: flex; flex-wrap: wrap; gap: 18px 36px; border-top: 1px solid #cfd3d6; padding: 24px 0 42px; color: #526079; font-size: 12px; }
.collection-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 72px 40px; }
.project-card { min-width: 0; }
.project-image { display: block; padding: 30px; border-radius: 12px; overflow: hidden; }
.project-image img { width: 100%; height: auto; aspect-ratio: 1440/1000; object-fit: contain; object-position: top; display: block; border-radius: 5px; box-shadow: 0 14px 30px #18212e20; transition: transform .25s; }
.project-image:hover img { transform: translateY(-4px); }
.tone-blue { background: #dce4fa; }.tone-paper { background: #e9e2d8; }.tone-lilac { background: #e7e3f4; }.tone-mist { background: #dfe9e6; }
.project-meta { display: flex; justify-content: space-between; gap: 14px; margin-top: 26px; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #526079; }
.project-meta span:last-child { color: #1754d6; }
.project-card h3 { margin: 14px 0; font-size: 30px; line-height: 1.2; letter-spacing: -.035em; }
.project-card p { font-size: 15px; line-height: 1.85; color: #526079; max-width: 58ch; }
.project-card details { margin-top: 24px; border-top: 1px solid #cbd0d6; }
.project-card summary { padding: 18px 0; cursor: pointer; font-size: 12px; font-weight: 700; color: var(--blue); }
.project-card details p { margin-top: 0; font-size: 14px; }
.collaboration-story { background: var(--ink); color: white; display: grid; grid-template-columns: 1fr 1fr; gap: 20px 80px; }
.collaboration-story .section-label { grid-column: 1/-1; color: var(--acid); }
.collaboration-story h2 { margin: 0; }
.collaboration-text p { font-size: 17px; line-height: 1.9; color: #c3cce0; margin: 0 0 24px; }
.collaboration-text .button { margin-top: 14px; }
.feedback-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.feedback-grid figure { margin: 0; padding: 32px; background: var(--soft); border: 1px solid var(--line); border-radius: 12px; }
.feedback-grid figcaption { font-size: 11px; color: #1754d6; line-height: 1.7; font-weight: 700; }
.feedback-grid figure>.principle { margin: 28px 0; font-family: Georgia,serif; font-size: 24px; line-height: 1.6; letter-spacing: -.015em; color: var(--ink); }
.feedback-grid figure>p { font-size: 12px; color: #526079; }
.client-feedback { background: linear-gradient(145deg,var(--paper),#ece9ff); overflow:hidden; }
.client-feedback .section-head { position:relative; z-index:1; }
.client-feedback .feedback-grid { position:relative; z-index:1; }
.client-feedback .feedback-grid figure { position:relative; background:white; border:0; border-radius:24px; padding:32px; box-shadow:0 18px 45px rgba(45,55,95,.1); overflow:hidden; transition:transform .25s ease,box-shadow .25s ease; }
.client-feedback .feedback-grid figure:hover { transform:translateY(-6px); box-shadow:0 25px 58px rgba(45,55,95,.16); }
.client-feedback .feedback-grid figure:after { content:'“'; position:absolute; top:5px; right:20px; font:100px/1 Georgia,serif; color:#897bff16; }
.client-feedback .feedback-grid figcaption { margin-top:19px; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.client-feedback .feedback-grid .principle { position:relative; z-index:1; margin:13px 0 0; font-family:Arial,sans-serif; font-size:20px; line-height:1.55; font-weight:650; }
.feedback-note { margin: 28px 0 0; font-size: 12px; line-height: 1.8; color: #526079; }
.review-photo { position:relative; width:122px; height:122px; margin-bottom:22px; animation:portraitFloat 5s ease-in-out infinite; }
.review-photo:before { content:''; position:absolute; inset:8px -8px -8px 8px; z-index:-1; border-radius:32px; background:linear-gradient(145deg,#a996ff,#715ee0); transform:rotate(7deg); box-shadow:0 16px 25px rgba(63,55,135,.18); }
.review-photo img { display:block; width:100%; height:100%; object-fit:cover; border-radius:30px; border:4px solid white; box-shadow:0 12px 25px rgba(27,38,80,.16); }
.review-photo>span { position:absolute; right:-15px; top:-12px; width:36px; height:36px; display:grid; place-items:center; border-radius:13px; background:var(--acid); color:#3e4b0a; font-size:17px; font-weight:900; box-shadow:2px 3px 0 #bbd037,6px 9px 14px rgba(73,85,20,.18); animation:portraitBadge 3.8s ease-in-out infinite; }
.review-photo-linda { animation-delay:-1.4s; }
.review-photo-linda:before { background:linear-gradient(145deg,#b7a8ff,#897bff); }
.review-photo-linda>span { background:#ffb9d0; color:#a82e5d; box-shadow:2px 3px 0 #df779a,6px 9px 14px rgba(147,70,93,.18); animation-delay:-1.2s; }
.review-photo-john { animation-delay:-2.6s; }
.review-photo-john:before { background:linear-gradient(145deg,#82baff,#175cff); }
.review-photo-john>span { background:#b8e8ff; color:#175cff; box-shadow:2px 3px 0 #75b8de,6px 9px 14px rgba(63,125,160,.18); animation-delay:-2.2s; }
@keyframes portraitFloat { 0%,100%{transform:translateY(0) rotate(-1deg)} 50%{transform:translateY(-7px) rotate(1deg)} }
@keyframes portraitBadge { 0%,100%{transform:translateY(0) rotate(6deg)} 50%{transform:translateY(-5px) rotate(-5deg)} }
.review-character { --skin:#eab18c; --hair:#31293e; --shirt:#175cff; position:relative; width:120px; height:126px; animation:characterFloat 4.8s ease-in-out infinite; filter:drop-shadow(0 16px 13px rgba(44,54,95,.17)); }
.review-character .character-head { position:absolute; z-index:3; left:28px; top:9px; width:72px; height:76px; border-radius:47% 49% 46% 48%; background:linear-gradient(145deg,#ffd2b4,var(--skin)); box-shadow:inset 6px 6px 8px #fff5,inset -5px -5px 8px #9b553d28,3px 5px 0 #d49370; animation:characterNod 5.1s ease-in-out infinite; }
.review-character .character-hair { position:absolute; z-index:2; left:-3px; top:-7px; width:78px; height:35px; border-radius:44px 46px 19px 12px; background:linear-gradient(145deg,#5a5065,var(--hair)); box-shadow:inset 5px 4px 5px #ffffff1f,3px 3px 0 #1e1725; transform:rotate(-4deg); }
.review-character .character-hair:after { content:''; position:absolute; right:-1px; top:16px; width:15px; height:34px; border-radius:0 14px 17px 12px; background:var(--hair); transform:rotate(-5deg); }
.review-character .character-eyes { position:absolute; left:19px; top:39px; width:6px; height:6px; border-radius:50%; background:#252333; color:#252333; box-shadow:28px 0 currentColor; transform-origin:center; animation:characterBlink 4.4s infinite; }
.review-character .character-smile { position:absolute; left:29px; top:53px; width:19px; height:9px; border-bottom:3px solid #8e5149; border-radius:0 0 20px 20px; }
.review-character .character-body { position:absolute; z-index:1; left:14px; bottom:0; width:99px; height:57px; border-radius:42px 42px 15px 15px; background:linear-gradient(145deg,#6f91ff,var(--shirt)); box-shadow:inset 7px 6px 7px #fff4,inset -6px -5px 8px #0f328a42,4px 7px 0 #123fae; }
.review-character .character-accent { position:absolute; z-index:5; right:0; top:8px; width:34px; height:34px; display:grid; place-items:center; border-radius:12px; background:var(--acid); color:#3e4b0a; font-size:18px; font-weight:900; box-shadow:2px 3px 0 #bbd037,5px 8px 10px #78871f2e; animation:characterAccent 3.8s ease-in-out infinite; }
.character-linda { --skin:#b87957; --hair:#28202b; --shirt:#897bff; animation-delay:-1.2s; }
.character-linda .character-head { border-radius:48% 48% 44% 44%; }
.character-linda .character-hair { left:-9px; top:-9px; width:90px; height:55px; border-radius:48px 45px 25px 25px; }
.character-linda .character-hair:before { content:''; position:absolute; left:0; top:26px; width:18px; height:55px; border-radius:16px; background:var(--hair); transform:rotate(8deg); }
.character-linda .character-hair:after { right:0; top:24px; width:18px; height:54px; }
.character-linda .character-accent { background:#ffb9d0; color:#a82e5d; box-shadow:2px 3px 0 #df779a,5px 8px 10px #93465d2e; animation-delay:-1.4s; }
.character-john { --skin:#d7986e; --hair:#34261f; --shirt:#263457; animation-delay:-2.3s; }
.character-john .character-hair { width:76px; height:27px; border-radius:35px 40px 9px 15px; transform:rotate(1deg); }
.character-john .character-hair:after { height:23px; top:12px; }
.character-john .character-smile { width:22px; height:11px; left:27px; border-bottom-color:#754239; }
.character-john .character-accent { background:#b8e8ff; color:#175cff; box-shadow:2px 3px 0 #75b8de,5px 8px 10px #3f7da02e; animation-delay:-2s; }
@keyframes characterFloat { 0%,100%{transform:translateY(0) rotate(-1deg)} 50%{transform:translateY(-7px) rotate(1deg)} }
@keyframes characterNod { 0%,42%,100%{transform:rotate(0)} 48%{transform:rotate(4deg)} 56%{transform:rotate(-2deg)} 62%{transform:rotate(0)} }
@keyframes characterBlink { 0%,44%,48%,100%{transform:scaleY(1)} 46%{transform:scaleY(.12)} }
@keyframes characterAccent { 0%,100%{transform:translateY(0) rotate(6deg)} 50%{transform:translateY(-6px) rotate(-5deg)} }
.homepage .service-grid { gap: 24px; }
.homepage .service-card { padding: 34px; }
.homepage .service-card h3 { line-height: 1.25; }
.homepage .service-card>p:not(.price),.homepage .service-card li { font-size: 14px; line-height: 1.8; }
.homepage .service-top { font-size: 10px; gap: 15px; }
.homepage .pricing-note { font-size: 12px; line-height: 1.9; }
.homepage .process-grid li { padding: 32px; gap: 22px; }
.homepage .process-grid b { margin: 26px 0 18px; line-height: 1.35; }
.homepage .process-grid p { font-size: 14px; line-height: 1.8; }
.homepage .process-grid em { font-size: 10px; padding-top: 20px; }
.homepage .faq summary { line-height: 1.7; font-size: 16px; }
.homepage .faq details { padding: 26px 0; }
.homepage .faq details p { font-size: 15px; line-height: 1.85; }
.homepage .partner-system b,.homepage .growth-system b { line-height: 1.6; }
.homepage a:focus-visible,.homepage summary:focus-visible,.homepage button:focus-visible { outline: 3px solid var(--violet); outline-offset: 5px; }
@media(min-width:761px) and (max-width:1100px) { .homepage .hero-top { grid-template-columns: 1fr; }.homepage .hero-offer { max-width: 680px; }.feedback-grid { grid-template-columns: 1fr; }.collaboration-story { gap: 30px; } }
@media(max-width:760px) {
  .homepage .hero,.homepage .section { padding-left: 24px; padding-right: 24px; }
  .homepage .hero { padding-top: 60px; padding-bottom: 45px; }
  .homepage .section { padding-top: 76px; padding-bottom: 76px; }
  .homepage .hero-top { grid-template-columns: 1fr; gap: 36px; }
  .homepage .hero h1 { font-size: clamp(39px,9.4vw,65px); line-height: 1.12; }
  .homepage .hero-lead { font-size: 16px; }
  .homepage .section-head { gap: 20px; margin-bottom: 34px; }
  .homepage .section-head>p { padding-top: 0; }
  .homepage .system-window { margin-top: 42px; }
  .homepage .window-copy,.homepage .system-grid { padding: 24px; }
  .homepage .window-copy>strong { font-size: 33px; }
  .homepage .entry-offer { grid-template-columns: 1fr; }
  .homepage .entry-offer>span { justify-self: start; }
  .collection-grid,.feedback-grid,.collaboration-story { grid-template-columns: 1fr; }
  .collection-grid { gap: 48px; }.project-image { padding: 20px; }
  .project-card h3 { font-size: 27px; }.project-meta { flex-wrap: wrap; }
  .collaboration-story { gap: 28px; }.collaboration-text p { font-size: 16px; }
  .feedback-grid figure,.homepage .service-card { padding: 26px; }
  .homepage .service-card.featured { box-shadow: 4px 4px 0 var(--blue); }
}
@media(prefers-reduced-motion:reduce) { .project-image img { transition: none; }.project-image:hover img { transform: none; } }

/* Visual-first refinement: original palette, original CSS-built sculptural objects. */
.homepage .hero { padding-top: 80px; padding-bottom: 54px; }
.homepage .hero-top { grid-template-columns: 1.2fr 1fr; gap: 64px; }
.homepage .hero h1 { font-size: clamp(48px,5.4vw,78px); }
.homepage .hero-lead { font-size: 21px; line-height: 1.65; }
.homepage .entry-offer { background: none; border: 0; padding: 0; margin: 24px 0; }
.homepage .entry-offer>span { display: none; }
.homepage .section { padding-top: 92px; padding-bottom: 92px; }
.homepage .section-head h2 { font-size: clamp(38px,4vw,58px); }
.homepage .project-card>p { margin: 10px 0 0; }
.homepage .project-card details { margin-top: 16px; }
.homepage .project-card summary { padding: 13px 0; }
.homepage .collection-grid { gap: 48px 36px; }
.homepage .collection-nav { padding-bottom: 30px; }
.homepage .collaboration-story { align-items: center; }
.homepage .collaboration-text p:first-child { font-size: 20px; }
.homepage .collaboration-text p+p { font-size: 12px; margin-bottom: 16px; }
.homepage .studio-approach .section-head>p { align-self: end; }
.homepage .studio-approach .feedback-grid figure { padding: 32px; background: transparent; border: 0; }
.homepage .studio-approach .feedback-grid figure>.principle { margin: 20px 0 10px; font-family: Arial,sans-serif; font-size: 26px; font-weight: 700; letter-spacing: -.035em; }
.homepage .studio-approach .feedback-grid figure>p:not(.principle) { font-size: 14px; }
.homepage .service-card { min-height: 0; padding: 30px; }
.homepage .service-top { margin-bottom: 42px; }
.homepage .service-card.featured { transform: none; }
.homepage .recommended { top: 59px; }
.homepage .scope-details { border-top: 1px solid var(--line); margin: 20px 0 28px; }
.homepage .scope-details summary { padding: 17px 0; font-size: 13px; cursor: pointer; font-weight: 700; }
.homepage .scope-details ul { margin: 0 0 20px; }
.homepage .service-card .service-buy { margin-top: auto; }
.homepage .service-card.dark .scope-details { border-color: #364058; }
.homepage .process-grid li { min-height: 210px; padding: 28px; gap: 14px; }
.homepage .process-grid b { margin: 14px 0 10px; }
.homepage .partner-callout,.homepage .growth-callout { grid-template-columns: 1fr; }
.homepage .partner-copy,.homepage .growth-copy { display: grid; grid-template-columns: 1fr auto; gap: 12px 50px; align-items: center; }
.homepage .partner-copy>.section-label,.homepage .growth-copy>.section-label { grid-column: 1/-1; }
.homepage .partner-copy h2,.homepage .growth-copy h2 { font-size: clamp(32px,3.5vw,48px); line-height: 1.2; grid-column: 1; }
.homepage .partner-copy p,.homepage .growth-copy p { grid-column: 1; margin: 8px 0 0; }
.homepage .partner-copy>.button,.homepage .growth-copy>.button { grid-column: 2; grid-row: 2/4; margin: 0; }
.studio-scene { position: relative; display: grid; grid-template-columns: .7fr 1.3fr; align-items: center; min-height: 365px; margin-top: 58px; border-radius: 28px; background: radial-gradient(ellipse at 85% 20%,#e5defd 0,transparent 55%),radial-gradient(ellipse at 10% 85%,#eaf5c6,transparent 45%),#eef2fc; overflow: hidden; }
.scene-caption { padding: 45px; position: relative; z-index: 2; }
.scene-caption>span { font-size: 10px; letter-spacing: .15em; color: #627291; }
.scene-caption>b { display: block; font-size: 40px; line-height: 1.2; letter-spacing: -.04em; margin-top: 24px; font-weight: 600; }
.scene-art { position: relative; height: 365px; perspective: 1000px; }
.sculpt-browser { position: absolute; width: 350px; height: 247px; left: 22%; top: 53px; border: 2px solid #ffffff; border-radius: 22px; background: linear-gradient(135deg,#fff,#f0f2fd); box-shadow: 2px 3px 0 #dce2f0,5px 7px 0 #c8d1e5,9px 12px 0 #b5c1dc,25px 36px 40px #34447528; transform: rotateX(8deg) rotateY(-18deg) rotateZ(-8deg); z-index: 3; }
.sculpt-toolbar { height: 34px; border-bottom: 1px solid #d6dcef; display: flex; align-items: center; gap: 5px; padding: 0 17px; }
.sculpt-toolbar i { width: 6px; height: 6px; background: #b7bfda; border-radius: 50%; }
.sculpt-content { padding: 18px 28px; }
.sculpt-content>span { font-size: 8px; color: #697b9d; letter-spacing: .12em; }
.sculpt-content>b { display: block; font-size: 31px; letter-spacing: -.035em; line-height: 1.12; color: #175cff; margin: 12px 0; }
.sculpt-lines { width: 53%; display: grid; gap: 5px; }.sculpt-lines i { height: 4px; background: #d8def0; border-radius: 4px; }.sculpt-lines i+ i { width: 80%; }
.sculpt-pill { width: 60px; height: 17px; margin-top: 13px; background: linear-gradient(135deg,#91a6ff,#175cff); border-radius: 5px; box-shadow: 0 3px 0 #184acf; }
.sculpt-spark { position: absolute; top: 24px; left: 5%; z-index: 4; font: 126px/1 Arial; color: #a08bf8; transform: rotate(-13deg); text-shadow: 1px 2px #8a72e1,2px 4px #856cdd,3px 6px #785bd2,4px 8px #6c50c8,10px 22px 18px #6b51b62e; }
.sculpt-orbit { position: absolute; width: 135px; height: 135px; top: 44px; right: 7%; border: 25px solid #b4a0ff; border-radius: 50%; background: transparent; box-shadow: inset 4px 5px 8px #755ccb80,inset -4px -4px 8px #e3daff,4px 7px 0 #8e76da,8px 13px 0 #7861c7,10px 24px 30px #7a60b625; transform: rotateY(-30deg) rotateX(25deg); }
.sculpt-cursor { position: absolute; width: 97px; height: 115px; bottom: 30px; left: 62%; z-index: 5; transform: rotate(13deg); filter: drop-shadow(3px 5px 0 #a5b72b) drop-shadow(8px 14px 10px #75833140); }
.sculpt-cursor svg { width: 100%; height: 100%; }
.sculpt-message { position: absolute; width: 97px; height: 69px; border-radius: 22px; bottom: 35px; left: 9%; z-index: 4; background: linear-gradient(135deg,#648cff,#175cff 70%,#1340bf); box-shadow: inset 2px 2px 3px #b7d1ff,4px 6px 0 #153db0,12px 20px 25px #1743a733; transform: rotate(-13deg); display: flex; align-items: center; justify-content: center; gap: 8px; }
.sculpt-message:after { content:''; position:absolute; bottom:-10px; left:25px; border: 9px solid transparent; border-top-color:#175cff; border-left-color:#175cff; }
.sculpt-message i { width:9px; height:9px; background:white; border-radius:50%; box-shadow:0 2px 2px #173b91; }
.mini-sculpt { position: relative; height: 135px; width: 140px; margin-bottom: 24px; }
.mini-idea>span { position:absolute; left:14px; top:0; color:#a590ff; font:118px/1 Arial; transform:rotate(-12deg); text-shadow:1px 2px #8b74e2,3px 5px #7960d0,5px 8px #6a50c0,12px 21px 20px #7556b52e; }
.mini-design>span { position:absolute; width:104px; height:82px; top:23px; left:14px; border:3px solid #fff; border-radius:17px; background:linear-gradient(135deg,#97b4ff,#175cff); transform:rotate(-12deg); box-shadow:4px 6px 0 #164cce,8px 12px 0 #1340b7,14px 23px 20px #153f9b28; }
.mini-design>span:after { content:''; position:absolute; inset:18px 13px; border:3px solid #ffffffc9; border-radius:7px; border-top-width:10px; }
.mini-design>i { position:absolute; width:40px; height:40px; border-radius:12px; background:linear-gradient(135deg,#edff97,#dfff45); top:75px; right:8px; transform:rotate(15deg); box-shadow:3px 5px 0 #b7cb35; }
.mini-chat>span { position:absolute; width:103px; height:75px; top:23px; left:10px; background:linear-gradient(135deg,#eeffa2,#dfff45); color:#586a1d; border-radius:25px; font:54px/54px Arial; text-align:center; transform:rotate(-12deg); box-shadow:inset 2px 2px 2px #fcffe5,4px 6px 0 #c1d849,8px 12px 0 #adc338,14px 25px 20px #788a2529; }
.mini-chat>span:after { content:''; position:absolute; bottom:-9px; left:25px; border:10px solid transparent; border-top-color:#dfff45; border-left-color:#dfff45; }
@media(max-width:1100px){.homepage .hero-top { grid-template-columns: 1fr; gap: 26px; }.studio-scene { grid-template-columns: .7fr 1.3fr; }.sculpt-browser { left: 9%; width: 290px; }.sculpt-orbit { right: 1%; }.scene-caption { padding: 30px; }.scene-caption>b { font-size: 32px; }.sculpt-spark { left: 0; }.sculpt-cursor { left: 70%; }.sculpt-message { left: 0; }}
@media(max-width:760px){.homepage .hero { padding-top:50px; }.homepage .hero h1 { font-size:clamp(39px,8.6vw,58px); }.homepage .hero-lead { font-size:18px; }.homepage .section { padding-top:64px; padding-bottom:64px; }.homepage .entry-offer { margin:18px 0; }.homepage .studio-approach .feedback-grid { grid-template-columns:1fr; gap:12px; }.homepage .studio-approach .feedback-grid figure { padding:20px 0; display:grid; grid-template-columns:100px 1fr; column-gap:20px; align-items:center; }.mini-sculpt { grid-column:1; grid-row:1/4; transform:scale(.72); transform-origin:left center; margin:0; width:120px; height:115px; }.homepage .studio-approach .feedback-grid figcaption { grid-column:2; font-size:10px; }.homepage .studio-approach .feedback-grid figure>.principle { grid-column:2; margin:6px 0; font-size:23px; }.homepage .studio-approach .feedback-grid figure>p:not(.principle) { grid-column:2; margin:0; font-size:12px; }.homepage .partner-copy,.homepage .growth-copy { display:block; }.homepage .partner-copy>.button,.homepage .growth-copy>.button { margin-top:24px; }.studio-scene { grid-template-columns:1fr; margin-top:36px; min-height:0; }.scene-caption { padding:25px 28px 0; }.scene-caption>b { font-size:28px; margin-top:12px; }.scene-caption>b br { display:none; }.scene-art { height:285px; max-width:460px; width:100%; margin:auto; }.sculpt-browser { left:18%; top:48px; width:240px; height:184px; border-radius:16px; }.sculpt-toolbar { height:25px; }.sculpt-content { padding:12px 18px; }.sculpt-content>b { font-size:23px; margin:8px 0; }.sculpt-content>span { font-size:6px; }.sculpt-lines { gap:3px; }.sculpt-lines i { height:3px; }.sculpt-pill { height:12px; margin-top:8px; }.sculpt-spark { font-size:86px; left:4%; top:20px; }.sculpt-orbit { width:90px; height:90px; border-width:18px; top:27px; right:7%; }.sculpt-cursor { width:70px; height:84px; bottom:20px; left:70%; }.sculpt-message { width:72px; height:52px; left:8%; bottom:22px; border-radius:17px; }.sculpt-message i { width:6px; height:6px; }.homepage .scope-details summary { min-height:44px; }}
@media(max-width:390px){.sculpt-browser { left:16%; width:205px; }.sculpt-cursor { left:67%; }.scene-caption>b { font-size:25px; }.scene-caption>span { font-size:8px; }.homepage .studio-approach .feedback-grid figure { grid-template-columns:82px 1fr; gap:0 14px; }.mini-sculpt { transform:scale(.62); }.homepage .studio-approach .feedback-grid figure>.principle { font-size:20px; }}
@media(max-width:760px){.client-feedback .feedback-grid figure{display:grid;grid-template-columns:104px 1fr;column-gap:20px;align-items:center;padding:24px}.review-photo{grid-column:1;grid-row:1/3;width:94px;height:94px;margin:0}.review-photo img{border-radius:24px}.review-photo:before{border-radius:25px}.review-photo>span{right:-8px;top:-10px;width:31px;height:31px}.client-feedback .feedback-grid figcaption{grid-column:2;margin:0}.client-feedback .feedback-grid .principle{grid-column:2;margin:7px 0 0;font-size:17px}.client-feedback .feedback-grid figure:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.review-character,.review-character .character-head,.review-character .character-eyes,.review-character .character-accent,.review-photo,.review-photo>span{animation:none}.client-feedback .feedback-grid figure{transition:none}}

/* Client-confidence pass: lead with the business problem, then reveal the breadth. */
.homepage .hero-copy h1 { max-width: 900px; text-wrap: balance; }
.homepage .hero-copy h1 em { color: var(--blue); }
.homepage .hero-offer { align-self: end; }
.homepage .entry-offer strong { line-height: 1.55; }
.homepage .work .section-head>p { max-width: 470px; }
.more-work { margin-top: 58px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.more-work>summary { min-height: 92px; padding: 24px 4px; display: flex; align-items: center; justify-content: space-between; gap: 24px; cursor: pointer; list-style: none; font-weight: 700; font-size: 18px; }
.more-work>summary::-webkit-details-marker { display: none; }
.more-work>summary span:after { content: ' +'; color: var(--blue); }
.more-work[open]>summary span:after { content: ' −'; }
.more-work>summary small { color: #66738c; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.collection-grid-more { padding: 48px 0 58px; }
.client-feedback .section-head>p { max-width: 330px; }
.client-feedback .feedback-grid figure { display: grid; grid-template-columns: 82px 1fr; column-gap: 20px; align-items: center; }
.client-feedback .review-photo { grid-column: 1; grid-row: 1 / 3; width: 74px; height: 74px; margin: 0; animation-duration: 7s; }
.client-feedback .review-photo:before { inset: 5px -5px -5px 5px; border-radius: 22px; }
.client-feedback .review-photo img { border-width: 3px; border-radius: 20px; }
.client-feedback .review-photo>span { right: -11px; top: -9px; width: 28px; height: 28px; border-radius: 9px; font-size: 13px; }
.client-feedback .feedback-grid figcaption { grid-column: 2; margin: 0; }
.client-feedback .feedback-grid .principle { grid-column: 2; margin: 8px 0 0; font-size: 22px; line-height: 1.45; }
.homepage .price small { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; vertical-align: middle; }
@media(max-width:760px){
  .more-work { margin-top: 38px; }
  .more-work>summary { align-items: flex-start; flex-direction: column; gap: 8px; min-height: 0; padding: 22px 0; }
  .collection-grid-more { padding: 34px 0 44px; }
  .client-feedback .feedback-grid figure { grid-template-columns: 72px 1fr; column-gap: 16px; }
  .client-feedback .review-photo { width: 64px; height: 64px; }
  .client-feedback .feedback-grid .principle { font-size: 17px; }
}
