/* self-hosted Assistant (GB-19: no third-party font CDN) */
@font-face{font-family:Assistant;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/assistant-hebrew-400-normal.woff2) format('woff2');unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Assistant;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/assistant-hebrew-500-normal.woff2) format('woff2');unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Assistant;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/assistant-hebrew-600-normal.woff2) format('woff2');unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Assistant;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/assistant-hebrew-700-normal.woff2) format('woff2');unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Assistant;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/assistant-hebrew-800-normal.woff2) format('woff2');unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Assistant;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/assistant-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2122,U+2212}
@font-face{font-family:Assistant;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/assistant-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2122,U+2212}
@font-face{font-family:Assistant;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/assistant-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2122,U+2212}
@font-face{font-family:Assistant;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/assistant-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2122,U+2212}
@font-face{font-family:Assistant;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/assistant-latin-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2122,U+2212}
/* DroneOps content pages: guide article + "can I fly here?" place page.
   Tokens are the landing page's :root set, scoped to .do so one canvas can show both themes.
   In production these sit on :root, with dark under prefers-color-scheme and [data-theme]. */
:root{
  --bg:#eef2f7; --card:#ffffff; --fg:#131a22; --muted:#596673;
  --primary:#0069B6; --primary-ink:#ffffff; --ring:rgba(0,105,182,.30);
  --border:#e1e8f0; --field:#ffffff; --field-border:#cdd8e4;
  --clear:#1f8a4c; --permit:#b07500; --restricted:#c6392f;
  --shadow:0 12px 34px rgba(16,34,54,.10); --radius:16px;
  --tint:color-mix(in srgb,var(--primary) 6%,var(--card));
  --tint-line:color-mix(in srgb,var(--primary) 24%,var(--border));
}
.do{
  font-family:Assistant,'Segoe UI',system-ui,-apple-system,sans-serif;
  background:var(--bg); color:var(--fg); line-height:1.6;
  -webkit-text-size-adjust:100%; min-height:100vh; overflow-x:hidden;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0d131a; --card:#161f28; --fg:#e8eef4; --muted:#9aa7b4;
  --primary:#1E85D4; --primary-ink:#06121c; --ring:rgba(30,133,212,.40);
  --border:#26323d; --field:#101922; --field-border:#2d3b48;
  --clear:#3fb46a; --permit:#d7a33a; --restricted:#e0655a;
  --shadow:0 12px 34px rgba(0,0,0,.45);
}}
:root[data-theme="dark"]{
  --bg:#0d131a; --card:#161f28; --fg:#e8eef4; --muted:#9aa7b4;
  --primary:#1E85D4; --primary-ink:#06121c; --ring:rgba(30,133,212,.40);
  --border:#26323d; --field:#101922; --field-border:#2d3b48;
  --clear:#3fb46a; --permit:#d7a33a; --restricted:#e0655a;
  --shadow:0 12px 34px rgba(0,0,0,.45);
}
.do *{box-sizing:border-box}
.do a{color:var(--primary)}
.do a:hover{color:color-mix(in srgb,var(--primary) 80%,var(--fg))}
.do a:focus-visible,.do summary:focus-visible{outline:none; box-shadow:0 0 0 3.5px var(--ring); border-radius:8px}
.do svg{display:block}
/* Latin / numeric runs inside Hebrew */
.ltr{direction:ltr; unicode-bidi:isolate}
.num{font-variant-numeric:tabular-nums}
.do[dir="rtl"] .fwd{transform:scaleX(-1)}

.shell{max-width:1200px; margin:0 auto; padding:0 16px}
@media (min-width:768px){ .shell{padding:0 32px} }

/* ---- header (landing brand block + guides + sign in) ---- */
.site-h{background:var(--card); border-bottom:1px solid var(--border)}
.site-h .shell{display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:68px}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--fg) !important; min-height:44px}
.brand svg{width:38px; height:38px; flex:none}
.brand .ringc{stroke:var(--primary)}
.brand .wm{display:flex; flex-direction:column; line-height:1.15}
.brand b{font-size:19px; font-weight:700; letter-spacing:.2px; unicode-bidi:isolate}
.brand small{font-size:13px; color:var(--muted)}
.nav{display:flex; align-items:center; gap:4px}
.nav .nl{display:inline-flex; align-items:center; min-height:44px; padding:0 12px; font-weight:600; font-size:15.5px;
  color:var(--fg); text-decoration:none}
.nav .nl[aria-current]{color:var(--primary); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:10px}
.btn-o{display:inline-flex; align-items:center; min-height:44px; padding:0 16px; border-radius:12px;
  border:1px solid var(--field-border); background:var(--card); color:var(--fg) !important;
  font-weight:700; font-size:15.5px; text-decoration:none}
@media (max-width:520px){ .brand small{display:none} .nav .nl{padding:0 8px} }

/* ---- breadcrumb ---- */
.crumbs{margin:20px 0 0; font-size:14px; color:var(--muted)}
.crumbs ol{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:2px 8px; align-items:center}
.crumbs li{display:inline-flex; align-items:center; gap:8px}
.crumbs a{color:var(--muted) !important; text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs .sep{opacity:.6}
.crumbs [aria-current]{color:var(--fg); font-weight:600}

/* ---- article head ---- */
.a-head{max-width:860px; margin:22px 0 0; padding-bottom:26px; border-bottom:1px solid var(--border)}
.eyebrow{display:flex; align-items:center; gap:8px; font-size:14px; font-weight:700; color:var(--primary); margin:0 0 10px}
.eyebrow svg{width:16px; height:16px}
h1.t{font-size:44px; line-height:1.16; font-weight:700; margin:0; text-wrap:balance}
.lede{font-size:20px; line-height:1.6; color:var(--muted); margin:14px 0 0; max-width:62ch}
.meta{display:flex; flex-wrap:wrap; gap:8px 20px; margin:18px 0 0; padding:0; list-style:none; font-size:14.5px; color:var(--muted)}
.meta li{display:inline-flex; align-items:center; gap:7px}
.meta svg{width:16px; height:16px; flex:none}
.meta .upd{color:var(--fg); font-weight:600}
.meta .upd svg{color:var(--primary)}
@media (max-width:640px){ h1.t{font-size:30px; line-height:1.22} .lede{font-size:17.5px} }

/* ---- two-column body: rail sits at the reading start (right in HE, left in EN) ---- */
.layout{display:flex; flex-wrap:wrap; gap:28px 56px; align-items:flex-start; margin:32px 0 72px}
.toc{flex:1 1 240px; max-width:290px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:6px 18px 10px}
.toc summary{list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:8px;
  min-height:44px; font-size:13.5px; font-weight:700; color:var(--muted)}
.toc summary::-webkit-details-marker{display:none}
.toc summary svg{width:16px; height:16px; transition:transform .15s}
.toc[open] summary svg{transform:rotate(180deg)}
.toc ol{list-style:none; margin:0; padding:0}
.toc li a{display:flex; gap:10px; align-items:baseline; min-height:44px; padding:10px 0; text-decoration:none;
  color:var(--fg) !important; font-size:15px; line-height:1.4; border-top:1px solid var(--border)}
.toc .n{font-size:12.5px; font-weight:700; color:var(--muted); font-variant-numeric:tabular-nums; min-width:2.2ch}
.toc a[aria-current]{color:var(--primary) !important; font-weight:600}
.toc a[aria-current] .n{color:var(--primary)}
.prose{flex:999 1 560px; min-width:0; max-width:72ch; font-size:18px; line-height:1.8}
@media (max-width:900px){ .toc{max-width:none} .prose{max-width:none} }
.prose > p,.prose li{text-wrap:pretty}
.prose > p{margin:0 0 1.1em}
.prose h2{font-size:27px; line-height:1.3; font-weight:700; margin:2.2em 0 .5em; scroll-margin-top:24px}
.prose > section:first-child h2,.prose h2.first{margin-top:0}
.prose h2 .sn{display:block; font-size:13px; font-weight:700; color:var(--primary); font-variant-numeric:tabular-nums; margin-bottom:2px; line-height:1.4}
.prose h3{font-size:20.5px; line-height:1.4; font-weight:700; margin:1.6em 0 .35em}
.prose a:not(.btn):not(.card-l){text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px}
.prose ul,.prose ol.steps{padding-inline-start:1.3em; margin:0 0 1.1em}
.prose li{margin:0 0 .35em}
.prose li::marker{color:var(--muted)}
.ph{color:var(--muted); background:color-mix(in srgb,var(--muted) 12%,transparent); border-radius:5px; padding:0 4px}
@media (max-width:640px){ .prose{font-size:17px; line-height:1.75} .prose h2{font-size:23px} .prose h3{font-size:19px} }

/* summary box */
.tldr{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:18px 22px 6px; margin:0 0 1.4em}
.tldr ul{margin:0 0 .8em}

/* ---- cited regulation ---- */
.reg{margin:1.6em 0; padding:18px 22px 14px; background:var(--tint); border:1px solid var(--tint-line); border-radius:14px}
.reg .lab{display:flex; align-items:center; gap:8px; font-size:13px; font-weight:700; color:var(--primary); margin:0 0 8px; line-height:1.4}
.reg .lab svg{width:16px; height:16px}
.reg blockquote{margin:0; font-size:18.5px; line-height:1.7; font-weight:600}
.reg figcaption{margin:12px 0 0; padding-top:10px; border-top:1px solid var(--tint-line); font-size:13.5px; line-height:1.5; color:var(--muted);
  display:flex; flex-wrap:wrap; align-items:center; gap:4px 10px}
.reg figcaption a{display:inline-flex; align-items:center; gap:5px; font-weight:600; text-decoration:none !important}
.reg figcaption a svg{width:14px; height:14px}
@media (max-width:640px){ .reg{padding:16px 16px 12px} .reg blockquote{font-size:17px} }

/* ---- CTA card ---- */
.cta{display:flex; flex-wrap:wrap; align-items:center; gap:16px 22px; margin:2em 0; padding:20px 22px;
  background:var(--card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); line-height:1.5}
.cta .ic{width:48px; height:48px; border-radius:12px; background:color-mix(in srgb,var(--primary) 12%,transparent); color:var(--primary);
  display:flex; align-items:center; justify-content:center; flex:none}
.cta .ic svg{width:24px; height:24px}
.cta .tx{flex:1 1 240px; min-width:0}
.cta .tx b{display:block; font-size:18.5px; line-height:1.35}
.cta .tx span{display:block; font-size:15px; color:var(--muted); margin-top:3px}
.do .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 20px; border-radius:12px;
  background:var(--primary); color:var(--primary-ink); font-weight:700; font-size:16.5px; line-height:1.2; text-decoration:none; text-align:center}
.do .btn:hover{color:var(--primary-ink); filter:brightness(1.06)}
.do .btn svg{width:18px; height:18px; flex:none}
.cta.big{background:var(--tint); border-color:var(--tint-line); padding:26px; gap:18px 28px}
.cta.big .tx b{font-size:22px}
.cta.big .btn{min-height:52px; font-size:17px; padding:0 24px}
@media (max-width:560px){ .cta .btn{width:100%} .cta.big{padding:20px} }

/* ---- related links ---- */
.rel{list-style:none; padding:0; margin:0 0 1.2em; display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:10px}
.card-l{display:flex; flex-direction:column; gap:2px; height:100%; padding:14px 16px; min-height:68px; background:var(--card);
  border:1px solid var(--border); border-radius:12px; text-decoration:none; color:var(--fg) !important; line-height:1.4}
.card-l:hover{border-color:var(--tint-line)}
.card-l small{display:flex; align-items:center; gap:6px; color:var(--muted); font-size:13px; font-weight:600}
.card-l small svg{width:14px; height:14px}
.card-l b{font-weight:600; font-size:16.5px}

/* ---- FAQ (accessible <details>) ---- */
.faq{display:flex; flex-direction:column; gap:8px; margin:0 0 1em}
.faq details{background:var(--card); border:1px solid var(--border); border-radius:12px}
.faq summary{list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px;
  min-height:56px; padding:12px 18px; font-weight:600; font-size:17px; line-height:1.45}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{flex:none; width:18px; height:18px; color:var(--muted); transition:transform .15s}
.faq details[open] summary svg{transform:rotate(180deg)}
.faq details p{margin:0; padding:0 18px 16px; color:var(--muted); font-size:16px; line-height:1.7}

/* ---- footer (landing) ---- */
.site-f{border-top:1px solid var(--border); background:var(--card)}
.site-f .shell{padding-top:24px; padding-bottom:30px; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center;
  gap:12px 24px; font-size:13px; color:var(--muted); line-height:1.6}
.site-f p{margin:0; max-width:62ch}
.site-f nav{display:flex; flex-wrap:wrap; gap:4px 18px}
.site-f a{text-decoration:none; display:inline-flex; align-items:center; min-height:32px}

/* ================= place page ================= */
.air{margin:22px 0 0; background:var(--card); border:1px solid var(--border); border-radius:20px; box-shadow:var(--shadow)}
.air .hd{padding:24px 26px 20px; display:flex; flex-wrap:wrap; gap:18px 28px; justify-content:space-between; align-items:flex-start}
.air .ttl{flex:1 1 440px; min-width:0}
.air h1.t{font-size:40px}
.readout{flex:0 1 300px; margin:0; display:grid; grid-template-columns:auto minmax(0,1fr); gap:6px 16px; font-size:13.5px; line-height:1.45;
  padding:14px 16px; border:1px solid var(--border); border-radius:12px; background:var(--bg)}
.readout dt{color:var(--muted)}
.readout dd{margin:0; font-weight:600; font-variant-numeric:tabular-nums; min-width:0; overflow-wrap:anywhere}
.types{border-top:1px solid var(--border); padding:18px 26px 22px}
.types h2{font-size:14px; font-weight:700; color:var(--muted); margin:0 0 6px; line-height:1.4}
.tl{list-style:none; margin:0; padding:0}
.tl li{display:grid; grid-template-columns:200px minmax(0,1fr); gap:8px 18px; align-items:center; padding:12px 0; border-top:1px solid var(--border); font-size:15.5px; line-height:1.55}
.tl li:first-child{border-top:0}
.tl li.off{color:var(--muted)}
.chip{--c:var(--muted); display:inline-flex; align-items:center; gap:7px; justify-self:start; font-size:14px; font-weight:600; line-height:1.2;
  padding:7px 12px; border-radius:999px; border:1px solid color-mix(in srgb,var(--c) 42%,var(--border));
  background:color-mix(in srgb,var(--c) 11%,var(--card)); color:var(--fg)}
.chip svg{width:15px; height:15px; color:var(--c); flex:none}
.c-pro{--c:var(--restricted)} .c-apt{--c:var(--restricted)}
.c-res{--c:var(--permit)} .c-wkd{--c:var(--permit)}
.c-uav{--c:var(--clear)}
.chip.na{border-style:dashed; background:transparent; color:var(--muted); --c:var(--muted)}
.air .sum{border-top:1px solid var(--border); padding:18px 26px 22px; margin:0; font-size:17px; line-height:1.7; max-width:80ch}
@media (max-width:640px){
  .air .hd,.types,.air .sum{padding-left:18px; padding-right:18px}
  .air h1.t{font-size:28px}
  .readout{flex-basis:100%}
  .tl li{grid-template-columns:1fr; gap:8px}
}

/* mandatory disclaimer band */
.disc{display:flex; gap:12px; align-items:flex-start; margin:14px 0 0; padding:14px 18px; border-radius:14px; font-size:15.5px; line-height:1.6;
  background:color-mix(in srgb,var(--permit) 12%,var(--card)); border:1px solid color-mix(in srgb,var(--permit) 48%,var(--border))}
.disc svg{color:var(--permit); width:22px; height:22px; flex:none; margin-top:1px}
.disc p{margin:0}
.disc b{font-weight:700}

/* static map thumbnail */
.map{margin:1.6em 0}
.map .frame{position:relative; aspect-ratio:16/9; max-width:640px; border-radius:14px; overflow:hidden; border:1px solid var(--border); background:var(--card)}
.map svg{position:absolute; inset:0; width:100%; height:100%}
.map .tag{position:absolute; inset-inline-start:12px; bottom:12px; font-size:12.5px; font-weight:600; line-height:1.3; padding:5px 10px;
  border-radius:8px; background:var(--card); border:1px solid var(--border); color:var(--muted)}
.map figcaption{font-size:14px; line-height:1.55; color:var(--muted); margin-top:8px; max-width:640px}
.m-land{fill:var(--bg)}
.m-sea{fill:color-mix(in srgb,var(--primary) 14%,var(--card))}
.m-grid{stroke:var(--border); stroke-width:1}
.m-coast{fill:none; stroke:color-mix(in srgb,var(--primary) 45%,var(--border)); stroke-width:1.5}
.m-res{fill:color-mix(in srgb,var(--permit) 20%,transparent); stroke:var(--permit); stroke-width:1.5; stroke-dasharray:5 4}
.m-apt{fill:color-mix(in srgb,var(--restricted) 14%,transparent); stroke:var(--restricted); stroke-width:1.5}
.m-pin{fill:var(--primary); stroke:var(--card); stroke-width:2}

/* production: header controls harmonized with the landing page */
body{margin:0}
.site-h .icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:12px;border:1px solid var(--field-border);background:var(--card);color:var(--fg);cursor:pointer;padding:0}
.site-h .icon-btn svg{width:20px;height:20px}
.site-h .lang{min-width:44px;height:44px;display:inline-grid;place-items:center;border-radius:12px;font-weight:700;font-size:14px;text-decoration:none;border:1px solid var(--field-border);background:var(--card);color:var(--fg) !important;padding:0 10px}
.btn-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:12px;background:var(--primary);color:var(--primary-ink) !important;font-weight:700;font-size:15.5px;text-decoration:none}
.btn-cta:hover{color:var(--primary-ink) !important;filter:brightness(1.06)}
.brand .opc{color:var(--primary)}
/* phones first: short CTA label, Guides and the language button join the bar as width allows */
.site-h .nav .nl,.site-h .lang,.site-h .lbl-long{display:none}
.site-h .btn-cta{padding:0 14px;font-size:15px}
.site-h .brand svg{width:32px;height:32px}
.site-h .brand{gap:8px}
@media (min-width:380px){.site-h .lang{display:inline-grid}}
@media (min-width:641px){.site-h .nav .nl{display:inline-flex}.site-h .lbl-short{display:none}.site-h .lbl-long{display:inline}.site-h .btn-cta{padding:0 16px;font-size:15.5px}.site-h .brand svg{width:38px;height:38px}.site-h .brand{gap:10px}}
