.site-header{background:var(--white);border-bottom:1px solid var(--line);position:relative;z-index:5}.header-inner{min-height:6rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;flex:none;text-decoration:none}.brand img{width:clamp(170px,20vw,235px);height:auto}.footer-brand span{color:var(--on-dark-accent)}.main-nav,.nav-links{display:flex;align-items:center;gap:clamp(.75rem,2vw,2rem)}.nav-links a{font-size:.86rem;text-decoration:none;font-weight:700;white-space:nowrap;padding:.8rem .1rem;border-bottom:2px solid transparent}.nav-links a:hover,.nav-links a[aria-current]{border-color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.2rem;background:var(--blue);color:var(--white);border:2px solid var(--blue);min-height:3.35rem;padding:.75rem 1.3rem;font-weight:800;text-decoration:none;line-height:1.2;cursor:pointer;transition:background .2s,border-color .2s}.button:hover{background:var(--blue-hover);border-color:var(--blue-hover)}.button-small{min-height:2.9rem;font-size:.85rem;white-space:nowrap}.button-light{background:var(--white);border-color:var(--white);color:var(--ink)}.button-light:hover{background:var(--tint);border-color:var(--tint)}.home-hero{padding-block:clamp(4rem,8vw,8rem);background:var(--white)}.home-hero-inner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(2rem,5vw,6rem);align-items:center}.hero-copy h1{max-width:13ch;margin-bottom:1.8rem}.hero-copy h1 em{color:var(--blue);font-style:normal}.hero-copy .lead{max-width:55ch}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.3rem;margin-top:2.25rem}.quiet-link{font-weight:700;text-decoration-thickness:2px;text-underline-offset:.3em}.hero-visual{aspect-ratio:4/5;background:var(--ink);color:var(--white);padding:clamp(1.4rem,3vw,2.6rem);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-top:8px solid #a71932}.visual-top,.visual-bottom{font-size:.85rem;font-weight:700}.visual-top{display:flex;justify-content:space-between;gap:1rem}.visual-top span{opacity:.65}.visual-rings{height:55%;position:relative;display:grid;place-items:center}.visual-rings::before,.visual-rings::after{content:"";position:absolute;border:1px solid #95b49c;border-radius:50%;aspect-ratio:1}.visual-rings::before{width:95%}.visual-rings::after{width:68%}.visual-rings span{position:absolute;z-index:1;background:var(--ink);padding:.15rem .5rem;font-size:.9rem}.visual-rings span:first-child{top:4%;left:7%}.visual-rings span:nth-child(2){right:0;top:46%}.visual-rings span:last-child{left:12%;bottom:8%}.visual-bottom{border-top:1px solid #6d9176;padding-top:1.3rem}.intro-line{background:var(--ink);color:var(--white);padding:2.1rem 0}.intro-line .shell{display:flex;justify-content:space-between;align-items:center;gap:2rem}.intro-line p{font-size:clamp(1.1rem,2vw,1.45rem);font-weight:700;margin:0}.intro-line span{white-space:nowrap;color:#d4e5d8;font-size:.9rem}.section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.section-head h2{max-width:14ch;margin-bottom:0}.section-head>p{max-width:35ch;color:var(--ink-soft);margin:0}.norm-list{border-top:1px solid var(--line)}.norm-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,3fr) auto;align-items:center;gap:1rem;padding:1.45rem 1rem;border-bottom:1px solid var(--line);text-decoration:none;transition:background .2s}.norm-row:hover{background:var(--white)}.norm-code{font-weight:800;color:var(--blue)}.norm-row strong,.norm-row small{display:block}.norm-row strong{font-size:1.2rem}.norm-row small{color:var(--ink-soft);font-size:.9rem}.row-arrow{font-size:1.5rem}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.steps li{border-top:2px solid var(--ink);padding-top:1.4rem}.steps li>span,.timeline li>span{font-weight:800;color:var(--blue);font-size:.8rem}.steps h3{margin:2rem 0 .5rem}.steps p{color:var(--ink-soft)}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,8vw,8rem)}.split>div:first-child h2{max-width:15ch}.split>div:last-child{font-size:1.1rem}.split>div:last-child p{color:var(--ink-soft)}.split>div:last-child .text-link{display:inline-block;margin-top:1rem}.other-services{background:var(--white)}.duo{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}.duo a{display:flex;flex-direction:column;justify-content:space-between;min-height:16rem;background:var(--tint);padding:2rem;text-decoration:none;transition:background .2s}.duo a:hover{background:var(--line)}.duo a>span{font-size:.85rem;font-weight:700}.duo strong{font-size:clamp(1.5rem,2.6vw,2.25rem);line-height:1.15;max-width:18ch}.duo b{float:right;font-size:1.4rem}.cta-band{background:var(--tint);color:var(--ink);border-top:1px solid var(--line);padding:clamp(3.5rem,6vw,6rem) 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}.cta-band .button-light{background:var(--blue);border-color:var(--blue);color:var(--white)}.cta-band .button-light:hover{background:var(--blue-hover);border-color:var(--blue-hover)}.cta-band p:last-child{color:var(--ink-soft)}.cta-band h2{max-width:15ch;margin-bottom:.6rem}.cta-band p:last-child{margin-bottom:0}.site-footer{background:var(--footer-bg);color:var(--white);padding-top:4rem}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;padding-bottom:4rem}.footer-top>div{display:flex;flex-direction:column;align-items:start}.footer-brand{font-size:1.8rem;font-weight:800;text-decoration:none;letter-spacing:-.07em}.footer-top p{max-width:35ch;color:#d4e5d8;margin-top:1.2rem}.footer-top h2{font-size:1rem;letter-spacing:0;margin-bottom:1rem;color:var(--on-dark-accent)}.footer-top a:not(.footer-brand){padding:.25rem 0;color:var(--on-dark-soft);text-decoration-color:transparent;transition:color .2s,text-decoration-color .2s}.footer-top a:not(.footer-brand):hover{color:var(--white);text-decoration-color:var(--on-dark-accent)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--footer-line);padding:1.25rem 0;font-size:.85rem;color:#d4e5d8}.breadcrumbs{display:flex;flex-wrap:wrap;gap:.7rem;padding-top:1.4rem;font-size:.85rem;color:var(--ink-soft)}.breadcrumbs a{color:var(--blue)}.page-hero{padding:clamp(3.5rem,7vw,6.5rem) 0;background:var(--white)}.page-hero h1{max-width:14ch;margin-bottom:1.5rem}.page-hero .lead{max-width:63ch}.page-hero .button{margin-top:1.4rem}.check-list{list-style:none;padding:0}.check-list li{border-top:1px solid var(--line);padding:.8rem 0}.check-list li::before{content:'→';color:var(--blue);font-weight:800;margin-right:.9rem}.number-list{list-style:none;padding:0;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin:3rem 0}.number-list li{counter-increment:step;border-top:2px solid var(--ink);padding-top:1rem}.number-list li::before{content:counter(step,decimal-leading-zero);display:block;color:var(--blue);font-weight:800;margin-bottom:2rem}.faq-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:1rem 0}.faq-list summary{cursor:pointer;font-weight:700;font-size:1.05rem;min-height:2.75rem}.faq-list p{color:var(--ink-soft)}.related{display:flex;flex-wrap:wrap;gap:1rem}.related-link{display:flex;justify-content:space-between;gap:2rem;padding:1rem 1.2rem;border:1px solid var(--line);min-width:12rem;text-decoration:none;font-weight:800}.related-link:hover{background:var(--white)}.timeline{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.timeline li{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding:2rem 0;border-bottom:1px solid var(--line)}.timeline h3{font-size:1.65rem;margin-bottom:.5rem}.timeline p{color:var(--ink-soft)}.form-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,7vw,7rem)}.form-layout h2{max-width:13ch}.contact-form{background:var(--white);padding:clamp(1.5rem,3vw,3rem);border:1px solid var(--line)}.form-intro{font-size:.9rem;color:var(--ink-soft)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.form-grid>label{display:flex;flex-direction:column;gap:.35rem;font-weight:700;font-size:.9rem}.form-grid input:not([type=checkbox]),.form-grid textarea{width:100%;padding:.8rem .9rem;min-height:3rem;border:1px solid #788b96;background:var(--white);color:var(--ink);border-radius:0}.form-grid textarea{resize:vertical}.form-grid .wide{grid-column:1/-1}.form-grid fieldset{border:1px solid var(--line);margin:0;padding:1rem}.form-grid legend{font-weight:700;padding:0 .3rem}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:.65rem;line-height:1.4;cursor:pointer}.check input{width:1.2rem;height:1.2rem;flex:none;margin:.1rem 0 0;accent-color:var(--blue)}.form-note{font-size:.85rem;color:var(--ink-soft);margin:1.4rem 0}.form-note a,.check a{color:var(--blue)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.prose{max-width:780px}.prose h2{font-size:1.8rem;margin-top:2.5rem}.prose p{color:var(--ink-soft)}
@media(max-width:1050px){.header-inner{flex-direction:column;align-items:stretch;gap:.5rem;padding-block:1rem}.main-nav{justify-content:space-between;gap:1rem}.nav-links{gap:.5rem 1rem}.nav-links a{font-size:.8rem}}
@media(max-width:760px){.header-inner{flex-direction:column;align-items:stretch;gap:1rem}.main-nav{flex-direction:column;align-items:stretch}.nav-links{justify-content:flex-start;flex-wrap:wrap;gap:.25rem 1rem}.main-nav .button{align-self:flex-start}.home-hero-inner,.split,.faq-layout,.form-layout{grid-template-columns:1fr}.hero-visual{aspect-ratio:1.4;max-width:580px}.intro-line .shell,.section-head,.cta-inner{align-items:flex-start;flex-direction:column}.intro-line span{white-space:normal}.steps,.number-list{grid-template-columns:1fr 1fr}.duo{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:520px){.hero-copy h1{font-size:clamp(2.8rem,12vw,4.2rem)}.norm-row{grid-template-columns:1fr auto}.norm-code{grid-column:1/-1}.norm-row small{font-size:.82rem}.steps,.number-list,.form-grid,.checkbox-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:1}.timeline li{grid-template-columns:3rem 1fr}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.hero-visual{aspect-ratio:1}}
.contact-methods{display:grid;gap:.7rem;margin-top:2rem}.contact-methods a{display:block;width:fit-content;color:var(--blue);font-weight:800;text-decoration-thickness:2px;text-underline-offset:.3em}.nav-links a{min-height:44px;display:inline-flex;align-items:center}
.about-grid{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(2rem,7vw,7rem)}.about-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.about-photo span{display:block;font-size:.82rem;font-weight:700;color:var(--ink-soft);padding-top:.6rem}.about-grid>div:last-child p:not(.eyebrow){font-size:1.12rem;color:var(--ink-soft)}
@media(max-width:760px){.about-grid{grid-template-columns:1fr}.about-photo{max-width:420px}}

/* The diagram tells its story once when it enters view. Without JS it stays readable. */
@media (prefers-reduced-motion: no-preference) {
  .hero-visual.is-animated .visual-rings::before,
  .hero-visual.is-animated .visual-rings::after {
    animation: ring-appear 950ms cubic-bezier(.2,.75,.2,1) both;
  }
  .hero-visual.is-animated .visual-rings::after { animation-delay: 260ms; }
  .hero-visual.is-animated .visual-rings span {
    animation: stage-appear 650ms cubic-bezier(.2,.75,.2,1) both;
  }
  .hero-visual.is-animated .visual-rings span:first-child { animation-delay: 420ms; }
  .hero-visual.is-animated .visual-rings span:nth-child(2) { animation-delay: 760ms; }
  .hero-visual.is-animated .visual-rings span:nth-child(3) { animation-delay: 1100ms; }
  .hero-visual.is-animated .visual-bottom { animation: stage-appear 650ms cubic-bezier(.2,.75,.2,1) 1400ms both; }
}
@keyframes ring-appear {
  from { opacity: 0; transform: scale(.72); }
  to { opacity: 1; transform: scale(1); }
}
@keyframes stage-appear {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Small accent arcs make the ongoing motion visible after the introduction. */
.visual-rings::before { border-top: 4px solid #f39aab; }
.visual-rings::after { border-right: 4px solid #89dea0; }
@media (prefers-reduced-motion: no-preference) {
  .hero-visual.is-animated .visual-rings::before {
    animation: ring-appear 950ms cubic-bezier(.2,.75,.2,1) both,
      orbit-clockwise 9s linear 950ms infinite;
  }
  .hero-visual.is-animated .visual-rings::after {
    animation: ring-appear 950ms cubic-bezier(.2,.75,.2,1) 260ms both,
      orbit-counterclockwise 12s linear 1210ms infinite;
  }
}
@keyframes orbit-clockwise {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes orbit-counterclockwise {
  from { transform: rotate(0deg); }
  to { transform: rotate(-360deg); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-visual .visual-rings::before,
  .hero-visual .visual-rings::after,
  .hero-visual .visual-rings span,
  .hero-visual .visual-bottom { animation: none !important; }
}

.scene-figure { margin: 2rem 0 0; }
.scene-figure img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.scene-figure figcaption,
.editorial-figure figcaption { margin-top: .6rem; color: var(--ink-soft); font-size: .82rem; }
.about-photo img { aspect-ratio: auto; object-fit: contain; }
.editorial-figure { margin: 0 0 clamp(2.5rem, 5vw, 4rem); }
.editorial-figure img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }

.wtta-notice { position: fixed; right: clamp(1rem, 3vw, 2rem); bottom: clamp(1rem, 3vw, 2rem); z-index: 30; display: none; width: min(420px, calc(100vw - 2rem)); padding: 1.15rem 1.25rem 1.2rem; background: #fffaf0; border: 1px solid rgba(201,147,50,.45); box-shadow: 0 18px 54px rgba(24,35,49,.18); }
.wtta-notice.is-visible { display: block; }
.wtta-notice p { margin: 0 2rem .85rem 0; max-width: 70ch; color: var(--ink); font-size: .95rem; line-height: 1.45; }
.wtta-notice a { color: var(--blue-hover); font-weight: 800; white-space: nowrap; text-underline-offset: .25em; }
.wtta-close { position: absolute; top: .55rem; right: .65rem; display: grid; width: 2rem; height: 2rem; place-items: center; border: 0; background: transparent; color: var(--ink-soft); cursor: pointer; font-size: 1.45rem; line-height: 1; }
.wtta-close:hover { color: var(--ink); }
.home-services { background: var(--white); }
.service-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.service-tiles a, .knowledge-link { display: flex; flex-direction: column; gap: 1.1rem; padding: clamp(1.3rem, 2vw, 2rem); border: 1px solid var(--line); border-top: 3px solid var(--blue); text-decoration: none; background: var(--paper); }
.service-tiles a:hover, .knowledge-link:hover { background: var(--tint); }
.service-tiles a > span:first-child, .knowledge-link > span:first-child { color: var(--blue); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.service-tiles strong { font-size: clamp(1.35rem, 2vw, 1.8rem); line-height: 1.15; letter-spacing: -.03em; }
.service-tiles a > span:last-child, .knowledge-link > span:last-child { margin-top: auto; color: var(--ink-soft); }
.service-tiles b, .knowledge-link b { color: var(--blue); }
.knowledge-link { max-width: 50rem; }
.knowledge-link strong { font-size: clamp(1.5rem, 2.5vw, 2.4rem); line-height: 1.2; letter-spacing: -.03em; }
.sna-steps { list-style: none; counter-reset: sna-step; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 3rem; padding: 0; margin: 2.5rem 0 0; }
.sna-steps li { counter-increment: sna-step; border-top: 1px solid var(--line); padding-top: 1.1rem; }
.sna-steps li::before { content: counter(sna-step, decimal-leading-zero); display: block; color: var(--blue); font-weight: 800; font-size: .85rem; margin-bottom: .8rem; }
.sna-steps h3 { margin-bottom: .55rem; }
.sna-steps p { color: var(--ink-soft); }
.article-body h2 { margin-top: 3rem; }
.article-body h2:first-child { margin-top: 0; }
.article-body a { color: var(--blue); text-underline-offset: .2em; }
.article-dates { list-style: none; padding: 0; margin: 1.5rem 0 0; border-top: 1px solid var(--line); }
.article-dates li { display: grid; grid-template-columns: minmax(11rem, .65fr) 1.35fr; gap: 1.5rem; padding: 1.3rem 0; border-bottom: 1px solid var(--line); }
.article-dates strong { color: var(--blue); }
.source-note { margin-top: 3.5rem; padding: 1.5rem; background: var(--tint); }
.source-note h2 { font-size: 1.35rem; margin: 0 0 .7rem; }
.source-note p { margin: 0; }
@media (max-width: 760px) {
  .wtta-notice { right: 1rem; bottom: 1rem; }
  .wtta-notice a { white-space: normal; }
  .service-tiles, .sna-steps { grid-template-columns: 1fr; }
  .article-dates li { grid-template-columns: 1fr; gap: .4rem; }
}

/* Homepage motion: short entrance cues and responsive hover feedback. */
@media (prefers-reduced-motion: no-preference) {
  .home-hero .hero-copy .eyebrow { animation: home-enter 600ms var(--motion-ease) 80ms both; }
  .home-hero .hero-copy h1 { animation: home-enter 780ms var(--motion-ease) 160ms both; }
  .home-hero .hero-copy .lead { animation: home-enter 720ms var(--motion-ease) 330ms both; }
  .home-hero .hero-actions { animation: home-enter 680ms var(--motion-ease) 470ms both; }
  .home-hero .hero-visual { animation: home-visual-enter 900ms var(--motion-ease) 220ms both; }
  .home-hero ~ .section .motion-ready { opacity: 0; transform: translateY(22px); }
  .home-hero ~ .section .motion-ready.is-in-view {
    animation: home-enter 760ms var(--motion-ease) both;
  }
  .norm-row .row-arrow { transition: transform 240ms var(--motion-ease); }
  .norm-row:hover .row-arrow, .norm-row:focus-visible .row-arrow { transform: translate(4px, -4px); }
  .service-tiles a { transition: transform 240ms var(--motion-ease), background 240ms ease; }
  .service-tiles a:hover, .service-tiles a:focus-visible { transform: translateY(-4px); }
}
@keyframes home-enter {
  from { opacity: 0; transform: translateY(22px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes home-visual-enter {
  from { opacity: 0; transform: translateY(16px) scale(.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

/* Editorial layout for the ISO and certification overview. */
.advice-hero { background: var(--white); padding-block: clamp(3.5rem, 7vw, 7rem); }
.advice-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); align-items: center; gap: clamp(2.5rem, 6vw, 6rem); }
.advice-hero-copy h1 { max-width: 12ch; margin-bottom: 1.7rem; font-size: clamp(3.4rem, 6.8vw, 6.5rem); }
.advice-hero-copy h1 span { color: var(--blue); }
.advice-hero-copy .lead { max-width: 55ch; }
.advice-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; margin-top: 2.3rem; }
.advice-hero-image { margin: 0; }
.advice-hero-image img { display: block; width: 100%; height: auto; aspect-ratio: 1.1; object-fit: cover; object-position: 42% center; }
.advice-hero-image figcaption { padding-top: .6rem; color: var(--ink-soft); font-size: .82rem; }
.advice-intro { background: var(--tint); padding-block: clamp(3.5rem, 6vw, 6rem); }
.advice-intro-grid { display: grid; grid-template-columns: 1.2fr .8fr; align-items: end; gap: clamp(2rem, 7vw, 7rem); }
.advice-intro-statement { margin: 0; max-width: 19ch; font-size: clamp(2.1rem, 3.6vw, 3.9rem); font-weight: 800; line-height: 1.14; letter-spacing: -.04em; }
.advice-intro-grid > div { max-width: 42ch; }
.advice-intro-grid > div p { color: var(--ink-soft); font-size: 1.1rem; }
.advice-section-heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 2rem; margin-bottom: clamp(2.5rem, 5vw, 5rem); }
.advice-section-heading h2 { margin: 0; }
.advice-section-heading > p { max-width: 38ch; color: var(--ink-soft); margin: 0; }
.advice-catalog { scroll-margin-top: 2rem; }
.advice-catalog-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: clamp(3rem, 7vw, 7rem); }
.advice-catalog-secondary { display: grid; align-content: start; gap: clamp(3rem, 5vw, 5rem); }
.advice-catalog-group { border-top: 2px solid var(--ink); }
.advice-group-heading { display: grid; grid-template-columns: 2.3rem 1fr; gap: 1rem; padding-block: 1.4rem 2rem; }
.advice-group-heading > span { color: var(--blue); font-size: .8rem; font-weight: 800; }
.advice-group-heading h3 { font-size: clamp(1.4rem, 2vw, 1.9rem); margin-bottom: .55rem; }
.advice-group-heading p { color: var(--ink-soft); margin: 0; }
.advice-norm-link { display: grid; grid-template-columns: minmax(6.8rem, .45fr) minmax(0, 1fr) auto; align-items: center; gap: 1rem; padding: 1.05rem .2rem; border-top: 1px solid var(--line); text-decoration: none; transition: color 180ms ease, padding-left 180ms ease; }
.advice-norm-link:last-child { border-bottom: 1px solid var(--line); }
.advice-norm-link:hover, .advice-norm-link:focus-visible { color: var(--blue); padding-left: .5rem; }
.advice-norm-link > span:first-child { color: var(--blue); font-size: .82rem; font-weight: 800; white-space: nowrap; }
.advice-norm-link strong { font-size: 1rem; line-height: 1.3; }
.advice-norm-link > span:last-child { font-size: 1.3rem; }
.advice-method { background: var(--ink); color: var(--white); padding-block: var(--space-section); }
.advice-method .eyebrow, .advice-method-steps li > span { color: var(--on-dark-accent); }
.advice-method-heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 2rem; margin-bottom: clamp(3rem, 5vw, 5rem); }
.advice-method-heading h2 { max-width: 16ch; margin: 0; }
.advice-method-heading > p { max-width: 42ch; color: var(--on-dark-soft); margin: 0; }
.advice-method-steps { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin: 0; padding: 0; }
.advice-method-steps li { border-top: 1px solid var(--on-dark-line); padding-top: 1.2rem; }
.advice-method-steps li > span { font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.advice-method-steps h3 { margin: 1.6rem 0 .6rem; font-size: clamp(1.5rem, 2.5vw, 2rem); }
.advice-method-steps p { color: var(--on-dark-soft); margin: 0; }
.advice-method-links { display: flex; flex-wrap: wrap; gap: 1.5rem 2.5rem; margin-top: 3rem; }
.advice-method-links a { color: var(--white); font-weight: 800; text-decoration-thickness: 2px; text-underline-offset: .3em; }
.advice-final { background: var(--tint); border-top: 1px solid var(--line); padding-block: clamp(3.5rem, 6vw, 6rem); }
.advice-final-inner { display: flex; align-items: center; justify-content: space-between; gap: 2.5rem; }
.advice-final h2 { max-width: 17ch; margin-bottom: .8rem; }
.advice-final p:last-child { color: var(--ink-soft); margin-bottom: 0; }
.advice-final .button { flex: none; }
@media (max-width: 760px) {
  .advice-hero-grid, .advice-intro-grid, .advice-section-heading, .advice-catalog-grid, .advice-method-heading { grid-template-columns: 1fr; }
  .advice-hero-image { max-width: 640px; }
  .advice-method-steps { grid-template-columns: 1fr; }
  .advice-method-steps h3 { margin-top: .8rem; }
  .advice-final-inner { align-items: flex-start; flex-direction: column; }
  .advice-final .button { flex: none; }
}
@media (max-width: 520px) {
  .advice-hero-copy h1 { font-size: clamp(3rem, 13vw, 4.2rem); }
  .advice-norm-link { grid-template-columns: minmax(0, 1fr) auto; gap: .3rem 1rem; }
  .advice-norm-link > span:first-child { grid-column: 1 / -1; }
}

/* ISO/HKZ/NEN/VCA redesign layer */
.site-header{position:sticky;top:0;background:rgba(246,248,246,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(215,221,214,.9)}
.header-inner{min-height:5.25rem}
.brand img{width:clamp(150px,18vw,210px);filter:saturate(.9) contrast(1.05)}
.nav-links a{color:var(--ink-soft);letter-spacing:0;border-bottom:2px solid transparent}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--ink);border-color:var(--amber)}
.button{background:var(--blue);border-color:var(--blue);border-radius:0;box-shadow:none}
.button:hover{background:var(--blue-hover);border-color:var(--blue-hover)}
.button-light{background:var(--white);border-color:var(--white);color:var(--ink)}
.home-hero,.page-hero,.advice-hero{background:rgba(255,255,255,.72);border-bottom:1px solid var(--line)}
.home-hero-inner{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr)}
.hero-copy h1,.advice-hero-copy h1,.page-hero h1{max-width:15ch}
.hero-copy h1 em,.advice-hero-copy h1 span{color:var(--blue-hover)}
.hero-visual{position:relative;background:linear-gradient(135deg,rgba(217,233,238,.65),transparent 48%),var(--white);color:var(--ink);border:1px solid var(--line);border-top:9px solid var(--steel);box-shadow:var(--shadow)}
.hero-visual::before{content:"";position:absolute;inset:1.4rem 1.4rem auto;height:9px;background:repeating-linear-gradient(90deg,var(--blue) 0 46px,var(--amber) 46px 64px,var(--steel) 64px 110px)}
.visual-top{padding-top:1.8rem;color:var(--ink-soft)}
.visual-bottom{border-top:1px solid var(--line);color:var(--steel)}
.visual-rings::before,.visual-rings::after{border-color:#9fb2ab}
.visual-rings::before{border-top-color:var(--amber)}
.visual-rings::after{border-right-color:var(--blue)}
.visual-rings span{background:var(--white);border:1px solid var(--line);box-shadow:0 8px 24px rgba(24,35,49,.08)}
.intro-line{
  background:var(--steel);
  color:var(--white);
  border-block:1px solid rgba(255,255,255,.08);
}
.intro-line .shell{
  min-height:7.5rem;
}
.intro-line p{
  max-width:42rem;
  font-size:clamp(1.15rem,1.8vw,1.45rem);
}
.intro-line span{
  color:var(--on-dark-soft);
  font-weight:700;
}
.section-head{border-bottom:1px solid var(--line);padding-bottom:1.6rem}
.norm-list,.timeline,.faq-list,.article-dates{background:rgba(255,255,255,.55)}
.norm-row{grid-template-columns:minmax(110px,.8fr) minmax(0,3fr) auto;background:rgba(255,255,255,.58)}
.norm-row:hover{background:var(--white);box-shadow:0 10px 30px rgba(24,35,49,.07)}
.norm-code,.steps li>span,.timeline li>span,.number-list li::before,.check-list li::before,.advice-norm-link>span:first-child,.advice-group-heading>span,.service-tiles a>span:first-child,.knowledge-link>span:first-child{color:var(--blue-hover)}
.service-tiles a,.knowledge-link,.contact-form,.related-link,.duo a{background:rgba(255,255,255,.78);border:1px solid var(--line);border-top:4px solid var(--blue);box-shadow:0 14px 36px rgba(24,35,49,.06)}
.service-tiles a:hover,.knowledge-link:hover,.duo a:hover,.related-link:hover{background:var(--white)}
.steps li,.number-list li,.advice-catalog-group,.advice-method-steps li{border-top-color:var(--steel)}
.advice-method{background:var(--steel)}
.advice-method .eyebrow,.advice-method-steps li>span{color:var(--on-dark-accent)}
.cta-band,.advice-final{background:var(--tint);border-block:1px solid var(--line)}
.cta-band .button-light,.advice-final .button{background:var(--blue);border-color:var(--blue);color:var(--white)}
.site-footer{background:var(--footer-bg)}
.footer-brand,.footer-top h2{letter-spacing:0}
.breadcrumbs{color:var(--ink-soft)}
.breadcrumbs a{color:var(--blue-hover);font-weight:700}
.page-hero .shell,.advice-hero-grid{position:relative}
.page-hero .shell::after{content:"AUDIT FILE";position:absolute;right:0;top:0;color:rgba(40,68,92,.08);font-weight:800;font-size:clamp(3rem,10vw,8rem);line-height:.8;pointer-events:none}
.advice-hero-image img,.scene-figure img,.editorial-figure img,.about-photo img{border:1px solid var(--line);box-shadow:var(--shadow)}
.contact-form input,.contact-form textarea,.form-grid input:not([type=checkbox]),.form-grid textarea{background:#fbfcfb;border:1px solid #b8c3bc}
.form-grid label{color:var(--steel)}
@media(max-width:760px){.home-hero-inner{grid-template-columns:1fr}.page-hero .shell::after{display:none}.hero-visual{max-width:560px}}

/* Prevent the homepage headline from intruding into the audit visual. */
.home-hero-inner{
  grid-template-columns:minmax(0,0.98fr) minmax(420px,0.82fr);
  gap:clamp(3rem,7vw,7.5rem);
}
.home-hero .hero-copy{
  min-width:0;
}
.home-hero .hero-copy h1{
  max-width:9.7ch;
  font-size:clamp(3.4rem,5.8vw,5.75rem);
  line-height:1.05;
}
.home-hero .hero-visual{
  width:min(100%,520px);
  justify-self:end;
}
@media(max-width:1180px){
  .home-hero-inner{
    grid-template-columns:minmax(0,1fr);
  }
  .home-hero .hero-copy h1{
    max-width:11ch;
    font-size:clamp(3.1rem,8vw,5.4rem);
  }
  .home-hero .hero-visual{
    justify-self:start;
    max-width:620px;
  }
}
@media(max-width:520px){
  .home-hero .hero-copy h1{
    max-width:9.5ch;
    font-size:clamp(2.8rem,13vw,4rem);
  }
}

/* Less campaign-like, more advisory practice. */
.home-hero{
  padding-block:clamp(3.5rem,6vw,6.5rem);
}
.home-hero-inner{
  grid-template-columns:minmax(0,0.92fr) minmax(360px,0.62fr);
  align-items:center;
  gap:clamp(3rem,6vw,6.5rem);
  max-width:var(--max);
  margin-inline:auto;
}
.home-hero .hero-copy h1{
  max-width:15ch;
  font-family:var(--font);
  font-size:clamp(2.35rem,3.45vw,3.75rem);
  line-height:1.12;
}
.home-hero .hero-copy .lead{
  max-width:46rem;
}
.home-hero .hero-visual{
  display:flex;
  width:min(100%,440px);
  min-height:0;
  aspect-ratio:4/4.6;
  justify-self:end;
  box-shadow:0 16px 42px rgba(24,35,49,.1);
}
.visual-rings{
  height:48%;
}
.visual-rings span{
  font-size:.82rem;
}
.section h2,
.section-head h2,
.split>div:first-child h2,
.cta-band h2,
.advice-method-heading h2,
.advice-final h2{
  font-family:var(--font);
  max-width:22ch;
}
.page-hero h1,
.advice-hero-copy h1{
  font-family:var(--font);
  font-size:clamp(2.5rem,4.8vw,4.6rem);
  max-width:18ch;
}
@media(max-width:1180px){
  .home-hero-inner{
    grid-template-columns:1fr;
  }
  .home-hero .hero-copy h1{
    max-width:16ch;
    font-size:clamp(2.35rem,6vw,3.8rem);
  }
  .home-hero .hero-visual{
    justify-self:start;
    max-width:520px;
  }
}
@media(max-width:520px){
  .home-hero .hero-copy h1{
    max-width:13ch;
    font-size:clamp(2.3rem,10vw,3.25rem);
  }
}

.audit-readiness{
  background:rgba(255,255,255,.62);
}
.audit-readiness-grid{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:center;
}
.audit-readiness-copy h2{
  max-width:17ch;
}
.audit-readiness-copy p:not(.eyebrow){
  color:var(--ink-soft);
  font-size:1.08rem;
}
.audit-file-visual{
  position:relative;
  min-height:430px;
}
.audit-file-card{
  min-height:330px;
  padding:2rem;
  border:1px solid var(--line);
  background:linear-gradient(135deg,rgba(217,233,238,.52),transparent 52%),var(--white);
  box-shadow:0 20px 54px rgba(24,35,49,.1);
}
.audit-file-bar{
  height:8px;
  margin-bottom:2rem;
  background:repeating-linear-gradient(90deg,var(--blue) 0 48px,var(--amber) 48px 66px,var(--steel) 66px 116px);
}
.audit-file-label{
  display:block;
  color:var(--ink-soft);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.audit-file-card h3{
  margin:.9rem 0 .55rem;
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:1.04;
}
.audit-file-card p{
  color:var(--ink-soft);
}
.audit-check-card{
  position:absolute;
  right:-1.5rem;
  bottom:2rem;
  width:min(380px,62%);
  padding:1.5rem;
  background:var(--steel);
  color:var(--white);
  box-shadow:0 18px 46px rgba(24,35,49,.18);
}
.audit-check-card>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1rem;
  color:rgba(255,255,255,.78);
}
.audit-check-card strong{
  color:var(--white);
  font-size:1.65rem;
}
.audit-check-card ul{
  display:grid;
  gap:.72rem;
  margin:0;
  padding:0;
  list-style:none;
}
.audit-check-card li{
  position:relative;
  padding-left:1.55rem;
  font-weight:700;
}
.audit-check-card li::before{
  content:"";
  position:absolute;
  left:0;
  top:.3rem;
  width:.85rem;
  height:.85rem;
  border:2px solid #bfe5d0;
  background:linear-gradient(135deg,transparent 45%,#bfe5d0 46% 56%,transparent 57%);
}
.audit-tabs{
  position:absolute;
  left:2rem;
  bottom:.25rem;
  display:flex;
  gap:.45rem;
  padding:.55rem;
  border:1px solid var(--line);
  background:var(--white);
  box-shadow:0 14px 36px rgba(24,35,49,.08);
}
.audit-tabs span{
  padding:.65rem .8rem;
  background:#eef3f1;
  color:var(--steel);
  font-weight:800;
  font-size:.84rem;
}
@media(max-width:920px){
  .audit-readiness-grid{
    grid-template-columns:1fr;
  }
  .audit-file-visual{
    max-width:720px;
  }
  .audit-check-card{
    right:0;
  }
}
@media(max-width:560px){
  .audit-file-visual{
    min-height:560px;
  }
  .audit-check-card{
    position:relative;
    width:100%;
    right:auto;
    bottom:auto;
    margin-top:1rem;
  }
  .audit-tabs{
    left:1rem;
    bottom:0;
    max-width:calc(100% - 2rem);
    overflow:auto;
  }
}

.home-services{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(234,242,239,.38));
}
.services-intro{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(280px,.6fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:end;
  margin-bottom:clamp(2rem,4vw,3.5rem);
  padding-bottom:1.6rem;
  border-bottom:1px solid var(--line);
}
.services-intro .eyebrow{
  grid-column:1/-1;
  margin-bottom:-.8rem;
}
.services-intro h2{
  max-width:16ch;
  margin:0;
}
.services-intro p:not(.eyebrow){
  max-width:38rem;
  margin:0;
  color:var(--ink-soft);
}
.home-services .service-tiles{
  grid-template-columns:1.1fr 1.1fr .9fr;
  gap:1rem;
}
.home-services .service-tiles a{
  min-height:260px;
  padding:1.7rem;
  border-top:0;
  border-left:5px solid var(--blue);
  background:rgba(255,255,255,.82);
}
.home-services .service-tiles a:nth-child(2){
  border-left-color:var(--steel);
}
.home-services .service-tiles a:nth-child(3){
  border-left-color:var(--amber);
}
.home-services .service-tiles .service-code{
  width:fit-content;
  padding:.35rem .55rem;
  background:#eef3f1;
  color:var(--blue-hover);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.home-services .service-tiles strong{
  max-width:16ch;
  margin-top:.7rem;
}
.home-services .service-tiles a>span:last-child{
  max-width:31ch;
  line-height:1.55;
}
.why-approach{
  background:rgba(255,255,255,.72);
}
.why-approach .split{
  align-items:center;
}
.why-approach .scene-figure{
  max-width:520px;
}
.why-approach .split>div:last-child{
  padding-top:1rem;
  border-top:2px solid var(--line);
}
.why-approach .split>div:last-child p:first-child{
  font-size:1.18rem;
  color:var(--ink);
}
.digital-services{
  background:var(--steel);
  color:var(--white);
}
.digital-grid{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(420px,1.1fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:start;
}
.digital-copy{
  position:sticky;
  top:7rem;
}
.digital-copy .eyebrow{
  color:var(--on-dark-accent);
}
.digital-copy h2{
  max-width:14ch;
}
.digital-copy p{
  color:var(--on-dark-soft);
  font-size:1.08rem;
}
.digital-copy .button{
  margin-top:1.2rem;
  background:var(--white);
  border-color:var(--white);
  color:var(--ink);
}
.digital-copy .button:hover{
  background:var(--tint);
  border-color:var(--tint);
}
.digital-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.digital-cards article{
  min-height:220px;
  padding:1.5rem;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.07);
  transition:transform .28s ease,background .28s ease,border-color .28s ease;
}
.digital-cards article:hover{
  transform:translateY(-4px);
  background:rgba(255,255,255,.11);
  border-color:rgba(191,229,208,.55);
}
.digital-cards span{
  display:inline-grid;
  min-width:3rem;
  min-height:3rem;
  place-items:center;
  margin-bottom:2.2rem;
  border:1px solid rgba(191,229,208,.55);
  color:var(--on-dark-accent);
  font-weight:800;
}
.digital-cards h3{
  margin-bottom:.7rem;
  color:var(--white);
}
.digital-cards p{
  margin:0;
  color:var(--on-dark-soft);
}
.advice-hero-refined .advice-hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);
}
.advice-hero-refined .advice-hero-copy h1{
  max-width:17ch;
}
.advice-proof-panel{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:0;
  padding:1.6rem;
  border:1px solid var(--line);
  border-top:8px solid var(--steel);
  background:linear-gradient(135deg,rgba(217,233,238,.55),transparent 54%),var(--white);
  box-shadow:var(--shadow);
}
.advice-proof-panel>span{
  display:block;
  color:var(--blue-hover);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.advice-proof-panel ol{
  counter-reset:proof-step;
  display:grid;
  gap:.85rem;
  margin:1.25rem 0 0;
  padding:0;
  list-style:none;
  position:relative;
}
.advice-proof-panel ol::before{
  content:"";
  position:absolute;
  left:1.1rem;
  top:2.2rem;
  bottom:2.2rem;
  width:1px;
  background:var(--line);
}
.advice-proof-panel li{
  counter-increment:proof-step;
  position:relative;
  padding:.2rem .2rem .2rem 3.25rem;
  color:var(--ink);
  transition:transform .28s ease,background .28s ease;
}
.advice-proof-panel li::before{
  content:counter(proof-step,decimal-leading-zero);
  position:absolute;
  left:0;
  top:.1rem;
  display:grid;
  width:2.2rem;
  height:2.2rem;
  place-items:center;
  border:1px solid var(--line);
  background:#eef3f1;
  color:var(--blue-hover);
  font-size:.76rem;
  font-weight:800;
  transition:background .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease;
}
.advice-proof-panel strong{
  display:block;
  margin-bottom:.25rem;
  font-size:1.05rem;
}
.advice-proof-panel p{
  margin:0;
  color:var(--ink-soft);
  font-size:.95rem;
  line-height:1.45;
}
.advice-proof-panel li:hover{
  transform:translateX(4px);
}
.advice-proof-panel li:hover::before{
  background:var(--blue);
  border-color:var(--blue);
  color:var(--white);
  box-shadow:0 0 0 7px rgba(47,125,90,.12);
}
.advice-proof-panel.is-animated li:nth-child(1)::before{animation:proof-pulse .7s ease .15s both}
.advice-proof-panel.is-animated li:nth-child(2)::before{animation:proof-pulse .7s ease .65s both}
.advice-proof-panel.is-animated li:nth-child(3)::before{animation:proof-pulse .7s ease 1.15s both}
@keyframes proof-pulse{
  0%{background:#eef3f1;border-color:var(--line);color:var(--blue-hover);box-shadow:none}
  45%{background:var(--amber);border-color:var(--amber);color:var(--ink);box-shadow:0 0 0 7px rgba(201,147,50,.16)}
  100%{background:var(--blue);border-color:var(--blue);color:var(--white);box-shadow:none}
}
.advice-catalog{
  background:rgba(255,255,255,.64);
}
.advice-catalog-grid{
  gap:1.2rem;
}
.advice-catalog-group{
  padding:1.3rem;
  border:1px solid var(--line);
  border-top:5px solid var(--blue);
  background:rgba(255,255,255,.82);
  box-shadow:0 14px 36px rgba(24,35,49,.06);
}
.advice-catalog-secondary{
  gap:1.2rem;
}
.advice-catalog-secondary .advice-catalog-group:first-child{
  border-top-color:var(--steel);
}
.advice-catalog-secondary .advice-catalog-group:last-child{
  border-top-color:var(--amber);
}
.advice-group-heading{
  padding-block:.2rem 1.2rem;
}
.advice-group-heading>span{
  display:grid;
  width:2.2rem;
  height:2.2rem;
  place-items:center;
  background:#eef3f1;
}
.advice-norm-link{
  padding:1rem .15rem;
}
.advice-norm-link:hover,
.advice-norm-link:focus-visible{
  background:#f8fbf9;
  color:var(--ink);
  padding-left:.65rem;
}
.advice-method{
  background:var(--steel);
  position:relative;
  overflow:hidden;
}
.advice-method::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.06),transparent 42%);
  pointer-events:none;
}
.advice-method>.shell{
  position:relative;
}
.advice-method-steps li{
  padding:1.25rem;
  border:1px solid rgba(255,255,255,.16);
  border-top:4px solid var(--on-dark-accent);
  background:rgba(255,255,255,.06);
}
.advice-method-links a{
  color:var(--on-dark-accent);
}
.advice-final{
  background:linear-gradient(135deg,rgba(217,233,238,.6),rgba(234,242,239,.8));
}
.advice-final-inner{
  padding:1.2rem 0;
}
.sna-hero .page-hero h1{max-width:none}
.sna-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:center;
}
.sna-hero-panel{
  padding:1.5rem;
  border:1px solid var(--line);
  border-top:8px solid var(--steel);
  background:linear-gradient(135deg,rgba(217,233,238,.55),transparent 54%),var(--white);
  box-shadow:var(--shadow);
}
.sna-inspection-visual{
  position:relative;
  padding:1.5rem;
  border:1px solid var(--line);
  border-top:8px solid var(--steel);
  background:linear-gradient(135deg,rgba(217,233,238,.55),transparent 54%),var(--white);
  box-shadow:var(--shadow);
}
.sna-inspection-visual::before{
  content:"";
  display:block;
  height:8px;
  margin-bottom:1.4rem;
  background:repeating-linear-gradient(90deg,var(--blue) 0 42px,var(--amber) 42px 58px,var(--steel) 58px 104px);
}
.sna-visual-top{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  color:var(--ink-soft);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.sna-visual-top strong{
  color:var(--blue-hover);
}
.sna-score{
  display:flex;
  align-items:end;
  gap:.75rem;
  margin:1.6rem 0;
}
.sna-score strong{
  font-size:clamp(3.5rem,7vw,5.5rem);
  line-height:.8;
}
.sna-score span{
  max-width:9ch;
  color:var(--ink-soft);
  font-weight:800;
  line-height:1.1;
}
.sna-inspection-visual ul{
  display:grid;
  gap:.65rem;
  margin:0;
  padding:0;
  list-style:none;
}
.sna-inspection-visual li{
  position:relative;
  padding:.7rem .7rem .7rem 2.1rem;
  border:1px solid var(--line);
  background:rgba(255,255,255,.78);
  font-weight:700;
  transition:transform .28s ease,background .28s ease,border-color .28s ease;
}
.sna-inspection-visual li::before{
  content:"";
  position:absolute;
  left:.75rem;
  top:1rem;
  width:.75rem;
  height:.75rem;
  border:2px solid var(--blue);
  background:linear-gradient(135deg,transparent 45%,var(--blue) 46% 56%,transparent 57%);
  transition:box-shadow .28s ease,background .28s ease,border-color .28s ease;
}
.sna-inspection-visual li:hover{
  transform:translateX(4px);
  background:var(--white);
  border-color:rgba(47,125,90,.35);
}
.sna-inspection-visual li:hover::before{
  box-shadow:0 0 0 7px rgba(47,125,90,.12);
}
.sna-inspection-visual.is-animated li:nth-child(1){animation:sna-check .55s ease .15s both}
.sna-inspection-visual.is-animated li:nth-child(2){animation:sna-check .55s ease .35s both}
.sna-inspection-visual.is-animated li:nth-child(3){animation:sna-check .55s ease .55s both}
.sna-inspection-visual.is-animated li:nth-child(4){animation:sna-check .55s ease .75s both}
.sna-inspection-visual.is-animated li:nth-child(5){animation:sna-check .55s ease .95s both}
@keyframes sna-check{
  from{opacity:.55;transform:translateX(-8px)}
  to{opacity:1;transform:translateX(0)}
}
.sna-hero-panel>span{
  display:block;
  margin-bottom:1.4rem;
  color:var(--blue-hover);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.sna-hero-panel ul{
  display:grid;
  gap:.9rem;
  margin:0;
  padding:0;
  list-style:none;
}
.sna-hero-panel li{
  position:relative;
  padding-left:1.55rem;
  font-weight:700;
}
.sna-hero-panel li::before{
  content:"";
  position:absolute;
  left:0;
  top:.38rem;
  width:.82rem;
  height:.82rem;
  border:2px solid var(--blue);
  background:linear-gradient(135deg,transparent 45%,var(--blue) 46% 56%,transparent 57%);
}
.sna-norms{
  background:rgba(255,255,255,.66);
}
.sna-norm-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.sna-norm-cards article{
  padding:1.5rem;
  border:1px solid var(--line);
  border-left:5px solid var(--blue);
  background:rgba(255,255,255,.82);
  box-shadow:0 14px 36px rgba(24,35,49,.06);
}
.sna-norm-cards article:nth-child(2){
  border-left-color:var(--steel);
}
.sna-norm-cards span{
  display:inline-block;
  margin-bottom:1.8rem;
  padding:.35rem .55rem;
  background:#eef3f1;
  color:var(--blue-hover);
  font-size:.76rem;
  font-weight:800;
}
.sna-norm-cards p{
  color:var(--ink-soft);
}
.sna-note{
  margin:1.5rem 0 0;
  padding:1rem 1.2rem;
  background:#fffaf0;
  border:1px solid rgba(201,147,50,.36);
}
.sna-steps li{
  position:relative;
  background:rgba(255,255,255,.72);
  padding:1.4rem;
  border:1px solid var(--line);
  border-top:0;
  box-shadow:0 10px 28px rgba(24,35,49,.05);
  transition:transform .28s ease,box-shadow .28s ease;
}
.sna-steps li:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(24,35,49,.1);
}
.sna-steps li::before{
  margin-bottom:1.1rem;
}
.sna-steps.is-animated li{
  animation:sna-step-in .65s var(--motion-ease) both;
}
.sna-steps.is-animated li:nth-child(1){animation-delay:.05s}
.sna-steps.is-animated li:nth-child(2){animation-delay:.17s}
.sna-steps.is-animated li:nth-child(3){animation-delay:.29s}
.sna-steps.is-animated li:nth-child(4){animation-delay:.41s}
.sna-steps.is-animated li:nth-child(5){animation-delay:.53s}
@keyframes sna-step-in{
  from{opacity:.55;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
.sna-process{
  background:rgba(255,255,255,.72);
}
.it-hero{
  padding-block:clamp(4rem,7vw,7.5rem);
  background:radial-gradient(circle at 80% 16%,rgba(191,229,208,.26),transparent 28%),var(--steel);
  color:var(--white);
}
.it-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.88fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:center;
}
.it-hero-copy .eyebrow{color:var(--on-dark-accent)}
.it-hero-copy h1{max-width:14ch;color:var(--white)}
.it-hero-copy .lead{color:var(--on-dark-soft);max-width:48rem}
.it-hero-copy .text-link{color:var(--on-dark-accent)}
.it-system-visual{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  box-shadow:0 28px 70px rgba(0,0,0,.22);
  overflow:hidden;
}
.it-window-bar{
  display:flex;
  gap:.45rem;
  padding:1rem;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.it-window-bar span{
  width:.7rem;
  height:.7rem;
  border-radius:50%;
  background:var(--on-dark-accent);
}
.it-dashboard{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  min-height:360px;
}
.it-dashboard aside{
  display:grid;
  align-content:start;
  gap:.65rem;
  padding:1.2rem;
  border-right:1px solid rgba(255,255,255,.14);
}
.it-dashboard aside strong{margin-bottom:.8rem}
.it-dashboard aside button{
  padding:.6rem .7rem;
  border:0;
  background:rgba(255,255,255,.08);
  color:var(--on-dark-soft);
  font-size:.82rem;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  transition:background .25s ease,color .25s ease,transform .25s ease;
}
.it-dashboard aside button:hover,
.it-dashboard aside button.is-active{
  background:rgba(191,229,208,.18);
  color:var(--white);
  transform:translateX(3px);
}
.it-dashboard main{
  display:grid;
  align-content:space-between;
  gap:1rem;
  padding:1.2rem;
}
.it-status{
  display:flex;
  justify-content:space-between;
  padding:1rem;
  background:rgba(255,255,255,.1);
}
.it-status strong{color:var(--on-dark-accent)}
.it-flow{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:.75rem;
}
.it-flow button{
  min-height:5rem;
  display:grid;
  place-items:center;
  border:1px solid rgba(191,229,208,.38);
  background:rgba(255,255,255,.04);
  color:var(--white);
  font-weight:800;
  text-align:center;
  padding:.75rem;
  cursor:pointer;
  transition:background .25s ease,transform .25s ease,border-color .25s ease;
}
.it-flow button:hover,
.it-flow button:focus-visible,
.it-flow button.is-active{
  transform:translateY(-3px);
  background:rgba(191,229,208,.18);
  border-color:rgba(191,229,208,.72);
}
.it-widget{
  display:grid;
  gap:.5rem;
  min-height:9rem;
  padding:1rem;
  border:1px solid rgba(191,229,208,.3);
  background:rgba(255,255,255,.08);
}
.it-widget span{
  color:var(--on-dark-accent);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.it-widget strong{
  color:var(--white);
  line-height:1.2;
}
.it-widget p{
  margin:0;
  color:var(--on-dark-soft);
  line-height:1.45;
}
.it-services{background:rgba(255,255,255,.68)}
.it-service-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1rem;
}
.it-service-grid article{
  min-height:260px;
  padding:1.5rem;
  border:1px solid var(--line);
  border-top:5px solid var(--blue);
  background:rgba(255,255,255,.82);
  box-shadow:0 14px 36px rgba(24,35,49,.06);
  transition:transform .28s ease,box-shadow .28s ease;
}
.it-service-grid article:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 48px rgba(24,35,49,.1);
}
.it-service-grid article:nth-child(2){border-top-color:var(--steel)}
.it-service-grid article:nth-child(3){border-top-color:var(--amber)}
.it-service-grid article:nth-child(4){border-top-color:var(--blue-hover)}
.it-service-grid article:nth-child(5){border-top-color:#7ca6b8}
.it-service-grid span{
  color:var(--blue-hover);
  font-weight:800;
  font-size:.82rem;
}
.it-service-grid h3{margin:2.4rem 0 .8rem}
.it-service-grid p{color:var(--ink-soft)}
.it-process{
  background:var(--paper);
}
.it-process-grid{
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(360px,1fr);
  gap:clamp(2.5rem,6vw,6rem);
}
.it-process ol{
  display:grid;
  gap:.8rem;
  margin:0;
  padding:0;
  list-style:none;
}
.it-process li{
  padding:1rem 1.2rem;
  border-left:4px solid var(--blue);
  background:var(--white);
  box-shadow:0 10px 30px rgba(24,35,49,.05);
}
.it-process li span{
  display:block;
  margin-bottom:.35rem;
  color:var(--blue-hover);
  font-weight:800;
}
.it-process li p{margin:0;color:var(--ink-soft)}
@media (prefers-reduced-motion:no-preference){
  .it-flow button{animation:it-panel 4s ease-in-out infinite}
  .it-flow button:nth-child(2){animation-delay:.35s}
  .it-flow button:nth-child(3){animation-delay:.7s}
}
@keyframes it-panel{
  0%,100%{background:rgba(255,255,255,.04)}
  45%{background:rgba(191,229,208,.16)}
}
@media(max-width:760px){
  .button,
  .button-small,
  .header-cta{
    max-width:100%;
    white-space:normal;
    text-align:center;
  }
  .hero-actions,
  .advice-hero-actions{
    align-items:flex-start;
  }
  .nav-links a{
    white-space:normal;
  }
  .service-tiles strong,
  .it-service-grid h3,
  .digital-cards h3,
  .standard-grid h3{
    max-width:100%;
  }
}
@media(max-width:900px){
  .sna-hero-grid,
  .sna-norm-cards{
    grid-template-columns:1fr;
  }
  .it-hero-grid,
  .it-process-grid{
    grid-template-columns:1fr;
  }
  .it-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:560px){
  .it-dashboard{
    grid-template-columns:1fr;
  }
  .it-dashboard aside{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.14);
  }
  .it-flow,
  .it-service-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:900px){
  .services-intro,
  .home-services .service-tiles{
    grid-template-columns:1fr;
  }
  .services-intro .eyebrow{
    margin-bottom:0;
  }
  .home-services .service-tiles a{
    min-height:0;
  }
  .digital-grid,
  .digital-cards{
    grid-template-columns:1fr;
  }
  .digital-copy{
    position:static;
  }
  .digital-cards article{
    min-height:0;
  }
  .advice-hero-refined .advice-hero-grid{
    grid-template-columns:1fr;
  }
  .advice-proof-panel{
    min-height:0;
  }
}

.steps{
  position:relative;
  isolation:isolate;
}
.steps::before,
.steps::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  height:2px;
  pointer-events:none;
}
.steps::before{
  right:0;
  background:rgba(40,68,92,.18);
}
.steps::after{
  right:.43rem;
  left:.43rem;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg,var(--blue) 0%,var(--blue) 34%,var(--amber) 66%,var(--blue-hover) 100%);
}
.steps li{
  position:relative;
  border-top:0;
  padding:1.55rem 1.1rem 1.25rem 0;
  transition:transform .28s ease,color .28s ease;
}
.steps li::before{
  content:"";
  position:absolute;
  top:-.42rem;
  left:0;
  width:.86rem;
  height:.86rem;
  border:2px solid var(--steel);
  background:var(--paper);
  transform:rotate(45deg);
  z-index:1;
  transition:background .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.steps li>span{
  display:inline-grid;
  min-width:2.35rem;
  min-height:2.35rem;
  place-items:center;
  margin-bottom:1.2rem;
  border:1px solid var(--line);
  background:var(--white);
  transition:background .28s ease,border-color .28s ease,color .28s ease,transform .28s ease;
}
.steps h3{
  margin:0 0 .55rem;
  transition:color .28s ease;
}
.steps p{
  transition:color .28s ease;
}
.steps li:hover,
.steps li:focus-within{
  transform:translateY(-4px);
}
.steps li:hover::before,
.steps li:focus-within::before{
  background:var(--blue);
  border-color:var(--blue);
  box-shadow:0 0 0 8px rgba(47,125,90,.12);
}
.steps li:hover>span,
.steps li:focus-within>span{
  background:var(--steel);
  border-color:var(--steel);
  color:var(--white);
  transform:translateY(-2px);
}
.steps li:hover h3,
.steps li:focus-within h3{
  color:var(--blue-hover);
}
.steps li:hover p,
.steps li:focus-within p{
  color:var(--ink);
}
.steps.is-running::after{
  animation: process-line 4.2s cubic-bezier(.2,.75,.2,1) forwards;
}
.steps.is-running li:nth-child(1)::before{animation:process-dot 700ms ease .2s both}
.steps.is-running li:nth-child(2)::before{animation:process-dot 700ms ease 1.2s both}
.steps.is-running li:nth-child(3)::before{animation:process-dot 700ms ease 2.2s both}
.steps.is-running li:nth-child(4)::before{animation:process-dot 700ms ease 3.2s both}
@keyframes process-line{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}
@keyframes process-dot{
  0%{background:var(--paper);border-color:var(--steel);box-shadow:none}
  45%{background:var(--amber);border-color:var(--amber);box-shadow:0 0 0 8px rgba(201,147,50,.16)}
  100%{background:var(--blue);border-color:var(--blue);box-shadow:none}
}
@media(max-width:760px){
  .steps::before,
  .steps::after{
    display:none;
  }
  .steps li{
    border-left:2px solid rgba(40,68,92,.18);
    padding-left:1.2rem;
  }
  .steps li::before{
    top:1.7rem;
    left:-.48rem;
  }
}

.about-hero{
  padding:clamp(4rem,8vw,7rem) 0;
  background:rgba(255,255,255,.74);
  border-bottom:1px solid var(--line);
}
.about-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:center;
}
.about-hero h1{
  font-family:var(--font);
  font-size:clamp(2.8rem,5vw,5.1rem);
  max-width:14ch;
  line-height:1.02;
}
.about-hero .lead{
  max-width:58ch;
}
.about-file-card{
  position:relative;
  padding:clamp(1.5rem,3vw,2.4rem);
  background:linear-gradient(135deg,rgba(217,233,238,.68),transparent 45%),var(--white);
  border:1px solid var(--line);
  border-top:8px solid var(--steel);
  box-shadow:var(--shadow);
}
.file-stripe{
  height:8px;
  margin-bottom:2.1rem;
  background:repeating-linear-gradient(90deg,var(--blue) 0 44px,var(--amber) 44px 62px,var(--steel) 62px 108px);
}
.about-file-card h2{
  font-family:var(--font);
  font-size:clamp(1.7rem,2.4vw,2.45rem);
  max-width:13ch;
}
.about-file-card ul{
  display:grid;
  gap:.85rem;
  padding:0;
  margin:2rem 0 0;
  list-style:none;
}
.about-file-card li{
  display:grid;
  grid-template-columns:2.8rem minmax(0,1fr);
  gap:.25rem .9rem;
  padding:.95rem 0;
  border-top:1px solid var(--line);
}
.about-file-card li span{
  grid-row:1/3;
  color:var(--blue-hover);
  font-weight:800;
}
.about-file-card li strong,
.about-file-card li small{
  display:block;
}
.about-file-card li small{
  color:var(--ink-soft);
}
.about-profile-section{
  background:var(--paper);
}
.about-profile{
  display:grid;
  grid-template-columns:minmax(260px,.78fr) minmax(0,1fr);
  gap:clamp(2.5rem,7vw,7rem);
  align-items:center;
}
.about-portrait{
  margin:0;
}
.about-portrait img{
  display:block;
  width:100%;
  height:auto;
  max-height:620px;
  object-fit:contain;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:var(--white);
}
.about-profile-copy h2,
.about-principles h2,
.about-digital-grid h2{
  font-family:var(--font);
  max-width:17ch;
}
.about-profile-copy p:not(.eyebrow),
.about-digital-grid p,
.about-region-inner p{
  color:var(--ink-soft);
  font-size:1.08rem;
}
.about-proof-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.8rem;
  margin-top:2.2rem;
}
.about-proof-grid div{
  min-height:8.8rem;
  padding:1rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:var(--white);
  border:1px solid var(--line);
  border-top:4px solid var(--blue);
}
.about-proof-grid div:nth-child(2){border-top-color:var(--amber)}
.about-proof-grid div:nth-child(3){border-top-color:var(--steel)}
.about-proof-grid span{
  color:var(--blue-hover);
  font-size:.78rem;
  font-weight:800;
}
.about-proof-grid strong{
  font-size:1.05rem;
  line-height:1.25;
}
.about-principles-section{
  background:var(--steel);
  color:var(--white);
}
.about-principles{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(2rem,6vw,5rem);
}
.about-principles .eyebrow,
.principle-list span{
  color:var(--on-dark-accent);
}
.principle-list{
  display:grid;
  gap:0;
  border-top:1px solid rgba(255,255,255,.18);
}
.principle-list article{
  display:grid;
  grid-template-columns:3.2rem minmax(0,1fr);
  gap:.3rem 1rem;
  padding:1.45rem 0;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.principle-list span{
  grid-row:1/3;
  font-weight:800;
}
.principle-list h3{
  margin:0;
  color:var(--white);
  font-family:var(--font);
  font-size:1.35rem;
}
.principle-list p{
  margin:.25rem 0 0;
  color:var(--on-dark-soft);
}
.about-digital-section{
  background:rgba(255,255,255,.7);
}
.about-digital-grid{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(320px,1fr);
  gap:clamp(2rem,6vw,5rem);
  align-items:center;
}
.about-digital-figure{
  margin:0;
}
.about-digital-figure img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  object-fit:cover;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.about-digital-figure figcaption{
  width:max-content;
  max-width:calc(100% - 2rem);
  margin:-1.5rem 0 0 1rem;
  position:relative;
  padding:.65rem .85rem;
  background:var(--steel);
  color:var(--white);
  font-weight:800;
  font-size:.9rem;
}
.about-region{
  padding-top:0;
}
.about-region-inner{
  padding:1.3rem 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:14rem minmax(0,1fr);
  gap:2rem;
  align-items:center;
}
.about-region-inner p{
  margin:0;
}
@media(max-width:900px){
  .about-hero-grid,
  .about-profile,
  .about-principles,
  .about-digital-grid{
    grid-template-columns:1fr;
  }
  .about-proof-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .about-file-card li,
  .principle-list article,
  .about-region-inner{
    grid-template-columns:1fr;
  }
  .about-file-card li span,
  .principle-list span{
    grid-row:auto;
  }
}

.contact-hero{
  padding:clamp(4rem,8vw,7rem) 0;
  background:rgba(255,255,255,.74);
  border-bottom:1px solid var(--line);
}
.contact-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:center;
}
.contact-hero h1{
  font-family:var(--font);
  font-size:clamp(2.7rem,5vw,5rem);
  line-height:1.02;
  max-width:13ch;
}
.contact-hero .lead{
  max-width:58ch;
}
.contact-quick{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.9rem;
  margin-top:2.2rem;
  max-width:680px;
}
.contact-quick a{
  display:flex;
  flex-direction:column;
  gap:.35rem;
  min-height:6.5rem;
  justify-content:center;
  padding:1rem 1.2rem;
  background:var(--white);
  border:1px solid var(--line);
  border-top:4px solid var(--blue);
  text-decoration:none;
  box-shadow:0 12px 34px rgba(24,35,49,.05);
}
.contact-quick a:nth-child(2){
  border-top-color:var(--amber);
}
.contact-quick span{
  color:var(--ink-soft);
  font-size:.84rem;
  font-weight:800;
}
.contact-quick strong{
  font-size:clamp(1rem,1.6vw,1.25rem);
  color:var(--ink);
}
.contact-route-card{
  padding:clamp(1.4rem,3vw,2.3rem);
  background:linear-gradient(135deg,rgba(217,233,238,.68),transparent 45%),var(--white);
  border:1px solid var(--line);
  border-top:8px solid var(--steel);
  box-shadow:var(--shadow);
}
.contact-route-card ul{
  list-style:none;
  padding:0;
  margin:1.8rem 0 0;
}
.contact-route-card li{
  display:grid;
  grid-template-columns:2.6rem minmax(0,1fr);
  gap:.25rem .85rem;
  padding:1rem 0;
  border-top:1px solid var(--line);
}
.contact-route-card li span{
  grid-row:1/3;
  color:var(--blue-hover);
  font-weight:800;
}
.contact-route-card li strong,
.contact-route-card li small{
  display:block;
}
.contact-route-card li small{
  color:var(--ink-soft);
}
.contact-main{
  background:var(--paper);
}
.contact-layout{
  align-items:start;
}
.contact-copy h2{
  font-family:var(--font);
  max-width:15ch;
}
.contact-copy p:not(.eyebrow){
  color:var(--ink-soft);
  font-size:1.08rem;
}
.contact-note{
  margin-top:2rem;
  padding:1.1rem 1.2rem;
  background:var(--steel);
  color:var(--white);
  border-left:5px solid var(--amber);
}
.contact-note strong,
.contact-note span{
  display:block;
}
.contact-note span{
  margin-top:.35rem;
  color:var(--on-dark-soft);
}
.contact-form-polished{
  position:relative;
  border-top:8px solid var(--blue);
  box-shadow:var(--shadow);
}
.contact-form-polished::before{
  content:"";
  position:absolute;
  inset:1.1rem 1.1rem auto;
  height:7px;
  background:repeating-linear-gradient(90deg,var(--blue) 0 42px,var(--amber) 42px 58px,var(--steel) 58px 104px);
}
.contact-form-polished .form-intro{
  margin-top:1.4rem;
}
@media(max-width:900px){
  .contact-hero-grid,
  .contact-quick{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .contact-route-card li{
    grid-template-columns:1fr;
  }
  .contact-route-card li span{
    grid-row:auto;
  }
}
