/* =========================================================
   CALLUGO — legal / policy pages
   Extends styles.css design tokens; does not redefine them.
   ========================================================= */
.legal-section{padding-block:clamp(48px,8vw,96px);position:relative}
.legal-wrap{max-width:760px}
.legal-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:28px;font:600 .88rem var(--font-display);color:var(--taupe);transition:color .2s}
.legal-back .ico{width:16px;height:16px}
.legal-back:hover{color:var(--amber)}

.callugo-policy{color:var(--bone-dim);font:400 16px/1.72 var(--font-body)}
.callugo-policy__header{padding-bottom:26px;border-bottom:1px solid var(--line-2);margin-bottom:24px}
.callugo-policy__header .eyebrow{margin-bottom:14px}
.callugo-policy h1{font-size:clamp(1.9rem,1rem + 3.2vw,2.75rem);color:var(--bone);margin:0 0 10px}
.callugo-policy__date{color:var(--taupe);font:500 .85rem var(--font-mono)}
.callugo-policy__intro{font-size:1.05rem;color:var(--bone);margin:0 0 28px}
.callugo-policy h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;font-size:1.2rem;color:var(--bone);margin:38px 0 12px;padding-left:16px;border-left:3px solid var(--amber)}
.callugo-policy p{margin:0 0 15px}
.callugo-policy ul{padding-left:4px;margin:0 0 18px;list-style:none}
.callugo-policy li{position:relative;padding-left:22px;margin:0 0 9px}
.callugo-policy li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--amber)}
.callugo-policy a{color:var(--amber-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(245,184,61,.4)}
.callugo-policy a:hover{color:var(--amber)}
.callugo-policy__form{margin-top:16px;padding:22px 24px;border-radius:var(--r-lg);background:var(--charcoal);border:1px solid var(--line-2)}
.callugo-policy__form p{margin:0 0 12px;font-size:.95rem}
.callugo-policy__form p:last-child{margin-bottom:0}

.callugo-policy__toc{padding:20px 24px 16px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--charcoal);margin:0 0 34px}
.callugo-policy__toc>p{font:700 .78rem var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--amber-2);margin:0 0 12px}
.callugo-policy__toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 28px;padding-left:20px;margin:0;color:var(--bone-dim)}
.callugo-policy__toc li{padding-left:2px;margin:0;font-size:.85rem;line-height:1.75}
.callugo-policy__toc li::before{content:none}
.callugo-policy__toc a{color:var(--bone-dim);text-decoration:none}
.callugo-policy__toc a:hover{color:var(--amber)}
.callugo-policy__important{color:var(--bone);background:rgba(245,184,61,.08);border-left:3px solid var(--amber);padding:13px 16px;margin:14px 0 18px;border-radius:0 var(--r-md) var(--r-md) 0;font-weight:600}

@media(max-width:600px){
  .callugo-policy h2{padding-left:13px}
  .callugo-policy__toc ol{grid-template-columns:1fr}
}

/* =========================================================
   CALLUGO — outbound call-rates page
   ========================================================= */
.rates-wrap{max-width:900px}
.rates-head{padding-bottom:22px;border-bottom:1px solid var(--line-2);margin-bottom:24px}
.rates-head .eyebrow{margin-bottom:14px}
.rates-head h1{font-size:clamp(1.9rem,1rem + 3.2vw,2.75rem);color:var(--bone);margin:0 0 10px}
.rates-head p{color:var(--bone-dim);font:400 16px/1.68 var(--font-body);margin:0 0 10px;max-width:640px}
.rates-head p:last-child{margin-bottom:0}
.rates-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--taupe);font:500 .82rem var(--font-mono);margin-top:14px}
.rates-meta b{color:var(--amber-2);font-weight:700}

.rates-search{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 16px;border-radius:var(--r-md);background:rgba(243,239,232,.05);margin:22px 0 16px}
.rates-search:focus-within{box-shadow:0 0 0 2px var(--amber)}
.rates-search .ico{width:18px;height:18px;color:var(--taupe);flex:none}
.rates-search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--bone);font:500 .96rem var(--font-body);padding:14px 0}
.rates-search input::placeholder{color:var(--taupe)}
.rates-count{color:var(--taupe);font:500 .82rem var(--font-mono);margin:0 0 14px}

.rates-table-wrap{border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--charcoal);overflow:hidden}
.rates-table{width:100%;border-collapse:collapse}
.rates-table thead th{position:sticky;top:0;background:var(--charcoal-2);color:var(--taupe);font:700 .72rem var(--font-display);letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:13px 18px;border-bottom:1px solid var(--line-2)}
.rates-table thead th.num{text-align:right}
.rates-table tbody td{padding:11px 18px;border-bottom:1px solid var(--line);color:var(--bone-dim);font-size:.92rem}
.rates-table tbody tr:last-child td{border-bottom:0}
.rates-table tbody tr:hover td{background:rgba(243,239,232,.03)}
.rates-table td.num{text-align:right;color:var(--bone);font:600 .92rem var(--font-mono);white-space:nowrap}
.rates-table td.dest{color:var(--bone);font-weight:600}
.rates-empty{padding:40px 18px;text-align:center;color:var(--taupe);font-size:.92rem;display:none}
.rates-empty.show{display:block}
.rates-table-wrap.empty table{display:none}

.rates-more{text-align:center;padding:18px 0 4px;color:var(--taupe);font:500 .85rem var(--font-mono)}

@media(max-width:600px){
  .rates-table thead th,.rates-table tbody td{padding:10px 12px;font-size:.85rem}
}
