#clip-planner { background:#fafcfb; border-block:1px solid #d8e5df; padding:44px 24px; color:#163e33; }
#clip-planner * { box-sizing:border-box; letter-spacing:0; }
#clip-planner .planner-inner { max-width:1120px; margin:auto; }
#clip-planner h2 { font-size:28px; line-height:1.25; margin:8px 0 24px; }
#clip-planner h3 { font-size:20px; line-height:1.3; margin:0 0 12px; }
#clip-planner p { line-height:1.55; }
#clip-planner .planner-eyebrow { font-size:13px; color:#176653; font-weight:700; margin:0; }
#clip-planner .planner-paths { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
#clip-planner .planner-paths a { display:block; border-left:3px solid #176653; padding:8px 16px; color:inherit; text-decoration:none; }
#clip-planner .planner-paths strong { display:block; font-size:18px; margin-bottom:5px; }
#clip-planner .planner-paths span { font-size:14px; text-decoration:underline; text-underline-offset:4px; }
#clip-planner .planner-tools { display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; padding:24px 0; margin:20px 0; border-block:1px solid #d8e5df; }
#clip-planner .planner-tools h3 { font-size:14px; margin:0; }
#clip-planner .planner-tools a { display:flex; align-items:center; gap:10px; color:#176653; font-size:14px; min-height:44px; }
#clip-planner .planner-tools img { object-fit:cover; border-radius:4px; }
#clip-planner .planner-calculator { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; }
#clip-planner form > p { font-size:14px; margin:0 0 20px; }
#clip-planner .planner-mode { display:flex; gap:16px; flex-wrap:wrap; border:0; padding:0; margin:0 0 20px; }
#clip-planner .planner-mode label { display:flex; align-items:center; gap:6px; min-height:44px; font-size:14px; }
#clip-planner input[type=radio] { accent-color:#176653; width:18px; height:18px; }
#clip-planner .planner-inputs { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
#clip-planner .planner-inputs label { min-width:0; display:flex; flex-direction:column; justify-content:space-between; gap:7px; font-size:13px; line-height:1.4; }
#clip-planner .planner-inputs input,#clip-planner select { width:100%; min-width:0; height:44px; padding:8px 10px; border:1px solid #a9c0b5; border-radius:5px; background:white; color:#163e33; font:inherit; font-size:16px; }
#clip-planner details { margin-top:20px; }
#clip-planner summary { cursor:pointer; padding:12px 0; font-size:14px; }
#clip-planner .planner-results { border-left:1px solid #c9dcd2; padding-left:32px; }
#clip-planner dl { margin:0; }
#clip-planner dl > div { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:15px 0; border-bottom:1px solid #d8e5df; }
#clip-planner dt { font-size:14px; }
#clip-planner dd { margin:0; font-size:22px; font-weight:700; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
#clip-planner .planner-disclaimer { font-size:12px; color:#486157; }
#clip-planner #planner-error { color:#922c2c; }
#clip-planner .planner-next { display:flex; gap:16px 24px; align-items:center; flex-wrap:wrap; margin-top:28px; }
#clip-planner .planner-next a { color:#176653; font-size:14px; min-height:44px; display:inline-flex; align-items:center; }
#clip-planner .planner-next .planner-primary { background:#176653; color:white; padding:12px 18px; border-radius:6px; text-decoration:none; font-weight:600; }
#clip-planner .planner-next p { flex-basis:100%; margin:0; font-size:13px; }
#clip-planner [hidden] { display:none !important; }
#clip-planner :focus-visible { outline:3px solid #72a6e2; outline-offset:3px; }
#clip-planner .planner-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:760px) {
 #clip-planner { padding:28px 16px; }
 #clip-planner h2 { font-size:24px; }
 #clip-planner .planner-paths { grid-template-columns:1fr; gap:16px; }
 #clip-planner .planner-tools { gap:12px; }
 #clip-planner .planner-tools h3 { flex-basis:100%; }
 #clip-planner .planner-calculator { grid-template-columns:1fr; gap:24px; }
 #clip-planner .planner-results { border-left:0; border-top:2px solid #176653; padding:10px 0 0; }
 #clip-planner dd { font-size:20px; }
 #clip-planner .planner-next .planner-primary { width:100%; justify-content:center; text-align:center; }
}
