/* SIMION SYSTEMS 2026 refinement. Shared shell and homepage components. */
:root{--ss-gutter:clamp(20px,4.45vw,80px);--ss-max:1360px;--ss-line:#ffffff24;--ss-muted:#b1b6c1;--ss-blue:#2f68ff;--ss-paper:#eeede8;--ss-lime:var(--obs-lime,#96ed42)}
html{scroll-padding-top:110px}
/* Content is available immediately; motion is reserved for interactive feedback. */
.js-site-v2 [data-site-v2-reveal],.js-obsidian [data-obs-reveal]{opacity:1!important;transform:none!important;transition:none!important}
body .site-header,body.obsidian-home .site-header{position:sticky!important;background:rgba(5,6,7,.96)!important;height:80px!important;backdrop-filter:blur(16px)}
body .nav{width:min(calc(100% - 2 * var(--ss-gutter)),var(--ss-max))!important;height:80px!important;gap:20px!important}
body .nav-menu{gap:22px!important}
body .nav-menu>a{font-size:12px!important;letter-spacing:.065em!important}
body .nav-menu .nav-assessment{background:var(--ss-lime)!important;border-color:var(--ss-lime)!important;color:#0a1105!important;padding:13px 17px!important;min-height:44px}
body .nav-language{min-height:44px!important;padding:10px 12px!important;font-size:12px!important}
body .brand span{font-size:12px!important;letter-spacing:.095em!important}
body .brand{gap:10px!important}
body .nav-menu a[aria-current]{color:#b2c6ff!important}
body .nav-menu .nav-assessment:hover{background:#c2f283!important;border-color:#c2f283!important;color:#0a1105!important}
body :where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--ss-lime)!important;outline-offset:5px}
body :where(button,summary,a){-webkit-tap-highlight-color:transparent}
body :where(h1,h2,h3){letter-spacing:-.048em}
body .footer{border-top:1px solid var(--ss-line)!important;padding-block:50px!important;font-size:14px!important}
body .footer a{min-height:32px;display:inline-flex;align-items:center}
body .footer-legal-name{font-size:12px!important;letter-spacing:.05em}
.ss-wrap{width:min(calc(100% - 2 * var(--ss-gutter)),var(--ss-max));margin-inline:auto}
.ss-section{padding-block:110px;border-top:1px solid var(--ss-line)}
.ss-eyebrow{font-size:12px!important;font-weight:700;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:#a4b9ff;margin:0 0 22px}
.ss-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 83% 22%,#14224a60,transparent 58%),#07090c;padding-top:62px}
.ss-hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:60px;align-items:center}
body .ss-hero h1{color:#f4f3ef!important;font-size:clamp(58px,6.1vw,94px);font-weight:700;line-height:.99;letter-spacing:-.065em;margin:0 0 30px;text-wrap:initial;max-width:690px;font-variation-settings:'wght' 680}
.ss-hero h1 span{color:#7298ff}
.ss-lead{color:var(--ss-muted);font-size:18px;line-height:1.75;max-width:600px;margin:0 0 26px}
.ss-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:28px}
.ss-button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:56px;padding:16px 24px;background:var(--ss-lime);border:1px solid var(--ss-lime);color:#0d1508!important;font-size:13px;font-weight:750;line-height:1.5;text-decoration:none;transition:background .18s,transform .18s}
.ss-button span{font-size:22px;font-weight:500;line-height:1}
.ss-button:hover{background:#c3f383;transform:translateY(-2px)}
.ss-text-link{display:inline-flex;gap:25px;align-items:center;text-decoration:none;font-size:14px;font-weight:600;min-height:44px;border-bottom:1px solid #ffffff4a;color:inherit}
.ss-text-link span{font-size:19px;transition:transform .18s}
.ss-text-link:hover span{transform:translate(2px,-2px)}
.ss-founder-signature{display:flex;align-items:center;gap:13px;text-decoration:none;margin-top:35px;padding-top:22px;border-top:1px solid var(--ss-line);width:fit-content}
.ss-founder-signature img{border-radius:50%;width:44px;height:44px;object-fit:cover;filter:saturate(.75)}
.ss-founder-signature strong,.ss-founder-signature small{display:block}
.ss-founder-signature strong{font-size:12px;font-weight:650;color:#e7e9ee}
.ss-founder-signature small{font-size:11px;color:var(--ss-muted);margin-top:3px}
.ss-hero-work{min-width:0;padding-top:3px}
.ss-work-label{display:flex;justify-content:space-between;color:#9aa2b3;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 13px}
.ss-hero-project{display:block;border:1px solid #ffffff30;background:#10151e;text-decoration:none;box-shadow:0 20px 60px #0004;transition:border-color .2s}
.ss-hero-project:hover{border-color:#769afa}
.ss-hero-project>img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;object-position:top}
.ss-hero-project-label{display:flex;justify-content:space-between;align-items:center;padding:18px 20px}
.ss-hero-project-label strong{display:block;font-size:12px;letter-spacing:.06em}
.ss-hero-project-label small{display:block;color:#9ea7b9;font-size:11px;margin-top:4px}
.ss-hero-project-label b{font-weight:400;font-size:25px;color:#b1ec60}
.ss-hero-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.ss-hero-thumbs>a{background:#10151e;border:1px solid #ffffff20;text-decoration:none;overflow:hidden}
.ss-hero-thumbs img{aspect-ratio:2.2;height:auto;object-fit:cover;object-position:center;width:100%;transition:transform .25s}
.ss-hero-thumbs>a:hover img{transform:scale(1.025)}
.ss-hero-thumbs span{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding:10px 13px}
.ss-hero-thumbs b{font-size:16px;font-weight:400;color:#9cafd5}
.ss-capabilities{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--ss-line);padding-block:25px;margin-top:55px;color:#929aa9;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.ss-needs{padding:80px 0;background:var(--ss-paper);color:#101216}
.ss-needs .ss-eyebrow{color:#445a8e}
body.obsidian-home .ss-needs :is(h2,h3){color:#101216!important}
body.obsidian-home .ss-needs .ss-need p{color:#4a4e56!important}
.ss-section-heading{margin-bottom:46px}
body .ss-section-heading h2,body .ss-method h2,body .ss-founder h2,body .ss-closing h2{font-size:clamp(34px,4.1vw,60px);font-weight:680;line-height:1.07;letter-spacing:-.055em;margin:0;text-wrap:balance;font-variation-settings:'wght' 680}
.ss-needs .ss-section-heading{display:grid;grid-template-columns:1fr 2.08fr;gap:36px;align-items:start}
.ss-needs .ss-section-heading h2{max-width:650px;font-size:42px}
.ss-need-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #10121635;border-bottom:1px solid #10121635}
.ss-need{padding:28px 28px 24px 0;text-decoration:none;display:flex;flex-direction:column;min-width:0;transition:background .2s}
.ss-need+.ss-need{border-left:1px solid #10121635;padding-left:28px}
.ss-index{font-size:13px;color:#3c59a0;font-variant-numeric:tabular-nums;display:block;margin-bottom:30px}
.ss-need h3{font-size:24px;line-height:1.2;letter-spacing:-.045em;margin-bottom:15px;font-variation-settings:'wght' 650}
.ss-need p{font-size:15px;line-height:1.75;color:#4a4e56;margin-bottom:26px;max-width:34ch}
.ss-need-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;font-size:12px;font-weight:700}
.ss-need-link b{font-size:23px;font-weight:400;transition:transform .2s}
.ss-need:hover .ss-need-link b{transform:translate(3px,-3px)}
.ss-need:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.ss-heading-split{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:end}
.ss-heading-split>div>p:not(.ss-eyebrow){font-size:16px;color:var(--ss-muted);line-height:1.75;max-width:44ch}
.ss-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ss-project{min-width:0;background:#0d1015;border:1px solid var(--ss-line)}
.ss-project-featured{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr}
.ss-project-image{display:block;overflow:hidden;background:#161d2b}
.ss-project-image img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;object-position:top;transition:transform .35s}
.ss-project-image:hover img{transform:scale(1.018)}
.ss-project-featured .ss-project-image img{height:100%;min-height:370px}
.ss-project-copy{padding:30px;display:flex;flex-direction:column}
.ss-project-copy .ss-eyebrow{font-size:10px!important;margin-bottom:12px}
.ss-project-copy h3{font-size:28px;line-height:1.2;margin:0 0 20px;letter-spacing:-.04em}
.ss-project-copy h3 a{display:flex;gap:20px;justify-content:space-between;text-decoration:none}
.ss-project-copy h3 span{font-size:22px;color:#8babff;font-weight:400}
.ss-project-copy>p:not(.ss-eyebrow){font-size:15px;color:var(--ss-muted);line-height:1.8;margin-bottom:24px}
.ss-delivery{margin-top:auto;border-top:1px solid var(--ss-line);padding-top:18px}
.ss-delivery span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#8f98a9;margin-bottom:5px}
.ss-delivery strong{font-size:12px;line-height:1.6;font-weight:500;color:#d1d7e4}
.ss-method{background:#0c1016}
.ss-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}
.ss-method h2{margin-bottom:25px!important}
.ss-method .ss-lead{font-size:16px;max-width:42ch}
.ss-method-list{list-style:none;padding:0;margin:0}
.ss-method-list li{display:grid;grid-template-columns:32px 1fr;gap:18px;padding:24px 0;border-top:1px solid var(--ss-line)}
.ss-method-list li:first-child{padding-top:0;border-top:0}
.ss-method-list li:last-child{padding-bottom:0}
.ss-method-list>li>span{font-size:11px;color:#8eaaff;padding-top:5px}
.ss-method-list h3{font-size:21px;font-weight:650;line-height:1.25;margin:0 0 10px;letter-spacing:-.025em}
.ss-method-list p{color:var(--ss-muted);font-size:14px;line-height:1.8;margin:0}
body.obsidian-home .obs-xray{padding:100px 0!important;background:#080a0d!important}
body .obs-xray .obs-home-shell{width:min(calc(100% - 2 * var(--ss-gutter)),var(--ss-max))}
body .obs-xray .obs-home-section__head{max-width:850px!important;margin-bottom:18px!important}
body .obs-xray .obs-home-section__head h2{font-size:clamp(32px,3.4vw,48px)!important;line-height:1.1!important;letter-spacing:-.045em!important}
body .obs-xray-disclaimer{font-size:14px!important;max-width:750px!important;color:#aeb5c2!important;margin-bottom:32px!important}
body .obs-xray-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)!important;gap:24px!important}
body .obs-xray-questions{min-height:350px!important;background:#0e1118!important;border:1px solid var(--ss-line)!important}
body .obs-xray-questions fieldset{padding:30px!important;min-height:0!important}
body .obs-xray-questions legend{padding-top:30px!important;margin-bottom:24px!important}
body .obs-xray-questions legend strong{font-size:30px!important;letter-spacing:-.04em!important;line-height:1.15!important}
body .obs-xray-questions legend small{font-size:16px!important;line-height:1.5!important;margin-top:10px!important}
body .obs-xray-options label{padding:15px 17px!important;font-size:14px!important;line-height:1.6!important;min-height:57px!important}
body .obs-xray-result{padding:30px!important;background:#111925!important;border-color:#4a66a5!important;min-height:0!important}
body .obs-xray-result__score strong{font-size:74px!important;line-height:1!important}
body .obs-xray-result h3{font-size:24px!important;line-height:1.2!important;letter-spacing:-.03em!important}
body .obs-xray-result__message p{font-size:14px!important;line-height:1.7!important}
body .obs-xray-result__cta{font-size:11px!important;min-height:50px!important;padding:13px 17px!important}
body .obs-xray-controls button{min-height:46px!important;font-size:11px!important;padding:12px 20px!important}
.ss-founder-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px;align-items:center}
.ss-founder figure{margin:0}
.ss-founder figure img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:saturate(.8)}
.ss-founder figcaption{border-top:1px solid var(--ss-line);padding-top:15px;margin-top:15px;font-size:10px;color:#a6adbb;letter-spacing:.1em;text-transform:uppercase}
.ss-founder h2{margin-bottom:26px!important}
.ss-founder .ss-lead{font-size:17px;margin-bottom:24px}
.ss-closing{padding:80px 0;background:#101c38;border-top:1px solid #466394}
.ss-closing-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:center}
.ss-closing-grid p{font-size:16px;color:#bcc7dc;line-height:1.75;margin:0 0 25px}
@media(min-width:1600px){.ss-hero{padding-top:80px}.ss-capabilities{margin-top:75px}}
@media(max-width:1200px){body .nav-menu{gap:14px!important}.ss-hero-grid{gap:36px}.ss-hero h1{font-size:68px!important}.ss-heading-split,.ss-method-grid,.ss-founder-grid{gap:50px}}
@media(max-width:1120px){body .nav-menu{gap:0!important}body .nav-menu.is-open{top:80px!important;padding:18px var(--ss-gutter) 28px!important;max-height:calc(100dvh - 80px);overflow-y:auto}body .nav-menu>a{font-size:16px!important;padding:15px 0!important}body .nav-menu .nav-assessment{padding:15px 20px!important;margin-top:12px!important}.ss-hero h1{font-size:60px!important}.ss-lead{font-size:16px}.ss-actions{gap:16px}.ss-button{padding:14px 18px;gap:20px}.ss-founder-signature small{max-width:28ch}.ss-needs .ss-section-heading h2{font-size:36px}.ss-need h3{font-size:22px}.ss-project-copy{padding:24px}}
@media(max-width:800px){body .site-header,body.obsidian-home .site-header,body .nav{height:72px!important}body .nav-menu.is-open{top:72px!important;max-height:calc(100dvh - 72px)}body .nav{gap:10px!important}body .brand span{font-size:10px!important}body .brand img{width:27px!important;height:27px!important;flex-basis:27px!important}body .nav-language{font-size:11px!important}body .nav-toggle{min-height:44px!important;padding:10px 12px!important}.ss-hero{padding-top:42px}.ss-hero-grid{grid-template-columns:1fr;gap:36px}.ss-hero h1{font-size:clamp(53px,10.8vw,82px)!important;max-width:720px;line-height:1.01!important}.ss-hero-copy .ss-eyebrow{font-size:10px!important;letter-spacing:.1em;max-width:34ch;margin-bottom:22px}.ss-hero .ss-lead{max-width:48ch}.ss-founder-signature{margin-top:25px;padding-top:18px}.ss-founder-signature small{max-width:none}.ss-hero-work{max-width:620px;width:100%}.ss-hero-project>img{aspect-ratio:1.75}.ss-hero-thumbs img{aspect-ratio:2.5}.ss-capabilities{margin-top:35px;flex-wrap:wrap;justify-content:flex-start;gap:12px 24px;font-size:9px;padding-block:20px}.ss-capabilities span:nth-last-child(-n+2){display:none}.ss-needs,.ss-section{padding-block:65px}.ss-needs .ss-section-heading{display:block}.ss-needs .ss-section-heading h2{font-size:36px;max-width:550px}.ss-need-grid{grid-template-columns:1fr}.ss-need,.ss-need+.ss-need{padding:24px 0;border-left:0}.ss-need+.ss-need{border-top:1px solid #10121635}.ss-index{margin-bottom:14px;font-size:11px}.ss-need h3{font-size:26px;margin-bottom:12px}.ss-need p{max-width:52ch;margin-bottom:18px}.ss-heading-split,.ss-method-grid,.ss-founder-grid,.ss-closing-grid{grid-template-columns:1fr;gap:28px}.ss-section-heading{margin-bottom:30px}.ss-heading-split h2 br{display:none}.ss-project-grid{gap:22px}.ss-project-featured{display:block}.ss-project-featured .ss-project-image img{height:auto;min-height:0}.ss-project-copy h3{font-size:23px}.ss-project-copy>p:not(.ss-eyebrow){font-size:14px}.ss-method-list{margin-top:12px}.ss-method h2 br{display:none}.ss-method .ss-lead{max-width:60ch}body.obsidian-home .obs-xray{padding-block:65px!important}body .obs-xray-grid{grid-template-columns:1fr!important}body .obs-xray-result{margin-top:0!important}.ss-founder-grid{gap:35px}.ss-founder figure{max-width:430px}.ss-founder h2 br{display:none}.ss-closing{padding:65px 0}.ss-closing h2 br{display:none}}
@media(max-width:520px){.ss-hero{padding-top:34px}.ss-hero h1{font-size:53px!important;letter-spacing:-.06em!important;margin-bottom:22px}.ss-hero .ss-lead{font-size:15px;line-height:1.75}.ss-actions{gap:16px;align-items:center}.ss-actions .ss-button{font-size:12px;min-height:53px;gap:18px}.ss-actions .ss-text-link{font-size:12px;gap:9px}.ss-founder-signature{margin-top:22px}.ss-founder-signature small{font-size:10px}.ss-hero-work{margin-top:2px}.ss-work-label{font-size:9px}.ss-hero-project-label{padding:14px}.ss-hero-project-label strong{font-size:10px}.ss-hero-project-label small{font-size:10px}.ss-hero-thumbs{gap:10px;margin-top:10px}.ss-hero-thumbs span{font-size:10px;padding:8px 10px}.ss-capabilities{gap:10px 15px}.ss-project-grid{grid-template-columns:1fr}.ss-project-featured{grid-column:auto}.ss-project-copy{padding:23px}.ss-section-heading h2,.ss-method h2,.ss-founder h2,.ss-closing h2{font-size:36px!important}.ss-needs .ss-section-heading h2{font-size:34px}.ss-heading-split>div>p:not(.ss-eyebrow){font-size:15px}.ss-method-list li{grid-template-columns:24px 1fr;gap:12px}.ss-method-list h3{font-size:20px}body .obs-xray-questions fieldset{padding:22px!important}body .obs-xray-questions legend{padding-top:22px!important}body .obs-xray-options label{padding:14px!important;font-size:13px!important}body .obs-xray-result{padding:24px!important}.ss-founder .ss-lead{font-size:15px}.ss-closing-grid p{font-size:15px}body .footer{padding-block:35px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.ss-button:hover,.ss-text-link:hover span,.ss-project-image:hover img,.ss-hero-thumbs>a:hover img{transform:none}}

/* Secondary project actions retain the existing dark palette. */
body a.ss-case-button,
body a.case-project-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 48px;
  padding: 12px 16px;
  border: 1px solid #8298ba;
  border-radius: 4px;
  background: #172334;
  color: #edf3ff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
}
body a.ss-case-button { margin-top: 24px; }
body a.case-project-link { margin-top: auto; }
body a.ss-case-button:hover,
body a.case-project-link:hover { background: #263c58; border-color: #bdd2ff; color: #fff; }
body :is(.ss-project-image, .ss-project-copy a, .b2bv2-project-grid a, .project-showcase a, .case-live-media, .case-detail-capture a):focus-visible {
  outline: 3px solid #7197ff;
  outline-offset: 4px;
}
body .ss-project-copy h3 a:hover,
body .case-project-copy h3 a:hover { text-decoration: underline; text-underline-offset: 5px; }
body .b2bv2-project-grid h3 a { color: inherit; font: inherit; text-decoration: none; margin: 0; }
body .b2bv2-project-grid h3 a:hover { text-decoration: underline; text-underline-offset: 5px; }
body .b2bv2-project-grid .b2bv2-project-image { display: block; min-width: 0; margin: 0; }
body .b2bv2-project-grid .b2bv2-project-image figure { height: 100%; }
body .case-live-media { position: relative; }
body .case-live-label {
  display: block;
  padding: 10px 14px;
  background: #172334;
  color: #edf3ff;
  font-size: 13px;
  line-height: 1.5;
}

/* Editorial homepage direction, selected September 2026. */
body.obsidian-home .site-header {
  background: rgba(250, 249, 246, .96) !important;
  border-bottom: 1px solid #10152214 !important;
}
body.obsidian-home .brand,
body.obsidian-home .nav-menu > a:not(.nav-assessment) {
  color: #090c17 !important;
}
body.obsidian-home .brand span,
body.obsidian-home .brand strong { color: #090c17 !important; }
body.obsidian-home .nav-menu > a:not(.nav-assessment) {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
body.obsidian-home .nav-menu > a:not(.nav-assessment):hover,
body.obsidian-home .nav-menu > a:not(.nav-assessment)[aria-current] {
  color: #2459f2 !important;
}
body.obsidian-home .nav-menu > .nav-assessment {
  color: #fff !important;
  background: #2459f2 !important;
  border-color: #2459f2 !important;
  border-radius: 6px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: 13px !important;
}
body.obsidian-home .nav-menu > .nav-assessment:hover,
body.obsidian-home .nav-menu > .nav-assessment:focus-visible {
  background: #1247df !important;
  border-color: #1247df !important;
}
body.obsidian-home .nav-language {
  color: #2459f2 !important;
  border-color: transparent !important;
  background: transparent !important;
}
body.obsidian-home .nav-toggle {
  color: #0a0d18 !important;
  border-color: #151a2b52 !important;
}
body.obsidian-home .ss-hero,
body.obsidian-home .ss-needs {
  background: #faf9f6 !important;
  color: #080b17 !important;
}
body.obsidian-home .ss-hero {
  padding: 28px 0 60px !important;
  overflow: visible;
}
body.obsidian-home .ss-hero-grid {
  grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr);
  gap: clamp(42px, 6.2vw, 96px);
  align-items: center;
}
body.obsidian-home .ss-hero-copy {
  padding: 35px 0 8px;
}
body.obsidian-home .ss-hero .ss-eyebrow {
  color: #2459f2 !important;
  letter-spacing: .19em;
  margin-bottom: 28px;
}
body.obsidian-home .ss-hero h1 {
  color: #080b17 !important;
  font-size: clamp(58px, 6.1vw, 96px) !important;
  font-weight: 760 !important;
  line-height: 1.04 !important;
  max-width: 760px !important;
  margin-bottom: 24px !important;
}
body.obsidian-home .ss-hero h1 span {
  color: #2459f2 !important;
}
body.obsidian-home .ss-hero .ss-lead {
  color: #5b5e6d !important;
  font-size: clamp(21px, 2vw, 28px) !important;
  line-height: 1.42 !important;
  max-width: 630px;
}
body.obsidian-home .ss-hero .ss-actions {
  margin-top: 36px;
  gap: 32px;
}
body.obsidian-home .ss-hero .ss-button {
  color: #fff !important;
  background: #2459f2 !important;
  border-color: #2459f2 !important;
  border-radius: 6px;
  min-height: 64px;
  padding: 16px 29px;
  font-size: 15px;
}
body.obsidian-home .ss-hero .ss-button:hover { background: #1247df !important; }
body.obsidian-home .ss-hero .ss-text-link {
  color: #080b17 !important;
  border-color: #7b8090;
  font-size: 15px;
}
body.obsidian-home .ss-hero-portrait { margin: 0; min-width: 0; }
body.obsidian-home .ss-hero-portrait a { display: block; overflow: hidden; border-radius: 16px; }
body.obsidian-home .ss-hero-portrait img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.145;
  object-fit: cover;
  object-position: center 39%;
  display: block;
}
body.obsidian-home .ss-hero-portrait figcaption {
  color: #626777;
  font-size: 14px;
  line-height: 1.55;
  padding-top: 13px;
}
body.obsidian-home .ss-hero-portrait figcaption strong { color: #080b17; }
body.obsidian-home .ss-hero-portrait figcaption span { color: #717584; }
body.obsidian-home .ss-needs { padding: 42px 0 80px !important; }
body.obsidian-home .ss-needs .ss-section-heading {
  display: block;
  margin-bottom: 23px;
}
body.obsidian-home .ss-needs .ss-section-heading h2 {
  max-width: none;
  font-size: clamp(38px, 4.2vw, 58px) !important;
  color: #080b17 !important;
}
body.obsidian-home .ss-need-grid { border: 0; }
body.obsidian-home .ss-need {
  padding: 12px 28px 18px 0;
  color: #080b17;
}
body.obsidian-home .ss-need + .ss-need {
  padding-left: 30px;
  border-color: #252b3a22;
}
body.obsidian-home .ss-need-icon {
  display: block;
  width: 46px;
  height: 46px;
  margin-bottom: 12px;
}
body.obsidian-home .ss-need-icon svg {
  width: 100%;
  height: 100%;
  stroke: #2459f2;
  fill: none;
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.obsidian-home .ss-need h3 {
  color: #080b17 !important;
  font-size: clamp(20px, 2vw, 26px);
  margin: 0 0 4px;
}
body.obsidian-home .ss-need .ss-need-brief {
  color: #727582 !important;
  margin: 0 0 18px;
  font-size: 15px;
  max-width: none;
}
body.obsidian-home .ss-need p:not(.ss-need-brief) {
  color: #626776 !important;
  font-size: 15px;
  max-width: 42ch;
  line-height: 1.6;
  margin-bottom: 20px;
}
body.obsidian-home .ss-need-link { color: #2459f2; }
body.obsidian-home .ss-insights-note {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  border-top: 1px solid #ffffff2b;
  margin-top: 44px;
  padding-top: 24px;
  color: #c6d2eb;
}
body.obsidian-home .ss-insights-note > span {
  color: #a4b9ff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
body.obsidian-home .ss-insights-note a {
  color: #f0f3fa;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.45;
}
body.obsidian-home .ss-insights-note a:hover { text-decoration: underline; text-underline-offset: 4px; }
body.obsidian-home .ss-insights-note .ss-insights-all { color: #a4b9ff; white-space: nowrap; }
body.obsidian-home .ss-founder-grid {
  grid-template-columns: 1fr 1fr;
  gap: 85px;
}

@media (max-width: 1050px) {
  body.obsidian-home .ss-hero-grid { gap: 35px; }
  body.obsidian-home .ss-hero h1 { font-size: clamp(48px, 6.5vw, 70px) !important; }
  body.obsidian-home .ss-hero .ss-lead { font-size: 20px !important; }
}
@media (max-width: 800px) {
  body.obsidian-home .nav-menu.is-open { background: #faf9f6 !important; }
  body.obsidian-home .ss-hero { padding: 34px 0 28px !important; }
  body.obsidian-home .ss-hero-grid { grid-template-columns: 1fr; gap: 40px; }
  body.obsidian-home .ss-hero-copy { padding: 0; }
  body.obsidian-home .ss-hero h1 { font-size: clamp(48px, 9.2vw, 78px) !important; }
  body.obsidian-home .ss-hero-portrait { max-width: 640px; }
  body.obsidian-home .ss-needs { padding: 30px 0 65px !important; }
  body.obsidian-home .ss-need-grid { grid-template-columns: 1fr; }
  body.obsidian-home .ss-need,
  body.obsidian-home .ss-need + .ss-need { padding: 24px 0; border-left: 0; }
  body.obsidian-home .ss-need + .ss-need { border-top: 1px solid #252b3a22; }
  body.obsidian-home .ss-founder-grid { grid-template-columns: 1fr; gap: 14px; }
  body.obsidian-home .ss-insights-note { grid-template-columns: 1fr; gap: 10px; }
}
@media (max-width: 520px) {
  body.obsidian-home .ss-hero h1 { font-size: clamp(47px, 12vw, 60px) !important; }
  body.obsidian-home .ss-hero .ss-eyebrow { font-size: 10px !important; line-height: 1.7; }
  body.obsidian-home .ss-hero .ss-lead { font-size: 18px !important; }
  body.obsidian-home .ss-hero .ss-actions { gap: 14px; }
  body.obsidian-home .ss-hero .ss-button { width: 100%; font-size: 14px; }
  body.obsidian-home .ss-hero .ss-text-link { font-size: 14px; }
  body.obsidian-home .ss-hero-portrait img { aspect-ratio: 1.1; }
  body.obsidian-home .ss-needs .ss-section-heading h2 { font-size: 36px !important; }
}

/* Clear actions and calmer homepage surfaces. */
body.obsidian-home .ss-hero .ss-actions { gap: 16px; }
body.obsidian-home .ss-button { border-radius: 10px; }
body.obsidian-home .ss-hero .ss-button { border-radius: 10px; padding-inline: 24px; gap: 24px; }
body.obsidian-home .ss-hero .ss-button:not(.ss-button-secondary) { box-shadow: 0 6px 16px #2459f220; }
body.obsidian-home .ss-hero .ss-button-secondary {
  color: #142245 !important;
  background: #fff !important;
  border: 1.5px solid #a2aec6 !important;
  box-shadow: 0 2px 5px #14224508;
}
body.obsidian-home .ss-hero .ss-button-secondary:hover {
  background: #edf2ff !important;
  border-color: #2459f2 !important;
  color: #1949d4 !important;
}
body.obsidian-home :is(.ss-hero,.ss-needs) :where(a,button):focus-visible {
  outline-color: #2459f2 !important;
}
body.obsidian-home .ss-need-grid { gap: 18px; }
body.obsidian-home .ss-need,
body.obsidian-home .ss-need + .ss-need {
  padding: 24px;
  background: #fff;
  border: 1px solid #dfe3ec;
  border-radius: 14px;
  transition: border-color .18s, box-shadow .18s;
}
body.obsidian-home .ss-need:hover {
  border-color: #8da6ed;
  box-shadow: 0 8px 24px #15294d0c;
}
body.obsidian-home .ss-need:hover h3 { text-decoration: none; }
body.obsidian-home .ss-need-link { min-height: 44px; border-top: 1px solid #e6eaf3; padding-top: 12px; font-size: 14px; }
body.obsidian-home .ss-need-link b { border-radius: 50%; background: #edf2ff; width: 32px; height: 32px; display: grid; place-items: center; font-size: 20px; }
body.obsidian-home .ss-need .ss-need-brief { color: #5d6474 !important; }
body.obsidian-home .ss-project { border-radius: 16px; overflow: hidden; }
body.obsidian-home .ss-project-copy { padding: 32px; }
body.obsidian-home .ss-case-button { border-radius: 8px; }
body.obsidian-home .ss-method-list > li > span { font-size: 14px; font-weight: 700; }
body.obsidian-home .ss-digital-note {
  margin-top: 54px;
  padding: 26px 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  background: #131d2d;
  border: 1px solid #405475;
  border-radius: 12px;
}
body.obsidian-home .ss-digital-note strong { font-size: 19px; color: #f3f6ff; }
body.obsidian-home .ss-digital-note p { color: #b7c3d8; font-size: 14px; line-height: 1.65; margin: 8px 0 0; max-width: 62ch; }
body.obsidian-home .ss-digital-note .ss-case-button { flex-shrink: 0; }
body[data-page-family="b2b-v2"] .obs-xray { padding-block: 80px; }
body[data-page-family="b2b-v2"] .obs-xray .obs-home-section__head { display: block; }
body[data-page-family="b2b-v2"] .obs-xray .obs-home-kicker { color: #a4b9ff; font-size: 12px; font-weight: 700; letter-spacing: .12em; margin-bottom: 18px; text-transform: uppercase; }
@media(max-width:800px) {
  body.obsidian-home .ss-need-grid { gap: 14px; }
  body.obsidian-home .ss-project-copy { padding: 24px; }
  body.obsidian-home .ss-digital-note { flex-direction: column; align-items: stretch; padding: 24px; }
}
@media(max-width:520px) {
  body.obsidian-home .ss-hero .ss-button { min-height: 56px; padding-block: 14px; }
  body.obsidian-home .ss-need,body.obsidian-home .ss-need + .ss-need { padding: 22px; }
}

/* Clear language switch, interactive portrait and grouped footer. */
body .site-header .nav-language,
body.obsidian-home .site-header .nav-language {
  gap: 5px !important;
  padding: 4px 7px !important;
  border: 1px solid #48556f !important;
  border-radius: 9px !important;
  background: #151d2d !important;
  color: #c5cfe1 !important;
}
body.obsidian-home .site-header .nav-language { border-color: #d2d8e4 !important; background: #fff !important; color: #5f6a80 !important; }
body .site-header .nav-language .language-option { display: inline-flex; align-items: center; justify-content: center; min-width: 30px; min-height: 30px; font-size: 12px; font-weight: 700; border-radius: 5px; }
body .site-header .nav-language .language-option.is-current { background: #2459f2; color: #fff; }
body .site-header .nav-language .language-divider { font-size: 12px; opacity: .6; }
body .site-header .nav-language:hover .language-option:not(.is-current) { color: #fff; background: #304569; }
body.obsidian-home .site-header .nav-language:hover .language-option:not(.is-current) { color: #2459f2; background: #edf2ff; }
body.obsidian-home .ss-hero-portrait { perspective: 1100px; }
body.obsidian-home .ss-hero-portrait .ss-portrait-link {
  position: relative;
  transform: rotateX(var(--portrait-rx,0deg)) rotateY(var(--portrait-ry,0deg));
  transition: transform 320ms ease, box-shadow 250ms ease;
  box-shadow: 0 8px 28px #1520390c;
}
body.obsidian-home .ss-hero-portrait .ss-portrait-link.is-tilting { transition: transform 90ms ease-out, box-shadow 250ms ease; }
body.obsidian-home .ss-hero-portrait .ss-portrait-link:hover { box-shadow: 0 18px 42px #15203925; }
body.obsidian-home .ss-portrait-hint {
  position: absolute; bottom: 18px; right: 18px;
  display: inline-flex; align-items: center; gap: 18px;
  min-height: 44px; padding: 10px 17px;
  border: 1px solid #ffffff70; border-radius: 9px;
  background: #ffffffed; color: #102348;
  font-size: 14px; font-weight: 700;
}
body.obsidian-home .ss-portrait-hint > span { font-size: 18px; }
body .footer {
  display: block !important;
  padding: 54px var(--ss-gutter) 26px !important;
  background: #0b101b !important;
}
body .footer .footer-main,
body .footer .footer-bottom { width: min(100%,var(--ss-max)); margin-inline: auto; }
body .footer .footer-main { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,.7fr) minmax(0,1fr); gap: 64px; padding-bottom: 36px; }
body .footer .footer-brand { color: #f4f7ff !important; display: inline-flex; gap: 12px; font-size: 13px !important; letter-spacing: .08em; min-height: 44px; }
body .footer .footer-brand img { width: 36px; height: 36px; }
body .footer .footer-intro > p { color: #b2bed2 !important; font-size: 15px !important; line-height: 1.7; margin: 18px 0; }
body .footer .footer-contact { display: inline-flex; gap: 22px; padding: 10px 15px; min-height: 44px; border: 1px solid #516582; border-radius: 8px; background: #18263d; font-size: 14px !important; color: #eef3ff !important; }
body .footer .footer-group { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 2px; }
body .footer .footer-group h2 { margin: 0 0 14px; color: #829bc7 !important; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
body .footer .footer-group a { min-height: 44px; justify-content: space-between; gap: 14px; padding: 9px 12px; margin-inline: -12px; border-radius: 7px; color: #e0e7f5 !important; font-size: 14px !important; font-weight: 500; }
body .footer .footer-group a span { color: #8ba9e3; }
body .footer .footer-group a:hover,
body .footer .footer-group a:focus-visible { background: #18243a; color: #fff !important; }
body .footer .footer-bottom { border-top: 1px solid #ffffff1c; padding-top: 22px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; }
body .footer .footer-legal-name { margin: 0; white-space: nowrap; color: #8b9ab2 !important; font-size: 11px !important; letter-spacing: .03em; }
body .footer .footer-legal { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 16px; align-items: center; }
body .footer .footer-legal a { min-height: 36px; color: #aab7cc !important; font-size: 12px !important; font-weight: 500; white-space: nowrap; }
body .footer .footer-legal button { min-height: 38px; padding: 8px 12px; border: 1px solid #52627d; border-radius: 7px; color: #cdd8ed !important; font-size: 12px !important; white-space: nowrap; cursor: pointer; }
body .footer .footer-sal-slot { width: 220px; }
body .footer .footer-sal-slot .footer-sal { width: 220px; }
body .footer :where(a,button):focus-visible { outline-color: #8baaff !important; }
@media(max-width:1120px) {
  body .footer .footer-main { gap: 36px; }
  body .footer .footer-bottom { grid-template-columns: 1fr auto; gap: 14px 24px; }
  body .footer .footer-legal { grid-column: 1; justify-content: flex-start; }
  body .footer .footer-sal-slot { grid-column: 2; grid-row: 1 / 3; }
}
@media(max-width:700px) {
  body .footer .footer-main { grid-template-columns: 1fr 1fr; gap: 32px 24px; }
  body .footer .footer-intro { grid-column: 1 / -1; }
  body .footer .footer-group a { font-size: 13px !important; padding-inline: 6px; margin-inline: -6px; }
  body .footer .footer-bottom { grid-template-columns: 1fr; gap: 14px; }
  body .footer .footer-sal-slot { grid-column: 1; grid-row: auto; margin-top: 8px; }
}
@media(max-width:420px) {
  body .site-header .nav-language { gap: 2px !important; padding: 3px 4px !important; }
  body .site-header .nav-language .language-option { min-width: 25px; font-size: 11px; }
  body.obsidian-home .ss-portrait-hint { bottom: 12px; right: 12px; font-size: 13px; }
}
@media(prefers-reduced-motion:reduce) {
  body.obsidian-home .ss-hero-portrait .ss-portrait-link { transform: none !important; transition: none !important; }
}

body .footer .footer-contact-options { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
body .footer .footer-whatsapp { background: #121c2c; border-color: #3d526e; font-weight: 500; font-size: 13px !important; gap: 18px; }
body .footer .footer-contact:hover { background: #233657; border-color: #8aa6d2; }
