:root{--primary:#3d529f;--primary-dark:#2e407e;--text:#3d4553;--muted:#687382;--surface:#f3f7fc;--white:#fff;--border:#d5dfec}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font:18px/1.75 Heebo,Arial,sans-serif;background:#fff}img{max-width:100%;height:auto}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #f0b528;outline-offset:3px}.wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link:focus{z-index:9999;inline-size:auto;block-size:auto;clip:auto;top:12px;right:12px;background:#fff;padding:8px 16px}
.site-header{background:#fff;box-shadow:0 2px 12px #23346814;position:relative;z-index:3}.header-inner{display:flex;align-items:center;gap:26px;min-height:76px}.brand{font-size:24px;font-weight:700;text-decoration:none;color:var(--primary-dark);white-space:nowrap}.brand span{color:var(--primary)}.site-header nav{display:flex;gap:26px;margin-inline:auto}.site-header nav a{text-decoration:none;font-weight:500}.site-header nav a:hover,.site-footer a:hover{color:var(--primary)}.header-phone{background:var(--primary);color:#fff;text-decoration:none;padding:7px 18px;border-radius:3px;font-weight:700;white-space:nowrap}
.hero{height:min(650px,70vw);min-height:520px;position:relative;overflow:hidden;background:#e6ebf2}.hero-image{position:absolute;inset:0 28% 0 0;width:72%;height:100%;object-fit:cover;object-position:center}.hero-content{height:100%;display:flex;justify-content:flex-start;align-items:center;position:relative;z-index:1}.hero-card{width:min(560px,100%);margin-right:7%;text-align:center;color:#fff;background:#4c68a3d9;padding:32px 34px;box-shadow:0 14px 36px #1a366026}.eyebrow{font-size:15px;font-weight:700;letter-spacing:.03em;color:var(--primary);margin:0 0 4px}.hero .eyebrow{color:#e8eefc}.hero h1{font-size:clamp(30px,3.6vw,46px);line-height:1.2;margin:0}.rule{width:100px;height:5px;background:var(--primary);margin:18px auto 26px}.hero .rule{background:#344eb2}.hero-subtitle{font-size:clamp(23px,2.3vw,30px);line-height:1.35;margin:0 0 22px}.button{display:inline-block;border:0;border-radius:3px;background:var(--primary);color:#fff;text-decoration:none;padding:10px 28px;font:600 20px/1.4 Heebo,Arial,sans-serif;cursor:pointer;transition:background .2s,transform .2s}.button:hover,.header-phone:hover{background:var(--primary-dark);transform:translateY(-1px)}.hero-penguin{position:absolute;z-index:0;right:-3%;top:12%;width:30%;opacity:.14;mix-blend-mode:multiply}
.section{padding:76px 0}.section-heading{text-align:center;margin-bottom:42px}.section-heading h1{font-size:clamp(32px,3.2vw,44px);line-height:1.25;margin:0}.section-heading .rule{margin-bottom:0}.about{background:#f8fafc url('/images/penguin.png') right center/auto 70% no-repeat}.about-grid{display:grid;grid-template-columns:1.3fr .85fr;gap:60px;align-items:start}.about-copy p{margin:0 0 17px}.intro-list{margin:0 0 18px;padding-right:22px}.intro-list li{margin-bottom:4px}.about-visual{text-align:center;position:sticky;top:35px}.about-visual img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;margin-bottom:24px;box-shadow:0 15px 30px #20356319}
.services{background:#eef4fa}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.services-grid ul{padding:0;margin:0;list-style:none}.services-grid li{position:relative;background:#fff;border-right:4px solid var(--primary);padding:14px 22px;margin-bottom:10px;box-shadow:0 5px 15px #243b5a0a}
.contact-backdrop{background:linear-gradient(#ecf4fcdd,#d8ebf9df),url('/images/ice.webp') center/cover no-repeat;padding:70px 0 85px}.contact-lead{text-align:center;margin-bottom:46px}.contact-lead h2{font-size:36px;margin:0 0 5px}.contact-lead p{font-size:29px;line-height:1.4;margin:0 0 20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.form-card,.contact-details{background:#ffffffea;padding:30px;box-shadow:0 16px 40px #24456722}.form-card h2{font-size:26px;margin:0 0 24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fields label{display:block;font-weight:600;font-size:16px}.fields label:last-child{grid-column:1/-1}.fields input,.fields textarea{display:block;width:100%;border:1px solid #9caabd;background:#fff;color:var(--text);font:inherit;padding:10px;margin-top:5px;border-radius:2px}.fields textarea{resize:vertical}.form-card .button{margin-top:20px}.contact-details h3{margin:0}.contact-details p{margin:5px 0 15px}.map-link{color:var(--primary-dark);font-weight:700}.contact-details iframe{border:0;width:100%;height:320px;margin-top:16px}.map-load{display:block;width:100%;min-height:150px;border:1px solid var(--border);margin-top:16px;background:#e0ebf6;color:var(--primary-dark);font:700 20px Arial,sans-serif;cursor:pointer}.map-load:hover{background:#d2e2f2}
.site-footer{background:#273969;color:#fff;padding:25px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner p{margin:0}.footer-inner nav{display:flex;gap:25px;flex-wrap:wrap}.footer-inner a{text-decoration:none}.fab-container{position:fixed;left:20px;bottom:20px;z-index:20;display:flex;flex-direction:column;gap:10px}.fab{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff;text-decoration:none;box-shadow:0 4px 12px #0004;font-weight:700;font-size:19px;transition:transform .2s}.fab:hover{transform:scale(1.08)}.fab.wa{background:#176e39}.fab.call{background:var(--primary-dark)}
@media(max-width:800px){.header-inner{flex-wrap:wrap;justify-content:space-between;padding:12px 0;gap:10px}.site-header nav{order:3;width:100%;justify-content:center;gap:22px}.hero{min-height:500px;height:auto}.hero-image{inset:0;width:100%;object-position:center}.hero-penguin{display:none}.hero-content{min-height:500px;justify-content:center}.hero-card{margin:20px 0}.about-grid,.services-grid,.contact-grid{grid-template-columns:1fr}.about-visual{position:static;max-width:500px;margin:auto}.section{padding:54px 0}.footer-inner{flex-direction:column;text-align:center}}
@media(max-width:520px){body{font-size:16px}.wrap{width:min(100% - 28px,1160px)}.brand{font-size:21px}.header-phone{font-size:15px;padding:6px 10px}.site-header nav{font-size:14px;gap:16px}.hero,.hero-content{min-height:460px}.hero-card{padding:25px 18px}.hero-subtitle{font-size:22px}.fields{grid-template-columns:1fr}.fields label:last-child{grid-column:auto}.form-card,.contact-details{padding:20px}.contact-lead h2{font-size:30px}.contact-lead p{font-size:24px}.fab-container{left:12px;bottom:12px}.fab{width:46px;height:46px}.footer-inner nav{justify-content:center;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.updated{font-size:14px;color:var(--muted);margin-top:25px!important}

/* Accessibility controls */
/*!
 * Intersky agency accessibility widget — rm-frigikor-info build (v2.1 template).
 * Self-contained: uses hard-coded palette matching site's primary (#3d529f) and accent (#2e407e).
 * Positioned bottom-right (opposite the FAB WhatsApp+Call on the left).
 */

/* Toggle button */
#a11y-toggle {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 2147483000;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #3d529f;
  color: #fff;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
#a11y-toggle:hover,
#a11y-toggle:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.3);
}
#a11y-toggle:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 3px;
}
#a11y-toggle svg { width: 28px; height: 28px; }

/* Panel — slides in from the right edge.
 * v2.1.3: uses transform: translateX(100%) instead of fixed right: -Xpx offset.
 * translateX(100%) moves the element by ITS OWN width (whatever that width is,
 * even 100vw on mobile), so a single rule works at every viewport size — no
 * media query needed to fix the closed offset per breakpoint. This makes the
 * slide-in universally stable and eliminates the class of bugs where fixed-pixel
 * offsets don't match dynamic panel widths. */
#a11y-panel {
  position: fixed;
  top: 0;
  right: 0;
  width: 320px;
  max-width: 90vw;
  height: 100vh;
  background: #ffffff;
  color: #1a2332;
  z-index: 2147483001;
  box-shadow: -4px 0 20px rgba(0, 0, 0, 0.2);
  overflow-y: auto;
  padding: 24px 20px 32px;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  font-family: 'Assistant', 'Open Sans Hebrew', system-ui, -apple-system, sans-serif;
  line-height: 1.5;
  box-sizing: border-box;
  direction: rtl;
  text-align: right;
}
#a11y-panel.open { transform: translateX(0); }

#a11y-panel h2 {
  font-size: 1.2rem;
  color: #3d529f;
  margin: 0 0 16px;
  font-weight: 700;
}
#a11y-panel .a11y-close {
  position: absolute;
  top: 12px;
  left: 12px;
  background: none;
  border: none;
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  color: #1a2332;
  padding: 4px 8px;
  border-radius: 6px;
}
#a11y-panel .a11y-close:hover,
#a11y-panel .a11y-close:focus-visible { background: #f0f5f9; }
#a11y-panel .a11y-close:focus-visible { outline: 2px solid #3d529f; outline-offset: 2px; }

/* Action buttons */
#a11y-panel .a11y-btn {
  display: block;
  width: 100%;
  text-align: right;
  background: #f5f8fb;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 10px 14px;
  margin-bottom: 8px;
  cursor: pointer;
  font-size: 0.95rem;
  color: #1a2332;
  font-family: inherit;
  transition: background 0.12s ease, border-color 0.12s ease;
}
#a11y-panel .a11y-btn:hover { background: #e0f4fc; }
#a11y-panel .a11y-btn:focus-visible {
  outline: 2px solid #3d529f;
  outline-offset: 1px;
  border-color: #3d529f;
}

/* Report block */
#a11y-panel .a11y-report {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #e2e8f0;
  font-size: 0.88rem;
  color: #5a6b7e;
  line-height: 1.65;
}
#a11y-panel .a11y-report strong { color: #1a2332; }
#a11y-panel .a11y-report a { color: #3d529f; font-weight: 600; text-decoration: underline; }

#a11y-panel .a11y-statement-link { margin-top: 14px; }
#a11y-panel .a11y-statement-link a {
  color: #3d529f;
  font-size: 0.9rem;
  text-decoration: underline;
}

/* State classes applied to <html> */
html.a11y-contrast { filter: contrast(1.3); }
html.a11y-invert   { filter: invert(1) hue-rotate(180deg); }
html.a11y-grayscale img,
html.a11y-grayscale .elementor-widget-image img,
html.a11y-grayscale [style*="background-image"] { filter: grayscale(1); }
html.a11y-underline a { text-decoration: underline !important; }
html.a11y-no-anim *,
html.a11y-no-anim *::before,
html.a11y-no-anim *::after {
  animation-duration: 0ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0ms !important;
  scroll-behavior: auto !important;
}
html.a11y-readable body,
html.a11y-readable body * {
  font-family: Arial, 'Assistant', sans-serif !important;
  letter-spacing: 0.3px;
}

/* Print — hide the widget */
@media print {
  #a11y-toggle,
  #a11y-panel { display: none !important; }
}

/* Small screens — full-width panel.
 * v2.1.3: the closed/open offset is handled by `transform: translateX(100%)` in
 * the base rule above — it self-adjusts to the element's width, so we only need
 * to override the width itself here. No `right` offset override required. */
@media (max-width: 480px) {
  #a11y-panel { width: 100vw; max-width: 100vw; }
  #a11y-toggle { width: 48px; height: 48px; bottom: 16px; right: 16px; }
  #a11y-toggle svg { width: 24px; height: 24px; }
}

/* Accessibility statement page (used by /accessibility/) */
.a11y-page {
  padding: 64px 24px 96px;
  max-width: 820px;
  margin: 0 auto;
  font-family: 'Assistant', 'Open Sans Hebrew', system-ui, -apple-system, sans-serif;
  color: #1a2332;
  line-height: 1.75;
  direction: rtl;
  text-align: right;
}
.a11y-page h1 {
  color: #002d54;
  margin: 0 0 24px;
  font-size: 2rem;
  font-weight: 800;
}
.a11y-page h2 {
  color: #3d529f;
  margin: 32px 0 12px;
  font-size: 1.25rem;
  font-weight: 700;
}
.a11y-page p { margin: 0 0 14px; }
.a11y-page a {
  color: #3d529f;
  font-weight: 600;
  text-decoration: underline;
}
.a11y-page .a11y-back-home {
  display: inline-block;
  margin-top: 32px;
  padding: 12px 24px;
  background: #3d529f;
  color: #fff;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
}
.a11y-page .a11y-back-home:hover { background: #002d54; }

/* Skip-link (for /accessibility/ and any future page using it).
 * BUG FIX (2026-07-16 v2.1.2, discovered at biodecor): the previous pattern
 * `right: -9999px` breaks RTL mobile viewport — the element still contributes to
 * the document's scrollable width, forcing horizontal overflow and cascading
 * layout bugs (auto-fit grids computing wrong column counts, hero title cutoff,
 * gallery images not rendering). Fix: use the standard visually-hidden pattern
 * that removes the element from layout entirely while keeping it accessible to
 * screen readers, then bring it back to a visible top-right on :focus. */
.skip-link {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.skip-link:focus {
  position: fixed;
  top: 8px;
  right: 8px;
  width: auto;
  height: auto;
  padding: 10px 16px;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
  background: #3d529f;
  color: #fff;
  z-index: 2147483002;
  font-weight: 700;
  text-decoration: none;
}

/* Match the source landing composition while retaining accessible controls. */
.home .site-header{display:none}
.home .hero{height:600px;min-height:600px}
.home .hero-image{inset:0 auto 0 0;width:62.5%;height:100%;object-fit:cover}
.home .hero-penguin{right:3%;top:13%;width:35%;opacity:.13}
.home .hero-card{width:580px;margin-right:19%;padding:18px 30px;background:#4f70a3d9;box-shadow:none}
.home .hero .eyebrow{display:none}
.home .hero h1#hero-title{font-size:42px;font-weight:500}
.home .hero h1.hero-subtitle{font-size:28px;line-height:1.3;font-weight:400;margin:0 0 14px}
.home .hero .rule{width:240px;margin:14px auto 22px}
.home .hero .button{padding:8px 24px;font-weight:500}
.home .about .section-heading{text-align:right}
.home .about .section-heading .rule{margin-right:0}
.home .about .section-heading h1{font-weight:400}
@media(max-width:800px){.home .hero-card{margin-right:0;width:min(580px,calc(100% - 24px))}.home .hero-image{width:100%;inset:0}.home .about .section-heading{text-align:center}.home .about .section-heading .rule{margin-right:auto}}
@media(max-width:520px){.home .hero{height:790px;min-height:790px;background:#dfeaf4}.home .hero-image{inset:0 auto auto 0;width:100%;height:250px;object-position:center}.home .hero-content{height:790px;min-height:790px;align-items:flex-end;justify-content:center}.home .hero-penguin{display:block;top:330px;right:10%;width:80%;opacity:.12}.home .hero-card{width:calc(100% - 60px);min-height:260px;margin:0 30px;padding:15px 15px 12px}.home .hero h1#hero-title{font-size:29px;font-weight:400}.home .hero h1.hero-subtitle{font-size:27px;line-height:1.4;font-weight:400}.home .hero .rule{width:170px;margin:14px auto 27px}.home .hero .button{font-size:20px;padding:6px 22px}}

.home .about{padding-top:12px}
.home .about .section-heading .eyebrow{display:none}
@media(max-width:520px){.home .about{padding-top:54px}}
