/* Approved local homepage, isolated from account and application styles. */

/* Inter 4 variable (OFL-1.1, @fontsource-variable/inter 5.3.0), self-hosted; subsets load only for the characters used. */
@font-face { font-family: Inter; font-style: normal; font-display: swap; font-weight: 100 900; src: url("/edc_static/marketing/experience/fonts/inter/inter-cyrillic-ext-wght-normal.woff2") format("woff2"); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Inter; font-style: normal; font-display: swap; font-weight: 100 900; src: url("/edc_static/marketing/experience/fonts/inter/inter-cyrillic-wght-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: Inter; font-style: normal; font-display: swap; font-weight: 100 900; src: url("/edc_static/marketing/experience/fonts/inter/inter-latin-ext-wght-normal.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Inter; font-style: normal; font-display: swap; font-weight: 100 900; src: url("/edc_static/marketing/experience/fonts/inter/inter-latin-wght-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* landing.css */
/* Crewilo landing. Independent of account, message and legacy landing styles. */
.cv3-public .crewilo-home {
  --paper: #f8fafb;
  --white: #fff;
  --ink: #142b3a;
  --muted: #536575;
  --blue: #1769e0;
  --blue-hover: #1058c1;
  --teal: #21898b;
  --line: #dce5ea;
  --soft-blue: #edf5fa;
  --header-height: 80px;
  --container: 1240px;
  --gutter: 112px;
}

.cv3-public .crewilo-home *, .cv3-public .crewilo-home *::before, .cv3-public .crewilo-home *::after { box-sizing: border-box; }
.cv3-public .crewilo-home { scroll-behavior: smooth; }
.cv3-public .crewilo-home {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.cv3-public.dialog-open { overflow: hidden; }
.cv3-public .crewilo-home h1, .cv3-public .crewilo-home h2, .cv3-public .crewilo-home h3, .cv3-public .crewilo-home p, .cv3-public .crewilo-home figure, .cv3-public .crewilo-home ul, .cv3-public .crewilo-home ol { margin: 0; }
.cv3-public .crewilo-home h1, .cv3-public .crewilo-home h2, .cv3-public .crewilo-home h3 { color: var(--ink); text-wrap: balance; }
.cv3-public .crewilo-home h2 { font-size: clamp(34px, 3.3vw, 46px); line-height: 1.14; font-weight: 650; letter-spacing: -1.65px; }
.cv3-public .crewilo-home h3 { font-weight: 650; letter-spacing: -.5px; }
.cv3-public .crewilo-home p { color: var(--muted); }
.cv3-public .crewilo-home a { color: inherit; text-decoration: none; }
.cv3-public .crewilo-home button, .cv3-public .crewilo-home input { font: inherit; color: inherit; }
.cv3-public .crewilo-home button, .cv3-public .crewilo-home summary, .cv3-public .crewilo-home input[type="range"] { -webkit-tap-highlight-color: transparent; }
.cv3-public .crewilo-home button { cursor: pointer; }
.cv3-public .crewilo-home button:disabled { cursor: default; }
.cv3-public .crewilo-home img { display: block; max-width: 100%; height: auto; }
.cv3-public .crewilo-home picture { display: block; }
.cv3-public .crewilo-home [hidden] { display: none !important; }
.cv3-public .crewilo-home [id] { scroll-margin-top: calc(var(--header-height) + 24px); }
.cv3-public .crewilo-home ::selection { color: var(--ink); background: #cde9ec; }
.cv3-public .crewilo-home :where(a, button, input, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--teal);
  outline-offset: 5px;
}
.cv3-public .crewilo-home .container { width: min(var(--container), calc(100% - var(--gutter))); margin-inline: auto; }
.cv3-public .crewilo-home .container > *, .cv3-public .crewilo-home .header-inner > *, .cv3-public .crewilo-home .hero-intro > *, .cv3-public .crewilo-home .section-heading > *, .cv3-public .crewilo-home .industry-explorer > *, .cv3-public .crewilo-home .mobile-inner > *, .cv3-public .crewilo-home .trust-inner > *, .cv3-public .crewilo-home .pricing-inner > *, .cv3-public .crewilo-home .faq-inner > * { min-width: 0; }
.cv3-public .crewilo-home .icon { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; vertical-align: middle; }
.cv3-public .crewilo-home .icon-library { position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none; }
.cv3-public .crewilo-home .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.cv3-public .crewilo-home .skip-link { position: fixed; left: 20px; top: 14px; z-index: 200; padding: 12px 20px; background: var(--white); border: 1px solid var(--blue); border-radius: 6px; color: var(--ink); font-weight: 600; transform: translateY(-180%); }
.cv3-public .crewilo-home .skip-link:focus { transform: translateY(0); }
.cv3-public .crewilo-home .anchor-target { display: block; }
.cv3-public .crewilo-home .section { padding-block: 90px; }
.cv3-public .crewilo-home .eyebrow, .cv3-public .crewilo-home .panel-eyebrow { color: var(--teal); font-size: 12px; font-weight: 650; line-height: 1.5; letter-spacing: 1.25px; text-transform: uppercase; }
.cv3-public .crewilo-home .eyebrow { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; }
.cv3-public .crewilo-home .status-dot { width: 7px; height: 7px; background: var(--teal); border-radius: 50%; flex: 0 0 auto; }
.cv3-public .crewilo-home .section-heading { display: grid; grid-template-columns: 1.3fr 1fr; align-items: end; gap: 80px; margin-bottom: 48px; }
.cv3-public .crewilo-home .section-intro { max-width: 430px; margin-left: auto; font-size: 16px; line-height: 1.75; }
.cv3-public .crewilo-home .section-footnote { margin-top: 25px; font-size: 12px; line-height: 1.6; color: #657987; }
.cv3-public .crewilo-home .button { display: inline-flex; justify-content: center; align-items: center; gap: 12px; min-height: 50px; padding: 13px 21px; border: 1px solid transparent; border-radius: 7px; background: var(--blue); color: var(--white); font-size: 14px; font-weight: 600; line-height: 1.35; text-align: center; transition: background-color .18s ease, border-color .18s ease; }
.cv3-public .crewilo-home .button:hover { background: var(--blue-hover); }
.cv3-public .crewilo-home .button .icon { width: 18px; height: 18px; }
.cv3-public .crewilo-home .button-small { min-height: 42px; padding: 10px 15px; font-size: 12px; gap: 9px; }
.cv3-public .crewilo-home .button-light { background: var(--white); color: var(--ink); }
.cv3-public .crewilo-home .button-light:hover { background: #e7f0f7; }
.cv3-public .crewilo-home .text-link { display: inline-flex; align-items: center; gap: 10px; min-height: 42px; font-size: 14px; font-weight: 600; line-height: 1.5; }
.cv3-public .crewilo-home .text-link .icon { width: 18px; height: 18px; }
.cv3-public .crewilo-home .text-link:hover { color: var(--blue); text-decoration: underline; text-underline-offset: 5px; }


.cv3-public .crewilo-home .team-planner { padding: 37px 38px; border-radius: 14px; background: var(--white); color: var(--ink); }
.cv3-public .crewilo-home .team-planner h3 { font-size: 30px; line-height: 1.2; letter-spacing: -.8px; }
.cv3-public .crewilo-home .team-stepper { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; align-items: center; gap: 18px; margin: 25px 0 8px; }
.cv3-public .crewilo-home .team-stepper button { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 1px solid #ccdce5; border-radius: 50%; background: var(--white); color: var(--ink); font-size: 24px; line-height: 1; }
.cv3-public .crewilo-home .team-stepper button:hover:not(:disabled) { border-color: var(--blue); background: #eff5fc; color: var(--blue); }
.cv3-public .crewilo-home .team-stepper button:disabled { color: #9eafb9; border-color: #e1e8ec; background: #fafbfc; }
.cv3-public .crewilo-home .team-stepper input { width: 100%; min-width: 0; height: 78px; padding: 3px 0; border: 1px solid transparent; border-radius: 6px; background: transparent; text-align: center; font-size: 55px; font-weight: 550; letter-spacing: -1.6px; line-height: 1.1; appearance: textfield; }
.cv3-public .crewilo-home .team-stepper input::-webkit-outer-spin-button, .cv3-public .crewilo-home .team-stepper input::-webkit-inner-spin-button { appearance: none; margin: 0; }
.cv3-public .crewilo-home .team-stepper input[aria-invalid="true"] { border-color: #c96761; background: #fff5f3; color: #942e2b; }
.cv3-public .crewilo-home .team-stepper input[aria-invalid="true"]:focus-visible { outline-color: #b1433d; }
.cv3-public .crewilo-home .team-range { display: block; width: 100%; height: 32px; margin: 0; accent-color: var(--blue); cursor: pointer; }
.cv3-public .crewilo-home .range-labels { display: flex; justify-content: space-between; color: #68808f; font-size: 12px; margin-top: 2px; }
.cv3-public .crewilo-home .team-breakdown { margin-top: 25px; padding-top: 23px; border-top: 1px solid var(--line); }
.cv3-public .crewilo-home .team-breakdown > div { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 13px; font-size: 13px; line-height: 1.5; }
.cv3-public .crewilo-home .team-breakdown > div > span { display: inline-flex; align-items: center; gap: 8px; }
.cv3-public .crewilo-home .team-breakdown strong { flex: 0 0 auto; font-size: 14px; font-weight: 650; }
.cv3-public .crewilo-home .legend-dot { width: 7px; height: 7px; border-radius: 50%; flex: 0 0 auto; }
.cv3-public .crewilo-home .free-dot { background: var(--teal); }
.cv3-public .crewilo-home .extra-dot { background: var(--blue); }
.cv3-public .crewilo-home .team-breakdown > p { margin-top: 20px; padding: 12px 14px; border-left: 3px solid #66aaa9; background: #edf7f5; color: #325c5c; font-size: 13px; line-height: 1.6; }
.cv3-public .crewilo-home .team-breakdown > p.is-error { color: #922e2b; background: #fff2f0; border-left-color: #c85d54; }
.cv3-public .crewilo-home .planner-help { margin-top: 20px; font-size: 12px; line-height: 1.75; }
.cv3-public .crewilo-home .team-planner > .text-link { margin-top: 11px; font-size: 13px; color: var(--blue); }
.cv3-public .crewilo-home .no-js-note { margin-top: 16px; font-size: 13px; line-height: 1.6; }
.cv3-public .crewilo-home .team-planner:not(.planner-ready) :is(.team-stepper, .team-range, .range-labels) { display: none; }


.cv3-public .crewilo-home .team-size-caption { margin-top: 11px; color: var(--muted); font-size: 13px; line-height: 1.6; }
.cv3-public .crewilo-home .billing-toggle { display: flex; gap: 4px; margin-top: 23px; padding: 4px; border: 1px solid #e0e8ee; border-radius: 9px; background: #f1f5f7; }
.cv3-public .crewilo-home .billing-toggle button { flex: 1; display: flex; justify-content: center; align-items: center; gap: 7px; min-height: 44px; padding: 9px 8px; border: 1px solid transparent; border-radius: 6px; color: #4c6473; background: transparent; font-size: 13px; font-weight: 600; }
.cv3-public .crewilo-home .billing-toggle button[aria-pressed="true"] { color: var(--ink); background: white; border-color: #d4e0e6; box-shadow: 0 2px 4px #142b3a0c; }
.cv3-public .crewilo-home .billing-toggle button:hover { color: var(--blue); }
.cv3-public .crewilo-home .billing-toggle button span { padding: 3px 5px; border-radius: 4px; background: #dff0e9; color: #236747; font-size: 11px; line-height: 1.2; }
.cv3-public .crewilo-home .team-quote { margin-top: 25px; }
.cv3-public .crewilo-home .quote-label { color: #4c6473; font-size: 12px; line-height: 1.6; }
.cv3-public .crewilo-home .team-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 12px; margin-top: 8px; color: var(--ink); }
.cv3-public .crewilo-home .team-price > strong { font-size: clamp(40px, 4vw, 56px); line-height: 1.1; font-weight: 600; letter-spacing: -1.7px; font-variant-numeric: tabular-nums; }
.cv3-public .crewilo-home .team-price > span { font-size: 14px; color: var(--muted); }
.cv3-public .crewilo-home .team-price b { color: var(--ink); font-weight: 600; }
.cv3-public .crewilo-home .team-price > [hidden] { display: none; }
.cv3-public .crewilo-home .quote-billing { min-height: 22px; margin-top: 9px; font-size: 13px; font-weight: 550; color: #365367; line-height: 1.6; }
.cv3-public .crewilo-home .team-quote .team-breakdown { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 17px; padding-top: 14px; }
.cv3-public .crewilo-home .team-quote .team-breakdown > div { margin-bottom: 9px; font-size: 12px; color: #4c6473; gap: 8px; }
.cv3-public .crewilo-home .team-quote .team-breakdown strong { color: var(--ink); font-size: 14px; }
.cv3-public .crewilo-home .quote-unit { color: #526b7b; font-size: 12px; line-height: 1.6; }
.cv3-public .crewilo-home .team-message { margin-top: 16px; padding: 11px 13px; border-radius: 6px; background: #edf7f3; color: #29624d; font-size: 12px; line-height: 1.65; }
.cv3-public .crewilo-home .team-message.is-error { background: #fff2f0; color: #922e2b; }
.cv3-public .crewilo-home .team-planner .planner-help { margin-top: 16px; font-size: 11px; line-height: 1.7; color: #5c7280; }
.cv3-public .crewilo-home .team-contact { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); }
.cv3-public .crewilo-home .team-contact strong { display: block; font-size: 13px; font-weight: 650; }
.cv3-public .crewilo-home .team-contact span { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.cv3-public .crewilo-home .team-contact a { display: inline-flex; gap: 7px; align-items: center; min-height: 44px; font-size: 13px; font-weight: 600; color: var(--blue); text-underline-offset: 4px; }
.cv3-public .crewilo-home .team-contact a:hover { text-decoration: underline; }
.cv3-public .crewilo-home .team-contact .icon { width: 16px; height: 16px; }
.cv3-public .crewilo-home .team-planner:not(.planner-ready) .billing-toggle { display: none; }
.cv3-public .crewilo-home .team-planner .team-stepper { margin-top: 14px; }
.cv3-public .crewilo-home .team-planner .team-stepper input { height: 62px; font-size: 47px; }
.cv3-public .crewilo-home .team-planner .billing-toggle { margin-top: 17px; }
.cv3-public .crewilo-home .team-planner .team-quote { margin-top: 20px; }

.cv3-public .crewilo-home .faq-list { border-top: 1px solid var(--line); }
.cv3-public .crewilo-home .faq-list details { border-bottom: 1px solid var(--line); }
.cv3-public .crewilo-home .faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 25px; min-height: 79px; padding-block: 23px; list-style: none; cursor: pointer; font-size: 15px; font-weight: 600; line-height: 1.6; }
.cv3-public .crewilo-home .faq-list summary::-webkit-details-marker { display: none; }
.cv3-public .crewilo-home .faq-list summary:hover { color: var(--blue); }
.cv3-public .crewilo-home .faq-plus { position: relative; display: block; width: 18px; height: 18px; flex: 0 0 auto; }
.cv3-public .crewilo-home .faq-plus::before, .cv3-public .crewilo-home .faq-plus::after { position: absolute; content: ""; width: 13px; height: 1.5px; background: currentColor; left: 2.5px; top: 8px; }
.cv3-public .crewilo-home .faq-plus::after { transform: rotate(90deg); transition: transform .18s ease; }
.cv3-public .crewilo-home .faq-list details[open] summary { color: var(--blue); }
.cv3-public .crewilo-home .faq-list details[open] .faq-plus::after { transform: rotate(0); }
.cv3-public .crewilo-home .faq-answer { padding: 0 30px 25px 0; font-size: 14px; line-height: 1.8; }
.cv3-public .crewilo-home .faq-answer a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }

/* Native dialog: the entire source image remains available by scrolling. */
.cv3-public .crewilo-home .image-dialog { width: min(1180px, calc(100% - 48px)); height: calc(100dvh - 48px); max-width: none; max-height: none; margin: auto; padding: 0; border: 1px solid #dce5eb; border-radius: 12px; background: var(--white); color: var(--ink); overflow: hidden; box-shadow: 0 24px 90px #0719244d; }
.cv3-public .crewilo-home .image-dialog[open] { display: flex; flex-direction: column; }
.cv3-public .crewilo-home .image-dialog::backdrop { background: #0b202fc9; }
.cv3-public .crewilo-home .dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex: 0 0 auto; padding: 15px 20px 15px 24px; border-bottom: 1px solid var(--line); }
.cv3-public .crewilo-home .dialog-header p { max-width: 85ch; font-size: 14px; font-weight: 550; line-height: 1.6; color: var(--ink); }
.cv3-public .crewilo-home .dialog-close { display: flex; justify-content: center; align-items: center; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--paper); flex: 0 0 auto; }
.cv3-public .crewilo-home .dialog-close:hover { background: #e7eff5; }
.cv3-public .crewilo-home .dialog-image-wrap { flex: 1 1 auto; min-height: 0; overflow: auto; overscroll-behavior: contain; background: #edf2f6; padding: 20px; }
.cv3-public .crewilo-home .dialog-image { display: block; width: 100%; max-width: none; height: auto; margin-inline: auto; }
.cv3-public .crewilo-home .dialog-image.is-portrait { max-width: 440px; }
.cv3-public .crewilo-home .dialog-footnote { flex: 0 0 auto; padding: 11px 20px; border-top: 1px solid var(--line); color: #627886; font-size: 12px; line-height: 1.5; }

/* mobile-apps.css */
/* Shared application presentation on the landing, login and registration pages. */
.cv3-public .crewilo-home .cw-auth-apps>.cw-form-side { grid-column:2; grid-row:1; }
.cv3-public .crewilo-home .cw-auth-apps>.cw-app-promo { grid-column:1; grid-row:1; }
.cv3-public .crewilo-home .app-icon { display:block; width:22px; height:22px; flex:0 0 auto; }
.cv3-public .crewilo-home .app-identity { display:flex; align-items:center; gap:16px; }
.cv3-public .crewilo-home .app-brand-tile { display:grid; place-items:center; width:68px; height:68px; flex:0 0 auto; padding:11px; border:1px solid #dce8ef; border-radius:17px; background:#fff; box-shadow:0 8px 18px -13px #153b6059; }
.cv3-public .crewilo-home .app-brand-tile>img { display:block; width:100%; height:100%; object-fit:contain; }
.cv3-public .crewilo-home .app-identity>div>strong { display:block; color:#142b3a; font-size:23px; font-weight:650; line-height:1.3; letter-spacing:-.65px; }
.cv3-public .crewilo-home .app-identity>div>span { display:block; color:#536575; font-size:13px; line-height:1.65; margin-top:4px; }
.cv3-public .crewilo-home .app-download-grid { --store-badge-height:52px; display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; }
.cv3-public .crewilo-home .app-download { display:flex; align-items:center; justify-content:center; flex:0 0 auto; min-height:calc(var(--store-badge-height) * 1.5); border-radius:6px; text-decoration:none; }
.cv3-public .crewilo-home .app-download:focus-visible { outline:3px solid #1769e0; outline-offset:5px; }
.cv3-public .crewilo-home .app-store-badge { display:block; width:auto; height:var(--store-badge-height); max-width:none; }
/* Google's supplied PNG includes transparent top/bottom clear space (192px artwork in a 250px image). */
.cv3-public .crewilo-home .app-download--android .app-store-badge { height:calc(var(--store-badge-height) * 250 / 192); }
.cv3-public .crewilo-home .cw-story.cw-app-promo { padding:42px 40px 32px; gap:29px; justify-content:center; background:radial-gradient(ellipse at 0 0,#f6fafc 0%,transparent 68%),#eaf3fa; }
.cv3-public .crewilo-home .cw-app-promo .cw-story-head h2 { font-size:35px; line-height:1.18; letter-spacing:-1.2px; }
.cv3-public .crewilo-home .cw-app-promo .cw-story-head h2 em { color:#1769e0; }
.cv3-public .crewilo-home .cw-app-promo .cw-story-head p:not(.cw-eyebrow) { margin-top:17px; font-size:15px; line-height:1.75; }
.cv3-public .crewilo-home .cw-app-promo .app-promo-downloads { display:grid; gap:24px; }
.cv3-public .crewilo-home .cw-app-promo .app-promo-foot { border-top:1px solid #cddfe9; padding-top:20px; }
.cv3-public .crewilo-home .cw-app-promo .app-promo-foot>p { display:flex; align-items:flex-start; gap:9px; margin:0; font-size:12px; line-height:1.7; color:#3f5a6c; }
.cv3-public .crewilo-home .app-promo-foot .app-icon { width:17px; height:17px; color:#21898b; margin-top:2px; }
.cv3-public .crewilo-home .app-promo-foot>span { display:block; margin-top:9px; color:#5b7180; font-size:11px; line-height:1.7; }
.cv3-public .crewilo-home .mobile-section.mobile-app-showcase { padding:88px 0; background:linear-gradient(120deg,#eef6fa,#f4f8fc 70%,#eaf3fb); border-block:1px solid #e1ebf0; }
.cv3-public .crewilo-home .mobile-app-layout { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,1fr); gap:86px; align-items:center; }
.cv3-public .crewilo-home .mobile-app-copy h2 { font-size:46px; font-weight:650; line-height:1.16; letter-spacing:-1.7px; text-wrap:balance; }
.cv3-public .crewilo-home .mobile-app-copy h2 em { color:#1769e0; font-style:normal; }
.cv3-public .crewilo-home .mobile-app-copy>p:not(.eyebrow) { max-width:490px; margin-top:24px; font-size:16px; line-height:1.8; color:#536575; }
.cv3-public .crewilo-home .mobile-app-benefits { display:grid; gap:22px; list-style:none; padding:0; margin:32px 0 0; }
.cv3-public .crewilo-home .mobile-app-benefits>li { display:flex; align-items:flex-start; gap:15px; }
.cv3-public .crewilo-home .mobile-app-benefits>li>.app-icon { width:23px; height:23px; margin-top:3px; color:#267a86; }
.cv3-public .crewilo-home .mobile-app-benefits strong { display:block; font-size:15px; font-weight:600; line-height:1.5; color:#142b3a; }
.cv3-public .crewilo-home .mobile-app-benefits span { display:block; margin-top:4px; font-size:14px; line-height:1.7; color:#536575; }
.cv3-public .crewilo-home .mobile-app-downloads { padding:32px; border:1px solid #d6e3ec; border-radius:22px; background:#ffffff80; box-shadow:0 22px 44px -36px #173e6d70; }
.cv3-public .crewilo-home .mobile-app-downloads .app-identity { margin-bottom:27px; }
.cv3-public .crewilo-home .app-download-heading { margin:0 0 13px; color:#526b7c; font-size:12px; line-height:1.6; }
.cv3-public .crewilo-home .app-shared-account { display:flex; align-items:center; justify-content:center; gap:8px; margin:22px 0 0; color:#466274; font-size:12px; line-height:1.65; }
.cv3-public .crewilo-home .app-shared-account .app-icon { width:17px; height:17px; color:#21898b; }
.cv3-public .crewilo-home .app-web-alternative { text-align:center; margin:21px 0 0; padding-top:19px; border-top:1px solid #dce7ef; color:#617686; font-size:12px; line-height:1.7; }
.cv3-public .crewilo-home .app-web-alternative>a { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:44px; color:#1769e0; font-size:12px; font-weight:600; text-decoration:none; }
.cv3-public .crewilo-home .app-web-alternative>a:hover { text-decoration:underline; text-underline-offset:4px; }
.cv3-public .crewilo-home .app-web-alternative>a:focus-visible { outline:3px solid #1769e0; outline-offset:4px; }
.cv3-public .crewilo-home .app-web-alternative .app-icon { width:15px; height:15px; }
@media(max-width:1150px) {
  .cv3-public .crewilo-home .cw-story.cw-app-promo { padding:34px 28px 28px; gap:26px; }
  .cv3-public .crewilo-home .cw-app-promo .cw-story-head h2 { font-size:31px; }
  .cv3-public .crewilo-home .app-download-grid { --store-badge-height:48px; gap:12px 22px; }
  .cv3-public .crewilo-home .mobile-app-layout { gap:44px; }
  .cv3-public .crewilo-home .mobile-app-copy h2 { font-size:39px; }
  .cv3-public .crewilo-home .mobile-app-downloads { padding:26px; }
}
@media(max-width:900px) {
  .cv3-public .crewilo-home .cw-auth-frame:not(.cw-auth-compact) { display:flex; flex-direction:column; }
  .cv3-public .crewilo-home .cw-auth-frame:not(.cw-auth-compact) .cw-form-side { order:0; }
  .cv3-public .crewilo-home .cw-story.cw-app-promo { display:flex; order:1; padding:34px 48px 30px; border-top:1px solid #dce6ef; }
  .cv3-public .crewilo-home .cw-app-promo .cw-story-head { max-width:470px; }
  .cv3-public .crewilo-home .cw-app-promo .cw-story-head h2 { font-size:31px; max-width:400px; }
  .cv3-public .crewilo-home .cw-app-promo .cw-story-head p:not(.cw-eyebrow) { font-size:14px; }
  .cv3-public .crewilo-home .cw-app-promo .app-promo-downloads { gap:20px; }
  .cv3-public .crewilo-home .mobile-app-layout { grid-template-columns:1fr; gap:38px; max-width:680px; }
  .cv3-public .crewilo-home .mobile-app-copy>p:not(.eyebrow) { max-width:none; }
  .cv3-public .crewilo-home .mobile-app-downloads { padding:30px; }
}
@media(max-width:600px) {
  .cv3-public .crewilo-home .cw-story.cw-app-promo { padding:31px 24px 28px; gap:25px; }
  .cv3-public .crewilo-home .cw-app-promo .cw-story-head h2 { font-size:30px; letter-spacing:-.9px; }
  .cv3-public .crewilo-home .app-brand-tile { width:56px; height:56px; padding:9px; border-radius:14px; }
  .cv3-public .crewilo-home .app-identity { gap:13px; }
  .cv3-public .crewilo-home .app-identity>div>strong { font-size:21px; }
  .cv3-public .crewilo-home .app-identity>div>span { font-size:12px; margin-top:3px; }
  .cv3-public .crewilo-home .app-download-grid { --store-badge-height:44px; gap:12px 20px; }
  .cv3-public .crewilo-home .mobile-section.mobile-app-showcase { padding:57px 0; }
  .cv3-public .crewilo-home .mobile-app-copy h2 { font-size:34px; line-height:1.17; letter-spacing:-1.1px; }
  .cv3-public .crewilo-home .mobile-app-copy>p:not(.eyebrow) { font-size:15px; margin-top:19px; }
  .cv3-public .crewilo-home .mobile-app-benefits { gap:20px; margin-top:26px; }
  .cv3-public .crewilo-home .mobile-app-benefits>li { gap:12px; }
  .cv3-public .crewilo-home .mobile-app-benefits strong { font-size:14px; }
  .cv3-public .crewilo-home .mobile-app-benefits span { font-size:13px; }
  .cv3-public .crewilo-home .mobile-app-downloads { padding:23px 17px 17px; border-radius:17px; }
  .cv3-public .crewilo-home .mobile-app-downloads .app-identity { margin-bottom:23px; }
  .cv3-public .crewilo-home .app-shared-account { margin-top:18px; font-size:11px; }
  .cv3-public .crewilo-home .app-web-alternative { margin-top:17px; padding-top:16px; font-size:12px; }
  .cv3-public .crewilo-home .app-web-alternative>a { font-size:12px; }
}
@media(max-width:360px) {
  .cv3-public .crewilo-home .cw-story.cw-app-promo { padding-inline:20px; }
  .cv3-public .crewilo-home .app-download-grid { flex-direction:column; align-items:flex-start; gap:6px; }
  .cv3-public .crewilo-home .mobile-app-downloads { padding-inline:13px; }
  .cv3-public .crewilo-home .mobile-app-copy h2 { font-size:30px; }
}

/* landing-contact-tags.css */
/* QR / NFC story and shared local contact dialog. */
.cv3-public .crewilo-home .tag-section { padding-block: 72px; background: #163e47; color: #fff; }
.cv3-public .crewilo-home .tag-layout { display: grid; grid-template-columns: 1.25fr .8fr; gap: 95px; align-items: center; }
.cv3-public .crewilo-home .tag-layout > * { min-width: 0; }
.cv3-public .crewilo-home .tag-section .eyebrow { color: #a7d7cb; }
.cv3-public .crewilo-home .tag-section h2 { color: #fff; font-size: clamp(34px, 3.2vw, 44px); }
.cv3-public .crewilo-home .tag-intro { margin-top: 23px; max-width: 53ch; color: #d2e3e6; font-size: 15px; line-height: 1.8; }
.cv3-public .crewilo-home .tag-use-cases { display: grid; gap: 25px; margin-top: 32px; }
.cv3-public .crewilo-home .tag-use-case { display: flex; align-items: flex-start; gap: 15px; }
.cv3-public .crewilo-home .tag-use-case > .icon { width: 25px; height: 25px; margin-top: 2px; color: #a7d7cb; }
.cv3-public .crewilo-home .tag-use-case h3 { font-size: 17px; color: #fff; letter-spacing: -.25px; }
.cv3-public .crewilo-home .tag-use-case p { margin-top: 7px; max-width: 52ch; color: #cfdee2; font-size: 14px; line-height: 1.8; }
.cv3-public .crewilo-home .tag-device-note { margin-top: 26px; color: #b2cbd1; font-size: 11px; line-height: 1.7; }
.cv3-public .crewilo-home .tag-illustration { text-align: center; }
.cv3-public .crewilo-home .tag-objects { position: relative; width: min(100%, 380px); min-height: 340px; margin: 0 auto; display: grid; place-items: center; }
.cv3-public .crewilo-home .tag-orbit { position: absolute; width: 320px; height: 320px; border: 1px solid #7da9aa40; border-radius: 50%; }
.cv3-public .crewilo-home .tag-orbit::after { content: ''; position: absolute; inset: 28px; border: 1px dashed #7da9aa55; border-radius: 50%; }
.cv3-public .crewilo-home .qr-label { position: relative; width: 210px; padding: 22px 25px 20px; background: #fcfdfb; color: #163e47; border-radius: 13px; box-shadow: 0 24px 45px #071d2c40; transform: rotate(-7deg); text-align: left; }
.cv3-public .crewilo-home .qr-label-brand { display: block; font-size: 20px; font-weight: 700; letter-spacing: -.7px; }
.cv3-public .crewilo-home .qr-label > svg { display: block; width: 140px; height: 140px; margin: 19px auto 15px; fill: currentColor; }
.cv3-public .crewilo-home .qr-label-name { display: block; border-top: 1px solid #d6e2de; padding-top: 12px; font-size: 11px; font-weight: 650; letter-spacing: .7px; }
.cv3-public .crewilo-home .nfc-label { position: absolute; right: 0; bottom: 20px; width: 112px; height: 112px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; background: #bddfd2; color: #194e49; border: 5px solid #d7eee4; border-radius: 50%; box-shadow: 0 14px 30px #0a22293b; transform: rotate(10deg); }
.cv3-public .crewilo-home .nfc-label svg { width: 42px; height: 33px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; }
.cv3-public .crewilo-home .nfc-label span { font-size: 11px; font-weight: 700; letter-spacing: 1.2px; }
.cv3-public .crewilo-home .tag-illustration figcaption { margin-top: 25px; color: #c5dadd; font-size: 12px; line-height: 1.7; }
.cv3-public .crewilo-home .tag-methods { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 22px; }
.cv3-public .crewilo-home .tag-methods span { font-size: 12px; color: #e4f1ef; }
.cv3-public .crewilo-home .tag-methods span + span::before { content: '·'; margin-right: 12px; color: #97c3bd; }

.cv3-public .crewilo-home .contact-trigger { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--blue); font-size: 13px; font-weight: 600; text-underline-offset: 4px; }
.cv3-public .crewilo-home .contact-trigger:hover { text-decoration: underline; }
.cv3-public .crewilo-home .contact-trigger .icon { width: 16px; height: 16px; }
.cv3-public .crewilo-home .trust-contact .contact-trigger { margin-left: 7px; font-size: 12px; }
.cv3-public .crewilo-home .contact-dialog { width: min(620px, calc(100% - 40px)); max-width: none; max-height: calc(100dvh - 40px); margin: auto; padding: 0; border: 1px solid #d7e2e7; border-radius: 16px; background: #fff; color: var(--ink); overflow-y: auto; overscroll-behavior: contain; box-shadow: 0 24px 90px #0719244d; }
.cv3-public .crewilo-home .contact-dialog::backdrop { background: #102c3ab3; backdrop-filter: blur(4px); }
.cv3-public .crewilo-home .contact-dialog-header { position: sticky; top: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px 27px 12px; background: #fff; border-bottom: 1px solid #ecf1f3; }
.cv3-public .crewilo-home .contact-dialog-header .eyebrow { margin: 0; font-size: 10px; }
.cv3-public .crewilo-home .contact-close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: #fff; }
.cv3-public .crewilo-home .contact-close:hover { background: var(--paper); }
.cv3-public .crewilo-home .contact-body { padding: 23px 32px 29px; }
.cv3-public .crewilo-home .contact-body h2 { max-width: 16ch; font-size: 31px; letter-spacing: -1px; line-height: 1.16; text-wrap: initial; }
.cv3-public .crewilo-home .contact-intro { margin-top: 13px; max-width: 52ch; font-size: 14px; line-height: 1.7; }
.cv3-public .crewilo-home .contact-form { margin-top: 24px; }
.cv3-public .crewilo-home .contact-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.cv3-public .crewilo-home .contact-field { min-width: 0; }
.cv3-public .crewilo-home .contact-field label { display: block; margin-bottom: 6px; color: #284653; font-size: 12px; font-weight: 600; }
.cv3-public .crewilo-home .contact-field label span { color: #6b7f89; font-weight: 400; }
.cv3-public .crewilo-home .contact-field input, .cv3-public .crewilo-home .contact-field select, .cv3-public .crewilo-home .contact-field textarea { display: block; width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #b9cbd3; border-radius: 6px; background: #fff; color: var(--ink); font: inherit; font-size: 16px; line-height: 1.5; }
.cv3-public .crewilo-home .contact-field select { padding-right: 23px; }
.cv3-public .crewilo-home .contact-field textarea { min-height: 103px; resize: vertical; }
.cv3-public .crewilo-home .contact-field--wide { grid-column: 1 / -1; }
.cv3-public .crewilo-home .contact-field input::placeholder, .cv3-public .crewilo-home .contact-field textarea::placeholder { color: #7c8f99; font-size: 14px; }
.cv3-public .crewilo-home .contact-field :is(input, select, textarea):focus-visible { outline: 3px solid #21898b66; outline-offset: 2px; border-color: #21898b; }
.cv3-public .crewilo-home .contact-field [aria-invalid="true"] { border-color: #b54343; }
.cv3-public .crewilo-home .contact-error { margin-top: 5px; color: #a62b2b; font-size: 12px; line-height: 1.6; }
.cv3-public .crewilo-home .contact-privacy { margin-top: 15px; color: #627782; font-size: 11px; line-height: 1.7; }
.cv3-public .crewilo-home .contact-privacy a { color: #295e6f; text-decoration: underline; text-underline-offset: 3px; }
.cv3-public .crewilo-home .contact-preview-note { margin-top: 16px; padding: 10px 12px; border-radius: 6px; background: #f0f5f7; color: #4b6572; font-size: 11px; line-height: 1.7; }
.cv3-public .crewilo-home .contact-submit { width: 100%; margin-top: 16px; }
.cv3-public .crewilo-home .contact-status { margin-top: 15px; padding: 13px 15px; border-left: 3px solid #65898b; background: #edf4f3; color: #335d5a; font-size: 13px; line-height: 1.7; }

@media (max-width: 1100px) {
  .cv3-public .crewilo-home .tag-layout { gap: 45px; grid-template-columns: 1.2fr .8fr; }
  .cv3-public .crewilo-home .tag-orbit { width: 280px; height: 280px; }
  .cv3-public .crewilo-home .nfc-label { right: -4px; }
}
@media (max-width: 760px) {
  .cv3-public .crewilo-home .tag-section { padding-block: 50px; }
  .cv3-public .crewilo-home .tag-layout { grid-template-columns: 1fr; gap: 30px; }
  .cv3-public .crewilo-home .tag-copy { display: contents; }
  .cv3-public .crewilo-home .tag-lead { grid-row: 1; }
  .cv3-public .crewilo-home .tag-illustration { grid-row: 2; }
  .cv3-public .crewilo-home .tag-intro { font-size: 14px; }
  .cv3-public .crewilo-home .tag-use-case p { font-size: 13px; max-width: none; }
  .cv3-public .crewilo-home .tag-use-cases { grid-row: 3; gap: 23px; margin-top: 0; }
  .cv3-public .crewilo-home .tag-device-note { grid-row: 4; max-width: 44ch; margin-top: 0; }
  .cv3-public .crewilo-home .tag-objects { min-height: 310px; width: 320px; max-width: 100%; }
  .cv3-public .crewilo-home .tag-illustration figcaption { margin-top: 17px; }
}
@media (max-width: 600px) {
  .cv3-public .crewilo-home .tag-section h2 { font-size: 33px; letter-spacing: -1px; }
  .cv3-public .crewilo-home .tag-section .eyebrow { font-size: 10px; }
  .cv3-public .crewilo-home .tag-use-case { gap: 12px; }
  .cv3-public .crewilo-home .tag-use-case h3 { font-size: 16px; }
  .cv3-public .crewilo-home .tag-objects { width: 275px; min-height: 285px; }
  .cv3-public .crewilo-home .qr-label { width: 180px; padding: 18px 20px 17px; }
  .cv3-public .crewilo-home .qr-label > svg { width: 120px; height: 120px; margin-block: 16px 13px; }
  .cv3-public .crewilo-home .nfc-label { width: 95px; height: 95px; right: 0; bottom: 5px; border-width: 4px; }
  .cv3-public .crewilo-home .nfc-label svg { width: 35px; height: 30px; }
  .cv3-public .crewilo-home .tag-orbit { width: 265px; height: 265px; }
  .cv3-public .crewilo-home .contact-dialog { width: calc(100% - 20px); max-height: calc(100dvh - 20px); border-radius: 12px; }
  .cv3-public .crewilo-home .contact-dialog-header { padding: 10px 18px; }
  .cv3-public .crewilo-home .contact-body { padding: 19px 21px 23px; }
  .cv3-public .crewilo-home .contact-body h2 { font-size: 28px; }
  .cv3-public .crewilo-home .contact-intro { font-size: 13px; }
  .cv3-public .crewilo-home .contact-fields { grid-template-columns: 1fr; gap: 13px; }
  .cv3-public .crewilo-home .contact-form { margin-top: 20px; }
}
@media print {
  .cv3-public .crewilo-home .contact-dialog, .cv3-public .crewilo-home .contact-trigger { display: none !important; }
  .cv3-public .crewilo-home .tag-section { break-inside: avoid; }
}

/* Public shell has its own container and typography; landing controls keep their approved contrast. */
.cv3-public .crewilo-home .container { max-width:1240px; }
.cv3-public .crewilo-home a { color:inherit; }
.cv3-public .crewilo-home a.button { color:#fff; }
.cv3-public .crewilo-home a.button-light { color:#142b3a; }
.cv3-public .crewilo-home a:hover { text-decoration:none; }
.cv3-public .crewilo-home .text-link:hover, .cv3-public .crewilo-home .trust-links a:hover { text-decoration:underline; }
.cv3-public .crewilo-home dialog { padding:0; }
.cv3-public .crewilo-home .contact-dialog { margin:auto; }
.cv3-public .crewilo-home [data-pricing-unavailable] p { margin:20px 0; }
.cv3-public .crewilo-home .team-planner:has([data-price-available="false"]) { display:none; }

/* Match the supplied homepage shell without changing account or policy pages. */
.cv3-public[data-public-v3="/"] .public-header { z-index:50; border-color:#e6ecef; backdrop-filter:blur(14px); }
.cv3-public[data-public-v3="/"] .public-header__bar { width:min(1240px,calc(100% - 112px)); max-width:1240px; min-height:80px; padding:0; gap:26px; }
.cv3-public[data-public-v3="/"] .public-brand { width:144px; }
.cv3-public[data-public-v3="/"] .public-brand img { width:144px; height:auto; }
.cv3-public[data-public-v3="/"] .public-nav--desktop { gap:22px; margin-inline:auto; }
.cv3-public[data-public-v3="/"] .public-nav--desktop a { display:inline-flex; align-items:center; min-height:44px; padding:0; color:#142b3a; font-size:12px; font-weight:600; line-height:1.4; }
.cv3-public[data-public-v3="/"] .public-locales--desktop { margin-right:-9px; }
.cv3-public[data-public-v3="/"] .public-language-picker__summary { min-height:42px; padding:0; min-width:40px; justify-content:center; gap:5px; color:#142b3a; }
.cv3-public[data-public-v3="/"] .public-actions { gap:17px; }
.cv3-public[data-public-v3="/"] .public-actions a { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:42px; padding:10px 15px; border-radius:7px; font-size:12px; font-weight:600; line-height:1.35; }
.cv3-public[data-public-v3="/"] .public-actions [data-public-action="primary"] { background:#1769e0; border-color:transparent; }
.cv3-public[data-public-v3="/"] .public-actions [data-public-action="primary"]:hover { background:#1058c1; }
.cv3-public[data-public-v3="/"] .public-actions [data-public-action="secondary"] { min-height:42px; padding:0; background:transparent; border:0; color:#142b3a; }
.cv3-public[data-public-v3="/"] .public-action-icon { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.cv3-public[data-public-v3="/"] .public-menu-toggle { width:42px; height:42px; min-width:0; min-height:0; padding:9px; flex-direction:column; gap:6px; border:1px solid #dce5ea; border-radius:6px; margin-left:0; flex-shrink:0; }
.cv3-public[data-public-v3="/"] .public-menu-toggle span { display:block; width:18px; height:1.5px; background:#142b3a; transition:transform .18s ease; }
.cv3-public[data-public-v3="/"] .public-menu-toggle[aria-expanded="true"] span:first-child { transform:translateY(3.75px) rotate(45deg); }
.cv3-public[data-public-v3="/"] .public-menu-toggle[aria-expanded="true"] span:last-child { transform:translateY(-3.75px) rotate(-45deg); }
.cv3-public[data-public-v3="/"] .public-footer__brand p { max-width:180px; }
@media (max-width:1230px) {
  .cv3-public[data-public-v3="/"] .public-header__bar { gap:20px; }
  .cv3-public[data-public-v3="/"] .public-nav--desktop { gap:15px; }
  .cv3-public[data-public-v3="/"] .public-actions { gap:12px; }
  .cv3-public[data-public-v3="/"] .public-actions [data-public-action="primary"] { padding-inline:12px; }
}
@media (min-width:901px) {
  .cv3-public[data-public-v3="/"] .public-footer__main { grid-template-columns:1fr 1.7fr; gap:90px; }
  .cv3-public[data-public-v3="/"] .public-footer__brand { display:block; }
  .cv3-public[data-public-v3="/"] .public-footer__brand p { margin-top:18px; }
}
@media (max-width:1100px) {
  .cv3-public[data-public-v3="/"] .public-header__bar { width:calc(100% - 72px); min-height:74px; gap:17px; }
  .cv3-public[data-public-v3="/"] .public-nav--desktop { display:none; }
  .cv3-public[data-public-v3="/"] .public-locales--desktop { display:flex; margin-left:auto; margin-right:0; }
  .cv3-public[data-public-v3="/"] .public-actions--desktop { display:flex; margin-left:0; }
  .cv3-public[data-public-v3="/"] .public-actions--desktop [data-public-action="secondary"],
  .cv3-public[data-public-v3="/"] .public-actions--desktop form { display:none; }
  .cv3-public[data-public-v3="/"] .public-menu-toggle { display:flex; align-items:center; justify-content:center; }
  .cv3-public[data-public-v3="/"] .public-mobile-menu:not([hidden]) { display:block!important; position:absolute; top:calc(100% + 8px); left:36px; right:36px; padding:12px 20px; border:1px solid #dce5ea; border-radius:9px; background:#fff; box-shadow:0 15px 35px #142b3a13; max-height:calc(100dvh - 98px); overflow:auto; }
  .cv3-public[data-public-v3="/"] .public-mobile-menu nav a { min-height:47px; padding-block:10px; }
  .cv3-public[data-public-v3="/"] .public-locales--mobile { display:grid; grid-template-columns:1fr 1fr; gap:4px; border-top:1px solid #e0e8e3; margin-top:18px; padding-top:12px; }
  .cv3-public[data-public-v3="/"] .public-footer__container { width:calc(100% - 72px); }
}
@media (max-width:600px) {
  .cv3-public[data-public-v3="/"] .public-header__bar { width:calc(100% - 36px); min-height:66px; gap:8px; }
  .cv3-public[data-public-v3="/"] .public-brand, .cv3-public[data-public-v3="/"] .public-brand img { width:121px; }
  .cv3-public[data-public-v3="/"] .public-locales--desktop { display:none; }
  .cv3-public[data-public-v3="/"] .public-actions--desktop { margin-left:auto; min-width:0; flex-shrink:1; }
  .cv3-public[data-public-v3="/"] .public-actions--desktop a { white-space:normal; min-width:0; }
  .cv3-public[data-public-v3="/"] .public-actions [data-public-action="primary"] { min-height:40px; font-size:12px; padding:10px 12px; }
  .cv3-public[data-public-v3="/"] .public-actions--desktop .public-action-icon { display:none; }
  .cv3-public[data-public-v3="/"] .public-menu-toggle { width:38px; height:40px; }
  .cv3-public[data-public-v3="/"] .public-mobile-menu:not([hidden]) { left:18px; right:18px; top:calc(100% + 5px); padding:10px 18px; max-height:calc(100dvh - 84px); }
  .cv3-public[data-public-v3="/"] .public-footer__container { width:calc(100% - 36px); }
  .cv3-public[data-public-v3="/"] .public-footer h2 { font-size:11px; }
}
@media (max-width:380px) {
  .cv3-public[data-public-v3="/"] .public-header__bar { gap:5px; }
  .cv3-public[data-public-v3="/"] .public-actions [data-public-action="primary"] { font-size:11px; padding-inline:10px; }
}
@media (prefers-reduced-motion:reduce) {
  .cv3-public[data-public-v3="/"] .public-menu-toggle span { transition:none; }
}
/* home-v4.css */
/* Human-first homepage (2026-10-21): people, real situations and the product together. */
.cv3-public .home-v4 { --warm: #fbf7f1; --warm-line: #ece4d8; --deep: #163e47; --green: #1d8a5f; --green-soft: #e3f4ec; --amber: #a8650f; --amber-soft: #fdf1de; --teal-ink: #17716f; --teal-soft: #e4f3f1; --faint: #6e7f8c; --shadow: 0 2px 4px #142b3a0a, 0 12px 32px #142b3a1a; --shadow-lg: 0 4px 8px #142b3a0a, 0 30px 70px #142b3a2e; }
.cv3-public .home-v4 .section { padding-block: 104px; }
.cv3-public .home-v4 .eyebrow { color: var(--teal-ink); }
.cv3-public .home-v4 .button { min-height: 50px; padding: 13px 22px; border-radius: 10px; font-size: 15px; }
.cv3-public .home-v4 .button-ghost { border-color: var(--line); background: var(--white); color: var(--ink); }
.cv3-public .home-v4 .button-ghost:hover { border-color: #b9c6ce; background: #fbfcfc; }
.cv3-public .home-v4 a.button.button-ghost { color: var(--ink); }
.cv3-public .home-v4 .button-outline-light { border-color: #ffffff59; background: transparent; color: var(--white); }
.cv3-public .home-v4 .button-outline-light:hover { border-color: var(--white); background: #ffffff10; }
.cv3-public .home-v4 .button-small { min-height: 42px; padding: 9px 16px; font-size: 14px; }
.cv3-public .home-v4 .hv-head { max-width: 760px; margin-bottom: 52px; }
.cv3-public .home-v4 .hv-head--center { margin-inline: auto; text-align: center; }
.cv3-public .home-v4 .hv-head--center .eyebrow { justify-content: center; }
.cv3-public .home-v4 .hv-head .eyebrow { margin-bottom: 14px; }
.cv3-public .home-v4 .hv-intro { margin-top: 18px; font-size: 18px; line-height: 1.65; }
.cv3-public .home-v4 .hv-ic { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 auto; border-radius: 11px; background: var(--teal-soft); color: var(--teal-ink); }
.cv3-public .home-v4 .hv-checks { display: grid; gap: 13px; margin-top: 24px; padding: 0; list-style: none; }
.cv3-public .home-v4 .hv-checks li { display: flex; align-items: flex-start; gap: 11px; color: var(--ink); font-size: 16px; line-height: 1.55; }
.cv3-public .home-v4 .hv-checks .icon { width: 19px; height: 19px; margin-top: 2px; color: var(--teal-ink); stroke-width: 2.2; }
.cv3-public .home-v4 .hv-checks--small li { font-size: 15px; }
.cv3-public .home-v4 .hv-av { display: grid; place-items: center; width: 28px; height: 28px; flex: 0 0 auto; border-radius: 50%; color: var(--white); font-size: 11px; font-weight: 700; }
.cv3-public .home-v4 .hv-av--teal { background: #1f7f80; }
.cv3-public .home-v4 .hv-av--blue { background: var(--blue); }
.cv3-public .home-v4 .hv-av--violet { background: #8a5cc7; }
.cv3-public .home-v4 .hv-badge { display: inline-flex; align-items: center; gap: 5px; padding: 3px 8px; border-radius: 999px; font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-badge--live { background: #e8f0fd; color: var(--blue); }
.cv3-public .home-v4 .hv-badge--done { background: var(--green-soft); color: var(--green); }

/* Hero */
.cv3-public .home-v4 .hv-hero { padding-top: 72px; background: radial-gradient(900px 420px at 12% -10%, #21898b1a, transparent 60%), radial-gradient(800px 400px at 95% 0, #1769e014, transparent 60%), linear-gradient(#f9f7f3, #fff 75%); }
.cv3-public .home-v4 .hv-hero-copy { text-align: center; }
.cv3-public .home-v4 .hv-hero-copy > * { max-width: 860px; margin-inline: auto; }
.cv3-public .home-v4 .hv-pill { display: inline-flex; align-items: center; gap: 10px; padding: 6px 14px 6px 7px; border: 1px solid var(--line); border-radius: 999px; background: var(--white); box-shadow: 0 1px 2px #142b3a0f; color: var(--ink); font-size: 14px; font-weight: 500; }
.cv3-public .home-v4 .hv-pill b { padding: 3px 9px; border-radius: 999px; background: var(--teal-soft); color: var(--teal-ink); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-hero h1 { margin-top: 22px; font-size: clamp(38px, 5.2vw, 64px); font-weight: 700; line-height: 1.05; letter-spacing: -.035em; }
.cv3-public .home-v4 .hv-hero h1 span { display: block; color: var(--teal-ink); }
.cv3-public .home-v4 .hv-lead { max-width: 680px; margin-top: 24px; font-size: clamp(18px, 1.6vw, 20px); line-height: 1.6; }
.cv3-public .home-v4 .hv-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 34px; }
.cv3-public .home-v4 .hv-reassure { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; margin-top: 22px; padding: 0; list-style: none; color: #2b4253; font-size: 15px; }
.cv3-public .home-v4 .hv-reassure li { display: flex; align-items: center; gap: 8px; }
.cv3-public .home-v4 .hv-reassure .icon { width: 18px; height: 18px; color: var(--green); stroke-width: 2.4; }
.cv3-public .home-v4 .hv-hero-visual { position: relative; width: min(1120px, calc(100% - var(--gutter))); margin: 60px auto 0; }
.cv3-public .home-v4 .hv-photo { position: relative; overflow: hidden; aspect-ratio: 2 / 1; border-radius: 28px; background: #d9d2c7; box-shadow: var(--shadow-lg); }
.cv3-public .home-v4 .hv-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 32%; }
.cv3-public .home-v4 .hv-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #142b3a00 55%, #142b3a47); }
.cv3-public .home-v4 .hv-toast { position: absolute; z-index: 3; top: -26px; right: 110px; display: flex; align-items: center; gap: 12px; max-width: 330px; padding: 12px 16px 12px 12px; border: 1px solid var(--line); border-radius: 14px; background: var(--white); box-shadow: var(--shadow); font-size: 13.5px; line-height: 1.4; animation: hv-float 6s ease-in-out infinite; }
.cv3-public .home-v4 .hv-toast .hv-ic { width: 34px; height: 34px; border-radius: 10px; background: var(--green-soft); color: var(--green); }
.cv3-public .home-v4 .hv-toast b { display: block; color: var(--ink); }
.cv3-public .home-v4 .hv-toast small { color: var(--faint); font-size: 12px; }
@keyframes hv-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
.cv3-public .home-v4 .hv-today { position: absolute; z-index: 3; left: 48px; bottom: 28px; min-width: 260px; padding: 14px 16px; border-radius: 16px; background: #fffffff0; box-shadow: var(--shadow); }
.cv3-public .home-v4 .hv-today small { display: block; color: var(--faint); font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-today-row { display: flex; align-items: center; gap: 12px; margin-top: 8px; }
.cv3-public .home-v4 .hv-today-row b { display: block; color: var(--ink); font-size: 15px; }
.cv3-public .home-v4 .hv-today-text > span { display: block; color: var(--muted); font-size: 12.5px; }
.cv3-public .home-v4 .hv-avatars { display: flex; }
.cv3-public .home-v4 .hv-avatars .hv-av { width: 30px; height: 30px; margin-left: -6px; border: 2px solid var(--white); font-size: 10px; }
.cv3-public .home-v4 .hv-avatars .hv-av:first-child { margin-left: 0; }
.cv3-public .home-v4 .hv-phone { position: absolute; z-index: 3; right: -12px; bottom: -64px; width: 250px; padding: 9px; border-radius: 34px; background: #0f1f2a; box-shadow: var(--shadow-lg); color: var(--ink); }
.cv3-public .home-v4 .hv-phone-screen { overflow: hidden; border-radius: 26px; background: #f5f7f8; }
.cv3-public .home-v4 .hv-phone-status { display: flex; justify-content: space-between; padding: 10px 20px 4px; font-size: 11px; font-weight: 600; }
.cv3-public .home-v4 .hv-phone-head { display: flex; justify-content: space-between; align-items: center; padding: 6px 16px 10px; }
.cv3-public .home-v4 .hv-phone-head b { font-size: 15px; }
.cv3-public .home-v4 .hv-phone-head small { color: var(--faint); font-size: 11px; }
.cv3-public .home-v4 .hv-pcard { margin: 0 10px 10px; padding: 13px; border-radius: 16px; background: var(--white); box-shadow: 0 1px 2px #142b3a0f; }
.cv3-public .home-v4 .hv-pcard-row, .cv3-public .home-v4 .hv-pcard-addr { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.cv3-public .home-v4 .hv-timer { font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.cv3-public .home-v4 .hv-pcard-title { margin-top: 10px; color: var(--ink); font-size: 15.5px; font-weight: 700; letter-spacing: -.01em; }
.cv3-public .home-v4 .hv-pcard-addr { margin-top: 6px; color: var(--muted); font-size: 11.5px; line-height: 1.35; }
.cv3-public .home-v4 .hv-pcard-nav { flex: 0 0 auto; padding: 4px 8px; border: 1px solid #c9dbf8; border-radius: 7px; color: var(--blue); font-size: 11px; font-weight: 600; }
.cv3-public .home-v4 .hv-proc { margin-top: 10px; padding-top: 9px; border-top: 1px solid #ebf0f2; }
.cv3-public .home-v4 .hv-proc-head { display: flex; justify-content: space-between; color: #2b4253; font-size: 11px; font-weight: 700; }
.cv3-public .home-v4 .hv-proc-bar { height: 4px; margin: 6px 0 8px; border-radius: 4px; background: #edf1f3; }
.cv3-public .home-v4 .hv-proc-bar i { display: block; width: 50%; height: 100%; border-radius: 4px; background: var(--green); }
.cv3-public .home-v4 .hv-proc ul { margin: 0; padding: 0; list-style: none; font-size: 11.5px; }
.cv3-public .home-v4 .hv-proc li { display: flex; align-items: center; gap: 7px; padding: 3px 0; color: var(--ink); }
.cv3-public .home-v4 .hv-proc li i { display: grid; place-items: center; width: 15px; height: 15px; flex: 0 0 auto; border: 1.5px solid #b8c4cc; border-radius: 50%; }
.cv3-public .home-v4 .hv-proc li.is-done i { border-color: var(--green); background: var(--green); }
.cv3-public .home-v4 .hv-proc li.is-done i::after { content: ""; width: 6px; height: 3px; border: solid var(--white); border-width: 0 0 1.6px 1.6px; transform: rotate(-45deg) translate(1px, -1px); }
.cv3-public .home-v4 .hv-proc li em { margin-left: auto; color: var(--faint); font-size: 10.5px; font-style: normal; }
.cv3-public .home-v4 .hv-pbtns { display: grid; grid-template-columns: 1fr 1.4fr; gap: 6px; margin-top: 11px; }
.cv3-public .home-v4 .hv-pbtns span { padding: 9px 6px; border: 1px solid var(--line); border-radius: 9px; font-size: 12px; font-weight: 600; text-align: center; }
.cv3-public .home-v4 .hv-pbtns .is-stop { border-color: var(--ink); background: var(--ink); color: var(--white); }
.cv3-public .home-v4 .hv-phone-tabs { display: flex; justify-content: space-around; padding: 8px 0 12px; border-top: 1px solid #ebf0f2; background: var(--white); color: var(--faint); font-size: 10px; }
.cv3-public .home-v4 .hv-phone-tabs .is-on { color: var(--blue); font-weight: 600; }
.cv3-public .home-v4 .hv-strip { display: flex; flex-direction: column; align-items: center; gap: 16px; margin-top: 64px; padding-block: 34px 30px; border-top: 1px solid var(--line); }
.cv3-public .home-v4 .hv-strip p { font-size: 14px; font-weight: 500; text-align: center; }
.cv3-public .home-v4 .hv-strip nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 40px; }
.cv3-public .home-v4 .hv-strip a { display: inline-flex; align-items: center; gap: 9px; min-height: 40px; color: #2b4253; font-size: 15px; font-weight: 600; }
.cv3-public .home-v4 .hv-strip a:hover { color: var(--teal-ink); }
.cv3-public .home-v4 .hv-strip .icon { color: var(--teal-ink); }

/* A day without Crewilo */
.cv3-public .home-v4 .hv-problem { background: var(--warm); border-block: 1px solid var(--warm-line); }
.cv3-public .home-v4 .hv-pains { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.cv3-public .home-v4 .hv-pain { padding: 28px; border: 1px solid var(--warm-line); border-radius: 18px; background: var(--white); }
.cv3-public .home-v4 .hv-time { display: inline-flex; align-items: center; gap: 8px; padding: 5px 11px; border-radius: 999px; background: #f8ebe0; color: #8a4a2a; font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.cv3-public .home-v4 .hv-time .icon { width: 15px; height: 15px; }
.cv3-public .home-v4 .hv-pain h3 { margin-top: 16px; font-size: 22px; line-height: 1.25; letter-spacing: -.015em; }
.cv3-public .home-v4 .hv-pain p:not(.hv-time) { margin-top: 10px; font-size: 16px; line-height: 1.65; }
.cv3-public .home-v4 .hv-resolve { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 44px; color: var(--ink); font-size: clamp(20px, 2vw, 26px); font-weight: 600; letter-spacing: -.015em; text-align: center; }
.cv3-public .home-v4 .hv-mark { display: inline-block; width: 42px; height: 42px; flex: 0 0 auto; background: url("/edc_static/marketing/experience/graphics/crewilo-mark.svg") center / contain no-repeat; }

/* People */
.cv3-public .home-v4 .hv-roles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.cv3-public .home-v4 .hv-role { display: flex; flex-direction: column; padding: 30px; border: 1px solid var(--line); border-radius: 22px; background: var(--white); }
.cv3-public .home-v4 .hv-face { width: 96px; height: 96px; flex: 0 0 auto; border-radius: 50%; background: url("/edc_static/marketing/experience/images/marketing/crewilo-team-editorial-v1.webp") no-repeat; background-size: 491px auto; box-shadow: 0 0 0 5px var(--white), 0 0 0 6px var(--line); }
.cv3-public .home-v4 .hv-face--owner { background-position: -188px -77px; }
.cv3-public .home-v4 .hv-face--planner { background-position: -99px -62px; }
.cv3-public .home-v4 .hv-face--field { background-position: -294px -26px; }
.cv3-public .home-v4 .hv-role-name { margin-top: 22px; color: var(--teal-ink); font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-role h3 { margin-top: 8px; font-size: 23px; line-height: 1.25; letter-spacing: -.02em; }
.cv3-public .home-v4 .hv-role-text { flex: 1; margin-top: 12px; font-size: 16px; line-height: 1.65; }
.cv3-public .home-v4 .hv-role .hv-checks { margin-top: 18px; padding-top: 16px; border-top: 1px solid #ebf0f2; gap: 9px; }
.cv3-public .home-v4 .hv-langs { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.cv3-public .home-v4 .hv-langs span { padding: 4px 10px; border-radius: 999px; background: var(--teal-soft); color: var(--teal-ink); font-size: 12.5px; font-weight: 600; }

/* How it works */
.cv3-public .home-v4 .hv-how { background: var(--paper); }
.cv3-public .home-v4 .hv-steps { display: grid; gap: 112px; }
.cv3-public .home-v4 .hv-step { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 72px; align-items: center; }
.cv3-public .home-v4 .hv-step:nth-child(even) .hv-step-copy { order: 2; }
.cv3-public .home-v4 .hv-step-label { display: inline-flex; align-items: center; gap: 10px; color: var(--blue); font-size: 14px; font-weight: 600; }
.cv3-public .home-v4 .hv-step-label > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #e8f0fd; }
.cv3-public .home-v4 .hv-step-label .icon { width: 16px; height: 16px; }
.cv3-public .home-v4 .hv-step-copy h3 { margin-top: 16px; font-size: clamp(26px, 2.6vw, 34px); line-height: 1.18; letter-spacing: -.025em; }
.cv3-public .home-v4 .hv-step-copy > p:not(.hv-step-label) { margin-top: 16px; font-size: 18px; line-height: 1.65; }
.cv3-public .home-v4 .hv-step-visual { position: relative; display: flex; align-items: center; justify-content: center; min-height: 420px; padding: 40px 40px 60px; border-radius: 24px; background: linear-gradient(160deg, var(--soft-blue), #f6f9f8); }
.cv3-public .home-v4 .hv-step-visual--wide { padding: 32px 28px 112px; }
.cv3-public .home-v4 .hv-step-visual figcaption { position: absolute; left: 20px; right: 20px; bottom: 18px; color: var(--faint); font-size: 13px; line-height: 1.5; text-align: center; }
.cv3-public .home-v4 .hv-frame { position: relative; z-index: 1; width: 100%; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--white); box-shadow: var(--shadow-lg); }
.cv3-public .home-v4 .hv-frame-bar { display: flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-bottom: 1px solid #ebf0f2; background: #fbfcfc; }
.cv3-public .home-v4 .hv-frame-bar i { width: 10px; height: 10px; border-radius: 50%; background: #e3e8eb; }
.cv3-public .home-v4 .hv-frame-bar span { margin-left: 12px; padding: 2px 10px; border-radius: 6px; background: #f0f3f5; color: var(--faint); font-size: 11.5px; }
.cv3-public .home-v4 .hv-app { padding: 16px 16px 18px; }
.cv3-public .home-v4 .hv-app-head { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; color: var(--ink); }
.cv3-public .home-v4 .hv-app-head b { font-size: 17px; }
.cv3-public .home-v4 .hv-app-head > span { color: var(--faint); font-size: 12.5px; }
.cv3-public .home-v4 .hv-app-head .hv-app-add { margin-left: auto; padding: 6px 11px; border-radius: 7px; background: var(--blue); color: var(--white); font-size: 12px; font-weight: 600; }
.cv3-public .home-v4 .hv-legend { display: flex; flex-wrap: wrap; gap: 14px; margin: 10px 0 12px; color: var(--muted); font-size: 11.5px; }
.cv3-public .home-v4 .hv-legend span { display: flex; align-items: center; gap: 6px; }
.cv3-public .home-v4 .hv-legend i { width: 9px; height: 9px; border-radius: 3px; background: #9aa9b4; }
.cv3-public .home-v4 .hv-legend i.is-done { background: var(--green); }
.cv3-public .home-v4 .hv-legend i.is-live { background: var(--blue); }
.cv3-public .home-v4 .hv-sched { display: grid; grid-template-columns: 118px repeat(3, minmax(0, 1fr)); overflow: hidden; border: 1px solid #ebf0f2; border-radius: 10px; color: var(--ink); font-size: 12px; }
.cv3-public .home-v4 .hv-sched > div { min-width: 0; padding: 8px; border-right: 1px solid #ebf0f2; border-bottom: 1px solid #ebf0f2; }
.cv3-public .home-v4 .hv-sched-h { background: #fafbfc; color: var(--faint); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-sched-h b { display: block; margin-top: 2px; color: var(--ink); font-size: 13px; letter-spacing: 0; text-transform: none; }
.cv3-public .home-v4 .hv-sched > .is-today { background: #f7faff; }
.cv3-public .home-v4 .hv-sched-h.is-today { background: #e8f0fd; color: var(--blue); }
.cv3-public .home-v4 .hv-sched-h.is-today b { color: var(--blue); }
.cv3-public .home-v4 .hv-person { display: flex; align-items: flex-start; gap: 8px; }
.cv3-public .home-v4 .hv-person b { display: block; font-size: 12.5px; }
.cv3-public .home-v4 .hv-person small { display: block; margin-top: 1px; color: var(--faint); font-size: 11px; }
.cv3-public .home-v4 .hv-job { display: block; margin-bottom: 6px; padding: 6px 7px 6px 9px; overflow: hidden; border: 1px solid var(--line); border-left: 3px solid #9aa9b4; border-radius: 7px; background: var(--white); color: var(--muted); font-size: 10.5px; line-height: 1.3; white-space: nowrap; text-overflow: ellipsis; }
.cv3-public .home-v4 .hv-job:last-child { margin-bottom: 0; }
.cv3-public .home-v4 .hv-job b { display: block; margin-bottom: 2px; overflow: hidden; color: var(--ink); font-size: 11.5px; text-overflow: ellipsis; }
.cv3-public .home-v4 .hv-job.is-done { border-left-color: var(--green); background: #fbfdfc; }
.cv3-public .home-v4 .hv-job.is-live { border-color: #c9dbf8; border-left-color: var(--blue); background: #e8f0fd; }
.cv3-public .home-v4 .hv-job.is-live b::after { content: ""; display: inline-block; width: 6px; height: 6px; margin-left: 5px; border-radius: 50%; background: var(--blue); vertical-align: middle; animation: hv-pulse 1.6s infinite; }
.cv3-public .home-v4 .hv-job.is-warn { border-color: #f1d6a8; border-left-color: var(--amber); background: var(--amber-soft); color: var(--amber); font-weight: 600; }
.cv3-public .home-v4 .hv-job.is-leave { border-color: #eadfcb; border-left-color: #d1b98a; background: repeating-linear-gradient(135deg, #f6f2ea, #f6f2ea 6px, #fbf8f2 6px, #fbf8f2 12px); }
@keyframes hv-pulse { 0% { box-shadow: 0 0 0 0 #1769e080; } 70% { box-shadow: 0 0 0 6px #1769e000; } 100% { box-shadow: 0 0 0 0 #1769e000; } }
.cv3-public .home-v4 .hv-chip { position: absolute; z-index: 2; display: flex; align-items: center; gap: 10px; max-width: 290px; padding: 11px 14px 11px 11px; border: 1px solid var(--line); border-radius: 14px; background: var(--white); box-shadow: var(--shadow); color: var(--ink); font-size: 13px; line-height: 1.35; }
.cv3-public .home-v4 .hv-chip .hv-ic { width: 32px; height: 32px; border-radius: 9px; }
.cv3-public .home-v4 .hv-chip b { display: block; font-size: 13.5px; }
.cv3-public .home-v4 .hv-chip small { display: block; color: var(--faint); font-size: 12px; }
.cv3-public .home-v4 .hv-chip--top { left: 22px; top: 60px; }
.cv3-public .home-v4 .hv-chip--bottom { right: 22px; bottom: 82px; }
.cv3-public .home-v4 .hv-chip--bottom .hv-ic { background: var(--green-soft); color: var(--green); }
.cv3-public .home-v4 .hv-chip--warn { left: 20px; bottom: 52px; border-color: #f1d6a8; background: #fffaf0; }
.cv3-public .home-v4 .hv-chip--warn .hv-ic { background: #fae2b9; color: var(--amber); }
.cv3-public .home-v4 .hv-real-phone { position: relative; z-index: 1; display: block; width: 270px; padding: 10px; border-radius: 38px; background: #0f1f2a; box-shadow: var(--shadow-lg); }
.cv3-public .home-v4 .hv-shot { position: relative; display: block; overflow: hidden; background: var(--white); }
.cv3-public .home-v4 .hv-shot img { position: absolute; top: 0; left: 0; max-width: none; height: auto; }
.cv3-public .home-v4 .hv-shot--phone { aspect-ratio: 400 / 851; border-radius: 29px; }
.cv3-public .home-v4 .hv-shot--phone img { width: 103.75%; margin-top: -12%; }
.cv3-public .home-v4 .hv-shot--procedure { aspect-ratio: 1102 / 595; padding: 0; }
.cv3-public .home-v4 .hv-shot--procedure img { width: 172.87%; margin-left: -40.47%; margin-top: -84.85%; }
.cv3-public .home-v4 .hv-shot--permissions { aspect-ratio: 1800 / 923; }
.cv3-public .home-v4 .hv-shot--permissions img { width: 103.9%; margin-top: -3.17%; }
.cv3-public .home-v4 .hv-stack { display: grid; gap: 14px; width: 100%; max-width: 480px; }
.cv3-public .home-v4 .hv-card { display: block; width: 100%; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); box-shadow: var(--shadow); color: var(--ink); }
.cv3-public .home-v4 .hv-card-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.cv3-public .home-v4 .hv-card-head b { display: block; font-size: 16px; }
.cv3-public .home-v4 .hv-card-head small { display: block; margin-top: 2px; color: var(--faint); font-size: 13px; }
.cv3-public .home-v4 .hv-vs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 14px; }
.cv3-public .home-v4 .hv-vs > span { padding: 10px 12px; border-radius: 10px; background: #f6f8f9; }
.cv3-public .home-v4 .hv-vs small { display: block; color: var(--faint); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-vs b { font-size: 18px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cv3-public .home-v4 .hv-vs .is-actual { background: var(--green-soft); }
.cv3-public .home-v4 .hv-vs .is-actual small { color: var(--green); }
.cv3-public .home-v4 .hv-timeline { margin: 14px 0 0; padding: 0; list-style: none; font-size: 13.5px; }
.cv3-public .home-v4 .hv-timeline li { display: grid; grid-template-columns: 14px 1fr auto; align-items: center; gap: 10px; padding: 7px 0; border-bottom: 1px dashed #ebf0f2; }
.cv3-public .home-v4 .hv-timeline li:last-child { border-bottom: 0; }
.cv3-public .home-v4 .hv-timeline i { width: 9px; height: 9px; border-radius: 50%; background: #8796a1; }
.cv3-public .home-v4 .hv-timeline .is-start i { background: var(--green); }
.cv3-public .home-v4 .hv-timeline .is-pause i { background: #e0a83a; }
.cv3-public .home-v4 .hv-timeline b { color: var(--muted); font-size: 12.5px; font-weight: 500; font-variant-numeric: tabular-nums; }

/* Features */
.cv3-public .home-v4 .hv-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.cv3-public .home-v4 .hv-feature { padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: var(--white); transition: border-color .15s ease, box-shadow .15s ease; }
.cv3-public .home-v4 .hv-feature:hover { border-color: #c6d3da; box-shadow: var(--shadow); }
.cv3-public .home-v4 .hv-feature:nth-child(4n + 2) .hv-ic { background: #e8f0fd; color: var(--blue); }
.cv3-public .home-v4 .hv-feature h3 { margin-top: 18px; font-size: 17px; line-height: 1.3; letter-spacing: -.01em; }
.cv3-public .home-v4 .hv-feature p { margin-top: 8px; font-size: 15px; line-height: 1.55; }
.cv3-public .home-v4 .hv-feature-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; margin-top: 28px; }
.cv3-public .home-v4 .hv-feature-foot p { font-size: 15.5px; }

/* QR / NFC keeps its existing illustration and copy styles. */
.cv3-public .home-v4 .tag-section { padding-block: 104px; }
.cv3-public .home-v4 .tag-section h2 { font-size: clamp(30px, 3.4vw, 44px); }
.cv3-public .home-v4 .tag-intro { font-size: 17px; }
.cv3-public .home-v4 .tag-use-case { padding: 20px; border: 1px solid #ffffff1a; border-radius: 16px; background: #ffffff0d; }
.cv3-public .home-v4 .tag-device-note { font-size: 13px; }

/* Industries */
.cv3-public .home-v4 .hv-industry-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.cv3-public .home-v4 .hv-industry { display: flex; flex-direction: column; padding: 26px; border: 1px solid var(--line); border-radius: 18px; background: var(--white); }
.cv3-public .home-v4 .hv-industry-top { display: flex; align-items: center; gap: 14px; }
.cv3-public .home-v4 .hv-industry-top .hv-ic { width: 44px; height: 44px; border: 1px solid var(--line); background: var(--paper); }
.cv3-public .home-v4 .hv-industry h3 { font-size: 19px; line-height: 1.3; letter-spacing: -.01em; }
.cv3-public .home-v4 .hv-industry p { flex: 1; margin-top: 14px; font-size: 15.5px; line-height: 1.6; }
.cv3-public .home-v4 .hv-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.cv3-public .home-v4 .hv-tags span { padding: 4px 10px; border: 1px solid #ebf0f2; border-radius: 999px; background: var(--paper); color: #2b4253; font-size: 12.5px; font-weight: 500; }

/* Help to start */
.cv3-public .home-v4 .hv-start { background: var(--warm); border-block: 1px solid var(--warm-line); }
.cv3-public .home-v4 .hv-start-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 56px; align-items: start; }
.cv3-public .home-v4 .hv-start .hv-head { margin-bottom: 0; }
.cv3-public .home-v4 .hv-start-steps { display: grid; gap: 14px; margin: 34px 0 0; padding: 0; list-style: none; counter-reset: hv-step; }
.cv3-public .home-v4 .hv-start-steps li { display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding: 20px; border: 1px solid var(--warm-line); border-radius: 18px; background: var(--white); }
.cv3-public .home-v4 .hv-start-steps li::before { content: counter(hv-step); counter-increment: hv-step; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--teal-ink); color: var(--white); font-size: 17px; font-weight: 700; }
.cv3-public .home-v4 .hv-start-steps h3 { font-size: 18px; letter-spacing: -.01em; }
.cv3-public .home-v4 .hv-start-steps p { margin-top: 4px; font-size: 15.5px; line-height: 1.6; }
.cv3-public .home-v4 .hv-contact-card { position: sticky; top: calc(var(--header-height) + 24px); padding: 32px; border: 1px solid var(--warm-line); border-radius: 24px; background: var(--white); box-shadow: var(--shadow); }
.cv3-public .home-v4 .hv-contact-who { display: flex; align-items: center; gap: 14px; }
.cv3-public .home-v4 .hv-contact-mark { display: grid; place-items: center; width: 56px; height: 56px; flex: 0 0 auto; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); }
.cv3-public .home-v4 .hv-contact-mark .hv-mark { width: 34px; height: 34px; }
.cv3-public .home-v4 .hv-contact-who b { display: block; color: var(--ink); font-size: 17px; }
.cv3-public .home-v4 .hv-contact-name > span { display: block; color: var(--muted); font-size: 14px; }
.cv3-public .home-v4 .hv-contact-card blockquote { margin: 22px 0 0; color: #2b4253; font-size: 19px; font-weight: 500; line-height: 1.5; letter-spacing: -.01em; }
.cv3-public .home-v4 .hv-contact-card .hv-checks { margin: 22px 0 26px; }
.cv3-public .home-v4 .hv-contact-button { width: 100%; }

/* Security and data */
.cv3-public .home-v4 .hv-trust-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 64px; align-items: start; }
.cv3-public .home-v4 .hv-trust .hv-head { margin-bottom: 0; }
.cv3-public .home-v4 .hv-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 34px; }
.cv3-public .home-v4 .hv-control { padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); }
.cv3-public .home-v4 .hv-control.is-highlight { border-color: #cfe7e3; background: var(--teal-soft); }
.cv3-public .home-v4 .hv-control > .icon { color: var(--teal-ink); }
.cv3-public .home-v4 .hv-control h3 { margin-top: 12px; font-size: 16px; line-height: 1.35; letter-spacing: -.01em; }
.cv3-public .home-v4 .hv-control p { margin-top: 6px; font-size: 14.5px; line-height: 1.5; }
.cv3-public .home-v4 .trust-links { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 26px; }
.cv3-public .home-v4 .trust-links a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--blue); font-size: 15px; font-weight: 600; }
.cv3-public .home-v4 .trust-links .icon { width: 16px; height: 16px; }
.cv3-public .home-v4 .hv-limit { max-width: 560px; margin-top: 14px; color: var(--faint); font-size: 13.5px; line-height: 1.6; }
.cv3-public .home-v4 .hv-trust-visual figcaption { margin-top: 14px; color: var(--faint); font-size: 13px; text-align: center; }

/* Mobile apps */
.cv3-public .home-v4 .hv-apps { padding-block: 56px; background: var(--soft-blue); border-block: 1px solid #e1ebf0; }
.cv3-public .home-v4 .hv-apps-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: center; }
.cv3-public .home-v4 .hv-apps h2 { font-size: clamp(26px, 2.6vw, 34px); }
.cv3-public .home-v4 .hv-apps-inner > div > p:not(.eyebrow) { max-width: 560px; margin-top: 12px; font-size: 16px; line-height: 1.7; }
.cv3-public .home-v4 .hv-apps-downloads { padding: 24px 28px; }

/* Pricing */
.cv3-public .home-v4 .hv-pricing { background: var(--ink); color: #cfdbe2; }
.cv3-public .home-v4 .hv-pricing .hv-head h2 { color: var(--white); }
.cv3-public .home-v4 .hv-pricing .hv-intro { color: #a9bcc8; }
.cv3-public .home-v4 .hv-pricing .eyebrow { color: #7fd0c8; }
.cv3-public .home-v4 .hv-currency { display: flex; width: fit-content; margin: -24px auto 36px; padding: 4px; border: 1px solid #ffffff1f; border-radius: 12px; background: #ffffff14; }
.cv3-public .home-v4 .hv-currency button { min-width: 64px; min-height: 40px; padding: 8px 16px; border: 0; border-radius: 9px; background: transparent; color: #b9cdd6; font-size: 14px; font-weight: 600; }
.cv3-public .home-v4 .hv-currency button[aria-pressed="true"] { background: var(--white); color: var(--ink); }
.cv3-public .home-v4 .hv-plans { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.cv3-public .home-v4 .hv-plan { position: relative; display: flex; flex-direction: column; padding: 30px; border: 1px solid #ffffff1f; border-radius: 20px; background: #ffffff0a; }
.cv3-public .home-v4 .hv-plan h3 { color: var(--white); font-size: 19px; }
.cv3-public .home-v4 .hv-plan-desc { margin-top: 6px; color: #a9bcc8; font-size: 15px; line-height: 1.55; }
.cv3-public .home-v4 .hv-plan-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin-top: 22px; color: var(--white); }
.cv3-public .home-v4 .hv-plan-price b { font-size: 46px; font-weight: 700; line-height: 1; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.cv3-public .home-v4 .hv-plan-price span { color: #a9bcc8; font-size: 15px; }
.cv3-public .home-v4 .hv-plan-price--text b { font-size: 34px; }
.cv3-public .home-v4 .hv-checks--plan { flex: 1; align-content: start; gap: 11px; margin: 24px 0 28px; }
.cv3-public .home-v4 .hv-checks--plan li { color: #dbe6ec; font-size: 15.5px; }
.cv3-public .home-v4 .hv-checks--plan .icon { color: #7fd0c8; }
.cv3-public .home-v4 .hv-plan > .button { width: 100%; }
.cv3-public .home-v4 .hv-plan.is-main { border-color: var(--white); background: var(--white); color: var(--ink); box-shadow: 0 30px 60px #00000040; }
.cv3-public .home-v4 .hv-plan.is-main h3, .cv3-public .home-v4 .hv-plan.is-main .hv-plan-price { color: var(--ink); }
.cv3-public .home-v4 .hv-plan.is-main .hv-plan-desc, .cv3-public .home-v4 .hv-plan.is-main .hv-plan-price span { color: var(--muted); }
.cv3-public .home-v4 .hv-plan-flag { position: absolute; top: -13px; left: 30px; padding: 5px 12px; border-radius: 999px; background: var(--teal); color: var(--white); font-size: 12px; font-weight: 700; letter-spacing: .03em; }
.cv3-public .home-v4 .hv-plan .team-planner { margin: 20px 0 22px; padding: 18px 0 0; border-top: 1px solid #ebf0f2; border-radius: 0; background: transparent; }
.cv3-public .home-v4 .hv-plan .team-planner h4 { color: var(--ink); font-size: 15px; font-weight: 650; }
.cv3-public .home-v4 .hv-plan .team-planner .team-size-caption { margin-top: 4px; font-size: 13px; }
.cv3-public .home-v4 .hv-plan .team-planner .team-stepper input { height: 56px; font-size: 40px; }
.cv3-public .home-v4 .hv-plan .team-quote { margin-top: 18px; }
.cv3-public .home-v4 .hv-plan .team-price > strong { font-size: clamp(32px, 3vw, 42px); }
.cv3-public .home-v4 .hv-plan[data-pricing-unavailable] { max-width: 640px; margin-inline: auto; }
.cv3-public .home-v4 .hv-plan[data-pricing-unavailable] h3 { color: var(--ink); font-size: 24px; }
.cv3-public .home-v4 .hv-reference-note { margin-top: 12px; padding: 10px 12px; border-left: 3px solid #e0a83a; border-radius: 6px; background: #fdf6e7; color: #6b4a17; font-size: 12.5px; line-height: 1.55; }
.cv3-public .home-v4 .hv-addon { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; margin-top: 18px; padding: 22px 26px; border: 1px solid #ffffff29; border-radius: 18px; background: #ffffff08; }
.cv3-public .home-v4 .hv-addon .hv-ic { width: 46px; height: 46px; border-radius: 12px; background: #7fd0c824; color: #7fd0c8; }
.cv3-public .home-v4 .hv-addon h3 { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: var(--white); font-size: 18px; }
.cv3-public .home-v4 .hv-addon h3 em { padding: 2px 8px; border: 1px solid #7fd0c866; border-radius: 999px; color: #7fd0c8; font-size: 11.5px; font-style: normal; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cv3-public .home-v4 .hv-addon p { margin-top: 4px; color: #a9bcc8; font-size: 15px; line-height: 1.55; }
.cv3-public .home-v4 .hv-addon-price { color: var(--white); text-align: right; white-space: nowrap; }
.cv3-public .home-v4 .hv-addon-price b { font-size: 28px; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.cv3-public .home-v4 .hv-addon-price > span { display: block; color: #a9bcc8; font-size: 13px; }
.cv3-public .home-v4 .hv-price-note { margin-top: 28px; color: #8ea4b2; font-size: 14px; text-align: center; }

/* FAQ */
.cv3-public .home-v4 .hv-faq-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 72px; }
.cv3-public .home-v4 .hv-faq-side h2 { font-size: clamp(30px, 3.4vw, 44px); }
.cv3-public .home-v4 .hv-faq-side > p:not(.eyebrow) { margin-top: 16px; font-size: 16px; line-height: 1.7; }
.cv3-public .home-v4 .hv-faq-side .button { margin-top: 26px; }
.cv3-public .home-v4 .faq-list summary { font-size: 17px; }
.cv3-public .home-v4 .faq-answer { font-size: 16px; line-height: 1.7; }

/* Closing */
.cv3-public .home-v4 .hv-closing { padding: 0 0 104px; }
.cv3-public .home-v4 .hv-closing-box { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 48px; align-items: center; overflow: hidden; padding: 72px 64px; border-radius: 28px; background: var(--deep); }
.cv3-public .home-v4 .hv-closing-box::before { content: ""; position: absolute; inset: 0; z-index: -2; background: url("/edc_static/marketing/experience/images/marketing/crewilo-team-editorial-v1.webp") 60% 30% / cover no-repeat; opacity: .22; }
.cv3-public .home-v4 .hv-closing-box::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(100deg, #163e47f5 35%, #163e47b3); }
.cv3-public .home-v4 .hv-closing h2 { color: var(--white); font-size: clamp(30px, 3.4vw, 44px); }
.cv3-public .home-v4 .hv-closing-box > div > p { margin-top: 16px; color: #cfe1e4; font-size: 19px; line-height: 1.6; }
.cv3-public .home-v4 .hv-closing-actions { display: flex; flex-direction: column; gap: 12px; }
.cv3-public .home-v4 .hv-closing-actions p { color: #b6cfd3; font-size: 14px; text-align: center; }

@media (max-width: 1100px) {
  .cv3-public .home-v4 { --gutter: 72px; }
  .cv3-public .home-v4 .hv-phone { right: 8px; }
  .cv3-public .home-v4 .hv-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cv3-public .home-v4 .hv-plans { grid-template-columns: 1fr 1fr; }
  .cv3-public .home-v4 .hv-plans > .hv-plan:last-child { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  .cv3-public .home-v4 .section, .cv3-public .home-v4 .tag-section { padding-block: 84px; }
  .cv3-public .home-v4 .hv-pains, .cv3-public .home-v4 .hv-roles { grid-template-columns: 1fr; }
  .cv3-public .home-v4 .hv-step, .cv3-public .home-v4 .hv-start-grid, .cv3-public .home-v4 .hv-trust-grid, .cv3-public .home-v4 .hv-faq-grid, .cv3-public .home-v4 .hv-closing-box { grid-template-columns: 1fr; gap: 40px; }
  .cv3-public .home-v4 .hv-step:nth-child(even) .hv-step-copy { order: 0; }
  .cv3-public .home-v4 .hv-steps { gap: 84px; }
  .cv3-public .home-v4 .hv-industry-grid, .cv3-public .home-v4 .hv-feature-grid { grid-template-columns: 1fr 1fr; }
  .cv3-public .home-v4 .hv-photo { aspect-ratio: 3 / 2; }
  .cv3-public .home-v4 .hv-phone { width: 220px; bottom: -56px; }
  .cv3-public .home-v4 .hv-contact-card { position: static; }
  .cv3-public .home-v4 .hv-apps-inner { grid-template-columns: 1fr; }
  .cv3-public .home-v4 .hv-role { display: grid; grid-template-columns: 96px minmax(0, 1fr); column-gap: 22px; }
  .cv3-public .home-v4 .hv-role .hv-face { grid-row: span 3; }
  .cv3-public .home-v4 .hv-role .hv-role-name { margin-top: 4px; }
  .cv3-public .home-v4 .hv-role .hv-checks, .cv3-public .home-v4 .hv-role .hv-langs { grid-column: 1 / -1; }
  .cv3-public .home-v4 .hv-closing-box { padding: 48px 32px; }
}
@media (max-width: 600px) {
  .cv3-public .home-v4 { --gutter: 32px; }
  .cv3-public .home-v4 .section, .cv3-public .home-v4 .tag-section { padding-block: 68px; }
  .cv3-public .home-v4 .hv-head { margin-bottom: 36px; }
  .cv3-public .home-v4 .hv-intro { font-size: 17px; }
  .cv3-public .home-v4 .hv-hero { padding-top: 44px; }
  .cv3-public .home-v4 .hv-pill b { display: none; }
  .cv3-public .home-v4 .hv-actions .button { width: 100%; }
  .cv3-public .home-v4 .hv-reassure { flex-direction: column; align-items: center; gap: 8px; }
  .cv3-public .home-v4 .hv-hero-visual { width: calc(100% - 24px); margin-top: 40px; }
  .cv3-public .home-v4 .hv-photo { aspect-ratio: 4 / 3; border-radius: 20px; }
  .cv3-public .home-v4 .hv-photo img { object-position: 45% 30%; }
  .cv3-public .home-v4 .hv-toast, .cv3-public .home-v4 .hv-today { display: none; }
  .cv3-public .home-v4 .hv-phone { position: relative; right: auto; bottom: auto; width: 214px; margin: -96px 8px 0 auto; padding: 7px; border-radius: 30px; }
  .cv3-public .home-v4 .hv-phone-screen { border-radius: 24px; }
  .cv3-public .home-v4 .hv-strip { margin-top: 40px; }
  .cv3-public .home-v4 .hv-strip nav { justify-content: flex-start; gap: 6px 20px; }
  .cv3-public .home-v4 .hv-industry-grid, .cv3-public .home-v4 .hv-feature-grid, .cv3-public .home-v4 .hv-controls, .cv3-public .home-v4 .hv-plans { grid-template-columns: 1fr; }
  .cv3-public .home-v4 .hv-step-visual { min-height: 0; padding: 24px 16px 64px; border-radius: 18px; }
  .cv3-public .home-v4 .hv-step-visual--wide { padding: 20px 12px 128px; }
  .cv3-public .home-v4 .hv-sched { grid-template-columns: 92px repeat(2, minmax(0, 1fr)); }
  .cv3-public .home-v4 .hv-sched .hv-sched-wed { display: none; }
  .cv3-public .home-v4 .hv-person small, .cv3-public .home-v4 .hv-legend { display: none; }
  .cv3-public .home-v4 .hv-chip--top { left: 8px; top: 16px; }
  .cv3-public .home-v4 .hv-chip--bottom { right: 8px; bottom: 56px; }
  .cv3-public .home-v4 .hv-chip--warn { left: 10px; right: 10px; bottom: 56px; max-width: none; }
  .cv3-public .home-v4 .hv-real-phone { width: 230px; }
  .cv3-public .home-v4 .hv-vs b { font-size: 15px; }
  .cv3-public .home-v4 .hv-role { display: flex; padding: 24px; }
  .cv3-public .home-v4 .hv-plan { padding: 24px; }
  .cv3-public .home-v4 .hv-addon { grid-template-columns: auto minmax(0, 1fr); padding: 20px; }
  .cv3-public .home-v4 .hv-addon-price { grid-column: 1 / -1; text-align: left; }
  .cv3-public .home-v4 .hv-contact-card { padding: 24px; }
  .cv3-public .home-v4 .hv-closing { padding-bottom: 68px; }
  .cv3-public .home-v4 .hv-closing-box { padding: 36px 22px; border-radius: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .cv3-public .home-v4 .hv-toast, .cv3-public .home-v4 .hv-job.is-live b::after { animation: none; }
}
@media print {
  .cv3-public .home-v4 .hv-toast, .cv3-public .home-v4 .hv-phone, .cv3-public .home-v4 .hv-today, .cv3-public .home-v4 .hv-chip { display: none !important; }
}
