.planner-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:22px}
.planner-card{background:#fff;border:1px solid #d4e2d8;border-radius:18px;padding:clamp(20px,3vw,32px);box-shadow:0 8px 30px rgba(24,70,48,.05);align-self:start}
.planner-card h2{font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.025em}
.planner-card p,.planner-card li{line-height:1.75;color:#405b4e}
.planner-card label{display:block;font-weight:730;margin:18px 0 7px}
.planner-card select{width:100%;padding:12px 15px;min-height:48px;border:1px solid #aabdaf;border-radius:10px;background:#fff;font:inherit}
.planner-card .checkout-buy{margin:20px 0 15px}
.planner-inline-note{background:#f2f6f0;border-radius:10px;padding:13px;font-size:.9rem}
.planner-result{grid-column:1 / -1}
.planner-result h3{margin:24px 0 8px;font-size:1.2rem}
.planner-result ol{padding-left:25px}
.planner-result li{margin:8px 0}
.planner-result li label{display:flex;align-items:flex-start;gap:10px;font-weight:400;margin:0}
.planner-result li input{margin-top:6px;flex-shrink:0;width:18px;height:18px;accent-color:#145944}
.planner-caution{border-left:4px solid #bd945c;padding:12px 17px;background:#fbf8ee}
.planner-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.planner-action{border:1px solid #b2c8b9;background:#f7faf7;border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:660}
.planner-action:focus-visible{outline:3px solid #e6ba72}
@media(max-width:740px){.planner-layout{grid-template-columns:1fr}.planner-result{grid-column:1}}
@media print{header,.planner-hero,.planner-card:not(.planner-result),.planner-actions,.site-footer,.checkout-hero{display:none!important}
.planner-layout{display:block}.planner-result{border:none;box-shadow:none;padding:0}
body{background:white;color:black}.planner-card li{break-inside:avoid}}

/* Global intake: six non-sensitive dimensions, native country selectors. */
.planner-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.planner-fields>div{min-width:0}
.planner-fields label{display:block;min-height:25px}
.planner-fields select{min-width:0;width:100%;font:inherit}
.planner-tier{font-weight:740;color:#174f3b;letter-spacing:.01em;border-bottom:1px solid #d7e5db;padding:5px 0 13px}
.planner-result #planner-source a{font-weight:720;overflow-wrap:anywhere;text-underline-offset:3px}
@media(max-width:580px){.planner-fields{grid-template-columns:1fr;gap:2px}}

/* V25: progressive enhancement for optional connecting countries. */
.planner-optional{margin-top:22px;border:1px solid #d4e2d8;border-radius:12px;padding:14px 16px;background:#f8faf8}
.planner-optional summary{font-weight:700;color:#174f3b;cursor:pointer;padding:3px 0;line-height:1.5}
.planner-optional summary:focus-visible{outline:3px solid #b58b48;outline-offset:3px;border-radius:4px}
.planner-optional .planner-fields{margin-top:12px}
.planner-optional input[type="date"]{width:100%;min-width:0;min-height:48px;border:1px solid #aabdaf;border-radius:10px;padding:12px 15px;background:#fff;font:inherit}
.planner-transit-summary{margin-top:20px;padding:14px 18px;border:1px solid #cbded3;background:#f3f8f4;border-radius:12px}
.planner-transit-summary li{overflow-wrap:anywhere}
.planner-transit-summary a{font-weight:700;text-underline-offset:3px}
@media print{.planner-transit-summary{break-inside:avoid}}
