/* 1.10.2: concise visual groups for fees, information handling and lead times. */
.gs-site .sd-detail #gs-costs>.gs-cost-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0;margin:0!important}
.gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-item{grid-column:auto;min-width:0;padding:18px 20px;background:#e8f3ec;border:0;border-radius:18px}
.gs-site .sd-detail #gs-costs .si-cost-item dt,.gs-site .sd-detail #gs-data .si-data-item dt{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:15px;font-weight:600;color:#214c3d;line-height:1.65}
.gs-site .sd-detail :is(.si-cost-item,.si-data-item) .gs-icon{flex:none;width:26px;height:26px}
.gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-price{background:#faf7ef}
.gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-return{background:#eef4f7}
.gs-site .sd-detail #gs-costs .si-cost-price dd{font-size:24px;line-height:1.5;font-weight:600;color:#214c3d}
.gs-site .sd-detail #gs-costs .si-cost-item dd{margin:0;line-height:1.8}
.gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-contract{grid-column:1/-1;display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;background:#faf7ef}
.gs-site .sd-detail #gs-costs .si-cost-contract dt{align-self:start;margin:0}
.gs-site .sd-detail #gs-costs .si-cost-item .gs-fact-status{font-size:12px;line-height:1.5;padding:4px 9px;margin:0 0 8px}
/* Keep chatFLORA G's requested table, with a smaller rhythm and clear row labels. */
.gs-site .cf-detail #gs-costs>.cf-cost-table{margin-top:0;line-height:1.8}
.gs-site .cf-detail #gs-costs>.cf-cost-table :is(th,td){padding:12px 18px}
.gs-site .cf-detail #gs-costs>.cf-cost-table tbody tr:first-child td{font-size:22px;font-weight:600;color:#214c3d}
.gs-site .sd-detail #gs-data>.gs-data-list,.gs-site .sd-detail #gs-data .si-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;margin:0 0 24px}
.gs-site .sd-detail #gs-data .si-data-item{display:block;padding:18px 20px;border:0;border-radius:18px;background:#eef4f7;min-width:0}
.gs-site .sd-detail #gs-data .si-data-item h4{display:flex;align-items:center;gap:8px;font-size:15px;line-height:1.65;margin:0 0 10px!important;color:#214c3d}
.gs-site .sd-detail #gs-data .si-data-body>p{margin:0!important;font-size:16px;line-height:1.85}
.gs-site .sd-detail #gs-data .si-data-body>p+p{margin-top:8px!important}
.gs-site .sd-detail #gs-data .si-data-item:nth-child(2){background:#e8f3ec}
.gs-site .sd-detail #gs-data .si-data-item:nth-child(3){background:#faf7ef}
.gs-site .sd-detail #gs-data .si-data-item dd{margin:0;font-size:16px;line-height:1.85}
.gs-site .sc-comparison-spacing .si-period-list{display:grid;gap:10px;margin:20px 0 0}
.gs-site .sc-comparison-spacing .si-period-item{display:grid;grid-template-columns:160px minmax(0,1fr);gap:20px;padding:18px 20px;background:#eef4f7;border:0;border-radius:18px;min-width:0}
.gs-site .sc-comparison-spacing .si-period-item h4{display:flex;align-items:center;gap:8px;align-self:start;margin:0!important;font-size:16px;line-height:1.8}
.gs-site .sc-comparison-spacing .si-period-item h4 .gs-icon{flex:none;width:26px;height:26px}
.gs-site .sc-comparison-spacing .si-period-body>p{margin:0!important;font-size:16px;line-height:1.85}
.gs-site .sc-comparison-spacing .si-period-body>p+p{margin-top:8px!important}
.gs-site .sc-comparison-spacing .si-period-body>p:nth-child(n+3){font-size:14px}
.gs-site .sc-comparison-spacing .si-period-note{padding:14px 18px;background:#faf7ef;border-radius:14px;margin-top:12px}
.gs-site .sc-comparison-spacing .si-period-note>p{margin:0!important;font-size:14px;line-height:1.85}
.gs-site .sc-comparison-spacing .si-period-note>p+p{margin-top:6px!important}
/* Reading continuations keep the same comfortable bottom space as sections. */
.gs-site .sc-comparison-spacing>.gs-container:has(>.gs-editorial):not(.gs-section){padding-bottom:96px}
@media(max-width:799px){
 .gs-site .sc-comparison-spacing>.gs-container:has(>.gs-editorial):not(.gs-section){padding-bottom:64px}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-price{grid-column:1/-1}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-item{padding:16px}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts>.si-cost-contract{grid-template-columns:1fr;gap:10px}
 .gs-site .sd-detail #gs-data>.gs-data-list,.gs-site .sd-detail #gs-data .si-data-grid{gap:10px}
 .gs-site .sc-comparison-spacing .si-period-item{grid-template-columns:1fr;gap:10px;padding:16px}
}
@media(max-width:599px){
 .gs-site .sd-detail #gs-costs>.gs-cost-facts{grid-template-columns:1fr}
 .gs-site .sd-detail #gs-data>.gs-data-list,.gs-site .sd-detail #gs-data .si-data-grid{grid-template-columns:1fr}
 .gs-site .sd-detail #gs-data .si-data-item{padding:16px}
 .gs-site .sd-detail #gs-costs .si-cost-price dd{font-size:23px}
 .gs-site .sc-comparison-spacing .si-period-body>p:nth-child(n+3){font-size:16px}
 .gs-site .cf-detail #gs-costs>.cf-cost-table :is(th,td){padding:12px}
}

/* 1.10.20: sparse fee summaries use their actual item count. A two-item
   summary pairs the price and contract cards instead of leaving empty columns
   and stretching a short contract across a separate full-width row. */
.gs-site .sd-detail #gs-costs>.gs-cost-facts:has(>.si-cost-item:only-child){grid-template-columns:minmax(0,520px)}
.gs-site .sd-detail #gs-costs>.gs-cost-facts:has(>.si-cost-item:nth-child(2):last-child)>.si-cost-contract dd{font-size:20px;font-weight:600;color:#214c3d}
@media(min-width:600px){
 .gs-site .sd-detail #gs-costs>.gs-cost-facts:has(>.si-cost-item:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts:has(>.si-cost-item:nth-child(2):last-child)>.si-cost-item{grid-column:auto}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts:has(>.si-cost-item:nth-child(2):last-child)>.si-cost-contract{display:block}
 .gs-site .sd-detail #gs-costs>.gs-cost-facts:has(>.si-cost-item:nth-child(2):last-child)>.si-cost-contract dt{margin-bottom:10px}
}
