/* ============================================================
   DST SYSTEM — Design System v2.0
   Palette tactique : Noir / Ambre / Teal glow
   ============================================================ */

/* 1. RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;scroll-behavior:smooth;}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--fg);line-height:1.6;-webkit-font-smoothing:antialiased;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{cursor:pointer;border:none;background:none;font-family:inherit;}

/* 2. TOKENS */
:root{
  --bg:hsl(220,20%,7%); --bg-darker:hsl(220,25%,5%); --card:hsl(220,18%,10%);
  --muted:hsl(220,15%,15%); --surface:hsl(220,18%,12%);
  --fg:hsl(210,20%,92%); --fg-muted:hsl(215,15%,55%); --fg-subtle:hsl(215,12%,38%);
  --amber:hsl(36,90%,50%); --amber-hover:hsl(36,90%,43%); --amber-soft:hsl(36,80%,65%);
  --amber-10:hsla(36,90%,50%,0.10); --amber-20:hsla(36,90%,50%,0.20); --amber-30:hsla(36,90%,50%,0.30);
  --teal:hsl(195,80%,45%); --teal-10:hsla(195,80%,45%,0.08);
  --border:hsl(220,15%,18%); --border-md:hsl(220,15%,22%);
  --shadow-card:0 0 40px hsla(195,80%,45%,0.05),0 20px 60px hsla(220,25%,5%,0.5);
  --radius:6px; --radius-lg:12px; --radius-xl:16px; --radius-full:9999px;
  --section-y:96px; --container:1200px;
}

/* 3. TYPOGRAPHY */
h1,h2,h3,h4{font-weight:800;line-height:1.1;letter-spacing:-0.025em;color:var(--fg);}
h1{font-size:clamp(2.4rem,5vw,3.75rem);}
h2{font-size:clamp(1.9rem,3.5vw,2.8rem);}
h3{font-size:1.25rem;font-weight:700;}
h4{font-size:1rem;font-weight:600;letter-spacing:0;}
p{line-height:1.75;}
strong{font-weight:600;}

/* 4. LAYOUT */
.container{max-width:var(--container);margin:0 auto;padding:0 40px;}
.section{padding:var(--section-y) 0;position:relative;}
.section--dark{background:var(--bg-darker);}
.section--alt{background:var(--surface);}
@media(max-width:768px){.container{padding:0 20px;}:root{--section-y:64px;}}

/* 5. UTILITIES */
.text-gradient{background-image:linear-gradient(135deg,var(--amber),var(--amber-soft));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.section-label{display:block;font-size:0.7rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:var(--amber);margin-bottom:12px;}
.glow-bg{pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at center,var(--teal-10) 0%,transparent 70%);}
.text-muted{color:var(--fg-muted);}.text-amber{color:var(--amber);}.text-center{text-align:center;}
.mt-xs{margin-top:8px;}.mt-sm{margin-top:16px;}.mt-md{margin-top:32px;}.mt-lg{margin-top:48px;}

/* 6. ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.animate-hero{animation:fadeUp 0.8s ease-out forwards;opacity:0;}
.animate-hero-1{animation:fadeUp 0.8s ease-out 0.15s forwards;opacity:0;}
.animate-hero-2{animation:fadeUp 0.8s ease-out 0.30s forwards;opacity:0;}
.fade-up{opacity:0;transform:translateY(20px);transition:opacity 0.65s ease,transform 0.65s ease;}
.fade-up.visible{opacity:1;transform:none;}

/* 7. NAVIGATION */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:64px;display:flex;align-items:center;border-bottom:1px solid var(--border);background:hsla(220,20%,7%,0.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);}
.nav__inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:var(--container);margin:0 auto;padding:0 40px;gap:24px;}
.nav__logo{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:700;letter-spacing:-0.02em;color:var(--fg);flex-shrink:0;}
.nav__logo svg{color:var(--amber);flex-shrink:0;}.nav__logo-img{height:32px;width:32px;object-fit:cover;border-radius:4px;flex-shrink:0;}
.nav__logo strong{color:var(--amber);}
.nav__links{display:flex;align-items:center;gap:28px;flex:1;justify-content:center;}
.nav__link{font-size:0.875rem;font-weight:500;color:var(--fg-muted);transition:color 0.2s;white-space:nowrap;}
.nav__link:hover,.nav__link.active{color:var(--fg);}
.nav__actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}.nav__mobile-actions{display:none;}
.nav-spacer{height:64px;}
.nav__burger{display:none;flex-direction:column;gap:5px;padding:8px;cursor:pointer;}
.nav__burger span{display:block;width:22px;height:2px;background:var(--fg);border-radius:2px;transition:all 0.25s;}
.nav__burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav__burger.open span:nth-child(2){opacity:0;}
.nav__burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media(max-width:960px){
  .nav__links{display:none;}.nav__actions{display:none;}.nav__burger{display:flex;}.nav__inner{padding:0 20px;}
  /* Menu plein écran — z-index 200 > nav (100), height explicite pour iOS/Android */
  .nav__links.open{
    display:block;
    position:fixed;
    top:64px;
    left:0;
    right:0;
    height:calc(100vh - 64px);
    background:var(--bg);
    border-top:2px solid var(--amber-30);
    z-index:200;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    padding:8px 0 60px;
  }
  .nav__links.open > li{display:block;width:100%;}
  .nav__links.open > li:empty{display:none;}
  .nav__links.open .nav__link{
    display:block;
    padding:20px 28px;
    font-size:1.1rem;
    font-weight:700;
    width:100%;
    border-bottom:1px solid var(--border);
    color:var(--fg) !important;
    letter-spacing:-0.01em;
  }
  .nav__links.open .nav__link:active{background:var(--muted);}
  .nav__mobile-actions{display:flex;flex-direction:column;gap:12px;padding:24px 28px;width:100%;}
  .nav__mobile-actions .btn{width:100%;justify-content:center;}
}

/* 8. BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;font-size:0.875rem;font-weight:600;border-radius:var(--radius);padding:10px 20px;transition:all 0.2s;cursor:pointer;white-space:nowrap;text-decoration:none;border:1.5px solid transparent;}
.btn--tactical{background:var(--amber);color:hsl(220,20%,7%);border-color:var(--amber);}
.btn--tactical:hover{background:var(--amber-hover);border-color:var(--amber-hover);transform:translateY(-1px);box-shadow:0 4px 20px var(--amber-20);}
.btn--outline{background:transparent;color:var(--fg);border-color:var(--border-md);}
.btn--outline:hover{border-color:var(--amber-30);color:var(--amber);background:var(--amber-10);}
.btn--ghost{background:var(--muted);color:var(--fg);border-color:var(--border);}
.btn--ghost:hover{border-color:var(--amber-30);color:var(--amber);}
.btn--connexion{background:var(--muted);color:var(--fg-muted);border-color:var(--border);font-size:0.8rem;padding:8px 14px;}
.btn--connexion:hover{color:var(--fg);border-color:var(--border-md);}
.btn--lg{padding:14px 28px;font-size:0.92rem;}
.btn--sm{padding:7px 14px;font-size:0.8rem;}
.btn--full{width:100%;justify-content:center;}

/* 9. PAGE HERO */
.page-hero{padding:80px 0 64px;background:var(--bg-darker);border-bottom:1px solid var(--border);position:relative;overflow:hidden;}
.page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 100%,var(--teal-10) 0%,transparent 60%);pointer-events:none;}
.page-hero .section-label{margin-bottom:16px;}
.page-hero h1{color:var(--fg);}
.page-hero p{color:var(--fg-muted);max-width:600px;margin-top:16px;font-size:1.05rem;line-height:1.75;}

/* 10. HERO LANDING */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;}
.hero__bg{position:absolute;inset:0;}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center;}
.hero__bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,var(--bg) 30%,hsla(220,20%,7%,0.85) 58%,hsla(220,20%,7%,0.35) 100%),linear-gradient(to top,var(--bg) 0%,transparent 30%,hsla(220,20%,7%,0.55) 100%);}
.hero__content{position:relative;z-index:2;max-width:680px;padding:120px 0 80px;}
.hero__badge{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--amber-30);background:var(--amber-10);color:var(--amber);font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:7px 14px;border-radius:var(--radius-full);margin-bottom:24px;}
.hero__badge svg{flex-shrink:0;}
.hero__title{margin-bottom:24px;}
.hero__subtitle{color:var(--fg-muted);font-size:1.1rem;line-height:1.8;max-width:520px;margin-bottom:36px;}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;}
.hero__trust{display:flex;flex-wrap:wrap;gap:20px;}
.hero__trust-item{display:flex;align-items:center;gap:8px;font-size:0.85rem;color:var(--fg-muted);}
.hero__trust-item svg{color:var(--amber);flex-shrink:0;}

/* 11. SECTION HEADER */
.section-header{margin-bottom:56px;}
.section-header--center{text-align:center;}
.section-header--center h2{max-width:640px;margin-left:auto;margin-right:auto;}
.section-header p{color:var(--fg-muted);max-width:560px;margin-top:16px;font-size:1rem;}
.section-header--center p{margin-left:auto;margin-right:auto;}

/* 12. SOLUTION CARDS */
.solutions-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:768px){.solutions-grid{grid-template-columns:1fr;}}
.solution-card{position:relative;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);overflow:hidden;transition:border-color 0.4s,box-shadow 0.4s;box-shadow:var(--shadow-card);}
.solution-card:hover{border-color:var(--amber-30);box-shadow:0 0 40px var(--amber-10),var(--shadow-card);}
.solution-card__img{position:relative;height:220px;overflow:hidden;}
.solution-card__img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s;}
.solution-card:hover .solution-card__img img{transform:scale(1.05);}
.solution-card__img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,var(--card) 0%,hsla(220,18%,10%,0.4) 50%,transparent 100%);}
.solution-card__icon{position:absolute;top:16px;left:16px;z-index:2;width:40px;height:40px;background:var(--amber-20);border:1px solid var(--amber-30);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);color:var(--amber);}
.solution-card__body{padding:24px;}
.solution-card__body h3{margin-bottom:8px;}
.solution-card__body p{color:var(--fg-muted);font-size:0.9rem;line-height:1.7;}

/* 13. APPROACH */
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
@media(max-width:900px){.approach-grid{grid-template-columns:1fr;gap:40px;}}
.approach-steps{display:flex;flex-direction:column;gap:20px;margin-top:32px;}
.approach-step{display:flex;gap:16px;align-items:flex-start;}
.approach-step__num{flex-shrink:0;width:40px;height:40px;background:var(--amber-10);border:1px solid var(--amber-20);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--amber);font-size:0.8rem;font-weight:800;}
.approach-step h4{margin-bottom:4px;}
.approach-step p{font-size:0.88rem;color:var(--fg-muted);line-height:1.65;}
.approach-img{position:relative;padding-bottom:32px;}
.approach-img img{width:100%;border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-card);}
.approach-badge{position:absolute;bottom:0;left:-20px;background:var(--card);border:1px solid var(--amber-20);border-radius:var(--radius-lg);padding:16px 20px;max-width:280px;box-shadow:var(--shadow-card);}
.approach-badge p:first-child{font-size:0.78rem;font-weight:700;color:var(--amber);margin-bottom:4px;}
.approach-badge p:last-child{font-size:0.78rem;color:var(--fg-muted);line-height:1.5;}
@media(max-width:600px){.approach-badge{display:none;}.approach-img{padding-bottom:0;}}

/* 14. FORMULA CARDS */
.formula-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media(max-width:900px){.formula-grid{grid-template-columns:1fr;}}
.formula-card{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);padding:32px;transition:border-color 0.3s;}
.formula-card:hover{border-color:var(--amber-20);}
.formula-card__icon{width:48px;height:48px;background:var(--amber-10);border:1px solid var(--amber-20);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--amber);margin-bottom:20px;}
.formula-card h3{margin-bottom:10px;}
.formula-card p{font-size:0.9rem;color:var(--fg-muted);line-height:1.7;}
.formula-quote{max-width:640px;margin:48px auto 0;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);padding:36px 40px;text-align:center;}
.formula-quote blockquote{font-size:1.05rem;font-style:italic;color:var(--fg);line-height:1.8;margin-bottom:16px;}
.formula-quote cite{font-size:0.82rem;color:var(--amber);font-weight:600;font-style:normal;}

/* 15. CLIENTS PILLS */
.clients-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:800px;margin:0 auto 32px;}
.pill{padding:10px 20px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--card);font-size:0.88rem;font-weight:500;color:var(--fg-muted);transition:all 0.25s;cursor:default;}
.pill:hover{border-color:var(--amber-30);background:var(--amber-10);color:var(--fg);}

/* 16. CTA */
.cta-block{position:relative;border-radius:var(--radius-xl);border:1px solid var(--amber-20);background:var(--card);overflow:hidden;padding:64px 40px;text-align:center;}
.cta-block h2{margin-bottom:16px;}
.cta-block p{color:var(--fg-muted);max-width:480px;margin:0 auto 32px;}
.cta-block__btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:24px;}
.cta-block__micro{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 20px;font-size:0.82rem;color:var(--fg-subtle);}
@media(max-width:600px){.cta-block{padding:40px 24px;}}

/* 17. FOOTER */
.footer{border-top:1px solid var(--border);padding:32px 0;}
.footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;}
.footer__brand{display:flex;align-items:center;gap:8px;font-size:0.9rem;font-weight:600;color:var(--fg-muted);}
.footer__brand svg{color:var(--amber);}
.footer__brand strong{color:var(--amber);}
.footer__links{display:flex;flex-wrap:wrap;gap:20px;}
.footer__links a{font-size:0.82rem;color:var(--fg-subtle);transition:color 0.2s;}
.footer__links a:hover{color:var(--fg-muted);}
.footer__copy{font-size:0.82rem;color:var(--fg-subtle);}

/* 18. OFFER CARDS */
.offer-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:start;}
@media(max-width:1100px){.offer-cards{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.offer-cards{grid-template-columns:1fr;}}
.offer-card{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);padding:28px 24px 24px;display:flex;flex-direction:column;transition:border-color 0.3s,box-shadow 0.3s;position:relative;}
.offer-card:hover{border-color:var(--border-md);box-shadow:var(--shadow-card);}
.offer-card--featured{border-color:var(--amber-30);background:linear-gradient(180deg,hsla(36,90%,50%,0.06) 0%,var(--card) 40%);}
.offer-card--featured:hover{border-color:var(--amber);box-shadow:0 0 32px var(--amber-10),var(--shadow-card);}
.offer-card__label{font-size:0.68rem;font-weight:800;letter-spacing:0.15em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:8px;}
.offer-card--featured .offer-card__label{color:var(--amber);}
.offer-card__badge{position:absolute;top:20px;right:20px;background:var(--amber);color:hsl(220,20%,7%);font-size:0.68rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;padding:4px 10px;border-radius:var(--radius-full);}
.offer-card__title{font-size:1.2rem;font-weight:800;color:var(--fg);margin-bottom:10px;letter-spacing:-0.02em;}
.offer-card__sub{font-size:0.85rem;color:var(--fg-muted);line-height:1.65;margin-bottom:20px;flex-grow:1;}
.offer-checklist{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;flex-grow:1;}
.offer-checklist li{display:flex;gap:10px;align-items:flex-start;font-size:0.82rem;color:var(--fg-muted);line-height:1.5;}
.offer-checklist li::before{content:'✓';color:var(--amber);font-weight:800;flex-shrink:0;margin-top:1px;}
.offer-checklist li.extra{color:var(--amber-soft);}
.offer-checklist li.extra::before{content:'+';}

/* 19. COMPARISON TABLE */
.table-wrap{overflow-x:auto;border-radius:var(--radius-xl);border:1px solid var(--border);}
.comparison-table{width:100%;border-collapse:collapse;font-size:0.88rem;}
.comparison-table th,.comparison-table td{padding:14px 16px;text-align:center;border-bottom:1px solid var(--border);}
.comparison-table th:first-child,.comparison-table td:first-child{text-align:left;color:var(--fg-muted);}
.comparison-table thead th{font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--fg-subtle);background:var(--muted);padding:16px;}
.comparison-table thead th.featured{color:var(--amber);background:hsla(36,90%,50%,0.08);}
.comparison-table td.featured{background:hsla(36,90%,50%,0.03);}
.comparison-table .check{color:var(--amber);font-weight:700;}
.comparison-table .cross{color:var(--fg-subtle);}
.comparison-table tbody tr:last-child td{border-bottom:none;}
.comparison-table tbody tr:hover{background:var(--muted);}

/* 20. HIGHLIGHT BOX */
.highlight-box{border-radius:var(--radius-lg);border:1px solid var(--border);border-left:3px solid var(--amber);background:var(--card);padding:24px 28px;margin-top:32px;}
.highlight-box__label{font-size:0.68rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:var(--amber);margin-bottom:8px;}
.highlight-box h3{margin-bottom:10px;font-size:1rem;}
.highlight-box p{font-size:0.88rem;color:var(--fg-muted);line-height:1.7;margin-bottom:16px;}

/* 21. PROCESS STEPS */
.process-steps{display:flex;flex-direction:column;}
.process-step{display:grid;grid-template-columns:56px 1fr;gap:0 24px;padding:32px 0;border-bottom:1px solid var(--border);align-items:start;}
.process-step:last-child{border-bottom:none;}
.process-step__num{font-size:1.8rem;font-weight:900;color:var(--amber);letter-spacing:-0.04em;line-height:1.2;opacity:0.5;}
.process-step h3{margin-bottom:8px;}
.process-step p{font-size:0.9rem;color:var(--fg-muted);line-height:1.7;}
.process-step__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
.process-step__tag{padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--border);font-size:0.75rem;color:var(--fg-subtle);}
@media(max-width:600px){.process-step{grid-template-columns:1fr;gap:8px;}.process-step__num{font-size:1.4rem;}}

/* 22. CONTACT */
.contact-grid{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start;}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;}}
.form-card{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);padding:36px;}
.form-card h3{margin-bottom:4px;}
.form-card .form-sub{font-size:0.88rem;color:var(--fg-muted);margin-bottom:28px;line-height:1.5;}
.form{display:flex;flex-direction:column;gap:16px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.form-row{grid-template-columns:1fr;}}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-size:0.82rem;font-weight:600;color:var(--fg-muted);}
.field input,.field select,.field textarea{background:var(--muted);border:1.5px solid var(--border);border-radius:var(--radius);color:var(--fg);font-family:inherit;font-size:0.9rem;padding:11px 14px;transition:border-color 0.2s,box-shadow 0.2s;-webkit-appearance:none;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--amber-30);box-shadow:0 0 0 3px var(--amber-10);}
.field input::placeholder,.field textarea::placeholder{color:var(--fg-subtle);}
.field textarea{resize:vertical;min-height:120px;}
.field select{cursor:pointer;}
.field select option{background:var(--card);}
.form-notice{font-size:0.85rem;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);color:var(--fg-muted);margin-top:4px;}
.form-notice.success{border-color:hsla(120,40%,45%,0.4);color:hsl(120,50%,65%);background:hsla(120,40%,45%,0.05);}
.form-notice.error{border-color:hsla(0,70%,55%,0.4);color:hsl(0,70%,65%);background:hsla(0,70%,55%,0.05);}
.contact-sidebar{display:flex;flex-direction:column;gap:16px;}
.contact-info-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);padding:24px;}
.contact-info-card__label{font-size:0.68rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:16px;}
.contact-info-item{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--border);}
.contact-info-item:last-child{border-bottom:none;}
.contact-info-item svg{color:var(--amber);flex-shrink:0;margin-top:2px;}
.contact-info-item strong{font-size:0.85rem;display:block;margin-bottom:2px;}
.contact-info-item span{font-size:0.82rem;color:var(--fg-muted);}

/* 23. ABOUT */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:40px;}}
.profile-card{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);overflow:hidden;}
.profile-card__header{padding:24px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;}
.profile-card__avatar{width:52px;height:52px;background:var(--muted);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--fg-subtle);}
.profile-card__name{font-size:0.95rem;font-weight:700;margin-bottom:2px;}
.profile-card__role{font-size:0.8rem;color:var(--fg-muted);}
.profile-card__body{padding:24px;}
.profile-card__body-label{font-size:0.68rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:16px;}
.timeline-item{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--border);}
.timeline-item:last-child{border-bottom:none;}
.timeline-dot{width:6px;height:6px;border-radius:50%;background:var(--amber);flex-shrink:0;margin-top:7px;}
.timeline-item strong{font-size:0.85rem;display:block;margin-bottom:2px;}
.timeline-item span{font-size:0.8rem;color:var(--fg-muted);}
.quote-block{border-left:3px solid var(--amber);padding-left:20px;margin:24px 0;}
.quote-block p{font-size:0.95rem;font-style:italic;color:var(--fg-muted);line-height:1.8;}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
@media(max-width:900px){.values-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.values-grid{grid-template-columns:1fr;}}
.value-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);padding:24px;transition:border-color 0.3s;}
.value-card:hover{border-color:var(--amber-20);}
.value-card__icon{width:40px;height:40px;background:var(--amber-10);border:1px solid var(--amber-20);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--amber);margin-bottom:16px;}
.value-card h4{margin-bottom:8px;}
.value-card p{font-size:0.85rem;color:var(--fg-muted);line-height:1.65;}

/* 24. STATS */
.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden;margin:48px 0;}
@media(max-width:768px){.stats-row{grid-template-columns:1fr 1fr;}}
.stat-cell{background:var(--card);padding:28px 24px;text-align:center;}
.stat-cell__num{font-size:2rem;font-weight:900;color:var(--amber);letter-spacing:-0.04em;line-height:1;margin-bottom:6px;}
.stat-cell__label{font-size:0.8rem;color:var(--fg-muted);}

/* 25. FAQ */
.faq{display:flex;flex-direction:column;}
.faq-item{border-bottom:1px solid var(--border);}
.faq-item:first-child{border-top:1px solid var(--border);}
.faq-btn{display:flex;justify-content:space-between;align-items:center;width:100%;padding:20px 0;font-size:0.95rem;font-weight:600;color:var(--fg);text-align:left;gap:16px;}
.faq-btn__icon{font-size:1.4rem;font-weight:300;color:var(--amber);flex-shrink:0;line-height:1;transition:transform 0.25s;width:24px;height:24px;display:flex;align-items:center;justify-content:center;}
.faq-item.open .faq-btn__icon{transform:rotate(45deg);}
.faq-body{display:none;padding:0 0 20px;}
.faq-body p{font-size:0.9rem;color:var(--fg-muted);line-height:1.75;}
.faq-item.open .faq-body{display:block;}

/* 26. PROCUREMENT */
.procurement-box{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);padding:40px;display:grid;grid-template-columns:1fr 200px;gap:32px;align-items:center;margin-top:48px;}
@media(max-width:768px){.procurement-box{grid-template-columns:1fr;}}
.procurement-box h3{margin-bottom:10px;}
.procurement-box p{font-size:0.9rem;color:var(--fg-muted);line-height:1.7;margin-bottom:16px;}

/* 27. COOKIE */
#cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;max-width:520px;background:var(--card);border:1px solid var(--border-md);border-radius:var(--radius-lg);padding:20px 24px;z-index:999;box-shadow:0 8px 40px rgba(0,0,0,0.6);}
#cookie-banner p{font-size:0.82rem;color:var(--fg-muted);margin-bottom:14px;line-height:1.6;}
#cookie-banner button{background:var(--amber);color:hsl(220,20%,7%);border:none;border-radius:var(--radius);padding:8px 18px;font-size:0.82rem;font-weight:700;cursor:pointer;}

/* 28. GRID HELPERS */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
@media(max-width:900px){.grid-2{grid-template-columns:1fr;}}

/* 29. PAGE HERO WITH VISUAL BACKGROUND */
.page-hero__bg{position:absolute;inset:0;z-index:0;}
.page-hero__bg img{width:100%;height:100%;object-fit:cover;opacity:0.13;}
.page-hero__bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,var(--bg-darker) 0%,hsla(220,25%,5%,0.93) 55%,var(--bg-darker) 100%);}
.page-hero--visual{padding:104px 0 80px;}
.page-hero--visual .container{position:relative;z-index:1;}

/* 30. FORMULA CARDS (2×2, solution-card variant with image overlay) */
.formula-2x2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:768px){.formula-2x2{grid-template-columns:1fr;}}
.formula-img-info{position:absolute;bottom:12px;left:14px;z-index:2;display:flex;align-items:center;gap:10px;}
.formula-img-icon{width:34px;height:34px;background:var(--amber-20);border:1px solid var(--amber-30);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);color:var(--amber);flex-shrink:0;}
.formula-img-text .formula-label{font-size:0.63rem;color:var(--fg-muted);display:block;line-height:1.3;letter-spacing:0.05em;}
.formula-img-text .formula-title{font-size:1rem;font-weight:800;color:var(--fg);display:block;line-height:1.1;}
.solution-card__badge{position:absolute;top:12px;right:12px;z-index:3;background:var(--amber);color:hsl(220,20%,7%);font-size:0.63rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;padding:4px 10px;border-radius:var(--radius-full);}
.solution-card--featured{border-color:var(--amber-30);}
.solution-card--featured:hover{box-shadow:0 0 48px var(--amber-10),var(--shadow-card);}
.formula-body{padding:24px;display:flex;flex-direction:column;flex:1;}
.formula-body>p{font-size:0.88rem;color:var(--fg-muted);margin-bottom:18px;line-height:1.65;}
