/* Screen presentation: generous spacing, simple controls, and a clear reading order.
   Brand fonts and palette remain defined by fonts.css and styles.css. */
@media screen {
 body{font-size:15px;line-height:1.65}
 .site-header{max-width:1248px;padding:24px 40px;border:0}
 .brand strong{font-size:21px}.brand span{font-size:12px}
 .header-actions{gap:10px}
 .primary-button,.outline-button{border-radius:999px;padding:12px 22px;font-size:12px;min-height:44px}
 .primary-button:hover{background:var(--forest)}
 .outline-button:hover{background:var(--light)}
 #contact-options{border-radius:20px;padding:8px;top:calc(100% + 12px)}
 #contact-options a{border-radius:12px;padding:14px}
 .estimate-disclosure{max-width:1168px;margin:4px auto 0;padding:18px 24px;background:var(--light);border-radius:16px;font-size:16px;line-height:1.5}
 main{max-width:1248px;padding:0 40px}
 .estimate-date-bar{justify-content:center;gap:12px 18px;background:none;border:0;padding:0;margin:36px 0 0;flex-wrap:wrap}
 .estimate-date-bar>span:first-child{font-size:10px;letter-spacing:1.5px}
 .estimate-date-bar strong{font-size:24px;letter-spacing:-.5px}
 .estimate-date-bar .pricing-note{margin:0;border:1px solid var(--gray);border-radius:999px;padding:5px 12px;font-size:11px}
 .intro{display:block;text-align:center;padding:48px 0 52px}
 .eyebrow{font-size:11px;letter-spacing:1.8px;margin-bottom:18px}
 h1{font-size:clamp(42px,5.3vw,68px);line-height:1.04;letter-spacing:-2px}
 .view-nav{justify-content:center;gap:8px;border:0;flex-wrap:wrap;padding-bottom:38px}
 .view-nav button{border:1px solid transparent;border-radius:999px;padding:12px 20px;font-size:13px;min-height:46px;background:var(--light)}
 .view-nav button.active{background:var(--teal);color:var(--white);border-color:var(--teal)}
 .view-nav button span{background:var(--white);color:var(--teal);font-size:11px;min-width:24px;margin-left:8px}
 .view-nav a{margin:0 0 0 12px;font-size:12px;padding:10px 0;border:0;width:auto}
 .comparison-heading{margin:28px 0 24px;align-items:center}
 .comparison-heading h2{font-size:36px;letter-spacing:-1px}
 .comparison-heading p{font-size:12px;max-width:420px;text-align:right;line-height:1.6}
 .comparison-tabs{display:flex;width:fit-content;max-width:100%;gap:4px;background:var(--light);border:1px solid var(--gray);border-radius:999px;padding:5px;margin:0 0 24px}
 .comparison-tabs button{font-size:13px;line-height:1.3;padding:13px 23px;border:0;border-radius:999px;min-height:44px;white-space:nowrap}
 .comparison-tabs button[aria-selected="true"]{background:var(--white);color:var(--teal)}
 #comparison-note{padding:20px 24px;background:var(--light);border-radius:18px;max-width:none;font-size:13px;line-height:1.8}
 .comparison-scroll{border-radius:24px;border:1px solid var(--gray);background:var(--white)}
 table{font-size:14px}
 th,td{padding:22px 24px}
 th:first-child,td:first-child{width:30%}
 thead th{background:var(--white);font-family:var(--display);font-size:20px;line-height:1.3;padding-top:30px;padding-bottom:30px;text-align:center;letter-spacing:-.35px}
 thead th:first-child{font-family:var(--regular);font-size:13px;letter-spacing:0}
 thead th span{font-size:12px;letter-spacing:0;margin-top:10px;line-height:1.6}
 tbody td{text-align:center;font-size:15px}
 tbody th{font-size:13px;line-height:1.7}
 tr.highlight th,tr.highlight td{padding-top:27px;padding-bottom:27px}
 tr.highlight td{font-size:clamp(23px,2.5vw,32px);letter-spacing:-.7px;white-space:nowrap}
 tr.cash-row th,tr.cash-row td{padding-top:24px;padding-bottom:24px}
 tr.cash-row td{font-family:var(--display);font-size:25px;letter-spacing:-.4px;white-space:nowrap}
 tr.group th{padding:20px 24px;font-size:10px;letter-spacing:1.4px}
 .term-link{border:0;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:var(--gray)}
 .term-link:hover{text-decoration-style:solid;text-decoration-color:currentColor}
 .bottom-notes{gap:24px;padding:32px 0 64px}
 .bottom-notes>div{background:var(--light);border-radius:24px;padding:28px 30px}
 .bottom-notes h3{font-family:var(--display);font-size:23px;letter-spacing:-.4px}
 .bottom-notes p{font-size:13px;line-height:1.8;margin-top:12px}
 footer{max-width:1168px;padding:28px 0 40px;font-size:11px;line-height:1.8}
 #guide-view{max-width:900px;margin:auto;padding:16px 0 64px}
 #guide-view .section-heading{margin:20px 0 32px}
 #guide-view h2{font-size:38px;letter-spacing:-1px}
 #guide-view .section-heading p:not(.eyebrow){font-size:14px;margin-top:16px}
 input[type=search]{border-radius:16px;background:var(--light);padding:16px 20px;font-size:15px;width:100%;max-width:none;min-height:52px}
 .search-label{font-size:13px}
 .definition-group{margin:40px 0;background:var(--light);border-radius:24px;padding:28px 32px}
 .definition-group h3{font-size:27px;letter-spacing:-.5px;margin-bottom:12px}
 summary{font-size:14px;padding:20px 28px 20px 0;line-height:1.6}
 details:last-child{border-bottom:0}details p{font-size:14px;line-height:1.9;padding-bottom:24px}
 dialog,#definition-dialog{border-radius:24px;border-top:0}
 #definition-dialog{padding:32px;max-height:85vh}
 .definition-header h2{font-size:28px;letter-spacing:-.5px}
 #close-definition,.close{border-radius:50%;background:var(--light);min-width:40px;min-height:40px}
 #definition-body p{font-size:15px;line-height:1.85;margin:22px 0}
 #full-guide{font-size:13px;line-height:1.6}
 .dialog-header{border-top:0}
 .detail-summary>div{border-radius:18px}
 @media(max-width:1000px){
  .comparison-heading{flex-direction:row;align-items:center}
  .comparison-heading p{max-width:320px}
  th,td{padding:20px 16px}thead th{font-size:17px}
  footer{margin:0 40px}
  .estimate-disclosure{margin-left:40px;margin-right:40px}
 }
 @media(max-width:700px){
  .sample-banner{font-size:9px}
  .site-header{padding:22px 20px;gap:18px}
  .brand strong{font-size:20px}
  .header-actions{width:100%}
  .estimate-disclosure{margin:0 20px;padding:16px;border-radius:14px;font-size:16px}
  main{padding:0 20px}
  .estimate-date-bar{margin-top:28px;gap:7px 12px}
  .estimate-date-bar>span:first-child{width:100%;text-align:center;font-size:10px}
  .estimate-date-bar strong{font-size:23px}
  .estimate-date-bar .pricing-note{width:auto;margin:0;font-size:10px;padding:4px 9px}
  .intro{padding:34px 0 30px}
  .eyebrow{font-size:9px;letter-spacing:1.2px;margin-bottom:16px}
  h1{font-size:40px;letter-spacing:-1.4px;line-height:1.08}
  .view-nav{gap:6px;padding-bottom:20px}
  .view-nav button{font-size:11px;padding:11px 13px}
  .view-nav button span{font-size:10px;margin-left:4px;padding:0 5px;min-width:20px}
  .view-nav a{margin:8px 0 0;width:100%;text-align:center;font-size:12px}
  .comparison-heading{display:block;margin:22px 0 20px}
  .comparison-heading h2{font-size:30px}
  .comparison-heading p{text-align:left;margin-top:10px;font-size:11px;max-width:none}
  .comparison-tabs{width:100%;gap:2px;margin-bottom:18px}
  .comparison-tabs button{flex:1;font-size:11px;padding:11px 8px;min-height:42px}
  .comparison-scroll{border-radius:18px}
  table{min-width:780px}table[data-count='1']{min-width:0}
  th,td{padding:18px 16px}thead th{font-size:18px}
  tr.highlight td{font-size:25px}tr.cash-row td{font-size:23px}
  #comparison-note{padding:18px;font-size:12px}
  .mobile-hint{font-size:11px;margin:12px 4px}
  .bottom-notes{grid-template-columns:1fr;gap:16px;padding:26px 0 40px}
  .bottom-notes>div{padding:24px;border-radius:20px}
  footer{margin:0 20px;padding:24px 0 32px;font-size:10px}
  #guide-view h2{font-size:30px}.definition-group{padding:24px 20px;border-radius:20px;margin:24px 0}
  .definition-group h3{font-size:24px}
  #definition-dialog{padding:24px}.definition-header h2{font-size:24px}
 }
}

@media screen{.definition-hint{font-size:13px;line-height:1.6;margin:0 0 16px}.definition-hint + .comparison-tabs{margin-top:0}}
