Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

1431 wiersze
24KB

  1. :root {
  2. --ink: #102637;
  3. --muted: #5d6c77;
  4. --navy: #052f4f;
  5. --navy-deep: #03243d;
  6. --blue: #0b5d86;
  7. --blue-light: #dff1f6;
  8. --gold: #f1bf24;
  9. --gold-dark: #c89500;
  10. --cream: #faf6eb;
  11. --paper: #fffdf8;
  12. --white: #ffffff;
  13. --coral: #ef7257;
  14. --line: #dfe4e6;
  15. --shadow: 0 24px 70px rgba(6, 47, 79, 0.14);
  16. --radius-sm: 12px;
  17. --radius-md: 22px;
  18. --radius-lg: 34px;
  19. --shell: 1180px;
  20. --font-display: "Manrope", "Segoe UI", sans-serif;
  21. --font-body: "DM Sans", "Segoe UI", sans-serif;
  22. }
  23. *,
  24. *::before,
  25. *::after {
  26. box-sizing: border-box;
  27. }
  28. html {
  29. scroll-behavior: smooth;
  30. }
  31. body {
  32. margin: 0;
  33. overflow-x: clip;
  34. background: var(--paper);
  35. color: var(--ink);
  36. font-family: var(--font-body);
  37. font-size: 16px;
  38. line-height: 1.65;
  39. -webkit-font-smoothing: antialiased;
  40. }
  41. img {
  42. display: block;
  43. max-width: 100%;
  44. }
  45. a {
  46. color: inherit;
  47. }
  48. button,
  49. a,
  50. summary {
  51. -webkit-tap-highlight-color: transparent;
  52. }
  53. :focus-visible {
  54. outline: 3px solid var(--gold);
  55. outline-offset: 4px;
  56. }
  57. .skip-link {
  58. position: fixed;
  59. z-index: 1000;
  60. top: 12px;
  61. left: 12px;
  62. padding: 10px 16px;
  63. border-radius: 8px;
  64. background: var(--white);
  65. color: var(--navy);
  66. font-weight: 700;
  67. transform: translateY(-150%);
  68. transition: transform 160ms ease;
  69. }
  70. .skip-link:focus {
  71. transform: translateY(0);
  72. }
  73. .shell {
  74. width: min(var(--shell), calc(100% - 40px));
  75. margin-inline: auto;
  76. }
  77. .site-header {
  78. position: sticky;
  79. z-index: 50;
  80. top: 0;
  81. border-bottom: 1px solid rgba(5, 47, 79, 0.1);
  82. background: rgba(255, 253, 248, 0.94);
  83. backdrop-filter: blur(14px);
  84. }
  85. .nav-shell {
  86. min-height: 82px;
  87. display: grid;
  88. grid-template-columns: minmax(180px, 235px) 1fr auto;
  89. align-items: center;
  90. gap: 30px;
  91. }
  92. .brand {
  93. display: block;
  94. width: 217px;
  95. }
  96. .brand img,
  97. .footer-brand img,
  98. .postcard-feature img {
  99. width: auto;
  100. max-width: none;
  101. height: auto;
  102. }
  103. .site-nav {
  104. display: flex;
  105. justify-content: center;
  106. gap: clamp(18px, 2.5vw, 34px);
  107. }
  108. .site-nav a,
  109. .site-footer nav a {
  110. position: relative;
  111. color: #334b5c;
  112. font-size: 0.9rem;
  113. font-weight: 700;
  114. text-decoration: none;
  115. }
  116. .site-nav a::after,
  117. .site-footer nav a::after {
  118. position: absolute;
  119. right: 0;
  120. bottom: -7px;
  121. left: 0;
  122. height: 2px;
  123. background: var(--gold-dark);
  124. content: "";
  125. transform: scaleX(0);
  126. transform-origin: left;
  127. transition: transform 180ms ease;
  128. }
  129. .site-nav a:hover::after,
  130. .site-footer nav a:hover::after {
  131. transform: scaleX(1);
  132. }
  133. .button {
  134. min-height: 52px;
  135. display: inline-flex;
  136. align-items: center;
  137. justify-content: center;
  138. gap: 10px;
  139. padding: 13px 22px;
  140. border: 1px solid transparent;
  141. border-radius: 999px;
  142. font-family: var(--font-display);
  143. font-size: 0.94rem;
  144. font-weight: 800;
  145. line-height: 1.2;
  146. text-align: center;
  147. text-decoration: none;
  148. transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
  149. }
  150. .button:hover {
  151. transform: translateY(-2px);
  152. }
  153. .button-small {
  154. min-height: 44px;
  155. padding: 10px 18px;
  156. font-size: 0.85rem;
  157. }
  158. .button-primary {
  159. background: var(--navy);
  160. box-shadow: 0 10px 25px rgba(5, 47, 79, 0.2);
  161. color: var(--white);
  162. }
  163. .button-primary:hover {
  164. background: #084368;
  165. box-shadow: 0 14px 30px rgba(5, 47, 79, 0.25);
  166. }
  167. .button-quiet {
  168. border-color: rgba(5, 47, 79, 0.18);
  169. background: rgba(255, 255, 255, 0.72);
  170. color: var(--navy);
  171. }
  172. .button-quiet:hover {
  173. border-color: rgba(5, 47, 79, 0.34);
  174. background: var(--white);
  175. }
  176. .button-gold {
  177. background: var(--gold);
  178. box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
  179. color: var(--navy-deep);
  180. }
  181. .button-gold:hover {
  182. background: #ffd44a;
  183. }
  184. .hero {
  185. position: relative;
  186. isolation: isolate;
  187. min-height: 710px;
  188. overflow: hidden;
  189. background:
  190. linear-gradient(118deg, rgba(250, 246, 235, 0.84), rgba(255, 253, 248, 0.95)),
  191. radial-gradient(circle at 15% 20%, rgba(241, 191, 36, 0.17), transparent 34%);
  192. }
  193. .hero::before {
  194. position: absolute;
  195. z-index: -1;
  196. top: -35%;
  197. right: -13%;
  198. width: 55%;
  199. aspect-ratio: 1;
  200. border: 1px solid rgba(11, 93, 134, 0.08);
  201. border-radius: 50%;
  202. box-shadow: 0 0 0 80px rgba(11, 93, 134, 0.025), 0 0 0 160px rgba(11, 93, 134, 0.02);
  203. content: "";
  204. }
  205. .hero-grid {
  206. min-height: 710px;
  207. display: grid;
  208. grid-template-columns: minmax(0, 0.93fr) minmax(500px, 1.07fr);
  209. align-items: center;
  210. gap: clamp(38px, 6vw, 78px);
  211. padding-block: 74px 80px;
  212. }
  213. .hero-copy {
  214. position: relative;
  215. z-index: 2;
  216. }
  217. .eyebrow {
  218. margin: 0 0 20px;
  219. color: var(--blue);
  220. font-size: 0.76rem;
  221. font-weight: 800;
  222. letter-spacing: 0.14em;
  223. text-transform: uppercase;
  224. }
  225. .eyebrow span {
  226. width: 25px;
  227. height: 3px;
  228. display: inline-block;
  229. margin: 0 10px 3px 0;
  230. border-radius: 2px;
  231. background: var(--gold);
  232. }
  233. .hero h1,
  234. .section-heading h2,
  235. .value-copy h2,
  236. .offer-copy h2,
  237. .faq-intro h2,
  238. .cta-card h2 {
  239. margin: 0;
  240. color: var(--navy);
  241. font-family: var(--font-display);
  242. font-weight: 800;
  243. letter-spacing: -0.045em;
  244. line-height: 1.06;
  245. }
  246. .hero h1 {
  247. max-width: 700px;
  248. font-size: clamp(3rem, 5.6vw, 5.3rem);
  249. }
  250. .hero h1 em {
  251. color: var(--blue);
  252. font-style: normal;
  253. padding-inline: 0.03em;
  254. background: linear-gradient(transparent 83%, rgba(241, 191, 36, 0.58) 83% 94%, transparent 94%);
  255. -webkit-box-decoration-break: clone;
  256. box-decoration-break: clone;
  257. }
  258. .hero-lede {
  259. max-width: 640px;
  260. margin: 26px 0 0;
  261. color: #435967;
  262. font-size: clamp(1.05rem, 1.5vw, 1.2rem);
  263. line-height: 1.75;
  264. }
  265. .hero-actions {
  266. display: flex;
  267. flex-wrap: wrap;
  268. gap: 13px;
  269. margin-top: 34px;
  270. }
  271. .hero-points {
  272. display: flex;
  273. flex-wrap: wrap;
  274. gap: 12px 22px;
  275. margin: 29px 0 0;
  276. padding: 0;
  277. color: #45606f;
  278. font-size: 0.84rem;
  279. font-weight: 700;
  280. list-style: none;
  281. }
  282. .hero-points span {
  283. width: 21px;
  284. height: 21px;
  285. display: inline-grid;
  286. place-items: center;
  287. margin-right: 6px;
  288. border-radius: 50%;
  289. background: var(--blue-light);
  290. color: var(--blue);
  291. font-size: 0.72rem;
  292. }
  293. .postcard-stage {
  294. position: relative;
  295. min-height: 520px;
  296. display: grid;
  297. place-items: center;
  298. perspective: 1200px;
  299. }
  300. .postcard-shadow {
  301. position: absolute;
  302. right: 3%;
  303. bottom: 7%;
  304. width: 80%;
  305. height: 19%;
  306. border-radius: 50%;
  307. background: rgba(6, 31, 50, 0.24);
  308. filter: blur(30px);
  309. transform: rotate(-4deg);
  310. }
  311. .postcard {
  312. position: relative;
  313. width: min(100%, 610px);
  314. aspect-ratio: 12 / 9;
  315. overflow: hidden;
  316. border: 1px solid rgba(5, 47, 79, 0.12);
  317. border-radius: 18px;
  318. background: #fffef9;
  319. box-shadow: 0 34px 80px rgba(5, 47, 79, 0.22), 0 5px 15px rgba(5, 47, 79, 0.12);
  320. }
  321. .postcard-image {
  322. width: 100%;
  323. height: 100%;
  324. object-fit: cover;
  325. }
  326. .postcard::after {
  327. position: absolute;
  328. inset: 0;
  329. border-radius: inherit;
  330. background: linear-gradient(120deg, rgba(255, 255, 255, 0.35), transparent 25% 78%, rgba(5, 47, 79, 0.04));
  331. content: "";
  332. pointer-events: none;
  333. }
  334. .postcard-topline {
  335. display: flex;
  336. justify-content: space-between;
  337. margin-bottom: 10px;
  338. color: #60717d;
  339. font-size: clamp(0.52rem, 0.8vw, 0.68rem);
  340. font-weight: 800;
  341. letter-spacing: 0.14em;
  342. }
  343. .postcard-feature {
  344. min-height: 30%;
  345. display: grid;
  346. grid-template-columns: 187px 1fr;
  347. align-items: center;
  348. gap: 14px;
  349. padding: 10px 18px 13px;
  350. border-radius: 12px;
  351. background: linear-gradient(115deg, #f8edc8, #fff6d8 58%, #f8e8a7);
  352. }
  353. .postcard-feature strong {
  354. color: var(--navy);
  355. font-family: var(--font-display);
  356. font-size: clamp(0.8rem, 1.6vw, 1.3rem);
  357. line-height: 1.18;
  358. text-align: right;
  359. }
  360. .ad-grid {
  361. height: 49%;
  362. display: grid;
  363. grid-template-columns: repeat(3, 1fr);
  364. grid-template-rows: repeat(2, 1fr);
  365. gap: 8px;
  366. margin-top: 8px;
  367. }
  368. .ad-tile {
  369. min-width: 0;
  370. display: flex;
  371. flex-direction: column;
  372. justify-content: center;
  373. padding: clamp(8px, 1.4vw, 15px);
  374. border: 1px solid rgba(5, 47, 79, 0.11);
  375. border-radius: 9px;
  376. line-height: 1.18;
  377. }
  378. .ad-tile span {
  379. margin-bottom: 5px;
  380. font-size: clamp(0.42rem, 0.65vw, 0.59rem);
  381. font-weight: 800;
  382. letter-spacing: 0.1em;
  383. }
  384. .ad-tile strong {
  385. font-family: var(--font-display);
  386. font-size: clamp(0.64rem, 1vw, 0.9rem);
  387. }
  388. .tile-gold { background: #f5cf53; color: var(--navy-deep); }
  389. .tile-navy { background: var(--navy); color: var(--white); }
  390. .tile-cream { background: #f5f0df; color: var(--navy); }
  391. .tile-coral { background: #f38b73; color: #3c1b13; }
  392. .tile-blue { background: #d5edf3; color: var(--navy); }
  393. .tile-white { border: 2px dashed var(--gold-dark); background: var(--white); color: var(--navy); text-align: center; }
  394. .postcard-edge {
  395. margin-top: 8px;
  396. color: #6a7881;
  397. font-size: clamp(0.45rem, 0.75vw, 0.62rem);
  398. font-weight: 700;
  399. letter-spacing: 0.09em;
  400. text-align: center;
  401. text-transform: uppercase;
  402. }
  403. .stage-note {
  404. position: absolute;
  405. right: 0;
  406. bottom: 3px;
  407. max-width: 315px;
  408. display: flex;
  409. align-items: center;
  410. gap: 12px;
  411. padding: 13px 17px;
  412. border: 1px solid rgba(5, 47, 79, 0.1);
  413. border-radius: 13px;
  414. background: rgba(255, 255, 255, 0.95);
  415. box-shadow: 0 12px 34px rgba(5, 47, 79, 0.14);
  416. color: #3e5461;
  417. font-size: 0.77rem;
  418. font-weight: 700;
  419. line-height: 1.35;
  420. }
  421. .stage-note span {
  422. flex: 0 0 auto;
  423. width: 30px;
  424. height: 30px;
  425. display: grid;
  426. place-items: center;
  427. border-radius: 50%;
  428. background: var(--gold);
  429. color: var(--navy);
  430. font-size: 1rem;
  431. }
  432. .signal-strip {
  433. border-block: 1px solid rgba(5, 47, 79, 0.1);
  434. background: var(--white);
  435. }
  436. .signal-grid {
  437. display: grid;
  438. grid-template-columns: repeat(4, 1fr);
  439. padding-block: 28px;
  440. }
  441. .signal-grid div {
  442. min-width: 0;
  443. padding-inline: clamp(18px, 3vw, 36px);
  444. border-right: 1px solid var(--line);
  445. }
  446. .signal-grid div:first-child { padding-left: 0; }
  447. .signal-grid div:last-child { border-right: 0; }
  448. .signal-grid strong,
  449. .signal-grid span {
  450. display: block;
  451. }
  452. .signal-grid strong {
  453. color: var(--navy);
  454. font-family: var(--font-display);
  455. font-size: 1.16rem;
  456. font-weight: 800;
  457. }
  458. .signal-grid span {
  459. margin-top: 2px;
  460. color: var(--muted);
  461. font-size: 0.82rem;
  462. }
  463. .section {
  464. padding-block: clamp(82px, 10vw, 130px);
  465. }
  466. .section-light { background: var(--white); }
  467. .section-warm { background: var(--cream); }
  468. .section-heading {
  469. margin-bottom: 56px;
  470. }
  471. .section-heading h2,
  472. .value-copy h2,
  473. .offer-copy h2,
  474. .faq-intro h2,
  475. .cta-card h2 {
  476. font-size: clamp(2.25rem, 4.3vw, 4rem);
  477. }
  478. .section-heading > p:last-child,
  479. .heading-split > p,
  480. .value-copy > p,
  481. .offer-copy > p,
  482. .faq-intro > p {
  483. color: var(--muted);
  484. font-size: 1.05rem;
  485. }
  486. .heading-centered {
  487. max-width: 720px;
  488. margin-inline: auto;
  489. text-align: center;
  490. }
  491. .eyebrow-centered span {
  492. display: none;
  493. }
  494. .heading-centered > p:last-child {
  495. max-width: 620px;
  496. margin: 20px auto 0;
  497. }
  498. .steps {
  499. position: relative;
  500. display: grid;
  501. grid-template-columns: repeat(4, 1fr);
  502. gap: 18px;
  503. margin: 0;
  504. padding: 0;
  505. list-style: none;
  506. }
  507. .steps::before {
  508. position: absolute;
  509. top: 57px;
  510. right: 8%;
  511. left: 8%;
  512. height: 1px;
  513. background: repeating-linear-gradient(90deg, var(--line) 0 8px, transparent 8px 16px);
  514. content: "";
  515. }
  516. .steps li {
  517. position: relative;
  518. z-index: 1;
  519. padding: 28px;
  520. border: 1px solid var(--line);
  521. border-radius: var(--radius-md);
  522. background: var(--paper);
  523. transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
  524. }
  525. .steps li:hover {
  526. border-color: rgba(11, 93, 134, 0.35);
  527. box-shadow: 0 18px 45px rgba(5, 47, 79, 0.1);
  528. transform: translateY(-5px);
  529. }
  530. .step-number {
  531. position: absolute;
  532. top: 20px;
  533. right: 22px;
  534. color: #a1acb3;
  535. font-family: var(--font-display);
  536. font-size: 0.76rem;
  537. font-weight: 800;
  538. }
  539. .step-icon {
  540. width: 56px;
  541. height: 56px;
  542. display: grid;
  543. place-items: center;
  544. margin-bottom: 28px;
  545. border-radius: 16px;
  546. background: var(--blue-light);
  547. color: var(--blue);
  548. font-family: var(--font-display);
  549. font-size: 1.6rem;
  550. font-weight: 800;
  551. }
  552. .steps li:nth-child(even) .step-icon {
  553. background: #fff0bd;
  554. color: #886600;
  555. }
  556. .steps h3,
  557. .benefit-list h3,
  558. .fit-card h3 {
  559. margin: 0;
  560. color: var(--navy);
  561. font-family: var(--font-display);
  562. font-size: 1.15rem;
  563. font-weight: 800;
  564. }
  565. .steps p,
  566. .benefit-list p,
  567. .fit-card p {
  568. margin: 10px 0 0;
  569. color: var(--muted);
  570. font-size: 0.92rem;
  571. }
  572. .section-navy {
  573. position: relative;
  574. overflow: hidden;
  575. background: var(--navy-deep);
  576. color: var(--white);
  577. }
  578. .section-navy::before {
  579. position: absolute;
  580. top: -240px;
  581. left: -190px;
  582. width: 520px;
  583. height: 520px;
  584. border: 90px solid rgba(241, 191, 36, 0.055);
  585. border-radius: 50%;
  586. content: "";
  587. }
  588. .value-grid {
  589. position: relative;
  590. display: grid;
  591. grid-template-columns: minmax(0, 0.84fr) minmax(440px, 1.16fr);
  592. gap: clamp(60px, 9vw, 120px);
  593. }
  594. .eyebrow-on-dark { color: #f9d86e; }
  595. .value-copy h2,
  596. .cta-card h2 {
  597. color: var(--white);
  598. }
  599. .value-copy > p {
  600. margin: 25px 0 0;
  601. color: #c6d2d9;
  602. }
  603. .text-link {
  604. display: inline-flex;
  605. gap: 10px;
  606. margin-top: 32px;
  607. color: #f9d86e;
  608. font-weight: 800;
  609. text-decoration: none;
  610. }
  611. .text-link:hover span {
  612. transform: translateX(4px);
  613. }
  614. .text-link span {
  615. transition: transform 180ms ease;
  616. }
  617. .benefit-list {
  618. display: grid;
  619. gap: 0;
  620. }
  621. .benefit-list article {
  622. display: grid;
  623. grid-template-columns: 48px 1fr;
  624. gap: 22px;
  625. padding-block: 25px;
  626. border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  627. }
  628. .benefit-list article:first-child { padding-top: 0; }
  629. .benefit-list article:last-child { padding-bottom: 0; border-bottom: 0; }
  630. .benefit-mark {
  631. width: 42px;
  632. height: 42px;
  633. display: grid;
  634. place-items: center;
  635. border: 1px solid rgba(241, 191, 36, 0.42);
  636. border-radius: 50%;
  637. color: #f9d86e;
  638. font-family: var(--font-display);
  639. font-size: 0.75rem;
  640. font-weight: 800;
  641. }
  642. .benefit-list h3 { color: var(--white); }
  643. .benefit-list p { color: #b9c8d1; }
  644. .heading-split {
  645. display: grid;
  646. grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
  647. align-items: end;
  648. gap: 70px;
  649. }
  650. .heading-split > p {
  651. margin: 0 0 8px;
  652. }
  653. .fit-grid {
  654. display: grid;
  655. grid-template-columns: repeat(4, 1fr);
  656. gap: 16px;
  657. }
  658. .fit-card {
  659. min-height: 270px;
  660. padding: 30px;
  661. border: 1px solid rgba(5, 47, 79, 0.1);
  662. border-radius: var(--radius-md);
  663. background: rgba(255, 255, 255, 0.7);
  664. transition: background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
  665. }
  666. .fit-card:hover {
  667. background: var(--white);
  668. box-shadow: 0 20px 50px rgba(5, 47, 79, 0.1);
  669. transform: translateY(-5px);
  670. }
  671. .fit-icon {
  672. width: 64px;
  673. height: 64px;
  674. display: grid;
  675. place-items: center;
  676. margin-bottom: 40px;
  677. border-radius: 20px;
  678. background: var(--navy);
  679. color: var(--gold);
  680. font-size: 1.85rem;
  681. }
  682. .offer-section {
  683. background: var(--white);
  684. }
  685. .offer-grid {
  686. display: grid;
  687. grid-template-columns: minmax(350px, 0.85fr) minmax(0, 1.15fr);
  688. align-items: center;
  689. gap: clamp(60px, 9vw, 125px);
  690. }
  691. .offer-card {
  692. position: relative;
  693. max-width: 485px;
  694. min-height: 520px;
  695. overflow: hidden;
  696. padding: clamp(34px, 5vw, 58px);
  697. border-radius: 8px;
  698. background:
  699. linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
  700. linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
  701. var(--navy);
  702. background-size: 20px 20px;
  703. box-shadow: var(--shadow);
  704. color: var(--white);
  705. transform: rotate(-2.5deg);
  706. }
  707. .offer-card::after {
  708. position: absolute;
  709. right: -90px;
  710. bottom: -90px;
  711. width: 260px;
  712. height: 260px;
  713. border: 38px solid rgba(241, 191, 36, 0.16);
  714. border-radius: 50%;
  715. content: "";
  716. }
  717. .offer-stamp {
  718. position: absolute;
  719. top: 30px;
  720. right: 30px;
  721. width: 82px;
  722. height: 82px;
  723. display: grid;
  724. place-items: center;
  725. border: 2px dashed var(--gold);
  726. border-radius: 8px;
  727. color: var(--gold);
  728. font-family: var(--font-display);
  729. font-size: 0.7rem;
  730. font-weight: 800;
  731. letter-spacing: 0.1em;
  732. line-height: 1.2;
  733. text-align: center;
  734. }
  735. .offer-kicker {
  736. margin: 0 0 44px;
  737. color: #f9d86e;
  738. font-size: 0.72rem;
  739. font-weight: 800;
  740. letter-spacing: 0.16em;
  741. }
  742. .offer-headline {
  743. max-width: 330px;
  744. margin: 0;
  745. font-family: var(--font-display);
  746. font-size: clamp(2.2rem, 4vw, 3.5rem);
  747. font-weight: 800;
  748. letter-spacing: -0.045em;
  749. line-height: 1.02;
  750. }
  751. .offer-coupon {
  752. position: relative;
  753. z-index: 1;
  754. display: inline-flex;
  755. flex-direction: column;
  756. margin-top: 46px;
  757. padding: 16px 23px;
  758. border-radius: 12px;
  759. background: var(--gold);
  760. color: var(--navy-deep);
  761. transform: rotate(1.5deg);
  762. }
  763. .offer-coupon strong {
  764. font-family: var(--font-display);
  765. font-size: 1.75rem;
  766. line-height: 1;
  767. }
  768. .offer-coupon span {
  769. margin-top: 4px;
  770. font-size: 0.75rem;
  771. font-weight: 700;
  772. text-transform: uppercase;
  773. }
  774. .offer-url {
  775. position: absolute;
  776. right: 44px;
  777. bottom: 35px;
  778. left: 44px;
  779. padding-top: 15px;
  780. border-top: 1px solid rgba(255, 255, 255, 0.25);
  781. font-size: 0.72rem;
  782. font-weight: 800;
  783. letter-spacing: 0.12em;
  784. }
  785. .offer-copy > p {
  786. max-width: 600px;
  787. margin: 24px 0 0;
  788. }
  789. .check-list {
  790. display: grid;
  791. gap: 19px;
  792. margin: 34px 0 0;
  793. padding: 0;
  794. list-style: none;
  795. }
  796. .check-list li {
  797. display: grid;
  798. grid-template-columns: 38px 1fr;
  799. align-items: start;
  800. gap: 15px;
  801. }
  802. .check-list li > span {
  803. width: 34px;
  804. height: 34px;
  805. display: grid;
  806. place-items: center;
  807. border-radius: 50%;
  808. background: #e1f2ec;
  809. color: #19714e;
  810. font-weight: 800;
  811. }
  812. .check-list strong,
  813. .check-list small {
  814. display: block;
  815. }
  816. .check-list strong {
  817. color: var(--navy);
  818. font-family: var(--font-display);
  819. font-weight: 800;
  820. }
  821. .check-list small {
  822. margin-top: 2px;
  823. color: var(--muted);
  824. font-size: 0.89rem;
  825. }
  826. .faq-grid {
  827. display: grid;
  828. grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
  829. gap: clamp(60px, 9vw, 125px);
  830. }
  831. .faq-intro {
  832. align-self: start;
  833. position: sticky;
  834. top: 125px;
  835. }
  836. .faq-intro > p {
  837. margin: 24px 0 0;
  838. }
  839. .faq-list {
  840. border-top: 1px solid var(--line);
  841. }
  842. .faq-list details {
  843. border-bottom: 1px solid var(--line);
  844. }
  845. .faq-list summary {
  846. display: grid;
  847. grid-template-columns: 1fr 32px;
  848. align-items: center;
  849. gap: 18px;
  850. padding-block: 24px;
  851. color: var(--navy);
  852. cursor: pointer;
  853. font-family: var(--font-display);
  854. font-size: 1.05rem;
  855. font-weight: 800;
  856. list-style: none;
  857. }
  858. .faq-list summary::-webkit-details-marker {
  859. display: none;
  860. }
  861. .faq-list summary span {
  862. width: 30px;
  863. height: 30px;
  864. display: grid;
  865. place-items: center;
  866. border: 1px solid var(--line);
  867. border-radius: 50%;
  868. color: var(--blue);
  869. font-size: 1.15rem;
  870. transition: transform 180ms ease, background-color 180ms ease;
  871. }
  872. .faq-list details[open] summary span {
  873. background: var(--blue-light);
  874. transform: rotate(45deg);
  875. }
  876. .faq-list details p {
  877. max-width: 680px;
  878. margin: -5px 55px 25px 0;
  879. color: var(--muted);
  880. }
  881. .cta-section {
  882. padding: 30px 0 110px;
  883. background: var(--white);
  884. }
  885. .cta-card {
  886. position: relative;
  887. isolation: isolate;
  888. min-height: 365px;
  889. display: grid;
  890. grid-template-columns: minmax(0, 1fr) auto;
  891. align-items: center;
  892. gap: 55px;
  893. overflow: hidden;
  894. padding: clamp(45px, 7vw, 85px);
  895. border-radius: var(--radius-lg);
  896. background: var(--navy);
  897. box-shadow: 0 30px 70px rgba(5, 47, 79, 0.24);
  898. color: var(--white);
  899. }
  900. .cta-card > div:not(.cta-rings) {
  901. position: relative;
  902. z-index: 1;
  903. }
  904. .cta-card h2 {
  905. max-width: 750px;
  906. }
  907. .cta-card p:not(.eyebrow) {
  908. max-width: 650px;
  909. margin: 20px 0 0;
  910. color: #c9d6dd;
  911. font-size: 1.03rem;
  912. }
  913. .cta-actions {
  914. min-width: 245px;
  915. display: grid;
  916. justify-items: center;
  917. gap: 13px;
  918. }
  919. .cta-actions span {
  920. color: #b7c8d1;
  921. font-size: 0.75rem;
  922. }
  923. .cta-rings {
  924. position: absolute;
  925. z-index: 0;
  926. top: -170px;
  927. right: -80px;
  928. width: 520px;
  929. height: 520px;
  930. border: 75px solid rgba(241, 191, 36, 0.08);
  931. border-radius: 50%;
  932. box-shadow: 0 0 0 75px rgba(241, 191, 36, 0.035);
  933. }
  934. .site-footer {
  935. padding-block: 42px;
  936. border-top: 1px solid var(--line);
  937. background: var(--paper);
  938. }
  939. .footer-grid {
  940. display: grid;
  941. grid-template-columns: 190px 1fr auto;
  942. align-items: center;
  943. gap: 28px;
  944. }
  945. .footer-brand {
  946. width: 187px;
  947. }
  948. .site-footer p {
  949. margin: 0;
  950. color: var(--muted);
  951. font-size: 0.88rem;
  952. }
  953. .site-footer nav {
  954. display: flex;
  955. gap: 25px;
  956. }
  957. .site-footer small {
  958. grid-column: 1 / -1;
  959. padding-top: 22px;
  960. border-top: 1px solid var(--line);
  961. color: #77838b;
  962. font-size: 0.73rem;
  963. }
  964. @media (max-width: 1080px) {
  965. .nav-shell {
  966. grid-template-columns: 217px 1fr auto;
  967. gap: 18px;
  968. }
  969. .site-nav {
  970. gap: 16px;
  971. }
  972. .site-nav a {
  973. font-size: 0.8rem;
  974. }
  975. .hero-grid {
  976. grid-template-columns: minmax(0, 0.92fr) minmax(410px, 1.08fr);
  977. gap: 30px;
  978. }
  979. .steps,
  980. .fit-grid {
  981. grid-template-columns: repeat(2, 1fr);
  982. }
  983. .steps::before {
  984. display: none;
  985. }
  986. .cta-card {
  987. grid-template-columns: 1fr;
  988. }
  989. .cta-actions {
  990. justify-items: start;
  991. }
  992. }
  993. @media (max-width: 840px) {
  994. .site-header {
  995. position: relative;
  996. }
  997. .nav-shell {
  998. min-height: auto;
  999. grid-template-columns: 1fr auto;
  1000. padding-block: 15px;
  1001. }
  1002. .brand {
  1003. width: 217px;
  1004. }
  1005. .site-nav {
  1006. grid-column: 1 / -1;
  1007. grid-row: 2;
  1008. justify-content: flex-start;
  1009. overflow-x: auto;
  1010. padding: 5px 0 2px;
  1011. scrollbar-width: none;
  1012. }
  1013. .site-nav::-webkit-scrollbar { display: none; }
  1014. .site-nav a { white-space: nowrap; }
  1015. .hero-grid {
  1016. grid-template-columns: 1fr;
  1017. padding-block: 65px 75px;
  1018. }
  1019. .postcard-stage {
  1020. min-height: 475px;
  1021. }
  1022. .postcard {
  1023. width: min(92%, 610px);
  1024. }
  1025. .stage-note {
  1026. right: 2%;
  1027. }
  1028. .signal-grid {
  1029. grid-template-columns: repeat(2, 1fr);
  1030. row-gap: 24px;
  1031. }
  1032. .signal-grid div:nth-child(2) { border-right: 0; }
  1033. .signal-grid div:nth-child(3) { padding-left: 0; }
  1034. .value-grid,
  1035. .offer-grid,
  1036. .faq-grid,
  1037. .heading-split {
  1038. grid-template-columns: 1fr;
  1039. }
  1040. .value-grid,
  1041. .offer-grid,
  1042. .faq-grid {
  1043. gap: 62px;
  1044. }
  1045. .heading-split {
  1046. gap: 22px;
  1047. }
  1048. .offer-card {
  1049. justify-self: center;
  1050. width: min(100%, 485px);
  1051. }
  1052. .faq-intro {
  1053. position: static;
  1054. }
  1055. .footer-grid {
  1056. grid-template-columns: 1fr auto;
  1057. }
  1058. .site-footer p {
  1059. display: none;
  1060. }
  1061. }
  1062. @media (max-width: 600px) {
  1063. .shell {
  1064. width: min(calc(100% - 28px), var(--shell));
  1065. }
  1066. .nav-shell > .button {
  1067. min-height: 40px;
  1068. padding: 9px 13px;
  1069. font-size: 0.75rem;
  1070. }
  1071. .hero {
  1072. min-height: auto;
  1073. }
  1074. .hero-grid {
  1075. min-height: auto;
  1076. padding-block: 55px 62px;
  1077. }
  1078. .hero h1 {
  1079. font-size: clamp(2.65rem, 13vw, 4rem);
  1080. }
  1081. .hero-actions {
  1082. display: grid;
  1083. }
  1084. .hero-actions .button {
  1085. width: 100%;
  1086. }
  1087. .hero-points {
  1088. display: grid;
  1089. }
  1090. .postcard-stage {
  1091. min-height: 365px;
  1092. }
  1093. .postcard {
  1094. width: 100%;
  1095. border-radius: 12px;
  1096. }
  1097. .postcard-feature {
  1098. grid-template-columns: 187px 1fr;
  1099. padding: 8px 10px;
  1100. }
  1101. .ad-grid {
  1102. gap: 5px;
  1103. margin-top: 5px;
  1104. }
  1105. .ad-tile {
  1106. padding: 6px;
  1107. border-radius: 5px;
  1108. }
  1109. .stage-note {
  1110. right: 8px;
  1111. bottom: -8px;
  1112. max-width: 260px;
  1113. padding: 10px 12px;
  1114. font-size: 0.68rem;
  1115. }
  1116. .stage-note span {
  1117. width: 25px;
  1118. height: 25px;
  1119. }
  1120. .signal-grid {
  1121. padding-block: 23px;
  1122. }
  1123. .signal-grid div {
  1124. padding-inline: 14px;
  1125. }
  1126. .signal-grid strong {
  1127. font-size: 1rem;
  1128. }
  1129. .signal-grid span {
  1130. font-size: 0.74rem;
  1131. }
  1132. .section {
  1133. padding-block: 76px;
  1134. }
  1135. .section-heading {
  1136. margin-bottom: 38px;
  1137. }
  1138. .section-heading h2,
  1139. .value-copy h2,
  1140. .offer-copy h2,
  1141. .faq-intro h2,
  1142. .cta-card h2 {
  1143. font-size: clamp(2.05rem, 10vw, 3rem);
  1144. }
  1145. .steps,
  1146. .fit-grid {
  1147. grid-template-columns: 1fr;
  1148. }
  1149. .steps li,
  1150. .fit-card {
  1151. min-height: auto;
  1152. padding: 25px;
  1153. }
  1154. .fit-icon {
  1155. margin-bottom: 26px;
  1156. }
  1157. .benefit-list article {
  1158. grid-template-columns: 40px 1fr;
  1159. gap: 15px;
  1160. }
  1161. .benefit-mark {
  1162. width: 36px;
  1163. height: 36px;
  1164. }
  1165. .offer-card {
  1166. min-height: 450px;
  1167. padding: 35px 28px;
  1168. }
  1169. .offer-stamp {
  1170. top: 22px;
  1171. right: 22px;
  1172. width: 70px;
  1173. height: 70px;
  1174. }
  1175. .offer-headline {
  1176. max-width: 260px;
  1177. }
  1178. .offer-url {
  1179. right: 28px;
  1180. left: 28px;
  1181. }
  1182. .faq-list summary {
  1183. font-size: 0.96rem;
  1184. }
  1185. .faq-list details p {
  1186. margin-right: 0;
  1187. }
  1188. .cta-section {
  1189. padding-bottom: 70px;
  1190. }
  1191. .cta-card {
  1192. min-height: auto;
  1193. gap: 35px;
  1194. padding: 42px 27px;
  1195. border-radius: 24px;
  1196. }
  1197. .cta-actions,
  1198. .cta-actions .button {
  1199. width: 100%;
  1200. }
  1201. .footer-grid {
  1202. grid-template-columns: 1fr;
  1203. }
  1204. .site-footer nav {
  1205. flex-wrap: wrap;
  1206. }
  1207. }
  1208. @media (max-width: 380px) {
  1209. .nav-shell > .button {
  1210. display: none;
  1211. }
  1212. }
  1213. @media (prefers-reduced-motion: reduce) {
  1214. html { scroll-behavior: auto; }
  1215. *,
  1216. *::before,
  1217. *::after {
  1218. scroll-behavior: auto !important;
  1219. transition-duration: 0.01ms !important;
  1220. }
  1221. }

Powered by TurnKey Linux.