/* NRR Estates — Legal & Registration page. Tokens only (see app.css). */
.svc-eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-soft-ink);background:var(--accent-soft);padding:4px 10px;border-radius:999px;margin-bottom:12px}
.svc-split{display:grid;grid-template-columns:1.2fr .9fr;gap:28px;align-items:start;margin:8px 0 24px}@media (max-width:900px){.svc-split{grid-template-columns:1fr}}
.svc-props{list-style:none;padding:0;margin:18px 0;display:grid;gap:12px}.svc-props li{display:grid;gap:2px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm)}.svc-props b{font-size:15px}.svc-props span{font-size:13px;color:var(--muted)}
.svc-from{font-weight:800;color:var(--accent-600);font-size:14px}[data-theme=dark] .svc-from{color:var(--accent)}
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media (max-width:600px){.svc-grid{grid-template-columns:1fr}}
.svc-legal-grid{margin:18px 0}.svc-legal-card{position:relative;display:grid;gap:4px;align-content:start}.svc-legal-card ul{margin:4px 0 8px;padding-left:18px;font-size:13px;color:var(--ink-2);display:grid;gap:3px}.svc-legal-card .chip{position:absolute;top:14px;right:14px}.svc-legal-card .btn{justify-self:start;margin-top:6px}
.svc-package-hi{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.svc-timeline-card{margin-top:4px}.svc-timeline{list-style:none;padding:0;margin:0;display:grid;counter-reset:tl}.svc-timeline li{position:relative;padding:0 0 16px 36px;display:grid;gap:2px;font-size:14px;counter-increment:tl}.svc-timeline li::before{content:counter(tl);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:var(--accent-soft);color:var(--accent-soft-ink);font-size:12px;font-weight:800;display:grid;place-items:center}.svc-timeline li:not(:last-child)::after{content:"";position:absolute;left:11px;top:26px;bottom:2px;border-left:2px dashed var(--line-2)}.svc-timeline span{color:var(--muted);font-size:13px}
.svc-disclaimer{margin-top:16px;font-weight:500;font-size:13px;line-height:1.5}
.svc-faq{display:grid;gap:10px}.svc-faq details{padding:0 18px}.svc-faq summary{cursor:pointer;font-weight:700;padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}.svc-faq summary::after{content:"+";color:var(--muted);font-weight:800}.svc-faq details[open] summary::after{content:"−"}.svc-faq details p{margin:0 0 16px;font-size:14px}
/* booking form */
.svc-formcard{position:sticky;top:calc(var(--hdr) + 12px)}@media (max-width:900px){.svc-formcard{position:static}}
.svc-formcard .stack{gap:14px}.svc-formcard h3{margin-bottom:12px}
.svc-span{grid-column:1/-1}.req{color:var(--danger);font-style:normal;margin-left:2px}
.svc-rel{display:grid;grid-template-columns:1fr 84px;gap:8px}.svc-rel select{padding-left:10px;padding-right:6px}
.svc-radio-cards{display:grid;gap:10px;margin-bottom:4px}.svc-radio-cards label{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line-2);border-radius:var(--r-sm);cursor:pointer;background:var(--surface)}.svc-radio-cards input{margin-top:4px}.svc-radio-cards label:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.svc-radio-cards span{display:grid;gap:2px;font-size:14px;flex:1}.svc-radio-cards small{color:var(--muted);font-size:12px;font-weight:500}
.svc-radio-compact label{padding:10px 12px}.svc-radio-compact b{font-size:13px}
.svc-seg-block{display:grid;width:100%;margin-bottom:4px}.svc-seg-3{grid-template-columns:repeat(3,1fr)}.svc-seg-3 label{text-align:center;padding:8px 4px;font-size:12px}
.svc-opts-wrap label span{font-size:12px;padding:7px 11px}
.is-err{border-color:var(--danger)!important}
/* label layout: keep "Label *" on one line inside app.css column-flex .f; controls take the full row */
[data-svc] .f{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 2px}
[data-svc] .f>input,[data-svc] .f>select,[data-svc] .f>textarea,[data-svc] .f>.help,[data-svc] .f>.err,[data-svc] .f>.seg,[data-svc] .f>.opts,[data-svc] .f>.svc-rel,[data-svc] .f>.svc-radio-cards,[data-svc] .f>datalist{flex:1 0 100%;width:100%}
[data-svc] .f>.err:empty{display:none}
[data-svc] .f small,[data-svc] .f .req{line-height:1}
[data-svc] [hidden]{display:none!important}
