/* gukateam.com: the customer site (A117, design option B approved by Guy, 26 Oct). Tokens match Workplace's UI (guka-workplace ADR 0036, 0045). No inline styles or scripts: the CSP is strict. */
@font-face { font-family: "Rubik"; font-weight: 300 900; font-display: swap; src: url(fonts/rubik-hebrew.woff2) format("woff2"); unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: "Rubik"; font-weight: 300 900; font-display: swap; src: url(fonts/rubik-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Assistant"; font-weight: 200 800; font-display: swap; src: url(fonts/assistant-hebrew.woff2) format("woff2"); unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: "Assistant"; font-weight: 200 800; font-display: swap; src: url(fonts/assistant-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }

:root {
  --head: "Rubik", system-ui, sans-serif; --body: "Assistant", system-ui, sans-serif;
  --paper: #F7F4EE; --surface: #FFFFFF; --ink: #172524; --muted: #5F6B67; --line: #E4DFD4;
  --green: #0F5C4D; --green-2: #1B7A66; --mint: #E0F2EA; --sand: #FBF0D6; --amber: #F4B942; --on-dark: #CDE8DF;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 17px/1.55 var(--body); }
a { color: var(--green); }
h1, h2, h3 { font-family: var(--head); font-weight: 600; margin: 0; }
img { display: block; max-width: 100%; height: auto; }
.wrap { max-width: 1100px; margin: 0 auto; }
.btn { display: inline-block; font-weight: 700; text-decoration: none; padding: 12px 24px; border-radius: 10px; border: 1.5px solid transparent; }
.btn.solid { background: var(--green); color: #fff; }
.btn.line { color: var(--green); border-color: var(--green); }
.btn.light { background: #fff; color: var(--green); }
.btn.amber { background: var(--amber); color: var(--ink); }
.btn.ghost { color: #fff; border-color: rgba(255, 255, 255, .6); }

.top { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding: 14px 40px; border-bottom: 1px solid var(--line); }
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--ink); font: 600 21px/1 var(--head); }
.brand img { width: 34px; height: 34px; }
.top nav { margin-inline-start: auto; display: flex; align-items: center; gap: 20px; }
.top nav a:not(.btn) { color: #44504C; font-weight: 600; text-decoration: none; }
.top .btn { padding: 11px 22px; }

.hero { background: var(--green); color: #fff; padding: 72px 40px 64px; overflow: hidden; }
.hero .wrap { display: flex; flex-wrap: wrap; align-items: center; gap: 40px; }
.hero .text { flex: 1 1 340px; }
.hero .art { flex: 1.25 1 400px; }
.hero h1 { font-size: clamp(40px, 7vw, 68px); line-height: 1.1; }
.hero h1 span { color: var(--amber); }
.hero p { margin: 20px 0 0; font-size: 21px; color: var(--on-dark); max-width: 22em; }
.hero .btn { margin-top: 28px; }

.lanes { padding: 64px 40px 24px; }
.lanes .wrap { display: flex; flex-direction: column; gap: 28px; }
.lane { background: var(--surface); border: 1px solid var(--line); border-radius: 24px; padding: 32px; }
.lane header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.kicker { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--green-2); }
.lane.office .kicker { color: #B7791F; }
.lane h2 { font-size: 32px; line-height: 1.25; margin-top: 4px; }
.steps { display: flex; flex-wrap: wrap; gap: 24px; margin: 0; padding: 0; list-style: none; }
.step { flex: 1 1 220px; }
.step figure { position: relative; margin: 0; padding: 8px; border-radius: 18px; background: var(--mint); }
.lane.office .step figure { background: var(--sand); }
.step .n { position: absolute; top: 12px; inset-inline-start: 12px; width: 30px; height: 30px; border-radius: 50%; background: var(--green); color: #fff; display: grid; place-items: center; font-weight: 700; font-size: 15px; }
.step h3 { font-size: 20px; margin: 14px 0 4px; }
.step p { margin: 0; color: var(--muted); }

.cta { padding: 40px 40px 72px; }
.cta .wrap { background: var(--green); color: #fff; border-radius: 24px; padding: 48px 32px; text-align: center; }
.cta h2 { font-size: clamp(26px, 4vw, 36px); line-height: 1.25; }
.cta .row { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }

footer { border-top: 1px solid var(--line); padding: 24px 40px 36px; display: flex; flex-wrap: wrap; gap: 16px; color: var(--muted); font-size: 15px; }
footer a { margin-inline-start: auto; }

@media (max-width: 760px) {
  .top, .hero, .lanes, .cta, footer { padding-inline: 20px; }
  .hero { padding-top: 44px; }
  .lane { padding: 22px; }
}
