/* Realta Care website. Fonts are included with the site (Atkinson Hyperlegible and Literata, both open licence). */
@font-face{font-family:"Atkinson Hyperlegible";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/body-400.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/body-700.woff2) format("woff2")}
@font-face{font-family:"Literata";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/head-700.woff2) format("woff2")}

:root{
  --brand:#101010;--brand-deep:#000000;--brand-soft:#f5efe4;--gold:#c09c60;--gold-ink:#7a5a1f;--gold-soft:#f8f0df;
  --ink:#141414;--muted:#4f4f52;--line:#dcdcd6;--paper:#fff;--soft:#f6f5f1;
  --ok:#14653a;--ok-bg:#e3f3e9;--warn:#6b4300;--warn-bg:#fff1c9;--bad:#8a1c1c;--bad-bg:#fce8e6;
  --body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --head:"Literata",Georgia,"Times New Roman",serif;
  --fs:18px;--sz:1;--cols:2;--rad:8px;--gap:1.25rem;--lh:1.6;--btn-y:.8rem;--btn-x:1.25rem;
}
html[data-mode=large]{--fs:22px;--cols:1;--rad:12px;--gap:1.6rem;--lh:1.75;--btn-y:1rem;--btn-x:1.5rem}
html[data-mode=modern]{--fs:16px;--cols:3;--rad:6px;--gap:1rem;--lh:1.55;--btn-y:.65rem;--btn-x:1.05rem}
html[data-size="1"]{--sz:.9}html[data-size="3"]{--sz:1.15}html[data-size="4"]{--sz:1.32}
html[data-contrast=high]{--ink:#000;--muted:#111;--line:#000;--brand:#000000;--soft:#fff;--gold-ink:#4d3500;--brand-soft:#fff}

*,*::before,*::after{box-sizing:border-box}
html{font-size:calc(var(--fs) * var(--sz));-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);line-height:var(--lh);color:var(--ink);background:var(--paper)}
img{max-width:100%;height:auto}
h1,h2,h3{font-family:var(--head);color:var(--brand-deep);line-height:1.25;margin:0 0 .6rem}
h1{font-size:2.1rem}h2{font-size:1.55rem;margin-top:1.8rem}h3{font-size:1.2rem}
p{margin:0 0 1rem}
a{color:var(--brand);text-underline-offset:3px}
a:hover{color:var(--brand-deep)}
html[data-contrast=high] a{text-decoration:underline}
:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:3px}
.hero :focus-visible,.site-footer :focus-visible,.staffbar :focus-visible{outline-color:#fff}
.wrap{max-width:1180px;margin:0 auto;padding:0 1.1rem}
.narrow{max-width:780px}.narrow-wide{max-width:980px}
.wrap.narrow,.wrap.narrow-wide{margin-left:auto;margin-right:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:var(--brand);padding:.8rem 1rem;z-index:100;font-weight:700}
.skip:focus{left:0}
.muted{color:var(--muted)}.small-print{font-size:.88rem;color:var(--muted)}.inline{display:inline}.mono{font-family:ui-monospace,Menlo,Consolas,monospace}
.plain{list-style:none;padding:0;margin:0}.plain li{margin:.35rem 0}
.count{color:var(--muted);margin-bottom:1rem}
.lead{font-size:1.15rem;color:var(--muted);max-width:60ch}

/* buttons, badges, alerts */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:var(--btn-y) var(--btn-x);border:2px solid var(--brand);border-radius:var(--rad);background:#fff;color:var(--brand);font:700 1rem/1.2 var(--body);text-decoration:none;cursor:pointer;text-align:center}
.btn:hover{background:var(--brand-soft);color:var(--brand-deep)}
.btn.primary{background:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-deep);color:#fff}
.btn.ghost{border-color:var(--line);color:var(--ink);background:transparent}
.btn.danger{border-color:var(--bad);color:var(--bad)}.btn.danger:hover{background:var(--bad-bg)}
.btn.wa{background:#0e6b3b;border-color:#0e6b3b;color:#fff}.btn.wa:hover{background:#0a5530;color:#fff}
.btn.small{min-height:40px;padding:.45rem .9rem;font-size:.92rem}
.btn.big{min-height:56px;font-size:1.1rem}.btn.full{width:100%}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}
.btn-stack{display:grid;gap:.75rem}
.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .65rem;border-radius:99px;font-size:.88rem;font-weight:700;border:1.5px solid currentColor}
.badge.ok{color:var(--ok);background:var(--ok-bg)}.badge.warn{color:var(--warn);background:var(--warn-bg)}.badge.bad{color:var(--bad);background:var(--bad-bg)}.badge.muted{color:var(--muted);background:var(--soft)}
.badges{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.tag{display:inline-block;background:var(--brand);color:#fff;padding:.2rem .6rem;border-radius:4px;font-size:.85rem;font-weight:700}
.tag.dark{background:var(--ink)}.tag.ghost{background:var(--brand-soft);color:var(--brand-deep)}
.alert{padding:1rem 1.15rem;border-radius:var(--rad);border-left:8px solid;margin:1rem 0;font-weight:700}
.alert.ok{background:var(--ok-bg);border-color:var(--ok);color:#0b3d22}.alert.bad{background:var(--bad-bg);border-color:var(--bad);color:#5c1111}
.alert.warn{background:var(--warn-bg);border-color:var(--gold);color:#4a2f00}.alert.info{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-deep);font-weight:400}
.alert.big-alert{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;font-size:1.1rem}
.soft-box{background:var(--soft);border:2px solid var(--line);border-radius:var(--rad);padding:1.4rem;margin:1rem 0}
.soft-box.ok{background:var(--ok-bg);border-color:var(--ok)}
.soft-box h1,.soft-box h2{margin-top:0}
.staff-hint{background:var(--warn-bg);border:2px dashed var(--gold);padding:.7rem 1rem;border-radius:var(--rad);font-weight:700}
.chips{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}
.chip{display:inline-block;padding:.45rem 1rem;border:2px solid var(--line);border-radius:99px;text-decoration:none;font-weight:700;color:var(--ink);background:#fff;min-height:44px;display:inline-flex;align-items:center}
.chip[aria-current=true]{background:var(--brand);border-color:var(--brand);color:#fff}
.chip.ghost{border-style:dashed}

/* header */
.staffbar{background:var(--ink);color:#fff;font-size:.9rem;padding:.45rem 1rem;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;justify-content:center}
.staffbar a{color:#fff;font-weight:700}.staffbar a.strong{background:var(--gold);color:var(--ink);padding:0 .6rem;border-radius:4px;text-decoration:none}
.notice-bar{background:var(--warn-bg);border-bottom:3px solid var(--gold);color:#4a2f00;text-align:center;padding:.65rem 1rem;font-size:1rem}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:60}
.head-row{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;justify-content:space-between;padding-top:.7rem;padding-bottom:.4rem}
.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--brand-deep)}
.brand img{height:auto;max-height:64px;width:auto}
.brand-text{display:flex;flex-direction:column;line-height:1.2}
.brand-text strong{font:700 1.3rem var(--head);color:var(--brand-deep)}
.brand-text small{color:var(--gold-ink);font-size:.82rem;max-width:26ch}
.head-tools{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.lang{display:flex;border:2px solid var(--line);border-radius:var(--rad);overflow:hidden}
.lang a{padding:.4rem .8rem;text-decoration:none;font-weight:700;color:var(--ink);min-height:40px;display:flex;align-items:center}
.lang a[aria-current=true]{background:var(--brand);color:#fff}
.disp{position:relative}
.disp summary{list-style:none;cursor:pointer;border:2px solid var(--line);border-radius:var(--rad);padding:.4rem .9rem;font-weight:700;min-height:44px;display:flex;align-items:center;gap:.4rem}
.disp summary::-webkit-details-marker{display:none}
.disp-panel{position:absolute;right:0;top:calc(100% + .4rem);width:min(92vw,25rem);background:#fff;border:2px solid var(--brand);border-radius:var(--rad);padding:1rem;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.disp-h{font-weight:700;margin:.6rem 0 .4rem;color:var(--brand-deep)}.disp-h:first-child{margin-top:0}
.choices{display:grid;gap:.5rem}
.choices.row{grid-template-columns:repeat(auto-fit,minmax(5rem,1fr))}
.choices a{display:flex;flex-direction:column;gap:.1rem;border:2px solid var(--line);border-radius:var(--rad);padding:.6rem .8rem;text-decoration:none;color:var(--ink);min-height:48px;justify-content:center;background:#fff}
.choices a small{color:var(--muted);font-size:.85rem}
.choices a[aria-current=true]{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 2px var(--brand)}
.choices.row a{align-items:center;font-weight:700}
.disp-close{margin:1rem 0 0;text-align:center}.disp-close .btn{width:100%}
.navrow{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:space-between;padding-top:.3rem;padding-bottom:.7rem}
.nav-desktop{display:flex;flex-wrap:wrap;gap:.2rem .3rem}
.nav-desktop a,.nav-mobile nav a{padding:.55rem .9rem;text-decoration:none;color:var(--ink);font-weight:700;border-bottom:4px solid transparent;border-radius:var(--rad) var(--rad) 0 0;min-height:44px;display:inline-flex;align-items:center}
.nav-desktop a:hover{background:var(--brand-soft)}
.nav-desktop a[aria-current=page],.nav-mobile a[aria-current=page]{border-bottom-color:var(--gold);color:var(--brand-deep)}
.watchlink{background:var(--gold-soft)}.watchlink::before{content:"⚠";margin-right:.4rem}
.nav-mobile{display:none;width:100%}
.nav-mobile summary{list-style:none;cursor:pointer;background:var(--brand);color:#fff;font-weight:700;padding:.8rem 1.1rem;border-radius:var(--rad);min-height:52px;display:flex;align-items:center;gap:.5rem}
.nav-mobile summary::-webkit-details-marker{display:none}
.nav-mobile nav{display:grid;gap:.25rem;padding:.6rem 0}
.nav-mobile nav a{border:2px solid var(--line);border-radius:var(--rad);background:#fff}
.site-search{display:flex;gap:.4rem}
.site-search input{border:2px solid var(--line);border-radius:var(--rad);padding:.5rem .8rem;font:inherit;min-height:44px;width:13rem;background:#fff}
.site-search button{border:2px solid var(--brand);background:var(--brand);color:#fff;border-radius:var(--rad);min-width:46px;cursor:pointer;font-size:1.05rem}
.picker{background:var(--gold-soft);border-bottom:3px solid var(--gold);padding:1rem 0}
.picker p{margin:0 0 .6rem}
.picker .choices{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}

/* hero and home */
.hero{background:var(--brand);color:#fff;padding:2.4rem 0 0;position:relative}
.hero h1{color:#fff;font-size:2.4rem;max-width:20ch}
.hero .lead{color:#e8e2d6;max-width:56ch}
.hero>.wrap{position:relative;z-index:1}
.hero::before{content:"";position:absolute;right:4%;top:1.6rem;width:min(30vw,360px);aspect-ratio:1.4;pointer-events:none;opacity:.25;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 140'%3E%3Cpath d='M12 78 L100 12 L188 78' fill='none' stroke='%23c09c60' stroke-width='9' stroke-linejoin='round' stroke-linecap='round'/%3E%3Cpath d='M38 66 V128 H162 V66' fill='none' stroke='%23c09c60' stroke-width='6' stroke-linejoin='round'/%3E%3Crect x='88' y='70' width='11' height='11' fill='%23c09c60'/%3E%3Crect x='102' y='70' width='11' height='11' fill='%23c09c60'/%3E%3Crect x='88' y='84' width='11' height='11' fill='%23c09c60'/%3E%3Crect x='102' y='84' width='11' height='11' fill='%23c09c60'/%3E%3C/svg%3E") center/contain no-repeat}
.hero::after{content:"";display:block;height:38px;margin-top:2rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 38' preserveAspectRatio='none'%3E%3Cpath d='M0 38 L600 3 L1200 38 Z' fill='%23fff'/%3E%3Cpath d='M0 38 L600 3 L1200 38' fill='none' stroke='%23c09c60' stroke-width='3'/%3E%3C/svg%3E") center bottom/100% 100% no-repeat}
.big-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin:1.6rem 0}
.choice{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1rem;align-items:center;background:#fff;color:var(--ink);border-radius:var(--rad);padding:1.2rem 1.3rem;text-decoration:none;border:3px solid #fff;min-height:7rem}
.choice:hover{border-color:var(--gold);color:var(--ink)}
.choice .ico{grid-row:span 2;font-size:2.4rem;line-height:1}
.choice strong{font:700 1.3rem var(--head);color:var(--brand-deep)}
.choice small{color:var(--muted);font-size:.95rem;line-height:1.35}
.choice.caution{background:var(--gold-soft);border-color:var(--gold)}
.hero-search{display:grid;grid-template-columns:2fr 1.2fr 1.2fr auto;gap:var(--gap);align-items:end;background:rgba(255,255,255,.1);padding:1.1rem;border-radius:var(--rad)}
.hero-search .fld label{color:#fff}
.hero-search .btn{min-height:52px;background:var(--gold);border-color:var(--gold);color:var(--ink)}
.hero-search .btn:hover{background:#d4b27a;color:var(--ink)}
.band{padding:2.2rem 0}
.band:nth-of-type(even){background:var(--soft)}
.caution-band{background:var(--gold-soft)!important;border-top:4px solid var(--gold);border-bottom:4px solid var(--gold)}
.caution-text{font-size:1.1rem;max-width:70ch}
.cta-band{background:var(--brand-deep)!important;color:#fff;text-align:center}
.cta-band h2{color:#fff;margin-top:0}.cta-band .btn-row{justify-content:center}
.cta-band .btn.primary{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.cta-band .btn{background:#fff;color:var(--brand-deep)}
.cta-band .btn.wa{background:#0e6b3b;border-color:#fff;color:#fff}
.sec-head{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;justify-content:space-between;align-items:baseline;margin-bottom:1rem}
.sec-head h2{margin:0}
.more{font-weight:700}
.page-head{background:var(--brand-soft);padding:1.8rem 0 1.4rem;border-bottom:3px solid var(--gold)}
.page-head h1{margin-bottom:.4rem}
.caution-head{background:var(--gold-soft)}
.crumbs{font-size:.92rem;margin:1rem 0;color:var(--muted)}

/* forms for visitors */
.fld{margin:0 0 1rem;display:flex;flex-direction:column;gap:.3rem}
.fld label,.field label{font-weight:700}
.fld input,.fld select,.fld textarea,.big-input{font:inherit;color:var(--ink);background:#fff;border:2px solid #7d8b93;border-radius:var(--rad);padding:.7rem .85rem;min-height:50px;width:100%}
.fld textarea,textarea.big-input{min-height:7rem;resize:vertical}
.fld .help,.help{color:var(--muted);font-size:.92rem;font-weight:400;margin:0}
.err{color:var(--bad);font-weight:700;margin:.2rem 0 0}
.fld.check label{display:flex;gap:.7rem;align-items:flex-start;font-weight:400}
.fld.check input,.check-big input{width:1.6rem;height:1.6rem;min-height:0;flex:none;margin-top:.15rem}
.check-big{display:flex;gap:.7rem;align-items:center;font-weight:700;cursor:pointer}
.check-big.small{font-weight:400;margin-top:.5rem}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--gap);align-items:end;margin-top:1rem}
.filters .fld{margin:0}.filters .fld.grow{grid-column:span 2}
.filters .btn{min-height:50px}
.pager{display:flex;gap:1rem;align-items:center;justify-content:center;margin:2rem 0;flex-wrap:wrap}
.pg{display:inline-flex;align-items:center;min-height:48px;padding:.4rem 1.1rem;border:2px solid var(--brand);border-radius:var(--rad);font-weight:700;text-decoration:none}
.pg.now{border-color:transparent;color:var(--muted)}

/* cards */
.grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:var(--gap)}
.card{background:#fff;border:2px solid var(--line);border-radius:var(--rad);overflow:hidden;display:flex;flex-direction:column}
.card-img{position:relative;display:block;aspect-ratio:4/3;background:var(--soft);overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover;display:block}
.noimg{background:var(--brand-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 90'%3E%3Cpath d='M20 52 L60 22 L100 52 M30 46 V74 H90 V46' fill='none' stroke='%23c09c60' stroke-width='3' stroke-linejoin='round' opacity='.35'/%3E%3C/svg%3E") center/40% no-repeat}
.tags{position:absolute;left:.6rem;top:.6rem;display:flex;gap:.4rem;flex-wrap:wrap}
.card-body{padding:1rem 1.1rem 1.2rem;flex:1}
.price{font:700 1.4rem var(--head);color:var(--brand-deep);margin:0 0 .3rem}.price small{font:400 .85rem var(--body);color:var(--muted)}
.price.big{font-size:2rem}
.card h3{margin:.1rem 0 .4rem;font-size:1.15rem}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{text-decoration:underline}
.where{color:var(--muted);margin:0 0 .5rem}
.facts{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem 1rem;padding:0;margin:0 0 .5rem;font-size:.95rem}
.checked{color:var(--ok);font-weight:700;margin:.3rem 0 0;font-size:.95rem}
.rows{display:grid;gap:1.2rem}
.row-item{display:flex;gap:1.2rem;align-items:flex-start;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}
.row-img{flex:0 0 min(34%,200px)}.row-img img{border-radius:var(--rad);display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.row-item h3{margin:.1rem 0 .4rem}.row-item h3 a{color:var(--ink);text-decoration:none}.row-item h3 a:hover{text-decoration:underline}
.meta{color:var(--muted);font-size:.92rem;margin:0 0 .4rem}.topic{background:var(--gold-soft);color:var(--gold-ink);padding:.05rem .5rem;border-radius:4px;font-weight:700}
.notice-card{background:#fff;border:2px solid var(--line);border-left:10px solid var(--gold);border-radius:var(--rad);padding:1.1rem 1.2rem}
.notice-card.gov{border-left-color:var(--bad)}
.notice-card h3 a{color:var(--ink);text-decoration:none}.notice-card h3 a:hover{text-decoration:underline}
.data-card{background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1.1rem 1.2rem;border-top:6px solid var(--brand)}
.data-card h3 a{color:var(--ink);text-decoration:none}

/* property page */
.prop-head h1{margin:.4rem 0}
.pcode{color:var(--muted);font-size:.9rem;font-weight:700;border:1px dashed var(--line);padding:.1rem .6rem;border-radius:4px;background:#fff}
.prop-grid{display:grid;grid-template-columns:minmax(0,1fr) 22rem;gap:2rem;align-items:start;margin-top:1rem}
.gallery .g-main{display:block;border-radius:var(--rad);overflow:hidden;background:var(--soft)}
.gallery .g-main img{width:100%;max-height:34rem;object-fit:cover;display:block}
.g-main.noimg.big{aspect-ratio:16/10}
.g-thumbs{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.5rem;padding:0;margin:.6rem 0 1rem}
.g-thumbs img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;border:2px solid var(--line);display:block}
.facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.8rem;margin:1.2rem 0}
.facts-grid div{background:var(--soft);border-radius:var(--rad);padding:.7rem .9rem;border:1px solid var(--line)}
.facts-grid dt{font-size:.85rem;color:var(--muted);font-weight:700}.facts-grid dd{margin:0;font-weight:700;font-size:1.05rem}
.checked-box{background:var(--ok-bg);border:2px solid var(--ok);border-radius:var(--rad);padding:.9rem 1.1rem;margin:1rem 0;color:#0b3d22}.checked-box p{margin:.2rem 0}
.ticks{list-style:none;padding:0}.ticks li{padding-left:2rem;position:relative;margin:.4rem 0}.ticks li::before{content:"✔";position:absolute;left:0;color:var(--ok);font-weight:700}
.caution-box{background:var(--gold-soft);border:2px solid var(--gold);border-left-width:10px;border-radius:var(--rad);padding:1rem 1.2rem;margin:1.6rem 0}
.caution-box h2{margin-top:0;font-size:1.25rem}.caution-box.big{margin:1.2rem 0}
.side-card{background:#fff;border:2px solid var(--brand);border-radius:var(--rad);padding:1.2rem}
.side-card h2{margin-top:0;font-size:1.3rem}.side-card h3{margin-top:1.2rem}
.prop-side{position:sticky;top:1rem}
.share{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.band-in{margin:2.5rem 0}
.video{position:relative;aspect-ratio:16/9;margin:1.2rem 0;border-radius:var(--rad);overflow:hidden;background:#000}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* articles and rich text */
.article h1{font-size:2.2rem}
.cover{margin:1rem 0}.cover img{border-radius:var(--rad);width:100%;display:block}
.rich{max-width:68ch}.rich.small{font-size:.92rem}
.rich h2{margin-top:1.8rem}.rich h3{margin-top:1.4rem}
.rich ul,.rich ol{padding-left:1.5rem}.rich li{margin:.3rem 0}
.rich img{border-radius:var(--rad);margin:1rem 0}
.rich blockquote{margin:1rem 0;padding:.4rem 1.2rem;border-left:6px solid var(--gold);background:var(--gold-soft)}
.rich table{border-collapse:collapse;width:100%;margin:1rem 0}.rich th,.rich td{border:1px solid var(--line);padding:.5rem .7rem;text-align:left}.rich th{background:var(--soft)}
.disclaimer-note{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem;margin-top:2rem;max-width:68ch}
.advice-box{background:var(--brand-soft);border:2px solid var(--brand);border-radius:var(--rad);padding:1rem 1.2rem;margin:1.2rem 0}
.advice-box h2{margin-top:0;font-size:1.3rem}
.fair-box{background:var(--soft);border:2px solid var(--line);border-radius:var(--rad);padding:1rem 1.2rem;margin:1.6rem 0}.fair-box h2{margin-top:0;font-size:1.2rem}
.sources{margin:1.5rem 0}.how-to{margin-top:2.5rem}
.faq{border:2px solid var(--line);border-radius:var(--rad);margin:.6rem 0;background:#fff}
.faq summary{cursor:pointer;font-weight:700;padding:1rem 1.2rem;min-height:56px;display:flex;align-items:center}
.faq[open] summary{border-bottom:1px solid var(--line);background:var(--brand-soft)}
.faq-a{padding:1rem 1.2rem}.faq-topic{font-size:1.3rem}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.contact-list{margin:1.2rem 0}
.table-wrap{overflow-x:auto;margin:1rem 0;border:1px solid var(--line);border-radius:var(--rad)}
table.data{border-collapse:collapse;width:100%;min-width:30rem;background:#fff}
table.data th,table.data td{padding:.65rem .9rem;border-bottom:1px solid var(--line);text-align:left}
table.data th{background:var(--brand-soft);color:var(--brand-deep);font-size:.92rem}
.chart-box{background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1.2rem;margin:1.2rem 0}
.bars{display:grid;gap:.7rem}
.bar-row{display:grid;grid-template-columns:minmax(6rem,12rem) 1fr auto;gap:.75rem;align-items:center}
.bar-label{font-weight:700;overflow-wrap:anywhere}
.bar-track{background:var(--soft);height:1.6rem;border-radius:4px;overflow:hidden;border:1px solid var(--line)}
.bar-fill{display:block;height:100%;background:var(--brand)}
.bar-val{font-weight:700;min-width:4.5rem;text-align:right}
.linechart{width:100%;height:auto}.ln-line{stroke:var(--brand);stroke-width:3}.ln-dot{fill:var(--gold-ink);stroke:#fff;stroke-width:2}.ln-grid{stroke:var(--line)}.ln-lab{fill:var(--muted);font-size:12px;font-family:var(--body)}
.quick-facts{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.8rem;margin:1rem 0}
.quick-facts li{background:var(--soft);border-radius:var(--rad);padding:.8rem 1rem;border:1px solid var(--line);display:flex;flex-direction:column}.quick-facts span{font-size:.85rem;color:var(--muted);font-weight:700}
.source-line{margin-top:1rem}

/* footer */
.site-footer{background:var(--brand-deep);color:#e3eef0;margin-top:0;padding-top:2.2rem}
.site-footer a{color:#fff}.site-footer .foot-brand{font:700 1.3rem var(--head);color:#fff;margin-bottom:.5rem}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}
.foot-h{font-weight:700;color:var(--gold);margin-bottom:.5rem}
.site-footer .social{display:inline-block;margin:.2rem .8rem .2rem 0}
.foot-small{border-top:1px solid rgba(255,255,255,.2);margin-top:1.6rem;padding-top:1rem;padding-bottom:1.4rem;font-size:.9rem}
.staff-link{margin-left:1rem;opacity:.8}
.quick-actions{display:none}

/* ------- display modes ------- */
html[data-mode=large] .wrap{max-width:1040px}
html[data-mode=large] .big-choices{grid-template-columns:1fr}
html[data-mode=large] .hero-search{grid-template-columns:1fr}
html[data-mode=large] .choice{min-height:8rem}
html[data-mode=large] .row-item{flex-direction:column}html[data-mode=large] .row-img{flex:none;width:100%}
html[data-mode=large] .prop-grid,html[data-mode=large] .contact-grid{grid-template-columns:1fr}
html[data-mode=large] .prop-side{position:static}
html[data-mode=large] .nav-desktop a{font-size:1.05rem}
html[data-mode=large] .btn{border-width:3px}
html[data-mode=large] .tag{font-size:1rem}
html[data-mode=large] .site-search input{width:100%}html[data-mode=large] .site-search{flex:1 1 100%}
html[data-mode=modern] h1{font-size:1.9rem}html[data-mode=modern] .hero h1{font-size:2.1rem}
html[data-mode=modern] .card-body{padding:.8rem .9rem 1rem}html[data-mode=modern] .band{padding:1.6rem 0}
html[data-mode=modern] .big-choices{gap:.8rem}html[data-mode=modern] .choice{min-height:5.5rem;padding:.9rem 1rem}
html[data-mode=modern] .choice .ico{font-size:1.8rem}
html[data-contrast=high] .card,html[data-contrast=high] .notice-card,html[data-contrast=high] .data-card,html[data-contrast=high] .btn,html[data-contrast=high] .faq{border-color:#000;border-width:3px}
html[data-contrast=high] .btn.primary{background:#000;color:#fff;border-color:#000}
html[data-contrast=high] .hero,html[data-contrast=high] .cta-band,html[data-contrast=high] .site-footer{background:#000}

@media (min-width:1000px){html[data-mode=clear]{--cols:3}html[data-mode=large]{--cols:2}html[data-mode=modern]{--cols:4}}
@media (max-width:1100px){
  html[data-mode=large] .nav-desktop{display:none}html[data-mode=large] .nav-mobile{display:block}
  .prop-grid{grid-template-columns:1fr}.prop-side{position:static}
}
@media (max-width:900px){
  .hero::before{display:none}
  .nav-desktop{display:none}.nav-mobile{display:block}
  .grid{grid-template-columns:repeat(min(var(--cols),2),minmax(0,1fr))}
  .big-choices{grid-template-columns:1fr}
  .hero-search{grid-template-columns:1fr 1fr}.hero-search .btn{grid-column:1/-1}
  .contact-grid,.foot-grid{grid-template-columns:1fr}
  .site-search{flex:1 1 100%}.site-search input{width:100%}
}
@media (max-width:640px){
  html{--cols:1}
  .grid{grid-template-columns:1fr}
  .hero h1{font-size:1.9rem}.hero-search{grid-template-columns:1fr}
  .head-call{display:none}
  .disp{position:static}
  .disp-panel{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;max-height:82vh;overflow:auto;border-radius:16px 16px 0 0;border-width:3px 0 0;box-shadow:0 -8px 30px rgba(0,0,0,.3)}
  .row-item{flex-direction:column}.row-img{flex:none;width:100%}
  .bar-row{grid-template-columns:1fr auto}.bar-label{grid-column:1/-1}.bar-track{grid-column:1}
  .filters .fld.grow{grid-column:auto}
  .quick-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:3px solid var(--gold);gap:0}
  .quick-actions a{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:58px;font-weight:700;text-decoration:none;color:var(--brand-deep);font-size:1.05rem}
  .quick-actions a.wa{background:#0e6b3b;color:#fff}
  body.public{padding-bottom:62px}
}
@media (prefers-reduced-motion:no-preference){.btn,.choice,.tile{transition:background-color .15s,border-color .15s}}
@media print{.site-header,.site-footer,.quick-actions,.staffbar,.picker,.notice-bar{display:none}}

/* ------- admin ------- */
body.admin{background:var(--soft)}
.admin-bar{background:#fff;border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:30}
.bar-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1.2rem;padding-top:.5rem;padding-bottom:.4rem}
.brand.small img{max-height:44px}.brand.small .brand-text strong{font-size:1.1rem}
.bar-tools{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.size-ctl{display:flex;border:2px solid var(--line);border-radius:var(--rad);overflow:hidden}.size-ctl a{padding:.35rem .8rem;font-weight:700;text-decoration:none;color:var(--ink);min-height:40px;display:flex;align-items:center}
.admin-bar .btn,.admin-bar .size-ctl a,.admin-nav a,.who{font-size:.82rem}
.who{font-weight:700}.who small{font-weight:400;color:var(--muted)}
.admin-nav{display:flex;flex-wrap:wrap;gap:.4rem;padding-bottom:.6rem}
.admin-nav a{padding:.6rem 1.1rem;border:2px solid var(--line);border-radius:var(--rad);text-decoration:none;font-weight:700;color:var(--ink);background:#fff;min-height:48px;display:inline-flex;align-items:center;gap:.4rem}
.admin-nav a[aria-current=page]{background:var(--brand);color:#fff;border-color:var(--brand)}
.count-pill{background:var(--bad);color:#fff;border-radius:99px;padding:0 .55rem;font-size:.85rem;font-weight:700;display:inline-block;min-width:1.5rem;text-align:center}
.admin-main{padding-top:1.4rem;padding-bottom:4rem;max-width:1000px}
.back{margin:0 0 .8rem}
.login-card{max-width:30rem;margin:1.5rem auto;background:#fff;border:2px solid var(--line);border-top:8px solid var(--gold);border-radius:var(--rad);padding:1.6rem}
.or{text-align:center;color:var(--muted);margin:1rem 0}
.code-box{background:var(--gold-soft);border:2px dashed var(--gold);border-radius:var(--rad);padding:1.1rem;margin:1rem 0}
.code{font:700 1.5rem ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;background:#fff;padding:.3rem .7rem;border-radius:6px;border:1px solid var(--line);display:inline-block;word-break:break-all}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:var(--gap)}
.tile{display:grid;gap:.25rem;background:#fff;border:3px solid var(--brand);border-radius:var(--rad);padding:1.2rem;text-decoration:none;color:var(--ink);min-height:8.5rem;align-content:start}
.tile:hover{background:var(--brand-soft)}.tile.warn{border-color:var(--gold);background:var(--gold-soft)}
.tile-ico{font-size:2.2rem;line-height:1}.tile-t{font:700 1.2rem var(--head);color:var(--brand-deep)}.tile-s{color:var(--muted);font-size:.95rem}
.tiles.small .tile{min-height:6.5rem;border-width:2px}.tiles.small .tile-ico{font-size:1.6rem}.tiles.small .tile-t{font-size:1.05rem}
.item-list{list-style:none;padding:0;margin:1rem 0;display:grid;gap:1rem}
.item{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1rem 1.2rem}
.item.is-new{border-color:var(--gold);border-left-width:10px}
.item .thumb,.diff .thumb{width:88px;height:66px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}
.item-main{flex:1 1 18rem;min-width:0}.item-main h2{margin:0 0 .3rem;font-size:1.2rem}
.item-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.search-row{display:flex;gap:.6rem;margin:1rem 0}.search-row .big-input{flex:1}
.editor-form{display:grid;gap:1.4rem}
.sec{background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1.2rem 1.3rem;margin:0;min-width:0}
.sec legend{font:700 1.3rem var(--head);color:var(--brand-deep);padding:0 .5rem}
.field{margin:0 0 1.4rem}.field:last-child{margin-bottom:.2rem}
.field>label{display:block;font-size:1.1rem;margin-bottom:.2rem}.req{color:var(--bad);font-weight:700;font-size:.9rem}
.has-err .big-input{border-color:var(--bad);border-width:3px}
.save-bar{position:sticky;bottom:0;background:#fff;border-top:3px solid var(--gold);padding:.9rem 1rem;display:flex;flex-wrap:wrap;gap:.8rem;margin:0 -1.1rem;z-index:10}
.imgfield .img-prev img{max-width:16rem;border-radius:var(--rad);border:2px solid var(--line);display:block;margin-bottom:.6rem}
.file-btn{cursor:pointer}
.img-msg{min-height:1.4rem;color:var(--muted);font-weight:700;margin:.4rem 0 0}.img-msg.bad{color:var(--bad)}
.gal-list{list-style:none;padding:0;margin:0 0 .8rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.7rem}
.gal-list li{display:grid;gap:.3rem}.gal-list img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;border:2px solid var(--line)}
.gal-list button{border:2px solid var(--bad);background:#fff;color:var(--bad);border-radius:6px;padding:.35rem;font:700 .9rem var(--body);cursor:pointer;min-height:40px}
.rte{border:2px solid #7d8b93;border-radius:var(--rad);background:#fff;overflow:hidden}
.rte-bar{display:flex;flex-wrap:wrap;gap:.4rem;padding:.6rem;background:var(--soft);border-bottom:2px solid var(--line)}
.rte-bar button{min-height:44px;padding:.4rem .9rem;border:2px solid var(--brand);background:#fff;color:var(--brand);border-radius:6px;font:700 .95rem var(--body);cursor:pointer}
.rte-bar button:hover{background:var(--brand-soft)}
.rte-area{min-height:15rem;padding:1rem;outline:none;font-size:1.05rem;line-height:1.7}.rte-area:focus{box-shadow:inset 0 0 0 3px var(--brand)}
.rte-area h2{font-size:1.4rem;margin-top:1rem}.rte-area img{max-width:100%;border-radius:6px}
.rte .rte-src{width:100%;border:0;padding:1rem;font:inherit;min-height:12rem}
.rte.rte-ready .rte-src{display:none}.rte:not(.rte-ready) .rte-area,.rte:not(.rte-ready) .rte-bar{display:none}
.diff{display:grid;gap:1rem;margin:1rem 0}
.diff-row{background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1rem 1.2rem}.diff-row h3{margin:0 0 .6rem;font-size:1.1rem}
.diff-old{background:#f1f3f4;border-left:6px solid #8a969d;padding:.7rem 1rem;margin-bottom:.6rem;border-radius:4px}
.diff-new{background:var(--ok-bg);border-left:6px solid var(--ok);padding:.7rem 1rem;border-radius:4px}
.diff .tag{margin-bottom:.4rem}
.decision{display:grid;gap:1.4rem;margin:1.6rem 0}
.decide{background:#fff;border:3px solid var(--line);border-radius:var(--rad);padding:1.2rem}.decide.ok{border-color:var(--ok)}.decide.bad{border-color:var(--bad)}.decide h2{margin-top:0}
.decide .big-input{margin:.5rem 0 .8rem}
.btn.primary.big[disabled]{background:#7d8b93;border-color:#7d8b93}
.note-box{background:var(--warn-bg);border-left:6px solid var(--gold);padding:.6rem 1rem;border-radius:4px}
.note-form{margin-top:.8rem;display:grid;gap:.5rem}
.msg-text{background:var(--soft);padding:.7rem 1rem;border-radius:6px;white-space:normal}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--gap);margin:1rem 0}
.stat{background:#fff;border:2px solid var(--line);border-top:6px solid var(--brand);border-radius:var(--rad);padding:1rem;display:flex;flex-direction:column}.stat strong{font:700 2rem var(--head);color:var(--brand-deep)}.stat span{color:var(--muted);font-weight:700}
.spark{display:flex;align-items:flex-end;gap:3px;height:110px;background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:.7rem}.spark span{flex:1;background:var(--brand);border-radius:3px 3px 0 0;min-height:3px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}.two-col section{background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1rem 1.2rem}.two-col h2,.two-col h3{margin-top:0}
.rank{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
.rank li{display:grid;grid-template-columns:minmax(6rem,11rem) 1fr 2.5rem;gap:.6rem;align-items:center}
.rk-l{overflow-wrap:anywhere;font-size:.95rem}.rk-bar{background:var(--soft);border-radius:4px;height:1rem;overflow:hidden}.rk-bar i{display:block;height:100%;background:var(--brand)}.rk-n{font-weight:700;text-align:right}
.history li{margin:.5rem 0}
.help-step{background:#fff;border:2px solid var(--line);border-radius:var(--rad);padding:1rem 1.4rem;margin:1rem 0}.help-step h2{margin-top:.2rem;font-size:1.35rem}
.steps{padding-left:1.4rem}.steps li{margin:.5rem 0}
.glossary dt{font-weight:700;margin-top:.6rem}.glossary dd{margin:0 0 .3rem}
code{background:var(--soft);padding:.1rem .4rem;border-radius:4px;word-break:break-all}
@media (max-width:640px){.admin-nav{display:grid;grid-template-columns:1fr 1fr}.admin-nav a{justify-content:center}.bar-tools{gap:.4rem}}
@media (max-width:760px){.two-col{grid-template-columns:1fr}.admin-main .item-actions{width:100%}.admin-bar{position:static}}

/* installer */
body.install{background:var(--soft)}
.install-card{max-width:42rem;margin:1.5rem auto;background:#fff;border:2px solid var(--line);border-top:8px solid var(--gold);border-radius:var(--rad);padding:1.6rem}
.steps-bar{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.2rem;padding:0;list-style:none}
.steps-bar li{padding:.3rem .8rem;border-radius:99px;border:2px solid var(--line);font-weight:700;font-size:.9rem;color:var(--muted)}
.steps-bar li.on{background:var(--brand);color:#fff;border-color:var(--brand)}.steps-bar li.done{background:var(--ok-bg);color:var(--ok);border-color:var(--ok)}
.check-list{list-style:none;padding:0}.check-list li{display:flex;gap:.7rem;padding:.55rem 0;border-bottom:1px solid var(--line)}
.check-list .ok{color:var(--ok);font-weight:700}.check-list .no{color:var(--bad);font-weight:700}.check-list .maybe{color:var(--warn);font-weight:700}
