
.p2-landing {
  /* Breakpoints and cqw values follow the space provided by the WordPress theme. */
  container: p2-landing / inline-size;
  --p2-ink: #20355c;
  --p2-accent: #3d60a1;
  --p2-blue-dark: #2d477b;
  --p2-text: #415474;
  --p2-muted: #5f6c82;
  --p2-border: #c7d0e1;
  --p2-light: #edf1f9;
  --p2-lemon: #f2f6ce;
  --p2-white: #fff;
  --p2-disabled-text: #75808e;
  --p2-disabled-border: #d9dfe7;
  --p2-disabled-background: #f1f3f6;
  --p2-disabled-badge: #e4e7ec;
  --p2-form-width: 608px;
  --p2-question-gap: 12px;
  margin: 0;
  color: var(--p2-ink);
  background: var(--p2-white);
  font: 400 16px/24px "Roboto", Arial, sans-serif;
  font-synthesis: none;
  text-align: left;
}
.p2-landing *, .p2-landing *::before, .p2-landing *::after { box-sizing: border-box; }
.p2-landing :where(h1, h2, h3, h4, p, ul, ol, dl, dd, fieldset) { margin: 0; }
/* Set typography on the elements themselves: theme rules override inherited values. */
.p2-landing :is(h1, h2, h3, h4, p, legend, label) { font-family: inherit; color: inherit; letter-spacing: normal; text-transform: none; }
.p2-landing :where(ul, ol, fieldset) { padding: 0; }
.p2-landing :where(fieldset) { min-width: 0; border: 0; }
.p2-landing legend { display: block; float: none; width: auto; max-width: 100%; margin: 0; padding: 0; font-size: inherit; line-height: inherit; }
.p2-landing label { margin: 0; }
.p2-landing :where(button, input, select) { font: inherit; color: inherit; }
.p2-landing :where(img) { display: block; }
.p2-landing :where(a, button, input, select):focus-visible { outline: 3px solid var(--p2-accent); outline-offset: 3px; }
.p2-landing :where(.p2-landing__situations-title, .p2-landing__section-title, .p2-landing__step-title, .p2-landing__tariff-name, .p2-landing__tariff-label) { display: block; }
.p2-landing .p2-landing__hero { background: var(--p2-white); }
.p2-landing .p2-landing__hero-intro { position: relative; padding: 24px 16px; }
.p2-landing .p2-landing__hero-art { position: absolute; width: 164px; height: 239.891px; overflow: hidden; pointer-events: none; }
.p2-landing .p2-landing__hero-art img { position: absolute; width: auto; height: 100%; max-width: none; left: 1.642px; top: 0; content: url('../assets/svg/hero-background-mobile.svg'); }
.p2-landing .p2-landing__hero-copy { position: relative; }
.p2-landing h1 { font-size: 32px; line-height: 36px; font-weight: 700; }
.p2-landing .p2-landing__hero-subtitle { color: var(--p2-accent); font-size: 27px; line-height: 36px; font-weight: 700; }
.p2-landing .p2-landing__hero-description { display: grid; gap: 18px; margin-top: 16px; color: var(--p2-text); line-height: 23px; }
.p2-landing .p2-landing__situations { margin-top: 28px; width: 239px; }
.p2-landing .p2-landing__situations-title { margin-bottom: 12px; font-size: 18px; line-height: 24px; font-weight: 700; }
.p2-landing .p2-landing__situations ul { display: grid; gap: 12px; list-style: none; }
.p2-landing .p2-landing__situations li { display: flex; align-items: flex-start; gap: 8px; color: var(--p2-text); line-height: 23px; }
.p2-landing .p2-landing__situations li > img { width: 20px; height: 20px; flex: none; margin-top: 1.5px; }
.p2-landing .p2-landing__situations li span { max-width: 211px; }
.p2-landing .p2-landing__situations li:nth-child(n+3) span { max-width: 175px; }
.p2-landing .p2-landing__trust-container { position: relative; container: p2-trust / inline-size; margin-top: 45px; }
.p2-landing .p2-landing__trust { position: relative; display: grid; grid-template-columns: max-content max-content; align-items: start; justify-content: center; gap: 14px 12px; list-style: none; margin: 0; font-size: 14px; line-height: 20px; }
.p2-landing .p2-landing__trust li { display: flex; align-items: center; gap: 8px; min-height: 24px; }
.p2-landing .p2-landing__trust li:first-child { border-right: 1px solid var(--p2-border); padding-right: 12px; }
.p2-landing .p2-landing__trust li:first-child > span { min-width: 156px; }
.p2-landing .p2-landing__trust li:last-child { grid-column: 1 / -1; width: auto; justify-content: center; gap: 10px; }
.p2-landing .p2-landing__trust img { width: 20px; height: 20px; flex: none; }
.p2-landing .p2-landing__trust li:first-child img { width: 19px; height: 19px; }
.p2-landing .p2-landing__trust strong { font-weight: inherit; }
.p2-landing .p2-landing__trust li:nth-child(2) > span { min-width: 107px; font-weight: 600; }
.p2-landing .p2-landing__trust li:last-child > span { min-width: 200px; }
.p2-landing .p2-landing__google { color: inherit; }
.p2-landing .p2-landing__form-area { padding: 10px 8px 24px; background: #f7f9fa; }
.p2-landing .simple-order-hero-form { border-radius: 8px; background: var(--p2-white); box-shadow: inset 0 0 0 1px var(--p2-border), 0 8px 24px #0b154514; }
.p2-landing .p2-landing__form-title { display: block; padding: 12px 24px; border-radius: 7px 7px 0 0; background: var(--p2-light); color: var(--p2-blue-dark); font-size: 18px; line-height: 24px; font-weight: 700; overflow-wrap: anywhere; box-shadow: inset 0 0 0 1px var(--p2-border); }
.p2-landing .p2so { display: grid; gap: var(--p2-question-gap); padding: 20px 24px; color: var(--p2-text); }
.p2-landing .p2so [hidden] { display: none !important; }
.p2-landing .p2-landing__modal { position: fixed; inset: var(--p2-modal-top, 0px) 0 auto; width: 100%; max-width: none; height: var(--p2-modal-height, 100dvh); max-height: none; margin: 0; border: 0; padding: max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)); overflow-y: auto; overscroll-behavior: contain; background: #20355cb3; color: var(--p2-text); }
.p2-landing .p2-landing__modal[open] { display: flex; flex-direction: column; align-items: center; }
.p2-landing .p2-landing__modal::backdrop { background: #20355c66; }
.p2-landing .p2-landing__modal-card { position: relative; flex: none; width: min(var(--p2-form-width), 100%); margin-block: auto; }
.p2-landing .p2-landing__modal-controls { position: sticky; top: 0; z-index: 1; height: 0; }
.p2-landing .p2-landing__modal-close { position: absolute; top: 8px; right: 8px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--p2-border); border-radius: 6px; background: var(--p2-white); color: var(--p2-blue-dark); cursor: pointer; }
.p2-landing .p2-landing__modal-close:hover { background: var(--p2-light); }
.p2-landing .p2-landing__modal .p2-landing__form-title { padding-right: 64px; }
.p2-landing .p2-landing__modal :where(input, select, button) { scroll-margin-block: 24px; }
.p2-landing .p2-landing__modal input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]) { font-size: 16px; }
.p2-landing .p2-landing__questions { display: grid; gap: var(--p2-question-gap); }
.p2-landing .p2-landing__facts { display: contents; }
.p2-landing .p2so-field { display: grid; gap: 8px; min-width: 0; }
.p2-landing .p2so-field > label { font-weight: 500; }
.p2-landing .p2-landing__children > label, .p2-landing legend { font-weight: 600; }
.p2-landing .p2-landing__children { gap: 16px; }
.p2-landing .p2so :where(input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]), select) { width: 100%; min-width: 0; height: 44px; padding: 11px 12px; border: 1px solid var(--p2-border); border-radius: 5px; background-color: var(--p2-white); font-size: 14px; line-height: 20px; }
.p2-landing .p2so input::placeholder { color: var(--p2-muted); opacity: 1; }
.p2-landing .p2so select { appearance: none; padding-block: 7px; padding-right: 36px; line-height: 24px; background-image: url("../assets/svg/chevron-down.svg"); background-repeat: no-repeat; background-position: right 12px center; background-size: 16px; font-size: 16px; }
.p2-landing .p2-landing__location-options { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 8px; }
.p2-landing .p2so-choice { display: flex; align-items: flex-start; gap: 8px; cursor: pointer; }
.p2-landing .p2-landing__location-options .p2so-choice { align-items: center; min-height: 40px; }
.p2-landing .p2so input[type="radio"] { appearance: none; flex: none; width: 18px; height: 18px; margin: 3px 0 0; border: 1.5px solid #899cbd; border-radius: 50%; background: var(--p2-white); }
.p2-landing .p2-landing__location-options input[type="radio"] { margin-top: 0; }
.p2-landing .p2-landing__choice-options { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 8px; }
.p2-landing .p2-landing__choice-options .p2so-choice { align-items: center; min-height: 40px; }
.p2-landing .p2-landing__choice-options input[type="radio"] { margin-top: 0; }
.p2-landing .p2so input[type="checkbox"] { appearance: none; flex: none; width: 18px; height: 18px; margin: 0; padding: 0; border: 1.5px solid var(--p2-accent); border-radius: 4px; background: var(--p2-white); }
.p2-landing .p2so input[type="checkbox"]:checked { background-color: var(--p2-accent); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-position: center; background-repeat: no-repeat; background-size: 14px; }
.p2-landing .p2so input[type="radio"]:checked { border-color: var(--p2-accent); background: radial-gradient(circle, var(--p2-accent) 0 4px, var(--p2-white) 4.1px); }
.p2-landing .p2-landing__service-options { display: grid; gap: 10px; margin-top: 8px; }
.p2-landing .p2-landing__service-choice { gap: 10px; padding: 11px; border: 1px solid var(--p2-border); border-radius: 6px; }
.p2-landing .p2-landing__service-choice:has(input:checked) { border-color: var(--p2-accent); box-shadow: inset 0 0 0 .5px var(--p2-accent); }
.p2-landing .p2-landing__service-choice:hover { border-color: var(--p2-accent); }
.p2-landing .p2-landing__choice-content { display: grid; gap: 8px; flex: 1; min-width: 0; }
.p2-landing .p2-landing__choice-summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 8px; align-items: start; }
.p2-landing .p2-landing__choice-title { display: contents; }
.p2-landing .p2-landing__choice-name, .p2-landing .p2-landing__choice-price { font-size: 16px; line-height: 24px; font-weight: 600; }
.p2-landing .p2-landing__choice-price { grid-column: 1 / -1; font-weight: 600; }
.p2-landing .p2-landing__choice-fee { grid-column: 1 / -1; font-size: 13px; line-height: 18px; }
.p2-landing .p2-landing__badge { grid-column: 2; grid-row: 1; min-width: 132px; border-radius: 5px; background: var(--p2-lemon); padding: 4px 10px; white-space: nowrap; color: var(--p2-blue-dark); font-size: 13px; line-height: 16px; font-weight: 400; }
.p2-landing .p2-landing__service-choice:nth-child(2) .p2-landing__badge { min-width: 145px; }
.p2-landing .p2-landing__choice-description { font-size: 15px; line-height: 22px; }
.p2-landing .p2-landing__service-later .p2-landing__choice-content { gap: 6px; }
.p2-landing .p2-landing__service-choice.is-disabled { color: var(--p2-disabled-text); background: var(--p2-disabled-background); border-color: var(--p2-disabled-border); box-shadow: none; cursor: not-allowed; }
.p2-landing .p2-landing__service-choice.is-disabled :where(.p2-landing__choice-name, .p2-landing__choice-price, .p2-landing__choice-fee, .p2-landing__badge, .p2-landing__choice-description) { color: inherit; }
.p2-landing .p2-landing__service-choice.is-disabled .p2-landing__badge { background: var(--p2-disabled-badge); }
.p2-landing .p2-landing__service-choice.is-disabled input[type="radio"] { border-color: var(--p2-disabled-text); background: var(--p2-disabled-background); }
.p2-landing .p2-landing__service-choice.is-disabled .p2-landing__choice-description { display: none; }
.p2-landing .p2-landing__service-notice { display: none; color: var(--p2-text); font-size: 14px; line-height: 20px; font-weight: 400; }
.p2-landing .p2-landing__service-choice.is-disabled .p2-landing__service-notice { display: block; }
/* Modal format visibility belongs to CSS; keep this fieldset free of [hidden]. */
.p2-landing .p2-landing__modal .p2so .p2-landing__service { display: none; }
.p2-landing .p2-landing__modal[data-p2-opening-service="standard"] .p2so:has(.p2-landing__service-choice.is-disabled input[name="service"][value="standard"]) .p2-landing__service { display: block; }
.p2-landing .p2-landing__modal .p2-landing__service-options { gap: 8px; }
.p2-landing .p2-landing__modal .p2-landing__service-choice { padding: 8px 10px; }
.p2-landing .p2-landing__modal .p2-landing__choice-content { gap: 6px; }
.p2-landing .p2-landing__modal .p2-landing__choice-summary { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; }
.p2-landing .p2-landing__modal .p2-landing__choice-title { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; min-width: 0; }
.p2-landing .p2-landing__modal .p2-landing__choice-price::before { content: none; }
.p2-landing .p2-landing__modal :where(.p2-landing__choice-description, .p2-landing__badge) { display: none; }
.p2-landing .p2-landing__contacts { display: grid; align-items: end; gap: var(--p2-question-gap); }
.p2-landing .p2-landing__form-action { display: grid; gap: 12px; }
.p2-landing .p2-landing__form-action .hf-messages:empty { display: none; }
.p2-landing .p2-landing__button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; padding: 12px 16px; border: 0; border-radius: 6px; background: var(--p2-accent); color: var(--p2-white); font-size: 16px; line-height: 24px; font-weight: 600; text-align: center; text-decoration: none; white-space: normal; overflow-wrap: anywhere; cursor: pointer; }
.p2-landing .p2-landing__button:hover { background: var(--p2-blue-dark); }
.p2-landing .p2-landing__privacy { color: var(--p2-muted); font-size: 12px; line-height: 18px; }
.p2-landing .p2so :where(input, select):user-invalid { border-color: #a32336; }
.p2-landing .simple-order-hero-form :where(.hf-message-warning, .hf-message-error, .hf-message-success) { margin: 0 24px 20px; padding: 12px; border: 1px solid currentColor; border-radius: 5px; background: var(--p2-white); font-size: 16px; line-height: 24px; overflow-wrap: anywhere; }
.p2-landing .simple-order-hero-form .hf-message-warning { color: #70500b; }
.p2-landing .simple-order-hero-form .hf-message-error { color: #a32336; }
.p2-landing .simple-order-hero-form .hf-message-success { color: #246044; }
.p2-landing .simple-order-hero-form .mc4wp-loading .p2-landing__button { opacity: .75; cursor: progress; }
.p2-landing .p2-landing__section { padding: 48px 24px 48px 16px; }
.p2-landing .p2-landing__container { width: 100%; max-width: 1180px; margin-inline: auto; }
.p2-landing .p2-landing__section-title { font-size: 26px; line-height: 34px; font-weight: 600; }
.p2-landing .p2-landing__section-lead { margin-top: 24px; line-height: 23px; }
.p2-landing .p2-landing__process { background: #edf2f8; }
.p2-landing .p2-landing__steps { display: grid; gap: 24px; margin-top: 24px; list-style: none; }
.p2-landing .p2-landing__steps li { position: relative; display: grid; grid-template-columns: 42.24px minmax(0, 1fr); column-gap: 16.1px; }
.p2-landing .p2-landing__step-number { position: relative; z-index: 1; display: grid; place-items: center; width: 42.24px; height: 42.24px; border: 1.5px solid var(--p2-light); border-radius: 50%; color: var(--p2-white); background: var(--p2-accent); font-size: 23px; line-height: 30px; font-weight: 600; }
.p2-landing .p2-landing__steps li:last-child .p2-landing__step-number { border: 0; color: var(--p2-ink); background: #e0ea72; }
.p2-landing .p2-landing__steps li:not(:last-child)::after { content: ""; position: absolute; left: 20.37px; top: 36px; width: 1.76px; height: calc(100% - 12px); background: var(--p2-border); }
.p2-landing .p2-landing__step-title { font-size: 18px; line-height: 25px; font-weight: 600; }
.p2-landing .p2-landing__steps p { margin-top: 8px; color: var(--p2-muted); line-height: 23px; }
.p2-landing .p2-landing__tariffs { padding-inline: 16px; }
.p2-landing .p2-landing__tariffs .p2-landing__section-lead { color: var(--p2-muted); }
.p2-landing .p2-landing__tariff-grid { display: grid; gap: 24px; margin-top: 24px; }
.p2-landing .p2-landing__tariff-card { display: flex; flex-direction: column; min-width: 0; border-radius: 12px; box-shadow: inset 0 0 0 1px var(--p2-border); }
.p2-landing .p2-landing__tariff-header { position: relative; padding: 24px 16px; border-radius: 12px 12px 0 0; background: var(--p2-light); }
.p2-landing .p2-landing__tariff-heading { position: relative; display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding-right: 30px; }
.p2-landing .p2-landing__tariff-name { color: var(--p2-accent); font-size: 24px; line-height: 32px; font-weight: 600; }
.p2-landing .p2-landing__tariff-badge { border-radius: 6px; padding: 4px 6px; background: #e6eea2; color: var(--p2-text); font-size: 12px; line-height: 16px; white-space: nowrap; }
.p2-landing .p2-landing__tariff-header > p { position: relative; margin-top: 12px; font-size: 18px; line-height: 25px; font-weight: 600; }
.p2-landing .p2-landing__tariff-art { position: absolute; top: 16px; right: 16px; width: 56px; height: auto; opacity: .7; }
.p2-landing .p2-landing__tariff-card--turnkey .p2-landing__tariff-header { color: var(--p2-white); background: var(--p2-blue-dark); }
.p2-landing .p2-landing__tariff-card--turnkey .p2-landing__tariff-name { color: var(--p2-white); }
.p2-landing .p2-landing__tariff-card--turnkey .p2-landing__tariff-badge { background: var(--p2-lemon); }
.p2-landing .p2-landing__tariff-card--turnkey .p2-landing__tariff-art { opacity: .34; }
.p2-landing .p2-landing__tariff-content { display: grid; align-content: start; gap: 24px; padding: 24px 16px; color: var(--p2-muted); line-height: 23px; }
.p2-landing .p2-landing__tariff-label { margin-bottom: 8px; color: var(--p2-ink); font-size: 16px; line-height: 23px; font-weight: 600; }
.p2-landing .p2-landing__tariff-content ul, .p2-landing .p2-landing__tariff-content ol { display: grid; gap: 8px; list-style: none; }
.p2-landing .p2-landing__tariff-content ul li { position: relative; padding-left: 16.2px; padding-right: 4px; }
.p2-landing .p2-landing__tariff-content ul li::before { content: "•"; position: absolute; left: 0; color: var(--p2-accent); }
.p2-landing .p2-landing__tariff-content ol { counter-reset: p2-tariff-step; }
.p2-landing .p2-landing__tariff-content ol li { position: relative; min-height: 24.137px; padding-left: 21.12px; padding-right: 8.2px; counter-increment: p2-tariff-step; }
.p2-landing .p2-landing__tariff-content ol li::before { content: counter(p2-tariff-step) "."; position: absolute; left: 0; color: var(--p2-accent); }
.p2-landing .p2-landing__tariff-footer { display: grid; gap: 24px; margin-top: auto; padding: 24px 16px; border-radius: 0 0 12px 12px; background: var(--p2-light); }
.p2-landing .p2-landing__tariff-cost { display: grid; gap: 6px; color: var(--p2-muted); font-size: 14px; line-height: 21px; }
.p2-landing .p2-landing__tariff-price { color: var(--p2-ink); font-size: 32px; line-height: 39px; font-weight: 600; }
.p2-landing .p2-landing__tariff-footer .p2-landing__button { min-height: 56.32px; }
.p2-landing .p2-landing__support { background: #e3ebf5; }
.p2-landing .p2-landing__support .p2-landing__section-lead { color: var(--p2-text); }
.p2-landing .p2-landing__support-list { margin-top: 24px; }
.p2-landing .p2-landing__support-list > div { position: relative; padding: 24px 0; }
.p2-landing .p2-landing__support-list > div + div { padding-top: 24.88px; }
.p2-landing .p2-landing__support-list > div + div::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: .88px; background: var(--p2-border); }
.p2-landing .p2-landing__support-list dt { font-size: 18px; line-height: 25px; font-weight: 600; }
.p2-landing .p2-landing__support-list dd { margin-top: 8px; color: var(--p2-text); line-height: 23px; }
.p2-landing .p2-landing__smart p { margin-top: 24px; }
.p2-landing .p2-landing__smart p + p { color: var(--p2-muted); }
@media (forced-colors: active) {
  .p2-landing .p2so input[type="radio"], .p2-landing .p2so input[type="checkbox"] {
    appearance: auto;
    background: none;
  }
}
@container p2-landing (min-width: 768px) {
  .p2-landing .p2-landing__section { padding-inline: 40px; }
  .p2-landing .p2-landing__tariff-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
  .p2-landing .p2-landing__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
  .p2-landing .p2-landing__steps li::after { display: none; }
}
@container p2-landing (min-width: 1200px) {
  .p2-landing .p2-landing__section { padding-inline: 48px; }
  .p2-landing .p2-landing__section-title { font-size: 32px; line-height: 40px; }
  .p2-landing .p2-landing__section-lead { line-height: 24px; }
  .p2-landing .p2-landing__steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
  .p2-landing .p2-landing__steps li { display: flex; flex-direction: column; gap: 16px; }
  .p2-landing .p2-landing__step-number { width: 36px; height: 36px; font-size: 20px; line-height: 27px; }
  .p2-landing .p2-landing__steps li:not(:last-child)::after { display: block; top: 17.25px; left: 36px; width: calc(100% - 12px); height: 1.5px; }
  .p2-landing .p2-landing__step-title { line-height: 24px; }
  .p2-landing .p2-landing__steps p { line-height: 24px; }
  .p2-landing .p2-landing__tariff-grid { gap: 32px; }
  .p2-landing .p2-landing__tariff-header { padding: 20px 24px; }
  .p2-landing .p2-landing__tariff-heading { gap: 16px; }
  .p2-landing .p2-landing__tariff-badge { padding-inline: 8px; min-width: 113px; }
  .p2-landing .p2-landing__tariff-card--turnkey .p2-landing__tariff-badge { min-width: 126px; }
  .p2-landing .p2-landing__tariff-name { font-size: 28px; line-height: 36px; }
  .p2-landing .p2-landing__tariff-header > p { margin-top: 8px; line-height: 24px; }
  .p2-landing .p2-landing__tariff-art { top: 10px; right: -4.5px; width: 111px; }
  .p2-landing .p2-landing__tariff-content { min-height: 496px; padding: 24px; line-height: 24px; }
  .p2-landing .p2-landing__tariff-label { line-height: 24px; }
  .p2-landing .p2-landing__tariff-content ol li { min-height: 24px; padding-left: 24px; padding-right: 0; }
  .p2-landing .p2-landing__tariff-content ul li { padding-left: 14px; padding-right: 0; }
  .p2-landing .p2-landing__tariff-footer { padding: 20px 24px; }
  .p2-landing .p2-landing__tariff-price { line-height: 40px; }
  .p2-landing .p2-landing__tariff-cost { gap: 4px; line-height: 20px; }
  .p2-landing .p2-landing__tariff-footer .p2-landing__button { min-height: 48px; }
  .p2-landing .p2-landing__support-list > div { display: grid; grid-template-columns: 294px minmax(0, 1fr); gap: 24px; padding: 16px 0; }
  .p2-landing .p2-landing__support-list > div + div { padding-top: 16.75px; }
  .p2-landing .p2-landing__support-list > div + div::before { height: .75px; }
  .p2-landing .p2-landing__support-list dt { line-height: 24px; }
  .p2-landing .p2-landing__support-list dd { margin: 0; line-height: 24px; }
}
@container p2-landing (width < 625px) {
  .p2-landing .p2-landing__hero-intro { display: grid; grid-template-columns: minmax(0, 1fr); }
  .p2-landing .p2-landing__hero-copy { display: contents; }
  .p2-landing .p2-landing__hero-heading { grid-row: 1; grid-column: 1; }
  .p2-landing .p2-landing__hero-description { grid-row: 2; grid-column: 1; }
  .p2-landing .p2-landing__situations { grid-row: 3; grid-column: 1; }
  .p2-landing .p2-landing__hero-art { grid-row: 3 / 4; grid-column: 1 / 2; top: auto; right: -16px; bottom: -10.391px; }
  .p2-landing .p2-landing__trust-container { grid-row: 4; grid-column: 1; }
}
@container p2-landing (width < 375px) {
  .p2-landing .p2-landing__hero-art { width: 136px; height: 198.319px; }
  .p2-landing .p2-landing__hero-art img { width: auto; height: 100%; left: 1.459px; top: 0; }
  .p2-landing .p2-landing__situations { width: 100%; }
  .p2-landing .p2-landing__situations li { width: calc(100% - 124px); }
  .p2-landing .p2-landing__trust-container { margin-top: 36px; }
  .p2-landing .p2so { padding-inline: 16px; }
  .p2-landing .p2-landing__choice-summary { display: flex; flex-wrap: wrap; }
  .p2-landing .p2-landing__choice-summary .p2-landing__badge { order: 1; }
  .p2-landing .p2-landing__choice-price, .p2-landing .p2-landing__choice-fee { flex-basis: 100%; }
}
/* Layout boundaries use the landing's available width, including inside theme columns. */
@container p2-landing (min-width: 625px) {
  .p2-landing .p2-landing__modal { padding-inline: max(8px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-right)); }
  .p2-landing .simple-order-hero-form { width: var(--p2-form-width); margin-inline: auto; }
  .p2-landing .p2-landing__form-title { padding: 16px 32px; border-radius: 8px 8px 0 0; font-size: 20px; line-height: 26px; }
  .p2-landing .p2so { padding: 20px 32px; }
  .p2-landing .p2-landing__children { grid-template-columns: minmax(0, 1fr) 160px; align-items: center; gap: 12px; min-height: 40px; }
  .p2-landing .p2so select { height: 36px; padding-block: 5px; }
  .p2-landing :where(.p2so-marital-status, .p2-landing__service) > legend { padding-top: 8px; }
  .p2-landing .p2-landing__location { position: relative; padding-left: 250px; min-height: 40px; }
  .p2-landing .p2-landing__location legend { position: absolute; top: 8px; left: 0; }
  .p2-landing .p2-landing__location-options { margin: 0; gap: 24px; }
  .p2-landing .p2-landing__contacts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p2-landing .p2-landing__choice-summary { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  .p2-landing .p2-landing__choice-content { gap: 6px; }
  .p2-landing .p2-landing__choice-title { display: inline-flex; flex: none; min-width: 154px; }
  .p2-landing .p2-landing__service-choice:nth-child(2) .p2-landing__choice-title { min-width: 152px; }
  .p2-landing .p2-landing__choice-price::before { content: " · "; white-space: pre; }
  .p2-landing .p2-landing__choice-summary .p2-landing__badge { margin-left: auto; padding: 6px 10px; }
  .p2-landing .p2-landing__service-later .p2-landing__choice-content { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
  .p2-landing .p2-landing__service-later .p2-landing__choice-name { min-width: 136px; flex: none; }
  .p2-landing .p2so-requested-services { position: relative; padding-left: 296px; min-height: 40px; }
  .p2-landing .p2so-requested-services legend { position: absolute; top: 8px; left: 0; max-width: 280px; }
  .p2-landing .p2so-requested-services .p2-landing__choice-options { justify-content: flex-end; margin-top: 0; }
}

/* Browsers without size queries retain a readable, single-column landing. */
@supports not (container-type: inline-size) {
  .p2-landing .p2-landing__hero-art { display: none; }
  .p2-landing .p2-landing__hero-intro { max-width: 900px; margin-inline: auto; }
  .p2-landing .p2-landing__situations { width: auto; }
  .p2-landing .p2-landing__situations li span,
  .p2-landing .p2-landing__situations li:nth-child(n+3) span { max-width: none; }
  .p2-landing .simple-order-hero-form { width: 100%; max-width: var(--p2-form-width); margin-inline: auto; }
  .p2-landing .p2-landing__trust { grid-template-columns: minmax(0, 1fr) max-content; }
  .p2-landing .p2-landing__trust li:first-child > span { min-width: 0; }
}
@container p2-landing (min-width: 625px) and (width < 1025px) {
  .p2-landing .p2-landing__form-area { padding: 24px 8px 48px; }
}
@container p2-landing (min-width: 1200px) {
  .p2-landing .p2-landing__hero { position: relative; display: grid; min-height: 762px; max-width: 1440px; margin-inline: auto; }
  .p2-landing .p2-landing__hero-intro { position: static; grid-area: 1 / 1; padding: 72px 48px 48px; min-height: 762px; }
  .p2-landing .p2-landing__hero-copy { width: calc(56.111% - 104px); }
  .p2-landing .p2-landing__hero-heading { width: 704px; }
  .p2-landing h1 { font-size: 52px; line-height: 52px; }
  .p2-landing .p2-landing__hero-subtitle { margin-top: 10px; font-size: 44px; line-height: 54px; }
  .p2-landing .p2-landing__hero-description { width: 454px; max-width: 100%; margin-top: 26px; gap: 28px; line-height: 26px; }
  .p2-landing .p2-landing__situations { width: 440px; margin-top: 28px; }
  .p2-landing .p2-landing__situations-title { margin-bottom: 14px; font-size: 19px; line-height: 28px; }
  .p2-landing .p2-landing__situations ul { gap: 14px; }
  .p2-landing .p2-landing__situations li { gap: 18px; line-height: 26px; }
  .p2-landing .p2-landing__situations li > img { width: 24px; height: 24px; margin-top: 1px; }
  .p2-landing .p2-landing__situations li span, .p2-landing .p2-landing__situations li:nth-child(n+3) span { max-width: none; }
  .p2-landing .p2-landing__hero-art { inset: 0; width: 100%; height: 762px; }
  .p2-landing .p2-landing__hero-art img { width: 780.438px; height: 724.067px; left: 384.113px; top: -52px; }
  .p2-landing .p2-landing__trust-container { max-width: calc(56.111% - 10px); margin: 68px 0 0; }
  .p2-landing .p2-landing__trust { position: relative; margin: 0; justify-content: start; gap: 18px; font-size: 17px; line-height: 24px; }
  .p2-landing .p2-landing__trust li { gap: 14px; min-height: 32px; white-space: nowrap; }
  .p2-landing .p2-landing__trust li:first-child { min-width: 249px; padding-right: 18px; }
  .p2-landing .p2-landing__trust li:first-child > span { min-width: 190px; color: var(--p2-text); }
  .p2-landing .p2-landing__trust li:first-child strong { color: var(--p2-ink); font-weight: 700; }
  .p2-landing .p2-landing__trust li:nth-child(2) { min-width: 203px; border-right: 1px solid var(--p2-border); padding-right: 18px; }
  .p2-landing .p2-landing__trust li:nth-child(2) > span { min-width: 142px; font-weight: 700; }
  .p2-landing .p2-landing__trust li:last-child { min-width: 256px; gap: 12px; }
  .p2-landing .p2-landing__trust li:last-child > span { display: inline-flex; gap: 5px; min-width: 216px; }
  .p2-landing .p2-landing__trust li:last-child strong { width: 29px; font-weight: 700; }
  .p2-landing .p2-landing__google { color: var(--p2-text); }
  .p2-landing .p2-landing__trust img, .p2-landing .p2-landing__trust li:first-child img { width: 28px; height: 28px; }
  .p2-landing .p2-landing__trust li:first-child img { width: 26px; height: 26px; }
  .p2-landing .p2-landing__form-area { position: relative; grid-area: 1 / 1; align-self: start; right: 24px; width: var(--p2-form-width); margin: 40px 0 48px auto; padding: 0; background: transparent; }
  .p2-landing .simple-order-hero-form { border: 0; box-shadow: 0 8px 24px #0b154514; }
  .p2-landing .p2-landing__form-title { box-shadow: none; }
}
@container p2-landing (min-width: 1200px) and (width < 1371px) {
  .p2-landing .p2-landing__hero-heading { width: 100%; }
  .p2-landing h1 { font-size: 46px; }
  .p2-landing .p2-landing__hero-subtitle { font-size: 38px; }
  .p2-landing .p2-landing__trust { font-size: 16px; gap: 12px; }
  .p2-landing .p2-landing__hero { min-height: 850px; }
}
@container p2-landing (min-width: 625px) and (width < 1200px) {
  .p2-landing .p2-landing__hero-intro { --p2-art-edge-offset: 24px; display: grid; align-content: start; column-gap: 20px; }
  .p2-landing .p2-landing__hero-copy { display: contents; }
  .p2-landing .p2-landing__hero-heading { grid-row: 1; grid-column: 1 / -1; }
  .p2-landing .p2-landing__hero-description { grid-row: 2; grid-column: 1 / -1; width: 100%; max-width: none; gap: 24px; line-height: 26px; }
  .p2-landing .p2-landing__situations { grid-row: 3; grid-column: 1; width: 100%; }
  .p2-landing .p2-landing__situations li span, .p2-landing .p2-landing__situations li:nth-child(n+3) span { max-width: none; }
  .p2-landing .p2-landing__hero-art { position: absolute; grid-row: 3 / 4; grid-column: 2 / 3; top: auto; right: calc(-1 * var(--p2-art-edge-offset)); bottom: 0; height: min(204.492px, calc((100% - 28px) * .908854)); margin: 0; }
  .p2-landing .p2-landing__hero-art img { width: auto; height: 100%; left: auto; right: 0; top: 0; transform: translateX(15.5634%); }
  .p2-landing .p2-landing__trust-container { grid-row: 4; grid-column: 1 / -1; margin-top: 32px; }
  .p2-landing .p2-landing__trust { justify-content: flex-start; font-size: 16px; line-height: 24px; }
}
@container p2-landing (min-width: 625px) and (width < 1025px) {
  .p2-landing .p2-landing__hero-intro { --p2-middle-art-width: 180px; grid-template-columns: minmax(0, 1fr) var(--p2-middle-art-width); padding: 32px 24px; }
  .p2-landing h1 { font-size: clamp(32px, calc(4.13793cqw + 4.68966px), 44px); line-height: 1.1; }
  .p2-landing .p2-landing__hero-subtitle { font-size: clamp(27px, calc(3.10345cqw + 6.51724px), 36px); line-height: 1.22; }
  .p2-landing .p2-landing__situations ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; }
  .p2-landing .p2-landing__hero-description p:last-child { padding-right: calc(var(--p2-middle-art-width) + 20px); }
  .p2-landing .p2-landing__hero-art { width: var(--p2-middle-art-width); height: 204.492px; }
  .p2-landing .p2-landing__trust { justify-content: center; }
  @container p2-trust (min-width: 660px) {
    .p2-landing .p2-landing__trust li:nth-child(2) { border-right: 1px solid var(--p2-border); padding-right: 12px; }
  }
}
@container p2-landing (min-width: 768px) and (width < 1025px) {
  .p2-landing .p2-landing__hero-intro { --p2-art-edge-offset: 40px; padding: 48px 40px 32px; }
}
/* Keep the compact illustration whole when a theme leaves a margin beside the landing. */
@container p2-landing (width < 1025px) {
  .p2-landing .p2-landing__hero-art { right: 0; }
  .p2-landing .p2-landing__hero-art img {
    inset: 0; width: 100%; height: 100%; transform: none;
    object-fit: contain; object-position: center bottom;
  }
}
/* Independent couple and crown preserve their proportions across desktop widths. */
@container p2-landing (min-width: 1025px) {
  .p2-landing .p2-landing__hero-art { z-index: 0; }
  .p2-landing .p2-landing__hero-art img { content: url('../assets/svg/hero-couple.svg'); }
  .p2-landing .p2-landing__hero-art::after {
    content: ''; position: absolute; z-index: -1; pointer-events: none;
    left: calc(100% - 742px); top: -52px; width: 540px; height: 148.9655172413793px;
    background: url('../assets/svg/hero-tree-crown.svg') center / 100% 100% no-repeat;
  }
}
@container p2-landing (min-width: 1440px) {
  .p2-landing .p2-landing__hero-art img { height: 1118.3293975497008px; top: -446.26239754970084px; }
}
@container p2-landing (min-width: 1025px) and (width < 1440px) {
  .p2-landing .p2-landing__hero {
    --p2-hero-image-width: clamp(260px, calc(155cqw - 1328.75px), 780.438px);
    --p2-couple-lift: clamp(0px, calc(384px - 26.666667cqw), 72px);
    position: relative; display: grid; grid-template-columns: minmax(0, 1fr) var(--p2-form-width); gap: 24px; padding: 32px 24px; align-items: start; min-height: 0;
  }
  .p2-landing .p2-landing__hero-intro { position: static; display: block; grid-area: auto; padding: 0; min-height: 0; min-width: 0; }
  .p2-landing .p2-landing__hero-copy { display: block; width: 100%; min-height: calc(min(672px, var(--p2-hero-image-width) * 1.43485559) - var(--p2-couple-lift)); }
  .p2-landing .p2-landing__hero-heading { width: 100%; }
  .p2-landing h1 { font-size: clamp(34px, 3.25cqw, 46px); line-height: 1.15; }
  .p2-landing .p2-landing__hero-subtitle { margin-top: 0; font-size: clamp(30px, 2.85cqw, 38px); line-height: 1.22; }
  .p2-landing .p2-landing__hero-description { width: clamp(220px, calc(83.333333cqw - 634.166667px), 454px); max-width: 100%; margin-top: 16px; gap: 24px; line-height: 26px; }
  .p2-landing .p2-landing__situations { width: min(440px, calc(100cqw - 684px - var(--p2-hero-image-width) * .539468)); margin-top: 28px; }
  .p2-landing .p2-landing__hero-art { grid-area: auto; inset: 0; width: 100%; height: 100%; z-index: 0; }
  .p2-landing .p2-landing__hero-art img {
    width: var(--p2-hero-image-width); height: calc(var(--p2-hero-image-width) * 1.43485559);
    left: auto; right: calc(644px - var(--p2-hero-image-width) * .460532);
    top: calc(min(0px, 672px - var(--p2-hero-image-width) * 1.43485559) - var(--p2-couple-lift)); bottom: auto; transform: none;
  }
  .p2-landing .p2-landing__trust-container { max-width: none; margin: 32px 0 0; }
  .p2-landing .p2-landing__form-area { position: relative; grid-area: auto; right: auto; width: var(--p2-form-width); margin: 0; padding: 0; min-width: 0; background: transparent; z-index: 2; }
}
@container p2-landing (min-width: 1025px) and (width < 1170px) {
  .p2-landing .p2-landing__hero { --p2-couple-lift: clamp(0px, calc((100cqw - 1100px) * 1.028571429), 72px); }
  .p2-landing .p2-landing__hero-art::after {
    --p2-crown-width: clamp(380px, calc(380px + (100cqw - 1025px) * 1.103448276), 540px);
    left: calc(100% - 632px - clamp(30px, calc(30px + (100cqw - 1025px) * .551724138), 110px));
    width: var(--p2-crown-width); height: calc(var(--p2-crown-width) * .275862069);
  }
}

/* Trust layout follows its available width: an indivisible first pair, then the rating. */
@container p2-trust (min-width: 660px) {
  .p2-landing .p2-landing__trust { grid-template-columns: repeat(3, max-content); }
  .p2-landing .p2-landing__trust li:last-child { grid-column: auto; }
}
@container p2-trust (max-width: 659.99px) {
  .p2-landing .p2-landing__trust { justify-content: center; font-size: 14px; line-height: 20px; }
}
@container p2-trust (max-width: 350px) {
  .p2-landing .p2-landing__trust { grid-template-columns: minmax(0, 1fr) max-content; }
  .p2-landing .p2-landing__trust li:first-child > span { min-width: 0; }
}
@container p2-landing (min-width: 1200px) {
  @container p2-trust (max-width: 743.99px) {
    .p2-landing .p2-landing__trust { grid-template-columns: max-content max-content; justify-content: center; gap: 14px 12px; font-size: 14px; line-height: 20px; }
    .p2-landing .p2-landing__trust li { min-width: 0; min-height: 24px; gap: 8px; }
    .p2-landing .p2-landing__trust li:first-child { padding-right: 12px; }
    .p2-landing .p2-landing__trust li:first-child > span { min-width: 156px; }
    .p2-landing .p2-landing__trust li:nth-child(2) { border: 0; padding: 0; }
    .p2-landing .p2-landing__trust li:nth-child(2) > span { min-width: 107px; }
    .p2-landing .p2-landing__trust li:last-child { grid-column: 1 / -1; gap: 10px; }
    .p2-landing .p2-landing__trust li:last-child > span { min-width: 200px; }
    .p2-landing .p2-landing__trust img { width: 20px; height: 20px; }
    .p2-landing .p2-landing__trust li:first-child img { width: 19px; height: 19px; }
  }
}
