@font-face { font-family:Outfit; src:url('../fonts/outfit-latin.woff2') format('woff2'); font-style:normal; font-weight:100 900; font-display:swap; }
:root { --partner-paper:#fcf7ee; --partner-violet:#342352; --partner-ink:#30283b; --partner-mid:#665d70; --partner-gold:#f3d184; --partner-mint:#dcebe2; --partner-line:#d8d0dd; }
.phase-site { --apple-accent:#574089; --accent:#574089; --accent-dark:#3c285e; --accent-h:#3c285e; }
.phase-site h1,.phase-site h2,.phase-site h3 { font-family:Outfit,var(--apple-font); font-weight:500; }
.phase-site .nav { background:rgba(252,247,238,.94); }
.phase-site .nav-inner { gap:20px; }
.phase-site .nav-links { gap:24px; align-items:center; }
.phase-site .nav-links a { font-size:.875rem; }
.nav-service-menu { position:relative; }
.nav-service-menu summary { display:flex; align-items:center; gap:7px; min-height:44px; cursor:pointer; font-size:.875rem; font-weight:500; color:#45404f; list-style:none; }
.nav-service-menu summary::-webkit-details-marker { display:none; }
.nav-service-menu summary svg { width:10px; height:8px; }
.nav-service-links { position:absolute; top:calc(100% + 10px); left:-16px; display:grid; min-width:260px; padding:10px 16px; border:1px solid #d8d0dd; border-radius:14px; background:#fcf7ee; box-shadow:0 14px 35px #30203824; }
.phase-site .nav-service-links a { padding:12px 8px; min-height:44px; font-size:.875rem; }
.phase-site .nav-right .button { font-size:.85rem; }
.partner-home { background:var(--partner-paper); }
.partner-home h1,.partner-home h2,.partner-home h3 { color:var(--partner-ink); }
.partner-home p { color:var(--partner-mid); }
.partner-home .eyebrow { font-size:.8rem; color:#6d5888; letter-spacing:.085em; font-weight:500; }
.partner-home .section { padding:80px 0; }
.partner-home .section-heading h2 { font-size:2.8rem; line-height:1.1; letter-spacing:-.035em; }
.partner-home .section-heading>p { font-size:1rem; }
.partner-home .button { min-height:52px; padding:14px 22px; font-size:.95rem; }
.partner-home .button-primary { background:#574089; border-color:#574089; }
.partner-home .button-primary:hover { background:#3c285e; border-color:#3c285e; }
.partner-home .partner-hero { background:var(--partner-paper); padding:64px 0 70px; overflow:visible; }
.partner-hero-grid { display:grid; grid-template-columns:1fr 1.03fr; align-items:center; gap:56px; }
.partner-home .partner-hero h1 { max-width:11ch; font-size:4.25rem; line-height:1.045; letter-spacing:-.035em; margin:24px 0; }
.partner-home .partner-hero h1 span { color:#574089; }
.partner-home .partner-intro { max-width:43ch; font-size:1.125rem; line-height:1.65; }
.partner-home .partner-hero .actions { gap:20px; margin-top:30px; }
.partner-home .partner-hero .button-primary { background:var(--partner-violet); border-color:var(--partner-violet); }
.partner-work-link { display:inline-flex; align-items:center; gap:12px; min-height:48px; padding:8px 0; color:var(--partner-violet); font-size:.95rem; font-weight:500; text-decoration:none; border-bottom:1px solid #b5a6c9; }
.partner-work-link:hover { color:#574089; border-color:#574089; }
.partner-home .partner-signature { margin:24px 0 0; font-size:.9rem; color:#5b4d6c; line-height:1.6; }
.hero-guide { margin-top:10px; }
.partner-home .hero-guide .finder-entry { font-size:.9rem; min-height:44px; }
.partner-home .hero-person { margin-top:24px; }
.partner-home .hero-person p { font-size:.85rem; }
.partner-home .hero-person strong { font-weight:500; }
.partner-home .motion-toggle { font-size:.8rem; }
.partner-workbench { margin:0; padding:30px; border:1px solid #69527f; border-radius:26px 26px 6px 26px; background:#342352; color:#fff7e9; box-shadow:12px 12px 0 #eadfcf,0 18px 40px -22px #34235235; }
.bench-heading { padding-bottom:22px; border-bottom:1px solid #755c87; }
.bench-wordmark { display:block; font-size:.8rem; letter-spacing:.075em; color:#f3d184; }
.partner-home .bench-heading h2 { color:#fff7e9; font-size:2rem; line-height:1.15; letter-spacing:-.025em; margin-top:12px; }
.bench-core { display:grid; grid-template-columns:145px 1fr; gap:24px; margin-top:24px; align-items:start; }
.bench-portrait { border-radius:80px 80px 10px 10px; overflow:hidden; background:#f7f0e5; border:3px solid #f3d184; }
.bench-portrait img { width:100%; height:190px; object-fit:cover; object-position:50% 24%; }
.partner-home .bench-notes p { color:#fff7e9; font-family:Outfit,var(--apple-font); font-size:1.1rem; line-height:1.35; }
.bench-notes ul { margin:14px 0 0; padding:0; list-style:none; display:grid; gap:10px; }
.bench-notes li { display:flex; gap:9px; color:#efe3f5; font-size:.82rem; line-height:1.45; }
.bench-notes li span { color:#f3d184; font-size:.75rem; padding-top:1px; }
.bench-credential { display:block; color:#f3d184; font-size:.8rem; margin-top:14px; line-height:1.5; }
.capability-flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; padding:0; margin:28px -8px 0; list-style:none; }
.capability-flow li { position:relative; min-width:0; }
.capability-flow li:not(:last-child):after { content:''; position:absolute; top:23px; left:calc(50% + 22px); width:calc(100% - 44px); height:2px; background:#c1a4cc; transform-origin:left; }
.capability-flow button { position:relative; display:flex; width:100%; align-items:center; flex-direction:column; gap:10px; padding:0 2px; min-height:84px; color:#f3e8f7; border:0; background:none; font-size:.82rem; cursor:pointer; }
.flow-point { display:grid; place-items:center; width:48px; height:48px; border:1px solid #b497c8; border-radius:50%; background:#4e3867; color:#f3d184; }
.flow-point svg { width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.capability-flow button:hover .flow-point,.capability-flow button[aria-pressed=true] .flow-point { background:#f3d184; color:#342352; border-color:#f3d184; }
.capability-flow button:focus-visible { outline:3px solid #f3d184!important; outline-offset:3px; border-radius:8px; }
.flow-short { display:none; }
.partner-home .flow-caption { margin:14px 0 0; color:#efe3f5; font-size:.88rem; line-height:1.55; min-height:2.9em; }
.flow-controls { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:12px; }
.partner-workbench .story-replay { background:transparent; color:#fff7e9; border-color:#a28ab5; font-size:.8rem; }
.partner-workbench .story-replay:hover { background:#4d3566; border-color:#f3d184; }
.flow-status { color:#ead8f2; font-size:.78rem; }
.flow-playing .flow-point { animation:partner-node .5s ease-out both; }
.flow-playing .capability-flow li:nth-child(2) .flow-point { animation-delay:.5s; }
.flow-playing .capability-flow li:nth-child(3) .flow-point { animation-delay:1s; }
.flow-playing .capability-flow li:nth-child(4) .flow-point { animation-delay:1.5s; }
.flow-playing .capability-flow li:last-child .flow-point { animation:partner-flow-complete .5s ease-out 2s both; }
.flow-playing .capability-flow li:not(:last-child):after { animation:partner-connect .5s ease-out .3s both; }
.flow-playing .capability-flow li:nth-child(2):after { animation-delay:.8s; }
.flow-playing .capability-flow li:nth-child(3):after { animation-delay:1.3s; }
.flow-playing .capability-flow li:nth-child(4):after { animation-delay:1.8s; }
.flow-idle *,.flow-suspended *,.motion-paused [data-partner-flow] *,.finder-open [data-partner-flow] * { animation-play-state:paused!important; }
@keyframes partner-node { from { opacity:.55; transform:scale(.92); } to { opacity:1; transform:scale(1); } }
@keyframes partner-flow-complete { from { opacity:.55; transform:scale(.92); } to { opacity:1; transform:scale(1); } }
@keyframes partner-connect { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes partner-connect-vertical { from { transform:scaleY(0); } to { transform:scaleY(1); } }
.partner-services { background:#fff; }
.partner-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:6px; border-radius:20px; background:#eee7f4; margin-bottom:24px; }
.partner-choices button { position:relative; display:flex; flex-direction:column; gap:7px; text-align:left; padding:18px 44px 18px 20px; min-height:84px; font-family:Outfit,var(--apple-font); font-size:1.2rem; line-height:1.25; background:none; border:1px solid transparent; border-radius:16px; color:#5f4d71; }
.partner-choices button:after { content:''; position:absolute; right:16px; top:50%; width:16px; height:16px; border:1.5px solid #a78cb9; border-radius:50%; transform:translateY(-50%); }
.partner-choices button[aria-selected=true]:after { background:#574089; border-color:#574089; box-shadow:inset 0 0 0 3px #fcf7ee; }
.partner-choices button span { font-family:var(--apple-font); font-size:.8rem; color:#746080; }
.partner-choices button[aria-selected=true] { color:#342352; background:#fcf7ee; border-color:#d9c9e0; }
.partner-choices button[aria-selected=true] span { color:#665072; }
.partner-choices .apple-selection-indicator { background:#fcf7ee; border-color:#d9c9e0; border-radius:16px; }
.partner-offer { display:grid; grid-template-columns:1fr 1fr; gap:52px; padding:36px 40px; border:1px solid #ddd2dd; border-radius:22px; background:#fcf7ee; }
.partner-offer:not([hidden])+.partner-offer { margin-top:20px; }
.partner-home .offer-copy h3 { font-size:2.25rem; line-height:1.14; margin:10px 0 18px; letter-spacing:-.025em; }
.partner-home .offer-copy>p:not(.eyebrow) { font-size:1rem; line-height:1.65; }
.offer-copy .button { margin-top:24px; }
.offer-capabilities { padding:18px 0 0; }
.partner-home .capability-label { color:#574089; font-size:.9rem; font-weight:500; margin-bottom:18px; }
.offer-capabilities ul { display:grid; grid-template-columns:1fr 1fr; gap:16px 20px; margin:0; padding:0; list-style:none; }
.offer-capabilities li { padding-left:15px; position:relative; color:#52445f; font-size:.94rem; line-height:1.55; }
.offer-capabilities li:before { content:''; width:5px; height:5px; border-radius:50%; background:#a485ba; position:absolute; left:0; top:.65em; }
.partner-home .scope-note { color:#6d6176; font-size:.86rem; line-height:1.6; }
.offer-capabilities .scope-note { margin-top:24px; padding-top:18px; border-top:1px solid #ddd2dd; }
.connected-process { background:#e5eee8; }
.process-rail { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; padding:6px; margin:0 0 30px; background:#cfded6; border-radius:999px; }
.process-rail button { display:flex; align-items:center; justify-content:center; gap:12px; min-height:60px; border:1px solid transparent; border-radius:999px; background:none; color:#37594c; font-family:Outfit,var(--apple-font); font-size:1.25rem; }
.process-rail button span { display:grid; place-items:center; width:30px; height:30px; border:1px solid #8fae9f; border-radius:50%; font-family:var(--apple-font); font-size:.8rem; }
.process-rail button[aria-selected=true] { background:#fcf7ee; color:#342352; }
.process-rail button[aria-selected=true] span { background:#574089; border-color:#574089; color:#fff7e9; }
.process-rail .apple-selection-indicator { border:0; background:#fcf7ee; border-radius:999px; }
.process-panel { display:grid; grid-template-columns:.9fr 1.1fr; gap:56px; align-items:center; min-height:230px; }
.process-word { font-family:Outfit,var(--apple-font); font-size:5.1rem; font-weight:500; line-height:1; letter-spacing:-.035em; color:#547e6a; }
.partner-home .process-panel h3 { font-size:1.9rem; line-height:1.2; margin-bottom:18px; }
.partner-home .process-panel p { font-size:1rem; line-height:1.65; color:#536a5d; }
.process-output { margin-top:22px; padding-top:18px; border-top:1px solid #adc2b6; }
.process-output span { display:block; font-size:.85rem; color:#37594c; font-weight:500; margin-bottom:6px; }
.partner-home .proof-section { background:var(--partner-violet); border:0; }
.partner-home .proof-section .section-heading h2 { color:#fff7e9; }
.partner-home .proof-section .eyebrow { color:#f3d184; }
.partner-home .proof-section .section-heading>p { color:#efe2f4; }
.proof-choices { display:inline-flex; gap:4px; padding:5px; margin-bottom:30px; border:1px solid #806697; border-radius:999px; background:#493261; }
.proof-choices button { padding:12px 20px; min-height:48px; border:0; border-radius:999px; background:none; color:#f2e7f5; font-size:.94rem; }
.proof-choices button[aria-selected=true] { color:#342352; background:#fcf7ee; }
.proof-choices .apple-selection-indicator { border:0; border-radius:999px; background:#fcf7ee; }
.case-ledger { display:grid; grid-template-columns:1.3fr .7fr; gap:32px; }
.case-feature { border-radius:20px; overflow:hidden; background:#fcf7ee; }
.case-image-link { display:block; padding:10px; background:#e5ddd7; }
.case-image-link img { display:block; width:100%; height:auto; aspect-ratio:1.6; object-fit:cover; object-position:top; border-radius:12px; }
.case-feature-copy { padding:24px 28px 28px; }
.partner-home .case-type { font-size:.8rem; color:#715584; margin-bottom:12px; line-height:1.5; }
.partner-home .case-feature h3 { color:#342352; font-size:1.85rem; line-height:1.15; margin-bottom:14px; }
.partner-home .case-feature p:not(.case-type),.partner-home .case-feature dd { color:#65586d; font-size:.94rem; line-height:1.6; }
.case-feature dl { display:grid; gap:5px; margin:18px 0 16px; }
.case-feature dt,.case-side dt { font-size:.8rem; font-weight:500; }
.case-feature dt { color:#715584; }
.case-feature dd,.case-side dd { margin:0 0 10px; }
.case-link { display:inline-flex; gap:12px; align-items:center; min-height:44px; color:#574089; font-size:.94rem; font-weight:500; text-underline-offset:4px; }
.case-side { display:grid; gap:0; }
.case-side article { padding:28px 4px; border-top:1px solid #8c729e; }
.case-side article:first-child { padding-top:0; border-top:0; }
.partner-home .case-side .case-type { color:#f3d184; }
.partner-home .case-side h3 { color:#fff7e9; font-size:1.65rem; margin:0 0 14px; }
.partner-home .case-side p:not(.case-type),.partner-home .case-side dd { color:#eadff0; font-size:.94rem; line-height:1.6; }
.case-side dl { margin:18px 0 12px; }
.case-side dt { color:#f3d184; margin-bottom:6px; }
.case-side .case-link { color:#fff1c8; }
.partner-home .proof-note { margin-top:24px; color:#e7d9ef; font-size:.86rem; line-height:1.6; }
.proof-websites { padding:30px; border-radius:22px; background:#fcf7ee; }
.partner-home .website-proof-intro { margin-bottom:22px; color:#665d70; font-size:1rem; }
.partner-home .proof-websites .project-choice small { font-size:.8rem; }
.partner-home .proof-websites .project-choice { min-height:86px; }
.partner-home .proof-websites .project-context p:not(.eyebrow),.partner-home .proof-websites .preview-note { color:#665d70; font-size:.88rem; }
.partner-home .proof-websites .project-context h3,.partner-home .proof-websites .project-visit-bar strong { color:#342352; }
.partner-home .proof-websites .project-choice-cue,.partner-home .proof-websites .project-preview-label,.partner-home .proof-websites .project-tab-note { color:#665d70; font-size:.82rem; }
.partner-home .proof-websites .project-contribution dt { font-size:.85rem; color:#574089; }
.partner-home .proof-websites .eyebrow { color:#715584; }
.partner-home .proof-websites .project-contribution dd { font-size:.9rem; color:#665d70; }
.partner-home .proof-websites .preview-toolbar,.partner-home .proof-websites .device-choices button { font-size:.83rem; }
.engagement-section { background:#f2e9de; }
.engagement-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.partner-home .engagement-intro h2 { font-size:2.7rem; line-height:1.12; margin:0 0 24px; letter-spacing:-.03em; }
.engagement-intro>p:not(.eyebrow):not(.scope-note) { font-size:1rem; line-height:1.65; max-width:42ch; }
.engagement-intro .scope-note { margin-top:22px; }
.engagement-list { display:grid; }
.engagement-list article { display:grid; grid-template-columns:40px 1fr; gap:16px; padding:24px 0; border-bottom:1px solid #cebdcc; }
.engagement-list article:first-child { padding-top:0; }
.engagement-number { color:#725986; font-size:.9rem; padding-top:4px; }
.partner-home .engagement-list h3 { font-size:1.55rem; margin:0 0 10px; line-height:1.2; }
.partner-home .engagement-list p { font-size:.97rem; line-height:1.6; }
.engagement-cta { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#574089; font-size:.92rem; font-weight:500; margin-top:10px; text-underline-offset:4px; }
.partner-home .specialist-section { background:#fffaf2; }
.specialist-disclosure { border-top:1px solid #d6c4d9; border-bottom:1px solid #d6c4d9; }
.specialist-disclosure>summary { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 0; min-height:56px; list-style:none; cursor:pointer; color:#574089; font-size:1.05rem; font-weight:500; }
.specialist-disclosure>summary::-webkit-details-marker { display:none; }
.specialist-disclosure>summary span { font-size:1.7rem; line-height:1; }
.specialist-disclosure[open]>summary span { transform:rotate(45deg); }
.specialist-disclosure[open]>[data-service-explorer] { padding-top:18px; }
.specialist-disclosure .custom-project { margin-bottom:28px; }
.partner-home .service-choice-cue,.partner-home .service-choices button { font-size:.9rem; }
.partner-home .service-choices { background:#eae2ef; }
.partner-home .service-choices .apple-selection-indicator { background:#fffaf2; border-color:#d2c2de; }
.partner-home .service-story,.partner-home .reach-illustration { background:#f1eaf4; }
.partner-home .service-story figcaption,.partner-home .reach-illustration figcaption { font-size:.95rem; color:#514064; }
.partner-home .story-steps,.partner-home .reach-steps { font-size:.8rem; }
.partner-home .story-replay,.partner-home .reach-replay,.partner-home .ideas-replay { font-size:.83rem; }
.partner-home .story-status,.partner-home .reach-motion-status,.partner-home .ideas-status { font-size:.8rem; }
.partner-home .embedded-learning-proof.section { padding:24px 0 0; background:none; margin-top:24px; border-top:1px solid #d8c8dd; }
.partner-home .embedded-learning-proof .shell { padding:0; }
.partner-home .embedded-learning-proof .learning-grid { grid-template-columns:1fr; gap:18px; }
.partner-home .embedded-learning-proof .learning-copy h2 { font-size:1.7rem; }
.partner-home .embedded-learning-proof .learning-copy>p { font-size:.92rem; }
.partner-home .embedded-learning-proof .learning-image { max-width:580px; }
.partner-home .custom-project { border-color:#d6c4d9; }
.partner-home .custom-project-copy h3 { font-size:1.9rem; }
.partner-home .custom-project .scope-note { font-size:.85rem; }
.partner-home .custom-story { background:#f6ebd5; }
.partner-home .section-footnote { font-size:.9rem; border-color:#d6c4d9; }
.partner-home .founder-section { background:#fff; }
.founder-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:80px; align-items:center; }
.founder-image { border-radius:20px; overflow:hidden; background:#ede1d5; border:1px solid #dfd0d5; }
.founder-image img { width:100%; height:420px; object-fit:cover; object-position:50% 23%; }
.partner-home .founder-image p { margin:0; padding:18px 24px; color:#342352; font-family:Outfit,var(--apple-font); font-size:1.2rem; line-height:1.5; background:#f6eddf; }
.founder-image p span { display:block; font-family:var(--apple-font); font-size:.86rem; color:#6d5d73; }
.partner-home .founder-copy h2 { font-size:2.55rem; line-height:1.12; margin:0 0 24px; letter-spacing:-.03em; }
.founder-copy>p:not(.eyebrow) { font-size:1.05rem; line-height:1.7; }
.partner-home .credential strong { font-size:.9rem; }
.partner-home .credential span,.partner-home .credential div>a { font-size:.82rem; }
.founder-video-note { margin-top:20px; border-top:1px solid #d7ccd9; padding-top:14px; }
.founder-video-note summary { min-height:44px; display:flex; align-items:center; cursor:pointer; font-size:.9rem; color:#574089; }
.founder-video-note p { margin-top:8px; font-size:.9rem; line-height:1.6; }
.partner-home .ideas-section { background:#fff; }
.partner-home .ideas-illustration h2 { font-size:2.1rem; }
.partner-home .ideas-illustration figcaption>p { font-size:1rem; }
.partner-home .partner-contact { background:#eee5f3; }
.partner-home .partner-contact .contact-copy h2 { font-size:2.75rem; line-height:1.13; }
.partner-home .partner-contact .contact-copy>p:not(.eyebrow):not(.scope-note) { font-size:1.05rem; }
.partner-home .contact-form-card { border-color:#d4c6de; background:#fffaf5; }
.partner-home .enquiry-form label { font-size:.9rem; }
.partner-home .enquiry-form label span,.partner-home .privacy-note { font-size:.8rem; }
.partner-home .enquiry-form input,.partner-home .enquiry-form select,.partner-home .enquiry-form textarea { background:#fff; min-width:0; max-width:100%; }
.partner-home .faq summary,.partner-home .faq details p,.partner-home .contact-guide p { font-size:.95rem; }
.partner-home>footer { background:#342352; color:#fff7e9; }
.partner-home .footer-brand { color:#fff7e9; }
.partner-home .footer-brand span,.partner-home .footer-base { color:#e6d9ee; font-size:.84rem; }
.partner-home .footer-links a { color:#f4e6fa; font-size:.88rem; }
.partner-home .footer-base { border-color:#755b87; }
.partner-home .service-finder { background:#fffaf5; border-color:#d4c6de; }
.partner-home .finder-actions { background:#fffaf5; }
.apple-motion-ready [data-spring-choices] { position:relative; isolation:isolate; }
.apple-motion-ready [data-spring-choices]>button { position:relative; z-index:1; }
.apple-motion-ready [data-spring-choices]>button[aria-selected=true] { background:transparent; border-color:transparent; }
.phase-site [data-partner-control] { touch-action:manipulation; transform:scale(var(--apple-press-scale,1)); transform-origin:center; }
.phase-site [data-partner-control]:active { filter:brightness(.96); }
.partner-home .partner-offer[hidden],.partner-home .process-panel[hidden],.partner-home .proof-panel[hidden] { display:none; }
.phase-site.legacy-page .p-section:first-child { background:#fcf7ee; }
.phase-site.legacy-page .p-eyebrow { color:#71518d!important; }
.scope-guide { background:#f2e9de; border-radius:20px; padding:28px; }
.scope-guide-list { list-style:none; padding:0; display:grid; gap:22px; }
.scope-guide-list h3 { margin:0 0 8px; }
.scope-guide-list p { margin:0 0 8px; }
@media(max-width:1100px) {
 .partner-hero-grid { gap:36px; } .partner-home .partner-hero h1 { font-size:3.65rem; }
 .partner-workbench { padding:24px; } .bench-core { grid-template-columns:125px 1fr; gap:18px; }
 .bench-portrait img { height:176px; } .bench-notes li { font-size:.8rem; }
 .partner-offer { padding:30px; gap:36px; } .case-ledger { gap:24px; }
 .engagement-layout,.founder-layout { gap:48px; }
 .partner-home .founder-copy h2 { font-size:2.2rem; }
}
@media(max-width:850px) {
 .phase-site .nav-service-menu summary { min-height:48px; font-size:.95rem; }
 .nav-service-links { position:static; min-width:0; padding:0 0 8px 14px; border:0; border-radius:0; background:none; box-shadow:none; }
 .phase-site .nav-links { align-items:stretch; }
 .partner-hero-grid { grid-template-columns:1fr; gap:34px; }
 .partner-home .partner-hero { padding:48px 0 56px; }
 .partner-home .partner-hero h1 { max-width:15ch; font-size:3.8rem; }
 .partner-home .partner-intro { max-width:52ch; }
 .partner-workbench { max-width:660px; width:100%; justify-self:center; }
 .bench-core { grid-template-columns:170px 1fr; } .bench-portrait img { height:216px; }
 .partner-home .section { padding:66px 0; }
 .partner-home .section-heading h2 { font-size:2.35rem; }
 .partner-choices button { font-size:1rem; padding:16px; }
 .partner-offer { gap:26px; padding:28px; }
 .partner-home .offer-copy h3 { font-size:1.9rem; }
 .offer-capabilities ul { grid-template-columns:1fr; gap:10px; }
 .process-word { font-size:3.7rem; } .process-panel { gap:32px; }
 .case-ledger { grid-template-columns:1fr; } .case-side { grid-template-columns:1fr 1fr; gap:28px; }
 .case-side article { padding:26px 0 0; border-top:1px solid #8c729e; } .case-side article:first-child { padding-top:26px; border-top:1px solid #8c729e; }
 .engagement-layout { gap:36px; }
 .partner-home .engagement-intro h2,.partner-home .founder-copy h2 { font-size:2.1rem; }
 .founder-layout { grid-template-columns:.8fr 1.2fr; gap:36px; } .founder-image img { height:390px; }
}
@media(max-width:650px) {
 .partner-home .partner-hero { padding:36px 0 44px; }
 .partner-home .partner-hero h1 { max-width:12ch; font-size:2.95rem; line-height:1.065; margin:20px 0; }
 .partner-home .partner-hero .eyebrow { font-size:.77rem; line-height:1.5; }
 .partner-home .partner-intro { font-size:1.02rem; }
 .partner-home .partner-hero .actions { gap:20px; }
 .partner-home .partner-hero .button { font-size:.9rem; padding:13px 19px; }
 .partner-home .partner-signature { font-size:.88rem; margin-top:20px; }
 .partner-home .hero-person p { font-size:.83rem; }
 .partner-workbench { padding:22px 20px; border-radius:22px 22px 6px 22px; box-shadow:7px 7px 0 #eadfcf; }
 .partner-home .bench-heading h2 { font-size:1.8rem; }
 .bench-core { grid-template-columns:105px 1fr; gap:18px; }
 .bench-portrait img { height:142px; }
 .partner-home .bench-notes p { font-size:1rem; }
 .bench-notes ul { display:none; } .bench-credential { font-size:.82rem; }
 .capability-flow { grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin:24px -8px 0; }
 .capability-flow button { flex-direction:column; font-size:.8125rem; gap:10px; min-height:84px; }
 .flow-point { width:40px; height:40px; } .flow-point svg { width:23px; height:23px; }
 .capability-flow li:not(:last-child):after { top:19px; left:calc(50% + 19px); width:calc(100% - 38px); height:2px; transform-origin:left; }
 .flow-long { display:none; } .flow-short { display:block; }
 .partner-home .flow-caption { font-size:.86rem; }
 .partner-home .section { padding:54px 0; }
 .partner-home .section-heading h2 { font-size:2.05rem; }
 .partner-home .section-heading>p { font-size:.96rem; }
 .partner-choices { grid-template-columns:1fr; gap:4px; }
 .partner-choices button { min-height:74px; flex-direction:row; justify-content:space-between; align-items:center; font-size:1.1rem; padding:16px 44px 16px 16px; gap:14px; }
 .partner-choices button span { font-size:.8rem; }
 .partner-offer { grid-template-columns:1fr; padding:24px; gap:22px; }
 .partner-home .offer-copy h3 { font-size:2rem; }
 .offer-capabilities { padding:0; } .offer-capabilities ul { grid-template-columns:1fr 1fr; gap:12px 16px; }
 .offer-capabilities li { font-size:.9rem; }
 .process-rail { grid-template-columns:1fr 1fr; border-radius:20px; gap:5px; }
 .process-rail button { min-height:62px; font-size:1.15rem; gap:10px; border-radius:15px; }
 .process-rail .apple-selection-indicator { border-radius:15px; }
 .process-panel { grid-template-columns:1fr; gap:24px; min-height:0; }
 .process-word { font-size:3.55rem; }
 .partner-home .process-panel h3 { font-size:1.7rem; }
 .proof-choices { display:flex; width:100%; }
 .proof-choices button { flex:1; padding:12px 10px; font-size:.83rem; }
 .case-feature-copy { padding:24px; } .partner-home .case-feature h3 { font-size:1.9rem; }
 .case-side { grid-template-columns:1fr; gap:0; } .case-side article:first-child { padding-top:24px; }
 .proof-websites { padding:20px 16px; }
 .partner-home .proof-websites .project-choice { min-height:80px; padding-left:12px; }
 .partner-home .proof-websites .project-choice strong { font-size:1.12rem; }
 .partner-home .proof-websites .project-visit-bar { gap:10px; }
 .partner-home .proof-websites .project-visit-bar strong { font-size:1.05rem; }
 .partner-home .proof-websites .project-visit-button { font-size:.82rem; padding:10px 14px; }
 .partner-home .proof-websites .preview-toolbar { flex-wrap:wrap; }
 .engagement-layout { grid-template-columns:1fr; gap:32px; }
 .partner-home .engagement-intro h2 { font-size:2.05rem; }
 .engagement-list article { padding:22px 0; }
 .founder-layout { grid-template-columns:1fr; gap:30px; }
 .founder-image { max-width:340px; } .founder-image img { height:340px; }
 .partner-home .founder-copy h2 { font-size:2.1rem; }
 .partner-home .partner-contact .contact-copy h2 { font-size:2.15rem; }
 .partner-home .credential { gap:12px; }
 .partner-home .credential strong { font-size:.88rem; }
 .partner-home .footer-links { gap:6px 20px; }
}
@media(max-width:360px) {
 .partner-home .partner-hero h1 { font-size:2.55rem; }
 .bench-core { grid-template-columns:95px 1fr; gap:14px; } .bench-portrait img { height:140px; }
 .partner-choices button { font-size:1rem; }
 .offer-capabilities ul { grid-template-columns:1fr; }
 .proof-choices button { font-size:.78rem; }
}
@media(prefers-reduced-motion:reduce) { [data-partner-flow] * { animation:none!important; } .phase-site [data-partner-control] { transform:none!important; } }
@media(prefers-reduced-transparency:reduce) { .phase-site .nav { background:#fcf7ee; } }
@media(prefers-contrast:more) { .partner-home .partner-intro,.partner-home p { color:#51445f; } .partner-workbench .flow-caption,.partner-workbench .bench-notes p { color:#fff7e9; } }
