:root { --red: #d52b30; --red-bright: #e10814; --red-dark: #b71920; --ink: #292527; --ink-soft: #514a4d; --paper: #f6f7f7; --sand: #c8c5ad; --white: #ffffff; --line: rgba(29, 29, 27, 0.18); --line-dark: rgba(255, 255, 255, 0.18); --max: 1500px; --pad: clamp(1.25rem, 4vw, 4.75rem); --display: "Helvetica Neue", Helvetica, Arial, sans-serif; } * { box-sizing: border-box; } [hidden] { display: none !important; } html { scroll-behavior: smooth; scroll-padding-top: 6rem; } body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--display); font-size: 1rem; line-height: 1.45; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-wrap: break-word; } main section > *, .solution-grid > *, .answer-grid > *, .specialist-grid > *, .offer-services > *, .offer-outcomes__grid > *, .related-offers__grid > * { min-width: 0; } h1, h2, h3 { hyphens: none; text-wrap: balance; } body.has-dialog { overflow: hidden; } button, input, select, textarea { font: inherit; } button, a { -webkit-tap-highlight-color: transparent; } a { color: inherit; text-decoration: none; } img { display: block; max-width: 100%; } button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, h2:focus-visible, h3:focus-visible, [tabindex="-1"]:focus-visible { outline: 3px solid #332d29; outline-offset: 3px; } .sr-only { clip: rect(0, 0, 0, 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; } .skip-link { background: #fff; left: 1rem; padding: .8rem 1rem; position: fixed; top: -5rem; z-index: 200; } .skip-link:focus { top: 1rem; } .concept-bar { align-items: center; background: #f6f7f7; color: #62585c; display: flex; font-size: .7rem; font-weight: 650; justify-content: space-between; letter-spacing: .1em; min-height: 2rem; padding: .5rem var(--pad); text-transform: uppercase; } .site-header { align-items: center; background: rgba(255, 255, 255, .97); border-bottom: 1px solid rgba(29,29,27,.08); display: grid; grid-template-columns: 1fr auto 1fr; height: 6rem; padding: 0 var(--pad); position: sticky; top: 0; transition: height .25s ease, box-shadow .25s ease; z-index: 40; } .site-header.is-compact { box-shadow: 0 12px 35px rgba(0,0,0,.08); height: 4.8rem; } .brand { align-items: center; display: inline-flex; justify-self: start; } .brand svg, .brand img { height: 3.4rem; width: auto; } .desktop-nav { display: flex; gap: clamp(.9rem, 1.65vw, 1.9rem); } .desktop-nav a { font-size: .92rem; font-weight: 650; position: relative; } .desktop-nav a::after { background: var(--red); bottom: -.55rem; content: ""; height: 2px; left: 0; position: absolute; transform: scaleX(0); transform-origin: left; transition: transform .2s ease; width: 100%; } .desktop-nav a:hover::after { transform: scaleX(1); } .header-actions { align-items: center; display: flex; gap: 1.25rem; justify-self: end; } .phone-link { font-size: .88rem; font-weight: 700; } .menu-toggle { background: transparent; border: 0; display: none; height: 2.75rem; padding: .6rem; width: 2.75rem; } .menu-toggle span:not(.sr-only) { background: var(--ink); display: block; height: 2px; margin: .33rem 0; width: 1.45rem; } .button { align-items: center; border: 1px solid transparent; border-radius: 0; cursor: pointer; display: inline-flex; font-weight: 720; gap: 1.5rem; justify-content: space-between; min-height: 3.65rem; max-width: 100%; padding: 0 1.45rem; transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease; } .button:hover { transform: translateY(-2px); } .button--red { background: var(--red); color: #fff; } .button--red:hover { background: var(--red-dark); } .button--compact { min-height: 3rem; padding: 0 1.15rem; } .button--glass { backdrop-filter: blur(8px); background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.6); color: #fff; } .button--glass:hover { background: #fff; color: var(--ink); } .button--ink { background: var(--ink); color: #fff; } .button--ink:hover { background: #000; } .button--white { background: #fff; color: var(--ink); } .button--white:hover { background: var(--ink); color: #fff; } .button--quiet { background: transparent; border-color: rgba(255,255,255,.35); color: #fff; } .eyebrow { font-size: .75rem; font-weight: 760; letter-spacing: .13em; margin: 0 0 1.5rem; text-transform: uppercase; } .eyebrow--red { color: var(--red); } .hero { background: #fff; color: var(--ink); display: grid; grid-template-columns: 1fr 1fr; min-height: 0; overflow: hidden; position: relative; } .hero-media { grid-column: 2; grid-row: 1; min-height: 34rem; position: relative; } .hero-shade { display: none; } .hero-media img { height: 100%; object-fit: cover; object-position: 58% center; width: 100%; } .hero-shade { background: linear-gradient(90deg, rgba(8,8,8,.89) 0%, rgba(8,8,8,.54) 43%, rgba(8,8,8,.08) 72%), linear-gradient(0deg, rgba(8,8,8,.25), transparent 40%); } .hero-content { align-self: center; grid-column: 1; grid-row: 1; max-width: none; padding: 5rem var(--pad); position: relative; z-index: 1; } .hero h1 { font-size: clamp(2.5rem, 5.3vw, 5.3rem); font-weight: 650; letter-spacing: -.045em; line-height: 1.05; margin: 0; max-width: none; } .hero h1 span { background: transparent; box-decoration-break: clone; -webkit-box-decoration-break: clone; display: block; margin: 0; padding: 0; white-space: normal; } .hero h1 span:last-child { color: var(--red); } .hero .eyebrow { color: var(--red); } .hero .button--glass { backdrop-filter: none; background: #fff; border-color: #d8d3d5; color: var(--ink); } .hero-copy { font-size: clamp(1.07rem, 1.45vw, 1.35rem); line-height: 1.45; margin: 2rem 0; max-width: 36rem; } .hero-cta { display: flex; flex-wrap: wrap; gap: .75rem; } .hero-proof { align-items: center; background: #fff; border-block: 1px solid var(--line); display: grid; font-size: .76rem; font-weight: 680; gap: 1px; grid-template-columns: repeat(3, 1fr); grid-column: 1 / -1; letter-spacing: .045em; position: static; text-transform: uppercase; z-index: 2; } .hero-proof span { border-right: 1px solid rgba(255,255,255,.18); padding: 1.5rem var(--pad); } .statement { display: grid; gap: 2rem; grid-template-columns: .28fr 1fr; margin: 0 auto; max-width: var(--max); padding: clamp(5rem, 9vw, 10rem) var(--pad); } .statement-kicker { font-size: .73rem; font-weight: 760; letter-spacing: .13em; margin: .7rem 0 0; text-transform: uppercase; } .statement-copy { font-size: clamp(2rem, 4.15vw, 4.8rem); font-weight: 520; letter-spacing: -.055em; line-height: 1.05; margin: 0; } .statement-copy strong { color: var(--red); font-weight: 620; } .section-dark { background: var(--ink); color: #fff; } .section-light { background: #fff; color: var(--ink); } .solutions { padding: clamp(5rem, 9vw, 9rem) var(--pad); } .section-heading { display: grid; gap: 2rem; grid-template-columns: 1fr .55fr; margin: 0 auto clamp(3rem, 6vw, 6rem); max-width: var(--max); } .section-heading .eyebrow { grid-column: 1 / -1; margin-bottom: 0; } .section-heading h2 { font-size: clamp(3rem, 6vw, 7rem); font-weight: 610; letter-spacing: -.068em; line-height: .91; margin: 0; } .section-heading > p:last-child { align-self: end; color: rgba(255,255,255,.67); font-size: 1.08rem; max-width: 34rem; } .section-heading--ink > p:last-child { color: #555; } .solution-grid { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); margin: 0 auto; max-width: var(--max); } .solution-card { background: var(--ink-soft); display: grid; grid-template-columns: 1fr auto; min-height: 24rem; padding: clamp(1.5rem, 2.8vw, 2.75rem); transition: background .25s ease, color .25s ease; } .solution-card--wide { grid-column: span 2; } .solution-card--red { background: var(--red); } .solution-card:hover { background: #fff; color: var(--ink); } .solution-index { font-size: .72rem; font-weight: 700; letter-spacing: .1em; } .solution-card > div { align-self: end; grid-column: 1 / -1; } .solution-card h3 { font-size: clamp(2rem, 3.4vw, 4rem); font-weight: 600; letter-spacing: -.055em; line-height: .98; margin: 0 0 1rem; max-width: 11ch; } .solution-card p { font-size: 1rem; margin: 0; max-width: 28rem; opacity: .74; } .solution-card--red p { opacity: 1; } .link-arrow { font-size: 1.55rem; grid-column: 2; grid-row: 1; } .quick-order { display: grid; gap: clamp(2rem, 6vw, 7rem); grid-template-columns: .8fr 1.2fr; margin: 0 auto; max-width: var(--max); padding: clamp(5rem, 10vw, 10rem) var(--pad); } .section-intro h2 { font-size: clamp(2.7rem, 5vw, 5.5rem); font-weight: 610; letter-spacing: -.063em; line-height: .94; margin: 0 0 2rem; } .section-intro > p { color: #4e4e4a; font-size: 1.08rem; max-width: 35rem; } .legal-note { align-items: start; border-top: 1px solid var(--line); display: flex; font-size: .8rem; gap: .8rem; margin-top: 2.5rem; max-width: 35rem; padding-top: 1rem; } .legal-note span { color: var(--red); font-weight: 800; } .legal-note p { margin: 0; } .product-shortcuts { display: grid; gap: 1px; } .product-shortcut { background: #fff; border: 0; color: var(--ink); cursor: pointer; display: grid; gap: 1rem; grid-template-columns: auto 1fr auto; min-height: 17rem; padding: clamp(1.5rem, 3vw, 2.5rem); text-align: left; transition: background .25s ease, color .25s ease; } .product-shortcut:hover { background: var(--red); color: #fff; } .product-shortcut--dark { background: var(--ink); color: #fff; } .product-shortcut--dark:hover { background: var(--red); } .product-number { font-size: .72rem; font-weight: 700; letter-spacing: .08em; } .product-title { align-self: end; font-size: clamp(1.9rem, 3.4vw, 3.7rem); font-weight: 620; grid-column: 1 / 3; letter-spacing: -.055em; line-height: .95; max-width: 13ch; } .product-meta { font-size: .84rem; grid-column: 1 / 3; max-width: 31rem; opacity: .68; } .product-shortcut:hover .product-meta { opacity: 1; } .product-action { align-self: end; font-size: .75rem; font-weight: 750; grid-column: 1 / 3; letter-spacing: .08em; margin-top: .75rem; text-transform: uppercase; } .product-arrow { font-size: 1.55rem; grid-column: 3; grid-row: 1; } .product-feature { background: var(--red); color: #fff; display: grid; grid-template-columns: 1.15fr .85fr; min-height: 46rem; } .product-image { min-height: 42rem; overflow: hidden; position: relative; } .product-image img { height: 100%; object-fit: cover; width: 100%; } .image-caption { background: rgba(29,29,27,.86); bottom: 0; font-size: .73rem; font-weight: 700; left: 0; letter-spacing: .08em; padding: 1rem 1.4rem; position: absolute; text-transform: uppercase; } .feature-copy { align-self: center; padding: clamp(3rem, 6vw, 7rem); } .feature-copy h2 { font-size: clamp(3rem, 5vw, 6rem); font-weight: 610; letter-spacing: -.065em; line-height: .92; margin: 0 0 2rem; } .feature-copy > p { font-size: 1.08rem; max-width: 36rem; } .feature-list { border-top: 1px solid rgba(255,255,255,.35); list-style: none; margin: 3rem 0 2rem; padding: 0; } .feature-list li { border-bottom: 1px solid rgba(255,255,255,.35); display: flex; gap: 1.5rem; padding: 1rem 0; } .feature-list span { font-size: .72rem; font-weight: 800; padding-top: .2rem; } .text-link { background: transparent; border: 0; border-bottom: 1px solid #fff; color: #fff; cursor: pointer; font-weight: 750; padding: .6rem 0; } .process { padding: clamp(5rem, 9vw, 9rem) var(--pad); } .process-grid { counter-reset: process; display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); list-style: none; margin: 0 auto; max-width: var(--max); padding: 0; } .process-grid li { background: var(--paper); min-height: 21rem; padding: clamp(1.5rem, 3vw, 2.75rem); } .process-grid span { color: var(--red); font-size: .72rem; font-weight: 800; letter-spacing: .1em; } .process-grid h3 { font-size: clamp(2.5rem, 4vw, 4.5rem); font-weight: 600; letter-spacing: -.06em; margin: 6rem 0 .75rem; } .process-grid p { color: #555; margin: 0; max-width: 22rem; } .training-story { display: grid; grid-template-columns: .85fr 1.15fr; } .training-copy { align-self: center; padding: clamp(4rem, 8vw, 9rem) var(--pad); } .training-copy h2 { font-size: clamp(3rem, 5.7vw, 6.8rem); font-weight: 610; letter-spacing: -.07em; line-height: .9; margin: 0 0 2rem; } .training-copy > p:not(.eyebrow) { color: #50504c; font-size: 1.08rem; margin-bottom: 2.25rem; max-width: 35rem; } .training-image { min-height: 48rem; overflow: hidden; } .training-image img { height: 100%; object-fit: cover; width: 100%; } .group-proof { padding: clamp(5rem, 10vw, 10rem) var(--pad); } .group-head { display: grid; gap: 4rem; grid-template-columns: 1.15fr .55fr; margin: 0 auto 5rem; max-width: var(--max); } .group-head h2 { font-size: clamp(3.2rem, 6.5vw, 7.7rem); font-weight: 610; letter-spacing: -.07em; line-height: .89; margin: 0; } .group-head > p { align-self: end; color: rgba(255,255,255,.66); font-size: 1.08rem; max-width: 34rem; } .group-numbers { border-bottom: 1px solid var(--line-dark); border-top: 1px solid var(--line-dark); display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 auto; max-width: var(--max); } .group-numbers div { border-right: 1px solid var(--line-dark); padding: clamp(2rem, 4vw, 4rem) 0; } .group-numbers div:not(:first-child) { padding-left: clamp(2rem, 4vw, 4rem); } .group-numbers strong { display: block; font-size: clamp(2.7rem, 5vw, 6rem); font-weight: 590; letter-spacing: -.06em; line-height: 1; } .group-numbers span { color: rgba(255,255,255,.58); font-size: .78rem; text-transform: uppercase; } .specialist-intro { align-items: end; display: flex; justify-content: space-between; margin: 6rem auto 2rem; max-width: var(--max); } .specialist-intro p { font-size: 1.45rem; font-weight: 650; margin: 0; } .specialist-intro span { color: rgba(255,255,255,.55); font-size: .86rem; max-width: 31rem; } .specialist-grid { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); margin: 0 auto; max-width: var(--max); } .specialist-grid div { background: #262624; min-height: 10rem; padding: 1.5rem; } .specialist-grid strong { display: block; font-size: clamp(1.45rem, 2.3vw, 2.5rem); letter-spacing: -.045em; margin-bottom: 2.8rem; } .specialist-grid span { color: rgba(255,255,255,.55); font-size: .78rem; text-transform: uppercase; } .knowledge { padding: clamp(5rem, 10vw, 10rem) var(--pad); } .knowledge-heading { margin: 0 auto 4rem; max-width: var(--max); } .knowledge-heading h2 { font-size: clamp(3.2rem, 6.5vw, 7.5rem); font-weight: 610; letter-spacing: -.07em; line-height: .9; margin: 0 0 1.5rem; max-width: 10ch; } .knowledge-heading > p:last-child { color: #555; font-size: 1.05rem; max-width: 38rem; } .answer-grid { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); margin: 0 auto; max-width: var(--max); } .answer-card { background: #fff; display: flex; flex-direction: column; min-height: 27rem; padding: clamp(1.5rem, 2.8vw, 2.75rem); } .answer-card--red { background: var(--red); color: #fff; } .answer-card > span { font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; } .answer-card h3 { font-size: clamp(1.75rem, 3vw, 3.3rem); font-weight: 610; letter-spacing: -.055em; line-height: 1; margin: auto 0 1.5rem; } .answer-card p { font-size: 1rem; opacity: .78; } .answer-card--red p { opacity: 1; } .answer-card a { border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 760; margin-top: 1.5rem; padding-bottom: .5rem; width: fit-content; } .faq { border-top: 1px solid var(--line); display: grid; gap: 4rem; grid-template-columns: .72fr 1.28fr; margin: clamp(5rem, 10vw, 10rem) auto 0; max-width: var(--max); padding-top: clamp(3rem, 6vw, 6rem); } .faq-title h2 { font-size: clamp(2.7rem, 4.7vw, 5.2rem); font-weight: 610; letter-spacing: -.065em; line-height: .94; margin: 0; } .faq-list details { border-top: 1px solid var(--line); } .faq-list details:last-child { border-bottom: 1px solid var(--line); } .faq-list summary { cursor: pointer; display: grid; font-size: clamp(1.08rem, 1.8vw, 1.45rem); font-weight: 650; gap: 1rem; grid-template-columns: 1fr auto; list-style: none; padding: 1.6rem 0; } .faq-list summary::-webkit-details-marker { display: none; } .faq-list summary span { color: var(--red); font-size: 1.8rem; font-weight: 400; transition: transform .2s ease; } .faq-list details[open] summary span { transform: rotate(45deg); } .faq-list details p { color: #555; margin: 0; max-width: 48rem; padding: 0 3rem 1.8rem 0; } .contact-cta { background: var(--red); color: #fff; display: grid; gap: 4rem; grid-template-columns: 1.25fr .55fr; padding: clamp(5rem, 9vw, 9rem) var(--pad); } .contact-copy h2 { font-size: clamp(3.3rem, 7vw, 8.3rem); font-weight: 610; letter-spacing: -.072em; line-height: .86; margin: 0; max-width: 10ch; } .contact-action { align-self: end; } .contact-action p { font-size: 1.06rem; margin: 0 0 2rem; max-width: 32rem; } .site-footer { background: #101010; color: #fff; display: grid; gap: 3rem; grid-template-columns: 1.5fr repeat(3, 1fr); padding: 5rem var(--pad); } .footer-wordmark { font-family: Georgia, serif; font-size: 3.5rem; font-weight: 700; letter-spacing: -.06em; } .footer-brand p { color: rgba(255,255,255,.5); margin: .3rem 0 0; } .footer-column { align-content: start; display: grid; gap: .65rem; } .footer-column strong { font-size: .73rem; letter-spacing: .1em; margin-bottom: .75rem; text-transform: uppercase; } .footer-column a, .footer-column span { color: rgba(255,255,255,.62); font-size: .86rem; } .footer-column a:hover { color: #fff; } .mobile-order { display: none; } .order-dialog { background: transparent; border: 0; max-height: 96vh; max-width: 64rem; padding: 0; width: calc(100% - 2rem); } .order-dialog::backdrop { backdrop-filter: blur(7px); background: rgba(10,10,10,.77); } .order-shell { background: var(--paper); color: var(--ink); max-height: 94vh; overflow: auto; } .order-head { align-items: start; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; padding: 2rem 2.25rem 1.65rem; } .order-head h2 { font-size: clamp(2.25rem, 4.2vw, 4.2rem); font-weight: 610; letter-spacing: -.06em; line-height: 1; margin: 0; } .order-head .eyebrow { margin-bottom: .8rem; } .dialog-close { background: transparent; border: 0; cursor: pointer; font-size: 2.6rem; line-height: 1; padding: .15rem; } .order-progress { border-bottom: 1px solid var(--line); display: grid; grid-template-columns: repeat(3, 1fr); list-style: none; margin: 0; padding: 0 2.25rem; } .order-progress li { border-bottom: 3px solid transparent; color: #5f5f5a; font-size: .7rem; font-weight: 760; letter-spacing: .09em; padding: 1.1rem 0 .9rem; text-transform: uppercase; } .order-progress li.is-active { border-color: var(--red); color: var(--ink); } .order-step { display: none; } .order-step.is-active { display: block; } .order-body { display: grid; gap: 1.25rem; grid-template-columns: 1fr 1fr; padding: 2rem 2.25rem 2.25rem; } .order-step-title { font-size: clamp(1.45rem, 2.4vw, 2.2rem); letter-spacing: -.035em; margin: 0 0 .3rem; outline-offset: .35rem; } .order-body > label { display: grid; font-size: .73rem; font-weight: 760; gap: .5rem; letter-spacing: .05em; text-transform: uppercase; } .order-body input:not([type="radio"]):not([type="checkbox"]), .order-body select, .order-body textarea { background: #fff; border: 1px solid var(--line); border-radius: 0; font-size: 1rem; min-height: 3.55rem; padding: .8rem 1rem; text-transform: none; width: 100%; } .order-body textarea { min-height: 6rem; resize: vertical; } .order-body input:user-invalid, .order-body select:user-invalid { border-color: var(--red); } .span-2 { grid-column: span 2; } .radio-field { border: 0; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: .8rem 1.5rem; margin: .5rem 0 0; padding: 1.25rem 0 0; } .radio-field legend { font-size: .73rem; font-weight: 760; letter-spacing: .05em; margin-bottom: 1rem; padding: 0; text-transform: uppercase; width: 100%; } .radio-field label { align-items: center; cursor: pointer; display: flex; font-size: .9rem; gap: .5rem; } .radio-field input, .consent input { accent-color: var(--red); height: 1.1rem; width: 1.1rem; } .order-body--confirm { align-content: start; } .order-summary { background: #fff; display: grid; gap: .2rem; grid-template-columns: repeat(2, 1fr); padding: 1.5rem; } .order-summary div { border-bottom: 1px solid var(--line); padding: .7rem 0; } .order-summary span { color: #666; display: block; font-size: .75rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; } .order-summary strong { display: block; font-size: 1rem; margin-top: .2rem; } .order-summary strong { overflow-wrap: anywhere; } .consent { align-items: start; display: flex !important; font-size: .84rem !important; font-weight: 500 !important; gap: .75rem !important; letter-spacing: 0 !important; text-transform: none !important; } .consent input { flex: 0 0 auto; margin-top: .15rem; } .prototype-note { color: #686863; font-size: .78rem; margin: 0; } .privacy-summary { border-left: 3px solid var(--red); color: #50504c; font-size: .82rem; padding: .2rem 0 .2rem 1rem; } .privacy-summary strong { color: var(--ink); display: block; margin-bottom: .3rem; } .privacy-summary p { margin: 0; } .privacy-summary a { border-bottom: 1px solid currentColor; font-weight: 700; } .order-foot { align-items: center; background: var(--ink); color: #fff; display: flex; gap: 2rem; justify-content: space-between; min-height: 6rem; padding: 1rem 2.25rem; } .order-foot > p { color: rgba(255,255,255,.65); font-size: .79rem; margin: 0; max-width: 31rem; } .order-nav { display: flex; gap: .6rem; } .order-success { padding: clamp(2.5rem, 6vw, 5.5rem); text-align: center; } .success-mark { align-items: center; background: var(--red); color: #fff; display: flex; font-size: 2rem; height: 4.5rem; justify-content: center; margin: 0 auto 2rem; width: 4.5rem; } .order-success h3 { font-size: clamp(2.7rem, 5vw, 5rem); font-weight: 610; letter-spacing: -.065em; line-height: .95; margin: 0 0 1rem; } .order-success > p:not(.eyebrow) { color: #555; margin: 0 auto 2rem; max-width: 38rem; } .success-ref { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); display: flex; justify-content: space-between; margin: 2rem auto; max-width: 31rem; padding: 1rem 0; } .success-ref strong { color: var(--red); } .reveal { opacity: 1; transform: none; } .motion-ready .reveal { opacity: 0; transform: translateY(24px); transition: opacity .65s ease, transform .65s ease; } .motion-ready .reveal.is-visible { opacity: 1; transform: translateY(0); } @media (max-width: 1050px) { .site-header { grid-template-columns: 1fr auto; } .menu-toggle { display: block; justify-self: end; } .header-actions { display: none; } .desktop-nav { background: #fff; border-top: 1px solid var(--line); display: none; gap: 0; grid-column: 1 / -1; left: 0; padding: 1rem var(--pad) 1.5rem; position: absolute; right: 0; top: 100%; } .desktop-nav.is-open { display: grid; } .desktop-nav a { border-bottom: 1px solid var(--line); font-size: 1.2rem; padding: 1rem 0; } .quick-order, .faq { grid-template-columns: 1fr; } .product-feature, .training-story { grid-template-columns: 1fr; } .product-image, .training-image { min-height: 35rem; } .section-heading, .group-head { grid-template-columns: 1fr; } .section-heading > p:last-child, .group-head > p { align-self: auto; } .statement { grid-template-columns: 1fr; } .mobile-order { align-items: center; background: var(--red); border: 0; bottom: max(.8rem, env(safe-area-inset-bottom)); box-shadow: 0 10px 30px rgba(0,0,0,.25); color: #fff; display: flex; font-weight: 750; justify-content: space-between; left: .8rem; min-height: 3.5rem; padding: 0 1.15rem; position: fixed; right: .8rem; z-index: 35; } .site-footer { padding-bottom: 7rem; } } @media (max-width: 760px) { .concept-bar span:last-child { display: none; } .site-header, .site-header.is-compact { height: 4.8rem; } .brand svg, .brand img { height: 2.75rem; width: 7rem; } .hero { min-height: calc(100svh - 6.8rem); } .hero-content { align-self: end; padding: 4rem var(--pad) 10.8rem; } .hero h1 { font-size: clamp(2.5rem, 11.8vw, 5.4rem); } .hero-shade { background: linear-gradient(0deg, rgba(8,8,8,.94) 0%, rgba(8,8,8,.5) 68%, rgba(8,8,8,.14) 100%); } .hero-media img { object-position: 63% center; } .hero-proof { grid-template-columns: 1fr; } .hero-proof span { padding: .65rem var(--pad); } .hero-proof span:nth-child(n+3) { display: none; } .hero-cta .button { width: 100%; } .statement-copy { font-size: clamp(2.1rem, 10vw, 3.5rem); } .solution-grid, .answer-grid, .specialist-grid { grid-template-columns: 1fr; } .solution-card--wide { grid-column: auto; } .solution-card { min-height: 19rem; } .product-shortcut { min-height: 14rem; } .product-title { font-size: 2.15rem; } .product-image, .training-image { min-height: 26rem; } .process-grid, .group-numbers { grid-template-columns: 1fr; } .process-grid li { min-height: 16rem; } .process-grid h3 { margin-top: 4rem; } .group-numbers div, .group-numbers div:not(:first-child) { border-bottom: 1px solid var(--line-dark); border-right: 0; padding: 2rem 0; } .specialist-intro { align-items: start; flex-direction: column; gap: .75rem; } .answer-card { min-height: 23rem; } .contact-cta { grid-template-columns: 1fr; } .site-footer { grid-template-columns: 1fr 1fr; padding-bottom: 7rem; } .footer-brand { grid-column: 1 / -1; } .order-dialog { max-height: 100vh; width: 100%; } .order-shell { max-height: 100vh; min-height: 100vh; } .order-head, .order-body { padding: 1.3rem; } .order-progress { padding: 0 1.3rem; } .order-body { grid-template-columns: 1fr; } .span-2 { grid-column: span 1; } .order-summary { grid-template-columns: 1fr; } .order-foot { align-items: stretch; flex-direction: column; padding: 1rem 1.3rem; } .order-nav { width: 100%; } .order-nav .button { flex: 1; } } @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } .motion-ready .reveal { opacity: 1; transform: none; } } .offering-page { --offer-accent: var(--red); --offer-bg: var(--ink); background: #fff; } .breadcrumb { align-items: center; display: flex; font-size: .72rem; font-weight: 700; gap: .55rem; letter-spacing: .07em; margin: 0 0 3rem; text-transform: uppercase; } .breadcrumb a { opacity: .62; } .breadcrumb a:hover { opacity: 1; } .offering-hero { background: var(--offer-bg); color: #fff; display: grid; min-height: min(48rem, calc(100svh - 8rem)); overflow: hidden; position: relative; } .offering-hero__media, .offering-hero__shade { inset: 0; position: absolute; } .offering-hero__media img { height: 100%; object-fit: cover; width: 100%; } .offering-hero__shade { background: linear-gradient(90deg, rgba(10,10,10,.92) 0%, rgba(10,10,10,.7) 47%, rgba(10,10,10,.2) 78%), linear-gradient(0deg, rgba(10,10,10,.35), transparent 55%); } .offering-hero__grid { align-items: end; display: grid; gap: 3rem; grid-template-columns: 1.3fr .45fr; padding: clamp(4rem, 8vw, 8rem) var(--pad); position: relative; z-index: 1; } .offering-hero__content { max-width: 62rem; } .offering-hero h1 { font-size: clamp(3.7rem, 7.5vw, 8.6rem); font-weight: 610; letter-spacing: -.072em; line-height: .86; margin: 0 0 2rem; max-width: 10.5ch; } .offering-hero h1 .accent { background: var(--offer-accent); box-decoration-break: clone; -webkit-box-decoration-break: clone; display: table; padding: .01em .1em .1em; } .offering-hero__lead { font-size: clamp(1.06rem, 1.45vw, 1.3rem); margin: 0 0 2rem; max-width: 40rem; } .offering-hero__code { align-self: start; border-left: 1px solid rgba(255,255,255,.3); display: grid; justify-items: end; padding-left: 2rem; } .offering-hero__code strong { font-size: clamp(5rem, 10vw, 10rem); font-weight: 500; letter-spacing: -.08em; line-height: .75; } .offering-hero__code span { font-size: .7rem; font-weight: 750; letter-spacing: .1em; margin-top: 1.6rem; text-transform: uppercase; } .offer-quickbar { background: var(--offer-accent); color: #fff; display: grid; font-size: .72rem; font-weight: 750; grid-template-columns: repeat(5, 1fr); letter-spacing: .08em; text-transform: uppercase; } .offer-quickbar span { border-right: 1px solid rgba(255,255,255,.25); padding: 1.15rem var(--pad); } .offer-intro { display: grid; gap: clamp(2rem, 7vw, 8rem); grid-template-columns: 1.05fr .75fr; margin: 0 auto; max-width: var(--max); padding: clamp(5rem, 10vw, 10rem) var(--pad) clamp(3rem, 6vw, 6rem); } .offer-intro h2 { font-size: clamp(3rem, 5.8vw, 6.8rem); font-weight: 610; letter-spacing: -.068em; line-height: .9; margin: 0; } .offer-intro__body { align-self: end; } .offer-intro__body > p { color: #50504c; font-size: 1.08rem; margin: 0 0 2rem; } .offer-audience { border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: .55rem; padding-top: 1.25rem; } .offer-audience span { border: 1px solid var(--line); font-size: .71rem; font-weight: 720; letter-spacing: .05em; padding: .55rem .7rem; text-transform: uppercase; } .offer-services { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); margin: 0 auto; max-width: var(--max); padding: 0 var(--pad) clamp(5rem, 10vw, 10rem); } .offer-service { background: var(--paper); display: flex; flex-direction: column; min-height: 22rem; padding: clamp(1.5rem, 2.8vw, 2.7rem); } .offer-service:nth-child(2) { background: var(--offer-accent); color: #fff; } .offer-service__number { font-size: .7rem; font-weight: 800; letter-spacing: .1em; } .offer-service h3 { font-size: clamp(1.7rem, 2.7vw, 3rem); font-weight: 610; letter-spacing: -.052em; line-height: 1; margin: auto 0 1rem; } .offer-service p { font-size: 1rem; margin: 0; opacity: .78; } .offer-service:nth-child(2) p { opacity: 1; } .offer-outcomes { padding: clamp(5rem, 9vw, 9rem) var(--pad); } .offer-outcomes__head { display: grid; gap: 3rem; grid-template-columns: 1.1fr .55fr; margin: 0 auto 4rem; max-width: var(--max); } .offer-outcomes h2 { font-size: clamp(3rem, 6vw, 7.2rem); font-weight: 610; letter-spacing: -.07em; line-height: .88; margin: 0; } .offer-outcomes__head > p { align-self: end; color: rgba(255,255,255,.64); font-size: 1.06rem; } .offer-outcomes__grid { border-bottom: 1px solid var(--line-dark); border-top: 1px solid var(--line-dark); display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 auto; max-width: var(--max); } .offer-outcome { border-right: 1px solid var(--line-dark); min-height: 16rem; padding: 2rem; } .offer-outcome strong { color: var(--offer-accent); display: block; font-size: 2.7rem; font-weight: 600; letter-spacing: -.05em; margin-bottom: 4rem; } .offer-outcome h3 { font-size: 1.35rem; margin: 0 0 .6rem; } .offer-outcome p { color: rgba(255,255,255,.56); font-size: .87rem; margin: 0; } .offer-industries { margin: 0 auto; max-width: var(--max); padding: clamp(5rem, 9vw, 9rem) var(--pad); } .offer-industries__head { align-items: end; display: flex; gap: 3rem; justify-content: space-between; margin-bottom: 3rem; } .offer-industries h2 { font-size: clamp(2.5rem, 4.8vw, 5.5rem); font-weight: 610; letter-spacing: -.064em; line-height: .94; margin: 0; } .offer-industries__head p { color: #555; max-width: 33rem; } .industry-list { border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(2, 1fr); } .industry-list span { border-bottom: 1px solid var(--line); display: flex; font-size: clamp(1.15rem, 2vw, 1.75rem); font-weight: 620; justify-content: space-between; padding: 1.25rem 0; } .industry-list span:nth-child(odd) { margin-right: 2rem; } .industry-list span::after { color: var(--offer-accent); content: "↗"; } .offer-faq { background: var(--paper); display: grid; gap: 4rem; grid-template-columns: .7fr 1.3fr; padding: clamp(5rem, 9vw, 9rem) var(--pad); } .offer-faq__heading h2 { font-size: clamp(2.8rem, 5vw, 5.8rem); font-weight: 610; letter-spacing: -.065em; line-height: .92; margin: 0; } .offer-faq__list details { border-top: 1px solid var(--line); } .offer-faq__list details:last-child { border-bottom: 1px solid var(--line); } .offer-faq__list summary { cursor: pointer; display: grid; font-size: clamp(1.05rem, 1.7vw, 1.4rem); font-weight: 650; gap: 1rem; grid-template-columns: 1fr auto; list-style: none; padding: 1.45rem 0; } .offer-faq__list summary::-webkit-details-marker { display: none; } .offer-faq__list summary::after { color: var(--offer-accent); content: "+"; font-size: 1.7rem; font-weight: 400; transition: transform .2s ease; } .offer-faq__list details[open] summary::after { transform: rotate(45deg); } .offer-faq__list p { color: #555; margin: 0; padding: 0 3rem 1.5rem 0; } .related-offers { background: #fff; padding: clamp(4rem, 8vw, 8rem) var(--pad); } .related-offers__head { align-items: end; display: flex; justify-content: space-between; margin: 0 auto 2rem; max-width: var(--max); } .related-offers__head h2 { font-size: clamp(2.2rem, 4vw, 4.7rem); font-weight: 610; letter-spacing: -.06em; margin: 0; } .related-offers__grid { display: grid; gap: 1px; grid-template-columns: repeat(2, 1fr); margin: 0 auto; max-width: var(--max); } .related-offer { background: var(--ink); color: #fff; display: grid; gap: 3rem; grid-template-columns: 1fr auto; min-height: 14rem; padding: 2rem; } .related-offer:nth-child(2) { background: var(--offer-accent); } .related-offer strong { align-self: end; font-size: clamp(1.8rem, 3.2vw, 3.4rem); font-weight: 610; letter-spacing: -.055em; line-height: .95; } .related-offer span { font-size: 1.4rem; } .lead-page { background: var(--ink); } .lead-header { align-items: center; background: #fff; display: flex; gap: 2rem; justify-content: space-between; padding: 1.15rem var(--pad); } .lead-header__back { font-size: .875rem; margin-left: auto; } .help-link { background: transparent; border: 0; border-bottom: 1px solid currentColor; color: inherit; cursor: pointer; font-size: .875rem; font-weight: 650; padding: .65rem 0; text-align: left; } .existing-help { margin-top: 1.5rem; } .lead-choices { border: 0; margin: 0; padding: 0; } .lead-error { color: #af1520; font-size: .95rem; margin: 0; padding: 0 clamp(1.5rem, 5vw, 5rem) 1rem; } .lead-error:empty { display: none; } .lead-aside__bottom { margin-top: 3rem; } .lead-aside__bottom .lead-aside__number { display: block; margin: 0 0 3rem; } .scope-field { margin-top: 1.5rem; max-width: 58rem; } .lead-field label span { color: #65655f; font-weight: 400; text-transform: none; } .lead-field [aria-invalid="true"] { border-color: #af1520; outline: 2px solid #af1520; } .lead-step .timing-warning { border-left: 3px solid var(--red); color: #5b332e; font-size: .875rem; margin: 1.5rem 0 0; padding-left: 1rem; } .lead-privacy { background: #fff; border-top: 1px solid var(--line); padding: 2rem var(--pad); } .lead-privacy p { color: #555; font-size: .875rem; max-width: 65rem; } .lead-privacy a, .prototype-inline a { text-decoration: underline; text-underline-offset: .2em; } .no-script-contact { background: var(--paper); padding: 3rem; } .lead-support-strip { align-items: center; background: #101010; color: rgba(255,255,255,.72); display: flex; font-size: .76rem; gap: 1rem; justify-content: center; padding: .65rem var(--pad); text-align: center; } .lead-support-strip a { border-bottom: 1px solid rgba(255,255,255,.5); color: #fff; font-weight: 750; } .lead-layout { display: grid; grid-template-columns: minmax(17rem, 28vw) 1fr; min-height: calc(100svh - 8.65rem); } .lead-aside { background: var(--red); color: #fff; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(2rem, 4vw, 4.5rem); } .lead-aside__number { font-size: clamp(5rem, 11vw, 11rem); font-weight: 520; letter-spacing: -.08em; line-height: .75; } .lead-aside h1 { font-size: clamp(2.4rem, 4vw, 4.6rem); font-weight: 610; letter-spacing: -.065em; line-height: .91; margin: 2rem 0 1.25rem; } .lead-aside p { font-size: .94rem; margin: 0; max-width: 23rem; } .lead-aside__trust { border-top: 1px solid rgba(255,255,255,.35); display: grid; font-size: .75rem; gap: .65rem; letter-spacing: .04em; padding-top: 1.25rem; text-transform: uppercase; } .lead-form-frame { background: var(--paper); display: grid; grid-template-rows: auto 1fr; min-width: 0; position: relative; } .lead-progress { align-items: center; display: grid; gap: 1rem; grid-template-columns: auto 1fr auto; padding: 1.4rem clamp(1.5rem, 5vw, 5rem); } .lead-progress span { font-size: .72rem; font-weight: 780; letter-spacing: .08em; text-transform: uppercase; } .lead-progress__track { background: rgba(29,29,27,.12); height: 3px; overflow: hidden; } .lead-progress__fill { background: var(--red); height: 100%; transition: width .35s ease; width: 14.285%; } .lead-form { display: grid; grid-template-rows: 1fr auto auto; min-height: 0; } .lead-step, .lead-success, .support-route { align-self: center; display: none; max-width: 64rem; padding: clamp(2rem, 6vw, 6rem); width: 100%; } .lead-step.is-active, .lead-success.is-active, .support-route.is-active { display: block; } .lead-step { padding-top: 2rem; padding-bottom: 2.5rem; } .lead-step > .lead-question-number, .lead-success > .lead-question-number, .support-route > .lead-question-number { color: var(--red); font-size: .75rem; font-weight: 800; letter-spacing: .1em; margin: 0 0 1rem; text-transform: uppercase; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(2.7rem, 5.5vw, 6.6rem); font-weight: 610; letter-spacing: -.068em; line-height: .9; margin: 0 0 1.2rem; } .lead-step > p, .lead-success > p, .support-route > p { color: #5b5b56; font-size: 1.02rem; margin: 0 0 2rem; max-width: 42rem; } .lead-choices { display: grid; gap: .7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 58rem; } .lead-choice { position: relative; } .lead-choice input { opacity: 0; pointer-events: none; position: absolute; } .lead-choice label { align-items: center; background: #fff; border: 2px solid transparent; cursor: pointer; display: grid; gap: 1rem; grid-template-columns: auto 1fr auto; min-height: 4.2rem; padding: .85rem 1rem; transition: border-color .15s ease, background .15s ease, color .15s ease; } .lead-choice__key { align-items: center; border: 1px solid var(--line); display: inline-flex; font-size: .75rem; font-weight: 800; height: 1.8rem; justify-content: center; width: 1.8rem; } .lead-choice__check { color: transparent; font-weight: 800; } .lead-choice input:focus-visible + label { outline: 3px solid #56a8ff; outline-offset: 3px; } .lead-choice input:checked + label { background: var(--ink); border-color: var(--ink); color: #fff; } .lead-choice input:checked + label .lead-choice__check { color: var(--red); } .lead-choice input:checked + label .lead-choice__key { border-color: rgba(255,255,255,.4); } .lead-textarea { background: transparent; border: 0; border-bottom: 2px solid var(--ink); border-radius: 0; color: var(--ink); font-size: 1.2rem; line-height: 1.4; min-height: 6rem; padding: 1rem 0; resize: vertical; width: 100%; } .lead-fields { display: grid; gap: 1rem; grid-template-columns: repeat(2, 1fr); } .lead-field { display: grid; gap: .45rem; } .lead-field--wide { grid-column: span 2; } .lead-field label { font-size: .875rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; } .lead-field input, .lead-field select { background: #fff; border: 1px solid var(--line); border-radius: 0; min-height: 3.8rem; padding: .85rem 1rem; width: 100%; } .lead-consent { align-items: start; display: flex; gap: .8rem; margin-top: 1.25rem; } .lead-consent input { accent-color: var(--red); flex: 0 0 auto; height: 1.2rem; margin-top: .15rem; width: 1.2rem; } .lead-consent span { color: #555; font-size: .85rem; max-width: 44rem; } .lead-review { background: #fff; display: grid; column-gap: 1.5rem; grid-template-columns: repeat(2, 1fr); margin-bottom: 1.5rem; padding: 1.2rem 1.5rem; } .lead-review div { border-bottom: 1px solid var(--line); padding: .7rem 0; } .lead-review span { color: #666; display: block; font-size: .75rem; font-weight: 760; letter-spacing: .06em; text-transform: uppercase; } .lead-review strong { display: block; margin-top: .2rem; } .lead-review strong { overflow-wrap: anywhere; } .lead-controls { align-items: center; border-top: 1px solid var(--line); display: flex; justify-content: space-between; padding: 1rem clamp(1.5rem, 5vw, 5rem); } .lead-controls__hint { color: #6d6d67; font-size: .76rem; } .lead-controls__buttons { display: flex; gap: .65rem; } .lead-controls .button--quiet { border-color: var(--line); color: var(--ink); } .lead-success__mark { align-items: center; background: var(--red); color: #fff; display: flex; font-size: 2rem; height: 4.4rem; justify-content: center; margin-bottom: 2rem; width: 4.4rem; } .lead-reference { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); display: flex; justify-content: space-between; margin: 2rem 0; max-width: 38rem; padding: 1rem 0; } .lead-reference strong { color: var(--red); } .prototype-inline { color: #6b6b66; font-size: .76rem; margin-top: 1rem; } .support-options { display: grid; gap: 1px; grid-template-columns: repeat(2, 1fr); max-width: 55rem; } .support-option { background: #fff; padding: 1.6rem; } .support-option strong { display: block; font-size: 1.25rem; margin-bottom: 2rem; } .support-option a { border-bottom: 1px solid var(--ink); font-weight: 750; } @media (max-width: 980px) { .offering-hero__grid, .offer-intro, .offer-outcomes__head, .offer-faq { grid-template-columns: 1fr; } .offering-hero__code { display: none; } .offer-quickbar { grid-template-columns: repeat(3, 1fr); } .offer-quickbar span:nth-child(n+4) { display: none; } .offer-services { grid-template-columns: repeat(2, 1fr); } .lead-layout { grid-template-columns: 1fr; } .lead-aside { display: grid; gap: 2rem; grid-template-columns: 1fr auto; min-height: auto; padding: 2rem var(--pad); } .lead-aside__number { font-size: 5rem; justify-self: end; } .lead-aside__trust { display: none; } .lead-aside__bottom { display: none; } .lead-form-frame { min-height: calc(100svh - 15rem); } } @media (max-width: 680px) { .offering-hero { min-height: calc(100svh - 6.8rem); } .offering-hero__grid { padding-bottom: 7rem; } .offering-hero h1 { font-size: clamp(2.7rem, 14vw, 5.6rem); } .offering-hero__shade { background: linear-gradient(0deg, rgba(8,8,8,.94), rgba(8,8,8,.28)); } .offer-quickbar { grid-template-columns: 1fr; } .offer-quickbar span { padding: .7rem var(--pad); } .offer-quickbar span:nth-child(n+3) { display: none; } .offer-services, .offer-outcomes__grid, .industry-list, .related-offers__grid { grid-template-columns: 1fr; } .offer-service { min-height: 18rem; } .offer-outcome { border-bottom: 1px solid var(--line-dark); border-right: 0; min-height: 13rem; } .offer-industries__head { align-items: start; flex-direction: column; } .industry-list span:nth-child(odd) { margin-right: 0; } .lead-support-strip { align-items: stretch; flex-direction: column; gap: .25rem; } .lead-aside { display: none; } .lead-aside__number { display: none; } .lead-aside h1 { font-size: 2.5rem; margin-top: 1rem; } .lead-aside { padding: 1.6rem var(--pad); } .lead-aside h1 { font-size: 2rem; max-width: 17ch; margin: .7rem 0; } .lead-aside p:not(.eyebrow) { font-size: .875rem; } .lead-aside .eyebrow { margin-bottom: .75rem; } .lead-header { gap: 1rem; } .lead-header__back { display: none; } .lead-progress { padding: 1.2rem 1.25rem; } .lead-controls { padding-bottom: max(1rem, env(safe-area-inset-bottom)); } .lead-form-frame { min-height: calc(100svh - 18rem); } .lead-step, .lead-success, .support-route { padding: 2.5rem 1.25rem; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(2.6rem, 12vw, 4.3rem); } .lead-choices, .lead-fields, .lead-review, .support-options { grid-template-columns: 1fr; } .lead-field--wide { grid-column: auto; } .lead-controls { align-items: stretch; flex-direction: column; gap: .75rem; } .lead-controls__hint { display: none; } .lead-controls__buttons { width: 100%; } .lead-controls .button { flex: 1; } .lead-form { padding-bottom: 5.5rem; } .lead-controls { background: var(--paper); bottom: 0; left: 0; position: fixed; right: 0; z-index: 30; } .lead-form-frame { min-height: calc(100dvh - 7rem); } .feature-copy { padding: 3rem var(--pad); } } .source-note { font-size: .875rem; margin-top: 1.5rem !important; padding-top: 1.5rem !important; } .source-note a { text-decoration: underline; text-underline-offset: .2em; } @media (prefers-reduced-motion: reduce) { .lead-progress__fill { transition: none; } } #cookiescript_injected { background: #1c1c1c !important; } #cookiescript_readmore, #cookiescript_reportlink, #cookiescript_cookiescriptlink, #cookiescript_description a { color: #ffffff !important; text-decoration: underline !important; } #cookiescript_readmore:hover, #cookiescript_reportlink:hover, #cookiescript_cookiescriptlink:hover, #cookiescript_description a:hover { color: #ffffff !important; } #cookiescript_description, span[data-cs-desc-box="true"], .cookiescript_checkbox_text { color: #ffffff !important; } :root { --ink: #292527; --paper: #f5f6f6; --muted: #655e61; --rose: #fcf1f1; --burgundy: #712433; --line: #dedbdd; --max: 1440px; --space: clamp(4rem,7vw,7rem); } body { background: #fff; line-height: 1.6; overflow-wrap: normal; } h1, h2, h3 { font-weight: 600; hyphens: none; word-break: normal; overflow-wrap: normal; text-wrap: balance; } h2 { font-size: clamp(2rem,3.7vw,3.75rem); letter-spacing: -.035em; line-height: 1.12; } h3 { font-size: clamp(1.4rem,2.05vw,2rem); letter-spacing: -.025em; line-height: 1.2; } p { text-wrap: pretty; } .eyebrow, .statement-kicker { color: var(--red); font-size: .75rem; font-weight: 700; letter-spacing: .09em; line-height: 1.6; } .concept-bar { background: var(--paper); color: var(--muted); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: none; } .site-header, .site-header.is-compact { background: #fff; box-shadow: none; display: flex; gap: 2rem; height: 5.7rem; } .brand { flex-shrink: 0; } .brand svg, .brand img { height: 3.15rem; width: auto; } .desktop-nav { gap: clamp(.9rem,1.6vw,1.7rem); margin: 0 auto; } .desktop-nav a { font-size: .875rem; font-weight: 600; white-space: nowrap; } .desktop-nav a[aria-current="page"] { color: var(--red); } .header-actions { flex-shrink: 0; } .button { border-radius: 4px; font-size: 1rem; font-weight: 650; gap: 1rem; justify-content: center; line-height: 1.4; min-height: 3.4rem; padding: .85rem 1.25rem; text-align: center; } .button:hover { transform: none; } .button > span { flex-shrink: 0; } .button--compact { font-size: .875rem; min-height: 2.9rem; padding: .65rem 1rem; } .button--glass, .hero .button--glass, .button--quiet { backdrop-filter: none; background: #fff; border-color: #cfc9cc; color: var(--ink); } .button--glass:hover, .button--quiet:hover { background: var(--paper); border-color: var(--ink); } .button--ink { background: var(--red); color: #fff; } .button--ink:hover { background: var(--red-dark); } .button--white { color: var(--red-dark); } .button--white:hover { background: var(--rose); color: var(--red-dark); } .section-dark { background: var(--paper); color: var(--ink); } .hero { grid-template-columns: 1.05fr 1fr; min-height: 0; } .hero-media { min-height: 36rem; overflow: hidden; } .hero-media img { object-position: 43% center; position: absolute; } .hero-shade { display: none; } .hero-content { align-self: center; max-width: none; padding: clamp(3.5rem,6vw,6rem) var(--pad); } .hero h1 { font-size: clamp(2.5rem,5.2vw,5rem); font-weight: 600; letter-spacing: -.045em; line-height: 1.05; margin-bottom: 1.65rem; } .hero h1 span { background: none; display: block; margin: 0; padding: 0; white-space: normal; } .hero h1 span:last-child { color: var(--red); } .hero-copy { color: var(--muted); font-size: clamp(1.05rem,1.4vw,1.25rem); line-height: 1.6; margin: 0 0 2rem; max-width: 33rem; } .hero-proof { backdrop-filter: none; background: #fff; border-block: 1px solid var(--line); bottom: auto; gap: 0; grid-column: 1/-1; grid-template-columns: repeat(3,minmax(0,1fr)); position: static; text-transform: none; } .hero-proof span { border-right: 1px solid var(--line); color: var(--muted); font-size: .875rem; font-weight: 600; letter-spacing: 0; padding: 1.2rem var(--pad); text-align: center; } .hero-proof span:last-child { border-right: 0; } .statement { gap: 3rem; padding-block: var(--space); } .statement-copy { font-size: clamp(1.65rem,2.65vw,2.7rem); letter-spacing: -.025em; line-height: 1.3; } .statement-copy strong { color: var(--burgundy); font-weight: 600; } .solutions, .process, .group-proof, .knowledge, .offer-outcomes, .offer-industries, .offer-faq, .related-offers { padding-block: var(--space); } .section-heading { column-gap: clamp(2rem,6vw,6rem); grid-template-columns: 1.1fr .8fr; margin-bottom: 3rem; } .section-heading h2, .section-intro h2, .feature-copy h2, .training-copy h2, .group-head h2, .knowledge-heading h2, .contact-copy h2, .offer-intro h2, .offer-outcomes h2, .offer-industries h2 { font-size: clamp(2rem,3.7vw,3.75rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.12; max-width: none; } .section-heading > p:last-child, .group-head > p, .offer-outcomes__head > p { color: var(--muted); font-size: 1.0625rem; } .solution-grid { gap: 1rem; grid-template-columns: repeat(6,minmax(0,1fr)); } .solution-card, .solution-card--wide { background: #fff; border: 1px solid var(--line); border-radius: 6px; color: var(--ink); gap: 2.5rem; grid-column: span 2; min-height: 18.5rem; padding: clamp(1.4rem,2.4vw,2.3rem); } .solution-card:nth-child(-n+2) { grid-column: span 3; } .solution-card { grid-template-rows: auto 1fr; } .solution-card > div { align-self: start; } .solution-card:hover { border-color: var(--red); box-shadow: 0 8px 28px #7124330a; } .solution-card h3 { font-size: clamp(1.4rem,2.05vw,2rem); letter-spacing: -.025em; line-height: 1.2; max-width: none; } .solution-card:nth-child(-n+2) h3 { font-size: clamp(1.5rem,2.5vw,2.35rem); } .solution-card p { color: var(--muted); opacity: 1; } .solution-index, .product-number, .offer-service__number, .link-arrow, .product-arrow { color: var(--red); } .quick-order { gap: clamp(2rem,6vw,6rem); grid-template-columns: .9fr 1.1fr; padding-block: var(--space); } .section-intro > p { color: var(--muted); } .section-intro > .eyebrow { color: var(--red); font-size: .75rem; } .solution-index, .product-number, .offer-service__number { font-size: .75rem; } .legal-note { font-size: .875rem; margin-top: 2rem; } .product-shortcuts { gap: 1rem; } .product-shortcut { background: var(--paper); border: 1px solid var(--line); border-radius: 6px; gap: .75rem; grid-template-columns: 1fr auto; min-height: 14rem; padding: clamp(1.4rem,2.6vw,2.5rem); } .product-shortcut--dark { background: var(--rose); color: var(--ink); } .product-shortcut:hover { background: var(--paper); border-color: var(--red); color: var(--ink); } .product-title { font-size: clamp(1.5rem,2.2vw,2.2rem); font-weight: 600; grid-column: 1/-1; letter-spacing: -.025em; line-height: 1.2; max-width: none; text-wrap: balance; } .product-meta { color: var(--muted); font-size: .9375rem; grid-column: 1/-1; opacity: 1; } .product-action { color: var(--red-dark); font-size: .875rem; grid-column: 1/-1; letter-spacing: 0; text-transform: none; } .product-arrow { grid-column: 2; } .product-feature { background: var(--rose); color: var(--ink); grid-template-columns: 1.05fr 1fr; min-height: 0; } .product-image { min-height: 35rem; } .product-image img, .training-image img { position: absolute; } .image-caption { background: #fffffff2; bottom: 1.5rem; color: var(--ink); font-size: .8125rem; font-weight: 500; left: 1.5rem; letter-spacing: 0; max-width: calc(100% - 3rem); padding: .65rem 1rem; text-transform: none; } .feature-copy { padding: clamp(3rem,5vw,5rem) var(--pad); } .feature-copy > p:not(.eyebrow) { color: var(--muted); } .feature-list, .feature-list li { border-color: var(--line); } .feature-list { margin-block: 2rem; } .feature-list span { color: var(--red); } .text-link { border-color: currentColor; color: var(--red-dark); display: inline-flex; gap: 1rem; text-align: left; } .process-grid { gap: 2rem; grid-template-columns: repeat(3,minmax(0,1fr)); } .process-grid li { background: #fff; border-top: 1px solid var(--line); min-height: 0; padding: 1.5rem 0 0; } .process-grid h3 { font-size: clamp(1.75rem,2.5vw,2.5rem); letter-spacing: -.025em; margin: 2rem 0 1rem; } .training-story { background: var(--paper); grid-template-columns: 1fr 1.05fr; } .training-copy { padding-block: var(--space); } .training-image { min-height: 34rem; position: relative; } .group-proof { background: #fff; } .group-head { grid-template-columns: 1.1fr .8fr; margin-bottom: 3rem; } .group-numbers { border-color: var(--line); } .group-numbers div { border-color: var(--line); padding-block: 2rem; } .group-numbers strong { color: var(--red); font-size: clamp(2.6rem,4.7vw,4.5rem); font-weight: 500; letter-spacing: -.035em; margin-bottom: .6rem; } .group-numbers span { color: var(--muted); font-size: .9375rem; text-transform: none; } .specialist-intro { gap: 3rem; margin-top: 3.5rem; } .specialist-intro p { font-size: 1.25rem; } .specialist-intro span { color: var(--muted); font-size: .9375rem; } .specialist-grid { gap: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); } .specialist-grid div { background: var(--paper); border-radius: 4px; min-height: 0; padding: 1.6rem; } .specialist-grid strong { color: var(--burgundy); font-size: clamp(1.1rem,1.65vw,1.6rem); font-weight: 600; letter-spacing: -.02em; margin-bottom: .75rem; } .specialist-grid span { color: var(--muted); font-size: .875rem; text-transform: none; } .knowledge { background: var(--paper); } .knowledge-heading { margin-bottom: 3rem; } .knowledge-heading h2 { max-width: 45rem; } .answer-grid { gap: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); } .answer-card { background: #fff; border: 1px solid var(--line); border-radius: 6px; color: var(--ink); min-height: 0; padding: clamp(1.3rem,2.5vw,2.4rem); } .answer-card > span { color: var(--red); font-size: .75rem; margin-bottom: 2rem; } .answer-card h3 { font-size: clamp(1.3rem,1.9vw,1.75rem); letter-spacing: -.025em; line-height: 1.25; margin: 0 0 1rem; } .answer-card p { color: var(--muted); opacity: 1; } .answer-card a { color: var(--red-dark); font-size: .875rem; margin-top: auto; } .faq { grid-template-columns: .8fr 1.2fr; margin-top: var(--space); padding-top: var(--space); } .faq-title h2, .offer-faq__heading h2, .related-offers__head h2 { font-size: clamp(1.8rem,3vw,3rem); letter-spacing: -.03em; line-height: 1.15; } .faq-list summary, .offer-faq__list summary { display: flex; font-size: 1.125rem; font-weight: 600; justify-content: space-between; line-height: 1.5; padding-block: 1.3rem; } .faq-list summary span, .offer-faq__list summary::after { flex-shrink: 0; } .contact-cta { align-items: center; gap: 4rem; grid-template-columns: 1.1fr .8fr; padding-block: clamp(3.5rem,6vw,6rem); } .contact-copy .eyebrow { color: #fff; } .contact-copy h2 { max-width: 44rem; } .site-footer { background: #fff; color: var(--ink); gap: 3rem; grid-template-columns: 1.3fr repeat(3,minmax(0,1fr)); padding-block: 4rem; } .footer-brand img { height: 3.2rem; width: auto; } .footer-brand p { color: var(--muted); font-size: .9375rem; margin-top: 1rem; } .footer-column strong { font-size: .875rem; letter-spacing: 0; text-transform: none; } .footer-column a, .footer-column span { color: var(--muted); font-size: .875rem; } .footer-column a:hover { color: var(--red); text-decoration: underline; } .mobile-order { border-radius: 5px; box-shadow: 0 4px 18px #29252720; } .offering-hero { background: #fff; color: var(--ink); display: block; min-height: 0; overflow: visible; } .offering-hero__grid { align-items: stretch; gap: 0; grid-template-columns: 1.1fr .9fr; padding: 0; } .offering-hero__content { align-self: center; max-width: none; padding: clamp(3rem,5.5vw,5.5rem) var(--pad); } .breadcrumb { color: var(--muted); flex-wrap: wrap; font-size: .8125rem; font-weight: 500; letter-spacing: 0; line-height: 1.5; margin-bottom: 2.5rem; text-transform: none; } .breadcrumb a { opacity: 1; } .offering-hero h1 { font-size: clamp(2.3rem,4.6vw,4.65rem); font-weight: 600; letter-spacing: -.04em; line-height: 1.1; margin-bottom: 1.75rem; max-width: none; } .offering-hero h1 .accent { background: none; color: var(--red); display: block; padding: 0; } .offering-hero__lead { color: var(--muted); font-size: 1.125rem; line-height: 1.6; } .offering-hero__media { inset: auto; min-height: 32rem; overflow: hidden; position: relative; } .offering-hero__media img { position: absolute; } .offering-hero__shade { display: none; } .offering-hero__aside { align-self: center; background: var(--rose); border-radius: 6px; color: var(--burgundy); margin: 3rem var(--pad) 3rem 1rem; padding: clamp(2rem,4vw,4rem); } .offering-hero__aside h2 { font-size: clamp(2rem,3vw,3rem); margin-bottom: 1.2rem; } .offering-hero__aside p:not(.eyebrow) { color: var(--muted); } .offering-hero__aside ul { border-top: 1px solid #e6d4d8; list-style: none; margin: 2rem 0 0; padding: .5rem 0 0; } .offering-hero__aside li { border-bottom: 1px solid #e6d4d8; padding: .8rem 0; } .offer-quickbar { background: var(--paper); border-block: 1px solid var(--line); color: var(--muted); display: flex; flex-wrap: wrap; gap: .6rem 2rem; justify-content: center; letter-spacing: 0; padding: 1.1rem var(--pad); text-transform: none; } .offer-quickbar span { border: 0; display: block !important; font-size: .875rem; padding: 0; } .offer-intro { gap: clamp(2rem,6vw,6rem); grid-template-columns: 1fr 1fr; padding-block: var(--space) 3rem; } .offer-intro__body > p { font-size: 1.0625rem; } .offer-intro__body strong { color: var(--ink); font-weight: 500; } .offer-audience { border: 0; padding: 0; } .offer-audience span { background: var(--paper); border: 0; border-radius: 3px; color: var(--muted); font-size: .8125rem; letter-spacing: 0; text-transform: none; } .offer-services { gap: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); padding-bottom: var(--space); } .offer-service, .offer-service:nth-child(2) { background: var(--paper); border-radius: 6px; color: var(--ink); min-height: 0; padding: clamp(1.4rem,2.5vw,2.4rem); } .offer-service__number { margin-bottom: 2.5rem; } .offer-service h3 { font-size: clamp(1.3rem,1.85vw,1.8rem); letter-spacing: -.02em; line-height: 1.25; margin: 0 0 1rem; } .offer-service p { color: var(--muted); opacity: 1; } .offer-outcomes { background: var(--rose); } .offer-outcomes__head { grid-template-columns: 1.1fr .8fr; margin-bottom: 3rem; } .offer-outcomes__grid { border: 0; gap: 2rem; grid-template-columns: repeat(3,minmax(0,1fr)); } .offer-outcome { border: 0; border-top: 1px solid #dec7cd; min-height: 0; padding: 1.5rem 0 0; } .offer-outcome strong { font-size: 1rem; letter-spacing: 0; margin-bottom: 2rem; } .offer-outcome h3 { font-size: 1.5rem; } .offer-outcome p { color: var(--muted); font-size: 1rem; } .offer-industries__head { display: grid; grid-template-columns: 1.1fr .8fr; margin-bottom: 2.5rem; } .industry-list { column-gap: 3rem; } .industry-list span { font-size: 1.125rem; font-weight: 500; } .industry-list span:nth-child(odd) { margin-right: 0; } .industry-list span::after { content: none; } .offer-faq { grid-template-columns: .8fr 1.2fr; } .related-offers__grid { gap: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); } .related-offer, .related-offer:nth-child(2) { align-items: center; background: var(--paper); border: 1px solid var(--line); border-radius: 6px; color: var(--ink); display: flex; gap: 1.5rem; justify-content: space-between; min-height: 0; padding: 2rem; } .related-offer:hover { border-color: var(--red); } .related-offer strong { align-self: auto; font-size: clamp(1.3rem,2vw,1.8rem); letter-spacing: -.02em; line-height: 1.3; } .related-offer span { color: var(--red); flex-shrink: 0; } .order-dialog { border-radius: 8px; max-width: 58rem; } .order-dialog::backdrop { backdrop-filter: blur(4px); background: #29252777; } .order-shell { background: #fff; } .order-head h2 { font-size: clamp(1.7rem,3vw,2.6rem); letter-spacing: -.03em; line-height: 1.15; text-wrap: pretty; } .order-step-title { font-size: 1.4rem; letter-spacing: -.02em; } .order-progress li { font-size: .8125rem; letter-spacing: 0; text-transform: none; } .order-body > label { font-size: .875rem; letter-spacing: 0; text-transform: none; } .order-body input:not([type="radio"]):not([type="checkbox"]), .order-body select, .order-body textarea, .lead-field input, .lead-field select, .lead-textarea { border-color: #cfc9cc; border-radius: 4px; font-size: 1rem; } .radio-field legend { font-size: .875rem; letter-spacing: 0; text-transform: none; } .order-summary { background: var(--paper); border-radius: 4px; grid-template-columns: repeat(2,minmax(0,1fr)); } .order-summary span, .lead-review span { color: var(--muted); font-size: .8125rem; letter-spacing: 0; text-transform: none; } .order-foot { background: var(--paper); border-top: 1px solid var(--line); color: var(--ink); } .order-foot > p { color: var(--muted); font-size: .875rem; } .order-success h3 { font-size: clamp(1.8rem,3vw,3rem); letter-spacing: -.03em; line-height: 1.15; } .lead-page { background: #fff; } .lead-layout { grid-template-columns: minmax(17rem,29%) 1fr; } .lead-header { border-bottom: 1px solid var(--line); } .lead-aside { background: var(--rose); border-right: 1px solid #eedddd; color: var(--burgundy); padding: clamp(2rem,3.5vw,3.5rem); } .lead-aside h1 { font-size: clamp(2rem,2.8vw,2.8rem); letter-spacing: -.03em; line-height: 1.15; } .lead-aside p { color: var(--muted); font-size: 1rem; } .lead-aside .eyebrow { color: var(--red); font-size: .75rem; } .lead-aside__number, .lead-aside__bottom .lead-aside__number { display: none; } .lead-aside__trust { border-color: #e5ced4; color: var(--muted); font-size: .875rem; letter-spacing: 0; text-transform: none; } .lead-aside__trust a { color: var(--red-dark); } .lead-form-frame { background: #fff; } .lead-progress { padding: 1.2rem clamp(1.25rem,4.5vw,4.5rem); } .lead-progress span { color: var(--muted); font-size: .8125rem; font-weight: 500; letter-spacing: 0; text-transform: none; } .lead-step, .lead-success, .support-route { padding: 2rem clamp(1.25rem,4.5vw,4.5rem) 2.5rem; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(2rem,3.6vw,3.6rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.14; text-wrap: pretty; } .lead-choice label { border: 1px solid #d9d3d6; border-radius: 5px; gap: .7rem; grid-template-columns: auto minmax(0,1fr); line-height: 1.45; min-height: 4rem; } .lead-choice label:hover { background: var(--paper); } .lead-choice__key { border-color: #aaa2a6; border-radius: 3px; color: transparent; height: 1.35rem; width: 1.35rem; } .lead-choice input[type="radio"] + label .lead-choice__key { border-radius: 50%; font-size: .6rem; } .lead-choice input:checked + label { background: var(--rose); border-color: var(--red); color: var(--burgundy); } .lead-choice input:checked + label .lead-choice__key { background: var(--red); border-color: var(--red); color: #fff; } .lead-choice__text small { color: var(--muted); display: block; font-size: .875rem; font-weight: 400; line-height: 1.45; margin-top: .3rem; } .lead-extras { border-top: 1px solid var(--line); margin-top: 2rem; padding-top: 1.5rem; } .lead-extras h3 { font-size: 1.25rem; line-height: 1.3; margin: 0 0 .5rem; } .lead-extras > p { color: var(--muted); font-size: .875rem; margin: 0 0 1rem; } .lead-field label { letter-spacing: 0; text-transform: none; } .lead-review { background: var(--paper); border-radius: 5px; grid-template-columns: repeat(2,minmax(0,1fr)); } .lead-controls { background: #fff; } .lead-textarea { background: #fff; border: 1px solid #cfc9cc; padding: .85rem 1rem; } .help-link { color: var(--muted); } .support-option { background: var(--paper); border-radius: 5px; } .support-option a { color: var(--red-dark); } .lead-privacy { background: var(--paper); } .success-mark, .lead-success__mark { background: var(--rose); border-radius: 50%; color: var(--red); height: 3.5rem; width: 3.5rem; } .motion-ready .reveal { transform: translateY(12px); transition-duration: .4s; } .motion-ready .reveal.is-visible { transform: none; } @media (max-width: 1180px) { .site-header { gap: 1.25rem; } .header-actions .phone-link { display: none; } } @media (max-width: 1050px) { .site-header, .site-header.is-compact { height: 5rem; } .menu-toggle { margin-left: auto; } .desktop-nav { margin: 0; } .desktop-nav a { font-size: 1rem; padding: .8rem 0; } .hero-content { padding: 3rem var(--pad); } .hero-media { min-height: 30rem; } .hero-cta { align-items: stretch; flex-direction: column; } .hero-cta .button { width: 100%; } .statement { gap: 1.5rem; grid-template-columns: 1fr; } .statement-kicker { margin: 0; } .section-heading, .group-head, .offer-outcomes__head { gap: 1.5rem; grid-template-columns: 1fr; } .solution-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .solution-card, .solution-card:nth-child(-n+2) { grid-column: span 1; } .solution-card:last-child { grid-column: 1/-1; } .solution-card h3, .solution-card:nth-child(-n+2) h3 { font-size: 1.75rem; } .quick-order { gap: 2rem; grid-template-columns: 1fr; } .product-shortcuts { grid-template-columns: repeat(2,minmax(0,1fr)); } .product-feature, .training-story { grid-template-columns: 1fr 1fr; } .feature-copy, .training-copy { padding: 3rem var(--pad); } .feature-copy h2, .training-copy h2 { font-size: 2rem; } .product-image, .training-image { min-height: 32rem; } .answer-grid { grid-template-columns: 1fr; } .answer-card { display: grid; column-gap: 2rem; grid-template-columns: 1fr 1fr; } .answer-card > span { grid-column: 1/-1; margin-bottom: 1.25rem; } .answer-card a { grid-column: 2; justify-self: start; } .faq, .offer-faq { grid-template-columns: 1fr; } .specialist-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .site-footer { gap: 2rem; grid-template-columns: repeat(3,minmax(0,1fr)); padding-bottom: 7rem; } .footer-brand { grid-column: 1/-1; } .offering-hero__grid { grid-template-columns: 1.1fr .9fr; } .offering-hero__content { padding: 3rem var(--pad); } .offering-hero h1 { font-size: 2.65rem; } .offering-hero__aside { margin-right: var(--pad); padding: 1.7rem; } .offer-services { grid-template-columns: repeat(2,minmax(0,1fr)); } .lead-layout { grid-template-columns: minmax(14rem,27%) 1fr; } .lead-aside { display: flex; padding: 2rem 1.5rem; } .lead-aside h1 { font-size: 2rem; } .lead-choices { grid-template-columns: 1fr; } .lead-controls__hint { display: none; } } @media (max-width: 700px) { .concept-bar { font-size: .75rem; } .brand svg, .brand img { height: 2.65rem; width: auto; } .site-header, .site-header.is-compact { height: 4.75rem; } .hero { grid-template-columns: 1fr; min-height: 0; } .hero-content { grid-column: 1; grid-row: 1; padding: 2.75rem var(--pad); } .hero h1 { font-size: clamp(2.2rem,9.2vw,3.6rem); } .hero-copy { font-size: 1.0625rem; margin-bottom: 1.5rem; } .hero-media { aspect-ratio: 4/3; grid-column: 1; grid-row: 2; min-height: 0; } .hero-media img { object-position: 48% center; } .hero-proof { grid-template-columns: 1fr; } .hero-proof span { border-bottom: 1px solid var(--line); border-right: 0; font-size: .8125rem; padding: .65rem var(--pad); } .hero-proof span:nth-child(n) { display: block; } .hero-proof span:last-child { border-bottom: 0; } .statement-copy { font-size: 1.65rem; } .section-heading h2, .section-intro h2, .feature-copy h2, .training-copy h2, .group-head h2, .knowledge-heading h2, .contact-copy h2, .offer-intro h2, .offer-outcomes h2, .offer-industries h2 { font-size: clamp(1.75rem,7.2vw,2.5rem); } .solution-grid, .product-shortcuts, .product-feature, .training-story, .process-grid { grid-template-columns: 1fr; } .solution-card, .solution-card:nth-child(-n+2), .solution-card:last-child { grid-column: auto; min-height: 0; } .solution-card { gap: 2rem; } .solution-card h3, .solution-card:nth-child(-n+2) h3, .product-title { font-size: 1.5rem; } .product-image, .training-image { aspect-ratio: 4/3; min-height: 0; } .training-image { grid-row: 1; } .process-grid { gap: 2rem; } .process-grid h3 { margin-top: 1.2rem; } .group-numbers { grid-template-columns: repeat(3,minmax(0,1fr)); } .group-numbers div, .group-numbers div:not(:first-child) { border-bottom: 0; padding: 1.4rem .75rem; } .group-numbers strong { font-size: 2rem; } .group-numbers span { display: block; font-size: .8125rem; line-height: 1.4; } .specialist-intro { flex-direction: column; gap: 1rem; } .specialist-grid { grid-template-columns: 1fr; } .specialist-grid strong { font-size: 1.3rem; } .answer-card { display: flex; } .answer-card a { margin-top: .5rem; } .faq-list summary, .offer-faq__list summary { font-size: 1rem; } .contact-cta { gap: 1.5rem; grid-template-columns: 1fr; } .site-footer { grid-template-columns: 1fr 1fr; } .footer-column:last-child { grid-column: 1/-1; } .offering-hero__grid { grid-template-columns: 1fr; padding-bottom: 0; } .offering-hero__content { padding: 2rem var(--pad) 2.5rem; } .breadcrumb { margin-bottom: 2rem; } .offering-hero h1 { font-size: clamp(2.05rem,8.2vw,3.25rem); } .offering-hero__media { aspect-ratio: 4/3; min-height: 0; } .offering-hero__aside { margin: 0 var(--pad) 2.5rem; } .offer-quickbar { gap: .5rem 1.25rem; justify-content: start; } .offer-intro, .offer-services, .offer-outcomes__grid, .offer-industries__head, .related-offers__grid { grid-template-columns: 1fr; } .offer-intro { gap: 1.5rem; } .offer-service__number { margin-bottom: 1.5rem; } .offer-service h3 { font-size: 1.4rem; } .industry-list { column-gap: 1.5rem; } .industry-list span { font-size: 1rem; } .related-offer { padding: 1.5rem; } .order-dialog { border-radius: 0; } .order-summary { grid-template-columns: 1fr; } .order-head h2 { font-size: 1.8rem; } .order-step-title { font-size: 1.3rem; } .order-nav { flex-wrap: wrap; } .lead-layout { grid-template-columns: 1fr; } .lead-aside { clip: rect(0,0,0,0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; } .lead-step, .lead-success, .support-route { padding: 1.5rem 1.25rem 2.5rem; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(1.9rem,7.5vw,2.6rem); } .lead-fields, .lead-review, .support-options { grid-template-columns: 1fr; } .lead-field--wide { grid-column: auto; } .lead-controls { background: #fff; } } @media (prefers-reduced-motion: reduce) { .motion-ready .reveal { opacity: 1; transform: none; } } .mobile-order { display: none !important; } .lead-review-wrap { border-top: 1px solid var(--line); margin-top: 2rem; padding-top: 1.2rem; } .lead-review-label { color: var(--muted); font-size: .75rem; font-weight: 750; letter-spacing: .08em; margin: 0 0 .65rem; text-transform: uppercase; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(2.25rem,4.2vw,4.2rem); line-height: 1.02; } .lead-step > p, .lead-success > p, .support-route > p { margin-bottom: 1.5rem; } @media (max-width: 1050px) { .hero { grid-template-columns: minmax(0,1.14fr) minmax(18rem,.86fr); } .hero-media { min-height: 30rem; } .hero-media img { object-position: 28% center; } .hero-content { padding: 2.75rem clamp(1.5rem,4vw,3.5rem); } .hero h1 { font-size: clamp(2.3rem,5vw,4.2rem); } .hero .eyebrow { max-width: 28ch; } .lead-layout { grid-template-columns: minmax(13rem,22vw) minmax(0,1fr); } .lead-aside { padding: 2.25rem 1.35rem; } .lead-aside h1 { font-size: clamp(2rem,3.2vw,3rem); line-height: .98; } .lead-step, .lead-success, .support-route { padding: 2rem clamp(1.5rem,4vw,3.5rem) 2.5rem; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(2rem,4.2vw,3.4rem); } } @media (max-width: 700px) { .hero, .lead-layout { grid-template-columns: minmax(0,1fr); } .hero-media img { object-position: 42% center; } .hero .eyebrow { max-width: 30ch; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(1.95rem,8.5vw,2.7rem); } .lead-review-wrap { margin-top: 1.5rem; } } .lead-product { background: #fcf1f1; border-left: 3px solid #d52b30; padding: 1.25rem; margin: 0 0 1.5rem; } .lead-product[hidden] { display: none; } .lead-product__label { font-size: .875rem; color: #a12126; margin: 0 0 .5rem; } .lead-product > strong { display: block; font-size: 1.0625rem; line-height: 1.5; } .lead-product > p:not(.lead-product__label) { font-size: .875rem; line-height: 1.5; margin: .5rem 0; color: var(--muted); } .lead-product .help-link { margin-top: .65rem; text-decoration: underline; } :root { --space: clamp(3rem,5.5vw,5.5rem); } html { scroll-padding-top: 6rem; } .site-header { gap: 1.5rem; } .desktop-nav { gap: clamp(.75rem,1.2vw,1.3rem); } .desktop-nav a { font-size: .9375rem; } .desktop-nav .nav-contact { display: none; } .header-actions .phone-link { display: none; } .hero-content { padding-block: clamp(2.5rem,4vw,4rem); } .hero h1 { font-size: clamp(2.25rem,4.5vw,4.5rem); hyphens:auto; } .hero-media { min-height: 28rem; } .hero-cta { gap: .75rem; } .hero .eyebrow { max-width: none; } .solution-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; } .solution-card, .solution-card:nth-child(-n+2), .solution-card--wide { grid-column: auto; min-height: 16rem; padding: 1.75rem; gap: 1.5rem; } .solution-card h3, .solution-card:nth-child(-n+2) h3 { font-size: clamp(1.4rem,1.9vw,1.85rem); line-height: 1.2; } .solution-card p { font-size: 1rem; line-height: 1.5; } .course-links { display: grid; gap: 0; margin-top: 1.5rem; } .course-links a { display: flex; justify-content: space-between; align-items: center; gap: 1rem; min-height: 3.5rem; border-top: 1px solid var(--line); font-size: 1rem; font-weight: 600; text-decoration: none; } .about-teaser, .course-focus, .service-review { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(2rem,6vw,6rem); padding: var(--space) var(--pad); } .about-teaser { background: var(--paper); } .about-teaser h2, .course-focus h2, .service-review h2, .about-companies h2 { font-size: clamp(1.9rem,3.4vw,3.4rem); line-height: 1.14; letter-spacing: -.035em; } .about-teaser p, .course-focus p { font-size: 1.0625rem; line-height: 1.6; color: var(--muted); } .about-teaser .text-link { margin-top: 1.3rem; display: inline-flex; } .course-focus { background: #fff; scroll-margin-top: 5rem; } .course-focus ul { margin: 1.5rem 0; padding-left: 1.2rem; } .course-focus li { font-size: 1rem; margin-bottom: .7rem; } .course-focus .button { margin-top: .5rem; max-width: 100%; line-height: 1.45; } .course-focus__actions { display:flex; flex-wrap:wrap; align-items:center; gap:1rem 1.5rem; } .course-focus__actions .button { margin-top:0; } .course-quote { margin: 0; padding: clamp(1.5rem,3vw,3rem); background: var(--rose); border-radius: 6px; } .course-quote blockquote { margin: 1.5rem 0 2rem; font-size: clamp(1.5rem,2.6vw,2.5rem); line-height: 1.35; letter-spacing: -.025em; } .course-quote figcaption { display: grid; gap: .5rem; border-top: 1px solid var(--line); padding-top: 1rem; } .course-quote figcaption span { font-size: .875rem; line-height: 1.5; color: var(--muted); } .customer-voices__grid--three { grid-template-columns: repeat(3,minmax(0,1fr)); } .customer-voices__grid--three .customer-voice { padding: 1.5rem; } .customer-voices__grid--three blockquote p { font-size: clamp(1.35rem,1.8vw,1.8rem); } .review-area { font-size: .875rem; font-weight: 650; color: var(--red-dark); margin-bottom: 1.25rem; } .service-review { background: #fff; } .service-review .customer-voice blockquote p { font-size: clamp(1.4rem,2.4vw,2.1rem); } .about-companies { padding: var(--space) var(--pad); } .about-companies__head { max-width: 46rem; margin-bottom: 2.5rem; } .about-companies__head > p { font-size: 1.0625rem; color: var(--muted); } .about-companies .specialist-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } .about-companies h3 { font-size: 1.4rem; margin: 0 0 .65rem; } .about-companies .specialist-grid p { font-size: 1rem; color: var(--muted); margin: 0; } .plan-services { grid-template-columns: repeat(4,minmax(0,1fr)); } .offer-service { scroll-margin-top: 7rem; } .offer-service h3[id] { scroll-margin-top: 7rem; } .offer-services .text-link { display: inline-block; font-size: 1rem; margin-top: 1rem; } .offer-quickbar a { color: var(--red-dark); text-decoration: none; border-bottom: 1px solid #d9b7bb; padding: .35rem 0; font-size: .9375rem; } .offer-audience span, .industry-list span { min-width:0; max-width:100%; overflow-wrap:anywhere; hyphens:auto; } .industry-list { grid-template-columns:repeat(2,minmax(0,1fr)); } .offering-hero__aside a { font-size: 1rem; line-height: 1.5; text-decoration: none; } .related-offers__grid { grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr)); margin-top: 1.5rem; } .button, .course-links a { max-width:100%; overflow-wrap:anywhere; } .training-story > *, .course-links, .customer-voice, .footer-column { min-width:0; } .customer-voice, .footer-column { overflow-wrap:anywhere; } .related-offer { line-height: 1.45; } .reveal, .motion-ready .reveal { opacity: 1; transform: none; } .lead-page { background: #f5f6f6; } .lead-header { height: auto; min-height: 5rem; padding-block: .75rem; background: #fff; } .lead-header .brand img { width: 105px; height: auto; } .lead-layout { display: block; min-height: 0; max-width: 48rem; margin: 1.5rem auto 2rem; padding: 0 1.25rem; } .lead-form-frame { display: block; min-height: 0; background: #fff; border: 1px solid var(--line); border-radius: .5rem; } .lead-progress { padding: 1rem 1.5rem; gap: .75rem; border-bottom: 1px solid var(--line); } .lead-progress span { font-size: .875rem; } .lead-progress__fill { width: 25%; } .lead-form { display: block; padding: 0; } .lead-step, .lead-success, .support-route { padding: 1.5rem; max-width: none; } .lead-step h2, .lead-success h2, .support-route h2 { font-size: clamp(1.65rem,3vw,2.25rem); line-height: 1.15; margin: 0 0 .75rem; letter-spacing: -.03em; } .lead-step > .lead-question-number { display: none; } .lead-step > p, .lead-success > p, .support-route > p { font-size: 1rem; margin-bottom: 1.25rem; } .lead-choices { grid-template-columns: repeat(auto-fit,minmax(min(100%,17rem),1fr)); gap: .6rem; } .lead-choice label { min-height: 3.2rem; height: 100%; padding: .7rem .8rem; font-size: 1rem; gap: .65rem; } .lead-choice__key { height: 1.15rem; width: 1.15rem; flex-shrink: 0; } .existing-help { margin-top: 1rem; font-size: .875rem; } .lead-controls { position: static; padding: 1rem 1.5rem; min-height: 5rem; width: auto; border-radius: 0 0 .5rem .5rem; gap: 1rem; } .lead-controls__hint { display: none; } .lead-controls__buttons { display: flex; flex-wrap:wrap; justify-content: flex-end; width: 100%; gap: .65rem; } .lead-controls .button { flex: 0 0 auto; min-height: 3rem; padding: .65rem 1.25rem; line-height: 1.4; hyphens:auto; } .lead-controls .button[hidden], .lead-step[hidden], .lead-success[hidden], .support-route[hidden] { display: none; } .lead-error { padding: 0 1.5rem; margin: 0; } .lead-error:not(:empty) { padding-bottom: 1rem; } .scope-field { margin-top: 1rem; } .lead-fields { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem 1rem; } .lead-field--wide { grid-column: 1/-1; } .lead-field input, .lead-field select { min-height: 3rem; padding: .65rem .8rem; } .lead-field label { font-size: .875rem; line-height: 1.4; } .lead-extras { margin-top: 1.2rem; padding-top: 1rem; } .lead-extras h3 { font-size: 1rem; } .lead-extras > p { margin-bottom: .7rem; } .lead-product { padding: 1rem; margin-bottom: 1rem; } .lead-product .help-link { margin-top: .35rem; padding: 0; min-height: 2rem; } .lead-product > p:not(.lead-product__label) { margin: .3rem 0; } .lead-product > strong { font-size:1rem; display:block; min-width:0; overflow-wrap:anywhere; hyphens:auto; } .lead-review-wrap, .lead-more { border-top: 1px solid var(--line); margin-top: 1rem; padding-top: 0; } .lead-review-wrap summary, .lead-more summary, .need-options summary { padding: .85rem 0; font-size: .9375rem; line-height: 1.4; cursor: pointer; font-weight: 600; } .need-options summary[hidden] { display: none; } .lead-review { margin: 0 0 1rem; padding: .8rem 1rem; font-size: .9375rem; } .lead-review-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.5rem; margin-top:1rem; } .lead-review-heading h3 { margin:0; font-size:1rem; } .lead-review-heading .help-link { min-height:44px; margin:0; padding:.5rem 0; } .lead-more__body { display: grid; gap: 1rem; padding-bottom: 1rem; } .lead-textarea { font-size: 1rem; padding: .7rem; min-height: 5rem; } .lead-step .prototype-inline { font-size: .875rem; line-height: 1.5; margin: 1rem 0 0; } .lead-privacy { max-width: 48rem; margin: 0 auto; padding: 0 1.25rem 2rem; background: none; } .lead-privacy p { font-size: .875rem; line-height: 1.55; } @media (max-width: 1279px) { .action-decoration, [aria-hidden="true"]:has(> .action-decoration) { display: none !important; } .industry-list span::after { content: none; } html:not(.js) .site-header { flex-wrap: wrap; position: relative; height:auto; padding-block:1rem; } html:not(.js) .site-header .desktop-nav { display: flex; flex-wrap: wrap; position:static; width: 100%; max-height:none; box-shadow:none; } html:not(.js) .site-header .menu-toggle { display: none; } .js .desktop-nav { display: none; } .js .menu-toggle { display: flex; } .desktop-nav.is-open { display: flex; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0; background: #fff; padding: 1rem var(--pad); box-shadow: 0 12px 16px #0000000b; max-height: calc(100dvh - 7rem); overflow-y: auto; } .desktop-nav.is-open a { display: block; padding: .65rem 0; font-size: 1rem; } .site-header { justify-content: space-between; } .header-actions { display: none; } } @media (min-width: 1280px) { .menu-toggle { display: none; } } .mobile-action-bar { display: none; } .advice-call { margin: .75rem 0 0; font-size: .9375rem; line-height: 1.5; } .advice-call a { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 0 .3em; min-height: 44px; color: #a51d25; font-weight: 700; text-decoration: underline; text-underline-offset: .2em; } .advice-call a span { white-space: nowrap; } .advice-call a:focus-visible { outline: 3px solid #332d29; outline-offset: 4px; } .advice-call--contact { display: flex; flex-wrap: wrap; align-items: center; gap: 0 1.25rem; margin: 0; padding: .625rem 1.5rem; background: #faf8f5; border-bottom: 1px solid #e5dfda; } .advice-call--contact p { margin: 0; max-width: 40ch; color: #59534f; } @media (max-width: 1279px) { .site-header .brand img, .site-header .brand svg { width: 105px; height: auto; } .js .menu-toggle { flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 48px; height: 48px; padding: 12px; flex-shrink: 0; } .js .menu-toggle span:not(.sr-only) { width: 24px; margin: 0; flex-shrink: 0; } html:has(.has-mobile-actions) { scroll-padding-bottom: var(--mobile-action-space, calc(6rem + env(safe-area-inset-bottom))); } body.has-mobile-actions { padding-bottom: var(--mobile-action-space, calc(6rem + env(safe-area-inset-bottom))); } .mobile-action-bar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; position: fixed; inset: auto 0 0; z-index: 90; padding: 12px max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)); background: #fff; border-top: 1px solid #e5dfda; box-shadow: 0 -6px 24px #32251c0d; } .mobile-action-bar a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; min-width: 0; padding: 10px 12px; border-radius: 8px; font-size: 1rem; font-weight: 700; line-height: 1.3; text-align: center; text-decoration: none; hyphens:auto; } .mobile-action-bar__primary { background: #bb2028; color: #fff; } .mobile-action-bar__primary:hover { background: #9e1820; } .mobile-action-bar__primary span { flex-shrink: 0; } .mobile-action-bar__phone { color: #332d29; border: 1px solid #d8d0c9; background: #faf8f5; } .mobile-action-bar a:focus-visible { outline: 3px solid #332d29; outline-offset: 3px; } .menu-is-open .mobile-action-bar { visibility: hidden; } } @media (max-width: 379px) { .mobile-action-bar__primary span { display: none; } } @media (max-width: 980px) { .solution-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .customer-voices__grid--three { grid-template-columns: minmax(0,1fr); } .customer-voices__grid--three .customer-voice { display: grid; grid-template-columns: 1fr 1fr; column-gap: 2rem; } .customer-voices__grid--three .review-area { grid-column: 1/-1; } .customer-voices__grid--three blockquote { margin: 0; } .customer-voices__grid--three figcaption { border-top: 0; padding-top: 0; margin-top: 0; } .plan-services { grid-template-columns: repeat(2,minmax(0,1fr)); } } @media (max-width: 700px) { .industry-list { grid-template-columns:minmax(0,1fr); } .site-footer { grid-template-columns: repeat(2,minmax(0,1fr)); } .hero, .offering-hero__grid { grid-template-columns: minmax(0,1fr); } .hero-content { padding: 2rem var(--pad); } .hero h1 { font-size: clamp(2.15rem,8vw,3.3rem); } .hero-media { min-height: 0; aspect-ratio: 16/9; } .hero-proof { display: flex; flex-wrap: wrap; justify-content: center; padding: .5rem; gap: 0 .75rem; } .hero-proof span { border: 0; padding: .25rem 0; font-size: .8125rem; } .solution-grid, .about-teaser, .course-focus, .service-review, .about-companies .specialist-grid, .plan-services { grid-template-columns: minmax(0,1fr); } .solution-card, .solution-card:nth-child(-n+2) { min-height: 0; gap: 1.25rem; padding: 1.5rem; } .solution-card h3, .solution-card:nth-child(-n+2) h3 { font-size: 1.5rem; } .offering-hero__media { min-height: 0; aspect-ratio: 16/9; } .offering-hero__content { padding: 2rem var(--pad); } .offering-hero h1 { font-size: clamp(2rem,7.5vw,3.2rem); overflow-wrap: normal; } .offering-hero__aside { margin: 0 var(--pad) 2rem; } .customer-voices__grid--three .customer-voice { display: flex; } .customer-voices__grid--three blockquote { margin-bottom: 1.25rem; } .customer-voices__grid--three figcaption { border-top: 1px solid var(--line); padding-top: 1rem; } .lead-layout { margin: .75rem auto 1rem; padding: 0 .75rem; } .lead-header { min-height: 4rem; padding: .5rem 1rem; } .lead-progress { padding: .85rem 1rem; } .lead-step, .lead-success, .support-route { padding: 1.1rem 1rem; } .lead-controls { padding: .85rem 1rem; min-height: 0; } .lead-choices { gap: .5rem; } .lead-choice label { padding: .65rem; } .lead-step > p { margin-bottom: 1rem; } .lead-fields { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; } .lead-fields .lead-field:has(#email), .lead-fields .lead-field:has(#phone) { grid-column: 1/-1; } .lead-step h2 { font-size: 1.75rem; } .lead-more .lead-fields { grid-template-columns: 1fr; } .lead-privacy { padding: 0 1.75rem 2rem; } } @media (max-width: 379px) { .lead-choices { grid-template-columns: 1fr; } .lead-step h2 { font-size: 1.65rem; } .lead-header__back { display: none; } } .customer-voices { background:#f5f6f6; border-block:1px solid var(--line); padding:var(--space) var(--pad); } .customer-voices__heading { display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:1.5rem 3rem; margin-bottom:2.5rem; } .customer-voices__heading .eyebrow { margin:0 0 1rem; } .customer-voices__heading h2 { font-size:clamp(2rem,3.6vw,3.5rem); line-height:1.15; text-wrap:balance; margin:0; } .customer-voices__heading > p { color:var(--muted); font-size:1.0625rem; line-height:1.6; margin:0; max-width:29rem; } .customer-voices__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; } .customer-voices--home .customer-voices__grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .customer-voice { min-width:0; background:#fff; border:1px solid #dedfe0; border-top:3px solid #bc2029; border-radius:6px; display:flex; flex-direction:column; margin:0; padding:clamp(1.4rem,2.5vw,2.25rem); } .customer-voice .review-area { align-self:flex-start; color:#9e1720; font-size:.875rem; font-weight:650; line-height:1.5; margin:0 0 1.25rem; } .customer-voice blockquote { margin:0 0 1.75rem; } .customer-voice blockquote p { font-size:clamp(1.125rem,1.4vw,1.375rem); font-weight:500; letter-spacing:-.015em; line-height:1.5; margin:0; text-wrap:pretty; } .customer-voice blockquote p::before { content:'“'; } .customer-voice blockquote p::after { content:'”'; } .customer-voice figcaption { border-top:1px solid var(--line); display:grid; gap:.25rem; margin-top:auto; padding-top:1rem; } .customer-voice figcaption strong { font-size:1rem; font-weight:650; line-height:1.5; } .customer-voice figcaption span,.customer-voice time { color:var(--muted); font-size:.875rem; line-height:1.5; } .customer-voice figcaption a { display:inline-flex; align-items:center; justify-self:start; min-height:44px; font-size:.875rem; font-weight:650; text-decoration:underline; text-underline-offset:.2em; } .customer-voice a:focus-visible { outline:3px solid #a51923; outline-offset:3px; } .customer-voices__note { margin:1.5rem 0 0; color:var(--muted); font-size:.875rem; line-height:1.6; max-width:70rem; } .customer-voices__more { margin-top:1.5rem; } .customer-voices__more summary { width:fit-content; min-height:44px; padding:.75rem 0; cursor:pointer; color:var(--red-dark); font-weight:650; text-decoration:underline; text-underline-offset:.2em; } .customer-voices__more summary:focus-visible { outline:3px solid var(--red-dark); outline-offset:4px; } .customer-voices__more[open] summary { margin-bottom:1rem; } .customer-voices__grid--single { grid-template-columns:minmax(0,1fr); } .customer-voices__grid--single .customer-voice { display:grid; grid-template-columns:1.4fr 1fr; gap:0 3rem; } .customer-voices__grid--single .review-area { grid-column:1/-1; } .customer-voices__grid--single blockquote { margin:0; } .customer-voices__grid--single figcaption { border:0; border-left:1px solid var(--line); padding:0 0 0 2rem; margin:0; } @media(max-width:1050px) { .customer-voices--home .customer-voices__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } } @media(max-width:700px) { .customer-voices__heading,.customer-voices__grid,.customer-voices--home .customer-voices__grid { grid-template-columns:minmax(0,1fr); } .customer-voices__heading { gap:1rem; margin-bottom:1.75rem; } .customer-voice { padding:1.5rem; } .customer-voice blockquote { margin-bottom:1.25rem; } .customer-voices__grid--single .customer-voice { display:flex; } .customer-voices__grid--single figcaption { border:0; border-top:1px solid var(--line); padding:1rem 0 0; } .customer-voice,.customer-voices__note { overflow-wrap:anywhere; } } .specialist-offerings { padding: var(--space) var(--pad); background: var(--paper); } .specialist-offerings h2 { font-size:clamp(1.8rem,3vw,3rem); line-height:1.2; letter-spacing:-.03em; } .specialist-disclosures { border-top:1px solid var(--line); } .specialist-disclosures details { border-bottom:1px solid var(--line); scroll-margin-top:7rem; } .specialist-disclosures summary { cursor:pointer; font-size:1.125rem; font-weight:650; padding:1.2rem .25rem; } .specialist-disclosures details > div { padding:0 .25rem 1.5rem; max-width:44rem; } .specialist-disclosures p { color:var(--muted); font-size:1rem; line-height:1.65; } .specialist-disclosures .text-link { font-size:1rem; } .editorial-source { font-size:.875rem; margin-top:2rem; color:var(--muted); } .editorial-source .text-link { font-size:.875rem; } .specialist-grid .text-link { display:inline-block; margin-top:1rem; font-size:1rem; } .retained-needs { margin-top:1rem; padding:1rem; background:var(--paper); } .retained-needs p { font-size:.9375rem; margin:0 0 .5rem; } .retained-choice { border:1px solid var(--line); background:white; color:var(--ink); border-radius:.25rem; padding:.6rem; margin:.25rem; font:inherit; font-size:.9375rem; cursor:pointer; min-height:44px; } .copy-enquiry { margin-top:1rem; } #copy-status { font-size:.9375rem; margin-top:1rem; } #email-copy-text { width:100%; min-height:12rem; font:inherit; font-size:1rem; padding:1rem; } .lead-controls { position:static; background:#fff; padding-bottom:max(.85rem,env(safe-area-inset-bottom)); border-top:1px solid var(--line); flex-direction:column; } #lead-delivery-note { margin:0; font-size:.875rem; line-height:1.45; width:100%; } .lead-form-frame { scroll-margin-top:1rem; } .lead-field input, .lead-field select, .lead-field textarea { scroll-margin-block:6rem; } .lead-step h2 { text-wrap:balance; } .lead-choice label { overflow-wrap:anywhere; hyphens:auto; } .lead-solution { flex-wrap:wrap; } .offering-hero h1, .breadcrumb { hyphens:manual; } h1, h2, h3, h4, p, a, summary { overflow-wrap:anywhere; } .offering-hero h1 { overflow-wrap:anywhere; } .intent-paths { grid-column:1/-1; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr)); background:#fff; border-block:1px solid var(--line); } .intent-paths a { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.25rem var(--pad); font-size:1rem; font-weight:650; text-decoration:none; border-right:1px solid var(--line); } .intent-paths a:last-child { border-right:0; } .intent-paths a:hover { background:var(--rose); color:var(--red-dark); } .catalog-section { padding:var(--space) var(--pad); background:var(--paper); } .catalog-heading { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:2.5rem; } .catalog-heading h2 { font-size:clamp(2rem,3.4vw,3.4rem); line-height:1.13; letter-spacing:-.04em; margin:0; } .catalog-heading > p { max-width:26rem; font-size:1rem; color:var(--muted); margin:0; } .catalog-explorer { display:grid; grid-template-columns:15rem minmax(0,1fr); background:#fff; border:1px solid var(--line); border-radius:.5rem; overflow:hidden; } .catalog-tabs { padding:1rem; background:#f0f2f2; } .catalog-tabs a { display:flex; align-items:center; gap:1rem; min-height:3.8rem; padding:1rem; text-decoration:none; font-size:1rem; font-weight:600; border-radius:.2rem; } .catalog-tabs a span { flex:0 0 2ch; min-inline-size:2ch; white-space:nowrap; overflow-wrap:normal; word-break:normal; font-variant-numeric:tabular-nums; font-size:.875rem; color:var(--muted); } .catalog-tabs a:hover { background:#fff; } .catalog-tabs a[aria-selected="true"] { background:var(--red); color:#fff; } .catalog-tabs a[aria-selected="true"] span { color:#fff; } .catalog-panel { padding:clamp(1.5rem,3.5vw,3.5rem); } .catalog-panel > header { border-bottom:1px solid var(--line); padding-bottom:1.5rem; margin-bottom:1.5rem; } .catalog-panel h3 { font-size:clamp(1.65rem,2.7vw,2.6rem); line-height:1.16; margin:0 0 .7rem; letter-spacing:-.035em; } .catalog-panel > header p { margin:0; font-size:1rem; color:var(--muted); max-width:36rem; } .catalog-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.8rem 2rem; } .catalog-group h4 { font-size:.875rem; color:var(--red-dark); margin:0 0 .7rem; } .catalog-group ul, .catalog-menu ul { list-style:none; padding:0; margin:0; } .catalog-group li+li { margin-top:.45rem; } .catalog-group a { display:inline-block; padding:.2rem 0; font-size:1rem; line-height:1.5; text-decoration:none; text-underline-offset:.2em; } .catalog-group a:hover { text-decoration:underline; color:var(--red-dark); } .catalog-panel > .text-link { margin-top:2rem; font-size:1rem; } .catalog-panel+.catalog-panel { border-top:1px solid var(--line); } .catalog-panels { min-width:0; } .nav-catalog > summary { display:flex; align-items:center; gap:.55rem; list-style:none; cursor:pointer; padding:1rem 0; font-size:1rem; font-weight:600; } .nav-catalog > summary::-webkit-details-marker { display:none; } .nav-catalog[open] > summary { color:var(--red-dark); } .catalog-menu { position:absolute; top:100%; left:0; right:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem 3rem; padding:2rem var(--pad); border-block:1px solid var(--line); background:#fff; box-shadow:0 20px 35px #00000012; max-height:calc(100dvh - 8rem); overflow-y:auto; } .catalog-menu .catalog-menu__title { font-size:1rem; margin-bottom:.6rem; font-weight:700; color:var(--red-dark); } .catalog-menu a { display:block; white-space:normal; padding:.3rem 0; font-size:.9375rem; font-weight:400; border:0; line-height:1.4; } .catalog-menu a::after { content:none; } .catalog-menu a:hover { text-decoration:underline; text-underline-offset:.2em; } .catalog-hub { padding:0 var(--pad) var(--space); } .catalog-hub__intro { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:2rem; } .catalog-hub h2, .category-section h2 { font-size:clamp(1.8rem,3vw,3rem); line-height:1.18; letter-spacing:-.03em; } .catalog-hub__groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; } .catalog-hub .catalog-group { padding:1.75rem; border:1px solid var(--line); border-radius:.3rem; background:#fff; } .catalog-hub .catalog-group h3 { font-size:1.25rem; color:var(--ink); margin:0 0 .7rem; } .category-section { padding:var(--space) var(--pad); scroll-margin-top:7rem; } .category-section--soft { background:var(--paper); } .category-section__heading { display:grid; grid-template-columns:1fr 1fr; gap:3rem; margin-bottom:2rem; } .category-section__heading p { font-size:1.0625rem; color:var(--muted); } .category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; } .category-card { padding:1.75rem; border:1px solid var(--line); background:#fff; border-radius:.3rem; scroll-margin-top:7rem; } .category-card h2,.category-card h3 { font-size:1.4rem; line-height:1.25; margin:0 0 .8rem; letter-spacing:-.02em; } .category-card p { font-size:1rem; color:var(--muted); margin:0 0 1rem; } .category-card .text-link { font-size:1rem; display:inline-block; margin-top:.5rem; } .category-note { margin:2rem 0 0; padding:1.25rem; background:var(--paper); font-size:1rem; border-left:3px solid var(--red); } .category-grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); } .category-link-list { display:grid; gap:.65rem; } .category-link-list a { font-size:1rem; } .lead-solution { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.8rem; background:var(--rose); margin-bottom:1rem; border-radius:.25rem; } .lead-solution p { margin:0; font-size:.9375rem; } .lead-solution small { display:block; color:var(--muted); font-size:.875rem; } .lead-solution .help-link { flex-shrink:0; font-size:.875rem; } .lead-solution p, .lead-more summary { hyphens:auto; } @media(min-width:1280px) { .desktop-nav { gap:2rem; align-items:center; } } @media(max-width:1279px) { .desktop-nav.is-open { gap:0; } .nav-catalog { width:100%; } .catalog-menu { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); padding:1rem 0; max-height:none; overflow:visible; box-shadow:none; } .catalog-menu .catalog-menu__title { font-weight:700; } } @media(max-width:980px) { .catalog-explorer { grid-template-columns:12rem minmax(0,1fr); } .catalog-tabs { padding:.6rem; } .catalog-tabs a { padding:.8rem; gap:.6rem; } .catalog-heading { display:block; } .catalog-heading >p { margin-top:1rem; max-width:38rem; } } @media(max-width:700px) { .intent-paths a { padding:1rem .8rem; font-size:.875rem; gap:.35rem; } .catalog-explorer { display:block; } .catalog-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.35rem; } .catalog-tabs a { min-height:3.2rem; padding:.6rem; font-size:.9375rem; } .catalog-tabs a span { display:none; } .catalog-panel { padding:1.5rem; } .catalog-groups, .catalog-hub__groups, .category-grid, .category-grid--two, .category-section__heading { grid-template-columns:minmax(0,1fr); gap:1.25rem; } .catalog-group a { padding:.35rem 0; } .catalog-hub__intro { display:block; } .category-section__heading { margin-bottom:1.5rem; } .catalog-menu { gap:1.5rem; } } @media(max-width:379px) { .catalog-menu { grid-template-columns:1fr; } .intent-paths a { font-size:.875rem; } .intent-paths a span { display:none; } } .nav-chevron { width:7px; height:7px; flex:0 0 7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin:0 2px 4px; } .nav-catalog[open] > summary .nav-chevron, .specialist-area[open] > summary .nav-chevron { transform:rotate(225deg); margin-top:5px; } .catalog-menu.specialist-menu { display:block; padding:1.5rem var(--pad); } .specialist-menu__intro { margin:0 0 .75rem; color:var(--muted); font-size:.875rem; font-weight:600; } .specialist-menu__overview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 2rem; align-items:start; } .specialist-area { min-width:0; border-bottom:1px solid var(--line); } .specialist-area > summary { display:flex; justify-content:space-between; align-items:center; gap:1rem; list-style:none; padding:1.1rem 0; min-height:56px; font-size:1.0625rem; font-weight:650; cursor:pointer; hyphens:auto; } .specialist-area > summary::-webkit-details-marker { display:none; } .specialist-area > summary:hover, .specialist-area[open] > summary { color:var(--red-dark); } .specialist-area__content { padding:0 0 1.5rem; } .specialist-menu .specialist-area__overview { font-size:.9375rem; font-weight:600; margin-bottom:1.25rem; text-decoration:underline; text-underline-offset:.2em; } .specialist-menu__groups { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr)); gap:1.25rem 2rem; } .specialist-menu__groups h3 { font-size:.875rem; color:var(--red-dark); font-weight:700; margin:0 0 .4rem; } .specialist-menu__groups .catalog-group li+li { margin-top:0; } .specialist-menu .specialist-menu__groups a { font-size:1rem; padding:.4rem 0; } .specialist-menu .specialist-area__contact { font-size:.9375rem; font-weight:600; margin-top:1.25rem; text-decoration:underline; text-underline-offset:.2em; } .nav-secondary { display:flex; align-items:center; gap:clamp(1rem,2vw,2rem); } .specialist-menu__back { background:none; border:0; color:var(--muted); font:inherit; font-size:.9375rem; min-height:44px; padding:0; margin:0 0 .5rem; cursor:pointer; } .specialist-menu__back::before { content:'‹'; margin-right:.65rem; font-size:1.3em; } .specialist-menu__back[hidden] { display:none; } .specialist-menu__back:focus-visible { outline:2px solid var(--ink); outline-offset:3px; } .specialist-menu a, .specialist-area__content p { hyphens:auto; } .specialist-menu a:focus-visible, .specialist-area > summary:focus-visible { outline:2px solid #332d29; outline-offset:3px; } .firstaid-range-heading { grid-column:1/-1; max-width:48rem; } .firstaid-range-heading h2 { font-size:clamp(1.8rem,3vw,3rem); line-height:1.2; margin:0 0 1rem; } .firstaid-range-heading p { color:var(--muted); font-size:1rem; margin:0; } @media(max-width:1279px) { body.menu-is-open { overflow:hidden; } body.menu-is-open::before { content:''; position:fixed; inset:var(--menu-top,80px) 0 0; background:#29252738; z-index:39; } .desktop-nav.is-open { position:fixed; inset:var(--menu-top,80px) 0 0 auto; width:min(100%,440px); max-height:none; padding:16px 20px max(20px,env(safe-area-inset-bottom)); overflow-y:auto; overscroll-behavior:contain; box-shadow:-16px 20px 40px #29252712; } .menu-ready .nav-catalog > summary { display:none; } .catalog-menu.specialist-menu { padding:0; border:0; } .specialist-menu__overview { grid-template-columns:minmax(0,1fr); } .specialist-menu__intro { margin-bottom:.25rem; } .specialist-area > summary { font-size:1rem; padding:12px 0; min-height:48px; } .specialist-menu .specialist-menu__groups a { min-height:44px; display:flex; align-items:center; } .nav-secondary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; width:100%; margin:16px 0 12px; padding:12px; border-radius:6px; background:var(--paper); } .desktop-nav .nav-secondary a { border:0; font-size:.9375rem; padding:8px 0; min-height:44px; white-space:normal; line-height:1.4; hyphens:auto; } .nav-secondary a:last-child { grid-column:1/-1; font-weight:500; } .desktop-nav.is-open .nav-contact { display:flex; justify-content:center; align-items:center; width:100%; min-height:48px; padding:12px; background:var(--red); color:#fff; border:0; border-radius:4px; font-size:1rem; } .desktop-nav.is-open .nav-contact::after { content:none; } .desktop-nav.is-drilled .specialist-area:not([open]), .desktop-nav.is-drilled .specialist-menu__intro, .desktop-nav.is-drilled .nav-secondary, .desktop-nav.is-drilled > .nav-contact { display:none; } .desktop-nav.is-drilled .specialist-area > summary { font-size:1.35rem; line-height:1.3; color:var(--ink); padding:8px 0 16px; } .desktop-nav.is-drilled .specialist-area > summary .nav-chevron { display:none; } .desktop-nav.is-drilled .specialist-area { border:0; } .menu-ready .menu-toggle[aria-expanded="true"] span:not(.sr-only):first-child { transform:translateY(3.5px) rotate(45deg); } .menu-ready .menu-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(2) { transform:translateY(-3.5px) rotate(-45deg); } } @media(min-width:1280px) { .catalog-menu.specialist-menu { max-height:calc(100dvh - var(--menu-top,130px)); overscroll-behavior:contain; } .specialist-area[open] { grid-column:1/-1; } .site-header { height:auto; min-height:6rem; padding-block:12px; flex-wrap:wrap; } .desktop-nav { flex-wrap:wrap; } .desktop-nav > a, .nav-catalog > summary { white-space:nowrap; } .nav-catalog { flex-shrink:0; } } .landing-hero { padding:clamp(1.5rem,3vw,3rem) var(--pad) clamp(2rem,4vw,4rem); } .landing-hero__grid { max-width:1440px; margin:auto; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr)); gap:clamp(2rem,4vw,4rem); align-items:center; } .landing-hero__content { min-width:0; } .landing-hero .breadcrumb { margin-bottom:1.75rem; font-size:.875rem; } .landing-hero .eyebrow { margin-bottom:1rem; } .landing-hero h1 { font-size:clamp(2.15rem,4.1vw,4.1rem); line-height:1.12; margin:0 0 1.35rem; letter-spacing:-.04em; text-wrap:balance; hyphens:auto; } .landing-hero .offering-hero__lead { font-size:1.125rem; line-height:1.65; margin:0 0 1.75rem; max-width:38rem; } .landing-hero__actions { display:flex; flex-wrap:wrap; align-items:center; gap:1rem 1.5rem; } .landing-primary { min-height:56px; padding:1rem 1.5rem; font-size:1rem; line-height:1.35; text-align:center; max-width:100%; box-shadow:0 5px 14px #bb20281a; } .landing-secondary { display:inline-flex; align-items:center; min-height:44px; font-size:1rem; font-weight:650; text-decoration:underline; text-underline-offset:.25em; line-height:1.5; } .landing-hero__note { color:var(--muted); font-size:.875rem; line-height:1.5; margin:1rem 0 0; max-width:36rem; } .landing-hero__trust { margin:1.25rem 0 0; padding-top:1rem; border-top:1px solid var(--line); max-width:34rem; font-size:.9375rem; line-height:1.55; } .landing-hero__trust-quote { color:#332d29; } .landing-hero__trust-quote::before { content:'“'; } .landing-hero__trust-quote::after { content:'”'; } .landing-hero__trust-name { display:block; margin-top:.35rem; font-size:.8125rem; font-weight:650; color:var(--muted); } .landing-hero__trust--award { color:var(--muted); font-weight:550; } .landing-photo { margin:0; min-width:0; overflow:hidden; border-radius:8px; background:#f3f4f3; } .landing-photo__frame { position:relative; aspect-ratio:1.12; } .landing-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; } .landing-photo figcaption { padding:1rem 1.25rem; font-size:.875rem; line-height:1.5; color:#4d4946; border-top:3px solid #bb2028; overflow-wrap:anywhere; hyphens:auto; } .landing-next,.about-teaser.landing-decision { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr)); gap:clamp(2rem,5vw,5rem); align-items:center; margin:clamp(1rem,2vw,2rem) var(--pad) var(--space); padding:clamp(2rem,4vw,4rem); border-radius:8px; background:#ae1e27; color:white; } .landing-next h2,.landing-decision h2 { color:white; font-size:clamp(1.8rem,3.2vw,3rem); line-height:1.15; letter-spacing:-.03em; margin:0 0 1.25rem; } .landing-next p,.landing-decision p { color:#fff; font-size:1rem; line-height:1.6; margin:0; } .landing-next .eyebrow,.landing-decision .eyebrow { color:#fff; font-size:.875rem; margin-bottom:1rem; } .landing-next__action { max-width:30rem; } .landing-next__action p { font-size:.875rem; line-height:1.55; margin-top:1rem; } .landing-next__button { background:white; color:#9e1720; border:1px solid white; min-height:56px; padding:1rem 1.5rem; font-size:1rem; line-height:1.4; text-align:center; } .landing-next__button:hover { background:#f9eee9; border-color:#f9eee9; color:#88121a; } .landing-next__button, .landing-primary { hyphens:auto; } .landing-decision .landing-next__button { margin-top:1.5rem; } .landing-decision .text-link { color:white; text-decoration:underline; text-underline-offset:.2em; } .landing-next a:focus-visible,.landing-decision a:focus-visible { outline:3px solid white; outline-offset:5px; } .landing-hero a:focus-visible { outline:3px solid #332d29; outline-offset:4px; } @media(max-width:980px) { .landing-hero__grid { gap:2rem; } } @media(max-width:700px) { .landing-hero { padding:24px 20px 32px; } .landing-hero__grid { grid-template-columns:minmax(0,1fr); gap:1.75rem; } .landing-hero .breadcrumb { margin-bottom:1.25rem; } .landing-hero h1 { font-size:clamp(2rem,7.5vw,3rem); } .landing-hero .offering-hero__lead { font-size:1rem; margin-bottom:1.5rem; } .landing-hero__actions { display:grid; grid-template-columns:minmax(0,1fr); gap:.5rem; } .landing-secondary { justify-content:center; text-align:center; } .landing-photo__frame { aspect-ratio:1.5; } .landing-photo figcaption { padding:.85rem 1rem; } .landing-next,.about-teaser.landing-decision { grid-template-columns:minmax(0,1fr); margin-left:16px; margin-right:16px; padding:28px 20px; gap:1.75rem; } .landing-next h2,.landing-decision h2 { font-size:clamp(1.6rem,6.5vw,2.2rem); hyphens:auto; } .landing-next__button,.landing-primary { padding:14px 18px; } .landing-next__button { width:100%; } } .offering-guide { padding:clamp(3rem,6vw,6rem) var(--gutter,4vw); border-top:1px solid var(--line,#ddd); background:#fff; overflow-wrap:anywhere; } .offering-guide__heading { max-width:58rem; margin-bottom:2.5rem; } .offering-guide__heading h2 { font-size:clamp(2rem,3.5vw,3.4rem); line-height:1.12; letter-spacing:-.035em; max-width:25ch; margin:.75rem 0 1.5rem; } .offering-guide__heading > p:last-child { max-width:72ch; font-size:1.125rem; line-height:1.7; color:var(--muted); } .offering-guide__layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); align-items:start; gap:clamp(2rem,6vw,6rem); } .offering-guide__articles { min-width:0; } .offering-guide__photo { margin:0 0 1.75rem; background:#f4f5f5; } .offering-guide__photo img { display:block; width:100%; height:auto; } .offering-guide__photo figcaption { padding:1rem 1.25rem; font-size:.875rem; line-height:1.5; color:var(--muted); border-left:3px solid var(--red-dark); } .offering-guide__articles article { padding:1.75rem 0; border-top:1px solid var(--line,#ddd); } .offering-guide h3 { font-size:clamp(1.3rem,2vw,1.65rem); line-height:1.3; letter-spacing:-.02em; margin:0 0 .8rem; } .offering-guide__articles p { max-width:72ch; color:var(--muted); font-size:1rem; line-height:1.8; margin:.65rem 0 0; } .offering-guide__enquiry { padding:clamp(1.25rem,3vw,2.5rem); background:#f4f5f5; border-top:3px solid var(--red-dark); min-width:0; } .offering-guide__enquiry h3 { margin:1rem 0; } .offering-guide__enquiry p,.offering-guide__enquiry li { font-size:1rem; line-height:1.6; } .offering-guide__enquiry ul { padding-left:1.2rem; margin:1rem 0; } .offering-guide__enquiry li { margin:.65rem 0; } .offering-guide__enquiry .button { width:100%; margin:1rem 0 .75rem; white-space:normal; text-align:center; line-height:1.5; } .offering-guide__phone { display:block; text-align:center; padding:.6rem 0; text-decoration:underline; text-underline-offset:.2em; font-size:.9375rem; } .offering-guide__enquiry .offering-guide__delivery { color:var(--muted); font-size:.875rem; margin:1rem 0; } .offering-guide__related { border-top:1px solid var(--line,#ddd); margin-top:1.5rem; padding-top:1.25rem; display:grid; gap:.6rem; font-size:.9375rem; } .offering-guide__related a { text-decoration:underline; text-underline-offset:.2em; padding:.25rem 0; } .offering-guide__questions { margin-top:2rem; } .offering-guide__questions details { border-bottom:1px solid var(--line,#ddd); } .offering-guide__questions summary { padding:1.1rem 0; cursor:pointer; font-weight:600; font-size:1rem; line-height:1.5; } .offering-guide__questions details p { margin:0 0 1.25rem; } .offering-guide__articles .offering-guide__note { font-size:.875rem; border-left:2px solid var(--red-dark); padding-left:1rem; } .offering-guide__related > * { min-width:0; } .offering-guide__articles p a { color:var(--red-dark,#b91925); text-decoration:underline; text-underline-offset:.2em; } .offering-guide__evidence { margin:2rem 0; padding:clamp(1.25rem,3vw,2rem); border-left:3px solid var(--red-dark,#b91925); background:#f4f5f5; } .offering-guide__evidence .eyebrow { margin:0 0 .75rem; font-size:.875rem; color:var(--red-dark,#b91925); } .offering-guide__evidence > a { display:inline-block; margin-top:1rem; padding:.4rem 0; color:var(--red-dark,#b91925); font-size:1rem; line-height:1.5; text-decoration:underline; text-underline-offset:.2em; } .offering-guide a:focus-visible,.offering-guide summary:focus-visible { outline:2px solid var(--red-dark,#b91925); outline-offset:4px; } @media(min-width:1100px) and (min-height:850px) { .offering-guide__enquiry { position:sticky; top:7rem; } } @media(max-width:800px) { .offering-guide__layout { grid-template-columns:1fr; } .offering-guide__enquiry { margin-top:.5rem; } .offering-guide__heading { margin-bottom:1.5rem; } } .legal-page .offering-guide{padding-top:1.5rem} .legal-articles{max-width:48rem} .legal-articles article+article{margin-top:1.75rem} .cookie-report table{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.95rem} .cookie-report th,.cookie-report td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid #e3e3e3;vertical-align:top} .course-schedule{padding:clamp(2.5rem,5vw,4rem) var(--gutter,4vw);border-top:1px solid var(--line,#ddd);background:var(--paper,#f6f6f6)} .course-schedule__head{max-width:46rem;margin-bottom:1.25rem} .course-schedule__head h2{margin:.25rem 0 .5rem} .course-filter{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1.25rem;margin:0 0 1rem;padding:1rem 1.25rem;background:#fff;border:1px solid var(--line,#e3e3e3);border-radius:.6rem} .course-filter__field{display:flex;flex-direction:column;gap:.3rem;font-size:.8125rem;color:var(--muted)} .course-filter__field select{min-width:14rem;padding:.55rem .75rem;border:1px solid var(--line,#ccc);border-radius:.4rem;background:#fff;font:inherit;color:var(--ink)} .course-filter__check{display:flex;align-items:center;gap:.45rem;font-size:.875rem;padding-bottom:.5rem} .course-filter__check input{width:1.1rem;height:1.1rem;accent-color:var(--red,#d52b30)} .course-filter__count{margin:0 0 .5rem auto;font-size:.8125rem;color:var(--muted);align-self:center} .course-schedule__table{background:#fff;border:1px solid var(--line,#e3e3e3);border-radius:.6rem;padding:.25rem 1.25rem 1.25rem} .course-schedule table{width:100%;border-collapse:collapse;font-size:.95rem} .course-schedule th,.course-schedule td{text-align:left;padding:.8rem .5rem;border-top:1px solid var(--line,#e3e3e3);vertical-align:middle} .course-schedule th{font-weight:600;color:var(--muted);font-size:.8125rem;border-top:0} .course-schedule td:last-child{text-align:right;white-space:nowrap} .course-schedule__meta{display:block;font-size:.8125rem;color:var(--muted)} .course-schedule__ok{color:#1d7a3a;font-weight:600} .course-schedule tr.is-soldout td{color:var(--muted)} .course-schedule tr.is-soldout td strong{font-weight:500} .course-schedule__book.button{padding:.5rem 1rem;font-size:.875rem} .course-schedule__more{margin-top:1rem} .course-schedule__empty{margin:1rem 0 0;color:var(--muted)} .course-schedule__updated{color:var(--muted);font-size:.8125rem;margin-top:1rem} .course-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem} .course-chip{font:inherit;font-size:.8125rem;padding:.45rem .85rem;border:1px solid var(--line,#ccc);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer} .course-chip span{color:var(--muted);margin-left:.25rem} .course-chip[aria-pressed="true"]{background:var(--ink,#1a1a1a);border-color:var(--ink,#1a1a1a);color:#fff} .course-chip[aria-pressed="true"] span{color:#ddd} .course-schedule__groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.5rem 2.5rem} .course-schedule__group{background:#fff;border:1px solid var(--line,#e3e3e3);border-radius:.6rem;padding:1rem 1.25rem} .course-schedule__group h3{font-size:1rem;margin:0 0 .5rem} .course-schedule__group ul{list-style:none;margin:0;padding:0} .course-schedule__group li{display:flex;flex-direction:column;gap:.1rem;padding:.6rem 0;border-top:1px solid var(--line,#e3e3e3)} .course-schedule__group li a{font-weight:600;text-decoration:none} .course-schedule__group li a:hover{text-decoration:underline} .course-schedule__group li span{color:var(--muted);font-size:.8125rem} @media (max-width:700px){ .course-schedule__table{padding:.5rem .75rem .75rem} .course-schedule thead{display:none} .course-schedule tr{display:grid;grid-template-columns:1fr auto;gap:.15rem .75rem;padding:.75rem 0;border-top:1px solid var(--line,#e3e3e3)} .course-schedule tr[hidden]{display:none} .course-schedule td{display:block;padding:0;border:0} .course-schedule td:nth-child(1){grid-column:1} .course-schedule td:nth-child(2){grid-column:1} .course-schedule td:nth-child(3){grid-column:1;font-size:.875rem} .course-schedule td:last-child{grid-column:2;grid-row:1/4;align-self:center;white-space:nowrap} .course-schedule td[data-label]:not([data-label=""])::before{content:attr(data-label) ": ";font-weight:600;color:var(--muted)} .course-filter__field select{min-width:0;width:100%} .course-filter__field{flex:1 1 100%} } .site-footer { grid-template-columns:1.05fr 1fr 1.15fr 1.1fr; gap:2.5rem; } .site-footer > * { min-width:0; } .site-footer a, .site-footer address, .site-footer strong { overflow-wrap:anywhere; } .footer-column > * { min-width:0; } .footer-brand .footer-brand__name { color:var(--ink); font-size:1rem; font-weight:600; margin:1rem 0 .25rem; } .footer-brand p + p { margin-top:0; } .footer-brand > a:last-child { display:inline-block; margin-top:1rem; font-size:.875rem; color:var(--muted); } .footer-column address { font-size:.875rem; font-style:normal; line-height:1.7; color:var(--muted); margin:.5rem 0; } .footer-column address span { display:block; color:var(--ink); } .footer-legal { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1.25rem 2rem; border-top:1px solid var(--line,#ddd); padding-top:1.5rem; color:var(--muted); font-size:.875rem; line-height:1.6; } .footer-legal p { margin:0; } .footer-legal p strong { display:block; color:var(--ink); font-weight:600; } .footer-legal nav { display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; } .footer-legal a { text-decoration:underline; text-underline-offset:.22em; padding:.5rem 0; } .site-footer--compact { display:block; padding-top:1.5rem; padding-bottom:2rem; } @media(max-width:1000px) { .site-footer { grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr)); } .site-footer .footer-brand { grid-column:auto; } } @media(max-width:560px) { .site-footer { gap:2rem 1.25rem; } .site-footer .footer-brand { grid-column:1/-1; } .site-footer .footer-column:last-of-type { grid-column:auto; } .site-footer .footer-column a { padding:.3rem 0; } .footer-legal { align-items:flex-start; flex-direction:column; gap:1rem; } .footer-legal nav { flex-direction:column; gap:.25rem; } } .footer-award { display:inline-flex; align-items:center; gap:.6rem; margin-top:1rem; color:var(--muted); text-decoration:none; font-size:.8125rem; line-height:1.3; } .footer-award__mark { display:inline-flex; align-items:baseline; gap:.3rem; color:var(--red,#d52b30); } .footer-award__mark svg { display:block; align-self:center; } .footer-award__mark strong { font-size:1.05rem; font-weight:700; } .footer-award__text { color:var(--ink); } .footer-award:hover .footer-award__text, .footer-award:focus-visible .footer-award__text { text-decoration:underline; text-underline-offset:.22em; } .footer-trustpilot { margin-top:.85rem; max-width:14rem; } .footer-trustpilot .trustpilot-widget { min-height:24px; } .footer-trustpilot .trustpilot-widget a { color:var(--muted); font-size:.8125rem; text-decoration:underline; text-underline-offset:.22em; } :root { --line:#d9dcdd; --ink:#242628; --muted:#5b6063; --paper:#f3f5f5; } .button { border-radius:2px; } .eyebrow { font-size:.875rem; } .text-link { text-underline-offset:.25em; } .catalog-section { background:white; } .catalog-heading { padding-top:1.5rem; border-top:2px solid var(--red-dark); } .catalog-heading h2 { font-size:clamp(2rem,4vw,4rem); letter-spacing:-.045em; } .catalog-explorer { border:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); border-radius:0; background:white; } .catalog-tabs { background:#f3f5f5; padding:1rem; } .catalog-tabs a { border-radius:0; border-left:3px solid transparent; transition:background-color .18s ease,color .18s ease; } .catalog-tabs a[aria-selected="true"] { border-left-color:var(--red-dark); background:#fff; color:var(--ink); } .catalog-tabs a[aria-selected="true"] span { color:var(--red-dark); } .catalog-panel { background:white; padding:2rem clamp(1.5rem,3vw,3rem); } .catalog-panel > header { border-bottom:1px solid var(--line); padding-bottom:1.25rem; margin-bottom:1.75rem; } .catalog-panel > header h3 { font-size:clamp(1.8rem,2.6vw,2.65rem); } .training-story { margin:var(--space) var(--pad); background:var(--paper); } .training-story .training-copy { padding:clamp(2rem,4vw,4rem); } .training-story .training-image { min-height:30rem; } .training-story h2 { font-size:clamp(2rem,4.2vw,4.25rem); letter-spacing:-.045em; } .course-links a { padding-block:1rem; font-size:1.0625rem; } .customer-voices { background:white; } .customer-voices__heading { padding-top:1.5rem; border-top:2px solid var(--red-dark); } .customer-voices__grid { gap:2rem; } .customer-voice { background:var(--paper); border:0; border-radius:0; padding:2rem; } .customer-voice blockquote p { line-height:1.5; letter-spacing:-.025em; } .customer-voice .review-area { border-bottom:1px solid var(--line); padding-bottom:.75rem; width:100%; } .customer-voice figcaption { border-top:0; padding-top:0; } .offer-service { display:flex; flex-direction:column; border-radius:0; } .offer-service .text-link { margin-top:auto; padding-top:1.5rem; } .offer-service__number { font-size:.875rem; } .landing-hero { background:var(--paper); border-bottom:1px solid var(--line); padding-block:clamp(2rem,4vw,4rem); } .landing-hero h1 { font-size:clamp(2.15rem,4.6vw,4.8rem); letter-spacing:-.045em; } .landing-photo { border-radius:0; background:white; } .landing-photo__frame { aspect-ratio:1.08; } .landing-photo figcaption { border-top:0; border-left:4px solid var(--red-dark); padding:1rem 1.25rem; color:var(--ink); } .landing-primary { box-shadow:none; } .landing-next,.about-teaser.landing-decision { border-radius:0; background:var(--red-dark); padding:clamp(2rem,5vw,5rem); } .landing-next h2,.landing-decision h2 { font-size:clamp(2rem,3.5vw,3.6rem); } .landing-next__button { border-radius:2px; } .lead-form-frame { border-radius:0; border-top:3px solid var(--red-dark); } .lead-choice label { border-radius:3px; } .site-footer { border-top:1px solid var(--line); } .hero.hero--brand { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:0 2rem; padding:clamp(2rem,4vw,4rem) var(--pad) 0; background:#fff; color:var(--ink); } .hero--brand .hero-content { grid-column:1/8; grid-row:1; position:static; padding:0; align-self:end; } .hero--brand .eyebrow { margin:0 0 1.5rem; font-size:.875rem; letter-spacing:.07em; } .hero--brand h1 { font-size:clamp(3rem,6.8vw,6.8rem); line-height:1.02; font-weight:600; letter-spacing:-.055em; margin:0; } .hero--brand h1 span { display:block; padding:0; margin:0; } .hero--brand h1 span:last-child { color:var(--red-dark); } .hero-intro { grid-column:9/-1; align-self:end; padding-bottom:.25rem; } .hero--brand .hero-copy { font-size:1.0625rem; line-height:1.6; margin:0 0 1.4rem; max-width:32rem; } .hero--brand .hero-cta { display:flex; flex-wrap:wrap; gap:.75rem; } .hero--brand .hero-cta .button { min-height:52px; } .hero--brand .hero-media { grid-column:1/-1; grid-row:2; position:relative; min-height:0; height:clamp(18rem,28vw,29rem); margin-top:2.5rem; overflow:hidden; background:var(--paper); } .hero--brand .hero-media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 20%; } .hero-caption { position:absolute; right:0; bottom:0; margin:0; padding:1.25rem 1.75rem; color:white; background:var(--red-dark); font-size:.875rem; line-height:1.5; } .hero-caption span { display:block; font-size:1.35rem; font-weight:600; letter-spacing:-.02em; } .hero--brand .intent-paths { grid-column:1/-1; margin:0; border-top:0; background:#fff; } .hero--brand .intent-paths a { justify-content:space-between; text-align:left; padding:1.4rem 1.25rem; font-size:1rem; } .specialist-overview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 clamp(2rem,5vw,5rem); } .specialist-overview .catalog-panel { padding:2rem 0 2.5rem; border:0; border-top:1px solid var(--line); min-width:0; } .specialist-overview .catalog-panel > header { display:grid; grid-template-columns:2ch minmax(0,1fr); gap:1rem; align-items:baseline; border:0; padding:0; margin:0 0 1rem; } .specialist-number { display:block; min-inline-size:2ch; white-space:nowrap; overflow-wrap:normal; word-break:normal; font-variant-numeric:tabular-nums; color:var(--red-dark); font-size:.875rem; font-weight:650; } .specialist-overview .catalog-panel h3 { font-size:clamp(1.5rem,2.2vw,2.1rem); margin:0; letter-spacing:-.035em; } .specialist-overview h3 a { display:flex; justify-content:space-between; gap:1rem; text-decoration:none; } .specialist-overview h3 a:hover { color:var(--red-dark); } .specialist-overview__arrow { flex:0 0 auto; color:var(--red-dark); font-size:1.4rem; } .specialist-overview .catalog-panel > p { margin:0 0 1.25rem calc(2ch + 1rem); font-size:1rem; color:var(--muted); line-height:1.6; max-width:42rem; } .specialist-overview__links { list-style:none; display:flex; flex-wrap:wrap; gap:0 1.15rem; padding:0; margin:0 0 0 calc(2ch + 1rem); } .specialist-overview__links a { display:inline-block; font-size:.9375rem; min-height:44px; padding:.65rem 0; text-decoration:underline; text-decoration-color:#aeb3b5; text-underline-offset:.3em; line-height:1.5; } .specialist-overview__links a:hover { color:var(--red-dark); text-decoration-color:currentColor; } .specialist-overview__help { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem 2rem; border-top:1px solid var(--line); padding:1.5rem 0 0; } .specialist-overview__help p { margin:0; font-size:1rem; color:var(--muted); } .specialist-overview__help strong { color:var(--ink); } .specialist-overview__help a { font-size:1rem; } .lead-success .prototype-inline { margin-top:1.25rem; } @media(max-width:800px) { .specialist-overview { grid-template-columns:minmax(0,1fr); } .specialist-overview .catalog-panel { padding:1.5rem 0; } .specialist-overview .catalog-panel h3 { font-size:1.5rem; } .specialist-overview .catalog-panel > p,.specialist-overview__links { margin-left:0; } .specialist-overview h3 .specialist-overview__arrow { display:block !important; width:.45rem; height:.45rem; flex:0 0 .45rem; border-right:1.5px solid; border-top:1.5px solid; transform:rotate(45deg); align-self:center; margin-right:.25rem; } } @media(max-width:1100px) { .hero--brand .hero-content { grid-column:1/8; } .hero-intro { grid-column:8/-1; } .hero--brand h1 { font-size:clamp(3rem,6.8vw,5rem); } } @media(max-width:700px) { .catalog-panel { padding:1.5rem 1.25rem; } .catalog-tabs { padding:.5rem; } .training-story { margin:3rem 0; } .training-story .training-copy { padding:2rem 20px; } .training-story .training-image { min-height:0; height:20rem; width:100%; aspect-ratio:auto; } .customer-voice { padding:1.5rem; } .landing-photo__frame { aspect-ratio:1.5; } .landing-hero h1 { font-size:clamp(2rem,8.2vw,3rem); } .landing-next,.about-teaser.landing-decision { padding:2rem 1.25rem; } .landing-next h2,.landing-decision h2 { font-size:clamp(1.6rem,6.5vw,2.2rem); } .hero.hero--brand { display:flex; flex-direction:column; gap:0; padding:2rem 20px 0; } .hero--brand .hero-content { align-self:stretch; } .hero--brand .eyebrow { margin-bottom:1rem; font-size:.8125rem; } .hero--brand h1 { font-size:clamp(2.65rem,11.8vw,4.25rem); line-height:1.05; letter-spacing:-.045em; hyphens:auto; } .hero-intro { align-self:stretch; margin-top:1.5rem; } .hero--brand .hero-copy { font-size:1rem; margin-bottom:1.25rem; } .hero--brand .hero-cta .button { flex:0 1 auto; width:100%; } .hero--brand .hero-media { flex:none; width:calc(100% + 40px); margin:1.75rem -20px 0; height:18rem; } .hero--brand .hero-media img { object-position:43% 35%; } .hero-caption { padding:.75rem 1.25rem; } .hero-caption span { font-size:1.125rem; } .hero--brand .intent-paths { width:calc(100% + 40px); margin:0 -20px; } .hero--brand .intent-paths a { padding:1rem .75rem; font-size:.875rem; } }
