.journey-map{padding:42px 0 48px;background:#fff;border-bottom:1px solid var(--line,#dce3dc)}
.journey-map .shell{width:min(1160px,calc(100% - 40px));margin:auto}
.journey-map-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}
.journey-map-kicker{color:var(--green,#176c51);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.journey-map-head h2{margin:7px 0 0;font:800 clamp(28px,4vw,38px)/1.1 Manrope,sans-serif;letter-spacing:-.04em;color:var(--ink,#17251f)}
.journey-map-head p{max-width:460px;margin:0;color:var(--muted,#65736b);font-size:14px}
.journey-map-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.journey-map-card{display:flex;flex-direction:column;min-height:204px;padding:19px;background:#f8faf7;border:1px solid var(--line,#dce3dc);border-radius:18px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s}
.journey-map-card:hover{transform:translateY(-3px);border-color:var(--green,#176c51);box-shadow:0 12px 26px #183c2c10}
.journey-map-card:focus-visible{outline:3px solid var(--green,#176c51);outline-offset:3px}
.journey-map-card .journey-index{color:var(--green,#176c51);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.journey-map-card strong{margin-top:12px;font:800 17px/1.25 Manrope,sans-serif;color:var(--dark,#0d4c3a)}
.journey-map-card span{margin-top:8px;color:var(--muted,#65736b);font-size:12px;line-height:1.55}
.journey-map-card b{margin-top:auto;padding-top:15px;color:var(--green,#176c51);font-size:12px}
.journey-map-card .sub-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:13px}
.journey-map-card .sub-links span{margin:0;padding:0;color:var(--green,#176c51);font-size:12px;font-weight:800}
.compare-page{--ink:#17251f;--muted:#65736b;--line:#dce3dc;--green:#176c51;--dark:#0d4c3a;min-height:100vh;background:#f7f7f2;color:var(--ink);font:15px/1.6 "DM Sans",sans-serif}
.compare-page *{box-sizing:border-box}
.compare-page a{color:var(--green)}
.compare-shell{width:min(1060px,calc(100% - 36px));margin:auto}
.compare-head{height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;background:#f7f7f2}
.compare-brand{display:flex;align-items:center;gap:9px;font:800 19px Manrope,sans-serif;text-decoration:none;color:var(--ink)}
.compare-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--green);color:#fff}
.compare-crumb{padding:20px 0 4px;color:#748078;font-size:12px}
.compare-crumb a{text-decoration:none}
.compare-hero{padding:24px 0 24px}
.compare-eyebrow{color:var(--green);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.compare-hero h1{max-width:820px;margin:8px 0 12px;font:800 clamp(36px,6vw,54px)/1.06 Manrope,sans-serif;letter-spacing:-.045em}
.compare-hero p{max-width:800px;margin:0;color:var(--muted);font-size:16px}
.compare-note{margin:0 0 22px;padding:15px 17px;border-left:4px solid #f2a85c;border-radius:0 13px 13px 0;background:#fff8e9;color:#5d533e;font-size:13px}
.compare-section{margin:20px 0;padding:22px;background:#fff;border:1px solid var(--line);border-radius:20px}
.compare-section h2{margin:0 0 6px;font:800 23px Manrope,sans-serif;letter-spacing:-.03em}
.compare-section>p{margin:0 0 16px;color:var(--muted);font-size:13px}
.compare-matrix{width:100%;border-collapse:collapse;font-size:13px}
.compare-matrix th,.compare-matrix td{padding:14px 12px;border-bottom:1px solid #e8ece7;text-align:left;vertical-align:top}
.compare-matrix th{font-size:11px;color:var(--green);text-transform:uppercase;letter-spacing:.06em}
.compare-matrix td:first-child{width:20%;font-weight:800;color:var(--dark)}
.compare-matrix td a{display:inline-block;margin-top:7px;font-size:12px;font-weight:800;text-decoration:none}
.compare-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.compare-check{padding:16px;border:1px solid var(--line);border-radius:15px;background:#f8faf7}
.compare-check strong{display:block;color:var(--dark);font:800 15px Manrope,sans-serif}
.compare-check p{margin:6px 0 0;color:var(--muted);font-size:12px}
.compare-check a{display:inline-block;margin-top:10px;font-size:12px;font-weight:800;text-decoration:none}
.compare-order{counter-reset:decision;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px}
.compare-order article{counter-increment:decision;padding:15px 13px;border-radius:14px;background:#eff5ef}
.compare-order article::before{content:"0" counter(decision);display:block;color:var(--green);font-size:11px;font-weight:800}
.compare-order h3{margin:8px 0 4px;font:800 14px Manrope,sans-serif}
.compare-order p{margin:0;color:var(--muted);font-size:11px}
.compare-sources{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.compare-sources a{padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px;font-weight:700;text-decoration:none}
.start-planner-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;margin-top:16px}
.start-planner-field{display:flex;flex-direction:column;gap:6px}
.start-planner-field label{font-size:12px;font-weight:800;color:#43554a}
.start-planner-field select{width:100%;min-height:43px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:13px "DM Sans",sans-serif}
.start-planner-field select:focus{outline:3px solid #176c5130;border-color:var(--green)}
.start-planner-submit{grid-column:1/-1;justify-self:start;min-width:220px;min-height:43px;padding:9px 13px;border:0;border-radius:10px;background:var(--green);color:#fff;font:800 12px "DM Sans",sans-serif;cursor:pointer}
.start-planner-submit:hover{background:var(--dark)}
.start-planner-error{margin:12px 0 0;color:#9d382c;font-size:12px;font-weight:700}
.start-planner-output{margin-top:18px;padding:17px;border:1px solid var(--line);border-radius:16px;background:#f8faf7}
.start-planner-output h3{margin:0 0 4px;font:800 19px Manrope,sans-serif;color:var(--dark)}
.start-planner-output>p{margin:0 0 12px;color:var(--muted);font-size:12px}
.start-planner-output ol{display:grid;gap:9px;margin:0;padding-left:22px}
.start-planner-output li{padding-left:3px;color:var(--muted);font-size:13px}
.start-planner-output li strong{display:block;color:var(--ink);font-size:13px}
.start-planner-output li a{display:inline-block;margin:5px 9px 0 0;font-size:12px;font-weight:800;text-decoration:none}
.planner-privacy{margin:10px 0 0;color:#738078;font-size:10px}
.compare-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}
.compare-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border-radius:999px;background:var(--green);color:#fff!important;font-size:12px;font-weight:800;text-decoration:none}
.compare-button.secondary{background:#f1f5f0;color:var(--dark)!important;border:1px solid var(--line)}
.compare-foot{margin-top:26px;padding:18px 0 28px;border-top:1px solid var(--line);color:#748078;font-size:11px}
@media(max-width:850px){.journey-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compare-order{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.start-planner-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.journey-map{padding:32px 0}.journey-map .shell{width:calc(100% - 28px)}.journey-map-head{align-items:flex-start;flex-direction:column;gap:9px}.journey-map-card{min-height:190px;padding:15px}.compare-shell{width:calc(100% - 26px)}.compare-hero{padding-top:18px}.compare-section{padding:16px;margin:14px 0}.compare-checks{grid-template-columns:1fr}.compare-order{grid-template-columns:1fr 1fr}.compare-matrix,.compare-matrix tbody,.compare-matrix tr,.compare-matrix td{display:block;width:100%}.compare-matrix thead{position:absolute;left:-9999px}.compare-matrix tr{padding:10px 0;border-bottom:1px solid var(--line)}.compare-matrix td{padding:7px 0;border:0}.compare-matrix td:first-child{width:auto;font-size:14px}.compare-matrix td:nth-child(2)::before{content:"Canada · ";font-weight:800;color:var(--green)}.compare-matrix td:nth-child(3)::before{content:"Australia · ";font-weight:800;color:var(--green)}.start-planner-form{grid-template-columns:1fr}}

/* Mobile touch targets for the country comparison and personal planner. */
@media(max-width:620px){.compare-page .start-planner-field select{min-height:48px}.compare-page .start-planner-submit,.compare-page .compare-button{min-height:48px}.compare-page .compare-matrix td a,.compare-page .start-planner-output li a{display:inline-flex;align-items:center;min-height:44px;padding:5px 0}.compare-page a:focus-visible{outline:3px solid var(--green);outline-offset:3px}}
