:root {
  --sn-ink: #0b1114;
  --sn-ink-soft: #10191d;
  --sn-paper: #f3f2ee;
  --sn-white: #ffffff;
  --sn-cyan: #00c8d7;
  --sn-cyan-dark: #006d76;
  --sn-text: #151b1e;
  --sn-muted: #5a656a;
  --sn-dark-muted: #aeb9bd;
  --sn-line: #ccd1d2;
  --sn-dark-line: #314046;
  --sn-shell: 1220px;
  --sn-heading: "Arial Narrow", "Avenir Next Condensed", "Helvetica Neue", sans-serif;
  --sn-body: "Avenir Next", "Helvetica Neue", Arial, sans-serif;
}

html { scroll-behavior: smooth; background: var(--sn-ink); }
html.sn-menu-open { overflow: hidden; }

body.seonot-advisor,
body.seonot-advisor input,
body.seonot-advisor textarea,
body.seonot-advisor select,
body.seonot-advisor button {
  font-family: var(--sn-body);
}

body.seonot-advisor {
  margin: 0;
  color: var(--sn-text);
  background: var(--sn-paper);
  font-size: 17px;
  line-height: 1.58;
  -webkit-font-smoothing: antialiased;
}

body.seonot-advisor *,
body.seonot-advisor *::before,
body.seonot-advisor *::after { box-sizing: border-box; }

body.seonot-advisor a { color: inherit; }
body.seonot-advisor img { max-width: 100%; height: auto; }
body.seonot-advisor a:focus-visible,
body.seonot-advisor button:focus-visible,
body.seonot-advisor input:focus-visible,
body.seonot-advisor textarea:focus-visible,
body.seonot-advisor select:focus-visible {
  outline: 3px solid var(--sn-cyan);
  outline-offset: 4px;
}

.sn-section-cyan a:focus-visible { outline-color: var(--sn-ink) !important; }
.sn-shell { width: min(calc(100% - 64px), var(--sn-shell)); margin-inline: auto; }
.sn-section-dark { color: var(--sn-white); background: var(--sn-ink); }
.sn-section-light { background: var(--sn-white); }
.sn-section-paper { background: var(--sn-paper); }
.sn-section-cyan { color: var(--sn-ink); background: var(--sn-cyan); }

.sn-skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 99999;
  padding: 10px 14px;
  color: var(--sn-ink);
  background: var(--sn-white);
  transform: translateY(-150%);
}
.sn-skip-link:focus { transform: none; }

.sn-site-header {
  position: relative;
  z-index: 1000;
  color: var(--sn-white);
  background: var(--sn-ink);
  border-bottom: 1px solid rgb(255 255 255 / 15%);
}
.seonot-home .sn-site-header { position: absolute; inset: 0 0 auto; background: transparent; }
.sn-header-inner { display: flex; min-height: 92px; align-items: center; justify-content: space-between; gap: 28px; }
.sn-brand { display: inline-flex; flex-direction: column; color: inherit; text-decoration: none; }
.sn-brand-name { font-family: var(--sn-heading); font-size: 24px; font-weight: 900; line-height: 1; letter-spacing: -.02em; }
.sn-brand-line { margin-top: 7px; color: var(--sn-cyan); font-size: 10px; font-weight: 800; line-height: 1; letter-spacing: .1em; text-transform: uppercase; }
.sn-site-nav { display: flex; align-items: center; gap: 32px; }
.sn-site-nav a { color: #dce3e5; font-size: 14px; font-weight: 650; text-decoration: none; }
.sn-site-nav a:hover { color: var(--sn-white); }
.sn-site-nav .sn-nav-cta { display: inline-flex; min-height: 44px; align-items: center; padding: 0 18px; color: var(--sn-white); border: 1px solid var(--sn-cyan); }
.sn-site-nav .sn-nav-cta:hover { color: var(--sn-ink); background: var(--sn-cyan); }
.sn-menu-button { display: none; align-items: center; gap: 10px; padding: 10px 12px; color: var(--sn-white); background: transparent; border: 1px solid rgb(255 255 255 / 35%); font: 700 14px/1 var(--sn-body); }
.sn-menu-button svg { width: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; }

.sn-hero { position: relative; min-height: 790px; overflow: hidden; padding: 174px 0 104px; }
.sn-hero::after {
  position: absolute;
  inset: 0 0 auto 50%;
  height: 100%;
  content: "";
  pointer-events: none;
  background-image: linear-gradient(rgb(0 200 215 / 5%) 1px, transparent 1px), linear-gradient(90deg, rgb(0 200 215 / 5%) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(90deg, transparent, black 18%, black 75%, transparent);
}
.sn-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(500px, 1.02fr); gap: 60px; align-items: center; }
.sn-hero-copy h1,
.sn-section-heading h2,
.sn-process-heading h2,
.sn-context h2,
.sn-ai-copy h2,
.sn-principle h2,
.sn-closing h2,
.sn-inner-hero h1,
.sn-page-section h2 {
  margin: 0;
  font-family: var(--sn-heading);
  font-weight: 900;
  letter-spacing: -.035em;
  text-transform: none;
}
.sn-hero-copy h1 { max-width: 650px; color: var(--sn-white); font-size: clamp(62px, 5.6vw, 80px); line-height: .96; }
.sn-hero-copy > p { max-width: 590px; margin: 34px 0 0; color: #c1cbce; font-size: 20px; line-height: 1.55; }
.sn-hero-actions { display: flex; align-items: center; gap: 28px; margin-top: 40px; }
.sn-button { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; padding: 0 24px; border: 1px solid transparent; font-size: 15px; font-weight: 800; text-decoration: none; transition: transform .18s ease, background .18s ease, color .18s ease; }
.sn-button:hover { transform: translateY(-2px); }
.sn-button-primary { color: var(--sn-ink); background: var(--sn-cyan); }
.sn-button-primary:hover { background: var(--sn-white); }
.sn-button-dark { color: var(--sn-white) !important; background: var(--sn-ink); }
.sn-button-dark:hover { color: var(--sn-ink) !important; background: var(--sn-white); }
.sn-text-link { color: #dbe4e6; font-size: 14px; font-weight: 750; text-underline-offset: 5px; }
.sn-text-link span { margin-left: 8px; color: var(--sn-cyan); }
.sn-dark-link { color: var(--sn-ink); }

.sn-journey { position: relative; min-height: 474px; background: rgb(10 17 20 / 78%); border: 1px solid var(--sn-dark-line); }
.sn-journey::before { position: absolute; inset: 22px auto auto 24px; content: "SEARCH TO DECISION"; color: #7b8b91; font: 700 10px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .16em; }
.sn-journey-line { position: absolute; inset: 0; width: 100%; height: 100%; fill: var(--sn-ink); stroke: var(--sn-cyan); stroke-width: 3; vector-effect: non-scaling-stroke; }
.sn-journey-line path { fill: none; }
.sn-journey-line circle { fill: var(--sn-cyan); }
.sn-journey ol { position: relative; min-height: 474px; height: 100%; margin: 0; padding: 0; list-style: none; }
.sn-journey-step { position: absolute; display: grid; grid-template-columns: 30px 1fr; gap: 14px; width: 230px; }
.sn-step-one { top: 92px; left: 42px; }
.sn-step-two { top: 222px; left: 195px; }
.sn-step-three { top: 354px; left: 355px; }
.sn-step-number { color: #788a90; font: 700 10px/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-journey-step h2 { margin: 0 0 7px; color: var(--sn-cyan); font-family: var(--sn-heading); font-size: 22px; line-height: 1; letter-spacing: -.01em; text-transform: none; }
.sn-journey-step p { margin: 0; color: #d4dcde; font-size: 13px; line-height: 1.45; }

.sn-context { padding: 84px 0; }
.sn-context-grid { display: grid; grid-template-columns: 70px minmax(280px, .9fr) minmax(320px, 1.1fr); gap: 48px; align-items: start; }
.sn-section-mark { display: grid; width: 54px; height: 54px; place-items: center; color: var(--sn-cyan-dark); border: 1px solid var(--sn-cyan-dark); font: 800 12px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-context h2 { font-size: clamp(40px, 4vw, 58px); line-height: 1; }
.sn-context p { max-width: 610px; margin: 4px 0 0; color: #424d51; font-size: 21px; line-height: 1.55; }

.sn-services { padding: 122px 0; border-top: 1px solid var(--sn-line); }
.sn-section-grid { display: grid; grid-template-columns: minmax(280px, .76fr) minmax(520px, 1.24fr); gap: 100px; }
.sn-section-heading { position: sticky; top: 48px; align-self: start; }
.sn-section-label { margin: 0 0 24px; color: var(--sn-cyan-dark); font: 800 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .15em; text-transform: uppercase; }
.sn-section-heading h2 { font-size: clamp(48px, 5vw, 70px); line-height: .98; }
.sn-section-heading > p:last-child { max-width: 460px; margin: 28px 0 0; color: var(--sn-muted); font-size: 17px; }
.sn-service-list { border-top: 1px solid #9ca6a9; }
.sn-service-row { display: grid; grid-template-columns: 52px minmax(190px, .65fr) minmax(280px, 1fr); gap: 22px; align-items: start; padding: 27px 0; border-bottom: 1px solid #bcc3c5; }
.sn-service-row > span { color: var(--sn-cyan-dark); font: 800 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-service-row h3 { margin: 0 0 9px; font-family: var(--sn-heading); font-size: 27px; line-height: 1.1; }
.sn-service-row p { margin: 0; color: var(--sn-muted); font-size: 15px; }
.sn-service-row .sn-capability-meta { color: var(--sn-cyan-dark); font: 750 12px/1.45 var(--sn-body); letter-spacing: .015em; }
.sn-service-row > p { padding-top: 2px; }

.sn-ai { padding: 112px 0; border-top: 1px solid var(--sn-line); }
.sn-ai-grid { display: grid; grid-template-columns: minmax(420px, 1.08fr) minmax(380px, .92fr); gap: 112px; align-items: start; }
.sn-ai-copy h2 { max-width: 690px; font-size: clamp(52px, 5.4vw, 76px); line-height: .96; }
.sn-ai-copy > p:last-child { max-width: 680px; margin: 30px 0 0; color: #3e494d; font-size: 19px; line-height: 1.62; }
.sn-ai-list { margin: 0; padding: 0; border-top: 1px solid #9ca6a9; list-style: none; }
.sn-ai-list li { display: grid; grid-template-columns: 48px 1fr; gap: 18px; align-items: center; min-height: 70px; border-bottom: 1px solid #bcc3c5; }
.sn-ai-list span { color: var(--sn-cyan-dark); font: 800 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-ai-list p { margin: 0; font-family: var(--sn-heading); font-size: 23px; font-weight: 800; line-height: 1.15; }

.sn-process { padding: 118px 0 128px; }
.sn-process-heading { display: grid; grid-template-columns: .42fr 1fr; gap: 80px; align-items: start; margin-bottom: 78px; }
.sn-process-heading .sn-section-label { color: var(--sn-cyan); }
.sn-process-heading h2 { max-width: 850px; color: var(--sn-white); font-size: clamp(54px, 6vw, 82px); line-height: .96; }
.sn-process-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0; border-top: 1px solid var(--sn-dark-line); list-style: none; }
.sn-process-list li { min-height: 250px; padding: 28px 34px 0 0; border-right: 1px solid var(--sn-dark-line); }
.sn-process-list li + li { padding-left: 34px; }
.sn-process-list li:last-child { border-right: 0; }
.sn-process-number { display: block; margin-bottom: 56px; color: var(--sn-cyan); font: 800 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-process-list h3 { margin: 0 0 14px; color: var(--sn-white); font-family: var(--sn-heading); font-size: 29px; line-height: 1.1; }
.sn-process-list p { margin: 0; color: var(--sn-dark-muted); font-size: 15px; line-height: 1.55; }

.sn-principle { padding: 108px 0; }
.sn-principle-grid { display: grid; grid-template-columns: .42fr .72fr 1fr; gap: 70px; align-items: start; }
.sn-principle h2 { font-size: clamp(46px, 5vw, 66px); line-height: 1; }
.sn-principle-details > p { max-width: 540px; margin: 7px 0 0; color: #3e494d; font-size: 19px; }
.sn-standards-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin: 30px 0 0; padding: 0; border-top: 1px solid #bcc3c5; list-style: none; }
.sn-standards-list li { padding: 13px 0; color: #3e494d; border-bottom: 1px solid #ccd1d2; font-size: 13px; font-weight: 700; line-height: 1.35; }

.sn-closing { padding: 74px 0; }
.sn-closing-grid { display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: center; }
.sn-closing h2 { font-size: clamp(46px, 5vw, 66px); line-height: 1; }
.sn-closing p { max-width: 690px; margin: 18px 0 0; color: var(--sn-ink); font-size: 18px; line-height: 1.55; }

.sn-site-footer { padding: 64px 0 40px; color: var(--sn-white); background: var(--sn-ink); }
.sn-footer-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 54px; align-items: start; }
.sn-footer-brand .sn-brand-line { color: #839399; }
.sn-site-footer nav { display: grid; gap: 11px; }
.sn-site-footer nav a { color: #bdc7ca; font-size: 13px; text-decoration: none; }
.sn-site-footer nav a:hover { color: var(--sn-white); }
.sn-copyright { grid-column: 1 / -1; margin: 48px 0 0; padding-top: 22px; color: #77878d; border-top: 1px solid var(--sn-dark-line); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }

/* Shared internal-page system. */
.sn-inner-hero { padding: 108px 0 96px; }
.sn-inner-hero .sn-section-label { color: var(--sn-cyan); }
.sn-inner-hero h1 { max-width: 980px; color: var(--sn-white); font-size: clamp(54px, 6.5vw, 88px); line-height: .95; }
.sn-inner-hero > .sn-shell > p:last-child:not(.sn-section-label) { max-width: 760px; margin: 30px 0 0; color: #c1cbce; font-size: 20px; line-height: 1.55; }
.sn-page-section { padding: 104px 0; }
.sn-content-shell { width: min(calc(100% - 64px), 1120px); }
.sn-reading-width { max-width: 850px; }
.sn-page-section h2 { margin: 0 0 24px; font-size: clamp(42px, 5vw, 64px); line-height: 1; }
.sn-page-section h3 { margin: 36px 0 14px; color: var(--sn-text); font-family: var(--sn-heading); font-size: 30px; line-height: 1.15; text-transform: none; }
.sn-page-section p,
.sn-page-section li { color: #3e494d; }
.sn-page-section p { margin: 0 0 22px; }
.sn-page-section a:not(.sn-button) { color: var(--sn-cyan-dark); text-underline-offset: 4px; }
.sn-lead { font-size: 21px; line-height: 1.62; }
.sn-about-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; align-items: start; }
.sn-services-page { border-top: 1px solid #9ca6a9; }
.sn-services-page > article { display: grid; grid-template-columns: 60px .72fr 1fr; gap: 28px; padding: 38px 0; border-bottom: 1px solid #bcc3c5; }
.sn-services-page > article > span { padding-top: 10px; color: var(--sn-cyan-dark); font: 800 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-services-page h2 { margin: 0; font-size: 46px; }
.sn-services-page p { margin: 5px 0 0; font-size: 18px; }
.sn-advisor-ledger { margin-top: 58px; border-top: 1px solid #9ca6a9; }
.sn-advisor-ledger article { display: grid; grid-template-columns: 52px 1fr; gap: 20px; padding: 28px 0; border-bottom: 1px solid #bcc3c5; }
.sn-advisor-ledger article > span { color: var(--sn-cyan-dark); font: 800 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sn-advisor-ledger h3 { margin: 0 0 8px; }
.sn-advisor-ledger p { margin: 0; }

.sn-form-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 96px; align-items: start; }
.sn-form-page-width { max-width: 980px; }
.sn-form-panel { padding: 38px; background: var(--sn-white); border: 1px solid var(--sn-line); }
.sn-form-panel-wide { padding: 46px; }
.sn-form-panel form { margin: 0; }

/* Forms and transactional widgets. */
.seonot-advisor .sn-form-panel input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.seonot-advisor .sn-form-panel textarea,
.seonot-advisor .sn-form-panel select,
.seonot-advisor .sn-editor-content input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.seonot-advisor .sn-editor-content textarea,
.seonot-advisor .sn-editor-content select {
  width: 100% !important;
  min-height: 48px;
  padding: 11px 13px !important;
  color: var(--sn-text) !important;
  background: var(--sn-white) !important;
  border: 1px solid #9ca6a9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 16px !important;
}
.seonot-advisor .sn-form-panel textarea,
.seonot-advisor .sn-editor-content textarea { min-height: 130px; resize: vertical; }
.seonot-advisor .sn-form-panel label,
.seonot-advisor .sn-editor-content label { color: var(--sn-text); font-size: 14px; font-weight: 700; }
.seonot-advisor .sn-form-panel input[type="submit"],
.seonot-advisor .sn-form-panel button:not(.sn-menu-button),
.seonot-advisor .sn-editor-content input[type="submit"],
.seonot-advisor .sn-editor-content button:not(.sn-menu-button),
.seonot-advisor .simpay-checkout-btn-container button {
  min-height: 50px;
  padding: 0 22px !important;
  color: var(--sn-ink) !important;
  background: var(--sn-cyan) !important;
  border: 1px solid var(--sn-cyan) !important;
  border-radius: 0 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  background-image: none !important;
}
.seonot-advisor .gform_wrapper,
.seonot-advisor .wpcf7,
.seonot-advisor .ea-bootstrap,
.seonot-advisor .simpay-form-wrap { max-width: 100% !important; color: var(--sn-text); }
.seonot-advisor .gform_wrapper .gform_heading { margin-bottom: 30px; }
.seonot-advisor .gform_wrapper .gform_title { color: var(--sn-text); font-family: var(--sn-heading); font-size: 36px; text-transform: none; }
.seonot-advisor .gform_wrapper ul.gform_fields { margin: 0 !important; padding: 0 !important; }
.seonot-advisor .gform_wrapper li.gfield { width: 100% !important; margin: 0 0 20px !important; padding: 0 !important; }
.seonot-advisor .gform_wrapper .ginput_complex { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.seonot-advisor .gform_wrapper .ginput_complex span { width: auto !important; margin: 0 !important; padding: 0 !important; }
.seonot-advisor .gform_wrapper .gsection { margin-top: 36px !important; padding-bottom: 10px !important; border-bottom: 2px solid var(--sn-ink) !important; }
.seonot-advisor h2.gsection_title::before { content: none !important; }
.seonot-advisor .gform_wrapper .gform_next_button,
.seonot-advisor .gform_wrapper .gform_previous_button {
  min-height: 48px;
  padding: 0 22px !important;
  color: var(--sn-ink) !important;
  background: var(--sn-cyan) !important;
  background-image: none !important;
  border: 1px solid var(--sn-cyan) !important;
  border-radius: 0 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}
.seonot-advisor .wpcf7-form p { margin-bottom: 18px; }
.seonot-advisor .wpcf7-not-valid-tip,
.seonot-advisor .validation_message { color: #9b1c1c; font-size: 13px; }
.seonot-advisor .grecaptcha-badge { visibility: hidden !important; }
.sn-recaptcha-note { margin: 18px 0 0 !important; color: var(--sn-muted) !important; font-size: 12px !important; line-height: 1.5; }
.sn-recaptcha-note a { color: var(--sn-cyan-dark) !important; }
.seonot-advisor .ea-bootstrap .form-control { height: auto; }
.seonot-advisor .ea-bootstrap .btn { border-radius: 0; }

/* Legacy Jupiter and Visual Composer output stays readable inside the new shell. */
.sn-editor-content .vc_row,
.sn-editor-content .mk-page-section,
.sn-editor-content .wpb_row { max-width: 100%; margin-left: 0 !important; margin-right: 0 !important; }
.sn-editor-content .mk-grid { width: 100%; max-width: 100%; }
.sn-editor-content .mk-page-section { min-height: 0 !important; padding-top: 42px !important; padding-bottom: 42px !important; color: var(--sn-text) !important; background-image: none !important; background-color: transparent !important; }
.sn-editor-content .mk-page-section-wrapper { min-height: 0 !important; }
.sn-editor-content .mk-page-section h1,
.sn-editor-content .mk-page-section h2,
.sn-editor-content .mk-page-section h3,
.sn-editor-content .mk-page-section h4,
.sn-editor-content .mk-page-section h5,
.sn-editor-content .mk-page-section p,
.sn-editor-content .mk-page-section span { color: inherit !important; }
.sn-editor-content .mk-padding-divider { max-height: 60px !important; }
.sn-editor-content .vc_column_container { padding-top: 12px; padding-bottom: 12px; }
.sn-editor-content .mk-button,
.sn-editor-content .vc_btn,
.sn-editor-content .vc_btn3 { border-radius: 0 !important; }
.sn-editor-content iframe { max-width: 100%; border: 0; }
.sn-editor-content iframe[src*="youtube.com"],
.sn-editor-content iframe[src*="youtu.be"] { width: 100%; height: auto; aspect-ratio: 16 / 9; }
.sn-editor-content table { width: 100%; border-collapse: collapse; }
.sn-editor-content th,
.sn-editor-content td { padding: 12px; border: 1px solid var(--sn-line); text-align: left; }
.seonot-payment-page .sn-content-shell { max-width: 780px; }
.seonot-payment-page .sn-editor-content > div { max-width: 100%; }

.sn-post-meta { margin: 18px 0 0; color: #8e9da2; font-size: 13px; }
.sn-archive-list { display: grid; gap: 0; margin: 0; padding: 0; border-top: 1px solid #9ca6a9; list-style: none; }
.sn-archive-list li { padding: 28px 0; border-bottom: 1px solid #bcc3c5; }
.sn-archive-list h2 { margin: 0 0 8px; font-size: 36px; }
.sn-archive-list h2 a { color: var(--sn-text); text-decoration: none; }

@media (max-width: 1050px) {
  .sn-hero { min-height: auto; }
  .sn-hero-grid { grid-template-columns: 1fr; }
  .sn-hero-copy { max-width: 780px; }
  .sn-journey { max-width: 720px; }
  .sn-section-grid,
  .sn-ai-grid { grid-template-columns: 1fr; gap: 60px; }
  .sn-section-heading { position: static; }
  .sn-context-grid { grid-template-columns: 54px 1fr; }
  .sn-context-grid p { grid-column: 2; }
  .sn-service-row { grid-template-columns: 42px minmax(170px, .7fr) 1fr; }
  .sn-about-grid,
  .sn-form-layout { grid-template-columns: 1fr; gap: 54px; }
  .sn-services-page > article { grid-template-columns: 50px 1fr; }
  .sn-services-page > article > p { grid-column: 2; }
}

@media (max-width: 960px) {
  body.seonot-advisor { font-size: 16px; }
  .sn-shell,
  .sn-content-shell { width: min(calc(100% - 40px), var(--sn-shell)); }
  .sn-header-inner { min-height: 76px; }
  .sn-brand-name { font-size: 21px; }
  .sn-brand-line { display: none; }
  .sn-menu-button { display: inline-flex; }
  .sn-site-nav { position: fixed; top: 76px; right: 0; bottom: 0; left: 0; display: none; align-items: stretch; align-content: start; gap: 0; padding: 24px 20px; overflow-y: auto; background: #0e1619; border-top: 1px solid var(--sn-dark-line); }
  .sn-site-nav.is-open { display: grid; }
  .sn-site-nav a { padding: 13px 12px; }
  .sn-site-nav .sn-nav-cta { margin-top: 6px; }
  .sn-hero { padding: 132px 0 74px; }
  .sn-hero::after { inset: 0; mask-image: linear-gradient(180deg, transparent, black 30%, transparent 80%); }
  .sn-hero-grid { gap: 58px; }
  .sn-hero-copy h1 { max-width: 520px; font-size: clamp(50px, 14vw, 68px); }
  .sn-hero-copy > p { margin-top: 26px; font-size: 18px; }
  .sn-hero-actions { align-items: stretch; flex-direction: column; gap: 18px; margin-top: 32px; }
  .sn-button { width: 100%; }
  .sn-text-link { text-align: center; }
  .sn-journey { min-height: 512px; border-width: 1px 0 0; }
  .sn-journey::before { left: 0; }
  .sn-journey-line { display: none; }
  .sn-journey ol { min-height: 512px; padding-top: 68px; }
  .sn-journey-step { position: relative; top: auto; left: auto; width: auto; grid-template-columns: 46px 1fr; gap: 16px; padding: 0 0 30px 14px; margin-left: 8px; border-left: 2px solid var(--sn-cyan); }
  .sn-journey-step:last-child { border-color: transparent; }
  .sn-step-number { display: grid; width: 30px; height: 30px; margin-left: -31px; place-items: center; color: var(--sn-cyan); background: var(--sn-ink); border: 1px solid var(--sn-cyan); }
  .sn-journey-step h2 { font-size: 27px; }
  .sn-journey-step p { max-width: 350px; font-size: 15px; }
  .sn-context { padding: 64px 0; }
  .sn-context-grid { grid-template-columns: 1fr; gap: 24px; }
  .sn-context-grid p { grid-column: auto; margin-top: 0; font-size: 18px; }
  .sn-section-mark { width: 44px; height: 44px; }
  .sn-context h2 { font-size: 44px; }
  .sn-services { padding: 78px 0; }
  .sn-section-grid { grid-template-columns: 1fr; gap: 48px; }
  .sn-section-heading h2 { font-size: 48px; }
  .sn-service-row { grid-template-columns: 34px 1fr; gap: 12px 14px; padding: 22px 0; }
  .sn-service-row p { grid-column: 2; }
  .sn-service-row h3 { font-size: 25px; }
  .sn-ai { padding: 76px 0; }
  .sn-ai-grid { grid-template-columns: 1fr; gap: 46px; }
  .sn-ai-copy h2 { font-size: 48px; }
  .sn-ai-copy > p:last-child { margin-top: 24px; font-size: 17px; }
  .sn-ai-list li { min-height: 62px; grid-template-columns: 34px 1fr; gap: 12px; }
  .sn-ai-list p { font-size: 20px; }
  .sn-process { padding: 78px 0 88px; }
  .sn-process-heading { grid-template-columns: 1fr; gap: 18px; margin-bottom: 54px; }
  .sn-process-heading h2 { font-size: 49px; }
  .sn-process-list { grid-template-columns: 1fr; }
  .sn-process-list li,
  .sn-process-list li + li { min-height: 0; padding: 25px 0 30px; border-right: 0; border-bottom: 1px solid var(--sn-dark-line); }
  .sn-process-list li:last-child { border-bottom: 0; }
  .sn-process-number { margin-bottom: 20px; }
  .sn-process-list h3 { font-size: 27px; }
  .sn-principle { padding: 68px 0; }
  .sn-principle-grid { grid-template-columns: 1fr; gap: 18px; }
  .sn-principle h2 { font-size: 46px; }
  .sn-principle-details > p { margin-top: 4px; font-size: 18px; }
  .sn-standards-list { grid-template-columns: 1fr; margin-top: 26px; }
  .sn-closing { padding: 62px 0; }
  .sn-closing-grid { grid-template-columns: 1fr; gap: 30px; }
  .sn-closing h2 { font-size: 47px; }
  .sn-site-footer { padding-top: 48px; }
  .sn-footer-grid { grid-template-columns: 1fr 1fr; gap: 38px 28px; }
  .sn-footer-brand { grid-column: 1 / -1; }
  .sn-copyright { margin-top: 16px; }
  .sn-inner-hero { padding: 76px 0 68px; }
  .sn-inner-hero h1 { font-size: 51px; }
  .sn-inner-hero > .sn-shell > p:last-child:not(.sn-section-label) { font-size: 18px; }
  .sn-page-section { padding: 70px 0; }
  .sn-page-section h2 { font-size: 44px; }
  .sn-services-page > article { grid-template-columns: 34px 1fr; gap: 14px; padding: 28px 0; }
  .sn-services-page h2 { font-size: 35px; }
  .sn-services-page > article > p { grid-column: 2; font-size: 16px; }
  .sn-form-panel,
  .sn-form-panel-wide { padding: 24px 20px; }
  .seonot-advisor .gform_wrapper .ginput_complex { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .sn-shell,
  .sn-content-shell { width: min(calc(100% - 32px), var(--sn-shell)); }
  .sn-footer-grid { grid-template-columns: 1fr; }
  .sn-site-footer nav { grid-column: 1; }
  .sn-copyright { grid-column: 1; }
  .sn-inner-hero h1 { font-size: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}
