.ro-page{color:#082944;font-size:1rem;line-height:1.6;background:#fff}.ro-page *{box-sizing:border-box}.ro-wrap{width:min(1200px,calc(100% - 48px));margin-inline:auto}.ro-intro{padding-top:40px;padding-bottom:24px}.ro-intro h1{font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;margin:10px 0 16px;letter-spacing:-.025em}.ro-page h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.2;margin:10px 0 20px}.ro-page h3{font-size:1.4rem;line-height:1.3}.ro-page p{margin:12px 0}.ro-workspace{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:28px;align-items:start;padding-bottom:40px}.ro-input-section{border:1px solid #abc5d5;margin-bottom:12px;background:#f5fafc}.ro-input-section summary,.ro-notes summary{padding:18px 22px;font-size:1.08rem;font-weight:800;cursor:pointer}.ro-input-section[open] summary{border-bottom:1px solid #c6dbe5}.ro-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:22px}.ro-fields label{display:flex;flex-direction:column;gap:8px;font-weight:700;min-width:0;font-size:1rem}.ro-fields input:not([type=checkbox]),.ro-fields select{width:100%;min-width:0;border:1px solid #aec9d9;background:#fff;padding:12px;font:inherit;color:#082944;min-height:48px;border-radius:0}.ro-fields input:invalid{border-color:#b12539}.ro-page :focus-visible{outline:3px solid #e9ae00;outline-offset:3px}.ro-fields .ro-check{grid-column:1/-1;display:flex;flex-direction:row;align-items:flex-start;font-size:.95rem;font-weight:500}.ro-check input{width:20px;height:20px;flex-shrink:0;margin-top:3px}.ro-help{font-size:.9rem;line-height:1.65;color:#37586d;grid-column:1/-1}.ro-preview{background:#245f85;color:#fff;padding:28px}.ro-preview h2,.ro-preview a{color:#fff}.ro-preview p{color:#d3e4ee}.ro-line{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid #d4e3eb;font-size:.95rem}.ro-line span{min-width:0}.ro-line strong{text-align:right;overflow-wrap:anywhere;font-size:1.05rem;flex-shrink:0}.ro-preview .ro-line{border-color:#35566e}.ro-preview .ro-line strong{color:#82d6ee}.ro-results,.ro-timeline{background:#245f85;color:#fff;padding:48px 0}.ro-results h2,.ro-timeline h2,.ro-timeline h3{color:#fff}.ro-results>.ro-wrap>p,.ro-timeline>.ro-wrap>p{max-width:950px;color:#d4e5ee}.ro-periods{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0 12px}.ro-periods button{min-height:48px;padding:10px 18px;border:1px solid #8fc5d8;background:transparent;color:#fff;font:inherit;font-weight:700;cursor:pointer}.ro-periods button[aria-pressed=true]{background:#80d7ee;border-color:#80d7ee;color:#082944}.ro-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.ro-result{background:#fff;color:#082944;padding:28px;min-width:0}.ro-result h3{margin-top:0}.ro-group{font-size:.85rem;letter-spacing:.07em;font-weight:800;margin-top:24px!important;color:#48667b}.ro-highlight{background:#e5f5fa;padding:14px;margin:16px 0}.ro-highlight strong{font-size:clamp(1.5rem,2.7vw,2rem);display:block;overflow-wrap:anywhere}.ro-principal{border-left:4px solid #167c9e;background:#edf8fb;padding-left:10px}.ro-change{border-left:4px solid #d6a119;padding-left:10px;background:#fff9e4}.ro-equity,.ro-cash,.ro-notes{padding-top:48px;padding-bottom:48px}.ro-equity #ro-equity,.ro-cash #ro-cash{max-width:850px}.ro-equity .ro-line:last-child,.ro-cash .ro-line:last-child{font-weight:800;border-top:2px solid #082944;background:#e9f5fb;padding:18px 12px;margin-top:8px}.ro-chart{display:block;width:100%;height:auto;margin:24px 0;background:#245f85}.ro-chart text{fill:#deedf5;font-family:inherit;font-size:14px}.ro-chart .ro-rent-line{stroke:#80d7ee;fill:none;stroke-width:4}.ro-chart .ro-own-line{stroke:#f1c54a;fill:none;stroke-width:4}.ro-chart-legend{display:flex;gap:24px;flex-wrap:wrap;font-size:.95rem}.ro-chart-legend span:before{content:'';display:inline-block;width:24px;height:4px;background:#80d7ee;vertical-align:middle;margin-right:8px}.ro-chart-legend span:last-child:before{background:#f1c54a}.ro-table-scroll{overflow-x:auto;margin-top:24px}.ro-page table{border-collapse:collapse;width:100%;font-size:.95rem}.ro-page caption{text-align:left;padding-bottom:12px;color:#d3e4ee}.ro-page th,.ro-page td{text-align:right;padding:15px 12px;border-bottom:1px solid #42617a;white-space:nowrap}.ro-page th:first-child,.ro-page td:first-child{text-align:left}.ro-page tr[data-selected=true]{background:#245f85}.ro-break{border-top:1px solid #42617a;margin-top:28px;padding-top:14px}.ro-break p{color:#d3e4ee}.ro-notes{background:#f0f7fa;padding:32px}.ro-notes a{overflow-wrap:anywhere}.ro-cta{background:#245f85;color:#fff;padding:48px 0}.ro-cta h2{color:#fff}.ro-cta p{max-width:850px}.ro-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px}.ro-links a{color:#afe7f8}.ro-error{background:#fff1f0;border:1px solid #bd3346;color:#9a1830;padding:18px;margin-bottom:24px}.ro-page [hidden]{display:none!important}@media(max-width:850px){.ro-workspace{grid-template-columns:1fr}.ro-preview{padding:24px}.ro-two{grid-template-columns:1fr}}@media(max-width:540px){.ro-wrap{width:calc(100% - 32px)}.ro-fields{grid-template-columns:1fr;padding:18px}.ro-input-section summary{padding:16px}.ro-result{padding:22px 18px}.ro-line{gap:8px;font-size:.9rem}.ro-line strong{font-size:1rem;max-width:48%}.ro-intro{padding-top:26px}.ro-results,.ro-timeline{padding:36px 0}.ro-periods{gap:6px}.ro-periods button{padding:10px 12px}.ro-notes{padding:24px 18px}.ro-chart text{font-size:16px}}

#ro-chart{overflow-x:auto}.ro-chart{min-width:680px}.ro-page .ro-equity p{max-width:900px}

.ro-optional{margin-top:24px;margin-bottom:32px;border:1px solid #abc5d5;padding:20px;background:#f5fafc}.ro-optional>summary{font-size:1.15rem;font-weight:800;cursor:pointer;padding:10px 0}.ro-optional .ro-timeline{margin-top:26px}.ro-optional .ro-timeline .ro-wrap{width:calc(100% - 32px)}.ro-optional>.ro-two{margin:24px 0}.ro-cost-detail{margin-top:18px}.ro-cost-detail summary{font-weight:700;cursor:pointer;padding:12px 0}.ro-optional>.ro-fields{padding-inline:0}.ro-optional .ro-result{border:1px solid #c6dbe5}@media(max-width:540px){.ro-optional{padding:16px}.ro-optional .ro-timeline .ro-wrap{width:calc(100% - 24px)}}

/* Reserve the desktop header height; mobile header remains in normal flow. */
body[data-page="rent-vs-own"] .ro-page{padding-top:96px}.ro-monthly-category{padding:16px 0;border-bottom:1px solid #35566e}.ro-monthly-category h3{color:#fff;margin:0 0 12px}.ro-preview .ro-highlight{color:#082944}.ro-preview .ro-highlight strong{color:#082944}@media(max-width:900px){body[data-page="rent-vs-own"] .ro-page{padding-top:0}}
