
:root{
  --color-bg: #0d1310;
  --color-bg-alt: #10201a;
  --color-surface: #16211b;
  --color-surface-alt: #1c2921;
  --color-border: rgba(255,255,255,0.08);
  --color-border-strong: rgba(255,255,255,0.14);
  --color-text: #eaf2ee;
  --color-text-muted: #a1b6ae;
  --color-text-dim: #7c948b;

  --color-primary: #34d399;
  --color-primary-dark: #10b981;
  --color-secondary: #22d3ee;
  --color-accent: #fbbf24;

  --gradient-primary: linear-gradient(135deg, #34d399, #22d3ee);
  --gradient-warm: linear-gradient(135deg, #fbbf24, #34d399);
  --gradient-radial: radial-gradient(circle at 30% 20%, rgba(52,211,153,0.18), transparent 60%);

  --shadow-sm: 0 2px 8px rgba(0,0,0,0.35);
  --shadow-md: 0 10px 26px rgba(0,0,0,0.4), 0 3px 8px rgba(0,0,0,0.3);
  --shadow-lg: 0 24px 60px rgba(0,0,0,0.5), 0 8px 20px rgba(0,0,0,0.35);
  --shadow-glow: 0 0 0 1px rgba(52,211,153,0.25), 0 0 40px rgba(52,211,153,0.2);
  --shadow-glow-cyan: 0 0 0 1px rgba(34,211,238,0.25), 0 0 40px rgba(34,211,238,0.18);

  --radius-sm: 10px;
  --radius-md: 18px;
  --radius-lg: 28px;
  --radius-full: 999px;

  --space-1: 0.5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2.25rem;
  --space-5: 3.5rem;
  --space-6: 5rem;
  --space-7: 7rem;
  --space-8: 9rem;

  --font-heading: 'Plus Jakarta Sans', sans-serif;
  --font-body: 'Plus Jakarta Sans', sans-serif;

  --ease: cubic-bezier(.4,0,.2,1);
  --transition: 0.35s var(--ease);
  --transition-fast: 0.2s var(--ease);
}


*, *::before, *::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{ margin:0; }
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ margin:0; padding:0; list-style:none; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; color:inherit; }
input, textarea{ font-family:inherit; font-size:1rem; }
h1,h2,h3,h4,p{ margin:0; }


body{
  font-family: var(--font-body);
  background: var(--color-bg);
  color: var(--color-text);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

h1,h2,h3{ font-family: var(--font-heading); font-weight:700; letter-spacing:-0.02em; color: var(--color-text); }

.mod-section{ padding: var(--space-6) var(--space-3); max-width: 1280px; margin: 0 auto; }
.mod-section-alt{ background: var(--color-bg-alt); max-width: none; }
.mod-section-alt > *{ max-width: 1280px; margin-left:auto; margin-right:auto; }

.mod-narrow{ max-width: 760px; margin: 0 auto; }
.mod-text-center{ text-align:center; }

.mod-eyebrow{
  display:inline-block; font-size:0.8rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase;
  color: var(--color-primary); margin-bottom: var(--space-2);
}
.mod-eyebrow-center{ display:block; text-align:center; }

.mod-section-title{ font-size: clamp(1.6rem, 3.2vw, 2.4rem); margin-bottom: var(--space-2); }
.mod-section-title-center{ text-align:center; max-width: 700px; margin-left:auto; margin-right:auto; }

.mod-section-lead{ color: var(--color-text-muted); font-size: 1.05rem; max-width: 620px; }
.mod-section-lead-center{ text-align:center; margin: 0 auto; }


.mod-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:0.5rem;
  padding: 0.9rem 1.7rem; border-radius: var(--radius-full);
  font-weight:600; font-size: 0.95rem; min-height:44px;
  transition: transform var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast), color var(--transition-fast);
  white-space: nowrap;
}
.mod-btn-primary{
  background: var(--gradient-primary); color:#06251b; box-shadow: var(--shadow-md), var(--shadow-glow);
}
.mod-btn-primary:hover{ transform: translateY(-3px) scale(1.02); box-shadow: var(--shadow-lg), var(--shadow-glow); }
.mod-btn-primary:active{ transform: translateY(-1px) scale(0.99); }

.mod-btn-ghost{
  background: rgba(255,255,255,0.04); color: var(--color-text); border:1px solid var(--color-border-strong);
}
.mod-btn-ghost:hover{ background: rgba(255,255,255,0.09); border-color: var(--color-primary); box-shadow: var(--shadow-sm); transform: translateY(-2px); }

.mod-btn-text{ color: var(--color-secondary); padding: 0.9rem 0.5rem; }
.mod-btn-text:hover{ color: var(--color-primary); }


.mod-header{
  position: sticky; top:0; z-index:100;
  background: rgba(13,19,16,0.7);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid transparent;
}
.mod-header::after{
  content:''; position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background: var(--gradient-primary);
  transform: scaleX(0); transform-origin:center; transition: transform 0.5s var(--ease);
}
.mod-header.is-scrolled::after{ transform: scaleX(1); }
.mod-header.is-scrolled{ background: rgba(13,19,16,0.92); }

.mod-header-inner{
  max-width:1280px; margin:0 auto; padding: 0.9rem 1.5rem;
  display:flex; align-items:center; justify-content:space-between; gap: var(--space-3);
}
.mod-header-logo{ display:flex; align-items:center; gap:0.6rem; font-family: var(--font-heading); font-weight:600; font-size:1.05rem; }
.mod-header-logo strong{ color: var(--color-primary); font-weight:800; }

.mod-nav-list{ display:flex; align-items:center; gap: var(--space-4); }
.mod-nav-list a{
  position:relative; font-size:0.94rem; font-weight:500; color: var(--color-text-muted);
  padding: 0.4rem 0.1rem; transition: color var(--transition-fast);
}
.mod-nav-list a::after{
  content:''; position:absolute; left:0; bottom:-2px; height:2px; width:0%;
  background: var(--gradient-primary); transition: width var(--transition-fast);
}
.mod-nav-list a:hover{ color: var(--color-text); }
.mod-nav-list a:hover::after, .mod-nav-list a[aria-current="page"]::after{ width:100%; }
.mod-nav-list a[aria-current="page"]{ color: var(--color-text); }

.mod-header-toggle{
  display:none; width:44px; height:44px; align-items:center; justify-content:center;
  border-radius: var(--radius-sm); font-size:1.2rem; color: var(--color-text);
  transition: background var(--transition-fast);
}
.mod-header-toggle:hover{ background: rgba(255,255,255,0.06); }


.mod-mobile-menu{
  position:fixed; inset:0; z-index:200;
  background: linear-gradient(165deg, #0d1310 0%, #12261d 55%, #0d1310 100%);
  display:flex; flex-direction:column; padding: var(--space-3) var(--space-3) var(--space-4);
  transform: translateY(-8%); opacity:0; visibility:hidden;
  transition: transform 0.5s var(--ease), opacity 0.4s var(--ease), visibility 0s linear 0.5s;
}
.mod-mobile-menu.is-open{
  transform: translateY(0); opacity:1; visibility:visible;
  transition: transform 0.5s var(--ease), opacity 0.4s var(--ease), visibility 0s;
}
.mod-mobile-menu-top{ display:flex; align-items:center; justify-content:space-between; }
.mod-mobile-menu-logo{ display:flex; align-items:center; gap:0.6rem; font-weight:700; font-size:1.1rem; }
.mod-mobile-menu-close{
  width:44px; height:44px; display:flex; align-items:center; justify-content:center;
  border-radius: var(--radius-full); background: rgba(255,255,255,0.06); font-size:1.2rem;
  transition: background var(--transition-fast), transform var(--transition-fast);
}
.mod-mobile-menu-close:hover{ background: rgba(255,255,255,0.14); transform: rotate(90deg); }

.mod-mobile-menu-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:1rem;
  margin: auto 0;
}
.mod-mobile-menu-grid a{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0.7rem;
  padding: 2.2rem 1rem; background: rgba(255,255,255,0.035);
  border:1px solid var(--color-border); border-radius: var(--radius-lg);
  font-weight:600; font-size:1rem; color: var(--color-text);
  transition: background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
}
.mod-mobile-menu-grid a i{ font-size:1.6rem; color: var(--color-primary); }
.mod-mobile-menu-grid a:hover{ background: rgba(52,211,153,0.1); border-color: var(--color-primary); transform: translateY(-4px); }


.mod-hero{
  position:relative; min-height: 92vh; display:flex; align-items:center; justify-content:center;
  padding: var(--space-6) var(--space-3); overflow:hidden;
  background: radial-gradient(ellipse at 50% 0%, #142720 0%, #0d1310 65%);
}
.mod-hero-icons{
  position:absolute; inset:0; display:grid; grid-template-columns: repeat(8, 1fr);
  gap: 2.5rem; padding: 2rem; opacity:0.07; pointer-events:none;
}
.mod-hero-icons i{ font-size: 1.8rem; color: var(--color-primary); text-align:center; }
.mod-hero-icons i:nth-child(3n){ color: var(--color-secondary); }
.mod-hero-icons i:nth-child(5n){ color: var(--color-accent); }

.mod-hero-card{
  position:relative; z-index:2; max-width: 720px; text-align:center;
  background: rgba(22,33,27,0.6); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
  border: 1px solid var(--color-border-strong); border-radius: var(--radius-lg);
  padding: var(--space-5) var(--space-4); box-shadow: var(--shadow-lg);
}
.mod-hero-eyebrow{
  font-size:0.8rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color: var(--color-secondary);
  margin-bottom: var(--space-2);
}
.mod-hero-title{ font-size: clamp(2rem, 5vw, 3.4rem); line-height:1.15; margin-bottom: var(--space-3); }
.mod-hero-text{ color: var(--color-text-muted); font-size:1.08rem; margin-bottom: var(--space-4); }
.mod-hero-cta{ display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }


.mod-fade{ height: 90px; width:100%; }
.mod-fade-hero{ background: linear-gradient(180deg, #0d1310, var(--color-bg)); margin-top:-2px; }
.mod-fade-alt{ background: linear-gradient(180deg, var(--color-bg), var(--color-bg-alt)); }


.mod-intro-grid{
  display:grid; grid-template-columns: 1.1fr 0.9fr; gap: var(--space-5); align-items:center;
  margin-bottom: var(--space-6);
}
.mod-intro-image{ border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); aspect-ratio: 4/3.2; object-fit:cover; }

.mod-criteria-grid{
  display:grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-3);
}
.mod-criteria-card{
  background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md);
  padding: var(--space-4) var(--space-3); transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.mod-criteria-card i{ font-size:1.6rem; color: var(--color-primary); margin-bottom: var(--space-2); display:block; }
.mod-criteria-card h3{ font-size:1.1rem; margin-bottom:0.5rem; }
.mod-criteria-card p{ color: var(--color-text-muted); font-size:0.95rem; }
.mod-criteria-card:hover{ transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: var(--color-border-strong); }


.mod-card-grid{ display:grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-3); margin-top: var(--space-5); }
.mod-card{
  display:block; background: var(--color-surface); border-radius: var(--radius-md); overflow:hidden;
  border: 1px solid var(--color-border); box-shadow: var(--shadow-sm);
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.mod-card img{ width:100%; aspect-ratio: 4/3; object-fit:cover; transition: transform 0.6s var(--ease); }
.mod-card-body{ padding: var(--space-3); }
.mod-card-body h3{ font-size:1.05rem; margin-bottom:0.4rem; }
.mod-card-body p{ color: var(--color-text-muted); font-size:0.9rem; }
.mod-card:hover{ transform: translateY(-8px); box-shadow: var(--shadow-lg), var(--shadow-glow-cyan); border-color: var(--color-secondary); }
.mod-card:hover img{ transform: scale(1.06); }


@property --border-angle{
  syntax: '<angle>'; inherits: false; initial-value: 0deg;
}
.mod-feature-card{
  position:relative; border-radius: var(--radius-lg); padding: 2px; max-width: 780px; margin:0 auto;
}
.mod-feature-card::before{
  content:''; position:absolute; inset:0; border-radius:inherit; padding:2px;
  background: conic-gradient(from var(--border-angle), transparent 0 15%, var(--color-primary), var(--color-secondary), var(--color-accent), transparent 65% 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  opacity:0; transition: opacity 0.5s ease, --border-angle 1.4s ease;
}
.mod-feature-card:hover::before{ opacity:1; --border-angle: 360deg; }
.mod-feature-card-inner{
  position:relative; background: var(--color-surface); border-radius: calc(var(--radius-lg) - 2px);
  padding: var(--space-5) var(--space-4); text-align:center; box-shadow: var(--shadow-md);
}
.mod-feature-card-inner h2{ font-size: clamp(1.4rem, 2.6vw, 1.9rem); margin: var(--space-2) 0 var(--space-3); }
.mod-feature-card-inner p{ color: var(--color-text-muted); margin-bottom: var(--space-4); }


.mod-timeline-track{
  position:relative; max-width: 900px; margin: var(--space-5) auto 0; padding-left: var(--space-4);
  border-left: 2px solid var(--color-border-strong);
}
.mod-timeline-item{ position:relative; padding-bottom: var(--space-5); padding-left: var(--space-3); }
.mod-timeline-item:last-child{ padding-bottom:0; }
.mod-timeline-item::before{
  content:''; position:absolute; left: calc(-1 * var(--space-4) - 7px); top:4px;
  width:14px; height:14px; border-radius:50%; background: var(--gradient-primary); box-shadow: var(--shadow-glow);
}
.mod-timeline-date{ display:inline-block; font-family: var(--font-heading); font-weight:800; color: var(--color-secondary); font-size:1.3rem; margin-bottom:0.3rem; }
.mod-timeline-content h3{ font-size:1.1rem; margin-bottom:0.3rem; }
.mod-timeline-content p{ color: var(--color-text-muted); font-size:0.95rem; }


.mod-workflow-track{
  display:grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-2); margin-top: var(--space-5);
  position:relative;
}
.mod-workflow-step{
  position:relative; text-align:center; padding: var(--space-3) var(--space-2);
  background: var(--color-surface); border:1px solid var(--color-border); border-radius: var(--radius-md);
  transition: transform var(--transition), box-shadow var(--transition);
}
.mod-workflow-step:hover{ transform: translateY(-6px); box-shadow: var(--shadow-md); }
.mod-workflow-step:not(:last-child)::after{
  content:''; position:absolute; top:50%; right:-1.1rem; width:1.1rem; height:2px;
  background: var(--gradient-primary); opacity:0.5; display:none;
}
.mod-workflow-icon{
  width:56px; height:56px; margin:0 auto var(--space-2); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:1.3rem;
  background: rgba(52,211,153,0.12); color: var(--color-primary); border: 1px solid rgba(52,211,153,0.3);
}
.mod-workflow-step h3{ font-size:1rem; margin-bottom:0.4rem; }
.mod-workflow-step p{ color: var(--color-text-muted); font-size:0.88rem; }


.mod-gallery-grid{
  display:grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-2); margin-top: var(--space-5);
}
.mod-gallery-item{ border-radius: var(--radius-md); overflow:hidden; box-shadow: var(--shadow-sm); position:relative; }
.mod-gallery-item img{ width:100%; aspect-ratio:1/1; object-fit:cover; transition: transform 0.5s var(--ease), filter var(--transition); }
.mod-gallery-item:hover img{ transform: scale(1.08); filter: brightness(1.05); }
.mod-gallery-item:hover{ box-shadow: var(--shadow-glow); }


.mod-cta-card{
  text-align:center; background: linear-gradient(135deg, rgba(52,211,153,0.12), rgba(34,211,238,0.08));
  border: 1px solid var(--color-border-strong); border-radius: var(--radius-lg);
  padding: var(--space-5) var(--space-4); box-shadow: var(--shadow-md);
}
.mod-cta-card h2{ font-size: clamp(1.5rem, 3vw, 2rem); margin-bottom: var(--space-2); }
.mod-cta-card p{ color: var(--color-text-muted); margin-bottom: var(--space-3); max-width:560px; margin-left:auto; margin-right:auto; }


.mod-page-hero{
  padding: var(--space-6) var(--space-3) var(--space-5);
  background: radial-gradient(ellipse at 50% 0%, #142720 0%, #0d1310 70%);
  text-align:center;
}
.mod-page-hero-compact{ padding: var(--space-5) var(--space-3) var(--space-4); }
.mod-page-hero-inner{ max-width: 720px; margin:0 auto; }
.mod-page-hero-title{ font-size: clamp(2rem, 4.5vw, 3rem); margin-bottom: var(--space-2); }
.mod-page-hero-text{ color: var(--color-text-muted); font-size:1.05rem; }


.mod-split{ display:grid; grid-template-columns: 1fr 1fr; gap: var(--space-5); align-items:center; }
.mod-split img{ border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); aspect-ratio: 4/3.2; object-fit:cover; }
.mod-split-reverse{ direction: rtl; }
.mod-split-reverse > *{ direction: ltr; }
.mod-split p{ margin-bottom: var(--space-2); color: var(--color-text-muted); }
.mod-split p:last-child{ margin-bottom:0; }


.mod-product-row{ display:grid; grid-template-columns: 1fr 1.1fr; gap: var(--space-5); align-items:center; }
.mod-product-row img{ border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); aspect-ratio: 5/4; object-fit:cover; }
.mod-product-row-reverse{ direction: rtl; }
.mod-product-row-reverse > *{ direction: ltr; }
.mod-product-row p{ color: var(--color-text-muted); margin-bottom: var(--space-3); }
.mod-spec-list{ display:flex; flex-direction:column; gap:0.6rem; }
.mod-spec-list li{ display:flex; align-items:center; gap:0.7rem; font-size:0.94rem; color: var(--color-text-muted); }
.mod-spec-list i{ color: var(--color-primary); width:18px; }


.mod-guide-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-3); }
.mod-guide-card{
  background: var(--color-surface); border:1px solid var(--color-border); border-radius: var(--radius-md);
  padding: var(--space-4) var(--space-3); transition: transform var(--transition), box-shadow var(--transition);
}
.mod-guide-card:hover{ transform: translateY(-6px); box-shadow: var(--shadow-md); }
.mod-guide-number{ display:block; font-family: var(--font-heading); font-weight:800; font-size:1.6rem; color: var(--color-secondary); opacity:0.7; margin-bottom:0.5rem; }
.mod-guide-card h2{ font-size:1.15rem; margin-bottom:0.5rem; }
.mod-guide-card p{ color: var(--color-text-muted); font-size:0.95rem; }


.mod-contact-grid{ display:grid; grid-template-columns: 0.85fr 1.15fr; gap: var(--space-5); align-items:start; }
.mod-contact-info h2, .mod-contact-form-wrap h2{ font-size:1.4rem; margin-bottom: var(--space-3); }
.mod-contact-list{ display:flex; flex-direction:column; gap:1rem; margin-bottom: var(--space-3); }
.mod-contact-list li{ display:flex; align-items:center; gap:0.9rem; color: var(--color-text-muted); }
.mod-contact-list i{ width:20px; color: var(--color-primary); font-size:1.1rem; }
.mod-contact-list a:hover{ color: var(--color-primary); }
.mod-map-wrap{ border-radius: var(--radius-md); overflow:hidden; border:1px solid var(--color-border); box-shadow: var(--shadow-sm); }
.mod-map-wrap iframe{ display:block; filter: grayscale(0.2) invert(0.92) contrast(0.9); }

.mod-contact-form-wrap{
  background: var(--color-surface); border:1px solid var(--color-border); border-radius: var(--radius-lg);
  padding: var(--space-4); box-shadow: var(--shadow-md);
}
.mod-form-progress{ display:flex; gap: var(--space-2); margin-bottom: var(--space-3); }
.mod-form-progress span{
  flex:1; text-align:center; padding: 0.6rem; border-radius: var(--radius-sm); font-weight:700; font-size:0.85rem;
  background: rgba(255,255,255,0.04); color: var(--color-text-dim); border:1px solid var(--color-border);
  display:flex; flex-direction:column; gap:0.15rem; align-items:center; transition: all var(--transition);
}
.mod-form-progress span small{ font-weight:500; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.05em; }
.mod-form-progress span.is-active{ background: rgba(52,211,153,0.12); color: var(--color-primary); border-color: var(--color-primary); }

.mod-form-step{ display:none; flex-direction:column; gap: var(--space-3); animation: modFadeIn 0.4s ease; }
.mod-form-step.is-active{ display:flex; }
@keyframes modFadeIn{ from{ opacity:0; transform: translateY(8px);} to{ opacity:1; transform:translateY(0);} }

.mod-form-label{ display:flex; flex-direction:column; gap:0.5rem; font-size:0.9rem; font-weight:600; color: var(--color-text-muted); }
.mod-form-input{
  background: rgba(255,255,255,0.03); border:1px solid var(--color-border-strong); border-radius: var(--radius-sm);
  padding: 0.85rem 1rem; color: var(--color-text); font-size:1rem; resize: vertical;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);
}
.mod-form-input:focus{ outline:none; border-color: var(--color-primary); box-shadow: 0 0 0 4px rgba(52,211,153,0.15); background: rgba(255,255,255,0.05); }

.mod-form-checkbox{ display:flex; align-items:flex-start; gap:0.6rem; font-size:0.88rem; color: var(--color-text-muted); }
.mod-form-checkbox input{ margin-top:0.2rem; width:18px; height:18px; accent-color: var(--color-primary); }
.mod-form-checkbox a{ color: var(--color-secondary); }
.mod-form-checkbox a:hover{ color: var(--color-primary); }

.mod-form-actions{ display:flex; gap:1rem; justify-content:flex-end; }


.mod-team{ display:grid; grid-template-columns: 0.5fr 1fr; gap: var(--space-5); align-items:center; max-width:1100px; margin:0 auto; }
.mod-team img{ border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); aspect-ratio: 3/3.6; object-fit:cover; }
.mod-team-text p{ color: var(--color-text-muted); margin-bottom: var(--space-2); }


.mod-footer{ border-top: 1px solid var(--color-border); padding: var(--space-3); }
.mod-footer-inner{
  max-width:1280px; margin:0 auto; display:flex; align-items:center; justify-content:space-between;
  gap: var(--space-3); flex-wrap:wrap; font-size:0.88rem; color: var(--color-text-dim);
}
.mod-footer-logo{ display:flex; align-items:center; gap:0.5rem; font-weight:700; color: var(--color-text); }
.mod-footer-links{ display:flex; gap: var(--space-3); }
.mod-footer-links a{ transition: color var(--transition-fast); }
.mod-footer-links a:hover{ color: var(--color-primary); }


.mod-legal h2, .mod-legal h3{ margin-top: var(--space-4); margin-bottom: var(--space-2); font-size:1.25rem; }
.mod-legal p{ color: var(--color-text-muted); margin-bottom: var(--space-2); }


.mod-thanks{ display:flex; justify-content:center; min-height:50vh; align-items:center; }
.mod-thanks-card{
  text-align:center; max-width:520px; background: var(--color-surface); border:1px solid var(--color-border);
  border-radius: var(--radius-lg); padding: var(--space-5) var(--space-4); box-shadow: var(--shadow-md);
}
.mod-thanks-card i{ font-size:2.4rem; color: var(--color-primary); margin-bottom: var(--space-2); }
.mod-thanks-card h1{ font-size:1.8rem; margin-bottom: var(--space-2); }
.mod-thanks-card p{ color: var(--color-text-muted); margin-bottom: var(--space-3); }
.mod-thanks-countdown{ font-weight:600; color: var(--color-text); }
.mod-thanks-countdown span{ color: var(--color-secondary); font-weight:800; }


.mod-cookie-consent{
  position: fixed; left: var(--space-3); bottom: var(--space-3); z-index: 300; max-width: 360px; width: calc(100% - 2 * var(--space-3));
}
.mod-cookie-consent-card{
  background: var(--color-surface); border: 1px solid var(--color-border-strong); border-radius: var(--radius-lg);
  padding: var(--space-3); box-shadow: var(--shadow-lg);
  animation: modCookieIn 0.5s var(--ease);
}
@keyframes modCookieIn{ from{ opacity:0; transform: translateY(20px);} to{ opacity:1; transform:translateY(0);} }
.mod-cookie-consent-text{ font-size:0.88rem; color: var(--color-text-muted); margin-bottom: var(--space-2); }
.mod-cookie-consent-text a{ color: var(--color-secondary); }
.mod-cookie-consent-actions{ display:flex; flex-direction:column; gap:0.6rem; }
.mod-cookie-consent-actions .mod-btn{ width:100%; }
.mod-cookie-consent-detail{ margin-top: var(--space-2); display:flex; flex-direction:column; gap:0.6rem; border-top:1px solid var(--color-border); padding-top: var(--space-2); }
.mod-cookie-option{ display:flex; align-items:center; gap:0.6rem; font-size:0.85rem; color: var(--color-text-muted); }
.mod-cookie-option input{ width:16px; height:16px; accent-color: var(--color-primary); }


@media (max-width: 1024px){
  .mod-header-inner{ padding: 0.8rem 1.2rem; }
  .mod-nav{ display:none; }
  .mod-header-toggle{ display:flex; }
  .mod-intro-grid, .mod-split, .mod-product-row, .mod-contact-grid, .mod-team{ grid-template-columns: 1fr; }
  .mod-split-reverse, .mod-product-row-reverse{ direction: ltr; }
  .mod-split-reverse > img, .mod-product-row-reverse > img{ order:-1; }
  .mod-criteria-grid{ grid-template-columns: repeat(2, 1fr); }
  .mod-card-grid{ grid-template-columns: repeat(2, 1fr); }
  .mod-workflow-track{ grid-template-columns: repeat(2, 1fr); }
  .mod-gallery-grid{ grid-template-columns: repeat(3, 1fr); }
  .mod-guide-grid{ grid-template-columns: repeat(2, 1fr); }
  .mod-team img{ max-width:280px; margin: 0 auto; }
}

@media (max-width: 640px){
  .mod-section{ padding: var(--space-5) var(--space-2); }
  .mod-hero{ min-height: auto; padding: var(--space-5) var(--space-2) var(--space-6); }
  .mod-hero-card{ padding: var(--space-4) var(--space-3); }
  .mod-hero-icons{ grid-template-columns: repeat(5, 1fr); gap:1.2rem; }
  .mod-criteria-grid{ grid-template-columns: 1fr; }
  .mod-card-grid{ grid-template-columns: 1fr; }
  .mod-workflow-track{ grid-template-columns: 1fr; }
  .mod-gallery-grid{ grid-template-columns: repeat(2, 1fr); }
  .mod-guide-grid{ grid-template-columns: 1fr; }
  .mod-form-actions{ flex-direction:column-reverse; }
  .mod-form-actions .mod-btn{ width:100%; }
  .mod-mobile-menu-grid{ grid-template-columns: 1fr 1fr; }
  .mod-hero-cta{ flex-direction:column; }
  .mod-hero-cta .mod-btn{ width:100%; }
}