/* Responsive safeguards. No document-wide overflow hiding or disabled zoom.
   Load after style.css. UI text remains in lang/*.json. */
:root {
  --header-height: 88px;
  --mobile-bar-height: 0px;
  --safe-left: env(safe-area-inset-left, 0px);
  --safe-right: env(safe-area-inset-right, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}
html {
  scroll-padding-block-start: calc(var(--header-height) + 16px);
  scroll-padding-block-end: calc(var(--mobile-bar-height) + 20px);
  text-size-adjust: 100%;
}
/* Grid and flex items must be allowed to shrink below their intrinsic width. */
:where(.hero-grid,.section-heading,.ribbon-grid,.ribbon-item,.why-grid,.why-benefits>article,
  .faq-layout,.featured-article,.page-intro-grid,.download-card,.pricing-grid,.contact-grid,
  .chooser,.choice,.choice>span,.chooser-results,.editorial-grid,.cta-card,.footer-grid,
  .header-inner,.header-actions,.product-grid,.article-grid,.notice-card,.accessibility-card,
  .support-safety,.prepare-grid,.check-list li,.screen-content,.hero-actions) > * {
  min-inline-size: 0;
}
:where(h1,h2,h3,p,li,dd,td,th,summary,figcaption,.btn-label,.breadcrumbs,.article-meta,
  .footer-email,.footer-disclaimer,.text-link,.choice>span,.product-tag) {
  overflow-wrap: anywhere;
}
.hero-copy,.hero-visual,.chooser-options,.search-form,.filter-controls {
  min-inline-size: 0;
  max-inline-size: 100%;
}
.btn { min-inline-size: 0; max-inline-size: 100%; white-space: normal; }
.btn-label { min-inline-size: 0; }
.giant-phone,.contact-number { min-inline-size: 0; max-inline-size: 100%; }
.btn .phone-number { flex-shrink: 0; }
.brand { max-inline-size: 100%; }
.brand img { flex-shrink: 0; }
.header-actions { flex-shrink: 0; }
.language-switch,.menu-toggle { flex-shrink: 0; min-block-size: 44px; }
.breadcrumbs { flex-wrap: wrap; }
.breadcrumbs > span { min-inline-size: 0; }
.faq-item,.download-card,.article-body>section { scroll-margin-top: 12px; }
.comparison-table { table-layout: fixed; }
.comparison-scroll { overscroll-behavior-inline: contain; }
.search-form input { font-size: 16px; min-inline-size: 0; }
.search-reset { min-width: 44px; min-height: 44px; }
.plan-badge { max-inline-size: calc(100% - 20px); white-space: normal; text-align: center; }
.footer-email bdi { min-inline-size: 0; overflow-wrap: anywhere; }
/* Do not let the persistent controls consume a zoomed-in screen. */
html.is-zoomed .mobile-call-bar,html.is-editing .mobile-call-bar { display: none; }
html.is-zoomed .site-header { position: relative; }
html.is-zoomed .article-toc { position: static; }

@media (max-width: 900px) {
  :root { --header-height: 74px; }
  .container {
    width: calc(100% - 48px - var(--safe-left) - var(--safe-right));
    margin-left: calc(24px + var(--safe-left));
    margin-right: calc(24px + var(--safe-right));
  }
  .hero-grid { margin-inline: auto; grid-template-columns: minmax(0, 1fr); }
  .hero-actions { max-inline-size: 100%; }
  .js .primary-nav {
    max-height: calc(100vh - var(--header-height) - var(--mobile-bar-height) - 24px);
    max-block-size: var(--nav-available-height, calc(100dvh - var(--header-height) - var(--mobile-bar-height) - 24px));
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .js .primary-nav > a { flex-shrink: 0; white-space: normal; padding-block: 12px; }
  .filter-button { min-height: 44px; }
  .footer-grid>div:not(:first-child)>a:not(.footer-phone),.privacy-link { min-height: 44px; }
  .article-toc a { display: block; padding-block: 7px; }
  .contact-card>.text-link { max-inline-size: 100%; }
}
@media (min-width: 601px) and (max-width: 780px) {
  /* Three narrow cards leave no room for English buttons and enlarged text. */
  .pricing-grid,.contact-grid { grid-template-columns: minmax(0,1fr); max-width: 590px; margin-inline: auto; gap: 28px; }
  .pricing-card,.contact-card { padding: 28px; }
  .contact-card h3,.pricing-card h2,html[lang=en] .pricing-card h2 { font-size: 26px; }
  .pricing-card .check-list li,.contact-card p { font-size: 14px; }
  .contact-card>.text-link,.pricing-card>.btn { font-size: 14px; }
  .contact-number { font-size: 56px; }
  .pricing-card>.btn .phone-number { font-size: 23px; }
}
@media (max-width: 600px) {
  :root { --header-height: 72px; --mobile-bar-height: calc(76px + var(--safe-bottom)); }
  body { padding-bottom: var(--mobile-bar-height); }
  .container {
    width: calc(100% - 38px - var(--safe-left) - var(--safe-right));
    margin-left: calc(19px + var(--safe-left));
    margin-right: calc(19px + var(--safe-right));
  }
  .hero-grid { margin-inline: auto; grid-template-columns: minmax(0,1fr); }
  .hero-actions { grid-template-columns: minmax(0,1fr); }
  .hero-visual { width: min(365px,100%); }
  .hero-halo { width: min(279px,85%); height: auto; aspect-ratio: 1; }
  .hero-orbit { width: min(313px,96%); height: auto; aspect-ratio: 1; }
  .header-inner { gap: 8px; padding-block: 8px; }
  .header-inner>.brand { flex: 1 1 135px; min-width: 0; }
  .header-actions { gap: 10px; max-inline-size: 100%; }
  .header-inner .brand-type strong { white-space: normal; overflow-wrap: anywhere; }
  .menu-toggle { width: 44px; height: 44px; padding: 10px; }
  .language-switch { min-height: 44px; padding-block: 4px; }
  .search-form input { font-size: 16px; }
  .search-reset { width: 44px; height: 44px; }
  .mobile-call-bar {
    padding-left: calc(14px + var(--safe-left));
    padding-right: calc(14px + var(--safe-right));
    padding-bottom: calc(10px + var(--safe-bottom));
    gap: 12px;
  }
  .mobile-call-bar>.btn { flex: 1 1 0; max-width: none; min-height: 50px; padding-inline: 10px; }
  .mobile-solutions { flex: 0 1 100px; min-width: 0; min-height: 50px; text-align: center; }
  .mobile-solutions>span { overflow-wrap: anywhere; }
  .toast { bottom: calc(var(--mobile-bar-height) + 12px); }
  .contact-card,.pricing-card,.article-card,.product-card { min-width: 0; }
  .comparison-table th,.comparison-table td { padding-inline: 12px; }
}
@media (max-width: 380px) {
  .product-grid { grid-template-columns: minmax(0,1fr); }
  .product-card { padding: 22px; }
  .product-art { scale: 1; margin-bottom: 0; }
  .product-card h3,html[lang=en] .product-card h3 { font-size: 23px; }
  .product-card>p,html[lang=en] .product-card>p { font-size: 13px; }
  .product-card>.text-link { font-size: 12px; }
  .product-tag,html[lang=en] .product-tag { font-size: 11px; }
}
@media (max-width: 360px) {
  .container {
    width: calc(100% - 30px - var(--safe-left) - var(--safe-right));
    margin-left: calc(15px + var(--safe-left));
    margin-right: calc(15px + var(--safe-right));
  }
  .hero-grid { margin-inline: auto; }
  .header-actions { gap: 6px; }
  .mobile-call-bar { gap: 8px; }
  .mobile-solutions { flex-basis: 82px; }
  .hero-visual { scale: 1; margin-bottom: 0; }
}
@media (max-width: 310px) {
  .header-inner>.brand { flex-basis: 100%; justify-content: center; }
  .header-actions { width: 100%; justify-content: space-between; }
  .hero h1,html[lang=en] .hero h1 { font-size: 34px; }
  .prepare-grid,.platform-nav { grid-template-columns: minmax(0,1fr); }
  .footer-grid { grid-template-columns: minmax(0,1fr); }
  .cta-card { padding-inline: 18px; }
  .giant-phone { font-size: 57px; }
}
@media (max-height: 420px) and (max-width: 900px) {
  /* Landscape: keep a full viewport available to content and an open menu. */
  .site-header { position: relative; }
  .article-toc { position: static; }
  .mobile-call-bar { display: none; }
  body { padding-bottom: 0; }
  :root { --mobile-bar-height: 0px; }
}
@media print {
  body { padding-bottom: 0!important; }
  .container { width: 100%; margin-inline: 0; }
  .hero-grid { max-width: none; }
}


/* v1.4: two installers; integrated features are not separate download cards. */
.platform-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
.platform-link{white-space:normal;line-height:1.6;text-align:center;padding:12px 16px;min-width:0}
.platform-link>span{min-width:0;overflow-wrap:anywhere}
.download-card{position:relative}
.legacy-download-anchor{position:absolute;inset-block-start:0;inset-inline-start:0;width:0;height:0;pointer-events:none}
.download-actions{align-items:center}
.download-actions>.download-specific-note{flex-basis:100%;margin-top:0}
.download-copy>.download-detail{margin-top:20px}
.product-card>.text-link{white-space:normal;align-items:center}
@media(max-width:600px){
 .platform-nav{grid-template-columns:minmax(0,1fr)}
 .platform-link{justify-content:flex-start;text-align:start;font-size:13px}
 .download-actions{align-items:stretch}
 .download-actions>.text-link{justify-content:center}
 .download-actions>.download-specific-note{text-align:center}
 .hero-trust{row-gap:8px}
 .product-card>.text-link{font-size:11px;min-height:44px}
}

@media (max-width: 768px) {
  .hero-grid {
    display: flex;
    flex-direction: column;
  }
  .hero-copy {
    display: contents;
  }
  .hero-visual {
    order: 1;
    margin: 32px 0;
  }
  .hero-actions {
    order: 2;
    width: 100%;
  }
  .hero-trust {
    order: 3;
    width: 100%;
  }
}

@media (max-width: 600px) {
  .hero-trust span {
    font-size: 12px; /* תוכל לשנות את המספר כדי להגדיל או להקטין */
  }
  
  /* מומלץ להגדיל מעט גם את אייקון ה-V שיתאים לטקסט */
  .hero-trust svg {
    width: 14px; 
    height: 14px;
  }
}