/* Thmanyah is read from the fonts installed on the device; its files are not hosted here (see the font's license) */
@font-face { font-family: "Thm Sans"; font-weight: 400; src: local("thmanyah sans Regular"), local("thmanyah sans"), local("thmanyahsans-Regular"); }
@font-face { font-family: "Thm Sans"; font-weight: 500; src: local("thmanyah sans Medium"), local("thmanyah sans Med"), local("thmanyahsans-Medium"); }
@font-face { font-family: "Thm Sans"; font-weight: 700; src: local("thmanyah sans Bold"), local("thmanyahsans-Bold"); }
@font-face { font-family: "Thm Display"; font-weight: 500; src: local("thmanyah serif display Medium"), local("thmanyah serif display Med"), local("thmanyahserifdisplay-Medium"); }
@font-face { font-family: "Thm Display"; font-weight: 700; src: local("thmanyah serif display Bold"), local("thmanyahserifdisplay-Bold"); }

:root {
  --ink-0: #060b12;
  --navy: #0d1e31;
  --navy-2: #13283f;
  --gold: #ba9c5c;
  --gold-light: #e0c88f;
  --gold-dark: #7d6329;
  --cream: #f9f5e9;
  --cream-2: #efe8d6;
  --ink: #111e2d;
  --muted: #55626f;
  --muted-dark: #a7b2bd;
  --line-dark: rgba(224, 200, 143, .16);
  --line-light: rgba(13, 30, 49, .13);
  --gutter: clamp(16px, 5vw, 72px);
  --r: 20px;
  --body: "Thm Sans", "IBM Plex Sans Arabic", "IBM Plex Sans", system-ui, sans-serif;
  --display: "Thm Display", "Thm Sans", "IBM Plex Sans Arabic", "IBM Plex Sans", serif;
  --mono: "IBM Plex Mono", ui-monospace, monospace;
}

* { box-sizing: border-box; margin: 0; }
html { scroll-padding-top: 96px; background: var(--ink-0); }
body { background: var(--ink-0); color: var(--cream); font-family: var(--body); font-size: 18px; line-height: 1.75; overflow-x: clip; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
h1, h2, h3 { font-family: var(--display); font-weight: 700; line-height: 1.25; text-wrap: balance; }
h1 { font-size: clamp(2.7rem, 7vw, 5.6rem); line-height: 1.14; }
h2 { font-size: clamp(2rem, 4.2vw, 3.4rem); }
h3 { font-size: 1.5rem; font-family: var(--body); font-weight: 500; }
p { text-wrap: pretty; }
:focus-visible { outline: 2px solid var(--gold-light); outline-offset: 3px; }
.ic { width: 1.2em; height: 1.2em; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; flex: none; }
[dir="rtl"] .flip { transform: scaleX(-1); }

.wrap { max-width: 1280px; margin-inline: auto; padding-inline: var(--gutter); }
.section { padding-block: clamp(72px, 10vw, 140px); }
.light { background: var(--cream); color: var(--ink); }
.pill { display: inline-flex; align-items: center; gap: 10px; padding: 7px 16px; border: 1px solid var(--line-dark); border-radius: 99px; background: rgba(224, 200, 143, .06); color: var(--gold-light); font-size: .92rem; font-weight: 500; }
.pill i { width: 7px; height: 7px; border-radius: 50%; background: var(--gold-light); box-shadow: 0 0 10px var(--gold-light); }
.light .pill { border-color: var(--line-light); background: var(--cream-2); color: var(--gold-dark); }
.light .pill i { background: var(--gold-dark); box-shadow: none; }
.lead { font-size: 1.16rem; color: var(--muted-dark); max-width: 58ch; }
.light .lead { color: var(--muted); }
.head { max-width: 760px; margin-bottom: clamp(40px, 5vw, 68px); }
.head h2 { margin-top: 16px; }
.head .lead { margin-top: 12px; }
.head.center { margin-inline: auto; text-align: center; }
.head.center .lead { margin-inline: auto; }

.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 10px 26px; border: 1px solid var(--gold); border-radius: 99px; background: var(--gold); color: var(--ink-0); font: 500 1.02rem var(--body); text-decoration: none; cursor: pointer; transition: background .25s, color .25s, border-color .25s, box-shadow .25s; }
.btn:hover { background: var(--gold-light); border-color: var(--gold-light); box-shadow: 0 0 34px rgba(224, 200, 143, .35); }
.btn [data-ic] { transition: transform .25s; }
[dir="rtl"] .btn:hover [data-ic] { transform: translateX(-4px); }
[dir="ltr"] .btn:hover [data-ic] { transform: translateX(4px); }
.btn.ghost { background: transparent; color: inherit; border-color: var(--line-dark); }
.btn.ghost:hover { border-color: var(--gold); box-shadow: none; }
.light .btn.ghost { border-color: var(--line-light); }
.btn.dark { background: var(--ink-0); border-color: var(--ink-0); color: var(--cream); }
.btn.dark:hover { background: var(--navy-2); border-color: var(--navy-2); box-shadow: none; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

/* header */
.progress { position: fixed; top: 0; inset-inline: 0; height: 2px; z-index: 60; background: var(--gold-light); transform: scaleX(0); transform-origin: right; }
[dir="ltr"] .progress { transform-origin: left; }
.site-head { position: sticky; top: 0; z-index: 50; background: rgba(6, 11, 18, .72); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); border-bottom: 1px solid var(--line-dark); }
.site-head .wrap { display: flex; align-items: center; gap: 24px; min-height: 76px; }
.brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.brand img { width: 42px; }
.brand b { display: block; font: 600 1.2rem/1.1 "Cinzel", serif; letter-spacing: .14em; color: var(--gold-light); }
.brand small { display: block; font: 500 .6rem/1.5 "IBM Plex Sans", sans-serif; letter-spacing: .2em; color: var(--muted-dark); }
.nav { display: flex; gap: 6px; margin-inline: auto; padding: 5px; border: 1px solid var(--line-dark); border-radius: 99px; }
.nav a { padding: 6px 18px; border-radius: 99px; text-decoration: none; font-size: 1rem; color: var(--cream); transition: background .2s, color .2s; }
.nav a:hover { color: var(--gold-light); }
.nav a[aria-current] { background: rgba(224, 200, 143, .14); color: var(--gold-light); }
.lang { min-width: 44px; min-height: 44px; border-radius: 50%; background: none; border: 1px solid var(--line-dark); color: var(--gold-light); font: 500 .92rem var(--body); cursor: pointer; }
.lang:hover { border-color: var(--gold); }
.head-cta { min-height: 44px; padding-inline: 20px; font-size: .96rem; }
.burger { display: none; width: 44px; height: 44px; border-radius: 50%; background: none; border: 1px solid var(--line-dark); color: var(--cream); font-size: 1.1rem; cursor: pointer; align-items: center; justify-content: center; }

/* intro */
.intro { position: fixed; inset: 0; z-index: 100; overflow: hidden; cursor: pointer; animation: intro-end .01s linear 4s forwards; }
html.no-intro .intro { display: none; }
.door { position: absolute; top: 0; bottom: 0; width: 50.2%; background: var(--ink-0); animation: 1s cubic-bezier(.76, 0, .24, 1) 3s forwards; }
.door.a { left: 0; animation-name: door-a; }
.door.b { right: 0; animation-name: door-b; }
.door::after { content: ""; position: absolute; top: 0; bottom: 0; width: 1px; background: var(--gold-light); box-shadow: 0 0 22px var(--gold-light); opacity: 0; animation: fade .3s ease 2.8s forwards; }
.door.a::after { right: 0; }
.door.b::after { left: 0; }
.intro-mark { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 16px; text-align: center; color: var(--cream); animation: mark-out .45s ease-in 2.75s forwards; }
.shield { position: relative; width: clamp(130px, 21vmin, 200px); aspect-ratio: 1261 / 1368; margin-bottom: 14px; }
.shield svg, .shield img { position: absolute; inset: 0; width: 100%; height: 100%; }
.shield path { fill: none; stroke: var(--gold); stroke-width: 18; stroke-dasharray: 1; stroke-dashoffset: 1; animation: draw 1.1s ease-in-out .15s forwards; }
.shield .full { opacity: 0; animation: fade .5s ease 1.15s forwards; }
.shield .eagle { clip-path: inset(0 100% 0 0); animation: wipe .75s ease-out .75s forwards; filter: drop-shadow(0 0 14px rgba(224, 200, 143, .55)); }
.intro-name { display: flex; gap: .06em; font: 600 clamp(2.4rem, 8vmin, 4.2rem)/1.1 "Cinzel", serif; letter-spacing: .1em; color: var(--gold-light); }
.intro-name span { opacity: 0; transform: translateY(14px); animation: rise .5s ease forwards; animation-delay: calc(1.3s + var(--i) * 70ms); }
.intro-sub { font: 500 clamp(.72rem, 1.9vmin, .95rem) "IBM Plex Sans", sans-serif; letter-spacing: .34em; opacity: 0; animation: fade .5s ease 1.8s forwards; }
.intro-ar { font: 500 clamp(1.05rem, 3vmin, 1.5rem) var(--body); color: var(--muted-dark); opacity: 0; animation: fade .5s ease 2s forwards; }
@keyframes draw { to { stroke-dashoffset: 0; } }
@keyframes wipe { to { clip-path: inset(0 0 0 0); } }
@keyframes fade { to { opacity: 1; } }
@keyframes rise { to { opacity: 1; transform: none; } }
@keyframes mark-out { to { opacity: 0; transform: scale(.96); } }
@keyframes door-a { to { transform: translateX(-101%); } }
@keyframes door-b { to { transform: translateX(101%); } }
@keyframes intro-end { to { visibility: hidden; } }

/* hero: the light rises from the horizon, the photo opens up on scroll */
.hero { position: relative; overflow: clip; text-align: center; padding-top: clamp(56px, 8vw, 104px); background-image: linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px); background-size: 84px 84px; background-position: center top; }
.hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse 70% 62% at 50% 30%, transparent, var(--ink-0) 92%); pointer-events: none; }
.hero-copy { position: relative; z-index: 2; }
.hero h1 { margin-top: 22px; }
.ln { display: block; overflow: clip; overflow-clip-margin: .22em; padding-block: .06em; }
.ln > span { display: block; }
.hero h1 em { font-style: normal; color: var(--gold-light); }
.hero-copy > p { margin: 20px auto 0; max-width: 54ch; font-size: 1.2rem; color: var(--muted-dark); }
.hero .actions { justify-content: center; }
.horizon-box { position: relative; z-index: 1; margin-top: clamp(56px, 7vw, 92px); }
.horizon { position: absolute; left: 50%; top: 0; width: max(170vw, 1500px); aspect-ratio: 1; border-radius: 50%; transform: translateX(-50%); background: var(--ink-0); border-top: 1px solid var(--gold-light); box-shadow: 0 -4px 22px rgba(224, 200, 143, .8), 0 -24px 90px rgba(186, 156, 92, .55), 0 -70px 220px rgba(186, 156, 92, .3); }
.stage { position: relative; margin-inline: auto; width: min(100% - 2 * var(--gutter), 1280px); top: clamp(32px, 5vw, 64px); margin-bottom: clamp(32px, 5vw, 64px); aspect-ratio: 16 / 9; border-radius: var(--r); overflow: hidden; border: 1px solid var(--line-dark); box-shadow: 0 -20px 90px rgba(186, 156, 92, .22); will-change: transform; }
.stage img { width: 100%; height: 100%; object-fit: cover; }
.stage::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(6, 11, 18, .55), transparent 45%); }

.ticker { overflow: hidden; border-block: 1px solid var(--line-dark); padding-block: 18px; background: var(--ink-0); }
.ticker > div { display: flex; gap: 48px; width: max-content; animation: tick 34s linear infinite; }
[dir="rtl"] .ticker > div { animation-name: tick-rtl; }
.ticker span { display: inline-flex; align-items: center; gap: 12px; white-space: nowrap; font-size: 1.12rem; color: var(--muted-dark); }
.ticker .ic { color: var(--gold); }
@keyframes tick { to { transform: translateX(-50%); } }
@keyframes tick-rtl { to { transform: translateX(50%); } }

/* split, with offset frame */
.split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(36px, 7vw, 104px); align-items: center; }
.split h2 { margin-block: 16px; }
.split p + p { margin-top: 14px; }
.frame { position: relative; padding: 12px; border: 1px solid var(--line-dark); border-radius: calc(var(--r) + 12px); }
.light .frame { border-color: var(--line-light); }
.photo { overflow: hidden; border-radius: var(--r); aspect-ratio: 4 / 5; }
.photo.wide { aspect-ratio: 16 / 10; }
.photo img { width: 100%; height: 118%; max-width: none; object-fit: cover; }
/* photos of people stay fixed so no head is cut */
.photo.still img { height: 100%; }
.checks { list-style: none; padding: 0; margin-top: 22px; }
.checks li { display: flex; align-items: center; gap: 12px; padding-block: 8px; font-weight: 500; }
.checks .ic { width: 28px; height: 28px; padding: 6px; border-radius: 50%; background: var(--gold); color: var(--ink-0); stroke-width: 2.4; }

/* service cards */
.cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.card { --mx: 50%; --my: 0%; position: relative; display: flex; flex-direction: column; min-height: 340px; padding: 28px; border: 1px solid var(--line-dark); border-radius: var(--r); background: linear-gradient(170deg, var(--navy), #09131f); text-decoration: none; overflow: hidden; transition: border-color .3s; }
.card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(320px circle at var(--mx) var(--my), rgba(224, 200, 143, .17), transparent 70%); opacity: 0; transition: opacity .3s; }
.card:hover { border-color: rgba(224, 200, 143, .5); }
.card:hover::before { opacity: 1; }
.card > * { position: relative; }
.tile { display: grid; place-items: center; width: 60px; height: 60px; border-radius: 16px; border: 1px solid var(--line-dark); background: rgba(224, 200, 143, .07); color: var(--gold-light); font-size: 1.6rem; flex: none; }
.card h3 { margin-top: auto; padding-top: 44px; }
.card p { margin-top: 8px; color: var(--muted-dark); font-size: 1rem; line-height: 1.65; }

/* network */
.net { background: radial-gradient(ellipse 60% 55% at 50% 42%, rgba(29, 55, 82, .55), transparent 72%); }
.net-svg { display: block; width: 100%; max-width: 1040px; margin-inline: auto; overflow: visible; direction: ltr; }
.net-svg .wire { fill: none; stroke: rgba(224, 200, 143, .36); stroke-width: 1.5; }
.net-svg .node { fill: var(--navy); stroke: rgba(224, 200, 143, .4); stroke-width: 1.5; }
.net-svg use { color: var(--gold-light); fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.net-svg .halo { fill: none; stroke: var(--gold-light); opacity: 0; animation: halo 3.6s ease-out infinite; transform-box: fill-box; transform-origin: center; }
.net-svg .pulse { fill: var(--gold-light); filter: drop-shadow(0 0 6px var(--gold-light)); }
.net-svg .core { fill: #0a1420; stroke: var(--gold-light); stroke-width: 1.5; filter: drop-shadow(0 0 26px rgba(224, 200, 143, .32)); }
@keyframes halo { 0% { opacity: .6; transform: scale(1); } 80%, 100% { opacity: 0; transform: scale(1.5); } }
.net-legend { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; list-style: none; padding: 0; margin-top: 40px; }
.net-legend li { padding-top: 14px; border-top: 1px solid var(--line-dark); }
.net-legend b { display: flex; align-items: center; gap: 10px; font-weight: 500; font-size: 1.1rem; }
.net-legend .ic { color: var(--gold-light); }
.net-legend li > span { display: block; color: var(--muted-dark); font-size: .98rem; margin-top: 2px; }

/* values */
.values { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.values > div { padding: 26px; border: 1px solid var(--line-light); border-radius: var(--r); background: #fffdf6; }
.values .tile { width: 52px; height: 52px; font-size: 1.35rem; background: var(--navy); color: var(--gold-light); border: 0; border-radius: 14px; }
.values h3 { margin-top: 20px; font-size: 1.3rem; }
.values p { margin-top: 6px; color: var(--muted); font-size: 1rem; line-height: 1.6; }

.cta { position: relative; overflow: hidden; text-align: center; padding-block: clamp(80px, 11vw, 150px); }
.cta::before { content: ""; position: absolute; left: 50%; top: 100%; width: max(130vw, 1200px); aspect-ratio: 1; border-radius: 50%; transform: translate(-50%, -14%); border-top: 1px solid var(--gold-light); box-shadow: 0 -4px 22px rgba(224, 200, 143, .7), 0 -40px 170px rgba(186, 156, 92, .42); }
.cta .wrap { position: relative; }
.cta .actions { justify-content: center; }

/* inner pages */
.page-head { position: relative; overflow: hidden; padding-block: clamp(80px, 12vw, 170px) clamp(64px, 9vw, 120px); border-bottom: 1px solid var(--line-dark); }
.page-bg { position: absolute; inset: -12% 0; background-size: cover; background-position: center; opacity: .46; }
.page-head::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, var(--ink-0), rgba(6, 11, 18, .3) 75%); }
.page-head .wrap { position: relative; z-index: 1; }
.page-head h1 { font-size: clamp(2.5rem, 5.6vw, 4.6rem); margin-block: 18px 12px; }
.page-head .lead { color: #cdd5dc; }
.fleet { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.fleet .photo { aspect-ratio: 3 / 2; }
.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.team-grid .photo { aspect-ratio: 4 / 3; }
.team-grid .photo img { object-position: 50% 20%; }
.team-grid .main { grid-column: span 2; }
.team-grid .tall .photo { aspect-ratio: auto; height: 100%; }

.service { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(36px, 7vw, 104px); align-items: center; padding-block: clamp(56px, 7vw, 96px); border-bottom: 1px solid var(--line-dark); }
.service:last-child { border-bottom: 0; }
.service:nth-child(even) .frame { order: 2; }
.service .photo { aspect-ratio: 5 / 4; }
.svc-tag { display: flex; align-items: center; gap: 14px; }
.svc-tag .num { font-family: var(--mono); color: var(--gold); font-size: .95rem; }
.service h2 { font-size: clamp(1.9rem, 3.2vw, 2.8rem); margin-block: 16px 10px; }
.service > div > p { color: var(--muted-dark); }
.service .checks .ic { background: rgba(224, 200, 143, .14); color: var(--gold-light); }
.steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.steps > div { padding: 26px; border: 1px solid var(--line-dark); border-radius: var(--r); background: var(--navy); }
.steps .tile { width: 52px; height: 52px; font-size: 1.3rem; }
.steps h3 { margin-top: 20px; font-size: 1.3rem; }
.steps p { margin-top: 6px; color: var(--muted-dark); font-size: 1rem; line-height: 1.6; }

/* contact */
.contact-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(36px, 6vw, 88px); align-items: start; }
.channel { display: flex; align-items: center; gap: 16px; padding: 18px; margin-bottom: 12px; border: 1px solid var(--line-dark); border-radius: var(--r); background: var(--navy); text-decoration: none; transition: border-color .25s; }
.channel:hover { border-color: var(--gold); }
.channel small { display: block; color: var(--muted-dark); font-size: .95rem; }
.channel b { font-size: 1.15rem; font-weight: 500; overflow-wrap: anywhere; line-height: 1.4; }
.channel > span:last-child { min-width: 0; }
.form { padding: clamp(22px, 4vw, 44px); border: 1px solid var(--line-dark); border-radius: calc(var(--r) + 6px); background: linear-gradient(170deg, var(--navy), #09131f); }
.form h2 { font-size: 2rem; margin-bottom: 20px; }
.form label { display: block; margin-bottom: 16px; font-size: 1rem; }
.form input, .form select, .form textarea { display: block; width: 100%; margin-top: 6px; min-height: 50px; padding: 10px 14px; background: rgba(6, 11, 18, .6); border: 1px solid var(--line-dark); border-radius: 12px; color: var(--cream); font: 400 1.02rem var(--body); transition: border-color .2s, box-shadow .2s; }
.form select option { color: var(--cream); background: var(--navy-2); }
.form input:focus, .form select:focus, .form textarea:focus { outline: 0; border-color: var(--gold); box-shadow: 0 0 0 3px rgba(224, 200, 143, .14); }
.form .row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form .note { margin-top: 14px; font-size: .94rem; color: var(--muted-dark); }
.form .err { min-height: 1.4em; color: #f0b7a4; font-size: .96rem; }

/* footer */
.site-foot { border-top: 1px solid var(--line-dark); color: var(--muted-dark); padding-block: 56px 28px; font-size: 1rem; }
.foot-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 36px; }
.site-foot h3 { font-size: 1.05rem; color: var(--gold-light); margin-bottom: 10px; }
.site-foot a { display: flex; align-items: center; gap: 8px; text-decoration: none; padding-block: 3px; width: fit-content; max-width: 100%; overflow-wrap: anywhere; }
.site-foot a:hover { color: var(--gold-light); }
.site-foot .brand { margin-bottom: 14px; }
.ltr { direction: ltr; unicode-bidi: isolate; }
.copyright { margin-top: 36px; padding-top: 18px; border-top: 1px solid var(--line-dark); font-size: .9rem; }

@media (max-width: 1040px) {
  .burger { display: inline-flex; }
  .head-cta { display: none; }
  .site-head .wrap { gap: 10px; }
  .lang { margin-inline-start: auto; }
  .nav { display: none; position: absolute; top: 100%; inset-inline: 0; flex-direction: column; gap: 2px; padding: 10px var(--gutter) 16px; background: var(--ink-0); border: 0; border-bottom: 1px solid var(--line-dark); border-radius: 0; }
  .nav.open { display: flex; }
  .nav a { padding-block: 10px; }
  .cards, .values, .steps, .net-legend { grid-template-columns: 1fr 1fr; }
  .card { min-height: 280px; }
  .team-grid { grid-template-columns: 1fr 1fr; }
  .team-grid .main { grid-column: 1 / -1; }
  .team-grid .tall .photo { aspect-ratio: 3 / 4; height: auto; }
}
@media (max-width: 820px) {
  .split, .service, .contact-grid { grid-template-columns: 1fr; }
  .service:nth-child(even) .frame { order: 0; }
  .foot-grid { grid-template-columns: 1fr; }
  .photo { aspect-ratio: 5 / 4; }
}
@media (max-width: 560px) {
  body { font-size: 17px; }
  .cards, .values, .steps, .form .row, .fleet, .team-grid { grid-template-columns: 1fr; }
  .form .row { gap: 0; }
  .card { min-height: 0; }
  .card h3 { padding-top: 28px; }
  .stage { aspect-ratio: 4 / 3; }
  .brand small { display: none; }
  .hero { background-size: 56px 56px; }
}
@media (prefers-reduced-motion: reduce) {
  .intro { display: none; }
  .ticker > div, .net-svg .halo { animation: none; }
  .card, .channel, .btn { transition: none; }
}

/* contact form states */
.form .hp { position: absolute; width: 1px; height: 1px; min-height: 0; margin: 0; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.form .ok:not(:empty) { padding: 10px 14px; margin-bottom: 8px; border: 1px solid var(--gold); border-radius: 12px; color: var(--gold-light); font-size: .98rem; }
.btn:disabled { opacity: .6; cursor: wait; }

/* plain links for crawlers until the script swaps in the real header and footer */
#head { height: 77px; overflow: hidden; opacity: 0; }
#foot { opacity: 0; }
