/* ON1 source values; core DOM adapters live beside their owner. */
.eyebrow {color:var(--wp--preset--color--blue);font-size:11px;letter-spacing:1.9px;font-weight:800;display:block;margin-bottom:17px;text-transform:uppercase;}
.tiny {font-size:12px;}
.btn,
.wp-block-button.is-style-fill .wp-block-button__link {display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 24px;background:var(--wp--preset--color--blue);color:white;border-radius:7px;font-weight:700;font-size:14px;border:1px solid transparent;transition:transform .22s,background .22s,box-shadow .22s;min-height:48px;}
@media (hover:hover) and (pointer:fine) {.btn:hover,
.wp-block-button.is-style-fill .wp-block-button__link:hover {background:var(--wp--preset--color--blue-dark);transform:translateY(-3px);box-shadow:0 10px 24px #2454e826;}}
.btn.secondary,
.wp-block-button.is-style-secondary .wp-block-button__link {background:white;color:var(--wp--preset--color--ink);border-color:var(--wp--preset--color--line);}
.btn.secondary:hover,
.wp-block-button.is-style-secondary .wp-block-button__link:hover {border-color:var(--wp--preset--color--blue);color:var(--wp--preset--color--blue);}
.btn.light,
.wp-block-button.is-style-light .wp-block-button__link {background:white;color:var(--wp--preset--color--blue);}
.text-link,
.wp-block-button.is-style-text-link .wp-block-button__link {display:inline-flex;gap:14px;align-items:center;color:var(--wp--preset--color--blue);font-weight:700;font-size:14px;}
@media (hover:hover) and (pointer:fine) {.text-link:hover svg,
.wp-block-button.is-style-text-link .wp-block-button__link:hover svg {transform:translateX(5px);}}
.text-link svg,
.wp-block-button.is-style-text-link .wp-block-button__link svg {transition:transform .2s;width:18px;}
.actions {display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;}
.grid {display:grid;gap:24px;}
.cols-2 {grid-template-columns:repeat(2,minmax(0,1fr));}
.cols-3 {grid-template-columns:repeat(3,minmax(0,1fr));}
.cols-4 {grid-template-columns:repeat(4,minmax(0,1fr));}
.card {position:relative;background:white;border:1px solid var(--wp--preset--color--line);border-radius:var(--wp--preset--border-radius--card);overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s;}
@media (hover:hover) and (pointer:fine) {.card:hover {transform:translateY(-6px);box-shadow:0 16px 40px #203c7210;border-color:#b9c9ff;}}
.card-body {padding:28px;}
.card-body p {font-size:14px;margin:12px 0 24px;line-height:1.8;}
.card-media {overflow:hidden;background:var(--wp--preset--color--pale);height:240px;position:relative;}
.card-media>.wp-block-image {height:100%;}
.card-media img {height:100%;object-fit:cover;transition:transform .7s;}
@media (hover:hover) and (pointer:fine) {.card:hover .card-media img {transform:scale(1.045);}}
.step-number {font-size:12px;letter-spacing:1px;color:var(--wp--preset--color--blue);font-weight:800;display:block;margin-bottom:20px;}
.card-icon {width:47px;height:47px;border-radius:13px;background:#edf2ff;color:var(--wp--preset--color--blue);display:grid;place-items:center;margin-bottom:25px;}
.card-arrow,
.wp-block-button.is-style-card-arrow .wp-block-button__link {display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--wp--preset--color--blue);font-weight:700;}
.card-arrow svg,
.wp-block-button.is-style-card-arrow .wp-block-button__link svg {width:19px;transition:transform .2s;}
.cta {background:var(--wp--preset--color--blue);border-radius:24px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:50px 55px;color:white;}
.cta p {color:var(--wp--custom--color--cta-copy);margin-top:13px;font-size:14px;}
.cta h2 {font-size:34px;}
.cta .wp-block-buttons.actions {margin-top:0;}
.breadcrumb {font-size:11px;display:flex;gap:10px;flex-wrap:wrap;color:var(--wp--custom--color--breadcrumb);margin-bottom:30px;}
.breadcrumb a {transition:color .2s,background-color .2s;}
.breadcrumb a:hover {color:var(--wp--preset--color--blue);}
.flow-box {padding:13px 17px;border:1px solid #dbe4f6;background:#ffffffdd;border-radius:10px;margin:7px 0;display:flex;justify-content:space-between;align-items:center;font-size:13px;}
.flow-box strong {color:var(--wp--preset--color--blue);font-size:11px;margin-right:14px;}
.flow-box svg {width:17px;color:var(--wp--preset--color--blue);}
.table-wrap {overflow-x:auto;border:1px solid var(--wp--preset--color--line);border-radius:17px;}
.wp-block-table.comparison {border-collapse:collapse;width:100%;font-size:13px;}
.wp-block-table.comparison th {text-align:left;padding:20px 25px;border-bottom:1px solid var(--wp--preset--color--line);vertical-align:top;background:var(--wp--preset--color--pale);color:var(--wp--preset--color--ink);font-weight:700;}
.wp-block-table.comparison td {text-align:left;padding:20px 25px;border-bottom:1px solid var(--wp--preset--color--line);vertical-align:top;color:var(--wp--custom--color--table-copy);}
.wp-block-table.comparison tr:last-child td {border-bottom:0;}
.wp-block-table.comparison td:first-child {font-weight:700;color:var(--wp--preset--color--ink);min-width:135px;}
.notice {background:#f5f7fd;border-left:3px solid var(--wp--preset--color--blue);padding:17px 22px;color:var(--wp--custom--color--table-copy);font-size:13px;margin-top:25px;border-radius:0 8px 8px 0;}
.route-steps {display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.route-step {border:1px solid var(--wp--preset--color--line);border-radius:15px;padding:24px;}
.route-step b {font-size:25px;display:block;color:var(--wp--preset--color--blue);margin-bottom:20px;}
.route-step h3 {font-size:18px;}
.route-step p {font-size:13px;margin-top:10px;}
#contact-form.form-box {border:1px solid var(--wp--preset--color--line);border-radius:22px;padding:36px;}
#contact-form .form-grid {display:grid;grid-template-columns:1fr 1fr;gap:24px;}
#contact-form .field {display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:700;min-width:0;}
#contact-form .field.full {grid-column:1/-1;}
#contact-form .field input {width:100%;background:#f8faff;border:1px solid #dce3ef;border-radius:9px;padding:13px 15px;color:var(--wp--preset--color--ink);font-size:14px;outline-offset:3px;}
#contact-form .field select {width:100%;background:#f8faff;border:1px solid #dce3ef;border-radius:9px;padding:13px 15px;color:var(--wp--preset--color--ink);font-size:14px;outline-offset:3px;}
#contact-form .field textarea {width:100%;background:#f8faff;border:1px solid #dce3ef;border-radius:9px;padding:13px 15px;color:var(--wp--preset--color--ink);font-size:14px;outline-offset:3px;min-height:160px;resize:vertical;}
#contact-form .field small {font-size:11px;font-weight:400;color:var(--wp--preset--color--muted);}
#contact-form .required {color:var(--wp--preset--color--blue);}
#contact-form .form-note {font-size:12px;margin:24px 0;}
#contact-form .form-result {margin-top:25px;padding:25px;background:var(--wp--preset--color--pale);border:1px solid #d5e0ff;border-radius:15px;}
#contact-form .form-result pre {font-family:inherit;font-size:13px;white-space:pre-wrap;color:var(--wp--custom--color--form-copy);margin:15px 0;}
@media(max-width:1150px) {.cols-4 {grid-template-columns:repeat(2,1fr);}}
@media(max-width:900px) {.cols-3 {grid-template-columns:repeat(2,1fr);}}
@media(max-width:900px) {.route-steps {grid-template-columns:repeat(2,1fr);}}
@media(max-width:900px) {.cta {padding:38px;}}
@media(max-width:900px) {.cta h2 {font-size:29px;}}
@media(max-width:640px) {.actions {gap:9px;margin-top:25px;}}
@media(max-width:640px) {.btn,
.wp-block-button.is-style-fill .wp-block-button__link {font-size:12px;padding:13px 17px;gap:13px;min-height:46px;}}
@media(max-width:640px) {.eyebrow {font-size:10px;margin-bottom:14px;}}
@media(max-width:640px) {.grid {gap:18px;}}
@media(max-width:640px) {.cols-2 {grid-template-columns:1fr;}}
@media(max-width:640px) {.cols-3 {grid-template-columns:1fr;}}
@media(max-width:640px) {.cols-4 {grid-template-columns:1fr;}}
@media(max-width:640px) {.card-body {padding:25px;}}
@media(max-width:640px) {.card-media {height:230px;}}
@media(max-width:640px) {.cta {display:block;padding:32px 25px;border-radius:18px;}}
@media(max-width:640px) {.cta h2 {font-size:28px;}}
@media(max-width:640px) {.cta p {font-size:13px;}}
@media(max-width:640px) {.cta .btn {margin-top:25px;}}
@media(max-width:640px) {.breadcrumb {margin-bottom:26px;font-size:10px;gap:8px;}}
@media(max-width:640px) {.route-steps {grid-template-columns:1fr 1fr;gap:12px;}}
@media(max-width:640px) {.route-step {padding:20px 16px;}}
@media(max-width:640px) {.route-step h3 {font-size:17px;}}
@media(max-width:640px) {.route-step p {font-size:12px;}}
@media(max-width:640px) {.route-step b {font-size:24px;margin-bottom:16px;}}
@media(max-width:640px) {#contact-form.form-box {padding:24px 20px;}}
@media(max-width:640px) {#contact-form .form-grid {grid-template-columns:1fr;gap:20px;}}
@media(max-width:640px) {#contact-form .field.full {grid-column:auto;}}
@media(max-width:640px) {#contact-form.form-box .btn {width:100%;}}
@media(max-width:640px) {.wp-block-table.comparison th {padding:17px 20px;}}
@media(max-width:640px) {.wp-block-table.comparison td {padding:17px 20px;}}
@media(max-width:640px) {.notice {font-size:12px;}}
.btn svg {width:19px;flex-shrink:0;}
.wp-block-button.is-style-text-link .wp-block-button__link,
.wp-block-button.is-style-card-arrow .wp-block-button__link,
.wp-block-button.is-style-skip .wp-block-button__link,
.wp-block-button.tab .wp-block-button__link,
.wp-block-button.on-switch-option .wp-block-button__link {background:transparent;padding:0;border-radius:0;line-height:inherit;}
.card .card-arrow::after {content:'';position:absolute;inset:0;}
.wp-block-table.comparison {margin:0;overflow-x:auto;border:1px solid var(--wp--preset--color--line);border-radius:17px;}
.wp-block-table.comparison table {border-collapse:collapse;width:100%;font-size:13px;min-width:630px;}
.wp-block-table.comparison th,.wp-block-table.comparison td {border:0;text-align:left;padding:20px 25px;border-bottom:1px solid var(--wp--preset--color--line);vertical-align:top;}
.wp-block-table.comparison tr:last-child td {border-bottom:0;}
#contact-form .field-check {flex-direction:row;align-items:start;font-size:13px;}
#contact-form .field-check input[type="checkbox"] {width:18px;height:18px;flex-shrink:0;padding:0;margin:4px 0 0;}
#contact-form .field .required {font-size:10px;font-weight:500;margin-top:-8px;}
#contact-form p.field-error {font-size:12px;font-weight:400;color:var(--wp--custom--color--error);}
#contact-form .has-error input,#contact-form .has-error select,#contact-form .has-error textarea {border-color:var(--wp--custom--color--error);}
#contact-form button:disabled {opacity:.55;transform:none;box-shadow:none;cursor:default;}
#contact-form .form-status.is-error {background:#f5f7fd;border-left:3px solid var(--wp--custom--color--error);padding:17px 22px;color:var(--wp--custom--color--error);font-size:13px;margin-top:25px;border-radius:0 8px 8px 0;}
#contact-form .form-result pre {overflow-wrap:anywhere;max-width:100%;overflow-x:auto;}
@media(max-width:640px) {
 .wp-block-table.comparison th,.wp-block-table.comparison td {padding:17px 20px;}
 #contact-form.form-box input,#contact-form.form-box select,#contact-form.form-box textarea {font-size:16px;}
}

@media (hover:hover) and (pointer:fine) {
 .card:hover .card-arrow svg,
 .card:hover .wp-block-button.is-style-card-arrow .wp-block-button__link svg {transform:translateX(5px);}
}
@media(prefers-reduced-motion:reduce) {
 .btn:hover,
 .wp-block-button.is-style-fill .wp-block-button__link:hover,
 .card:hover {transform:none;}
 .card:hover .card-arrow svg,
 .card:hover .wp-block-button.is-style-card-arrow .wp-block-button__link svg {transform:none;}
}
