/* Secondary pages share the homepage's light visual language. */
.inner-page {
  --color-background:#f8faf7; --color-surface:#fff; --color-section:#eff6f3;
  --color-text:#14242a; --color-muted:#425b60; --color-faint:#52696d;
  --color-border:#d5e4de; --color-border-strong:#aac8c0;
  --color-accent:#0d6972; --color-accent-dark:#07545d;
  --color-accent-bright:#0d6972; --color-accent-soft:#e7f3ef; --navy:#14242a;
  background:#f8faf7; color:#14242a;
}
.inner-page .site-header { background:rgba(248,250,247,.97); border-color:#dce9e3; }
.inner-page .brand-mark { border-color:#83ada8; color:#07545d; background:#e8f4f0; box-shadow:none; font-family:var(--font-sans); }
.inner-page .brand-name small { color:#0d6972; }
.inner-page .nav-links a[aria-current="page"],.inner-page .nav-links a:hover { color:#07545d; background:#e8f4f0; }
.inner-page .nav-links .nav-cta,.inner-page .button { background:#0d6972; border-color:#0d6972; color:#fff; }
.inner-page .nav-links .nav-cta:hover,.inner-page .button:hover { background:#07545d; border-color:#07545d; color:#fff; }
.inner-page .eyebrow,.inner-page .micro-label { font-family:var(--font-sans); font-size:.72rem; font-weight:750; color:#0d6972; }
.inner-page h1 { font-size:clamp(2.1rem,3.2vw,2.75rem); line-height:1.16; font-weight:650; letter-spacing:-.04em; }
.inner-page h2 { font-size:clamp(1.85rem,2.9vw,2.1rem); line-height:1.22; font-weight:650; letter-spacing:-.035em; }
.inner-page h3 { font-size:1.2rem; line-height:1.3; font-weight:680; letter-spacing:-.025em; }
.inner-page p { line-height:1.65; }
.inner-page .lead { color:#425b60; font-size:1.04rem; line-height:1.65; }
.inner-page .section { padding-block:clamp(4rem,7vw,6rem); }
.inner-page .eyebrow { margin-bottom:.9rem; }
.inner-page .text-link { color:#07545d; }
.inner-page .site-footer { background:#f8faf7; border-top:1px solid #d5e4de; color:#52696d; padding-top:3.5rem; }
.inner-page .site-footer .brand-name { color:#14242a; }
.inner-page .site-footer a:hover,.inner-page .footer-action a { color:#07545d; }
.inner-page .footer-action .micro-label { color:#52696d; }
.inner-page .footer-bottom { border-color:#d7e5df; font-family:var(--font-sans); }
.inner-hero { background:#f8faf7; border-bottom:1px solid #dce9e3; }
.inner-hero__grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; gap:clamp(2rem,5vw,5rem); min-height:530px; padding-block:3rem; }
.inner-hero__copy { max-width:56ch; }
.inner-hero h1 { max-width:20ch; }
.inner-hero .lead { max-width:50ch; margin:1.45rem 0 1.8rem; }
.inner-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.8rem 1.4rem; }
.inner-actions .text-link { text-decoration:none; }
.inner-actions .text-link:hover { text-decoration:underline; }
.hero-facts { display:flex; flex-wrap:wrap; gap:.55rem 1.1rem; margin:1.4rem 0 0; color:#52696d; font-size:.78rem; }
.hero-facts strong { color:#14242a; }
.inner-heading { max-width:62ch; margin-bottom:2.25rem; }
.inner-heading h2 { max-width:28ch; }
.inner-heading p:not(.eyebrow) { max-width:62ch; margin:.85rem 0 0; color:#425b60; }
.inner-split { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,6vw,6rem); }
.inner-split > div:first-child p:not(.eyebrow) { color:#425b60; max-width:48ch; margin-top:1rem; }
.inner-split h2 { max-width:23ch; }
.inner-section--white { background:#fff; }
.inner-section--soft { background:#eff6f3; }

/* A sample deliverable that resembles a document rather than a dashboard. */
.scan-sheet { position:relative; max-width:580px; width:100%; justify-self:end; padding:1.4rem clamp(1.2rem,2.6vw,2rem); border:1px solid #bfd8cf; border-radius:10px; background:#fff; box-shadow:0 22px 55px rgba(16,69,68,.10); }
.scan-sheet::before { content:""; position:absolute; inset:10px -9px -10px 9px; z-index:-1; border:1px solid #d5e6de; border-radius:10px; background:#eef6f2; }
.scan-sheet__head { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.4rem 1rem; padding-bottom:1rem; border-bottom:1px solid #dce9e3; color:#0d6972; font-size:.64rem; font-weight:780; letter-spacing:.08em; }
.scan-sheet__head span:last-child { color:#617577; }
.scan-sheet h2 { margin:1.1rem 0 .35rem; font-size:1.1rem; letter-spacing:-.02em; }
.scan-sheet > p { margin:0 0 1.4rem; color:#52696d; font-size:.79rem; }
.scan-sheet__flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.6rem; margin:0 0 1.2rem; padding:0; list-style:none; }
.scan-sheet__flow li { position:relative; display:grid; align-content:center; min-height:58px; padding:.55rem; border:1px solid #bad6cb; border-radius:6px; background:#f6faf8; color:#25484a; font-size:.73rem; font-weight:690; text-align:center; line-height:1.3; }
.scan-sheet__flow li + li::before { content:""; position:absolute; top:50%; left:-.62rem; width:.62rem; height:2px; background:#77afa5; }
.scan-sheet__flow li:last-child { border-color:#d79c76; background:#fff3e9; color:#874922; }
.scan-sheet__rows { border-top:1px solid #dce9e3; }
.scan-sheet__rows div { display:grid; grid-template-columns:7rem 1fr; gap:.7rem; padding:.65rem 0; border-bottom:1px solid #e6efea; font-size:.75rem; line-height:1.4; }
.scan-sheet__rows span { color:#52696d; }
.scan-sheet__rows strong { font-weight:670; color:#254448; }
.scan-sheet__note { display:block; margin-top:.9rem; color:#617577; font-size:.68rem; }

/* The scan's example separates a reported signal from what has actually been checked. */
.scan-demo { overflow:hidden; border:1px solid #cfe2d9; border-radius:13px; background:#f7fbf8; box-shadow:0 16px 42px rgba(16,69,68,.07); }
.scan-demo__controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid #d8e8e0; }
.scan-demo__controls button,.implementation-demo__controls button { min-height:60px; padding:.75rem; border:0; border-right:1px solid #d8e8e0; background:#fff; color:#49666a; font:inherit; font-size:.82rem; font-weight:720; }
.scan-demo__controls button:last-child,.implementation-demo__controls button:last-child { border-right:0; }
.scan-demo__controls button[aria-pressed="true"],.implementation-demo__controls button[aria-pressed="true"] { background:#e7f3ee; color:#07545d; box-shadow:inset 0 -3px #0d6972; }
.scan-demo__body { display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.5rem,4vw,4rem); align-items:center; min-height:285px; padding:clamp(1.2rem,3vw,2.5rem); }
.scan-demo__path { position:relative; display:grid; gap:.65rem; padding-left:1.4rem; }
.scan-demo__path::before { content:""; position:absolute; left:.45rem; top:1rem; bottom:1rem; width:2px; background:#91bcb0; }
.scan-demo__path span { position:relative; display:block; padding:.7rem .9rem; border:1px solid #c6ded3; border-radius:6px; background:#fff; color:#305055; font-size:.8rem; }
.scan-demo__path span::before { content:""; position:absolute; top:50%; left:-1.25rem; width:.55rem; height:.55rem; border-radius:50%; background:#0d6972; }
.scan-demo__path span:nth-child(3) { border-color:#dfa983; background:#fff5ec; }
.scan-demo__path span:nth-child(3)::before { background:#a45123; }
.scan-demo[data-stage="1"] .scan-demo__path span:nth-child(2) { border-color:#0d6972; background:#e7f4ef; box-shadow:0 0 0 4px rgba(13,105,114,.11); }
.scan-demo[data-stage="2"] .scan-demo__path span:nth-child(3) { border-color:#0d6972; background:#e7f4ef; color:#07545d; box-shadow:0 0 0 4px rgba(13,105,114,.11); }
.scan-demo[data-stage="2"] .scan-demo__path span:nth-child(3)::before { background:#0d6972; }
.scan-demo__focus { padding:1.35rem; border-left:3px solid #0d6972; background:#fff; box-shadow:0 8px 24px rgba(16,69,68,.05); animation:focus-in .36s ease-out; }
.scan-demo__focus > span { color:#0d6972; font-size:.68rem; font-weight:780; letter-spacing:.08em; }
.scan-demo__focus h3 { margin:.55rem 0 .5rem; }
.scan-demo__focus p { margin:0; color:#425b60; font-size:.89rem; }
.scan-demo__foot { margin:0; padding:.85rem 1.4rem; border-top:1px solid #d8e8e0; color:#52696d; font-size:.75rem; }
@keyframes focus-in { from { opacity:.4; transform:translateY(7px); } to { opacity:1; transform:translateY(0); } }
.deliverable-ledger { margin:0; border-top:1px solid #b9d3c8; }
.deliverable-ledger div { display:grid; grid-template-columns:minmax(9rem,.5fr) 1fr; gap:1.2rem; padding:1.25rem 0; border-bottom:1px solid #dce9e3; }
.deliverable-ledger dt { color:#183d42; font-weight:720; }
.deliverable-ledger dd { margin:0; color:#425b60; }
.scope-band { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem 3rem; margin-top:2.5rem; padding:1.4rem 0; border-top:1px solid #b9d3c8; border-bottom:1px solid #b9d3c8; }
.scope-band p { max-width:70ch; margin:0; color:#425b60; }
.scope-band strong { color:#14242a; }
.scope-band a { color:#07545d; font-weight:750; text-underline-offset:4px; }

/* Implementation choices change the same example process. */
.implementation-demo { justify-self:end; width:100%; max-width:580px; overflow:hidden; border:1px solid #c9ded5; border-radius:12px; background:#fff; box-shadow:0 22px 55px rgba(16,69,68,.1); }
.implementation-demo__head { display:flex; justify-content:space-between; gap:1rem; padding:1rem 1.2rem; background:#f0f7f3; color:#0d6972; font-size:.66rem; font-weight:780; letter-spacing:.07em; }
.implementation-demo__scene { padding:1.4rem; }
.implementation-demo__before,.implementation-demo__after { padding:1rem; border:1px solid #d9e7e1; border-radius:7px; }
.implementation-demo__before { background:#fff9f3; border-color:#e8c7ad; }
.implementation-demo__after { background:#ecf7f1; border-color:#a8d1bc; animation:focus-in .45s ease-out; }
.implementation-demo__scene span { display:block; margin-bottom:.3rem; color:#52696d; font-size:.66rem; font-weight:770; letter-spacing:.07em; }
.implementation-demo__scene strong { color:#233f43; font-size:.94rem; }
.implementation-demo__scene p { margin:.25rem 0 0; color:#425b60; font-size:.77rem; }
.implementation-demo__connector { height:34px; width:2px; margin:0 auto; background:#0d6972; }
.implementation-demo__controls { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #d8e8e0; }
.implementation-demo__controls button { min-height:58px; }
.implementation-demo__note { margin:0; padding:.75rem 1.2rem; color:#52696d; font-size:.72rem; }
.implementation-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; border-top:2px solid #9dc8b8; }
.implementation-flow div { position:relative; padding-top:1.4rem; }
.implementation-flow div::before { content:""; position:absolute; top:-.38rem; left:0; width:.65rem; height:.65rem; border-radius:50%; background:#0d6972; box-shadow:0 0 0 5px #e7f3ee; }
.implementation-flow h3 { margin-bottom:.55rem; }
.implementation-flow p { color:#425b60; font-size:.9rem; }

/* Trust is earned by showing the standard of work and its limits. */
.principle-list { margin:0; border-top:1px solid #b9d3c8; }
.principle-list div { padding:1.2rem 0; border-bottom:1px solid #dce9e3; }
.principle-list dt { color:#183d42; font-weight:720; }
.principle-list dd { margin:.35rem 0 0; color:#425b60; }
.evidence-visual { display:grid; gap:.7rem; max-width:550px; margin-left:auto; padding:1.4rem; border:1px solid #cfe2d9; border-radius:10px; background:linear-gradient(135deg,#f1f8f4,#fff); }
.evidence-visual div { display:grid; grid-template-columns:6.5rem 1fr; gap:.7rem; padding:.85rem; border:1px solid #d6e6de; border-radius:6px; background:#fff; }
.evidence-visual span { color:#0d6972; font-size:.75rem; font-weight:760; }
.evidence-visual strong { color:#29494c; font-size:.8rem; font-weight:660; }
.evidence-visual div:nth-child(3) { border-color:#dca27d; background:#fff8f0; }
.evidence-visual div:nth-child(3) span { color:#945024; }

.inner-cta { background:#fff; padding-bottom:clamp(4rem,7vw,6rem); }
.inner-cta__panel { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1.5rem 3rem; padding:clamp(1.6rem,3vw,2.7rem); border:1px solid #d3e4db; border-radius:13px; background:linear-gradient(110deg,#edf6f1,#f8faf7); }
.inner-cta__panel h2 { max-width:24ch; }
.inner-cta__panel p:not(.eyebrow) { max-width:56ch; margin:.7rem 0 0; color:#425b60; }
.inner-cta__panel .button { flex:none; }

/* Contact keeps the decision and the form within one short page. */
.contact-hero { padding:clamp(3rem,5vw,4.5rem) 0 2.5rem; background:#f8faf7; }
.contact-hero h1 { max-width:28ch; }
.contact-hero .lead { max-width:64ch; margin:1rem 0 0; }
.contact-hero__facts { display:flex; flex-wrap:wrap; gap:.3rem 1.4rem; margin-top:1.3rem; color:#52696d; font-size:.8rem; }
.contact-main { padding-top:2rem !important; background:#fff; }
.contact-main .intake-layout { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,5vw,5rem); }
.contact-main .intake-layout > div { top:7rem; }
.contact-main .intake-layout > div p:not(.eyebrow) { margin-top:.9rem; }
.contact-main .privacy-note { padding:0; border:0; font-size:.79rem; }
.contact-main .intake-form { border-color:#cfe2d9; border-radius:10px; overflow:hidden; box-shadow:0 15px 42px rgba(16,69,68,.07); }
.contact-main .intake-form__head { color:#0d6972; font-family:var(--font-sans); font-weight:760; }
.contact-main .intake-form__head i { background:#0d6972; box-shadow:0 0 0 4px #e2f0e9; }
.contact-main .intake-form__body { padding:clamp(1.2rem,3vw,2.2rem); }
.contact-main .field-hint { margin-bottom:1.1rem; }
.contact-main textarea { min-height:5.5rem; }
.contact-main .form-field { margin-bottom:1rem; }
.contact-main .booking-panel { border-color:#0d6972; background:#eff7f2; color:#24575a; }
.contact-main .optional-details { margin:0 0 1.1rem; padding:.6rem 0; border-top:1px solid #e2ece7; border-bottom:1px solid #e2ece7; }
.contact-main .optional-details summary { color:#07545d; font-size:.85rem; font-weight:720; cursor:pointer; }
.contact-main .optional-details[open] summary { margin-bottom:1rem; }
.contact-main .optional-details .form-field:last-child { margin-bottom:0; }
.contact-steps { margin:1.7rem 0 0; padding:0; list-style:none; border-top:1px solid #bed8cd; }
.contact-steps li { padding:.85rem 0; border-bottom:1px solid #dce9e3; color:#425b60; font-size:.86rem; }
.contact-steps strong { display:block; color:#183d42; }

@media(max-width:850px) {
  .inner-hero__grid,.inner-split,.scan-demo__body,.contact-main .intake-layout { grid-template-columns:1fr; }
  .inner-hero__grid { min-height:0; padding-block:4rem; }
  .scan-sheet,.implementation-demo,.evidence-visual { justify-self:start; margin-left:0; max-width:650px; }
  .contact-main .intake-layout > div { position:static; }
  .implementation-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
}
@media(max-width:620px) {
  .inner-page h1 { font-size:clamp(1.95rem,8vw,2.35rem); }
  .inner-hero__grid { padding-block:3rem; }
  .inner-actions { align-items:stretch; flex-direction:column; }
  .inner-actions .button { width:100%; }
  .scan-sheet { padding:1rem; }
  .scan-sheet__flow { gap:.3rem; }
  .scan-sheet__flow li { min-height:54px; padding:.3rem; font-size:.62rem; }
  .scan-sheet__flow li + li::before { left:-.34rem; width:.34rem; }
  .scan-sheet__rows div { grid-template-columns:5.5rem 1fr; font-size:.69rem; }
  .scan-demo__controls button { padding:.5rem .2rem; font-size:.7rem; }
  .scan-demo__body { gap:1rem; }
  .deliverable-ledger div { grid-template-columns:1fr; gap:.2rem; }
  .implementation-demo__controls button { font-size:.7rem; padding:.4rem; }
  .implementation-flow { grid-template-columns:1fr; gap:0; border-top:0; border-left:2px solid #9dc8b8; margin-left:.35rem; }
  .implementation-flow div { padding:0 0 1.3rem 1.3rem; }
  .implementation-flow div::before { top:.18rem; left:-.38rem; }
  .evidence-visual div { grid-template-columns:1fr; gap:.2rem; }
  .inner-cta__panel .button { width:100%; }
  .contact-hero { padding-top:3rem; }
  .contact-main { padding-top:1rem !important; }
}
@media(prefers-reduced-motion:reduce) {
  .scan-demo__focus,.implementation-demo__after { animation:none; }
}

/* Direct implementation: one editorial route from scope to everyday use. */
.implementation-page .implementation-hero .inner-hero__grid { grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr); }
.implementation-page .implementation-hero h1 { max-width:23ch; }
.implementation-page .implementation-hero .lead { max-width:56ch; }
.implementation-map { justify-self:end; width:100%; max-width:600px; overflow:hidden; border:1px solid #c9ded5; border-radius:14px; background:#fff; box-shadow:0 22px 55px rgba(16,69,68,.09); }
.implementation-map__top { display:flex; justify-content:space-between; gap:1rem; padding:.95rem 1.2rem; border-bottom:1px solid #dce9e3; color:#0d6972; font-size:.64rem; font-weight:780; letter-spacing:.075em; }
.implementation-map__top span:last-child { color:#6a8080; }
.implementation-map__body { display:grid; justify-items:center; padding:clamp(1.3rem,3vw,2rem); background:radial-gradient(ellipse at 50% 45%,#eff8f3 0%,#fff 75%); }
.implementation-map__input,.implementation-map__core,.implementation-map__output { display:grid; justify-items:center; width:min(100%,410px); text-align:center; }
.implementation-map__input,.implementation-map__output { padding:.95rem 1rem; border:1px solid #ccdfd7; border-radius:8px; background:#fff; }
.implementation-map__input > span,.implementation-map__core > span,.implementation-map__output > span { color:#0d6972; font-size:.62rem; font-weight:780; letter-spacing:.09em; }
.implementation-map__input strong,.implementation-map__output strong { margin:.25rem 0; color:#18383d; font-size:.95rem; }
.implementation-map small { color:#52696d; font-size:.72rem; line-height:1.4; }
.implementation-map__core { position:relative; padding:1.1rem 1rem; border:1px solid #81b7aa; border-radius:8px; background:#eaf5ef; box-shadow:0 7px 22px rgba(13,105,114,.10); }
.implementation-map__core > div { display:flex; justify-content:center; flex-wrap:wrap; gap:.38rem; margin:.7rem 0; }
.implementation-map__core b { padding:.35rem .55rem; border:1px solid #c4dfd3; border-radius:5px; background:#fff; color:#245154; font-size:.72rem; font-weight:700; }
.implementation-map__rail { display:grid; justify-items:center; gap:5px; width:2px; height:31px; padding:4px 0; background:#91bbb0; }
.implementation-map__rail i { width:5px; height:5px; border-radius:50%; background:#0d6972; }
.implementation-map__output { border-color:#a7d0bd; background:#f6fbf7; }
.implementation-map__foot { margin:0; padding:.8rem 1.2rem; border-top:1px solid #dce9e3; color:#52696d; font-size:.74rem; }
.implementation-offerings { border-top:1px solid #bad3c9; }
.implementation-offerings article { display:grid; grid-template-columns:80px minmax(0,1fr) 90px; align-items:center; gap:1.3rem; padding:1.55rem 0; border-bottom:1px solid #dce9e3; }
.implementation-offerings article > div:nth-child(2) { max-width:72ch; }
.implementation-offerings h3 { margin:0 0 .4rem; }
.implementation-offerings p { margin:0; color:#425b60; font-size:.92rem; }
.implementation-offerings__tag { justify-self:end; color:#547173; font-size:.64rem; font-weight:750; letter-spacing:.08em; }
.implementation-offerings__mark { position:relative; width:65px; height:50px; }
.implementation-offerings__mark::before { position:absolute; top:24px; left:6px; right:6px; height:2px; background:#94bcb0; content:""; }
.implementation-offerings__mark span { position:absolute; top:19px; width:12px; height:12px; border:2px solid #0d6972; border-radius:50%; background:#fff; }
.implementation-offerings__mark span:nth-child(1) { left:5px; }.implementation-offerings__mark span:nth-child(2) { left:27px; }.implementation-offerings__mark span:nth-child(3) { left:49px; }
.implementation-offerings__mark--setup span:nth-child(2) { top:13px; width:14px; height:23px; border-radius:3px; background:#e7f3ee; }
.implementation-offerings__mark--connect::after { position:absolute; top:6px; left:32px; width:2px; height:17px; background:#94bcb0; content:""; }
.implementation-offerings__mark--connect span:nth-child(2) { background:#0d6972; }
.implementation-offerings__note { max-width:75ch; margin:1.2rem 0 0; color:#52696d; font-size:.81rem; }
.implementation-fit { background:#eff6f3; }
.implementation-fit .text-link { margin-top:1.15rem; }
.implementation-delivery .inner-heading { max-width:70ch; }
.implementation-delivery .inner-heading h2 { max-width:33ch; }
.implementation-delivery__aside { display:flex; gap:.45rem 1rem; align-items:baseline; flex-wrap:wrap; margin-top:2.6rem; padding:1.25rem 0; border-top:1px solid #c9ded5; border-bottom:1px solid #c9ded5; }
.implementation-delivery__aside strong { color:#183d42; }
.implementation-delivery__aside p { max-width:80ch; margin:0; color:#425b60; font-size:.88rem; }
.implementation-contact { padding:clamp(3.5rem,6vw,5rem) 0; border-top:1px solid #bcd7cc; background:#e8f3ed; }
.implementation-contact__grid { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:2rem 4rem; }
.implementation-contact h2 { max-width:30ch; margin:0 0 .8rem; }
.implementation-contact p:not(.eyebrow) { max-width:57ch; margin:0; color:#425b60; }
.implementation-contact__action { display:grid; justify-items:start; gap:.7rem; }
.implementation-contact__action span { color:#52696d; font-size:.76rem; }
@media(max-width:850px) {
  .implementation-page .implementation-hero .inner-hero__grid { grid-template-columns:1fr; }
  .implementation-map { justify-self:start; max-width:650px; }
  .implementation-contact__grid { grid-template-columns:1fr; }
}
@media(max-width:620px) {
  .implementation-offerings article { grid-template-columns:52px minmax(0,1fr); align-items:start; gap:.8rem; padding:1.3rem 0; }
  .implementation-offerings__mark { transform:scale(.75); transform-origin:top left; }
  .implementation-offerings__tag { grid-column:2; justify-self:start; }
  .implementation-map__top span:last-child { display:none; }
  .implementation-contact__action .button { width:100%; }
}

/* The Scan page previews the structure of the decision document, without invented findings. */
.scan-hero .inner-hero__grid { grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); }
.scan-hero h1 { max-width:23ch; }
.scan-a4 { justify-self:end; width:100%; max-width:580px; border:1px solid #cadfd5; border-radius:10px; background:#fff; box-shadow:0 20px 55px rgba(16,69,68,.10); overflow:hidden; }
.scan-a4__top { display:flex; justify-content:space-between; gap:1rem; padding:.95rem 1.25rem; border-bottom:1px solid #d7e6df; color:#0d6972; font-size:.63rem; font-weight:780; letter-spacing:.075em; }
.scan-a4__top span:last-child { color:#647b7c; }
.scan-a4__body { padding:clamp(1.2rem,2.5vw,1.7rem); }
.scan-a4__title { padding-bottom:1rem; border-bottom:2px solid #0d6972; }
.scan-a4__title span,.scan-a4__conclusion span,.scan-a4__columns span,.scan-a4__decision span { display:block; color:#0d6972; font-size:.62rem; font-weight:780; letter-spacing:.07em; }
.scan-a4__title strong { display:block; margin:.28rem 0; color:#14242a; font-size:1.15rem; letter-spacing:-.03em; }
.scan-a4__title p { margin:0; color:#52696d; font-size:.73rem; }
.scan-a4__conclusion { margin:1rem 0; padding:.9rem 1rem; border-left:3px solid #0d6972; background:#eff7f2; }
.scan-a4__conclusion p { margin:.35rem 0 0; color:#28494b; font-size:.78rem; font-weight:620; line-height:1.45; }
.scan-a4__columns { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.scan-a4__columns > div { min-height:155px; padding:.85rem; border:1px solid #dce9e3; border-radius:5px; }
.scan-a4__columns strong { display:block; margin:.48rem 0 .3rem; color:#253f43; font-size:.76rem; line-height:1.35; }
.scan-a4__columns small,.scan-a4__decision small { display:block; color:#52696d; font-size:.68rem; line-height:1.4; }
.scan-a4__columns i { display:block; width:78%; height:3px; margin-top:.7rem; border-radius:2px; background:#dbe9e3; }
.scan-a4__columns i + i { width:55%; margin-top:.35rem; }
.scan-a4__decision { margin-top:.8rem; padding:.8rem 1rem; border:1px solid #aad1bf; border-radius:5px; background:#f5faf6; }
.scan-a4__decision strong { display:block; margin:.3rem 0; color:#183d42; font-size:.79rem; }
.scan-a4__foot { padding:.75rem 1.25rem; border-top:1px solid #dce9e3; color:#617777; font-size:.7rem; }
.scan-delivery__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 clamp(1.5rem,5vw,5rem); }
.scan-delivery__grid article { position:relative; min-height:175px; padding:1.5rem 0; border-top:1px solid #bed8cd; }
.scan-delivery__feature { position:relative; }
.scan-delivery__feature::before { position:absolute; top:-2px; left:0; width:5rem; height:3px; background:#0d6972; content:""; }
.scan-delivery__grid article span { color:#0d6972; font-size:.65rem; font-weight:760; letter-spacing:.08em; }
.scan-delivery__grid h3 { margin:.55rem 0; }
.scan-delivery__grid p { max-width:57ch; margin:0; color:#425b60; font-size:.91rem; }
.scan-delivery__feature h3 { font-size:1.35rem; }
.scan-research__steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1.5rem,4vw,4rem); border-top:2px solid #9dc8b8; }
.scan-research__steps > div { position:relative; padding-top:1.5rem; }
.scan-research__steps > div > span { position:absolute; top:-.38rem; width:.65rem; height:.65rem; border-radius:50%; background:#0d6972; box-shadow:0 0 0 5px #e7f3ee; }
.scan-research__steps h3 { margin:0 0 .5rem; }
.scan-research__steps p { max-width:37ch; margin:0; color:#425b60; font-size:.9rem; }
.scan-scope__aside { padding:1.5rem 0; border-top:1px solid #bad3c9; border-bottom:1px solid #bad3c9; }
.scan-scope__aside p { max-width:60ch; margin:0 0 1rem; color:#425b60; }
.scan-scope__aside strong { color:#183d42; }
@media(max-width:850px) {
  .scan-hero .inner-hero__grid { grid-template-columns:1fr; }
  .scan-a4 { justify-self:start; max-width:650px; }
}
@media(max-width:620px) {
  .scan-delivery__grid { grid-template-columns:1fr; }
  .scan-delivery__grid article { min-height:0; }
  .scan-a4__top span:last-child { display:none; }
  .scan-a4__columns { gap:.45rem; }
  .scan-a4__columns > div { padding:.6rem; }
  .scan-a4__columns strong { font-size:.7rem; }
  .scan-research__steps { grid-template-columns:1fr; gap:0; margin-left:.35rem; border-top:0; border-left:2px solid #9dc8b8; }
  .scan-research__steps > div { padding:0 0 1.5rem 1.3rem; }
  .scan-research__steps > div > span { top:.18rem; left:-.38rem; }
}

/* About Nuvoro: the brand's point of view, followed by observable working principles. */
.about-hero .inner-hero__grid { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); }
.about-hero h1 { max-width:24ch; }
.about-statement { justify-self:end; width:100%; max-width:560px; border:1px solid #c9ded5; border-radius:13px; overflow:hidden; background:#fff; box-shadow:0 20px 52px rgba(16,69,68,.08); }
.about-statement__head { display:flex; justify-content:space-between; gap:1rem; padding:1rem 1.25rem; border-bottom:1px solid #dce9e3; color:#0d6972; font-size:.64rem; font-weight:780; letter-spacing:.075em; }
.about-statement__head span:last-child { color:#687e7d; }
.about-statement__body { padding:clamp(2rem,4vw,3rem); background:radial-gradient(ellipse at 88% 90%,#e8f4ed 0%,#fff 68%); }
.about-statement__body p { max-width:23ch; margin:0 0 2.8rem; color:#18393d; font-size:clamp(1.45rem,2.1vw,1.9rem); font-weight:650; line-height:1.38; letter-spacing:-.035em; }
.about-statement__body em { color:#0d6972; font-style:normal; }
.about-statement__line { position:relative; display:flex; justify-content:space-between; gap:.5rem; padding-top:1.2rem; border-top:1px solid #9abfb1; color:#0d6972; font-size:.62rem; font-weight:760; letter-spacing:.07em; }
.about-statement__line span { position:relative; }
.about-statement__line span::before { position:absolute; top:-1.53rem; left:0; width:.55rem; height:.55rem; border-radius:50%; background:#0d6972; box-shadow:0 0 0 4px #ecf6f1; content:""; }
.about-statement__foot { padding:.9rem 1.25rem; border-top:1px solid #dce9e3; color:#52696d; font-size:.74rem; }
.about-purpose .inner-split { align-items:start; }
.about-purpose__copy { max-width:67ch; padding-top:.2rem; }
.about-purpose__copy p { margin:0 0 1.1rem; color:#425b60; font-size:1.02rem; }
.about-purpose__copy p:last-child { margin-bottom:0; }
.about-principles .inner-heading { max-width:68ch; }
.about-principles .inner-heading h2 { max-width:31ch; }
.about-principles__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 clamp(2rem,6vw,6rem); }
.about-principles__grid article { position:relative; min-height:210px; padding:1.5rem 0 1.8rem 2.4rem; border-top:1px solid #bad3c9; }
.about-principles__grid h3 { margin:0 0 .55rem; }
.about-principles__grid p { max-width:55ch; margin:0; color:#425b60; font-size:.91rem; }
.about-principles__symbol { position:absolute; top:1.4rem; left:0; display:grid; place-items:center; width:24px; height:24px; border:1px solid #b4d3c6; border-radius:50%; color:#0d6972; background:#f8fcf9; font-size:.8rem; font-weight:750; line-height:1; }
.about-collaboration .inner-split { align-items:start; }
.about-collaboration .inner-split > div:first-child p:not(.eyebrow) { max-width:53ch; }
.about-collaboration__routes { border-top:1px solid #b9d3c8; }
.about-collaboration__intro { margin:1.2rem 0 .1rem; color:#52696d; font-size:.87rem; }
.about-collaboration__routes > div { padding:1.25rem 0; border-bottom:1px solid #dce9e3; }
.about-collaboration__routes strong { color:#183d42; }
.about-collaboration__routes > div p { max-width:58ch; margin:.4rem 0 .75rem; color:#425b60; font-size:.9rem; }
.about-collaboration__routes a { color:#07545d; font-size:.87rem; font-weight:750; text-underline-offset:4px; }
@media(max-width:850px) {
  .about-hero .inner-hero__grid { grid-template-columns:1fr; }
  .about-statement { justify-self:start; max-width:650px; }
}
@media(max-width:620px) {
  .about-statement__head span:last-child { display:none; }
  .about-statement__body { padding:2rem 1.5rem; }
  .about-statement__line { font-size:.52rem; }
  .about-principles__grid { grid-template-columns:1fr; }
  .about-principles__grid article { min-height:0; }
}
