/* Live portfolio: the server supplies every price and payment schedule. */
.directory-aside > .text-link { margin-top: 15px; }
.domain-directory { border: 1px solid var(--line); border-radius: 16px; background: #fff; overflow: clip; scroll-margin-top: 110px; }
.dd-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 26px 28px; }
.dd-toolbar h2 { margin-top: 6px; font-size: 26px; letter-spacing: -.035em; }
.dd-toolbar .eyebrow { font-size: 10px; }
.dd-total { flex-shrink: 0; padding: 6px 12px; border: 1px solid #dce4f8; border-radius: 7px; background: var(--blue-pale); color: #3152a0; font-size: 12px; font-weight: 600; }
.dd-filters { margin: 0; padding: 23px 28px 20px; border-block: 1px solid var(--line); background: var(--pale); }
.dd-filter-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, .9fr) minmax(0, 1.15fr) minmax(0, 1.1fr); gap: 15px; }
.dd-filter-grid > label, .dd-plan-picker { display: flex; min-width: 0; flex-direction: column; gap: 7px; }
.dd-filter-grid > label > span, .dd-plan-picker > label { color: #485267; font-size: 11px; font-weight: 650; line-height: 1.6; }
.dd-filter-grid input, .dd-filter-grid select, .dd-plan-picker select { width: 100%; min-width: 0; min-height: 46px; margin: 0; padding: 11px 12px; border: 1px solid #d1d9e8; border-radius: 7px; background: #fff; color: var(--ink); font: inherit; font-size: 13px; line-height: 1.55; }
.dd-filter-grid select, .dd-plan-picker select { padding-right: 26px; cursor: pointer; }
.dd-filter-grid input::placeholder { color: #788294; opacity: 1; }
.dd-filter-grid input:hover, .dd-filter-grid select:hover, .dd-plan-picker select:hover { border-color: #a4b4d2; }
.dd-filter-bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 17px; }
.dd-checkbox { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; color: #485267; font-size: 12px; cursor: pointer; }
.dd-checkbox input { width: 17px; height: 17px; margin: 0; accent-color: var(--blue); cursor: pointer; }
.dd-filter-actions { display: flex; align-items: center; gap: 22px; }
.dd-reset { padding-block: 10px; color: #59677d; font-size: 12px; text-decoration: underline; }
.dd-reset:hover { color: var(--blue); }
.dd-search-button { min-height: 44px; padding: 10px 16px; font-size: 12px; }
.dd-search-button .icon { width: 16px; height: 16px; }
.dd-currency-note { margin-top: 12px; font-size: 11px; }
.dd-notice { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 18px 28px; border-bottom: 1px solid #e0e7f7; background: #f4f7ff; }
.dd-notice > div { min-width: 0; max-width: 830px; }
.dd-notice p { color: #516182; font-size: 12px; line-height: 1.75; }
.dd-notice p + p { margin-top: 3px; }
.dd-notice strong { display: inline-flex; align-items: center; gap: 8px; color: #284ea4; font-size: 12px; }
.dd-notice strong::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.dd-notice .dd-updated { margin-top: 5px; color: #6b778e; font-size: 10px; }
.dd-notice--stale, .dd-notice--unavailable { border-color: #eadfc5; background: #fff9ec; }
.dd-notice--stale p, .dd-notice--unavailable p { color: #746449; }
.dd-notice--stale strong, .dd-notice--unavailable strong { color: #78571d; }
.dd-refresh { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; gap: 12px; min-height: 42px; padding: 9px 12px; border: 1px solid #d1dcf7; border-radius: 7px; background: #fff; color: #365489; font-size: 11px; font-weight: 600; line-height: 1.5; text-decoration: none; }
.dd-refresh:hover { background: var(--blue-pale); border-color: #acbfe9; }
.dd-refresh > span { font-size: 20px; font-weight: 500; line-height: 1; }
.dd-results-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 28px; }
.dd-results-bar > p { color: #414d63; font-size: 12px; font-weight: 600; }
.dd-results-bar > span { color: #768095; font-size: 11px; }
.dd-output[aria-busy="true"] .dd-results-bar > p::after { content: ' · Updating…'; color: var(--blue); font-weight: 500; }
.dd-column-headings, .dd-domain-row { display: grid; grid-template-columns: minmax(0, 2.05fr) minmax(0, .95fr) minmax(0, 1.45fr) minmax(0, 1.2fr); column-gap: 22px; }
.dd-column-headings { padding: 12px 28px; border-block: 1px solid var(--line); background: #fafbfe; color: #737e93; font-size: 10px; font-weight: 600; }
.dd-column-headings > :last-child { text-align: right; }
.dd-domain { background: #fff; }
.dd-domain + .dd-domain { border-top: 1px solid var(--line); }
.dd-domain-row { align-items: center; min-width: 0; padding: 28px; }
.dd-domain-row > div { min-width: 0; }
.dd-name-cell h3 { font-size: clamp(18px, 1.75vw, 22px); font-weight: 650; line-height: 1.35; letter-spacing: -.035em; }
.dd-name-cell h3 > a { color: var(--ink); text-decoration: none; overflow-wrap: anywhere; }
.dd-name-cell h3 > a:hover { color: var(--blue); }
.dd-domain-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.dd-extension { padding: 2px 7px; border: 1px solid #e1e6f0; border-radius: 5px; background: #f8f9fc; color: #687386; font-size: 10px; line-height: 1.5; }
.dd-offers { color: #5d687d; font-size: 10px; line-height: 1.6; text-decoration: underline; }
.dd-lander { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; margin-top: 5px; color: #586c91; font-size: 11px; text-decoration: none; }
.dd-lander:hover { color: var(--blue); text-decoration: underline; }
.dd-lander .icon { width: 13px; height: 13px; }
.dd-price-cell { align-self: center; }
.dd-price { display: block; color: var(--blue); font-size: clamp(20px, 1.9vw, 25px); font-weight: 650; line-height: 1.3; letter-spacing: -.04em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.dd-price-note { display: block; margin-top: 6px; color: #7a8496; font-size: 10px; }
.dd-mobile-label { display: none; }
.dd-term-label { display: inline-block; margin-bottom: 7px; color: #4e5c75; font-size: 10px; font-weight: 600; }
.dd-lease-cell p { color: #657188; font-size: 12px; line-height: 1.7; }
.dd-lease-cell p + p { margin-top: 2px; }
.dd-lease-cell strong { color: #314262; font-size: 14px; font-weight: 650; font-variant-numeric: tabular-nums; }
.dd-regular-note { display: block; margin-top: 4px; color: #68768e; font-size: 11px; line-height: 1.65; }
.dd-lease-cell .dd-no-lease { font-size: 12px; }
.dd-buy-cell { display: flex; flex-direction: column; align-items: stretch; gap: 8px; text-align: center; }
.dd-buy { min-height: 43px; padding: 10px 12px; gap: 10px; font-size: 12px; }
.dd-buy .icon { width: 15px; height: 15px; }
.dd-enquire { padding-block: 2px; color: #526585; font-size: 10px; text-decoration: none; }
.dd-enquire:hover, .dd-purchase-terms:hover { text-decoration: underline; color: var(--blue); }
.dd-purchase-terms { color: #68768e; font-size: 11px; text-decoration: underline; }
.dd-disabled, .dd-disabled:hover { border-color: #dbe1ec; background: #f1f4f8; color: #7b8494; transform: none; cursor: default; pointer-events: none; }
.dd-lease-details { border-top: 1px solid #edf0f6; }
.dd-lease-details > summary { display: flex; align-items: center; gap: 18px; min-height: 49px; padding: 12px 28px; color: var(--blue); font-size: 11px; font-weight: 600; line-height: 1.65; list-style: none; cursor: pointer; }
.dd-lease-details > summary::-webkit-details-marker { display: none; }
.dd-lease-details > summary::marker { content: ''; }
.dd-lease-details > summary:hover { background: #f9fbff; }
.dd-summary-note { color: #8490a5; font-size: 10px; font-weight: 400; }
.dd-chevron { margin-left: auto; font-size: 20px; font-weight: 400; line-height: 1; transition: transform .15s; }
.dd-lease-details[open] > summary { background: #f4f7ff; border-bottom: 1px solid #dfe7fb; }
.dd-lease-details[open] .dd-chevron { transform: rotate(45deg); }
.dd-lease-content { padding: 26px 28px; background: #f8faff; }
.dd-lease-intro { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(190px, .8fr); align-items: end; gap: 30px; margin-bottom: 22px; }
.dd-lease-intro > p { max-width: 650px; color: #64708a; font-size: 12px; line-height: 1.8; }
.dd-plan { padding: 23px 24px; border: 1px solid #dce4f5; border-radius: 10px; background: #fff; }
.dd-plan + .dd-plan { margin-top: 16px; }
.dd-plan[hidden] + .dd-plan { margin-top: 0; }
.dd-plan-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 11px; margin-bottom: 23px; }
.dd-plan-heading h4 { font-size: 19px; letter-spacing: -.035em; }
.dd-recommended { padding: 3px 7px; border-radius: 5px; background: var(--blue-pale); color: #4260ac; font-size: 9px; font-weight: 650; line-height: 1.6; }
.dd-payment-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0; }
.dd-payment-grid > div { min-width: 0; }
.dd-payment-grid dt { margin: 0 0 7px; color: #62718a; font-size: 11px; font-weight: 500; line-height: 1.6; }
.dd-payment-grid dd { margin: 0; color: #2b3c5c; font-size: 22px; font-weight: 600; line-height: 1.4; letter-spacing: -.025em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.dd-payment-grid small { display: block; margin-top: 6px; color: #68768e; font-size: 11px; font-weight: 400; line-height: 1.6; letter-spacing: 0; }
.dd-plan-total { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 24px; padding-top: 22px; border-top: 1px solid #e3e8f3; }
.dd-plan-total > div > span { display: block; color: #536482; font-size: 11px; }
.dd-plan-total strong { display: block; margin-top: 5px; color: var(--blue); font-size: 28px; font-weight: 650; line-height: 1.3; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.dd-plan-total p { margin-top: 7px; color: #68768e; font-size: 11px; }
.dd-plan-actions { display: flex; align-items: flex-end; flex-direction: column; gap: 12px; }
.dd-plan-actions .button { min-height: 43px; padding: 10px 15px; font-size: 12px; }
.dd-terms { display: inline-flex; align-items: center; gap: 6px; color: #52668d; font-size: 11px; text-decoration: underline; }
.dd-terms .icon { width: 12px; height: 12px; }
.dd-lease-footnote { margin-top: 17px; color: #68768e; font-size: 11px; line-height: 1.8; }
.dd-bottom { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 21px 28px; border-top: 1px solid var(--line); background: #fcfdff; }
.dd-bottom > p { max-width: 570px; color: #7a8598; font-size: 10px; line-height: 1.8; }
.dd-pagination { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.dd-pagination > a, .dd-pagination > span { display: inline-flex; align-items: center; justify-content: center; min-width: 35px; min-height: 38px; padding: 7px 10px; border: 1px solid #dce3f0; border-radius: 6px; color: #526380; font-size: 11px; font-weight: 550; line-height: 1.5; text-decoration: none; }
.dd-pagination > a:hover { color: var(--blue); border-color: #aabdF0; background: var(--blue-pale); }
.dd-pagination > [aria-current="page"] { color: #fff; background: var(--blue); border-color: var(--blue); }
.dd-pagination > .dd-page-disabled, .dd-pagination > .dd-page-gap { color: #9aa2b2; background: none; border-color: transparent; }
.dd-pagination > .dd-page-gap { min-width: 18px; padding-inline: 2px; }
.dd-empty { padding: 56px 26px 59px; text-align: center; }
.dd-empty-mark { display: grid; place-items: center; width: 49px; height: 49px; margin: 0 auto 20px; border: 1px solid #d9e3fb; border-radius: 12px; background: var(--blue-pale); color: var(--blue); }
.dd-empty h3 { font-size: clamp(25px, 3vw, 31px); }
.dd-empty p { max-width: 500px; margin: 15px auto 24px; font-size: 14px; line-height: 1.8; }
.dd-empty .button { font-size: 12px; }
@media (max-width: 1050px) {
  .dd-column-headings, .dd-domain-row { grid-template-columns: minmax(0, 1.95fr) minmax(0, .95fr) minmax(0, 1.35fr) minmax(0, 1.2fr); column-gap: 15px; }
  .dd-toolbar, .dd-notice, .dd-results-bar, .dd-column-headings, .dd-domain-row, .dd-lease-details > summary, .dd-bottom { padding-inline: 23px; }
  .dd-filters, .dd-lease-content { padding-inline: 23px; }
  .dd-name-cell h3 { font-size: 19px; }
}
@media (max-width: 900px) {
  .dd-filter-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
  .dd-column-headings { display: none; }
  .dd-domain-row { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 20px 30px; padding-block: 25px; border-top: 1px solid #edf0f6; }
  .dd-name-cell { grid-column: 1; grid-row: 1; }
  .dd-price-cell { grid-column: 1; grid-row: 2; align-self: start; }
  .dd-lease-cell { grid-column: 2; grid-row: 2; }
  .dd-buy-cell { grid-column: 2; grid-row: 1; justify-self: stretch; max-width: 220px; width: 100%; margin-left: auto; }
  .dd-name-cell h3 { font-size: 25px; }
  .dd-mobile-label { display: block; margin-bottom: 7px; color: #69768e; font-size: 10px; font-weight: 600; }
  .dd-price { font-size: 27px; }
  .dd-term-label { margin-bottom: 5px; }
  .dd-lease-intro { gap: 22px; grid-template-columns: minmax(0, 1.5fr) minmax(190px, 1fr); }
  .dd-payment-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 20px; }
  .dd-bottom { align-items: flex-start; flex-direction: column; gap: 16px; }
  .dd-pagination { justify-content: flex-start; }
}
@media (max-width: 600px) {
  .domain-directory { border-radius: 12px; }
  .dd-toolbar { padding: 23px 20px; gap: 15px; }
  .dd-toolbar h2 { font-size: 23px; }
  .dd-total { padding: 5px 8px; font-size: 10px; }
  .dd-filters { padding: 20px; }
  .dd-filter-grid { grid-template-columns: minmax(0, 1fr); gap: 15px 12px; }
  .dd-search { grid-column: 1 / -1; }
  .dd-filter-grid > label:last-child { grid-column: 1 / -1; }
  .dd-filter-grid input, .dd-filter-grid select, .dd-plan-picker select { font-size: 16px; min-height: 47px; }
  .dd-filter-grid > label > span { min-height: 18px; font-size: 10px; }
  .dd-filter-bottom { flex-direction: column; align-items: stretch; gap: 9px; margin-top: 12px; }
  .dd-filter-actions { justify-content: space-between; gap: 12px; }
  .dd-search-button { min-height: 45px; padding-inline: 13px; }
  .dd-notice { padding: 18px 20px; align-items: flex-start; flex-direction: column; gap: 13px; }
  .dd-notice p { font-size: 11px; }
  .dd-refresh { min-height: 40px; }
  .dd-results-bar { padding: 18px 20px; align-items: flex-start; flex-direction: column; gap: 4px; }
  .dd-results-bar > p { font-size: 11px; }
  .dd-results-bar > span { font-size: 10px; }
  .dd-domain-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 20px 16px; padding: 23px 20px; }
  .dd-name-cell { grid-column: 1 / -1; }
  .dd-name-cell h3 { font-size: 23px; }
  .dd-price { font-size: 25px; }
  .dd-buy-cell { grid-column: 1 / -1; grid-row: 3; align-items: stretch; max-width: none; margin: 0; gap: 9px; }
  .dd-buy { min-height: 46px; }
  .dd-enquire { min-height: 27px; padding-top: 5px; font-size: 11px; }
  .dd-purchase-terms { font-size: 11px; }
  .dd-lease-cell strong { font-size: 14px; }
  .dd-lease-cell p { font-size: 11px; }
  .dd-regular-note { font-size: 11px; }
  .dd-lease-details > summary { gap: 10px; padding: 14px 20px; font-size: 11px; }
  .dd-summary-note { display: none; }
  .dd-lease-content { padding: 20px 16px; }
  .dd-lease-intro { grid-template-columns: minmax(0, 1fr); gap: 17px; }
  .dd-lease-intro > p { font-size: 12px; }
  .dd-plan { padding: 21px 16px; }
  .dd-plan-heading { margin-bottom: 21px; gap: 9px; }
  .dd-plan-heading h4 { font-size: 19px; }
  .dd-payment-grid { gap: 23px 13px; }
  .dd-payment-grid dt { font-size: 11px; }
  .dd-payment-grid dd { font-size: 21px; }
  .dd-payment-grid small { font-size: 11px; }
  .dd-plan-total { align-items: stretch; flex-direction: column; gap: 19px; margin-top: 24px; padding-top: 21px; }
  .dd-plan-total strong { font-size: 29px; }
  .dd-plan-actions { align-items: stretch; gap: 13px; }
  .dd-plan-actions .button { min-height: 45px; }
  .dd-terms { align-self: center; text-align: center; font-size: 11px; }
  .dd-lease-footnote { font-size: 11px; }
  .dd-bottom { padding: 20px; }
  .dd-bottom > p { font-size: 10px; }
  .dd-pagination { gap: 4px; }
  .dd-pagination > a, .dd-pagination > span { min-width: 31px; padding-inline: 7px; font-size: 10px; }
  .dd-empty { padding: 40px 20px 43px; }
  .dd-empty p { font-size: 13px; }
}
@media (max-width: 370px) {
  .dd-toolbar { align-items: flex-start; flex-direction: column; gap: 12px; }
  .dd-filter-grid { grid-template-columns: minmax(0, 1fr); }
  .dd-filter-grid > label { grid-column: 1; }
  .dd-filter-actions { align-items: stretch; flex-direction: column-reverse; gap: 7px; }
  .dd-reset { align-self: center; }
  .dd-name-cell h3 { font-size: 21px; }
  .dd-price { font-size: 22px; }
  .dd-payment-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .dd-chevron { transition: none; } }
@media print {
  .dd-filters, .dd-refresh, .dd-pagination, .dd-buy-cell, .dd-plan-actions, .dd-plan-picker { display: none !important; }
  .domain-directory, .dd-domain, .dd-plan { overflow: visible; border-color: #bbb; }
  .dd-domain { break-inside: avoid; }
  .dd-domain-row { grid-template-columns: 2fr 1fr 1fr; }
  .dd-lease-content { background: #fff; }
}
