/* Local direction: quiet scale, connected blue, expressive detail. */
.editorial { --paper:#f9fafb; --ink:#182d3d; --muted:#5f6d78; --accent:#376986; --pale:#e7eef2; --hairline:#dce3e8; --copy-blue:var(--accent); --copy-muted:var(--muted); --ease-out:cubic-bezier(.2,.75,.2,1); color:var(--ink); background:var(--paper); }
@supports(color:oklch(50% .1 240)) { .editorial { --paper:oklch(98.4% .003 240); --ink:oklch(28% .039 240); --muted:oklch(52% .024 240); --accent:oklch(50% .073 240); --pale:oklch(94% .015 240); --hairline:oklch(90% .013 240); } }
.editorial ::selection { background:#bed5e4; color:#152c3b; }
.editorial .site-shell { background:transparent; overflow:clip; }
.editorial .section-pad { width:min(1248px,calc(100% - 112px)); margin-inline:auto; }
.editorial h1,.editorial h2,.editorial h3 { font-weight:400; color:var(--ink); }
.editorial .eyebrow,.editorial .section-rail,.editorial .copy-eyebrow { font:500 12px/1.5 Inter,sans-serif; letter-spacing:.1em; text-transform:uppercase; }
.editorial .eyebrow { display:block; width:auto; min-width:0; height:auto; min-height:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; margin:0 0 30px; color:var(--muted); }
.editorial .site-header { top:24px; }
.editorial .brand-pill { width:264px; height:64px; min-height:64px; border:1px solid var(--hairline); border-radius:22px; background:color-mix(in srgb,var(--paper) 88%,transparent); backdrop-filter:blur(20px); box-shadow:0 2px 8px #17394b04,0 10px 35px #17394b04; gap:20px; padding:0 21px; color:var(--ink); transition:background .25s,transform .5s var(--ease-out),border-color .25s; }
.editorial .brand-pill:hover { background:#fff; border-color:#b9cbd6; }
.editorial .brand-initials { font-size:27px; letter-spacing:-.07em; }
.editorial .brand-name { font:500 14px/1 Inter,sans-serif; white-space:nowrap; }
.editorial .menu-lines { width:20px; margin-left:auto; }
.editorial .menu-lines span { background:var(--ink); width:20px; height:1px; }
.editorial .menu-lines span:nth-child(2) { width:13px; margin-left:auto; }
.editorial .mobile-menu-panel { top:24px; width:min(490px,calc(100% - 32px)); border:1px solid var(--hairline); border-radius:24px; background:var(--paper); box-shadow:0 24px 90px #182d3d20; }
body.editorial.menu-open .mobile-menu-panel { left:50%; width:min(490px,calc(100% - 32px)); height:auto; min-height:0; padding:0 0 24px; border-radius:24px; background:var(--paper); transform:translate(-50%,0) scale(1); }
.editorial .mobile-menu-top { height:72px; padding-inline:25px; color:var(--ink); background:transparent; border-radius:0; }
.editorial .mobile-menu-logo { font-size:27px; }
.editorial .mobile-menu-time { font:400 12px/1.3 Inter,sans-serif; color:var(--muted); }
.editorial .mobile-menu-nav { padding:12px 18px 20px; gap:0; }
.editorial .mobile-menu-nav a { display:flex; justify-content:space-between; align-items:center; padding:18px 12px; min-height:74px; border-bottom:1px solid var(--hairline); font-size:37px; color:var(--ink); border-radius:0; }
.editorial .mobile-menu-nav a small { font:400 12px/1.4 Inter,sans-serif; letter-spacing:0; color:var(--muted); }
.editorial .mobile-menu-nav a:hover { background:var(--pale); color:var(--accent); }
.editorial .menu-note { margin:0 30px; color:var(--muted); font-size:13px; }
.editorial .hero { padding:178px 0 58px; min-height:0; }
.editorial .hero-copy { width:100%; gap:25px; }
.editorial .hero .copy-eyebrow { margin:0; color:var(--muted); display:flex; align-items:center; gap:9px; }
.editorial .status-dot { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 4px var(--pale); }
.editorial .hero-title { width:100%; font-size:clamp(68px,8.15vw,120px); letter-spacing:-.052em; line-height:1.015; margin:8px 0 2px; }
.editorial .hero-title .headline-line { display:block; }
.editorial .hero-title strong { font-weight:400; margin:0; color:var(--accent); background:none; -webkit-text-fill-color:currentColor; }
.editorial .hero-subtitle { max-width:650px; margin:0; font-size:20px; line-height:1.55; color:var(--muted); }
.editorial .hero-actions { gap:28px; margin-top:6px; }
.editorial .button { min-height:54px; height:54px; padding:0 25px; gap:30px; border-radius:999px; font:500 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; border:1px solid transparent; box-shadow:none; transition:background .25s,color .25s,transform .5s var(--ease-out),box-shadow .25s; }
.editorial .button-dark { background:var(--ink); color:var(--paper); }
.editorial .button-dark:hover { background:var(--accent); box-shadow:0 8px 24px #203f5820; }
.editorial .button-arrow { font:400 21px/1 Inter,sans-serif; transition:transform .45s var(--ease-out); }
.editorial .button:hover .button-arrow { transform:translate(3px,-3px); }
.editorial .quiet-link { display:inline-flex; align-items:center; gap:14px; font:400 14px/1.5 Inter,sans-serif; text-decoration:none; color:inherit; }
.editorial .quiet-link span { transition:transform .4s var(--ease-out); }
.editorial .quiet-link:hover { color:var(--accent); }
.editorial .quiet-link:hover span { transform:translate(2px,-2px); }
.editorial .section-rail { display:flex; justify-content:space-between; align-items:center; gap:20px; color:var(--muted); }
.editorial .work-preview { padding:22px 0 110px; }
.editorial .showcase { margin-top:0; }
.editorial .showcase-stage { position:relative; padding:78px 44px 32px; overflow:visible; }
.editorial .showcase-stack { --deck-step:-15px; border-radius:16px; }
.editorial .showcase-slide { box-shadow:0 1px 2px #132a3d09,0 18px 46px -24px #132a3d38; }
.editorial .preview-cursor { display:flex; gap:18px; align-items:center; position:absolute; top:50%; left:50%; z-index:12; padding:17px 20px; border-radius:999px; font:400 13px/1 Inter,sans-serif; background:#f9fafbed; color:var(--ink); border:1px solid #ffffffc0; backdrop-filter:blur(12px); opacity:0; transform:translate(-50%,-50%) scale(.9); pointer-events:none; transition:opacity .22s,transform .35s var(--ease-out); }
@media(hover:hover) { .editorial .showcase-stage:hover .preview-cursor { opacity:1; transform:translate(-50%,-50%) scale(1); } }
.editorial .showcase-stage:focus-within .preview-cursor { opacity:1; transform:translate(-50%,-50%) scale(1); }
.editorial .work-after { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:12px; font-size:14px; color:var(--muted); }
.editorial .work-after p { margin:0; }
.editorial .expertise-section { padding:95px 0 130px; border-top:1px solid var(--hairline); }
.editorial .editorial-heading { margin-bottom:55px; }
.editorial .editorial-heading h2,.editorial .partner-copy h2 { font-size:clamp(40px,4.8vw,68px); line-height:1.08; letter-spacing:-.035em; margin:0; }
.editorial .editorial-heading h2 span,.editorial .partner-copy h2 span { color:var(--muted); }
.editorial .expertise-item, .editorial .essential, .editorial .expertise-item[open], .editorial .essential[open] { background:transparent; border-radius:0; }
.editorial details summary::after, .editorial details[open] summary::after { content:none; }
.editorial .expertise-item { border-top:1px solid var(--hairline); }
.editorial .expertise-item:last-child { border-bottom:1px solid var(--hairline); }
.editorial summary { cursor:pointer; list-style:none; }
.editorial summary::-webkit-details-marker { display:none; }
.editorial summary::after { content:none; }
.editorial .expertise-item summary { display:grid; grid-template-columns:64px 1fr 1fr 42px; align-items:center; gap:20px; padding:34px 0; }
.editorial .row-index { font:400 12px/1 Inter,sans-serif; color:var(--muted); }
.editorial .expertise-item h3 { font-size:clamp(38px,4.5vw,64px); letter-spacing:-.035em; line-height:1; margin:0; transition:transform .5s var(--ease-out),color .3s; }
.editorial .row-description { color:var(--muted); font-size:17px; }
.editorial .expand-mark { position:relative; display:block; width:36px; height:36px; border:1px solid var(--hairline); border-radius:50%; transition:transform .5s var(--ease-out),background .3s; }
.editorial .expand-mark::before,.editorial .expand-mark::after { content:''; position:absolute; width:10px; height:1px; top:17px; left:12px; background:currentColor; }
.editorial .expand-mark::after { transform:rotate(90deg); transition:transform .3s; }
.editorial details[open] .expand-mark { transform:rotate(180deg); background:var(--pale); }
.editorial details[open] .expand-mark::after { transform:rotate(0); }
.editorial .expertise-item summary:hover h3 { color:var(--accent); transform:translateX(8px); }
.editorial .expertise-item summary:hover .expand-mark { background:var(--pale); }
.editorial .detail-body { padding:0 62px 32px 84px; display:grid; grid-template-columns:1fr 1fr; gap:50px; font-size:17px; line-height:1.6; color:var(--muted); }
.editorial .detail-body p { margin:0; padding:0; max-width:510px; color:inherit; font-size:inherit; line-height:inherit; }
.editorial .detail-body ul { margin:0; padding:0; list-style:none; display:grid; gap:7px; font-size:14px; }
.editorial .detail-body a { color:var(--accent); text-underline-offset:4px; }
.editorial .partner-section { display:grid; grid-template-columns:1fr 1fr; gap:65px 100px; padding:80px 0 120px; }
.editorial .partner-description { color:var(--muted); font-size:20px; line-height:1.6; max-width:440px; margin:28px 0; }
.editorial .partner-signoff { display:flex; align-items:center; gap:15px; margin-top:34px; }
.editorial .partner-signoff img { width:57.6px; height:69.6px; flex-shrink:0; object-fit:cover; object-position:50% 0; border-radius:9px; background:var(--pale); filter:grayscale(1); transition:filter .5s,transform .5s var(--ease-out); }
.editorial .partner-signoff:hover img { filter:grayscale(0); transform:rotate(-6deg) scale(1.15); }
.editorial .partner-signoff div { display:grid; gap:5px; font-size:16px; }
.editorial .partner-signoff small { font:400 12px/1.4 Inter,sans-serif; color:var(--muted); }
.editorial .connection-study { position:relative; min-height:440px; display:flex; flex-direction:column; justify-content:space-between; padding:24px; border:1px solid var(--hairline); border-radius:18px; background:linear-gradient(160deg,#f0f5f8,#e5eef5); overflow:hidden; }
.editorial .study-top,.editorial .study-bottom { display:flex; align-items:center; justify-content:space-between; gap:12px; font:400 12px/1.4 Inter,sans-serif; color:var(--accent); position:relative; z-index:1; pointer-events:none; }
.editorial .study-top span:last-child { font-size:14px; letter-spacing:.2em; }
.editorial .study-bottom { text-transform:uppercase; letter-spacing:.1em; }
.editorial #connection-canvas { position:absolute; inset:0; width:100%; height:100%; }
.editorial .process-line { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); gap:40px; padding-top:42px; border-top:1px solid var(--hairline); }
.editorial .process-line div { display:grid; grid-template-columns:30px 1fr; gap:10px; }
.editorial .process-line span { font:400 12px/1.5 Inter,sans-serif; color:var(--accent); padding-top:6px; }
.editorial .process-line h3 { font-size:22px; margin:0; }
.editorial .process-line p { grid-column:2; font-size:15px; margin:0; color:var(--muted); }
.editorial .essentials-section { display:grid; grid-template-columns:1fr 1.2fr; gap:80px; padding:75px 0 120px; border-top:1px solid var(--hairline); }
.editorial .essentials-section h2 { font-size:42px; }
.editorial .essentials-list { border-top:1px solid var(--hairline); }
.editorial .essential { border-bottom:1px solid var(--hairline); }
.editorial .essential summary { display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:82px; padding:18px 0; font-size:18px; }
.editorial .essential .expand-mark { flex:0 0 36px; }
.editorial .essential .detail-body { display:block; padding:0 40px 28px 0; font-size:16px; }
.editorial .conversation-section { color:#e8f1f7; background:#182e40; background:oklch(28% .046 242); margin:0 20px; border-radius:22px; position:relative; overflow:hidden; }
.editorial .conversation-inner { padding:40px 0 55px; }
.editorial .conversation-section .section-rail { color:#b9c9d4; }
.editorial .conversation-section h2 { color:#f3f6f8; font-size:clamp(66px,8.5vw,122px); line-height:1; letter-spacing:-.045em; margin:70px 0 56px; }
.editorial .conversation-section h2 span { color:#9cc0d9; }
.editorial .conversation-bottom { display:flex; justify-content:space-between; align-items:end; gap:30px; }
.editorial .conversation-bottom p { margin:0; font-size:22px; color:#b9c9d4; }
.editorial .button-light { background:#eef4f7; color:#182e40; }
.editorial .button-light:hover { background:#bbd6e7; }
.editorial .site-footer { width:min(1248px,calc(100% - 112px)); margin:0 auto; padding:48px 0; display:grid; grid-template-columns:1fr 1fr auto; align-items:start; text-align:left; gap:40px; border:0; }
.editorial .footer-name { font-size:22px; color:var(--ink); text-decoration:none; display:flex; gap:20px; }
.editorial .site-footer p { color:var(--muted); font-size:14px; line-height:1.6; }
.editorial .footer-right { display:grid; gap:14px; font:400 12px/1.4 Inter,sans-serif; color:var(--muted); }
.editorial .preview-dialog { position:fixed; inset:0; width:100%; height:100dvh; max-width:none; max-height:none; margin:0; border:0; padding:0; background:var(--paper); color:var(--ink); overflow:auto; }
.editorial .preview-dialog::backdrop { background:#142637a8; backdrop-filter:blur(12px); }
.editorial .preview-dialog-inner { min-height:100%; padding:22px 40px; display:flex; flex-direction:column; }
.editorial .preview-dialog-header,.editorial .preview-dialog-footer { display:flex; justify-content:space-between; align-items:center; gap:25px; font:400 14px/1.5 Inter,sans-serif; }
.editorial .preview-dialog-footer { color:var(--muted); padding-top:20px; }
.editorial .preview-close { display:flex; gap:24px; align-items:center; border:1px solid var(--hairline); border-radius:99px; padding:12px 20px; font:400 14px/1 Inter,sans-serif; background:transparent; color:var(--ink); cursor:pointer; }
.editorial .preview-close span { font-size:24px; }
.editorial .preview-media { display:grid; place-items:center; flex:1; margin-top:22px; min-height:0; }
.editorial .preview-media img,.editorial .preview-media video { display:block; width:100%; height:auto; max-height:calc(100dvh - 176px); object-fit:contain; border-radius:10px; }
.editorial .page-sweep { position:fixed; z-index:9999; inset:0; pointer-events:none; opacity:0; background:linear-gradient(100deg,transparent 20%,#cfdae91a 34%,#759eb170 43%,#16384e 50%,#8bb8cf80 55%,#dceefa30 63%,transparent 76%); transform:translateX(-110%); }
.editorial .work-gate-card { background:var(--paper); border:1px solid var(--hairline); box-shadow:0 24px 80px #152b3810; }
.editorial .work-gate { background:transparent; }
.editorial .work-gate-card h1 { color:var(--ink); }
.editorial .work-gate-form input { background:#fff; border:1px solid var(--hairline); border-radius:12px; }
.editorial .button-soft { background:var(--pale); color:var(--ink); }
@media(max-width:980px) {
 .editorial .section-pad,.editorial .site-footer { width:calc(100% - 64px); }
 .editorial .hero-title { font-size:clamp(62px,9vw,90px); }
 .editorial .hero { padding-top:160px; }
 .editorial .partner-section { gap:60px 45px; }
 .editorial .connection-study { min-height:400px; }
 .editorial .expertise-item summary { grid-template-columns:35px 1fr 1fr 36px; gap:15px; }
 .editorial .detail-body { padding-left:50px; }
 .editorial .essentials-section { gap:40px; grid-template-columns:1fr 1.3fr; }
 .editorial .process-line { gap:18px; }
 .editorial .process-line h3 { font-size:19px; }
}
@media(max-width:640px) {
 .editorial .section-pad,.editorial .site-footer { width:calc(100% - 40px); }
 .editorial .site-header { top:16px; }
 .editorial .brand-pill { width:235px; height:58px; min-height:58px; border-radius:18px; gap:16px; }
 .editorial .brand-name { font-size:13px; }
 .editorial .brand-initials { font-size:25px; }
 .editorial .mobile-menu-panel { top:16px; }
 .editorial .hero { padding:132px 0 36px; }
 .editorial .hero-copy { gap:22px; }
 .editorial .hero .copy-eyebrow { font-size:11px; letter-spacing:.08em; }
 .editorial .hero-title { font-size:clamp(40px,10.5vw,66px); line-height:1.055; letter-spacing:-.045em; margin:4px 0; }
 .editorial .hero-subtitle { font-size:17px; line-height:1.5; max-width:335px; }
 .editorial .hero-actions { gap:22px; width:auto; }
 .editorial .hero .button { font-size:13px; padding:0 21px; min-height:50px; height:50px; }
 .editorial .quiet-link { font-size:13px; gap:10px; }
 .editorial .section-rail { font-size:11px; letter-spacing:.06em; gap:10px; }
 .editorial .work-preview { padding:25px 0 70px; }
 .editorial .showcase-stage { padding:45px 4px 20px; }
 .editorial .showcase-stack { --deck-step:-10px; border-radius:10px; }
 .editorial .preview-cursor { font-size:12px; padding:12px 16px; }
 .editorial .work-after { flex-direction:column; gap:14px; font-size:13px; margin-top:8px; }
 .editorial .expertise-section { padding:65px 0 70px; }
 .editorial .editorial-heading { margin-bottom:35px; }
 .editorial .eyebrow { font-size:12px; margin-bottom:23px; }
 .editorial .editorial-heading h2,.editorial .partner-copy h2 { font-size:clamp(35px,9.5vw,50px); }
 .editorial .expertise-item summary { grid-template-columns:24px 1fr 36px; gap:12px; padding:26px 0; }
 .editorial .expertise-item h3 { font-size:42px; }
 .editorial .row-description { grid-column:2; grid-row:2; font-size:14px; }
 .editorial .expertise-item .expand-mark { grid-column:3; grid-row:1/3; }
 .editorial .detail-body { grid-template-columns:1fr; gap:20px; padding:0 30px 26px 36px; font-size:16px; }
 .editorial .partner-section { grid-template-columns:1fr; padding:25px 0 75px; gap:40px; }
 .editorial .partner-description { font-size:18px; max-width:360px; }
 .editorial .connection-study { min-height:330px; padding:20px; }
 .editorial .study-top,.editorial .study-bottom { font-size:12px; }
 .editorial .process-line { grid-template-columns:1fr; padding-top:28px; gap:24px; }
 .editorial .process-line div { gap:4px 10px; }
 .editorial .process-line h3 { font-size:22px; }
 .editorial .essentials-section { grid-template-columns:1fr; gap:0; padding:60px 0 70px; }
 .editorial .essential summary { min-height:76px; font-size:16px; }
 .editorial .conversation-section { margin:0 10px; border-radius:18px; }
 .editorial .conversation-inner { padding:28px 0 32px; }
 .editorial .conversation-section .section-rail { flex-direction:column; align-items:start; gap:8px; font-size:12px; }
 .editorial .conversation-section h2 { font-size:clamp(47px,12.5vw,78px); margin:55px 0 38px; }
 .editorial .conversation-bottom { align-items:start; flex-direction:column; gap:25px; }
 .editorial .conversation-bottom p { font-size:17px; }
 .editorial .site-footer { grid-template-columns:1fr auto; gap:25px; padding:35px 0; }
 .editorial .site-footer p { grid-column:1; grid-row:2; font-size:12px; }
 .editorial .footer-name { font-size:19px; }
 .editorial .footer-right { grid-column:2; grid-row:1/3; text-align:right; gap:20px; }
 .editorial .preview-dialog-inner { padding:16px; }
 .editorial .preview-dialog-header,.editorial .preview-dialog-footer { font-size:12px; }
 .editorial .preview-dialog-footer { align-items:start; flex-direction:column; gap:4px; }
 .editorial .preview-close { padding:10px 15px; }
 .editorial .preview-media img,.editorial .preview-media video { max-height:calc(100dvh - 220px); }
}
@media(prefers-reduced-motion:reduce) { .editorial *, .editorial *::before,.editorial *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
