@font-face {
font-family: 'Cormorant Garamond';
font-style: italic;
font-weight: 300 700;
font-display: swap;
src: url(/assets/fonts/cormorant-garamond-italic.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;
}
@font-face {
font-family: 'Cormorant Garamond';
font-style: normal;
font-weight: 300 700;
font-display: swap;
src: url(/assets/fonts/cormorant-garamond-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;
}
@font-face {
font-family: 'Manrope';
font-style: normal;
font-weight: 200 800;
font-display: swap;
src: url(/assets/fonts/manrope-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;
}
:root {
--ink: #0a1630;
--ink-2: #11224a;
--ink-3: #1b3166;
--blue: #0b57d0;
--blue-deep: #0a3fa6;
--sky: #4cc4ff;
--cyan: #12c4ff;
--orange: #ff5c00;
--orange-soft: #ffe3d2;
--paper: #f6f3ee;
--paper-2: #ece6db;
--white: #fff;
--muted: #4b5368;
--line: rgba(10, 22, 48, 0.13);
--line-strong: rgba(10, 22, 48, 0.26);
--err: #b42318;
--bubble: 30px 30px 30px 7px;
--bubble-r: 30px 30px 7px 30px;
--bubble-lg: clamp(28px, 4vw, 48px) clamp(28px, 4vw, 48px) clamp(28px, 4vw, 48px) 10px;
--serif: 'Fraunces', 'Iowan Old Style', Georgia, serif;
--sans: 'Figtree', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
--gutter: clamp(20px, 4.4vw, 64px);
--max: 1320px;
--hdr: 108px;
--ease: cubic-bezier(0.2, 0.8, 0.2, 1);
--shadow-s: 0 1px 2px rgba(10, 22, 48, 0.06), 0 8px 24px -10px rgba(10, 22, 48, 0.18);
--shadow-l: 0 2px 4px rgba(10, 22, 48, 0.05), 0 30px 70px -24px rgba(10, 22, 48, 0.38);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--hdr) + 16px); }
body {
margin: 0; background: var(--paper); color: var(--ink);
font: 400 1.0625rem/1.62 var(--sans); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
overflow-x: clip;
}
img, svg { display: block; max-width: 100%; }
img { height: auto; }
h1, h2, h3, h4, p, ul, ol, dl, dd, figure, blockquote { margin: 0; }
ul, ol { padding: 0; list-style: none; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: 0; padding: 0; }
address { font-style: normal; }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; border-radius: 6px; }
.explorer :focus-visible, .cta-ink :focus-visible, .callout :focus-visible, .mission-lg :focus-visible { outline-color: var(--sky); }
::selection { background: var(--orange); color: var(--ink); }
.skip { position: absolute; left: 12px; top: -80px; z-index: 100; background: var(--ink); color: #fff; padding: 12px 18px; border-radius: 999px; transition: top 0.2s; }
.skip:focus { top: 12px; }
.wrap { width: 100%; max-width: calc(var(--max) + var(--gutter) * 2); margin-inline: auto; padding-inline: var(--gutter); }
.sec { padding-block: clamp(72px, 10vw, 150px); }
.sec-tight { padding-block: clamp(40px, 6vw, 88px); }
.center { text-align: center; }
:root {
--t-hero: clamp(3.5rem, 0.6rem + 7.4vw, 8.2rem);
--t-display: clamp(2.9rem, 1rem + 5.4vw, 6.2rem);
--t-h2: clamp(2.3rem, 1rem + 3.4vw, 4.4rem);
--t-h2xl: clamp(2.7rem, 0.8rem + 5.2vw, 5.8rem);
--t-h3: clamp(1.5rem, 1.1rem + 1.2vw, 2.3rem);
--t-lede: clamp(1.18rem, 1.05rem + 0.5vw, 1.42rem);
--t-body: 1.125rem;
}
body { font-size: var(--t-body); }
.visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.display, .h2, .h3, .quote, .signoff-line {
font-family: var(--serif); font-weight: 500; font-optical-sizing: auto;
letter-spacing: -0.03em; text-wrap: balance;
}
.display { font-size: var(--t-display); line-height: 0.97; }
.display-md { font-size: clamp(2.7rem, 1rem + 5vw, 5.6rem); line-height: 0.99; }
.h2 { font-size: var(--t-h2); line-height: 1.03; letter-spacing: -0.028em; }
.h2-xl { font-size: var(--t-h2xl); line-height: 1; letter-spacing: -0.034em; }
.h3 { font-size: var(--t-h3); line-height: 1.12; letter-spacing: -0.02em; }
.display em, .h2 em, .h3 em, .quote em, .signoff-line em { font-style: italic; font-weight: 300; color: var(--blue); letter-spacing: -0.03em; }
.explorer em, .cta-ink em, .mission-lg em, .callout em, .ftr em { color: var(--sky); }
.tim em { color: #ffbf98; }
.lede { font-size: var(--t-lede); line-height: 1.52; color: var(--muted); max-width: 52ch; margin-top: 1.6rem; text-wrap: pretty; }
.lede-2 { margin-top: 1rem; font-size: 1.15rem; }
.lede-sm { color: var(--muted); font-size: 1.2rem; line-height: 1.55; max-width: 46ch; margin-top: 1.5rem; text-wrap: pretty; }
.eyebrow { font: 650 0.8rem/1 var(--sans); letter-spacing: 0.15em; text-transform: uppercase; color: var(--blue); margin-bottom: 1.6rem; }
.eyebrow-dot::before { content: ''; display: inline-block; width: 9px; height: 9px; border-radius: 50%; background: var(--orange); margin-right: 12px; vertical-align: 1px; box-shadow: 0 0 0 5px rgba(255, 92, 0, 0.16); }
.explorer .eyebrow, .cta-ink .eyebrow, .mission-lg .eyebrow { color: var(--sky); }
.tim .eyebrow { color: #cfe3ff; }
.fine { display: flex; gap: 10px; font-size: 0.95rem; color: var(--muted); align-items: flex-start; }
.fine .ico { flex: none; width: 18px; height: 18px; margin-top: 3px; color: var(--blue); }
.fine a { text-decoration: underline; text-underline-offset: 3px; }
.ico { width: 22px; height: 22px; flex: none; }
.btn {
display: inline-flex; align-items: center; gap: 16px; height: 58px; padding: 0 9px 0 28px; border-radius: 999px;
font: 650 1.02rem/1 var(--sans); letter-spacing: -0.005em; border: 1.5px solid transparent; white-space: nowrap;
transition: transform 0.4s var(--ease), box-shadow 0.4s var(--ease), background 0.3s, border-color 0.3s, color 0.3s;
}
.btn .ico { width: 40px; height: 40px; padding: 11px; border-radius: 50%; transition: transform 0.45s var(--ease), background 0.3s, color 0.3s; }
.btn:not(:has(.ico)) { padding-inline: 28px; }
.btn-primary { background: var(--orange); color: var(--ink); box-shadow: 0 1px 0 rgba(255, 255, 255, 0.35) inset, 0 12px 28px -14px rgba(255, 92, 0, 0.75); }
.btn-primary .ico { background: var(--ink); color: #fff; }
.btn-primary:hover { background: var(--ink); color: #fff; transform: translateY(-2px); box-shadow: 0 18px 34px -14px rgba(10, 22, 48, 0.65); }
.btn-primary:hover .ico { background: var(--orange); color: var(--ink); transform: rotate(-45deg); }
.cta .btn-primary:hover, .explorer .btn-primary:hover, .signoff .btn-primary:hover { background: #fff; color: var(--ink); }
.ex-preview[data-group='business'] .btn-primary, .ex-preview[data-group='business'] .btn-primary:hover { background: var(--ink); color: #fff; }
.ex-preview[data-group='business'] .btn-primary .ico { background: var(--orange); color: var(--ink); }
.btn-ghost { border-color: var(--line-strong); color: var(--ink); padding-inline: 26px; }
.btn-ghost .ico { width: 20px; height: 20px; padding: 0; }
.btn-ghost:hover { border-color: var(--ink); background: rgba(10, 22, 48, 0.05); }
.btn-light { background: #fff; color: var(--ink); }
.btn-light .ico { background: var(--blue); color: #fff; }
.btn-light:hover { transform: translateY(-2px); box-shadow: 0 18px 34px -14px rgba(0, 0, 0, 0.5); }
.btn-light:hover .ico { transform: rotate(-45deg); }
.btn-dark { background: var(--ink); color: #fff; }
.btn-dark .ico { background: var(--orange); color: var(--ink); }
.btn-dark:hover { background: var(--blue); transform: translateY(-2px); }
.btn-dark:hover .ico { transform: rotate(-45deg); }
.btn-line { border-color: rgba(255, 255, 255, 0.5); color: #fff; padding-inline: 26px; }
.btn-line .ico { width: 20px; height: 20px; padding: 0; }
.btn-line:hover { background: #fff; color: var(--ink); border-color: #fff; }
.link-arrow { display: inline-flex; align-items: center; gap: 10px; font-weight: 650; margin-top: 1.8rem; color: var(--blue); border-bottom: 2px solid currentColor; padding-bottom: 4px; transition: gap 0.3s var(--ease); }
.link-arrow .ico { width: 18px; height: 18px; }
.link-arrow:hover { gap: 16px; }
.link-light, .explorer .link-arrow { color: var(--sky); }
.hdr { position: sticky; top: 0; z-index: 60; background: rgba(246, 243, 238, 0.86); backdrop-filter: saturate(1.4) blur(16px); -webkit-backdrop-filter: saturate(1.4) blur(16px); border-bottom: 1px solid transparent; transition: border-color 0.3s, background 0.3s; }
.hdr.scrolled { border-bottom-color: var(--line); background: rgba(246, 243, 238, 0.94); }
.hdr-in { height: var(--hdr); display: flex; align-items: center; gap: 28px; transition: height 0.3s var(--ease); }
.brand { display: block; flex: none; line-height: 0; }
.brand img { width: 238px; height: auto; }
.nav { margin-left: auto; }
.nav > ul { display: flex; align-items: center; gap: 2px; }
.nav li { position: relative; display: flex; align-items: center; }
.nav li > a { padding: 10px 14px; border-radius: 999px; font-weight: 560; font-size: 0.98rem; transition: background 0.2s, color 0.2s; }
.nav li.has-menu > a { padding-right: 6px; }
.nav li > a:hover, .nav li.has-menu:hover > a { background: rgba(10, 22, 48, 0.06); }
.nav [aria-current='page'], .nav .is-current > a { color: var(--blue); }
.chev { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; margin-left: -2px; margin-right: 4px; color: var(--muted); }
.chev .ico { width: 16px; height: 16px; transition: transform 0.3s var(--ease); }
.chev[aria-expanded='true'] .ico { transform: rotate(180deg); }
.chev:hover { background: rgba(10, 22, 48, 0.06); }
.menu { position: absolute; top: calc(100% + 6px); left: -18px; z-index: 5; width: min(660px, 90vw); background: #fff; border-radius: var(--bubble); box-shadow: var(--shadow-l); border: 1px solid var(--line); animation: menuIn 0.28s var(--ease); }
.menu[hidden] { display: none; }
@keyframes menuIn { from { opacity: 0; transform: translateY(-8px); } }
.menu-in { display: grid; grid-template-columns: 220px 1fr; gap: 12px; padding: 18px; }
.menu-lead { padding: 14px 10px 10px 14px; border-right: 1px solid var(--line); }
.menu-lead .eyebrow { margin-bottom: 0.8rem; }
.menu-txt { font-family: var(--serif); font-size: 1.25rem; line-height: 1.2; letter-spacing: -0.005em; }
.menu-lead .link-arrow { margin-top: 1.1rem; font-size: 0.92rem; }
.menu-list { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; align-content: start; }
.menu-list a { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 14px; font-weight: 560; font-size: 0.97rem; line-height: 1.25; transition: background 0.2s; }
.menu-list a .ico { width: 34px; height: 34px; padding: 7px; border-radius: 11px 11px 11px 3px; background: #e7f0ff; color: var(--blue); transition: background 0.2s, color 0.2s; }
.menu-list a:hover { background: var(--paper); }
.menu-list a:hover .ico { background: var(--blue); color: #fff; }
.hdr-cta { display: flex; align-items: center; gap: 18px; }
.hdr-cta .btn { height: 46px; padding-inline: 22px; font-size: 0.96rem; }
.tel { display: flex; align-items: center; gap: 8px; font-weight: 650; font-size: 0.97rem; }
.tel .ico { width: 18px; height: 18px; color: var(--blue); }
.tel:hover { color: var(--blue); }
.burger { display: none; width: 48px; height: 48px; border-radius: 50%; background: var(--ink); color: #fff; place-items: center; margin-left: auto; }
.burger .i-close { display: none; }
.burger[aria-expanded='true'] .i-open { display: none; }
.burger[aria-expanded='true'] .i-close { display: block; }
.drawer { position: fixed; inset: 0; z-index: 55; background: var(--paper); padding-top: calc(var(--hdr) - 4px); opacity: 0; visibility: hidden; transform: translateY(-10px); transition: opacity 0.3s, transform 0.4s var(--ease), visibility 0s 0.4s; overflow-y: auto; overscroll-behavior: contain; }
.drawer.open { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.drawer-in { padding: 18px var(--gutter) 40px; display: flex; flex-direction: column; gap: 28px; min-height: 100%; }
.drawer nav { display: flex; flex-direction: column; }
.drawer .dd, .drawer .dl { border-bottom: 1px solid var(--line); }
.drawer summary, .drawer .dl { font-family: var(--serif); font-size: clamp(1.9rem, 7vw, 2.5rem); letter-spacing: -0.013em; line-height: 1.1; padding: 18px 0; display: flex; justify-content: space-between; align-items: center; cursor: pointer; list-style: none; }
.drawer summary::-webkit-details-marker { display: none; }
.drawer summary .ico { width: 26px; height: 26px; transition: transform 0.3s var(--ease); }
.drawer details[open] summary .ico { transform: rotate(180deg); }
.drawer details ul { padding: 0 0 18px; display: grid; gap: 2px; }
.drawer details li a { display: block; padding: 11px 0 11px 4px; font-weight: 560; font-size: 1.08rem; color: var(--muted); }
.drawer details li:first-child a { color: var(--blue); font-weight: 650; }
.drawer-foot { margin-top: auto; display: grid; gap: 14px; }
.drawer-foot .btn { justify-content: space-between; }
.drawer-line { display: flex; gap: 12px; align-items: center; font-weight: 600; padding: 4px 0; }
.drawer-line .ico { color: var(--blue); width: 20px; height: 20px; }
body.nav-open { overflow: hidden; }
.mbar { display: none; position: fixed; z-index: 50; left: 12px; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); background: var(--ink); border-radius: 999px; padding: 6px; box-shadow: 0 18px 40px -12px rgba(10, 22, 48, 0.6); gap: 6px; transition: transform 0.4s var(--ease), opacity 0.3s; }
.mbar a { display: flex; align-items: center; justify-content: center; gap: 10px; height: 50px; border-radius: 999px; color: #fff; font-weight: 650; padding-inline: 20px; }
.mbar a .ico { width: 20px; height: 20px; }
.mbar-main { flex: 1; background: var(--orange); color: var(--ink) !important; justify-content: space-between !important; }
body.nav-open .mbar { transform: translateY(140%); opacity: 0; }
.insurers { border-block: 1px solid var(--line); background: #fff; }
.insurers-in { display: flex; align-items: center; gap: clamp(24px, 5vw, 72px); padding-block: 30px; }
.insurers-lab { flex: none; font-weight: 650; font-size: 0.95rem; line-height: 1.3; color: var(--muted); padding-right: clamp(24px, 4vw, 56px); border-right: 1px solid var(--line); }
.insurers-logos { display: flex; align-items: center; flex-wrap: wrap; gap: 18px clamp(28px, 4.5vw, 64px); flex: 1; justify-content: space-between; }
.insurers-logos img { height: 38px; width: auto; filter: grayscale(1) contrast(1.05); opacity: 0.66; transition: filter 0.3s, opacity 0.3s; }
.insurers-logos li:hover img { filter: none; opacity: 1; }
.insurers-more { font-size: 0.92rem; color: var(--muted); font-weight: 600; }
.why-head { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(0, 0.8fr); gap: clamp(28px, 5vw, 80px); align-items: end; }
.why-side .lede-sm { margin-top: 0; }
.why-list { margin-top: clamp(48px, 7vw, 100px); }
.why-list li { display: grid; grid-template-columns: clamp(72px, 10vw, 150px) minmax(0, 1.05fr) minmax(0, 1fr); gap: 16px clamp(20px, 4vw, 64px); align-items: baseline; padding-block: clamp(30px, 4.4vw, 62px); border-top: 1.5px solid var(--ink); transition: background 0.4s, padding 0.4s var(--ease); }
.why-list li:last-child { border-bottom: 1.5px solid var(--ink); }
.why-n { font-family: var(--serif); font-size: clamp(2.2rem, 3vw, 3.4rem); line-height: 1; color: #e24e00; font-weight: 500; letter-spacing: -0.020em; font-style: italic; }
.why-list h3 { font-family: var(--serif); font-weight: 500; font-size: clamp(2rem, 1rem + 2.9vw, 4rem); letter-spacing: -0.017em; line-height: 1; }
.why-list p { color: var(--muted); max-width: 40ch; font-size: 1.2rem; line-height: 1.5; }
.why-list li:hover { background: rgba(255, 255, 255, 0.6); padding-inline: 16px; }
.explorer { margin-inline: clamp(8px, 1.4vw, 20px); border-radius: clamp(28px, 4.5vw, 64px); color: #fff; padding-block: clamp(64px, 9vw, 140px); position: relative; overflow: clip; background: radial-gradient(1000px 640px at 98% -8%, rgba(18, 120, 255, 0.42), transparent 60%), var(--ink); }
.ex-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 32px; flex-wrap: wrap; margin-bottom: clamp(40px, 5.5vw, 80px); }
.ex-tabs { display: none; padding: 6px; border-radius: 999px; background: rgba(255, 255, 255, 0.1); gap: 4px; }
.js .ex-tabs { display: inline-flex; }
.ex-tabs button { display: inline-flex; align-items: center; gap: 12px; padding: 0 12px 0 28px; height: 56px; border-radius: 999px; font-weight: 650; font-size: 1.02rem; color: rgba(255, 255, 255, 0.82); transition: background 0.35s, color 0.35s; }
.ex-tabs button i { font-style: normal; font-size: 0.82rem; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: rgba(255, 255, 255, 0.14); transition: background 0.35s, color 0.35s; }
.ex-tabs button[aria-selected='true'] { background: #fff; color: var(--ink); }
.ex-tabs button[aria-selected='true'] i { background: var(--orange); color: var(--ink); }
.ex-tabs button:not([aria-selected='true']):hover { color: #fff; background: rgba(255, 255, 255, 0.08); }
.ex-body { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr); gap: clamp(32px, 5.5vw, 88px); align-items: start; }
.js .ex-list:not(.on) { display: none; }
.ex-list + .ex-list { margin-top: 56px; }
.js .ex-list + .ex-list { margin-top: 0; }
.ex-row { position: relative; display: grid; grid-template-columns: 68px minmax(0, 1fr) 52px; align-items: center; column-gap: 8px; padding: clamp(20px, 2.2vw, 30px) 0 clamp(20px, 2.2vw, 30px) 0; border-bottom: 1px solid rgba(255, 255, 255, 0.16); transition: padding 0.5s var(--ease), opacity 0.35s, background 0.4s; }
.ex-list li:first-child .ex-row { border-top: 1px solid rgba(255, 255, 255, 0.16); }
.ex-row::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--orange); border-radius: 4px; transform: scaleY(0); transition: transform 0.5s var(--ease); }
.ex-n { font: 650 0.92rem var(--sans); letter-spacing: 0.1em; color: var(--orange); padding-left: 4px; transition: padding 0.5s var(--ease); }
.ex-name { font-family: var(--serif); font-size: clamp(1.7rem, 1rem + 2.1vw, 3.1rem); letter-spacing: -0.015em; line-height: 1.05; font-weight: 500; }
.ex-go { width: 52px; height: 52px; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, 0.3); display: grid; place-items: center; transition: background 0.35s, color 0.35s, transform 0.5s var(--ease), border-color 0.35s; }
.ex-go .ico { width: 20px; height: 20px; }
.ex-desc { grid-column: 2; display: block; color: rgba(255, 255, 255, 0.82); font-size: 1.1rem; line-height: 1.5; max-width: 50ch; margin-top: 8px; }
.js .ex-desc { display: grid; grid-template-rows: 0fr; margin-top: 0; transition: grid-template-rows 0.55s var(--ease), margin 0.55s var(--ease); }
.ex-desc > span { overflow: hidden; min-height: 0; }
.js .ex-row { opacity: 0.58; }
.js .ex-row.is-active, .js .ex-row:hover, .js .ex-row:focus-visible { opacity: 1; }
.js .ex-row.is-active { background: linear-gradient(90deg, rgba(255, 255, 255, 0.075), transparent 85%); padding-left: 22px; }
.js .ex-row.is-active::before { transform: scaleY(1); }
.js .ex-row.is-active .ex-desc { grid-template-rows: 1fr; margin-top: 12px; }
.ex-row.is-active .ex-go, .ex-row:hover .ex-go { background: var(--orange); color: var(--ink); border-color: var(--orange); transform: rotate(-45deg); }
.ex-preview { position: sticky; top: calc(var(--hdr) + 28px); min-height: 640px; padding: clamp(28px, 3vw, 44px); border-radius: var(--bubble-lg); color: #fff; background: linear-gradient(158deg, #2288ff 0%, var(--blue) 46%, var(--blue-deep) 100%); box-shadow: 0 50px 90px -34px rgba(0, 0, 0, 0.75); display: flex; flex-direction: column; overflow: hidden; transition: background 0.6s, color 0.4s; }
.ex-preview[data-group='business'] { color: var(--ink); background: linear-gradient(158deg, #ffa43a 0%, var(--orange) 48%, #e03c00 100%); }
.ex-prev-top { display: flex; justify-content: space-between; align-items: center; position: relative; }
.ex-tag { font: 650 0.78rem/1 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; padding: 11px 18px; border-radius: 999px; background: rgba(255, 255, 255, 0.18); }
.ex-preview[data-group='business'] .ex-tag { background: rgba(10, 22, 48, 0.12); }
.ex-pos { font: 650 0.9rem var(--sans); letter-spacing: 0.1em; opacity: 0.85; }
.ex-prev-main { margin-top: auto; position: relative; display: grid; gap: 16px; transition: opacity 0.3s, transform 0.5s var(--ease); }
.ex-preview h3 { font-family: var(--serif); font-weight: 500; font-size: clamp(2.2rem, 1.2rem + 2.4vw, 3.6rem); letter-spacing: -0.018em; line-height: 1; }
.ex-preview p { font-size: 1.15rem; line-height: 1.5; max-width: 38ch; }
.ex-fact { display: grid; gap: 6px; padding-top: 18px; margin-top: 4px; border-top: 1px solid rgba(255, 255, 255, 0.3); }
.ex-preview[data-group='business'] .ex-fact { border-color: rgba(10, 22, 48, 0.25); }
.ex-fact small { font: 650 0.74rem/1 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.8; }
.ex-fact strong { font: 650 1.2rem/1.3 var(--sans); letter-spacing: -0.01em; }
.ex-preview .btn { justify-self: start; margin-top: 8px; }
.ex-preview .btn b { font-weight: 650; }
.ex-preview.swap .ex-prev-main { opacity: 0; transform: translateY(14px); }
.stats { padding-block: clamp(80px, 11vw, 170px); }
.stats .eyebrow { color: var(--ink); }
.stat { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 32px); align-items: end; border-top: 1.5px solid var(--ink); padding-top: clamp(20px, 2.4vw, 32px); }
.stat-n { font-family: var(--serif); font-weight: 500; font-size: clamp(5rem, 15vw, 15.5rem); line-height: 0.84; letter-spacing: -0.033em; font-feature-settings: 'lnum'; }
.stat-n small { display: block; font: 650 0.9rem/1 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; margin-bottom: clamp(14px, 2vw, 26px); letter-spacing: 0.16em; }
.stat-n span { display: block; }
.stat-n i { font-style: italic; font-weight: 300; font-size: 0.62em; margin-left: 0.04em; vertical-align: 0.34em; letter-spacing: 0; }
.stat-c { font-size: clamp(1.15rem, 1rem + 0.5vw, 1.4rem); line-height: 1.5; color: var(--muted); max-width: 30ch; padding-bottom: clamp(6px, 1.2vw, 18px); }
.stat-c strong { color: var(--ink); font-weight: 650; }
.stat-a .stat-n { grid-column: 1 / 9; color: var(--blue); }
.stat-a .stat-n small { color: var(--blue); }
.stat-a .stat-c { grid-column: 9 / 13; }
.stat-b { margin-top: clamp(40px, 6vw, 96px); }
.stat-b .stat-c { grid-column: 1 / 6; }
.stat-b .stat-n { grid-column: 6 / 13; justify-self: end; text-align: right; color: #e24e00; }
.stat-b .stat-n small { color: #b83b00; }
.stat-q { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px 56px; align-items: end; margin-top: clamp(56px, 8vw, 120px); padding: clamp(28px, 4vw, 56px) 0 0 clamp(20px, 3vw, 44px); border-left: 6px solid var(--orange); }
.stat-q p { font-family: var(--serif); font-weight: 500; font-size: clamp(1.8rem, 1rem + 2.8vw, 3.6rem); line-height: 1.08; letter-spacing: -0.015em; max-width: 24ch; text-wrap: balance; }
.tim { margin-inline: clamp(8px, 1.4vw, 20px); border-radius: clamp(28px, 4.5vw, 64px); background: radial-gradient(900px 520px at 100% 0%, rgba(76, 196, 255, 0.4), transparent 62%), var(--blue); color: #fff; padding-block: clamp(72px, 9vw, 140px); overflow: clip; }
.tim-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr); gap: clamp(36px, 6vw, 110px); align-items: center; }
.tim-lede { font-size: var(--t-lede); line-height: 1.55; max-width: 46ch; margin-top: 1.8rem; color: rgba(255, 255, 255, 0.94); text-wrap: pretty; }
.tim .hero-actions { margin-top: 2.4rem; }
.tim-fig { justify-self: center; width: min(100%, 320px); isolation: isolate; }
.tim-photo { position: relative; padding: 12px; background: #fff; border-radius: 40px 40px 40px 9px; width: 256px; box-shadow: 0 40px 70px -30px rgba(0, 0, 0, 0.6); }
.tim-photo::after { content: ''; position: absolute; z-index: -1; inset: 24px -24px -24px 24px; border-radius: inherit; background: var(--orange); }
.tim-photo img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 30px 30px 30px 6px; }
.tim-fig figcaption { margin-top: 44px; display: grid; gap: 4px; }
.tim-fig strong { font-family: var(--serif); font-weight: 500; font-size: 2.4rem; letter-spacing: -0.015em; line-height: 1.05; }
.tim-fig figcaption > span { color: rgba(255, 255, 255, 0.85); }
.tim-fig dl { margin-top: 20px; display: grid; }
.tim-fig dl div { display: flex; justify-content: space-between; gap: 16px; padding-block: 11px; border-top: 1px solid rgba(255, 255, 255, 0.26); font-size: 0.95rem; }
.tim-fig dt { color: rgba(255, 255, 255, 0.78); }
.tim-fig dd { font-weight: 650; text-align: right; }
.ledger { padding-block: clamp(80px, 10vw, 150px); }
.ledger-head { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr); gap: clamp(28px, 5vw, 80px); align-items: end; }
.ledger-side .lede-sm { margin-top: 0; }
.ledger-side .hero-actions { margin-top: 1.6rem; }
.ledger-list { display: grid; grid-template-columns: 1fr 1fr; column-gap: clamp(32px, 6vw, 96px); margin-top: clamp(40px, 6vw, 88px); }
.ledger-list > div { padding: 28px 0 clamp(32px, 4vw, 52px); border-top: 1.5px solid var(--ink); }
.ledger-list dt { font-family: var(--serif); font-weight: 500; font-size: clamp(1.9rem, 1.2rem + 1.6vw, 2.8rem); letter-spacing: -0.015em; line-height: 1.1; }
.ledger-list dt span { display: block; font: 650 0.82rem var(--sans); letter-spacing: 0.14em; color: #d64600; margin-bottom: 16px; }
.ledger-list dd { margin-top: 14px; color: var(--muted); max-width: 44ch; font-size: 1.12rem; line-height: 1.55; }
.cta { margin-inline: clamp(8px, 1.4vw, 20px); border-radius: clamp(28px, 4.5vw, 64px); padding-block: clamp(64px, 9vw, 140px); position: relative; overflow: clip; }
.cta-ink { color: #fff; background: radial-gradient(900px 560px at 100% 0%, rgba(18, 120, 255, 0.4), transparent 60%), var(--ink); }
.cta-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(36px, 6vw, 96px); align-items: center; }
.cta-copy .lede-sm { color: rgba(255, 255, 255, 0.82); }
.cta-contact { margin-top: clamp(28px, 4vw, 48px); display: grid; border-top: 1px solid rgba(255, 255, 255, 0.2); }
.cta-contact a { display: flex; gap: 18px; align-items: center; padding-block: 18px; border-bottom: 1px solid rgba(255, 255, 255, 0.2); transition: padding 0.4s var(--ease), color 0.3s; }
.cta-contact a:hover { padding-left: 10px; color: var(--sky); }
.cta-contact .ico { width: 52px; height: 52px; padding: 14px; border-radius: 50%; border: 1.5px solid rgba(76, 196, 255, 0.6); color: var(--sky); }
.cta-contact span { display: grid; line-height: 1.25; min-width: 0; }
.cta-contact small { font: 650 0.74rem/1 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255, 255, 255, 0.65); margin-bottom: 6px; }
.cta-contact strong { font-weight: 650; font-size: 1.1rem; overflow-wrap: anywhere; }
.cta-contact li:first-child strong { font-family: var(--serif); font-weight: 500; font-size: clamp(1.9rem, 1rem + 2.2vw, 3rem); letter-spacing: -0.015em; white-space: nowrap; }
.cta-form { background: var(--paper); color: var(--ink); padding: clamp(24px, 3.2vw, 48px); box-shadow: 0 60px 100px -36px rgba(0, 0, 0, 0.7); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; }
.field { display: grid; gap: 9px; align-content: start; }
.field-wide { grid-column: 1 / -1; }
.field label { font-weight: 650; font-size: 0.92rem; }
.req { color: #d64600; }
.opt { font-weight: 500; color: var(--muted); font-size: 0.82rem; margin-left: 4px; }
.field input, .field textarea { width: 100%; background: #fff; border: 1.5px solid transparent; box-shadow: inset 0 0 0 1px var(--line-strong); border-radius: 16px; padding: 0 18px; height: 60px; transition: box-shadow 0.25s, border-color 0.25s, background 0.25s; font-size: 1.05rem; }
.field textarea { height: auto; min-height: 132px; padding: 16px 18px; resize: vertical; line-height: 1.5; }
.field input::placeholder, .field textarea::placeholder { color: #7b8296; }
.field input:hover, .field textarea:hover { box-shadow: inset 0 0 0 1px var(--ink); }
.field input:focus, .field textarea:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 5px rgba(11, 87, 208, 0.18); }
.field [aria-invalid='true'] { border-color: var(--err); box-shadow: 0 0 0 5px rgba(180, 35, 24, 0.12); background: #fff8f7; }
.err { color: var(--err); font-size: 0.9rem; font-weight: 600; }
.err:empty { display: none; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-hint { margin-top: 16px; font-size: 0.92rem; color: var(--muted); }
.form-foot { display: flex; align-items: center; gap: 22px; margin-top: 24px; flex-wrap: wrap; }
.form-note { display: flex; gap: 10px; font-size: 0.86rem; color: var(--muted); max-width: 36ch; line-height: 1.4; }
.form-note .ico { width: 18px; height: 18px; color: var(--blue); margin-top: 1px; }
.form-status { margin-top: 16px; font-weight: 650; font-size: 0.98rem; }
.form-status:empty { display: none; }
.form-status.is-err { color: var(--err); }
.form-status a { text-decoration: underline; text-underline-offset: 3px; }
.form.sending .btn { opacity: 0.7; pointer-events: none; }
.form-ok { text-align: left; padding: 8px 0; }
.form-ok[hidden] { display: none; }
.form.done .form-grid, .form.done .form-hint, .form.done .form-foot, .form.done .form-status { display: none; }
.ok-badge { width: 68px; height: 68px; border-radius: 24px 24px 24px 5px; background: var(--blue); color: #fff; display: grid; place-items: center; margin-bottom: 22px; }
.ok-badge .ico { width: 32px; height: 32px; }
.form-ok h3 { font-family: var(--serif); font-size: 2.3rem; letter-spacing: -0.015em; font-weight: 500; margin-bottom: 12px; }
.form-ok a { color: var(--blue); font-weight: 650; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.signoff { padding-top: clamp(88px, 12vw, 180px); padding-bottom: clamp(48px, 6vw, 88px); }
.signoff-line { font-size: clamp(3.6rem, 0.4rem + 12.4vw, 13rem); line-height: 0.9; letter-spacing: -0.05em; }
.signoff-line em { letter-spacing: -0.045em; }
.signoff-side { display: flex; justify-content: space-between; align-items: center; gap: 24px 48px; flex-wrap: wrap; margin-top: clamp(32px, 5vw, 64px); padding-top: 28px; border-top: 1.5px solid var(--ink); }
.signoff-side p { max-width: 36ch; font-size: 1.2rem; line-height: 1.45; color: var(--muted); }
.ftr { margin-inline: clamp(8px, 1.4vw, 20px); background: var(--ink); color: #fff; border-radius: clamp(28px, 4.5vw, 64px) clamp(28px, 4.5vw, 64px) 0 0; padding-top: clamp(56px, 7vw, 104px); padding-bottom: 40px; }
.ftr-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: clamp(28px, 4vw, 64px); padding-bottom: clamp(40px, 5vw, 72px); }
.ftr-plate { display: inline-block; background: #fff; padding: 16px 22px; border-radius: 26px 26px 26px 7px; margin-bottom: 30px; line-height: 0; }
.ftr-logo { width: 200px; height: auto; }
.ftr address p { display: flex; gap: 12px; align-items: flex-start; margin-top: 12px; font-weight: 520; line-height: 1.4; color: rgba(255, 255, 255, 0.92); }
.ftr address .ico { width: 18px; height: 18px; color: var(--sky); margin-top: 4px; }
.ftr a { transition: color 0.2s; }
.ftr address a:hover, .ftr nav a:hover, .ftr-legal a:hover { color: var(--sky); }
.ftr h2 { font: 650 0.8rem/1 var(--sans); letter-spacing: 0.15em; text-transform: uppercase; color: rgba(255, 255, 255, 0.6); margin-bottom: 20px; }
.ftr nav li + li { margin-top: 11px; }
.ftr nav a { font-weight: 520; line-height: 1.3; display: inline-block; color: rgba(255, 255, 255, 0.92); }
.ftr-legal { border-top: 1px solid rgba(255, 255, 255, 0.18); padding-top: 28px; display: grid; gap: 12px; font-size: 0.88rem; color: rgba(255, 255, 255, 0.7); max-width: 100ch; }
.ftr-legal a { text-decoration: underline; text-underline-offset: 3px; }
.ftr-copy { color: #fff; font-weight: 600; }
.crumbs { margin-bottom: 2rem; }
.crumbs ol { display: flex; flex-wrap: wrap; gap: 4px 10px; font-size: 0.86rem; color: var(--muted); font-weight: 520; }
.crumbs li + li::before { content: '/'; margin-right: 10px; opacity: 0.5; }
.crumbs a:hover { color: var(--blue); }
.crumbs [aria-current] { color: var(--ink); }
.phero { position: relative; overflow: clip; padding-block: clamp(36px, 5vw, 72px) clamp(48px, 6vw, 96px); }
.phero-why .phero-grid { align-items: start; }
.why-q { display: flex; flex-direction: column; gap: 12px; padding: clamp(20px, 3vw, 36px); border-radius: var(--bubble-lg); background: linear-gradient(150deg, #1478ff, var(--blue-deep)); box-shadow: var(--shadow-l); }
.why-q-lab { color: rgba(255, 255, 255, 0.85); font-weight: 650; font-size: 0.9rem; margin-bottom: 6px; }
.why-q .msg.q { max-width: 92%; font-family: var(--serif); font-weight: 500; font-size: clamp(1.15rem, 1rem + 0.6vw, 1.5rem); letter-spacing: -0.006em; }
.why-q .msg.q:nth-child(odd) { align-self: flex-end; border-radius: 22px 22px 5px 22px; }
.hub-rows li + li { border-top: 1px solid var(--line-strong); }
.hub-rows li:last-child { border-bottom: 1px solid var(--line-strong); }
.hub-rows .hub-item { display: grid; grid-template-columns: 60px 80px minmax(0, 1fr) minmax(0, 1.1fr) 150px; gap: 20px; align-items: center; padding-block: clamp(26px, 3vw, 40px); padding-inline: 12px; border-radius: 28px; transition: background 0.35s, padding 0.35s var(--ease); }
.hub-rows .hub-item:hover { background: #fff; padding-inline: 28px; }
.hub-rows .hub-n { order: 1; font: 600 0.85rem var(--sans); letter-spacing: 0.1em; color: var(--muted); }
.hub-rows h2 { order: 3; font-family: var(--serif); font-weight: 500; font-size: clamp(1.7rem, 1.2rem + 1.6vw, 2.8rem); letter-spacing: -0.013em; line-height: 1.08; }
.hub-rows p { order: 4; color: var(--muted); }
.hub-rows .hub-go { order: 5; justify-self: end; }
.hub-go { display: inline-flex; gap: 8px; align-items: center; font-weight: 650; color: var(--blue); font-size: 0.95rem; }
.hub-go .ico { width: 18px; height: 18px; transition: transform 0.3s var(--ease); }
.hub-item:hover .hub-go .ico { transform: translateX(5px); }
.bento { display: grid; grid-template-columns: repeat(12, 1fr); gap: clamp(12px, 1.6vw, 20px); }
.bento li:nth-child(1) { grid-column: span 7; } .bento li:nth-child(2) { grid-column: span 5; }
.bento li:nth-child(n + 3) { grid-column: span 4; }
.bento .hub-item { display: flex; flex-direction: column; height: 100%; min-height: 340px; padding: clamp(24px, 2.6vw, 38px); border-radius: var(--bubble-lg); background: #fff; position: relative; overflow: hidden; transition: transform 0.45s var(--ease), box-shadow 0.45s; }
.bento .hub-item:hover { transform: translateY(-6px); box-shadow: var(--shadow-l); }
.bento .hub-n { position: absolute; top: clamp(24px, 2.6vw, 38px); right: clamp(24px, 2.6vw, 38px); font: 600 0.85rem var(--sans); letter-spacing: 0.1em; opacity: 0.55; }
.bento h2 { font-family: var(--serif); font-weight: 500; font-size: clamp(1.6rem, 1.1rem + 1.2vw, 2.4rem); letter-spacing: -0.011em; line-height: 1.08; margin-top: auto; padding-top: 28px; }
.bento p { margin-top: 12px; color: var(--muted); max-width: 44ch; }
.bento .hub-go { margin-top: 22px; }
.bento li:nth-child(1) .hub-item { background: var(--ink); color: #fff; }
.bento li:nth-child(1) p { color: rgba(255, 255, 255, 0.76); }
.bento li:nth-child(1) .hub-go { color: var(--sky); }
.bento li:nth-child(2) .hub-item { background: #dde9ff; }
.bento li:nth-child(4) .hub-item { background: var(--orange-soft); }
.bento li:nth-child(4) .hub-go { color: #b73e00; }
.bento li:nth-child(5) .hub-item { background: var(--paper-2); }
.bento li:nth-child(6) .hub-item { background: var(--blue); color: #fff; }
.bento li:nth-child(6) p { color: rgba(255, 255, 255, 0.85); }
.bento li:nth-child(6) .hub-go { color: #fff; }
.hero-line { display: flex; gap: 10px; align-items: center; margin-top: 1.6rem; font-weight: 600; color: var(--muted); }
.hero-line .ico { color: var(--orange); width: 20px; height: 20px; }
.understand-grid { display: grid; grid-template-columns: minmax(0, 4.5fr) minmax(0, 7fr); gap: clamp(28px, 6vw, 110px); align-items: start; }
.understand-h { position: sticky; top: calc(var(--hdr) + 40px); }
.prose > * + * { margin-top: 1.3rem; }
.prose p { color: var(--muted); max-width: 64ch; font-size: 1.08rem; text-wrap: pretty; }
.prose .lead-p { color: var(--ink); font-size: clamp(1.2rem, 1.05rem + 0.6vw, 1.5rem); line-height: 1.5; }
.twin { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.twin-c { background: #fff; border-radius: var(--bubble); padding: 28px; box-shadow: var(--shadow-s); }
.twin-c:nth-child(2) { border-radius: var(--bubble-r); }
.twin-c h3 { font-family: var(--serif); font-weight: 500; font-size: 1.55rem; letter-spacing: -0.007em; margin-bottom: 12px; }
.covers { margin-top: 2.2rem !important; padding: 26px 28px; border-radius: var(--bubble); background: #fff; box-shadow: var(--shadow-s); }
.covers .eyebrow { margin-bottom: 1rem; }
.covers ul { display: flex; flex-wrap: wrap; gap: 10px; }
.covers li { display: inline-flex; gap: 8px; align-items: center; padding: 10px 18px 10px 12px; border-radius: 999px; background: #e7f0ff; color: var(--ink); font-weight: 650; font-size: 0.97rem; }
.covers .ico { width: 18px; height: 18px; color: var(--blue); }
.callout { margin-block: clamp(8px, 2vw, 24px); margin-inline: clamp(8px, 1.4vw, 20px); border-radius: clamp(28px, 4.5vw, 64px); background: radial-gradient(700px 400px at 100% 0%, rgba(76, 196, 255, 0.5), transparent 60%), linear-gradient(120deg, var(--blue), var(--blue-deep)); color: #fff; padding-block: clamp(48px, 6.5vw, 96px); overflow: clip; position: relative; }
.callout-in { display: flex; align-items: center; justify-content: space-between; gap: 32px 56px; flex-wrap: wrap; }
.callout-t { font-family: var(--serif); font-weight: 500; font-size: clamp(1.8rem, 1.1rem + 2.6vw, 3.4rem); line-height: 1.08; letter-spacing: -0.013em; max-width: 22ch; text-wrap: balance; }
.advocate-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(28px, 6vw, 110px); align-items: start; }
.claim { margin-top: 2.2rem !important; padding: clamp(24px, 3vw, 38px); background: #fff; border-radius: var(--bubble); border-left: 6px solid var(--orange); box-shadow: var(--shadow-s); }
.claim p { font-family: var(--serif); font-size: clamp(1.25rem, 1.05rem + 0.8vw, 1.75rem); line-height: 1.35; color: var(--ink); letter-spacing: -0.006em; font-style: italic; font-weight: 500; max-width: none; }
.prose .fine { margin-top: 1.6rem; }
.related-head { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; margin-bottom: 28px; }
.related-head .link-arrow { margin-top: 0; }
.related-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.related-list a { display: grid; grid-template-columns: 52px 1fr 22px; gap: 16px; align-items: center; background: #fff; border-radius: var(--bubble); padding: 22px; height: 100%; box-shadow: var(--shadow-s); transition: transform 0.4s var(--ease), box-shadow 0.4s; }
.related-list a:hover { transform: translateY(-5px); box-shadow: var(--shadow-l); }
.related-list strong { display: block; font-family: var(--serif); font-weight: 500; font-size: 1.2rem; letter-spacing: -0.005em; line-height: 1.2; }
.related-list small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 4px; color: var(--muted); font-size: 0.88rem; line-height: 1.4; }
.pts { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: clamp(14px, 2vw, 28px); margin-top: clamp(36px, 5vw, 64px); counter-reset: n; }
.pts li { background: #fff; padding: clamp(26px, 3vw, 44px); border-radius: var(--bubble-lg); box-shadow: var(--shadow-s); min-height: 360px; display: flex; flex-direction: column; justify-content: flex-end; }
.pts li:nth-child(2) { background: var(--ink); color: #fff; }
.pts li:nth-child(2) p { color: rgba(255, 255, 255, 0.78); }
.pts li:nth-child(2) .pts-n { color: var(--orange); }
.pts li:nth-child(3) { background: #dde9ff; }
.pts-n { font-family: var(--serif); font-style: italic; font-weight: 500; font-size: 3.6rem; color: var(--blue); line-height: 1; margin-bottom: auto; padding-bottom: 36px; align-self: flex-start; letter-spacing: -0.020em; }
.pts p { color: var(--muted); }
.pts + * { margin-top: 24px; }
.mission-in { max-width: 1100px; }
.quote { font-size: clamp(1.55rem, 1rem + 1.7vw, 2.55rem); line-height: 1.22; letter-spacing: -0.02em; font-weight: 340; text-wrap: pretty; }
.mission .fine { margin-top: 2.4rem; }
.mission-lg { background: var(--ink); color: #fff; margin-inline: clamp(8px, 1.4vw, 20px); border-radius: clamp(28px, 4.5vw, 64px); background: radial-gradient(800px 500px at 100% 0%, rgba(18, 120, 255, 0.4), transparent 60%), var(--ink); }
.about-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr); gap: clamp(28px, 6vw, 96px); align-items: center; }
.about-fig { justify-self: center; position: relative; isolation: isolate; }
.about-photo { width: min(270px, 70vw); padding: 12px; background: #fff; box-shadow: var(--shadow-l); position: relative; }
.about-photo::after { content: ''; position: absolute; z-index: -1; inset: 22px -22px -22px 22px; border-radius: inherit; background: linear-gradient(150deg, var(--cyan), var(--blue)); }
.about-photo img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 28px 28px 28px 7px; }
.about-fig figcaption { display: grid; margin-top: 36px; line-height: 1.35; color: var(--muted); }
.about-fig strong { font-family: var(--serif); font-weight: 500; font-size: 1.8rem; color: var(--ink); letter-spacing: -0.010em; }
.about-trust-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(28px, 6vw, 110px); align-items: start; }
.panels { display: grid; gap: 28px; }
.panels h3 { font: 650 0.8rem/1 var(--sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); margin-bottom: 14px; }
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
.chips li { padding: 11px 20px; background: #fff; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--line); font-weight: 650; }
.contact-hero { padding-block: clamp(36px, 5vw, 72px) clamp(64px, 8vw, 120px); }
.contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.contact-cards { margin-top: 2.4rem; display: grid; gap: 10px; }
.contact-cards a { display: flex; gap: 18px; align-items: center; padding: 18px 22px; background: #fff; border-radius: 22px 22px 22px 5px; box-shadow: var(--shadow-s); transition: transform 0.35s var(--ease), box-shadow 0.35s; }
.contact-cards a:hover { transform: translateX(6px); box-shadow: var(--shadow-l); }
.contact-cards .ico { width: 44px; height: 44px; padding: 11px; border-radius: 15px 15px 15px 4px; background: #e7f0ff; color: var(--blue); }
.contact-cards span { display: grid; line-height: 1.3; min-width: 0; }
.contact-cards small { font: 650 0.74rem/1 var(--sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); margin-bottom: 5px; }
.contact-cards strong { font-weight: 650; font-size: 1.05rem; overflow-wrap: anywhere; }
.contact-form { background: #fff; padding: clamp(24px, 3.4vw, 48px); box-shadow: var(--shadow-l); position: sticky; top: calc(var(--hdr) + 24px); }
.contact-form .field input, .contact-form .field textarea { background: var(--paper); }
.contact-form .h3 { margin-bottom: 8px; }
.contact-form .form { margin-top: 26px; }
.dis-grid { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: clamp(28px, 6vw, 96px); align-items: start; }
.dis-aside { position: sticky; top: calc(var(--hdr) + 28px); display: grid; gap: 28px; }
.dis-aside ol { counter-reset: d; display: grid; gap: 4px; }
.dis-aside li a { display: block; padding: 8px 0 8px 14px; border-left: 2px solid var(--line); font-weight: 560; font-size: 0.95rem; color: var(--muted); line-height: 1.3; transition: color 0.2s, border-color 0.2s; }
.dis-aside li a:hover { color: var(--blue); border-color: var(--blue); }
.dis-sec { padding-bottom: clamp(32px, 4vw, 52px); margin-bottom: clamp(32px, 4vw, 52px); border-bottom: 1px solid var(--line-strong); }
.dis-sec:last-child { border: 0; }
.dis-sec .h3 { display: flex; gap: 18px; align-items: baseline; margin-bottom: 1.3rem; }
.dis-sec .h3 span { font: 650 0.85rem var(--sans); color: #b83b00; letter-spacing: 0.1em; }
.dis-sec .panels { margin-block: 1.6rem; }
.bul { display: grid; gap: 10px; color: var(--muted); max-width: 64ch; font-size: 1.05rem; }
.bul li { padding-left: 26px; position: relative; }
.bul li::before { content: ''; position: absolute; left: 4px; top: 0.7em; width: 8px; height: 8px; border-radius: 50% 50% 50% 1px; background: var(--blue); }
.nf { padding-block: clamp(80px, 12vw, 180px); }
.js [data-reveal] { opacity: 0; transform: translateY(26px); transition: opacity 0.9s var(--ease), transform 0.9s var(--ease); transition-delay: calc(var(--i, 0) * 110ms); }
.js [data-reveal].in { opacity: 1; transform: none; }
@media (max-width: 1180px) {
.nav, .hdr-cta .tel { display: none; }
.hdr-cta { margin-left: auto; }
.burger { display: grid; margin-left: 0; }
.hdr-in { gap: 16px; }
}
@media (max-width: 1020px) {
.hero-bubble { width: min(130%, 700px); left: 50%; }
.why-side .lede-sm, .ledger-side .lede-sm { margin-top: 1.2rem; }
.understand-h, .contact-form, .dis-aside { position: static; }
.ex-preview { display: none; }
.js .ex-row { opacity: 1; }
.js .ex-desc { grid-template-rows: 1fr; margin-top: 10px; }
.js .ex-row.is-active { background: none; padding-left: 0; }
.js .ex-row.is-active::before { transform: scaleY(0); }
.ex-row.is-active .ex-go, .ex-row:hover .ex-go { background: none; color: inherit; border-color: rgba(255, 255, 255, 0.3); transform: none; }
.proof { grid-template-columns: 1fr 1fr; }
.proof li:nth-child(odd) { padding-left: 0; border-left: 0; }
.proof li:nth-child(n + 3) { border-top: 1px solid var(--line); }
.stat-a .stat-n { grid-column: 1 / -1; } .stat-a .stat-c { grid-column: 1 / 8; margin-top: 20px; }
.stat-b .stat-n { grid-column: 1 / -1; justify-self: start; text-align: left; order: -1; } .stat-b .stat-c { grid-column: 1 / 8; margin-top: 20px; }
.ftr-grid { grid-template-columns: 1fr 1fr; }
.ftr-brand { grid-column: 1 / -1; }
.related-list { grid-template-columns: 1fr; }
.pts { grid-template-columns: 1fr; }
.pts li { min-height: 0; } .pts li:nth-child(2), .pts li[data-reveal].in:nth-child(2) { transform: none; }
.hub-rows .hub-item { grid-template-columns: 48px 64px minmax(0, 1fr); }
.hub-rows p { grid-column: 3; order: 5; } .hub-rows .hub-go { grid-column: 3; order: 6; justify-self: start; }
.bento li:nth-child(n) { grid-column: span 6; }
.insurers-in { flex-direction: column; align-items: flex-start; gap: 18px; }
.insurers-lab { border: 0; padding: 0; }
.insurers-logos { justify-content: flex-start; }
.tim-fig { justify-self: start; }
.why-list li { grid-template-columns: 72px 1fr; }
.why-list li p { grid-column: 2; }
}
@media (max-width: 760px) {
:root { --hdr: 92px; --t-body: 1.0625rem; }
.hdr-cta { display: none; }
.burger { margin-left: auto; }
.brand img { width: 189px; }
.mbar { display: flex; }
.hero { padding-top: 12px; }
.display { font-size: clamp(2.8rem, 13vw, 3.8rem); }
.display-md { font-size: clamp(2.5rem, 11vw, 3.3rem); }
.h2-xl { font-size: clamp(2.5rem, 11.4vw, 3.4rem); }
.h2 { font-size: clamp(2.2rem, 9.6vw, 2.9rem); }
.h2-xl br { display: none; }
.callme strong { font-size: 1.25rem; }
.msg { max-width: 94%; }
.msg p { padding: 13px 18px; } .msg.a p { padding: 15px 20px; }
.msg.msg-hl p { padding: 16px 26px 20px; }
.tim-chip { align-self: center; }
.proof { grid-template-columns: 1fr 1fr; margin-top: 28px; }
.proof li, .proof li + li { flex-direction: column; gap: 10px; padding: 18px 12px 20px 0; border-left: 0; }
.proof li:nth-child(even) { padding-left: 16px; border-left: 1px solid var(--line); }
.proof li:nth-child(n + 3) { border-top: 1px solid var(--line); }
.proof small { font-size: 0.85rem; }
.why-list li { grid-template-columns: 56px 1fr; gap: 10px 14px; padding-block: 28px; }
.why-list h3 { font-size: clamp(1.9rem, 8.4vw, 2.4rem); }
.why-list p { font-size: 1.08rem; }
.ex-head { margin-bottom: 36px; }
.ex-tabs { width: 100%; } .ex-tabs button { flex: 1; justify-content: space-between; padding-left: 22px; }
.ex-row { grid-template-columns: 44px minmax(0, 1fr) 46px; }
.ex-go { width: 46px; height: 46px; }
.ex-desc { font-size: 1.04rem; }
.stats { padding-block: 72px 80px; }
.stat-n { font-size: clamp(5rem, 27vw, 9rem); }
.stat-a .stat-c, .stat-b .stat-c { grid-column: 1 / -1; max-width: none; }
.stat-q { grid-template-columns: 1fr; padding-left: 20px; padding-top: 8px; }
.stat-q p { font-size: clamp(1.7rem, 7.6vw, 2.2rem); }
.stat-q .btn { width: 100%; justify-content: space-between; }
.tim-copy .btn { width: 100%; justify-content: space-between; }
.tim-fig { width: 100%; } .tim-photo { width: 232px; }
.ledger-list { grid-template-columns: 1fr; }
.ledger-side .btn { width: auto; }
.cta-contact li:first-child strong { font-size: 2rem; }
.cta-contact .ico { width: 46px; height: 46px; padding: 12px; }
.cta-form { padding: 22px 18px 26px; }
.form-grid { grid-template-columns: 1fr; }
.form-foot .btn { width: 100%; justify-content: space-between; }
.signoff-line { font-size: clamp(3.4rem, 17vw, 5.4rem); }
.signoff-side { flex-direction: column; align-items: stretch; }
.signoff-side .btn { width: 100%; justify-content: space-between; }
.ftr { padding-bottom: 112px; }
.ftr-grid { grid-template-columns: 1fr; gap: 32px; }
.twin { grid-template-columns: 1fr; }
.bento li:nth-child(n) { grid-column: span 12; }
.bento .hub-item { min-height: 260px; }
.callout-in .btn { width: 100%; justify-content: space-between; }
.callout-t { max-width: none; }
.hub-rows .hub-item { grid-template-columns: 56px minmax(0, 1fr); gap: 10px 16px; padding-inline: 4px; }
.hub-rows .hub-n { display: none; } .hub-rows .hub-ic { order: 1; grid-row: span 2; align-self: start; }
.hub-rows h2 { order: 2; } .hub-rows p, .hub-rows .hub-go { grid-column: 1 / -1; }
.contact-form { padding: 22px; }
}
@media (max-width: 380px) {
.brand img { width: 167px; }
.btn { padding-left: 22px; }
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { animation: none !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
.js [data-reveal] { opacity: 1; transform: none; }
}
@media print { .hdr, .mbar, .drawer, .cta { display: none; } }
.phero-business .art-chips .ico { color: var(--orange); }
.bento li:nth-child(6) { grid-column: span 12 !important; }
.bento li:nth-child(6) .hub-item { min-height: 0; display: grid; grid-template-columns: 70px minmax(0, 1fr) minmax(0, 1fr) auto; align-items: center; gap: 24px; padding-block: 28px; }
.bento li:nth-child(6) h2 { margin: 0; padding: 0; } .bento li:nth-child(6) p, .bento li:nth-child(6) .hub-go { margin: 0; }
.bento li:nth-child(6) .hub-n { display: none; }
@media (max-width: 1020px) { .bento li:nth-child(6) .hub-item { grid-template-columns: 1fr; gap: 12px; } .bento li:nth-child(6) h2 { padding-top: 18px; } .bento li:nth-child(6) .hub-go { margin-top: 10px; } }
.bento .hub-n { opacity: 1; color: var(--muted); }
.bento li:nth-child(1) .hub-n, .bento li:nth-child(6) .hub-n { color: rgba(255, 255, 255, 0.8); }
.form-ok a, .tel, .cta-contact a, .contact-cards strong { white-space: nowrap; }
.contact-cards strong { white-space: normal; }
.related-head .link-arrow { white-space: nowrap; }
@media (max-width: 1420px) { .hdr-cta .tel { display: none; } }
.video-sec { padding-block: clamp(24px, 4vw, 56px) clamp(48px, 6vw, 96px); }
.video-grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(28px, 5vw, 80px); align-items: center; }
.video { position: relative; aspect-ratio: 16 / 9; border-radius: var(--bubble-lg); overflow: hidden; background: var(--ink); box-shadow: var(--shadow-l); isolation: isolate; }
.video-poster, .video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.video-poster img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.8s var(--ease); }
.video-poster::before { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, transparent 45%, rgba(10, 22, 48, 0.72)); }
.video-poster:hover img { transform: scale(1.03); }
.video-play { position: absolute; z-index: 2; left: 50%; top: 46%; width: clamp(72px, 9vw, 104px); aspect-ratio: 1; border-radius: 50%; transform: translate(-50%, -50%); background: var(--orange); color: var(--ink); display: grid; place-items: center; box-shadow: 0 20px 40px -12px rgba(255, 92, 0, 0.8); transition: transform 0.4s var(--ease); }
.video-play .ico { width: 38%; height: 38%; fill: currentColor; stroke: none; margin-left: 6%; }
.video-poster:hover .video-play { transform: translate(-50%, -50%) scale(1.08); }
.video-cap { position: absolute; z-index: 2; left: clamp(18px, 3vw, 32px); bottom: clamp(14px, 2.4vw, 26px); color: #fff; font-weight: 650; font-size: 1.1rem; display: grid; line-height: 1.25; }
.video-cap small { font-weight: 450; font-size: 0.8rem; opacity: 0.9; }
@media (max-width: 1020px) { .video-grid { grid-template-columns: 1fr; } }
.hub-rows .hub-item { grid-template-columns: 70px minmax(0, 1fr) minmax(0, 1.1fr) 150px; }
.hub-rows .hub-n { order: 1; font-size: 0.95rem; color: #b83b00; }
.bento .hub-n { position: static; font: 650 0.95rem var(--sans); letter-spacing: 0.1em; color: #b83b00; opacity: 1; }
.bento li:nth-child(1) .hub-n, .bento li:nth-child(6) .hub-n { color: #ff8a4d; }
.bento .hub-item { padding-top: clamp(24px, 2.6vw, 38px); }
.bento li:nth-child(6) .hub-item { grid-template-columns: 70px minmax(0, 1fr) minmax(0, 1fr) auto; }
.bento li:nth-child(6) .hub-n { display: block; }
.related-list a { grid-template-columns: 1fr 22px; }
.related-list a > .ico { width: 20px; height: 20px; color: var(--blue); }
.ex-prev-main { gap: 18px; }
@media (max-width: 1020px) {
.phero-row .hero-actions { justify-content: flex-start; }
.hub-rows .hub-item { grid-template-columns: 56px minmax(0, 1fr); }
.hub-rows p, .hub-rows .hub-go { grid-column: 2; }
}
@media (max-width: 760px) {
.ph { padding-bottom: 56px; }
.hub-rows .hub-item { grid-template-columns: 40px minmax(0, 1fr); gap: 8px 12px; padding-inline: 0; }
.hub-rows .hub-n { display: block; } .hub-rows h2 { order: 2; } .hub-rows p, .hub-rows .hub-go { grid-column: 2; }
.bento li:nth-child(6) .hub-item { grid-template-columns: 1fr; }
}
.nav li.has-menu { border-radius: 999px; transition: background 0.2s; }
.nav li.has-menu:hover, .nav li.has-menu:focus-within { background: rgba(10, 22, 48, 0.07); }
.nav li.has-menu > a, .nav li.has-menu > a:hover { background: none; padding: 10px 2px 10px 16px; }
.nav li.has-menu .chev { margin: 0 8px 0 0; width: 24px; height: 24px; }
.nav li.has-menu .chev:hover { background: none; }
:root {
--serif: 'Cormorant Garamond', 'Iowan Old Style', 'Palatino Linotype', Georgia, serif;
--sans: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
--w-display: 560;   
--w-title: 600;     
--w-body: 420;
--w-ui: 600;        
--w-strong: 700;
--t-hero: clamp(3.4rem, min(6.6vw, 10.6svh), 8.3rem);
--t-display: clamp(3rem, 1rem + 5.4vw, 6.4rem);
--t-h2xl: clamp(2.8rem, 0.9rem + 5vw, 6rem);
--t-h2: clamp(2.4rem, 1rem + 3.4vw, 4.6rem);
--t-h3: clamp(1.7rem, 1.2rem + 1.4vw, 2.6rem);
--t-lede: clamp(1.1rem, 1rem + 0.32vw, 1.26rem);
--t-body: 1.0625rem;
--t-small: 0.9rem;
--t-label: 0.74rem;
--lh-display: 0.98;
--lh-title: 1.08;
--lh-body: 1.65;
--ls-display: -0.018em;
--ls-title: -0.01em;
--ls-label: 0.15em;
}
body { font-family: var(--sans); font-size: var(--t-body); font-weight: var(--w-body); line-height: var(--lh-body); font-variant-numeric: lining-nums; font-feature-settings: 'lnum' 1; }
.display, .h2, .h3, .quote, .signoff-line, .hub-rows h2, .bento h2, .why-list h3, .pts h3, .twin-c h3, .tim-fig strong, .ledger-list dt, .form-ok h3, .callout-t, .menu-txt, .related-list strong, .glance dd, .about-fig strong, .stat-q p { font-family: var(--serif); font-variation-settings: normal; font-optical-sizing: auto; font-feature-settings: 'lnum' 1; text-wrap: balance; }
.display, .h2, .h3, .quote, .signoff-line { font-weight: var(--w-display); letter-spacing: var(--ls-display); }
.display { font-size: var(--t-display); line-height: var(--lh-display); }
.display-md { font-size: clamp(2.8rem, 1rem + 4.8vw, 5.6rem); }
.h2 { font-size: var(--t-h2); line-height: 1.02; letter-spacing: -0.012em; }
.h2-xl { font-size: var(--t-h2xl); line-height: 0.98; letter-spacing: -0.016em; }
.h3 { font-size: var(--t-h3); line-height: var(--lh-title); letter-spacing: var(--ls-title); font-weight: var(--w-title); }
.signoff-line { font-size: clamp(3.8rem, 0.4rem + 12vw, 12.5rem); line-height: 0.88; letter-spacing: -0.03em; font-weight: 560; }
.quote { font-size: clamp(1.7rem, 1.1rem + 1.7vw, 2.8rem); line-height: 1.2; letter-spacing: -0.005em; font-weight: 500; }
.display em, .h2 em, .h3 em, .quote em, .ph-title em { font-style: normal; font-weight: inherit; letter-spacing: inherit; color: var(--blue); }
.explorer em, .cta-ink em, .ftr em { color: var(--sky); }
.tim em { color: #ffbf98; }
.why-n, .pts-n { font-style: normal; font-weight: 500; letter-spacing: -0.01em; }
.claim p { font-style: normal; font-weight: 500; letter-spacing: 0; }
.sc-n i, .stat-n i, .fig-num i { font-style: normal; }
.why-list h3 { font-size: clamp(2rem, 1.1rem + 2.6vw, 3.6rem); font-weight: 560; line-height: 1; letter-spacing: -0.012em; }
.pts h3, .twin-c h3, .related-list strong, .about-fig strong { font-weight: var(--w-title); letter-spacing: -0.005em; }
.hub-rows h2 { font-size: clamp(1.9rem, 1.2rem + 1.7vw, 3rem); font-weight: 580; letter-spacing: -0.008em; line-height: 1.05; }
.bento h2 { font-size: clamp(1.8rem, 1.2rem + 1.3vw, 2.7rem); font-weight: 580; letter-spacing: -0.006em; line-height: 1.06; }
.stat-q p { font-size: clamp(2rem, 1.1rem + 2.7vw, 3.8rem); font-weight: 520; line-height: 1.08; letter-spacing: -0.008em; }
.ledger-list dt { font-size: clamp(2rem, 1.3rem + 1.5vw, 2.9rem); font-weight: 580; letter-spacing: -0.008em; }
.tim-fig strong { font-size: 2.7rem; font-weight: 580; letter-spacing: -0.01em; }
.callout-t { font-size: clamp(2rem, 1.2rem + 2.4vw, 3.6rem); font-weight: 540; line-height: 1.06; letter-spacing: -0.01em; }
.glance dd { font-size: clamp(1.45rem, 1.15rem + 0.7vw, 1.8rem); font-weight: 560; line-height: 1.2; letter-spacing: -0.003em; }
.menu-txt { font-size: 1.45rem; font-weight: 580; line-height: 1.12; letter-spacing: -0.005em; }
.form-ok h3 { font-size: 2.6rem; font-weight: 580; }
.cta-contact li:first-child strong { font-family: var(--serif); font-weight: 580; font-size: clamp(2.1rem, 1.2rem + 2.2vw, 3.2rem); letter-spacing: -0.008em; }
.stat-n, .sc-n, .fig-num { font-family: var(--serif); font-weight: 500; letter-spacing: -0.035em; font-feature-settings: 'lnum' 1; }
.stat-n { font-size: clamp(5.4rem, 16vw, 16.5rem); line-height: 0.82; }
.why-n { font-size: clamp(2.2rem, 3vw, 3.4rem); }
.nav li > a { font-size: 0.93rem; font-weight: var(--w-ui); letter-spacing: 0; }
.tel, .callme strong { font-weight: 650; }
.btn { font-size: 0.98rem; font-weight: 650; letter-spacing: 0; }
.eyebrow { font-size: var(--t-label); font-weight: 650; letter-spacing: var(--ls-label); }
.lede { font-size: var(--t-lede); line-height: 1.6; }
.lede-sm { font-size: 1.1rem; line-height: 1.6; }
.prose p { font-size: 1.05rem; line-height: 1.7; }
.prose .lead-p { font-size: clamp(1.18rem, 1.05rem + 0.5vw, 1.4rem); line-height: 1.55; font-weight: 450; }
.hero-note, .form-hint, .ftr-legal, .fine { line-height: 1.55; }
.proof strong { font-weight: 650; }
.ftr h2, .insurers-lab { font-weight: 650; }
.js .ex-row { opacity: 0.74; }
.js .ex-row.is-active, .js .ex-row:hover, .js .ex-row:focus-visible { opacity: 1; }
.ex-name { font-size: clamp(1.6rem, 1.1rem + 1.45vw, 2.5rem); font-weight: 560; letter-spacing: -0.005em; line-height: 1.08; text-wrap: balance; max-width: 22ch; }
.ex-n { color: rgba(255, 255, 255, 0.55); font-weight: 650; }
.js .ex-row.is-active { background: none; padding-left: 0; border-bottom-color: var(--orange); }
.js .ex-row.is-active::before, .ex-row::before { display: none; }
.ex-row.is-active .ex-n { color: var(--orange); }
.ex-row.is-active .ex-name { font-weight: 620; }
.ex-row:hover .ex-go, .ex-row.is-active .ex-go { background: none; color: #fff; border-color: rgba(255, 255, 255, 0.55); transform: none; }
.ex-row.is-active .ex-go { background: var(--orange); color: var(--ink); border-color: var(--orange); transform: rotate(-45deg); }
.ex-row:hover .ex-name { color: #fff; }
.ex-desc { font-size: 1.02rem; line-height: 1.6; color: rgba(255, 255, 255, 0.82); }
.ex-preview h3 { font-size: clamp(2rem, 1.3rem + 1.7vw, 3.1rem); font-weight: 580; line-height: 1.02; letter-spacing: -0.01em; text-wrap: balance; max-width: 15ch; }
.ex-preview p { font-size: 1.05rem; line-height: 1.6; max-width: 36ch; }
.ex-fact strong { font-weight: 650; font-size: 1.08rem; }
.ex-tag, .ex-pos { font-weight: 650; }
@media (max-width: 760px) {
:root { --t-body: 1.03rem; }
.display, .display-md, .ph-title, .ph-photo .ph-title { font-size: clamp(3rem, 13.2vw, 4.2rem); }
.h2-xl { font-size: clamp(2.7rem, 11.8vw, 3.6rem); }
.h2 { font-size: clamp(2.4rem, 10.2vw, 3.1rem); }
.signoff-line { font-size: clamp(3.8rem, 19vw, 5.8rem); }
.why-list h3 { font-size: clamp(2rem, 8.8vw, 2.6rem); }
.stat-n { font-size: clamp(5.4rem, 29vw, 9.6rem); }
.stat-q p { font-size: clamp(1.9rem, 8.2vw, 2.4rem); }
.ex-name { font-size: clamp(1.55rem, 7vw, 2rem); max-width: none; }
}
:root {
--trust-h: 103px;
--mh-gap: clamp(36px, 5.2vw, 96px);
--mh-title: clamp(2.7rem, 1rem + 2.9vw, 4.6rem);
--mh-radius: 6px;
}
.mh { position: relative; padding-block: clamp(28px, 3.4vw, 56px) clamp(56px, 6vw, 96px); }
.mh-grid { display: grid; grid-template-columns: minmax(0, 44fr) minmax(0, 56fr); column-gap: var(--mh-gap); align-items: center; }
.mh-copy { min-width: 0; }
.mh-copy .crumbs { margin-bottom: clamp(20px, 2.6vw, 32px); }
.mh-copy .eyebrow { margin-bottom: clamp(14px, 1.6vw, 20px); }
.mh-title { font-family: var(--serif); font-weight: 580; font-size: var(--mh-title); line-height: 0.96; letter-spacing: -0.02em; font-optical-sizing: auto; text-wrap: balance; margin: 0; }
.mh-title em { font-style: normal; color: var(--blue); font-weight: inherit; letter-spacing: inherit; }
.mh-lede { font-size: var(--t-lede); line-height: 1.6; color: #4a5266; max-width: 46ch; margin: clamp(18px, 2.2vw, 28px) 0 0; text-wrap: pretty; }
.mh-lede + .mh-lede { margin-top: 0.9rem; font-size: 1rem; line-height: 1.65; }
.fn { color: #c23d00; font-weight: 700; padding-left: 2px; }
.mh-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: 14px 16px; margin-top: clamp(24px, 3vw, 36px); }
.mh .btn-primary { height: 60px; padding: 0 9px 0 28px; font-size: 1rem; box-shadow: none; }
.mh .btn-primary .ico { width: 42px; height: 42px; padding: 12px; }
.mh .btn-primary:hover { box-shadow: 0 10px 22px -12px rgba(10, 22, 48, 0.55); }
.mh-call { display: inline-flex; align-items: center; gap: 12px; height: 60px; box-sizing: border-box; padding: 0 26px 0 10px; border-radius: 999px; border: 1.5px solid var(--line-strong); transition: border-color 0.3s, background 0.3s; }
.mh-call-ic { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; color: var(--blue); transition: background 0.3s, color 0.3s; }
.mh-call-ic .ico { width: 22px; height: 22px; }
.mh-call > span:last-child { display: grid; line-height: 1.15; }
.mh-call small { color: var(--muted); font-size: 0.78rem; font-weight: 520; }
.mh-call strong { font-size: 1.08rem; font-weight: 650; letter-spacing: -0.005em; }
.mh-call:hover { border-color: var(--ink); background: #fff; }
.mh-call:hover .mh-call-ic { background: var(--blue); color: #fff; }
.mh-note { margin-top: 16px; font-size: 0.84rem; line-height: 1.55; color: var(--muted); max-width: 50ch; }
.mh-line { margin-top: 22px; padding-left: 14px; border-left: 3px solid var(--orange); font-weight: 650; font-size: 1rem; color: var(--ink); }
.mh-media { margin: 0; min-width: 0; }
.mh-img { display: block; width: 100%; aspect-ratio: 5 / 4.1; max-height: 540px; object-fit: cover; border-radius: var(--mh-radius); background: var(--paper-2); }
.mh--home { --mh-title: clamp(2.9rem, min(1rem + 3.6vw, 9.6svh), 5.8rem); --mh-gap: clamp(40px, 6vw, 112px); padding-block: clamp(24px, 3.4svh, 44px); min-height: calc(100svh - var(--hdr) - var(--trust-h)); display: flex; align-items: center; }
.mh--home .mh-grid { width: 100%; }
.mh--home .mh-title em { font-style: italic; font-weight: 500; letter-spacing: -0.01em; }
.mh--home .mh-lede { font-size: clamp(1.08rem, 1rem + 0.3vw, 1.25rem); }
.mh--home .mh-img { aspect-ratio: auto; max-height: none; height: clamp(360px, calc(100svh - var(--hdr) - var(--trust-h) - 90px), 660px); }
.mh--hub .mh-title em { font-style: normal; }
.mh--dark { margin: clamp(4px, 1vw, 12px) clamp(8px, 1.4vw, 20px) 0; border-radius: clamp(24px, 3.4vw, 48px); background: var(--ink); color: #fff; padding-block: clamp(32px, 4vw, 60px) clamp(48px, 5vw, 80px); }
.mh--dark .crumbs ol, .mh--dark .crumbs a { color: rgba(255, 255, 255, 0.72); }
.mh--dark .crumbs a:hover, .mh--dark .crumbs [aria-current] { color: #fff; }
.mh--dark .eyebrow { color: var(--sky); }
.mh--dark .mh-lede { color: rgba(255, 255, 255, 0.84); }
.mh--dark .mh-line { color: #fff; }
.mh--dark .mh-call { border-color: rgba(255, 255, 255, 0.5); }
.mh--dark .mh-call small { color: rgba(255, 255, 255, 0.72); }
.mh--dark .mh-call-ic { color: var(--sky); }
.mh--dark .mh-call:hover { background: #fff; border-color: #fff; color: var(--ink); }
.mh--dark .btn-primary:hover { background: #fff; color: var(--ink); }
.mh--dark .glance { border-top-color: rgba(255, 255, 255, 0.55); }
.mh--dark .glance > div { border-bottom-color: rgba(255, 255, 255, 0.2); }
.mh--dark .glance dt { color: var(--sky); }
.glance { border-top: 1.5px solid var(--ink); }
.glance > div { padding: 20px 0 24px; border-bottom: 1px solid var(--line-strong); }
.glance dt { font: 650 0.74rem/1.2 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--blue); margin-bottom: 10px; }
.glance dd { font-family: var(--serif); font-weight: 560; font-size: clamp(1.45rem, 1.15rem + 0.7vw, 1.8rem); line-height: 1.2; letter-spacing: -0.003em; text-wrap: pretty; margin: 0; }
.glance-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: clamp(20px, 3vw, 48px); margin-top: clamp(40px, 5vw, 72px); }
.glance-strip > div { border-bottom: 0; padding-bottom: 0; }
.glance-strip:has(> div:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hdr, .hdr.scrolled { background: var(--paper); border-bottom: 1px solid var(--line-strong); backdrop-filter: none; -webkit-backdrop-filter: none; }
.hdr { box-shadow: 0 10px 30px -22px rgba(10, 22, 48, 0.35); }
.hdr-cta .btn { height: 52px; padding: 0 8px 0 24px; font-size: 0.96rem; gap: 14px; }
.hdr-cta .btn .ico { width: 36px; height: 36px; padding: 10px; }
.hdr-cta .btn-primary { box-shadow: none; }
.nav li.has-menu { border-radius: 999px; }
.trust { background: #fbf9f5; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.proof { display: grid; grid-template-columns: repeat(4, 1fr); }
.proof li { display: flex; gap: 16px; align-items: center; min-height: 100px; padding: 0 20px 0 0; }
.proof li + li { padding-left: 28px; border-left: 1px solid var(--line); }
.proof .ico { width: 32px; height: 32px; padding: 0; color: var(--blue); stroke-width: 1.5; background: none; border-radius: 0; }
.proof strong { display: block; font-size: 1.02rem; font-weight: 650; line-height: 1.25; }
.proof strong span { color: #c23d00; }
.proof small { display: block; margin-top: 2px; color: var(--muted); font-size: 0.9rem; line-height: 1.4; }
@media (max-width: 1180px) {
.mh-grid { grid-template-columns: minmax(0, 46fr) minmax(0, 54fr); column-gap: clamp(28px, 4vw, 56px); }
.mh-actions { flex-direction: column; align-items: flex-start; }
.mh-call { align-self: stretch; }
}
@media (max-width: 900px) {
.mh-grid { grid-template-columns: 1fr; row-gap: 28px; }
.mh-media { order: -1; }
.mh-img { aspect-ratio: 4 / 3; max-height: 440px; }
.mh--home { display: block; min-height: 0; padding-block: 16px 36px; }
.mh--home .mh-img { height: auto; aspect-ratio: 4 / 3; max-height: 440px; }
.mh-actions { flex-direction: row; align-items: stretch; }
.mh-call { align-self: auto; }
.mh-title, .mh--home .mh-title { font-size: clamp(2.9rem, 11.6vw, 4.8rem); }
.proof { grid-template-columns: 1fr 1fr; }
.proof li:nth-child(odd) { padding-left: 0; border-left: 0; }
.proof li:nth-child(n + 3) { border-top: 1px solid var(--line); }
.glance-strip { grid-template-columns: 1fr; margin-top: 32px; }
.glance-strip > div { border-bottom: 1px solid var(--line-strong); padding-bottom: 20px; }
.mh--dark .glance-strip > div { border-bottom-color: rgba(255, 255, 255, 0.2); }
}
@media (max-width: 640px) {
.mh-actions { flex-direction: column; }
.mh .btn-primary { width: 100%; justify-content: space-between; height: 64px; }
.mh-call { height: 64px; }
.proof li, .proof li + li { flex-direction: column; align-items: flex-start; gap: 8px; min-height: 0; padding: 16px 12px 18px 0; border-left: 0; }
.proof li:nth-child(even) { padding-left: 16px; border-left: 1px solid var(--line); }
.proof .ico { width: 28px; height: 28px; }
}
.mh--home { --mh-title: clamp(2.9rem, min(1rem + 4.3vw, 9.9svh), 6.4rem); }
.ex-preview h3 { max-width: 20ch; }
@media (max-width: 1020px) {
.about-grid, .tim-grid, .why-head, .ledger-head, .understand-grid, .advocate-grid, .about-trust-grid, .contact-grid, .cta-grid, .dis-grid, .ex-body { grid-template-columns: 1fr; }
}
.ledger-list dt span { color: #b83b00; }
.bento li:nth-child(1) .hub-n, .bento li:nth-child(6) .hub-n { color: #fff; }
.cta-grid > *, .contact-grid > *, .dis-grid > * { min-width: 0; }
@media (max-width: 760px) { .cta-contact li:first-child strong { font-size: clamp(1.7rem, 8.4vw, 2.2rem); white-space: normal; } }
.cta-contact { grid-template-columns: minmax(0, 1fr); } .cta-contact a { min-width: 0; }
.cta-contact a { white-space: normal; } .cta-contact li:first-child strong { white-space: nowrap; } @media (max-width: 760px) { .cta-contact li:first-child strong { white-space: normal; } }
:root { --bleed: max(var(--gutter), calc((100vw - var(--max)) / 2)); }
.mh--home { --mh-title: clamp(2.9rem, min(1rem + 3.6vw, 9.6svh), 5.8rem); }
.mh--home .mh-title { white-space: nowrap; }
@media (min-width: 901px) {
.mh-media { margin-right: calc(-1 * var(--bleed)); }
.mh-img { border-radius: var(--mh-radius) 0 0 var(--mh-radius); }
.mh--dark { overflow: clip; }
.mh--dark .mh-media { margin-right: calc(-1 * var(--bleed) + clamp(8px, 1.4vw, 20px)); }
.mh--dark .mh-img { border-radius: var(--mh-radius) 0 0 var(--mh-radius); }
}
@media (max-width: 900px) {
.mh-media { margin-inline: calc(-1 * var(--gutter)); }
.mh-img { border-radius: 0; }
.mh--dark .mh-media { margin-inline: calc(-1 * var(--gutter)); }
.mh--home .mh-title { white-space: normal; }
}
.nav li.has-menu { border-radius: 999px; transition: background 0.2s; }
.nav li.has-menu:hover, .nav li.has-menu:focus-within { background: rgba(10, 22, 48, 0.07); }
.nav li.has-menu > a, .nav li.has-menu > a:hover, .nav li.has-menu:hover > a { background: none; padding: 10px 2px 10px 16px; }
.nav li.has-menu .chev { margin: 0 8px 0 0; width: 24px; height: 24px; }
.nav li.has-menu .chev:hover { background: none; }
@media (min-width: 901px) {
.mh { overflow: hidden; isolation: isolate; min-height: clamp(520px, 64svh, 680px); display: flex; align-items: center; }
.mh > .wrap, .mh .mh-grid { width: 100%; }
.mh-grid { grid-template-columns: minmax(0, 44fr) minmax(0, 56fr); }
.mh-media { position: absolute; z-index: -1; inset: 0; margin: 0; }
.mh-img, .mh--home .mh-img { width: 100%; height: 100%; max-height: none; aspect-ratio: auto; border-radius: 0; object-fit: cover; }
.mh-media::after { content: ''; position: absolute; inset: 0; pointer-events: none;
background: linear-gradient(90deg, var(--paper) 0%, rgba(246, 243, 238, 0.97) 24%, rgba(246, 243, 238, 0.86) 38%, rgba(246, 243, 238, 0.4) 52%, rgba(246, 243, 238, 0) 66%); }
.mh--home { min-height: calc(100svh - var(--hdr) - var(--trust-h)); }
.mh--dark .mh-media { margin: 0; }
.mh--dark .mh-img { border-radius: 0; }
.mh--dark .mh-media::after { background: linear-gradient(90deg, var(--ink) 0%, rgba(10, 22, 48, 0.96) 26%, rgba(10, 22, 48, 0.8) 40%, rgba(10, 22, 48, 0.3) 56%, rgba(10, 22, 48, 0) 70%); }
.mh .glance-strip { position: relative; }
}
.mh-after { position: relative; }
.mh { flex-direction: column; justify-content: center; }
.mh-after { padding-top: clamp(32px, 4vw, 56px); }
.mh-after .glance-strip { margin-top: 0; }
@media (min-width: 901px) {
.mh-media { inset: 0 0 0 auto; width: 68%; }
.mh--home .mh-media { width: 64%; }
.mh-media::after { background: linear-gradient(90deg, var(--paper) 0%, rgba(246, 243, 238, 0.82) 12%, rgba(246, 243, 238, 0.4) 28%, rgba(246, 243, 238, 0.1) 40%, rgba(246, 243, 238, 0) 50%); }
.mh--dark .mh-media::after { background: linear-gradient(90deg, var(--ink) 0%, rgba(10, 22, 48, 0.82) 12%, rgba(10, 22, 48, 0.4) 28%, rgba(10, 22, 48, 0.1) 40%, rgba(10, 22, 48, 0) 50%); }
}
.mh-more { max-width: 66ch; }
.mh-more p { color: var(--muted); font-size: 1.05rem; line-height: 1.7; text-wrap: pretty; }
.mh-more p + p { margin-top: 1rem; }
.mh-more + .glance-strip { margin-top: clamp(28px, 3.4vw, 44px); }
.mh-media { border-bottom: 1px solid rgba(10, 22, 48, 0.16); }
.mh--dark .mh-media { border-bottom: 0; }
@media (min-width: 901px) {
.mh { min-height: calc(100svh - var(--hdr)); padding-block: clamp(16px, 3svh, 40px); }
.mh--home { min-height: calc(100svh - var(--hdr) - var(--trust-h)); }
.mh-grid { grid-template-columns: minmax(0, 50fr) minmax(0, 50fr); }
.mh--home .mh-grid { grid-template-columns: minmax(0, 44fr) minmax(0, 56fr); }
.mh { --mh-title: clamp(2.5rem, min(1rem + 2.9vw, 7.6svh), 4.6rem); }
.mh--home { --mh-title: clamp(2.9rem, min(1rem + 3.6vw, 9.6svh), 5.8rem); }
.mh-copy .crumbs { margin-bottom: clamp(10px, 2svh, 24px); }
.mh-copy .eyebrow { margin-bottom: clamp(8px, 1.6svh, 18px); }
.mh-lede { font-size: clamp(0.95rem, 2.15svh, 1.2rem); line-height: 1.55; margin-top: clamp(12px, 2.2svh, 24px); max-width: 52ch; }
.mh--home .mh-lede { font-size: clamp(1rem, 2.3svh, 1.25rem); max-width: 46ch; }
.mh-actions { margin-top: clamp(16px, 3svh, 32px); }
.mh-line { margin-top: clamp(12px, 2.2svh, 22px); }
.mh-media::after { background: linear-gradient(90deg, var(--paper) 0%, rgba(246, 243, 238, 0.92) 14%, rgba(246, 243, 238, 0.6) 30%, rgba(246, 243, 238, 0.18) 42%, rgba(246, 243, 238, 0) 54%); }
.mh--dark .mh-media::after { background: linear-gradient(90deg, var(--ink) 0%, rgba(10, 22, 48, 0.92) 14%, rgba(10, 22, 48, 0.6) 30%, rgba(10, 22, 48, 0.18) 42%, rgba(10, 22, 48, 0) 54%); }
}
@media (max-width: 900px) {
.mh-copy { display: flex; flex-direction: column; }
.mh-copy > .crumbs { order: 0; } .mh-copy > .eyebrow { order: 1; } .mh-title { order: 2; }
.mh-actions { order: 3; margin-top: 22px; } .mh-lede { order: 4; margin-top: 22px; } .mh-note, .mh-line { order: 5; }
.mh-img, .mh--home .mh-img { aspect-ratio: 16 / 10; max-height: 300px; }
.mh-copy .crumbs { margin-bottom: 14px; }
.mh-title, .mh--home .mh-title { font-size: clamp(2.6rem, 11vw, 4rem); }
}
@media (min-width: 901px) { .mh--dark { margin-top: 8px; min-height: calc(100svh - var(--hdr) - 8px); } }
.mh-media { border-bottom: 0; }
.mh { border-bottom: 1px solid rgba(10, 22, 48, 0.16); }
.mh--dark { border-bottom: 0; }
@media (min-width: 901px) {
.mh-grid { grid-template-columns: minmax(0, 54fr) minmax(0, 46fr); }
.mh--home .mh-grid { grid-template-columns: minmax(0, 44fr) minmax(0, 56fr); }
.mh { --mh-title: clamp(2.2rem, min(1rem + 2.6vw, 6.4svh), 4.2rem); padding-block: clamp(10px, 2svh, 32px); }
.mh--home { --mh-title: clamp(2.9rem, min(1rem + 3.6vw, 9.6svh), 5.8rem); }
.mh-copy .crumbs { margin-bottom: clamp(6px, 1.4svh, 18px); }
.mh-copy .eyebrow { margin-bottom: clamp(6px, 1.2svh, 14px); }
.mh-lede { font-size: clamp(0.84rem, 1.95svh, 1.12rem); line-height: 1.5; margin-top: clamp(8px, 1.6svh, 18px); max-width: 60ch; }
.mh-lede + .mh-lede { font-size: clamp(0.8rem, 1.75svh, 1rem); line-height: 1.5; margin-top: clamp(6px, 1.1svh, 12px); }
.mh--home .mh-lede { font-size: clamp(1rem, 2.3svh, 1.25rem); max-width: 46ch; line-height: 1.6; }
.mh-actions { margin-top: clamp(12px, 2.4svh, 28px); }
.mh .btn-primary, .mh-call { height: clamp(48px, 7svh, 60px); }
.mh-line { margin-top: clamp(8px, 1.6svh, 18px); font-size: clamp(0.85rem, 1.9svh, 1rem); }
.mh--home .mh-actions { margin-top: clamp(20px, 3svh, 32px); }
.mh--home .btn-primary, .mh--home .mh-call { height: 60px; }
}
@media (min-width: 901px) {
.mh-copy .crumbs { margin-bottom: clamp(10px, 2.6svh, 28px); }
.mh-copy .eyebrow { margin-bottom: clamp(8px, 2svh, 22px); }
.mh-title { line-height: 1.02; }
.mh-lede { line-height: 1.62; margin-top: clamp(12px, 2.6svh, 28px); }
.mh-lede + .mh-lede { line-height: 1.6; margin-top: clamp(8px, 1.7svh, 18px); }
.mh-actions { margin-top: clamp(16px, 3.6svh, 40px); }
.mh-line { margin-top: clamp(12px, 2.4svh, 26px); }
.mh--home .mh-lede { line-height: 1.65; }
}
.ex-preview { min-height: 0; padding: 0; background: var(--paper); color: var(--ink); border-radius: 6px; box-shadow: none; display: block; overflow: hidden; }
.ex-preview[data-group='business'] { background: var(--paper); color: var(--ink); }
.ex-photo { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--paper-2); }
.ex-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: opacity 0.3s; }
.ex-prev-body { display: block; padding: clamp(22px, 2.4vw, 34px); transition: opacity 0.3s, transform 0.5s var(--ease); }
.ex-prev-meta { display: flex; justify-content: space-between; font: 650 0.74rem/1 var(--sans); letter-spacing: 0.15em; text-transform: uppercase; color: var(--blue); margin-bottom: 16px; }
.ex-preview[data-group='business'] .ex-prev-meta { color: #b83b00; }
.ex-prev-meta span:last-child { color: var(--muted); }
.ex-preview h3 { font-size: clamp(1.9rem, 1.3rem + 1.4vw, 2.6rem); max-width: none; color: var(--ink); }
.ex-preview p { color: var(--muted); font-size: 1.02rem; margin-top: 12px; max-width: 40ch; }
.ex-prev-link { display: inline-flex; align-items: center; gap: 10px; margin-top: 20px; font-weight: 650; color: var(--ink); border-bottom: 1.5px solid var(--orange); padding-bottom: 3px; }
.ex-prev-link b { font-weight: 650; }
.ex-prev-link .ico { width: 18px; height: 18px; }
.ex-preview.swap .ex-prev-body { opacity: 0; transform: translateY(8px); }
.ex-preview.swap .ex-photo img { opacity: 0.2; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 16px; margin-top: 2rem; }
.hero-actions .btn { height: 58px; box-sizing: border-box; }
@media (max-width: 640px) {
.hero-actions { flex-direction: column; align-items: stretch; }
.hero-actions .btn { width: 100%; justify-content: space-between; }
.hero-actions .btn-ghost, .hero-actions .btn-line { justify-content: center; }
}
.cta-grid { grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1.05fr); column-gap: clamp(32px, 5vw, 88px); align-items: stretch; }
.cta-grid::before { content: ''; grid-column: 2; grid-row: 1; background: rgba(255, 255, 255, 0.2); }
.cta-copy { grid-column: 1; grid-row: 1; align-self: center; }
.cta-form { grid-column: 3; grid-row: 1; align-self: center; background: transparent; color: #fff; padding: 0; box-shadow: none; border-radius: 0; }
.cta-copy .h2-xl { font-size: clamp(2.6rem, 1rem + 4.2vw, 5rem); }
.cta-form .form-grid { gap: 30px 28px; }
.cta-form .field label { color: #fff; font-size: 0.95rem; }
.cta-form .req { color: var(--orange); }
.cta-form .opt { color: rgba(255, 255, 255, 0.7); }
.cta-form .field input, .cta-form .field textarea { background: transparent; border: 0; border-bottom: 1.5px solid rgba(76, 196, 255, 0.55); border-radius: 0; box-shadow: none; height: 52px; padding: 0 2px; color: #fff; font-size: 1.05rem; }
.cta-form .field textarea { height: auto; min-height: 96px; padding: 12px 2px; }
.cta-form .field input::placeholder, .cta-form .field textarea::placeholder { color: rgba(255, 255, 255, 0.6); }
.cta-form .field input:hover, .cta-form .field textarea:hover { box-shadow: none; border-bottom-color: #fff; }
.cta-form .field input:focus, .cta-form .field textarea:focus { box-shadow: none; border-bottom-color: var(--orange); background: rgba(255, 255, 255, 0.04); }
.cta-form .field [aria-invalid='true'] { background: transparent; border-bottom-color: #ff8f7e; box-shadow: none; }
.cta-form .field input:-webkit-autofill { -webkit-text-fill-color: #fff; -webkit-box-shadow: 0 0 0 40px #0a1630 inset; }
.cta-form .err, .cta-form .form-status.is-err { color: #ffb4a8; }
.cta-form .form-hint { color: rgba(255, 255, 255, 0.7); }
.cta-form .form-foot { margin-top: 30px; gap: 24px; }
.cta-form .form-note { color: rgba(255, 255, 255, 0.75); max-width: 34ch; }
.cta-form .form-note .ico { color: var(--sky); }
.cta-form .form-status a { color: #fff; }
.cta-form .ok-badge { background: var(--orange); color: var(--ink); }
.cta-form .form-ok h3 { color: #fff; }
.cta-form .form-ok p { color: rgba(255, 255, 255, 0.85); }
.cta-form .form-ok a { color: var(--sky); }
.cta-contact { margin-top: clamp(24px, 3vw, 36px); }
.cta-contact a { padding-block: 14px; }
@media (max-width: 1020px) {
.cta-grid { grid-template-columns: 1fr; row-gap: 44px; }
.cta-grid::before { display: none; }
.cta-copy, .cta-form { grid-column: 1; grid-row: auto; }
.cta-form { padding-top: 36px; border-top: 1px solid rgba(255, 255, 255, 0.2); }
}
@media (max-width: 760px) { .cta-form .form-grid { gap: 24px; } .cta-copy .h2-xl { font-size: clamp(2.5rem, 11vw, 3.4rem); } }
.tim { padding-block: clamp(56px, 6.5vw, 96px); }
.tim-grid { grid-template-columns: minmax(0, 60fr) minmax(0, 40fr); gap: clamp(28px, 4vw, 64px); align-items: center; max-width: 1120px; margin-inline: auto; }
.tim .eyebrow { margin-bottom: 16px; }
.tim .h2-xl { font-size: clamp(2.7rem, 1rem + 4.2vw, 5rem); line-height: 1; }
.tim-lede { margin-top: 20px; max-width: 50ch; }
.tim .hero-actions { margin-top: 28px; }
.tim-fig { justify-self: center; width: min(100%, 300px); }
.tim-photo { width: 210px; padding: 10px; border-radius: 34px 34px 34px 8px; }
.tim-photo::after { inset: 18px -18px -18px 18px; }
.tim-fig figcaption { margin-top: 30px; gap: 2px; }
.tim-fig strong { font-size: 2.3rem; }
.tim-fig dl { margin-top: 14px; }
.tim-fig dl div { padding-block: 9px; }
@media (max-width: 1020px) {
.tim-grid { grid-template-columns: 1fr; gap: 36px; }
.tim-fig { justify-self: start; width: 100%; max-width: 340px; }
}
@media (max-width: 760px) { .tim { padding-block: 52px; } .tim-photo { width: 190px; } }
@media (max-width: 760px) { .tim .h2-xl br { display: inline; } }
.tim-grid { max-width: none; margin-inline: 0; }
.tim-grid.wrap { max-width: calc(var(--max) + var(--gutter) * 2); margin-inline: auto; }
.tim-fig { justify-self: end; }
@media (max-width: 1020px) { .tim-fig { justify-self: start; } }
.tim > .wrap, .explorer > .wrap, .cta > .wrap { padding-inline: max(0px, calc(var(--gutter) - clamp(8px, 1.4vw, 20px))); }
@media (min-width: 1490px) { .tim > .wrap, .explorer > .wrap, .cta > .wrap { padding-inline: var(--gutter); } }
.tim { padding-block: clamp(48px, 5.6vw, 80px); }
.tim > .wrap.tim-grid { max-width: 1240px; padding-inline: clamp(20px, 4vw, 48px); margin-inline: auto; }
.tim-grid { grid-template-columns: minmax(0, 1fr) 1px minmax(0, 0.58fr); column-gap: clamp(32px, 4.4vw, 84px); align-items: stretch; }
.tim-grid::before { content: ''; grid-column: 2; grid-row: 1; background: rgba(255, 255, 255, 0.28); }
.tim-copy { grid-column: 1; grid-row: 1; align-self: center; }
.tim-fig { grid-column: 3; grid-row: 1; align-self: center; justify-self: start; width: min(100%, 350px); }
.tim-photo { width: 200px; }
.tim .h2-xl { font-size: clamp(2.7rem, 1rem + 3.6vw, 4.5rem); }
@media (max-width: 1020px) {
.tim-grid { grid-template-columns: 1fr; row-gap: 32px; }
.tim-grid::before { display: none; }
.tim-copy, .tim-fig { grid-column: 1; grid-row: auto; }
.tim-fig { padding-top: 32px; border-top: 1px solid rgba(255, 255, 255, 0.28); width: 100%; max-width: none; }
}
@media (max-width: 760px) { .tim { margin-inline: 8px; } .tim > .wrap.tim-grid { padding-inline: 20px; } }
.tim > .wrap.tim-grid { max-width: 1400px; padding-inline: clamp(20px, 3vw, 40px); }
.tim-lede { max-width: none; }
@media (min-width: 1021px) { .tim-grid { grid-template-columns: minmax(0, 1.5fr) 1px minmax(0, 0.6fr); } }
.tim > .wrap.tim-grid { max-width: 1280px; }
@media (max-width: 760px) {
.explorer { padding-block: 40px 44px; }
.ex-head { margin-bottom: 24px; gap: 20px; }
.ex-head .eyebrow { margin-bottom: 12px; }
.cta { padding-block: 44px 48px; }
.tim { padding-block: 44px; }
.sec, .why.sec { padding-block: 52px; }
.stats { padding-block: 52px 56px; }
.ledger { padding-block: 52px; }
.signoff { padding-top: 56px; padding-bottom: 36px; }
.ftr { padding-top: 44px; }
.why-head { gap: 20px; } .why-list { margin-top: 28px; }
.ledger-list { margin-top: 24px; }
.stat-b { margin-top: 28px; } .stat-q { margin-top: 36px; }
}
@media (max-width: 760px) { .h2-xl br, .tim .h2-xl br { display: inline; } }
.ex-preview { position: sticky; top: calc(var(--hdr) + 28px); background: var(--paper); }
.ex-preview.swap .ex-prev-body, .ex-preview.swap .ex-photo img { opacity: 1; transform: none; }
.ex-preview.fade .ex-prev-body { animation: cardIn 0.45s var(--ease) both; }
.ex-preview.fade .ex-photo img { animation: photoIn 0.5s var(--ease) both; }
@keyframes cardIn { from { opacity: 0.2; transform: translateY(8px); } }
@keyframes photoIn { from { opacity: 0.35; } }
.ex-photo { aspect-ratio: 3 / 2; }
.ex-prev-body { background: var(--paper); }
.ex-row[aria-current='true'] .ex-name { color: #fff; }
@media (max-width: 1020px) {
.ex-body { display: flex; flex-direction: column; gap: 28px; }
.ex-preview { display: block; order: -1; position: static; border-radius: 6px; }
.ex-lists { order: 0; }
.js .ex-desc, .js .ex-row.is-active .ex-desc { display: none; }
.ex-row, .js .ex-row.is-active { padding-block: 18px; grid-template-columns: 40px minmax(0, 1fr) 40px; }
.ex-go { width: 40px; height: 40px; }
.ex-row.is-active .ex-go { background: var(--orange); border-color: var(--orange); color: var(--ink); transform: rotate(-45deg); }
.ex-photo { aspect-ratio: 16 / 9; }
.ex-prev-body { padding: 22px 20px 24px; }
.ex-preview h3 { font-size: clamp(1.8rem, 7.4vw, 2.4rem); }
.ex-prev-link { min-height: 44px; align-items: center; }
}
@media (max-width: 900px) {
.mh, .mh--home { padding-top: 0; }
.mh--dark { margin-top: 0; border-radius: 0 0 28px 28px; }
.mh-grid { row-gap: 0; }
.mh-media { position: relative; margin-top: 0; }
.mh-img, .mh--home .mh-img { aspect-ratio: 4 / 3; max-height: 360px; width: 100%; }
.mh-media::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(246, 243, 238, 0) 38%, rgba(246, 243, 238, 0.55) 68%, var(--paper) 100%); }
.mh--dark .mh-media::after { background: linear-gradient(180deg, rgba(10, 22, 48, 0) 38%, rgba(10, 22, 48, 0.55) 68%, var(--ink) 100%); }
.mh-copy { margin-top: -44px; position: relative; z-index: 1; }
}
@media (max-width: 900px) { .mh--dark { margin-inline: 0; } .mh-copy { margin-top: -36px; } }
.ex-prev-link { flex-wrap: nowrap; }
@media (max-width: 1020px) {
.ex-prev-link .pre { display: none; }
.ex-prev-link { display: flex; justify-content: space-between; width: 100%; gap: 14px; }
.ex-prev-link b { flex: 1; }
}
@media (max-width: 1020px) { .ex-prev-link .about, .ex-prev-link b { display: none; } }
.tim-photo { width: 260px; }
.tim-fig { width: min(100%, 360px); }
@media (max-width: 1020px) {
.tim-fig { max-width: none; }
.tim-photo { width: min(100%, 420px); }
.tim-photo::after { inset: 20px -14px -20px 14px; }
}
@media (max-width: 760px) { .tim-photo { width: calc(100% - 14px); max-width: 380px; } }
@media (max-width: 1020px) {
.tim-fig { margin-inline: auto; display: flex; flex-direction: column; align-items: center; justify-self: center; }
.tim-photo { margin-inline: auto; transform: translateX(-9px); }
.tim-fig figcaption { width: 100%; text-align: center; justify-items: center; }
.tim-fig dl { width: 100%; text-align: left; }
}
@media (max-width: 1020px) { .tim-photo { transform: none; left: -9px; } }
.insurers-logos img { height: 38px; max-width: 150px; width: auto; object-fit: contain; }
.insurers-logos li:has(img[src*='nib']) img { height: 30px; }
.insurers-logos li:has(img[src*='accuro']) img { height: 52px; }
.insurers-logos li { display: flex; align-items: center; }
@media (max-width: 760px) { .insurers-logos { gap: 18px 28px; } .insurers-logos img { height: 32px; } .insurers-logos li:has(img[src*='nib']) img { height: 26px; } .insurers-logos li:has(img[src*='accuro']) img { height: 44px; } }
@media (min-width: 1021px) {
.insurers-logos { flex-wrap: nowrap; gap: 20px clamp(20px, 3vw, 48px); }
.insurers-logos img { height: 32px; max-width: 128px; }
.insurers-logos li:has(img[src*='nib']) img { height: 26px; }
.insurers-logos li:has(img[src*='accuro']) img { height: 44px; }
}
.insurers-logos li:has(img[src*='accuro']) img { opacity: 1; filter: grayscale(1) contrast(1.9) brightness(0.85); }
.insurers-logos li:has(img[src*='accuro']):hover img { filter: grayscale(1) contrast(1.9) brightness(0.7); }
.insurers-logos li:has(img[src*='accuro']) img, .insurers-logos li:has(img[src*='accuro']):hover img { filter: grayscale(1) contrast(1.7); opacity: 0.85; }
@media (min-width: 1021px) {
.about-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 400px); column-gap: clamp(32px, 4vw, 64px); max-width: 1180px; margin-inline: auto; }
.about-photo { width: min(360px, 100%); }
.about-fig { justify-self: end; }
}
.phero-about { padding-block: clamp(24px, 3vw, 48px) clamp(40px, 5vw, 72px); }
@media (min-width: 1021px) {
.about-grid { grid-template-columns: minmax(0, 1fr) 440px; column-gap: clamp(32px, 3.4vw, 56px); max-width: none; margin-inline: 0; }
.about-grid.wrap { max-width: calc(var(--max) + var(--gutter) * 2); margin-inline: auto; }
.about-photo { width: min(400px, 100%); }
.about-fig { justify-self: end; }
.about-grid .lede { max-width: 62ch; }
}
@media (max-width: 1020px) {
.insurers-in { align-items: center; text-align: center; }
.insurers-lab { text-align: center; }
.insurers-logos { justify-content: center; }
}
@media (min-width: 1021px) {
.about-grid.wrap { max-width: 1180px; grid-template-columns: minmax(0, 1fr) 380px; column-gap: 56px; padding-inline: 40px; }
.about-photo { width: min(340px, 100%); }
.about-fig { justify-self: center; }
.about-grid .lede { max-width: 54ch; }
}
@media (min-width: 1021px) {
.about-grid.wrap { max-width: 1340px; grid-template-columns: minmax(0, 1fr) 420px; column-gap: 72px; padding-inline: 48px; }
.about-photo { width: min(370px, 100%); }
.about-grid .lede { max-width: 58ch; }
}
.asked { background: var(--paper-2); }
.asked-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 100px); align-items: start; }
.asked-list { border-top: 1.5px solid var(--ink); }
.asked-list li { display: grid; grid-template-columns: clamp(56px, 7vw, 90px) 1fr; align-items: baseline; gap: 12px; padding-block: clamp(20px, 2.6vw, 32px); border-bottom: 1px solid var(--line-strong); }
.asked-n { font: 650 0.9rem var(--sans); letter-spacing: 0.1em; color: #b83b00; }
.asked-q { font-family: var(--serif); font-weight: 560; font-size: clamp(1.7rem, 1.1rem + 2vw, 2.9rem); line-height: 1.08; letter-spacing: -0.01em; text-wrap: balance; }
.why-pts .h2-xl { max-width: 18ch; }
.pts { margin-top: clamp(36px, 5vw, 64px); }
.pts li { min-height: 300px; border-radius: 6px; box-shadow: none; }
.pts li:nth-child(1) { background: #fff; box-shadow: inset 0 0 0 1px var(--line); }
.pts h3 { font-size: clamp(1.7rem, 1.2rem + 1.2vw, 2.4rem); line-height: 1.08; margin-bottom: 0.7rem; }
.pts p { font-size: 1.08rem; line-height: 1.6; }
.pts-n { font-size: 3rem; }
.callout { border-radius: 6px; }
.mission-in { max-width: 1000px; }
@media (max-width: 1020px) { .asked-grid { grid-template-columns: 1fr; gap: 28px; } .pts li { min-height: 0; } }
@media (max-width: 760px) { .asked-q { font-size: clamp(1.6rem, 7vw, 2.1rem); } .why-pts .h2-xl { max-width: none; } }
.pts li { justify-content: flex-start; }
.pts-n { margin-bottom: 0; padding-bottom: 28px; }
.pts li:nth-child(n) { transform: none; }
.why-pts + .callout .callout-t { max-width: 46ch; font-size: clamp(1.6rem, 1.1rem + 1.5vw, 2.5rem); line-height: 1.18; }
.why-pts + .callout .callout-in { gap: 28px 64px; }
.pts li:nth-child(n) { background: #fff; color: var(--ink); box-shadow: inset 0 0 0 1px var(--line); }
.pts li:nth-child(n) p { color: var(--muted); }
.pts li:nth-child(n) .pts-n { color: var(--blue); }
.insurers-logos li:has(img[src*='accuro']) img, .insurers-logos li:has(img[src*='accuro']):hover img { filter: grayscale(1) contrast(1.05); opacity: 0.66; }
.insurers-logos li:has(img[src*='accuro']):hover img { filter: none; opacity: 1; }
.insurers-logos img { background: transparent; }
.reviews { padding-block: clamp(64px, 8vw, 128px); }
.rv-head { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 80px); align-items: end; }
.rv-score { display: grid; grid-template-columns: auto 1fr; gap: 4px 20px; align-items: center; justify-items: start; padding-bottom: 6px; }
.rv-num { font-family: var(--serif); font-weight: 500; font-size: clamp(4.2rem, 3rem + 4vw, 6.5rem); line-height: 0.85; letter-spacing: -0.04em; color: var(--blue); }
.rv-lab { margin-top: 6px; font: 650 0.78rem/1 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); }
.rv-score .link-arrow { grid-column: 1 / -1; margin-top: 14px; }
.stars { display: inline-flex; gap: 3px; color: var(--orange); }
.star { width: 20px; height: 20px; fill: currentColor; }
.rv-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 24px); margin-top: clamp(36px, 5vw, 64px); }
.rv-card figure { margin: 0; height: 100%; display: flex; flex-direction: column; gap: 20px; padding: clamp(24px, 2.4vw, 34px); background: #fff; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--line); }
.rv-card blockquote { margin: 0; flex: 1; }
.rv-card blockquote p { font-size: 1.05rem; line-height: 1.65; color: var(--ink); text-wrap: pretty; }
.rv-card figcaption { display: grid; gap: 2px; padding-top: 18px; border-top: 1px solid var(--line); }
.rv-card figcaption strong { font-family: var(--serif); font-weight: 600; font-size: 1.35rem; letter-spacing: -0.005em; }
.rv-card figcaption span { font: 650 0.72rem/1.2 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); }
.js .rv-extra { display: none; }
.js .rv-grid.all .rv-extra { display: block; animation: cardIn 0.5s var(--ease) both; }
.rv-more { display: flex; justify-content: center; margin-top: 36px; }
.rv-more .btn .ico { transition: transform 0.3s var(--ease); }
.rv-more .btn[aria-expanded='true'] .ico { transform: rotate(180deg); }
@media (max-width: 1020px) { .rv-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rv-head { grid-template-columns: 1fr; gap: 24px; } }
@media (max-width: 760px) {
.reviews .wrap { padding-inline: 0; }
.rv-head, .rv-more { padding-inline: var(--gutter); }
.rv-grid, .js .rv-grid { display: flex; grid-template-columns: none; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 4px var(--gutter) 18px; scroll-padding-inline: var(--gutter); -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.rv-grid::-webkit-scrollbar { display: none; }
.rv-card { flex: 0 0 min(84vw, 340px); scroll-snap-align: start; }
.js .rv-extra, .js .rv-grid.all .rv-extra { display: block; }
.rv-more { display: none; }
.rv-score { grid-template-columns: auto 1fr; }
}
.watch { padding-block: clamp(56px, 7vw, 112px); }
.rv-more .btn[hidden] { display: none; }
.why-head .h2-xl { font-size: clamp(2.4rem, 0.9rem + 3.3vw, 4.1rem); line-height: 1.04; text-wrap: nowrap; }
.why-head .h2-xl em { white-space: nowrap; }
@media (max-width: 1020px) { .why-head .h2-xl { text-wrap: balance; } .why-head .h2-xl em { white-space: normal; } }
@media (max-width: 760px) { .why-head .h2-xl { font-size: clamp(2.4rem, 10vw, 3.1rem); } }
@media (max-width: 760px) { .why-head .h2-xl { font-size: clamp(1.9rem, 8.4vw, 2.7rem); } }
@media (min-width: 1021px) { .rv-head { grid-template-columns: minmax(0, 1fr) auto; } .rv-score { justify-self: end; justify-items: end; } .rv-score .link-arrow { justify-self: end; } }
@media (min-width: 1021px) { .rv-score { padding-bottom: 0; margin-bottom: -12px; } }
.rv-nav { display: none; }
@media (max-width: 760px) {
.rv-grid { cursor: grab; touch-action: pan-x pan-y; overscroll-behavior-x: contain; user-select: none; -webkit-user-select: none; }
.rv-grid.drag { cursor: grabbing; scroll-snap-type: none; scroll-behavior: auto; }
.rv-nav { display: flex; align-items: center; gap: 16px; padding-inline: var(--gutter); margin-top: 6px; }
.rv-bar { position: relative; flex: 1; height: 3px; border-radius: 3px; background: var(--line-strong); overflow: hidden; }
.rv-bar i { position: absolute; left: 0; top: 0; bottom: 0; background: var(--blue); border-radius: 3px; transition: transform 0.1s linear; }
.rv-arrow { width: 48px; height: 48px; border-radius: 50%; border: 1.5px solid var(--line-strong); display: grid; place-items: center; background: #fff; color: var(--ink); transition: background 0.2s, color 0.2s, border-color 0.2s; }
.rv-arrow .ico { width: 20px; height: 20px; }
.rv-arrow[data-dir='-1'] .ico { transform: rotate(180deg); }
.rv-arrow:hover { background: var(--ink); color: #fff; border-color: var(--ink); }
}
.why.sec { padding-bottom: clamp(40px, 5vw, 72px); }
.watch { padding-top: clamp(16px, 3vw, 40px); padding-bottom: clamp(56px, 7vw, 104px); }
@media (max-width: 760px) { .why.sec { padding-bottom: 36px; } .watch { padding-top: 8px; padding-bottom: 56px; } }
@media (max-width: 1020px) {
:root { --panel-pad: 40px; }
.explorer, .cta, .tim, .callout, .mission-lg, .ftr { padding-block: var(--panel-pad); }
.explorer > .wrap, .cta > .wrap, .tim > .wrap, .tim > .wrap.tim-grid, .callout > .wrap, .mission-lg > .wrap, .ftr > .wrap { padding-inline: var(--panel-pad); }
.ftr { padding-bottom: calc(var(--panel-pad) + 80px); }
}
@media (max-width: 760px) {
:root { --panel-pad: 28px; }
.tim > .wrap.tim-grid { padding-inline: var(--panel-pad); }
.ex-head { margin-bottom: 24px; }
}
@media (min-width: 901px) {
.mh--home .mh-media::after { background: linear-gradient(90deg, var(--paper) 0%, rgba(246, 243, 238, 0.88) 6%, rgba(246, 243, 238, 0.5) 17%, rgba(246, 243, 238, 0.14) 29%, rgba(246, 243, 238, 0) 38%); }
}
.eyebrow-dot::before { display: none; }
.mh-title { font-family: var(--sans); font-weight: 800; letter-spacing: -0.04em; line-height: 1.02; font-optical-sizing: auto; color: var(--ink); }
.mh-title em, .mh--home .mh-title em, .mh--hub .mh-title em { font-style: normal; font-weight: 800; letter-spacing: inherit; color: #e65100; }
.mh { --mh-title: clamp(2.3rem, 0.9rem + 2.7vw, 3.9rem); }
.mh--home { --mh-title: clamp(2.7rem, min(0.9rem + 3.3vw, 8.4svh), 4.9rem); }
.mh--home .mh-title { white-space: normal; }
@media (max-width: 900px) { .mh-title, .mh--home .mh-title { font-size: clamp(2.5rem, 10.4vw, 3.8rem); } }
.mh--dark .mh-title { color: #fff; }
.mh-rating { display: inline-flex; align-items: center; gap: 12px; margin-top: clamp(14px, 2.2svh, 22px); font-weight: 600; font-size: 0.98rem; color: var(--ink); }
.mh-rating .stars { gap: 2px; } .mh-rating .star { width: 22px; height: 22px; }
.mh-rating:hover span { text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 901px) { .mh-rating { margin-top: clamp(10px, 1.8svh, 20px); } }
.mh-rating { order: 5; }
@media (min-width: 901px) {
.mh--home { padding-block: clamp(12px, 2svh, 28px); --mh-title: clamp(2.7rem, min(0.9rem + 3.3vw, 7.6svh), 4.9rem); }
.mh--home .mh-actions { margin-top: clamp(16px, 2.4svh, 28px); }
.mh--home .mh-note { margin-top: 10px; }
.mh--home .mh-rating { margin-top: 12px; }
}
:root {
--t-display: clamp(2.6rem, 0.9rem + 4.4vw, 5rem);
--t-h2xl: clamp(2.3rem, 0.8rem + 3.8vw, 4.5rem);
--t-h2: clamp(2rem, 0.9rem + 2.8vw, 3.5rem);
--t-h3: clamp(1.4rem, 1.05rem + 1vw, 2rem);
--accent: #e65100;
--accent-dark-bg: #ff7a33;
}
.display, .h2, .h3, .signoff-line, .callout-t, .why-list h3, .pts h3, .twin-c h3, .hub-rows h2, .bento h2, .ledger-list dt,
.ex-name, .ex-preview h3, .asked-q, .tim-fig strong, .about-fig strong, .related-list strong, .menu-txt, .form-ok h3, .rv-card figcaption strong, .glance dd {
font-family: var(--sans); font-variation-settings: normal; font-feature-settings: normal; font-optical-sizing: auto;
}
.display, .h2, .h3, .signoff-line, .callout-t { font-weight: 800; letter-spacing: -0.035em; color: inherit; }
.display { font-size: var(--t-display); line-height: 1.02; }
.h2 { font-size: var(--t-h2); line-height: 1.06; }
.h2-xl { font-size: var(--t-h2xl); line-height: 1.04; letter-spacing: -0.04em; }
.h3 { font-size: var(--t-h3); line-height: 1.12; letter-spacing: -0.03em; font-weight: 800; }
.display em, .h2 em, .h3 em, .signoff-line em, .callout-t em { font-style: normal; font-weight: inherit; letter-spacing: inherit; color: var(--accent); }
.explorer em, .cta-ink em, .ftr em, .cta em { color: var(--accent-dark-bg); }
.tim em { color: #ffd2b0; }
.why-head .h2-xl { font-size: clamp(2.1rem, 0.8rem + 3vw, 3.6rem); text-wrap: balance; white-space: normal; }
.why-head .h2-xl em { white-space: normal; }
.tim .h2-xl { font-size: clamp(2.4rem, 0.9rem + 3.4vw, 4rem); }
.cta-copy .h2-xl { font-size: clamp(2.2rem, 0.9rem + 3.4vw, 4rem); }
.why-pts .h2-xl { max-width: 20ch; }
.signoff-line { font-size: clamp(3rem, 0.4rem + 9.4vw, 9.6rem); line-height: 0.95; letter-spacing: -0.05em; }
.callout-t { font-size: clamp(1.7rem, 1rem + 2.2vw, 3rem); line-height: 1.1; max-width: 24ch; }
.why-pts + .callout .callout-t { font-size: clamp(1.4rem, 1rem + 1.4vw, 2.2rem); line-height: 1.22; font-weight: 700; max-width: 48ch; letter-spacing: -0.02em; }
.why-list h3 { font-size: clamp(1.7rem, 1rem + 2.2vw, 3rem); font-weight: 800; letter-spacing: -0.035em; line-height: 1.04; }
.pts h3 { font-size: clamp(1.45rem, 1.1rem + 1vw, 2rem); font-weight: 800; letter-spacing: -0.03em; }
.twin-c h3 { font-size: 1.5rem; font-weight: 800; letter-spacing: -0.025em; }
.hub-rows h2 { font-size: clamp(1.6rem, 1.1rem + 1.5vw, 2.5rem); font-weight: 800; letter-spacing: -0.03em; }
.bento h2 { font-size: clamp(1.5rem, 1.1rem + 1vw, 2.1rem); font-weight: 800; letter-spacing: -0.03em; }
.ledger-list dt { font-size: clamp(1.6rem, 1.1rem + 1.3vw, 2.3rem); font-weight: 800; letter-spacing: -0.03em; }
.ex-name { font-size: clamp(1.4rem, 1rem + 1.2vw, 2.1rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.12; max-width: 24ch; }
.ex-row.is-active .ex-name { font-weight: 800; }
.ex-preview h3 { font-size: clamp(1.7rem, 1.2rem + 1.4vw, 2.4rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1.08; max-width: none; }
.asked-q { font-size: clamp(1.4rem, 1rem + 1.6vw, 2.3rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1.12; }
.tim-fig strong, .about-fig strong { font-weight: 800; letter-spacing: -0.03em; font-size: 1.9rem; }
.related-list strong { font-weight: 700; font-size: 1.15rem; letter-spacing: -0.015em; }
.menu-txt { font-weight: 700; font-size: 1.25rem; letter-spacing: -0.02em; line-height: 1.2; }
.form-ok h3 { font-weight: 800; font-size: 2.1rem; letter-spacing: -0.03em; }
.rv-card figcaption strong { font-weight: 700; font-size: 1.1rem; letter-spacing: -0.01em; }
.glance dd { font-weight: 700; font-size: clamp(1.1rem, 1rem + 0.4vw, 1.3rem); line-height: 1.3; letter-spacing: -0.015em; }
.cta-contact li:first-child strong { font-family: var(--sans); font-weight: 800; font-size: clamp(1.6rem, 1rem + 1.6vw, 2.4rem); letter-spacing: -0.03em; }
.ftr h2 { font-family: var(--sans); }
.proof strong, .ex-fact strong { font-weight: 700; }
.stat-n, .sc-n, .rv-num, .why-n, .pts-n, .stat-q p, .quote, .claim p { font-family: var(--serif); }
.stat-q p { font-size: clamp(1.7rem, 1rem + 2.4vw, 3.2rem); }
@media (max-width: 760px) {
.display, .display-md { font-size: clamp(2.4rem, 10.6vw, 3.4rem); }
.h2-xl { font-size: clamp(2.1rem, 9vw, 2.9rem); }
.h2 { font-size: clamp(1.9rem, 8vw, 2.5rem); }
.why-head .h2-xl { font-size: clamp(1.75rem, 7.2vw, 2.4rem); }
.tim .h2-xl, .cta-copy .h2-xl { font-size: clamp(2.1rem, 9vw, 2.9rem); }
.signoff-line { font-size: clamp(3rem, 15.5vw, 4.8rem); }
.why-list h3 { font-size: clamp(1.6rem, 7vw, 2.1rem); }
.asked-q { font-size: clamp(1.35rem, 6vw, 1.8rem); }
.ex-name { font-size: clamp(1.3rem, 5.6vw, 1.7rem); }
.callout-t { font-size: clamp(1.6rem, 6.6vw, 2.1rem); }
.why-pts + .callout .callout-t { font-size: clamp(1.25rem, 5.4vw, 1.6rem); }
}
:root { --tint-blue: #e4efff; --tint-warm: #ffe9df; --blue-bright: #1a73f0; }
.btn-blue { background: var(--blue); color: #fff; }
.btn-blue .ico { background: #fff; color: var(--blue); }
.btn-blue:hover { background: var(--ink); transform: translateY(-2px); }
.btn-blue:hover .ico { transform: rotate(-45deg); }
.marks { width: 56px; height: 50px; fill: none; stroke-width: 6; stroke-linecap: round; }
.marks path { vector-effect: non-scaling-stroke; }
.hh { position: relative; overflow: clip; padding-block: clamp(20px, 3.4svh, 48px) clamp(24px, 4svh, 56px); }
.hh-grid { display: grid; grid-template-columns: minmax(0, 11fr) minmax(0, 9fr); gap: clamp(24px, 4vw, 72px); align-items: center; min-height: min(calc(100svh - var(--hdr) - 150px), 700px); }
.hh-title { font-family: var(--sans); font-weight: 800; letter-spacing: -0.045em; line-height: 1.0; font-size: clamp(2.7rem, min(0.8rem + 4.6vw, 10.5svh), 5.9rem); color: var(--ink); text-wrap: balance; margin: 0; }
.hh-title em { font-style: normal; color: #e65100; }
.hh-lede { margin-top: clamp(16px, 2.6svh, 28px); font-size: clamp(1.05rem, 0.98rem + 0.3vw, 1.25rem); line-height: 1.55; color: #3d4659; max-width: 46ch; text-wrap: pretty; }
.hh-actions { display: flex; flex-wrap: wrap; gap: 14px 16px; margin-top: clamp(20px, 3.2svh, 34px); align-items: stretch; }
.hh .btn-primary { height: 60px; box-shadow: none; }
.hh-call { display: inline-flex; align-items: center; gap: 14px; height: 60px; box-sizing: border-box; padding: 0 28px 0 22px; border-radius: 999px; border: 2px solid var(--blue); color: var(--blue); transition: background 0.3s, color 0.3s; }
.hh-call .ico { width: 22px; height: 22px; }
.hh-call span { display: flex; align-items: baseline; gap: 8px; line-height: 1; }
.hh-call small { font-size: 1rem; font-weight: 650; }
.hh-call strong { font-size: 1.1rem; font-weight: 800; letter-spacing: -0.01em; }
.hh-call:hover { background: var(--blue); color: #fff; }
.perks { display: grid; grid-template-columns: repeat(4, auto); justify-content: start; gap: 12px 28px; margin-top: clamp(20px, 3.4svh, 36px); }
.perks li { display: flex; align-items: center; gap: 12px; font-weight: 650; font-size: 0.95rem; line-height: 1.25; }
.perk-ic { width: 46px; height: 46px; flex: none; border-radius: 50%; display: grid; place-items: center; background: #e3efff; color: var(--blue); }
.perk-ic .ico { width: 24px; height: 24px; stroke-width: 1.7; }
.perk-o .perk-ic, .perk-ic.perk-o { background: #ffe5d6; color: #e65100; }
.perks li span:last-child span { color: #c23d00; }
.hh-note { margin-top: 14px; font-size: 0.84rem; color: var(--muted); max-width: 54ch; line-height: 1.5; }
.hh-visual { position: relative; isolation: isolate; padding: clamp(10px, 2vw, 28px); }
.hh-blob { position: absolute; z-index: -1; inset: 0; background: linear-gradient(150deg, #9fd2ff, #55aaff 55%, #2f8cff); border-radius: 56% 44% 52% 48% / 46% 56% 44% 54%; transform: rotate(-4deg) scale(1.02); }
.hh-img { display: block; width: 100%; aspect-ratio: 1 / 0.92; object-fit: cover; object-position: 74% 32%; border-radius: 48% 52% 46% 54% / 52% 46% 54% 48%; box-shadow: 0 30px 60px -34px rgba(10, 22, 48, 0.55); }
.hh-marks { position: absolute; right: 2%; top: -2%; width: clamp(48px, 6vw, 84px); height: auto; z-index: 1; }
.cats { padding-block: clamp(8px, 2vw, 24px) clamp(40px, 6vw, 88px); }
.cats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(16px, 2vw, 28px); }
.cat { display: flex; flex-direction: column; border-radius: 32px; overflow: hidden; background: var(--tint-blue); box-shadow: inset 0 0 0 1px rgba(11, 87, 208, 0.12); }
.cat-business { background: var(--tint-warm); box-shadow: inset 0 0 0 1px rgba(230, 81, 0, 0.14); }
.cat-photo { display: block; aspect-ratio: 16 / 7; overflow: hidden; }
.cat-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.8s var(--ease); }
.cat:hover .cat-photo img { transform: scale(1.03); }
.cat-personal .cat-photo img { object-position: 85% 38%; }
.cat-business .cat-photo img { object-position: 50% 45%; }
.cat-body { padding: clamp(24px, 2.6vw, 36px); display: flex; flex-direction: column; flex: 1; }
.cat-h { font-family: var(--sans); font-weight: 800; letter-spacing: -0.035em; font-size: clamp(1.8rem, 1.2rem + 1.6vw, 2.6rem); line-height: 1.05; color: var(--ink); }
.cat-p { margin-top: 10px; font-size: 1.12rem; line-height: 1.5; color: #3d4659; }
.cat-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin: 22px 0 28px; }
.cat-list a { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 11px 0; border-bottom: 1px solid rgba(10, 22, 48, 0.14); font-weight: 600; font-size: 0.98rem; line-height: 1.3; transition: color 0.2s, padding 0.3s var(--ease); }
.cat-list .ico { width: 16px; height: 16px; color: var(--blue); flex: none; transition: transform 0.3s var(--ease); }
.cat-business .cat-list .ico { color: #e65100; }
.cat-list a:hover { color: var(--blue); padding-left: 6px; }
.cat-list a:hover .ico { transform: translateX(3px); }
.cat .btn { align-self: flex-start; margin-top: auto; }
.whyu { padding-block: clamp(56px, 7vw, 112px); }
.whyu-head { text-align: center; max-width: 760px; margin-inline: auto; position: relative; }
.whyu-head .lede-sm { margin-inline: auto; margin-top: 16px; }
.whyu-marks { display: block; margin: 0 auto 8px; width: 54px; }
.whyu-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: clamp(32px, 4vw, 56px); }
.whyu-grid li { padding: 4px clamp(16px, 2vw, 32px); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.whyu-grid li + li { border-left: 1px solid var(--line-strong); }
.whyu-grid .perk-ic { width: 64px; height: 64px; }
.whyu-grid .perk-ic .ico { width: 30px; height: 30px; }
.whyu-grid h3 { font-family: var(--sans); font-weight: 800; letter-spacing: -0.025em; font-size: 1.25rem; line-height: 1.2; }
.whyu-grid p { color: #3d4659; font-size: 1rem; line-height: 1.55; max-width: 28ch; }
.whyu-more { text-align: center; margin-top: 28px; }
.whyu-more .link-arrow { margin-top: 0; }
.cta-blue { color: #fff; background: radial-gradient(900px 560px at 100% 0%, rgba(76, 196, 255, 0.55), transparent 60%), linear-gradient(125deg, #0b63e6, #0a3fa6); }
.cta-blue .eyebrow { color: #cfe3ff; }
.cta-blue em { color: #ffd2b0; }
.cta-blue .cta-contact .ico { border-color: rgba(255, 255, 255, 0.55); color: #fff; }
.cta-blue .cta-contact a:hover { color: #ffd2b0; }
.cta-blue .cta-form .field input, .cta-blue .cta-form .field textarea { border-bottom-color: rgba(255, 255, 255, 0.6); }
.cta-blue .cta-form .field input:focus, .cta-blue .cta-form .field textarea:focus { border-bottom-color: #fff; background: rgba(255, 255, 255, 0.08); }
.cta-blue .cta-grid::before { background: rgba(255, 255, 255, 0.35); }
.cta-blue .cta-form .form-note .ico, .cta-blue .cta-form .ok-badge { color: #fff; }
.cta-blue .cta-form .ok-badge { background: var(--orange); }
.cta-blue .cta-form .err, .cta-blue .cta-form .form-status.is-err { color: #ffd7cf; }
.page-home .trust { margin-top: clamp(40px, 5vw, 72px); }
.page-home .ftr { margin-top: 0; }
@media (max-width: 1100px) { .perks { grid-template-columns: repeat(2, auto); } }
@media (max-width: 1020px) {
.cats-grid { grid-template-columns: 1fr; }
.whyu-grid { grid-template-columns: 1fr 1fr; row-gap: 36px; }
.whyu-grid li:nth-child(odd) { border-left: 0; }
}
@media (max-width: 900px) {
.hh { padding-top: 12px; }
.hh-grid { grid-template-columns: 1fr; min-height: 0; gap: 28px; }
.hh-title { font-size: clamp(2.6rem, 11.4vw, 4rem); }
.hh-visual { max-width: 560px; margin-inline: auto; width: 100%; padding: 12px 14px 18px; }
.hh-img { aspect-ratio: 1 / 0.8; }
}
@media (max-width: 640px) {
.hh-actions { flex-direction: column; }
.hh .btn-primary { width: 100%; justify-content: space-between; height: 64px; }
.hh-call { justify-content: center; height: 60px; }
.perks { grid-template-columns: 1fr 1fr; gap: 16px 14px; }
.perks li { font-size: 0.9rem; }
.perk-ic { width: 42px; height: 42px; }
.cat { border-radius: 26px; }
.cat-photo { aspect-ratio: 16 / 9; }
.cat-list { grid-template-columns: 1fr; margin: 18px 0 24px; }
.cat .btn { width: 100%; justify-content: space-between; }
.whyu-grid { grid-template-columns: 1fr; row-gap: 28px; }
.whyu-grid li { border-left: 0 !important; flex-direction: row; text-align: left; align-items: flex-start; gap: 16px; padding: 0; flex-wrap: wrap; }
.whyu-grid li h3 { flex: 1; min-width: 0; align-self: center; }
.whyu-grid li p { flex-basis: 100%; max-width: none; }
}
@media (prefers-reduced-motion: reduce) { .cat-photo img { transition: none; } }
.nav li > a, .nav li.has-menu > a { white-space: nowrap; }
.nav li > a { font-size: 0.92rem; padding-inline: 12px; }
.nav li.has-menu > a, .nav li.has-menu > a:hover, .nav li.has-menu:hover > a { padding: 10px 2px 10px 14px; }
@media (max-width: 1340px) { .hdr-cta .tel { display: none; } }
@media (max-width: 1260px) { .nav li > a { font-size: 0.88rem; padding-inline: 9px; } .hdr-in { gap: 18px; } .brand img { width: 200px; } }
.drawer summary, .drawer .dl { font-family: var(--sans); font-weight: 800; letter-spacing: -0.03em; font-size: clamp(1.6rem, 6.4vw, 2.1rem); }
.hh-title { white-space: nowrap; text-wrap: nowrap; font-size: clamp(1.7rem, min(0.5rem + 4.4vw, 10.5svh), 5.9rem); }
@media (max-width: 900px) { .hh-title { font-size: clamp(1.7rem, 8.6vw, 4rem); } }
@media (max-width: 380px) { .hh-title { font-size: clamp(1.5rem, 8vw, 2rem); } }
@media (max-width: 380px) {
.stat-q { grid-template-columns: minmax(0, 1fr); padding-left: 16px; }
.stat-q .btn { white-space: normal; height: auto; min-height: 58px; padding-block: 8px; }
.btn { white-space: normal; text-align: left; }
}
.menu { width: min(780px, calc(100vw - 32px)); }
.menu-in { grid-template-columns: 210px minmax(0, 1fr); }
.menu-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.menu-list a { min-width: 0; }
.menu-list a span { min-width: 0; overflow-wrap: anywhere; }
.has-menu:nth-child(2) .menu { left: auto; right: -80px; }
.has-menu:nth-child(2) .menu { left: -18px; right: auto; }
.menu { width: min(840px, calc(100vw - 32px)); }
.menu-in { padding: 20px 32px 20px 20px; }
.menu-list a { padding-right: 14px; }
:root { --sec: clamp(48px, 6vw, 88px); }
.whyu, .sts, .watch2, .reviews, .ledger { padding-block: var(--sec); }
.page-home .tim { padding-block: clamp(44px, 5vw, 72px); }
.whyu-head .eyebrow { margin-bottom: 14px; }
.whyu-grid { gap: clamp(14px, 1.6vw, 22px); margin-top: clamp(28px, 3.6vw, 48px); }
.whyu-grid li + li { border-left: 0; }
.whyu-card { padding: clamp(24px, 2.4vw, 34px) !important; border-radius: 26px; text-align: left !important; align-items: flex-start !important; background: var(--tint-blue); box-shadow: inset 0 0 0 1px rgba(11, 87, 208, 0.12); gap: 14px !important; }
.whyu-card.perk-o { background: var(--tint-warm); box-shadow: inset 0 0 0 1px rgba(230, 81, 0, 0.14); }
.whyu-card .perk-ic { background: #fff; width: 60px; height: 60px; }
.whyu-grid h3 { font-size: 1.4rem; }
.whyu-grid p { font-size: 1.05rem; line-height: 1.55; max-width: none; color: #2f384b; }
.sts-head { max-width: 760px; margin-bottom: clamp(24px, 3vw, 40px); }
.sts-head .eyebrow { color: var(--blue); margin-bottom: 14px; }
.sts-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: clamp(14px, 1.6vw, 22px); align-items: stretch; }
.sts-card { border-radius: 26px; padding: clamp(24px, 2.6vw, 38px); display: flex; flex-direction: column; gap: 18px; justify-content: space-between; }
.sts-blue { background: var(--tint-blue); box-shadow: inset 0 0 0 1px rgba(11, 87, 208, 0.12); }
.sts-warm { background: var(--tint-warm); box-shadow: inset 0 0 0 1px rgba(230, 81, 0, 0.14); }
.sts-acc { background: #fff; box-shadow: inset 0 0 0 1px var(--line), inset 6px 0 0 var(--orange); padding-left: clamp(28px, 3vw, 44px); }
.sts-n { font-family: var(--serif); font-weight: 500; font-size: clamp(3.8rem, 2.4rem + 4vw, 6.4rem); line-height: 0.9; letter-spacing: -0.045em; font-feature-settings: 'lnum' 1; color: var(--blue); }
.sts-warm .sts-n { color: #e65100; }
.sts-n small { display: block; font: 700 0.8rem/1 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; margin-bottom: 14px; color: inherit; }
.sts-n i { font-style: normal; font-size: 0.6em; margin-left: 2px; letter-spacing: 0; }
.sts-c { font-size: 1.12rem; line-height: 1.55; color: #2f384b; }
.sts-c strong { color: var(--ink); font-weight: 750; }
.sts-q { font-family: var(--sans); font-weight: 800; font-size: clamp(1.4rem, 1rem + 1.1vw, 1.9rem); line-height: 1.22; letter-spacing: -0.03em; color: var(--ink); }
.sts-acc .btn { align-self: flex-start; }
.sts-src { margin-top: 16px; font-size: 0.85rem; color: var(--muted); }
.sts-src a { text-decoration: underline; text-underline-offset: 3px; }
.watch-panel { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 64px); align-items: center; padding: clamp(22px, 3vw, 44px); border-radius: 32px; background: var(--tint-blue); box-shadow: inset 0 0 0 1px rgba(11, 87, 208, 0.12); }
.watch-copy .h2 { font-size: clamp(1.9rem, 1rem + 2.4vw, 3.2rem); }
.watch-copy .lede-sm { max-width: 42ch; margin-top: 14px; font-size: 1.05rem; color: #2f384b; }
.watch-copy .btn { margin-top: 24px; }
.watch-copy .btn .ico { fill: currentColor; stroke: none; padding: 12px 11px 12px 13px; }
.watch-panel .video { border-radius: 22px; box-shadow: 0 24px 50px -28px rgba(10, 22, 48, 0.5); }
.reviews { padding-top: var(--sec); }
.rv-grid { margin-top: clamp(24px, 3vw, 40px); }
.rv-card figure { padding: clamp(26px, 2.8vw, 40px); gap: 22px; border-radius: 26px; }
.rv-card blockquote p { font-size: 1.15rem; line-height: 1.65; }
.rv-card figcaption strong { font-size: 1.2rem; }
.cta { padding-block: clamp(40px, 5vw, 72px); }
.cta-copy .h2-xl { font-size: clamp(2rem, 0.9rem + 2.8vw, 3.4rem); }
.cta-grid { align-items: center; }
.cta-contact { margin-top: clamp(20px, 2.4vw, 30px); }
.cta-contact a { padding-block: 12px; }
.cta-form .form-grid { gap: 22px 24px; }
.cta-form .field input { height: 48px; }
.ledger-head { margin-bottom: clamp(24px, 3vw, 40px); }
.disc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(14px, 1.6vw, 22px); margin-top: clamp(24px, 3vw, 40px); }
.disc-card { display: flex; gap: 20px; align-items: flex-start; padding: clamp(24px, 2.6vw, 36px); background: #fff; border-radius: 26px; box-shadow: inset 0 0 0 1px var(--line); }
.disc-card .perk-ic { flex: none; width: 56px; height: 56px; }
.disc-card h3 { font-family: var(--sans); font-weight: 800; font-size: 1.35rem; letter-spacing: -0.025em; margin-bottom: 8px; }
.disc-card p { color: #2f384b; font-size: 1.05rem; line-height: 1.6; }
.disc-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; font-weight: 700; font-size: 0.95rem; color: var(--blue); border-bottom: 1.5px solid currentColor; padding-bottom: 2px; }
.disc-link .ico { width: 16px; height: 16px; }
.assure { padding-block: clamp(8px, 2vw, 24px) clamp(36px, 4.4vw, 64px); }
.assure .proof { background: #fff; border-radius: 26px; box-shadow: inset 0 0 0 1px var(--line); padding: clamp(6px, 1vw, 14px) clamp(16px, 2vw, 28px); }
.assure .proof li { min-height: 88px; }
.assure .insurers { margin-top: 14px; display: flex; align-items: center; gap: clamp(20px, 4vw, 56px); padding: clamp(18px, 2vw, 28px) clamp(20px, 2.4vw, 36px); background: #fff; border: 0; border-radius: 26px; box-shadow: inset 0 0 0 1px var(--line); }
.assure .insurers .insurers-lab { border-right: 1px solid var(--line); padding-right: clamp(20px, 3vw, 44px); }
.page-home .ftr { margin-top: 0; }
@media (max-width: 1020px) {
.sts-grid { grid-template-columns: 1fr 1fr; }
.sts-acc { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
.watch-panel { grid-template-columns: 1fr; }
.assure .insurers { flex-direction: column; text-align: center; }
.assure .insurers .insurers-lab { border: 0; padding: 0; }
.assure .insurers-logos { justify-content: center; }
}
@media (max-width: 760px) {
.sts-grid { grid-template-columns: 1fr; }
.sts-acc { flex-direction: column; align-items: flex-start; }
.whyu-grid { grid-template-columns: 1fr; row-gap: 14px; }
.whyu-card { flex-direction: column !important; flex-wrap: nowrap !important; }
.whyu-grid li h3 { align-self: flex-start; flex: none; }
.disc-grid { grid-template-columns: 1fr; }
.disc-card { gap: 16px; }
.watch-panel { padding: 18px; border-radius: 26px; }
.watch-copy .btn { width: 100%; justify-content: space-between; }
.assure .proof { padding: 6px 16px; }
.assure .proof li, .assure .proof li + li { padding-block: 16px; }
}
:root { --sec: clamp(36px, 4.2vw, 60px); } .sts-head { max-width: none; } .sts-head .h2 { text-wrap: balance; }
.ftr-legal { max-width: none; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px clamp(24px, 4vw, 64px); }
.ftr-legal p:first-child { max-width: 100ch; }
@media (max-width: 760px) { .ftr-legal { grid-template-columns: 1fr; } }
.sts-warm .sts-n small { color: #b83b00; }
.mh { border-bottom: 0; }   
.ph2 { padding: clamp(14px, 2vw, 28px) 0 clamp(8px, 1.6vw, 20px); background: linear-gradient(180deg, rgba(228, 239, 255, 0.7), rgba(246, 243, 238, 0) 88%); }
.ph2-grid { display: grid; grid-template-columns: minmax(0, 58fr) minmax(0, 42fr); gap: clamp(24px, 4vw, 64px); align-items: center; }
.ph2-copy .crumbs { margin-bottom: 14px; }
.ph2-copy .eyebrow { margin-bottom: 10px; }
.ph2-title { font-family: var(--sans); font-weight: 800; letter-spacing: -0.04em; line-height: 1.04; font-size: clamp(2.1rem, 0.9rem + 2.9vw, 3.5rem); color: var(--ink); text-wrap: balance; margin: 0; }
.ph2-lede { margin-top: 14px; max-width: 56ch; font-size: clamp(1.02rem, 0.96rem + 0.25vw, 1.15rem); line-height: 1.55; color: #3d4659; text-wrap: pretty; }
.ph2-actions { margin-top: 20px; }
.ph2 .btn-primary { height: 54px; padding-left: 24px; box-shadow: none; }
.ph2 .btn-primary .ico { width: 38px; height: 38px; padding: 10px; }
.ph2 .mh-call { height: 54px; }
.ph2 .mh-line { margin-top: 14px; }
.ph2-media { position: relative; isolation: isolate; margin: 0; padding: 10px 0 14px 14px; }
.ph2-media::before { content: ''; position: absolute; z-index: -1; inset: 0 -10px 0 0; border-radius: 46% 54% 50% 50% / 52% 46% 54% 48%; background: linear-gradient(150deg, #c5e0ff, #8cc2ff); transform: rotate(-3deg); }
.ph2-media img { display: block; width: 100%; aspect-ratio: 4 / 3; max-height: 290px; object-fit: cover; border-radius: 26px; box-shadow: 0 22px 44px -26px rgba(10, 22, 48, 0.55); }
.ph2-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 18px); margin-top: clamp(22px, 2.8vw, 34px); }
.ph2-cards-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ph2-card { display: flex; gap: 16px; align-items: flex-start; padding: 18px 20px; background: #fff; border-radius: 22px; box-shadow: inset 0 0 0 1px var(--line); }
.ph2-card .perk-ic { width: 46px; height: 46px; flex: none; }
.ph2-card .perk-ic .ico { width: 22px; height: 22px; }
.ph2-k { font: 750 0.75rem/1.2 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--blue); margin-bottom: 6px; }
.ph2-k.perk-o { color: #b83b00; }
.ph2-v { font-weight: 650; font-size: 1.02rem; line-height: 1.4; color: var(--ink); text-wrap: pretty; }
.ph2-overview { padding-block: clamp(28px, 3.6vw, 48px) 0; }
.ph2-ov-in { max-width: 820px; }
.ph2-ov-in .eyebrow { margin-bottom: 12px; }
.page-product .sec { padding-block: var(--sec); }
.page-product .callout { margin-block: 0; }
.page-product .related { padding-block: clamp(28px, 3.6vw, 48px); }
@media (max-width: 900px) {
.ph2-grid { grid-template-columns: 1fr; gap: 20px; }
.ph2-media { order: 2; padding: 8px 0 12px 10px; }
.ph2-media img { aspect-ratio: 16 / 9; max-height: 220px; }
.ph2-cards, .ph2-cards-2 { grid-template-columns: 1fr; }
.ph2-title { font-size: clamp(2rem, 8.6vw, 2.8rem); }
}
@media (max-width: 640px) {
.ph2-actions { flex-direction: column; }
.ph2 .btn-primary { width: 100%; justify-content: space-between; }
.ph2 .mh-call { justify-content: flex-start; }
}
.assure { padding-block: clamp(40px, 5vw, 72px) clamp(40px, 5vw, 72px); }
.assure .insurers { margin: 0; padding: 0; background: none; border: 0; box-shadow: none; border-radius: 0; display: flex; flex-direction: column; align-items: center; gap: clamp(20px, 2.6vw, 32px); text-align: center; }
.assure .insurers .insurers-lab { border: 0; padding: 0; text-align: center; font-size: 1.05rem; color: var(--ink); }
.assure .insurers .insurers-lab br { display: none; }
.assure .insurers-logos { justify-content: center; gap: 22px clamp(28px, 4.4vw, 64px); }
.ftr-sub { display: block; margin-top: 2px; font-size: 0.85rem; font-weight: 450; color: rgba(255, 255, 255, 0.7); }
@media (max-width: 760px) { .assure { padding-block: 36px; } .assure .insurers-logos { gap: 20px 28px; } }
.ph2 { background: none; padding: clamp(12px, 1.6vw, 22px) 0 0; }
.ph2-grid { grid-template-columns: minmax(0, 62fr) minmax(0, 38fr); gap: clamp(24px, 4vw, 56px); align-items: center; }
.ph2-title { font-size: clamp(1.9rem, 1.2rem + 1.7vw, 2.9rem); line-height: 1.1; letter-spacing: -0.035em; max-width: 24ch; }
.ph2-copy .crumbs { margin-bottom: 10px; }
.ph2-copy .eyebrow { margin-bottom: 8px; }
.ph2-lede { margin-top: 12px; max-width: 58ch; font-size: 1.05rem; line-height: 1.55; }
.ph2-actions { margin-top: 18px; flex-wrap: wrap; align-items: center; gap: 12px 14px; }
.ph2 .btn-primary, .ph2 .mh-call { height: 50px; }
.ph2 .btn-primary .ico { width: 36px; height: 36px; padding: 9px; }
.ph2 .mh-call { padding: 0 22px 0 8px; }
.ph2 .mh-call-ic { width: 36px; height: 36px; }
.ph2 .mh-line { margin-top: 12px; padding: 0; border: 0; font-weight: 600; font-size: 0.95rem; color: #3d4659; }
.ph2-media { padding: 0; margin: 0; }
.ph2-media::before { display: none; }
.ph2-media img { aspect-ratio: 16 / 10; max-height: 250px; border-radius: 22px; box-shadow: 0 12px 28px -20px rgba(10, 22, 48, 0.5); }
.ph2-cards { margin-top: clamp(16px, 2vw, 24px); align-items: stretch; }
.ph2-card { padding: 14px 18px; gap: 14px; align-items: flex-start; border-radius: 20px; }
.ph2-card .perk-ic { width: 40px; height: 40px; }
.ph2-card .perk-ic .ico { width: 20px; height: 20px; }
.ph2-k { margin-bottom: 4px; font-size: 0.72rem; }
.ph2-v { font-size: 0.98rem; line-height: 1.4; max-width: 38ch; }
.ph2-overview { padding-top: clamp(24px, 3vw, 40px); }
@media (max-width: 900px) {
.ph2-grid { grid-template-columns: 1fr; gap: 16px; }
.ph2-media img { aspect-ratio: 16 / 9; max-height: 200px; }
.ph2-title { font-size: clamp(1.8rem, 7.4vw, 2.3rem); }
}
.js .rv-card[data-long] blockquote p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 7; line-clamp: 7; overflow: hidden; }
.js .rv-card[data-long].open blockquote p { -webkit-line-clamp: unset; line-clamp: unset; display: block; }
.rv-readmore { align-self: flex-start; margin-top: -8px; min-height: 44px; padding: 0; font: 700 0.95rem var(--sans); color: var(--blue); border-bottom: 0; text-decoration: underline; text-underline-offset: 4px; }
.rv-readmore:hover { color: var(--ink); }
.rv-card blockquote { flex: 0 1 auto; }
.rv-card figure { justify-content: flex-start; }
.rv-card figcaption { margin-top: auto; }
@media (max-width: 640px) { .ph2-actions { align-items: stretch; } .ph2 .mh-call { width: 100%; } }
@media (max-width: 760px) { .rv-grid, .js .rv-grid { align-items: flex-start; } }
.ph2 { padding: clamp(24px, 4vw, 56px) 0 0; }
.ph2-grid { grid-template-columns: minmax(0, 11fr) minmax(0, 9fr); gap: clamp(32px, 5vw, 80px); align-items: center; min-height: clamp(340px, 34vw, 440px); }
.ph2-copy .crumbs { margin-bottom: 20px; }
.ph2-copy .eyebrow { margin-bottom: 14px; }
.ph2-title { font-size: clamp(2.4rem, 1rem + 3.6vw, 4.3rem); line-height: 1.04; letter-spacing: -0.045em; max-width: 17ch; }
.ph2-lede { margin-top: 22px; max-width: 52ch; font-size: clamp(1.08rem, 1rem + 0.3vw, 1.25rem); line-height: 1.6; }
.ph2-actions { margin-top: 30px; gap: 14px 16px; }
.ph2 .btn-primary, .ph2 .mh-call { height: 60px; }
.ph2 .btn-primary .ico { width: 42px; height: 42px; padding: 11px; }
.ph2 .mh-call { padding: 0 26px 0 10px; }
.ph2 .mh-call-ic { width: 40px; height: 40px; }
.ph2 .mh-line { margin-top: 18px; }
.ph2-media { position: relative; isolation: isolate; margin: 0; padding: clamp(10px, 2vw, 26px); }
.ph2-media .hh-blob { z-index: -1; }
.ph2-media img.hh-img { aspect-ratio: 1 / 0.9; max-height: none; width: 100%; border-radius: 48% 52% 46% 54% / 52% 46% 54% 48%; box-shadow: 0 30px 60px -34px rgba(10, 22, 48, 0.55); }
.ph2-cards { margin-top: clamp(32px, 4vw, 56px); gap: clamp(14px, 1.6vw, 22px); }
.ph2-card { padding: 22px 24px; gap: 18px; border-radius: 24px; }
.ph2-card .perk-ic { width: 48px; height: 48px; }
.ph2-card .perk-ic .ico { width: 24px; height: 24px; }
.ph2-k { margin-bottom: 8px; font-size: 0.76rem; }
.ph2-v { font-size: 1.08rem; line-height: 1.45; }
.ph2-overview { padding-top: clamp(32px, 4vw, 56px); }
@media (max-width: 900px) {
.ph2 { padding-top: 16px; }
.ph2-grid { grid-template-columns: 1fr; gap: 20px; min-height: 0; }
.ph2-media { max-width: 520px; margin-inline: auto; width: 100%; padding: 10px 12px 14px; }
.ph2-media img.hh-img { aspect-ratio: 1 / 0.78; }
.ph2-title { font-size: clamp(2.2rem, 9.4vw, 3.2rem); max-width: none; }
.ph2-lede { margin-top: 16px; }
.ph2-actions { margin-top: 22px; }
.ph2-card { padding: 18px 20px; }
}
.quote, .claim p, .pts-n { font-family: var(--sans); font-style: normal; }
.quote { font-weight: 700; letter-spacing: -0.03em; line-height: 1.22; font-size: clamp(1.5rem, 1rem + 1.6vw, 2.4rem); }
.claim p { font-weight: 600; font-size: clamp(1.15rem, 1rem + 0.5vw, 1.4rem); line-height: 1.45; letter-spacing: -0.015em; color: var(--ink); }
.pts-n { font-weight: 800; letter-spacing: -0.02em; font-size: 1.6rem; }
.cats-grid { align-items: stretch; gap: clamp(18px, 2.2vw, 32px); }
.cat, .cat-business { background: #fff; border-radius: 28px; box-shadow: 0 0 0 1px rgba(10, 22, 48, 0.06), 0 2px 4px rgba(10, 22, 48, 0.04), 0 28px 48px -30px rgba(10, 22, 48, 0.28); overflow: hidden; }
.cat-photo { aspect-ratio: 2 / 1; border-radius: 28px 28px 0 0; }
.cat-personal .cat-photo img { object-position: 82% 36%; }
.cat-business .cat-photo img { object-position: 50% 42%; }
.cat-body { padding: clamp(24px, 2.8vw, 40px); }
.cat-h { font-size: clamp(1.7rem, 1.2rem + 1.2vw, 2.3rem); letter-spacing: -0.035em; }
.cat-p { margin-top: 8px; font-size: 1.05rem; color: #5a6275; }
.cat-list { grid-template-columns: 1fr 1fr; gap: 2px 28px; margin: 22px 0 28px; align-content: start; min-height: calc(3 * 46px); }
.cat-list a { padding: 11px 0; border-bottom: 0; font-weight: 600; font-size: 1rem; }
.cat-list .ico { width: 17px; height: 17px; stroke-width: 2; }
.cat-list a:hover { padding-left: 0; color: var(--blue); }
.cat-business .cat-list a:hover { color: #c23d00; }
.cat .btn { height: 56px; align-self: flex-start; margin-top: auto; box-shadow: none; }
.cat .btn .ico { width: 38px; height: 38px; padding: 10px; }
.cat .btn-blue { background: #0a6cf0; }
@media (max-width: 1020px) { .cat-photo { aspect-ratio: 16 / 8; } }
@media (max-width: 640px) {
.cat, .cat-business { border-radius: 24px; }
.cat-photo { aspect-ratio: 16 / 9; border-radius: 24px 24px 0 0; }
.cat-list { grid-template-columns: 1fr; min-height: 0; margin: 16px 0 22px; gap: 0; }
.cat-list a { padding: 12px 0; }
.cat .btn { width: 100%; justify-content: space-between; }
}
.hdr-in, .hdr.scrolled .hdr-in { transition: none; }
.ph2-ov-in { max-width: none; }
.prose p, .prose .lead-p, .bul, .mh-more p { max-width: none; }
.phero-dis .lede { max-width: none; }
.why-pts .h2-xl { max-width: none; }
.ph2-overview .prose p { font-size: 1.1rem; line-height: 1.7; }
.ph2-title em { font-style: normal; color: #e65100; }
.assure .insurers-logos { gap: 22px clamp(28px, 4.8vw, 72px); }
.assure .insurers-logos img { height: 42px; max-width: 165px; }
.assure .insurers-logos li:has(img[src*='nib']) img { height: 33px; }
.assure .insurers-logos li:has(img[src*='accuro']) img { height: 57px; }
@media (min-width: 1021px) {
.assure .insurers-logos img { height: 35px; max-width: 141px; }
.assure .insurers-logos li:has(img[src*='nib']) img { height: 29px; }
.assure .insurers-logos li:has(img[src*='accuro']) img { height: 48px; }
}
@media (max-width: 760px) {
.assure .insurers-logos img { height: 35px; }
.assure .insurers-logos li:has(img[src*='nib']) img { height: 29px; }
.assure .insurers-logos li:has(img[src*='accuro']) img { height: 48px; }
}
:root {
--card-r: 28px;
--card-r-sm: 22px;
--panel-r: clamp(28px, 3.4vw, 40px);
--card-pad: clamp(24px, 2.6vw, 36px);
--card-shadow: 0 0 0 1px rgba(10, 22, 48, 0.05), 0 2px 4px rgba(10, 22, 48, 0.04), 0 28px 48px -30px rgba(10, 22, 48, 0.26);
--card-shadow-hover: 0 0 0 1px rgba(10, 22, 48, 0.06), 0 4px 8px rgba(10, 22, 48, 0.05), 0 36px 56px -30px rgba(10, 22, 48, 0.34);
}
.whyu-card, .whyu-card.perk-o, .sts-card, .sts-blue, .sts-warm, .sts-acc, .disc-card, .rv-card figure, .pts li, .pts li:nth-child(n), .twin-c, .contact-form, .claim, .asked-list, .covers {
background: #fff; border: 0; box-shadow: var(--card-shadow); border-radius: var(--card-r);
}
.ph2-card, .contact-cards a, .chips li { background: #fff; border: 0; box-shadow: var(--card-shadow); border-radius: var(--card-r-sm); }
.whyu-card, .sts-card, .disc-card, .rv-card figure, .pts li, .twin-c { padding: var(--card-pad) !important; }
.sts-acc { padding-left: var(--card-pad) !important; }
.claim { border-left: 0; padding: var(--card-pad); }
.asked-list { padding: 0 var(--card-pad); }
.asked-list li:last-child { border-bottom: 0; }
.covers { padding: 22px 26px; }
.whyu-card .perk-ic, .disc-card .perk-ic, .ph2-card .perk-ic { width: 52px; height: 52px; }
.whyu-card .perk-ic .ico, .disc-card .perk-ic .ico, .ph2-card .perk-ic .ico { width: 24px; height: 24px; }
.whyu-grid h3, .disc-card h3, .pts h3, .twin-c h3, .pcard-h { font-family: var(--sans); font-weight: 800; font-size: 1.3rem; line-height: 1.2; letter-spacing: -0.025em; color: var(--ink); }
.whyu-grid p, .disc-card p, .pts p, .twin-c p, .sts-c, .rv-card blockquote p, .ph2-v { font-size: 1.02rem; line-height: 1.6; color: #3d4659; }
.rv-card blockquote p { color: var(--ink); }
.ph2-v { color: var(--ink); font-weight: 650; }
.sts-n small { color: inherit; }
.sts-blue .sts-n, .sts-warm .sts-n { color: var(--blue); }
.sts-warm .sts-n { color: #e65100; }
.sts-acc .sts-q { font-size: clamp(1.3rem, 1rem + 0.9vw, 1.7rem); }
.contact-cards a:hover { transform: translateY(-3px); box-shadow: var(--card-shadow-hover); }
.pgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 28px); }
.pgrid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pcard { display: flex; }
.pcard-link { display: flex; flex-direction: column; width: 100%; background: #fff; border-radius: var(--card-r); box-shadow: var(--card-shadow); overflow: hidden; transition: transform 0.45s var(--ease), box-shadow 0.45s; }
.pcard-link:hover { transform: translateY(-4px); box-shadow: var(--card-shadow-hover); }
.pcard-photo { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--paper-2); }
.pcard-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.8s var(--ease); }
.pcard-link:hover .pcard-photo img { transform: scale(1.03); }
.pcard-body { display: flex; flex-direction: column; gap: 8px; padding: 22px 26px 26px; flex: 1; }
.pcard-p { color: #5a6275; font-size: 0.98rem; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pcard-go { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 8px; font-weight: 700; font-size: 0.95rem; color: var(--blue); }
.pgrid-business .pcard-go { color: #c23d00; }
.pcard-go .ico { width: 16px; height: 16px; stroke-width: 2; transition: transform 0.3s var(--ease); }
.pcard-link:hover .pcard-go .ico { transform: translateX(4px); }
.hub { padding-block: clamp(32px, 4vw, 56px); }
.related-head .h3 { font-size: 1.6rem; }
@media (max-width: 1020px) { .pgrid, .pgrid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .pgrid, .pgrid-3 { grid-template-columns: 1fr; } .pcard-link { border-radius: 24px; } }
.watch-panel { background: var(--tint-blue); border: 0; box-shadow: none; border-radius: var(--card-r); }
.video, .watch-panel .video { border-radius: var(--card-r-sm); box-shadow: 0 20px 44px -28px rgba(10, 22, 48, 0.5); }
.video-sec .video { border-radius: var(--card-r); box-shadow: var(--card-shadow); }
.cta, .tim, .callout, .mission-lg { border-radius: var(--panel-r); }
.ftr { border-radius: var(--panel-r) var(--panel-r) 0 0; }
.callout-in .btn, .cta .btn-primary { box-shadow: none; }
.whyu-grid, .sts-grid, .disc-grid, .rv-grid, .pts { gap: clamp(16px, 2vw, 28px); }
.tim-media { position: relative; isolation: isolate; width: min(100%, 300px); padding: clamp(10px, 1.6vw, 18px); }
.tim-media .hh-blob { z-index: -1; background: linear-gradient(150deg, #ffd0ac, #ff8a45 55%, #ff6a1a); }
.tim-media img.hh-img { aspect-ratio: 1 / 0.96; object-position: 50% 14%; border-radius: 48% 52% 46% 54% / 52% 46% 54% 48%; box-shadow: 0 24px 50px -30px rgba(0, 0, 0, 0.55); }
.about-media { width: min(100%, 400px); }
.about-media .hh-blob { background: linear-gradient(150deg, #9fd2ff, #55aaff 55%, #2f8cff); }
.about-fig { justify-self: end; }
@media (max-width: 1020px) { .tim-fig { align-items: center; } .tim-media { width: min(100%, 320px); margin-inline: auto; } .about-fig { justify-self: center; } }
.wrap.mission-in { max-width: calc(var(--max) + var(--gutter) * 2); }
@media (min-width: 1021px) { .about-grid.wrap { max-width: calc(var(--max) + var(--gutter) * 2); padding-inline: var(--gutter); } }
.ph2 { padding-bottom: clamp(28px, 3.4vw, 48px); }
.ph2-media { padding: clamp(14px, 2.2vw, 30px); }
.ph2-media .hh-blob { transform: rotate(-4deg) scale(0.98); }
.asked { padding-bottom: clamp(48px, 6vw, 88px); }
.asked-answer { margin-top: clamp(48px, 6vw, 80px); }
.asked-answer .h2-xl { max-width: none; }
.asked-answer .pts { margin-top: clamp(24px, 3vw, 40px); }
.pts li { min-height: 0; }
.callout-t, .why-pts + .callout .callout-t, .callout .callout-t { max-width: none; flex: 1 1 520px; }
.callout-in .btn { flex: none; }
.callout-t { font-size: clamp(1.5rem, 1rem + 1.5vw, 2.4rem); line-height: 1.18; letter-spacing: -0.025em; }
.tim, .cta, .ftr, .callout, .mission-lg, .explorer { margin-inline: clamp(8px, 1.4vw, 20px); }
.tim > .wrap.tim-grid { max-width: calc(var(--max) + var(--gutter) * 2); padding-inline: max(0px, calc(var(--gutter) - clamp(8px, 1.4vw, 20px))); }
@media (min-width: 1490px) { .tim > .wrap.tim-grid { padding-inline: var(--gutter); } }
@media (max-width: 1020px) { .tim > .wrap.tim-grid { padding-inline: var(--panel-pad, 28px); } }
@media (min-width: 1021px) { .contact-form { margin-top: 120px; } }
@media (max-width: 900px) {
.hh, .ph2 { padding-top: 0; }
.hh-grid, .ph2-grid { gap: 0; }
.hh-visual, .ph2-media { order: -1; position: relative; width: auto; max-width: none; margin: 0 calc(-1 * var(--gutter)); padding: 0; }
.hh-visual .hh-blob, .ph2-media .hh-blob { display: none; }
.hh-visual img.hh-img, .ph2-media img.hh-img { display: block; width: 100%; aspect-ratio: 4 / 3; max-height: 400px; border-radius: 0; box-shadow: none; object-fit: cover; }
.hh-visual::after, .ph2-media::after { content: ''; position: absolute; inset: 0; pointer-events: none;
background: linear-gradient(180deg, rgba(246, 243, 238, 0.85) 0%, rgba(246, 243, 238, 0) 16%, rgba(246, 243, 238, 0) 46%, rgba(246, 243, 238, 0.7) 74%, var(--paper) 100%); }
.hh-copy, .ph2-copy { position: relative; z-index: 1; margin-top: -64px; }
.hh-img { object-position: 62% 30%; }
}
@media (max-width: 760px) {
.rv-grid, .js .rv-grid { align-items: stretch; }
.rv-card { flex: 0 0 min(calc(100vw - 58px), 420px); display: flex; }
.rv-card figure { width: 100%; }
}
.js .page-home .mbar:not(.on) { transform: translateY(160%); opacity: 0; visibility: hidden; pointer-events: none; }
.js .page-home .mbar { transition: transform 0.4s var(--ease), opacity 0.3s, visibility 0s; }
.js .page-home .mbar:not(.on) { transition: transform 0.4s var(--ease), opacity 0.3s, visibility 0s 0.4s; }
.rv-extra { display: block; }
.rv-grid, .js .rv-grid { display: flex; grid-template-columns: none; gap: clamp(14px, 1.6vw, 22px); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; align-items: stretch; padding: 4px 2px 22px; margin-top: clamp(24px, 3vw, 40px); cursor: grab; }
.rv-grid::-webkit-scrollbar { display: none; }
.rv-grid.drag { cursor: grabbing; scroll-snap-type: none; scroll-behavior: auto; user-select: none; }
.rv-grid:focus-visible { outline-offset: 4px; }
.rv-card, .js .rv-extra { display: flex; flex: 0 0 calc((100% - 3 * clamp(14px, 1.6vw, 22px)) / 4); scroll-snap-align: start; min-width: 0; }
.rv-card figure { width: 100%; padding: clamp(22px, 2vw, 30px) !important; gap: 18px; }
.rv-card blockquote p { font-size: 1.02rem; line-height: 1.6; }
.rv-star-only { flex: 1; font-size: 1.02rem; line-height: 1.6; color: #5a6275; }
.star-off { color: #d9d4ca; }
.rv-nav { display: flex; align-items: center; gap: 16px; margin-top: 4px; }
.rv-bar { position: relative; flex: 1; height: 3px; border-radius: 3px; background: var(--line-strong); overflow: hidden; }
.rv-bar i { position: absolute; left: 0; top: 0; bottom: 0; background: var(--blue); border-radius: 3px; transition: transform 0.1s linear; }
.rv-arrow { width: 48px; height: 48px; flex: none; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--ink); box-shadow: var(--card-shadow); transition: background 0.2s, color 0.2s, opacity 0.2s; }
.rv-arrow .ico { width: 20px; height: 20px; }
.rv-arrow[data-dir='-1'] .ico { transform: rotate(180deg); }
.rv-arrow:hover:not(:disabled) { background: var(--ink); color: #fff; }
.rv-arrow:disabled { opacity: 0.35; cursor: default; }
.js .rv-card[data-long] blockquote p { -webkit-line-clamp: 8; line-clamp: 8; }
.rv-more { display: none; }
@media (max-width: 1200px) { .rv-card, .js .rv-extra { flex-basis: calc((100% - 2 * clamp(14px, 1.6vw, 22px)) / 3); } }
@media (max-width: 900px) { .rv-card, .js .rv-extra { flex-basis: calc((100% - clamp(14px, 1.6vw, 22px)) / 2); } }
@media (max-width: 760px) {
.reviews .wrap { padding-inline: 0; }
.rv-head, .rv-nav { padding-inline: var(--gutter); }
.rv-grid, .js .rv-grid { padding: 4px var(--gutter) 18px; scroll-padding-inline: var(--gutter); }
.rv-card, .js .rv-extra { flex: 0 0 min(calc(100vw - 58px), 420px); }
}
.rv-grid, .js .rv-grid { padding-bottom: 44px; margin-bottom: -24px; padding-top: 10px; margin-top: calc(clamp(24px, 3vw, 40px) - 6px); }
.js .rv-card[data-long] blockquote p { -webkit-line-clamp: 10; line-clamp: 10; }
@media (max-width: 760px) { .rv-grid, .js .rv-grid { padding-bottom: 36px; margin-bottom: -18px; } }
.rv-also { font-size: 1.02rem; line-height: 1.5; color: #5a6275; }
.rv-also-list { flex: 1; display: grid; align-content: start; gap: 0; }
.rv-also-list li { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); font-weight: 650; font-size: 0.98rem; }
.rv-also-list li:last-child { border-bottom: 0; }
.rv-also-list .star { width: 15px; height: 15px; }
.rv-also-list .stars { gap: 1px; flex: none; }
.ty { padding-block: clamp(56px, 8vw, 120px); }
.ty-in { max-width: 820px; margin-inline: auto; text-align: center; display: flex; flex-direction: column; align-items: center; }
.ty .ok-badge { margin-bottom: 22px; width: 72px; height: 72px; }
.ty .ph2-title { max-width: none; }
.ty .ph2-title em { font-style: normal; color: #e65100; }
.ty .ph2-lede { margin-inline: auto; max-width: 52ch; }
.ty-urgent { margin-top: 14px; color: #3d4659; font-size: 1.05rem; }
.ty-urgent a { color: var(--blue); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.ty .ph2-actions { justify-content: center; }
.ty-fine { margin-top: 28px; justify-content: center; }
.ty-fine { max-width: 560px; text-align: left; justify-content: flex-start; align-items: flex-start; }
.hh-title { font-size: clamp(1.7rem, min(0.5rem + 4.4vw, 10.5svh), 5rem); }
@media (max-width: 900px) { .hh-title { font-size: clamp(1.7rem, 8.6vw, 4rem); } }
@media (max-width: 380px) { .hh-title { font-size: clamp(1.5rem, 8vw, 2rem); } }
