/* base reset (matches the Tailwind preflight the original build used) */
*,::before,::after{box-sizing:border-box;border:0 solid}
h1,h2,h3,h4{font-size:inherit;font-weight:inherit;margin:0}
p,figure,ul,ol,blockquote{margin:0}
ul,ol{list-style:none;padding:0}
img,svg,video{display:block;max-width:100%;height:auto}
b,strong{font-weight:bolder}
button,input,select,textarea{font:inherit;color:inherit}

/* ===== הגדרות לעריכה מהירה =====
   --frame-size: גודל כל תמונה בפתיח (אחוז מרוחב הערימה). 40% קטן, 47% בינוני, 52% גדול.
   --art-size: רוחב הערימה כולה בפיקסלים. */
:root { --frame-size:47%; --art-size:560px; }
:root { --ink:#3E4A54; --cream:#FAF8F4; --paper:#fff; --blue:#3B709A; --blue-dark:#2C5878; --green:#5E8E6F; --orange:#5E8E6F; --light-blue:#D9E6EF; --soft-green:#EDF3EE; --line:#E4DED2; --muted:#4E5D68; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
main { overflow:hidden; }
.site-header { min-height:110px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:14px clamp(24px,5vw,80px); border-bottom:1px solid var(--line); background:rgba(250,248,244,.94); position:sticky; top:0; z-index:20; backdrop-filter:blur(14px); text-align:center; }
.brand { display:flex; align-items:center; gap:12px; }
.brand-logo { display:block; width:200px; height:auto; max-height:76px; object-fit:contain; }
.brand strong,.brand small { display:block; }
.brand strong { font-size:17px; }
.brand small { font-size:12px; margin-top:3px; color:var(--muted); }
nav { display:flex; gap:32px; font-size:15px; }
nav a:hover { color:var(--blue); }
.hero { min-height:720px; padding:clamp(52px,8vw,110px) clamp(24px,7vw,110px); background:var(--cream); display:grid; grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr); gap:6vw; align-items:center; }
.hero-copy { text-align:center; }
.eyebrow { color:var(--orange); font-weight:700; font-size:14px; letter-spacing:.02em; margin:0 0 18px; }
h1 { font-size:clamp(44px,5.6vw,80px); line-height:1.1; letter-spacing:0; margin:0; max-width:760px; font-weight:700; }
h1 em { color:var(--blue); font-style:normal; font-weight:400; }
.hero-lead { font-size:clamp(19px,2vw,25px); line-height:1.6; max-width:680px; margin:32px 0; }
.hero-actions,.contact-actions { display:flex; gap:24px; align-items:center; flex-wrap:wrap; }
.hero-actions { justify-content:center; }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; padding:0 26px; border-radius:3px; font-weight:700; transition:.2s ease; }
.primary { background:var(--blue); color:white; box-shadow:7px 7px 0 var(--light-blue); }
.primary:hover { background:var(--blue-dark); transform:translate(-2px,-2px); box-shadow:9px 9px 0 var(--light-blue); }
.text-button { color:var(--blue-dark); padding-inline:6px; }
.hero-art { position:relative; aspect-ratio:1/1.3; max-width:var(--art-size); width:100%; margin-inline:auto; }
.frame { position:absolute; width:var(--frame-size); aspect-ratio:1/1.18; padding:3.5% 3.5% 0; background:var(--paper); box-shadow:0 24px 60px rgba(48,63,70,.18); display:grid; grid-template-rows:1fr auto; opacity:0; animation:frame-in .9s cubic-bezier(.2,.8,.2,1) forwards; }
.frame img { width:100%; height:100%; object-fit:cover; display:block; }
.frame span { display:grid; place-items:center; min-height:3.2em; font-size:clamp(22px,2.6vw,34px); font-weight:700; color:var(--ink); text-align:center; line-height:1; }
.frame-a { right:0; top:0; --rot:4deg; animation-delay:.15s; }
.frame-b { left:0; top:26%; --rot:-6deg; animation-delay:.45s; }
.frame-c { right:5%; bottom:0; --rot:2deg; animation-delay:.75s; }
.frame-c span { color:var(--blue); }
@keyframes frame-in { from { opacity:0; transform:translateY(-70px) rotate(calc(var(--rot) - 10deg)) scale(.92); } 60% { opacity:1; } to { opacity:1; transform:translateY(0) rotate(var(--rot)) scale(1); } }
.hero-art::after { content:""; position:absolute; inset:auto 10% -6% 10%; height:40px; border-radius:50%; background:radial-gradient(closest-side, rgba(48,63,70,.12), transparent); }
.hero-copy > * { opacity:0; animation:rise .8s ease forwards; }
.hero-copy > .eyebrow { animation-delay:.05s; }
.hero-copy > h1 { animation-delay:.2s; }
.hero-copy > .hero-lead { animation-delay:.4s; }
.hero-copy > .hero-actions { animation-delay:.55s; }
@keyframes rise { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
.audience-strip { padding:22px clamp(24px,5vw,80px); background:var(--paper); color:var(--muted); border-block:1px solid var(--line); display:flex; justify-content:center; gap:0; flex-wrap:wrap; font-size:15px; }
.audience-strip span:not(:last-child)::after { content:"·"; margin:0 clamp(14px,2.4vw,34px); color:var(--green); font-weight:700; }
.clients-section { padding:68px 0 76px; text-align:center; background:white; border-bottom:1px solid var(--line); }
.clients-section>h2 { max-width:720px; margin:0 auto 42px; padding:0 24px; font-size:clamp(30px,4vw,48px); }
.clients-marquee { direction:ltr; overflow:hidden; width:100%; padding:8px 0; }
.clients-track { display:flex; align-items:center; gap:36px; width:max-content; animation:clients-scroll 48s linear infinite; }
.clients-marquee:hover .clients-track,.clients-marquee:focus .clients-track,.clients-marquee:focus-within .clients-track { animation-play-state:paused; }
.client-logo { width:210px; height:150px; flex:0 0 210px; display:grid; place-items:center; padding:10px 14px; background:#fff; }
.client-logo img { display:block; width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
@keyframes clients-scroll { from { transform:translateX(0); } to { transform:translateX(calc(-50% - 18px)); } }
.section { padding:clamp(74px,10vw,145px) clamp(24px,7vw,110px); }
.section-heading { max-width:760px; margin:0 auto 58px; text-align:center; }
h2 { font-size:clamp(34px,4.2vw,60px); line-height:1.15; letter-spacing:0; margin:0 0 24px; }
.section-heading>p:last-child,.wonder-section>div>p:last-child,.about-copy p { font-size:18px; line-height:1.75; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.service-card { min-height:330px; padding:34px; border:1px solid var(--line); background:white; display:flex; flex-direction:column; }
.service-card:nth-child(2) { background:var(--soft-green); color:var(--ink); border-color:var(--line); }
.service-number { font-size:13px; font-weight:700; color:var(--orange); }
.service-card:nth-child(2) .service-number { color:var(--green); }
.service-card h3 { margin:auto 0 18px; font-size:27px; line-height:1.2; }
.service-card p { font-size:16px; line-height:1.7; margin:0; min-height:6.8em; }
.training-section { background:var(--paper); }
.training-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.training-card { padding:34px; min-height:210px; border:1px solid var(--line); background:var(--cream); }
.training-card:nth-child(2) { background:var(--soft-green); }
.training-card:nth-child(3) { background:var(--light-blue); }
.training-card:nth-child(4) { background:var(--paper); }
.training-card h3 { font-size:25px; line-height:1.25; margin:0 0 20px; color:var(--blue-dark); }
.training-card p { font-size:17px; line-height:1.75; margin:0; }
.training-details { margin-top:28px; border-block:1px solid var(--line); }
.training-details div { display:grid; grid-template-columns:minmax(170px,.3fr) 1fr; gap:28px; padding:20px 0; border-bottom:1px solid var(--line); align-items:baseline; }
.training-details div:last-child { border-bottom:0; }
.training-details strong { color:var(--blue-dark); font-size:17px; }
.training-details span { font-size:16px; line-height:1.65; }
.training-button { margin-top:34px; }
.wonder-section { margin:0 clamp(24px,5vw,80px); padding:clamp(50px,7vw,90px); background:var(--soft-green); color:var(--ink); border:1px solid var(--line); display:grid; grid-template-columns:240px 1fr; gap:7vw; align-items:center; }
.wonder-section .eyebrow { color:var(--green); }
.wonder-badge { width:240px; display:grid; place-items:center; justify-self:center; }
.wonder-badge img { width:100%; height:auto; display:block; }
.wonder-section>div:last-child { max-width:800px; }
.wonder-section>div:last-child { text-align:center; }
.examples { background:var(--cream); }
.examples-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.example-card { min-height:285px; padding:38px; display:flex; flex-direction:column; justify-content:flex-end; color:var(--ink); border:1px solid var(--line); }
.example-card span { font-size:14px; font-weight:700; margin-bottom:auto; }
.example-card h3 { font-size:30px; margin:36px 0 14px; line-height:1.15; }
.example-card p { font-size:16px; line-height:1.7; margin:0; max-width:580px; }
.example-card.blue { background:var(--light-blue); }
.example-card.green { background:var(--soft-green); }
.example-card.orange { background:var(--cream); }
.example-card.light-blue { background:var(--paper); color:var(--ink); }
.gallery-section { background:white; }
.gallery-section { text-align:center; }
.workshop-gallery { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; text-align:initial; }
.workshop-gallery figure { margin:0; overflow:hidden; background:var(--cream); aspect-ratio:1/1; }
.workshop-gallery img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .35s ease; }
.workshop-gallery figure:hover img { transform:scale(1.035); }
.instagram-cta { display:inline-flex; margin-top:26px; padding-bottom:5px; color:var(--blue-dark); border-bottom:3px solid var(--orange); font-weight:700; font-size:17px; }
.about { display:grid; grid-template-columns:minmax(240px,340px) minmax(0,640px); justify-content:center; gap:clamp(34px,5vw,76px); align-items:center; }
.about-photo-wrap { position:relative; }
.about-photo { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; object-position:50% 20%; border:10px solid var(--cream); box-shadow:14px 14px 0 var(--light-blue); }
.about-photo-wrap span { position:absolute; left:-14px; bottom:22px; padding:10px 16px; background:var(--orange); color:white; font-weight:700; }
.about-copy { max-width:640px; text-align:center; }
.about-copy .social-links { justify-content:center; }
.about-copy>.eyebrow,.about-copy>h2,.about-copy>.about-lead { text-align:center; }
.about-lead { font-size:23px!important; font-weight:700; margin-bottom:18px; }
.social-links { display:flex; gap:10px; flex-wrap:wrap; margin-top:28px; }
.social-links a { padding:10px 14px; border:1px solid var(--blue); color:var(--blue-dark); font-weight:700; font-size:15px; }
.social-links a:hover,.social-links a:focus-visible { background:var(--blue); color:white; }
.facts-strip { background:var(--paper); border-bottom:1px solid var(--line); padding:clamp(28px,4vw,44px) clamp(24px,7vw,110px); }
.about-facts { display:grid; grid-template-columns:repeat(4,1fr); max-width:1100px; margin:0 auto; }
.about-facts div { display:flex; flex-direction:column; align-items:center; gap:6px; padding:6px 12px; text-align:center; }
.about-facts div + div { border-inline-start:1px solid var(--line); }
.about-facts strong { font-size:clamp(30px,3.4vw,44px); line-height:1.1; color:var(--blue); }
.about-facts span { font-size:15px; color:var(--muted); }
.contact { padding:clamp(72px,9vw,130px) clamp(24px,9vw,150px); background:var(--light-blue); color:var(--ink); text-align:center; }
.contact .eyebrow { color:var(--green); }
.contact>p:not(.eyebrow) { font-size:19px; line-height:1.7; max-width:650px; margin:0 auto 32px; }
.contact-actions { justify-content:center; }
.light { background:white; color:var(--blue-dark); }
.light:hover { background:var(--cream); }
.contact-link { font-size:20px; font-weight:700; direction:ltr; }
.contact-email { display:inline-block; margin-top:22px; font-size:17px; font-weight:700; direction:ltr; text-decoration:underline; text-underline-offset:5px; }
footer { padding:34px clamp(24px,5vw,80px); display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--line); }
footer p { font-size:13px; color:var(--muted); }
.footer-links { display:flex; gap:24px; font-size:14px; font-weight:700; color:var(--blue-dark); }
.legal-page { min-height:100vh; background:var(--cream); color:var(--ink); padding:clamp(42px,8vw,100px) clamp(24px,10vw,160px); }
.legal-shell { max-width:860px; margin:0 auto; background:white; padding:clamp(32px,6vw,72px); border-top:10px solid var(--blue); box-shadow:12px 12px 0 var(--light-blue); }
.legal-logo { width:150px; height:auto; margin-bottom:48px; }
.legal-page h1 { font-size:clamp(38px,6vw,64px); margin-bottom:30px; }
.legal-page h2 { font-size:25px; margin:38px 0 12px; letter-spacing:0; }
.legal-page p,.legal-page li { font-size:17px; line-height:1.75; }
.legal-page ul { padding-right:22px; }
.legal-back { display:inline-flex; margin-top:36px; color:var(--blue-dark); font-weight:700; border-bottom:2px solid var(--orange); }
.accessibility-button { border:0; cursor:pointer; position:fixed; left:18px; bottom:18px; z-index:50; width:48px; height:48px; border-radius:50%; display:grid; place-items:center; background:var(--blue-dark); color:white; box-shadow:0 8px 25px rgba(47,83,109,.25); }
.accessibility-button svg { width:27px; height:27px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.accessibility-button:hover,.accessibility-button:focus-visible { background:var(--orange); outline:3px solid white; outline-offset:2px; }
@media (max-width:850px) {
  nav { display:none; }
  .hero { grid-template-columns:1fr; min-height:auto; }
  .hero-art { margin-top:18px; max-width:min(var(--art-size),380px); }
  .service-grid { grid-template-columns:1fr; }
  .training-grid { grid-template-columns:1fr; }
  .workshop-gallery { grid-template-columns:repeat(2,1fr); }
  .training-details div { grid-template-columns:1fr; gap:7px; }
  .examples-grid { grid-template-columns:1fr; }
  .service-card { min-height:245px; }
  .service-card:nth-child(2) { transform:none; }
  .wonder-section { grid-template-columns:1fr; }
  .wonder-badge { width:150px; }
  .about { grid-template-columns:minmax(220px,.8fr) 1.2fr; }
  .audience-strip span:not(:last-child)::after { display:none; }
}
@media (max-width:540px) {
  .site-header { min-height:90px; }
  .brand-logo { width:166px; }
  .hero { padding-top:52px; }
  h1 { font-size:45px; }
  .hero-lead { font-size:18px; }
  .hero-art { max-width:320px; }
  .frame span { font-size:20px; }
  .audience-strip { justify-content:flex-start; gap:13px 24px; }
  .clients-section { padding:54px 0 60px; }
  .client-logo { width:160px; height:118px; flex-basis:160px; padding:8px 10px; }
  .service-card { padding:28px; }
  .wonder-section { margin:0; }
  .about { display:block; }
  .about-photo-wrap { max-width:300px; margin:0 auto 48px; }
  .about-photo { border-width:7px; box-shadow:10px 10px 0 var(--light-blue); }
  .about-copy { text-align:center; }
  .social-links { justify-content:center; }
  .about-facts { grid-template-columns:repeat(2,1fr); row-gap:22px; }
  .about-facts div:nth-child(3) { border-inline-start:0; }
  footer { align-items:flex-start; flex-direction:column; }
  .footer-links { flex-wrap:wrap; gap:14px 22px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .frame,.hero-copy > * { animation:none; opacity:1; transform:rotate(var(--rot,0deg)); }
  .clients-track { animation:none; }
  .clients-marquee { overflow-x:auto; }
  .button { transition:none; }
}
/* Instagram live feed (Behold) */
.ig-live{margin-top:34px;text-align:initial}
behold-widget{display:block}

/* why sheleg */
.why { background:var(--cream); display:grid; grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr); gap:clamp(34px,6vw,90px); align-items:center; border-top:1px solid var(--line); }
.why-word { display:grid; grid-template-columns:1fr 1fr; gap:18px; background:var(--paper); border:1px solid var(--line); box-shadow:14px 14px 0 var(--light-blue); padding:28px 22px; }
.why-word figure { margin:0; display:grid; gap:10px; justify-items:center; }
.why-word img { width:100%; max-width:230px; height:auto; display:block; margin:0 auto; }
.why-word figcaption { font-size:20px; font-weight:700; color:var(--ink); }
.why-word figure:last-child figcaption { color:var(--blue); }
.why-copy { max-width:620px; }
.why-copy h2 { margin-bottom:18px; }
.why-copy p { font-size:18px; line-height:1.75; }
.why-copy p + p { margin-top:14px; }
@media (max-width:850px) { .why { grid-template-columns:1fr; } .why-word { max-width:420px; margin:0 auto; } .why-copy { text-align:center; } }

/* additions */
.practical { margin-top:40px; }
.feature-video { margin:0 0 26px; display:grid; grid-template-columns:minmax(240px,340px) minmax(0,1fr); gap:clamp(28px,5vw,70px); align-items:center; background:var(--paper); border:1px solid var(--line); padding:clamp(22px,3.5vw,44px); }
.feature-video-media { justify-self:center; width:100%; max-width:340px; }
.feature-video video { width:100%; aspect-ratio:9/16; display:block; background:#000; box-shadow:12px 12px 0 var(--light-blue); }
.feature-video figcaption { text-align:right; }
.feature-video figcaption h3 { font-size:clamp(24px,2.6vw,32px); line-height:1.2; margin:0 0 14px; }
.feature-video figcaption p:last-child { font-size:17px; line-height:1.75; margin:0; color:var(--ink); }
.ig-live { margin-bottom:28px; text-align:initial; }
.contact .procurement { margin-top:30px; font-size:15px; color:var(--muted); max-width:560px; }
@media (max-width:850px) { nav { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 18px; font-size:14px; } }

/* testimonials slider */
.testimonials { background:var(--cream); border-top:1px solid var(--line); }
.tslider { position:relative; max-width:860px; margin:0 auto; padding:0 56px; }
.ttrack { display:flex; align-items:flex-start; overflow:hidden; background:var(--paper); border:1px solid var(--line); box-shadow:12px 12px 0 var(--light-blue); transition:height .4s ease; }
.ttrack > * { transition:transform .55s cubic-bezier(.2,.8,.2,1); }
.tcard { flex:0 0 100%; min-width:0; box-sizing:border-box; background:var(--paper); padding:clamp(28px,4vw,46px); display:flex; flex-direction:column; gap:18px; }
.ttag { font-size:13px; font-weight:700; color:var(--orange); }
.tcard blockquote { margin:0; font-size:clamp(18px,2vw,22px); line-height:1.65; color:var(--ink); }
.tcard footer { display:flex; flex-direction:column; gap:3px; padding-top:14px; border-top:1px solid var(--line); font-size:15px; color:var(--muted); }
.tcard footer strong { color:var(--blue-dark); font-size:16px; }
.tnav { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%; border:1px solid var(--blue); background:var(--paper); color:var(--blue-dark); font-size:28px; line-height:1; cursor:pointer; display:grid; place-items:center; }
.tnav:hover,.tnav:focus-visible { background:var(--blue); color:#fff; }
.tprev { right:0; } .tnext { left:0; }
.tdots { display:flex; justify-content:center; gap:8px; margin-top:22px; flex-wrap:wrap; }
.tdots button { width:10px; height:10px; border-radius:50%; border:0; background:var(--line); cursor:pointer; padding:0; }
.tdots button[aria-selected="true"] { background:var(--blue); transform:scale(1.3); }
@media (max-width:540px) { .tslider { padding:0; } .tnav { display:none; } .ttrack { box-shadow:8px 8px 0 var(--light-blue); } }
@media (prefers-reduced-motion:reduce) { .ttrack { transition:none; } }

.tcount { text-align:center; margin-top:18px; font-size:15px; color:var(--muted); direction:ltr; }
.tcard blockquote { max-height:52vh; overflow:auto; }

@media (max-width:850px){
  .feature-video { grid-template-columns:1fr; }
  .feature-video figcaption { text-align:center; }
  .feature-video-media { max-width:300px; }
}

/* Accessibility menu */
.a11y-panel { position:fixed; left:18px; bottom:76px; z-index:60; width:min(320px,calc(100vw - 36px)); background:var(--paper); color:var(--ink); border:1px solid var(--line); box-shadow:0 18px 50px rgba(47,83,109,.22); padding:18px; }
.a11y-panel[hidden], .cookie-banner[hidden] { display:none; }
.a11y-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; font-size:18px; }
.a11y-close { border:0; background:none; font-size:28px; line-height:1; cursor:pointer; color:var(--ink); padding:0 6px; }
.a11y-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.a11y-grid button, .a11y-reset { border:1px solid var(--blue); background:var(--paper); color:var(--blue-dark); font:inherit; font-size:14px; font-weight:700; padding:10px 8px; cursor:pointer; }
.a11y-grid button[aria-pressed="true"] { background:var(--blue-dark); color:#fff; }
.a11y-reset { width:100%; margin-top:10px; border-style:dashed; }
.a11y-statement { display:block; text-align:center; margin-top:12px; font-size:14px; color:var(--blue-dark); text-decoration:underline; }
html.a11y-big { font-size:118%; }
html.a11y-big body { font-size:118%; }
html.a11y-contrast body, html.a11y-contrast section, html.a11y-contrast header, html.a11y-contrast footer, html.a11y-contrast article, html.a11y-contrast .tcard, html.a11y-contrast .ttrack, html.a11y-contrast .client-logo { background:#fff !important; color:#000 !important; }
html.a11y-contrast a, html.a11y-contrast .eyebrow, html.a11y-contrast h1 em { color:#003a8c !important; }
html.a11y-contrast p, html.a11y-contrast span, html.a11y-contrast li, html.a11y-contrast h1, html.a11y-contrast h2, html.a11y-contrast h3, html.a11y-contrast strong, html.a11y-contrast blockquote { color:#000 !important; }
html.a11y-links a { text-decoration:underline !important; text-underline-offset:3px; outline:2px solid #f2b705; outline-offset:2px; }
html.a11y-readable body, html.a11y-readable button { font-family:Arial, Helvetica, sans-serif !important; letter-spacing:.02em; }
html.a11y-spacing p, html.a11y-spacing li, html.a11y-spacing blockquote { line-height:2.1 !important; word-spacing:.12em; }
html.a11y-still *, html.a11y-still *::before, html.a11y-still *::after { animation:none !important; transition:none !important; }
html.a11y-still .frame, html.a11y-still .hero-copy > * { opacity:1 !important; }
:focus-visible { outline:3px solid #f2b705; outline-offset:2px; }

/* Cookie banner */
.cookie-banner { position:fixed; right:18px; bottom:18px; z-index:55; width:min(460px,calc(100vw - 100px)); background:var(--paper); border:1px solid var(--line); box-shadow:0 18px 50px rgba(47,83,109,.22); padding:18px 20px; font-size:15px; line-height:1.6; }
.cookie-banner p { margin:0 0 12px; }
.cookie-banner a { color:var(--blue-dark); text-decoration:underline; }
.cookie-actions { display:flex; gap:10px; flex-wrap:wrap; }
.cookie-actions button { font:inherit; font-weight:700; font-size:14px; padding:10px 16px; cursor:pointer; border:1px solid var(--blue-dark); }
.cookie-accept { background:var(--blue-dark); color:#fff; }
.cookie-essential { background:var(--paper); color:var(--blue-dark); }
@media (max-width:600px){ .cookie-banner { right:12px; left:76px; width:auto; bottom:12px; } }

/* Facts strip animation */
.facts-strip.animate .about-facts > div { opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
.facts-strip.animate.in .about-facts > div { opacity:1; transform:none; }
.facts-strip.animate.in .about-facts > div:nth-child(2) { transition-delay:.18s; }
.facts-strip.animate.in .about-facts > div:nth-child(3) { transition-delay:.36s; }
.facts-strip.animate.in .about-facts > div:nth-child(4) { transition-delay:.54s; }
.about-facts strong { display:inline-block; min-width:2.4ch; font-variant-numeric:tabular-nums; }

/* Layout pass 11.10: centered text, even section rhythm */
.section { padding:clamp(64px,7vw,104px) clamp(24px,7vw,110px); }
.section-heading { margin-bottom:clamp(36px,4vw,52px); }
.clients-section { padding:clamp(56px,6vw,84px) 0; }
.contact { padding:clamp(64px,7vw,104px) clamp(24px,9vw,150px); display:flex; flex-direction:column; align-items:center; gap:28px; }
.contact > * { margin:0 !important; }
.contact h2 { margin:0 !important; }
.contact .procurement { max-width:600px; font-size:16px; }
.training-card, .service-card, .example-card, .tcard, .feature-video figcaption, .about-copy, .why-copy { text-align:center; }
.service-card, .example-card { align-items:center; }
.tcard blockquote { text-align:center; }
.training-details div { grid-template-columns:1fr; gap:6px; text-align:center; justify-items:center; }
.training-button, .instagram-cta { display:flex; width:max-content; margin-inline:auto; }
.training-section > .button, .services > .button { display:flex; width:max-content; margin-inline:auto; }
.examples-grid + *, .gallery-section { text-align:center; }


/* Hero frames: tidy row of three equal cards (11.10) */
.hero-art { position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(12px,1.6vw,22px); align-items:start; aspect-ratio:auto; max-width:640px; width:100%; margin-inline:auto; padding-bottom:28px; }
.hero-art .frame { position:static; width:100%; aspect-ratio:3/4.3; padding:7% 7% 0; --rot:0deg; }
.hero-art .frame span { min-height:2.6em; font-size:clamp(17px,1.7vw,26px); }
.hero-art::after { inset:auto 6% 0 6%; height:30px; }
@media (max-width:850px){ .hero-art { max-width:520px; } }
@media (max-width:540px){ .hero-art { gap:10px; max-width:100%; } .hero-art .frame span { font-size:15px; min-height:2.4em; } }
.hero-art .frame { aspect-ratio:auto; display:flex; flex-direction:column; }
.hero-art .frame img { width:100%; height:auto; aspect-ratio:3/4; object-fit:cover; }
.hero-art .frame span { min-height:0; padding:.7em 0 .8em; }
.hero-art { max-width:700px; gap:clamp(12px,1.4vw,20px); }
.hero-art .frame-c img { object-position:12% 50%; }

/* Split-flap board */
.about-facts strong.flap-word { display:inline-flex; gap:3px; direction:rtl; min-width:0; }
.about-facts .flap { font-size:inherit; font-weight:700; color:var(--blue-dark); }
.flap { position:relative; display:inline-grid; place-items:center; min-width:.78em; padding:.06em .08em .1em; background:var(--light-blue); color:var(--blue-dark); border-radius:4px; line-height:1.05; box-shadow:inset 0 -2px 0 rgba(44,88,120,.12); }
.flap::after { content:""; position:absolute; left:0; right:0; top:50%; height:1px; background:rgba(44,88,120,.22); }
.flap.flip { animation:flap-flip .07s linear; }
.flap.done { background:var(--paper); box-shadow:inset 0 0 0 1px var(--line); transition:background .4s ease; }
@keyframes flap-flip { 0% { transform:rotateX(0); } 50% { transform:rotateX(-80deg); } 100% { transform:rotateX(0); } }
