{"id":585,"date":"2026-04-13T15:02:21","date_gmt":"2026-04-13T13:02:21","guid":{"rendered":"https:\/\/www.icone-neutron.fr\/?page_id=585"},"modified":"2026-07-23T09:43:15","modified_gmt":"2026-07-23T07:43:15","slug":"informations-generales-sur-icone-2","status":"publish","type":"page","link":"https:\/\/www.icone-neutron.fr\/en\/informations-generales-sur-icone-2\/","title":{"rendered":"informations-generales-sur-icone"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"585\" class=\"elementor elementor-585\">\n\t\t\t\t<div class=\"elementor-element elementor-element-619913e2 e-flex e-con-boxed e-con e-parent\" data-id=\"619913e2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-31950c31 elementor-widget elementor-widget-text-editor\" data-id=\"31950c31\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<section class=\"icone-section\">\n<div class=\"icone-container\">\n<h2 class=\"icone-title\">General Information about ICONE<\/h2>\n<h3 class=\"icone-subtitle\">The ICONE Facility<\/h3>\n<p class=\"icone-intro\">The ICONE facility will provide French researchers and engineers with the capability to explore materials using neutrons.<\/p>\nIt is based on:\n<div class=\"icone-list\">\n<div>\u2013 A high-current (80 mA), low-energy (25 MeV) proton accelerator<\/div>\n<div>\u2013 Two neutron production and moderation targets: High Flux (2 ms @ 20 Hz) and High Resolution (0.4 ms @ 50 Hz)<\/div>\n<div>\u2013 Approximately 10 to 12 scientific instruments exploiting neutron\u2013matter interactions<\/div>\n<\/div>\n<div class=\"icone-highlight\">This type of facility is known as a <strong>HiCANS<\/strong> (High Current Accelerator-based Neutron Source).<\/div>\n<div class=\"icone-note\">References: IAEA TECDOC 1981 (2021), LENS Report (2020), RIKEN, HBS J\u00fclich, ARGITU ESS-Bilbao, ELENA, UCANS.<\/div>\n<div class=\"icone-image\"><img decoding=\"async\" src=\"https:\/\/b6bc-fb5825f4c829.wptiger.fr\/wp-content\/uploads\/2026\/06\/ICONE-Infrastructure.png\" alt=\"ICONE Infrastructure\" \/><\/div>\n<h3 class=\"icone-subtitle\">Project Development Milestones<\/h3>\n<p class=\"icone-intro\">Explore the key milestones in the development of ICONE.<\/p>\n\n<div class=\"icone-highlight\">\n\n<strong>Current Project Status<\/strong>\n\n<strong>Phase:<\/strong> Detailed Design Phase (DDP)\n<strong>Progress:<\/strong> Preparation for implementation\n<strong>Objective:<\/strong> A next-generation neutron source\n\n<\/div>\n<div class=\"timeline\">\n<div class=\"timeline-item\">\n<div class=\"timeline-dot\"><\/div>\n<div class=\"timeline-card\">\n<div class=\"timeline-year\">2023<\/div>\n<h4>Initial Project Evaluation<\/h4>\nScientific and technical validation.\n\n&nbsp;\n\n<span class=\"timeline-status\">\nCompleted\n<\/span>\n\n<\/div>\n<\/div>\n<div class=\"timeline-item\">\n<div class=\"timeline-dot\"><\/div>\n<div class=\"timeline-card\">\n<div class=\"timeline-year\">2024<\/div>\n<h4>Launch of Engineering Studies<\/h4>\nDefinition of requirements and engineering studies.\n\n&nbsp;\n\n<span class=\"timeline-status\">\nCompleted\n<\/span>\n\n<\/div>\n<\/div>\n<div class=\"timeline-item current\">\n<div class=\"timeline-dot\"><\/div>\n<div class=\"timeline-card\">\n<div class=\"timeline-year\">2026<\/div>\n<h4>Preparation for Implementation<\/h4>\nProject organization.\n\n&nbsp;\n\n<span class=\"timeline-status\">\nIn Progress\n<\/span>\n\n<\/div>\n<\/div>\n<\/div>\n<h3 class=\"icone-subtitle\">ICONE at a Glance<\/h3>\n<div class=\"icone-stats\">\n<div class=\"icone-stat\">\n<div class=\"stat-number\">20<\/div>\n<div class=\"stat-label\">participating laboratories<\/div>\n<\/div>\n<div class=\"icone-stat\">\n<div class=\"stat-number\">10\u201312<\/div>\n<div class=\"stat-label\">scientific instruments<\/div>\n<\/div>\n<div class=\"icone-stat\">\n<div class=\"stat-number\">2<\/div>\n<div class=\"stat-label\">neutron sources<\/div>\n<\/div>\n<div class=\"icone-stat\">\n<div class=\"stat-number\">1<\/div>\n<div class=\"stat-label\">national research infrastructure<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/section>\n<style>\n.icone-section{\n    width:100%;\n    background:transparent;\n    padding:70px 0;\n}\n\n\/* MAIN ROUNDED WHITE CONTAINER *\/\n.icone-container{\n    max-width:1200px;\n    margin:40px auto;\n    padding:55px;\n    background:#ffffff;\n    border-radius:18px;\n    box-shadow:0 8px 24px rgba(0,0,0,.08);\n    font-family:Arial, Helvetica, sans-serif;\n    line-height:1.8;\n    color:#333;\n}\n\n\/* MAIN TITLE *\/\n.icone-title{\n    font-size:38px;\n    font-weight:900;\n    color:#0d5cab;\n    padding-left:18px;\n    margin-bottom:45px;\n    border-left:6px solid #0d5cab;\n}\n\n\/* SUBHEADINGS *\/\n.icone-subtitle{\n    font-size:26px;\n    font-weight:800;\n    color:#0d5cab;\n    margin:50px 0 25px;\n}\n\n\/* BODY TEXT *\/\n.icone-container p{\n    font-size:17px;\n    color:#444;\n    margin-bottom:20px;\n    text-align:justify;\n}\n\n.icone-intro{\n    font-size:18px !important;\n}\n\n\/* LIST *\/\n.icone-list{\n    margin:20px 0 30px;\n}\n\n.icone-list div{\n    margin-bottom:12px;\n}\n\n\/* INFORMATION BOXES *\/\n.icone-highlight{\n    background:#f4f8fd;\n    border-left:5px solid #0d5cab;\n    padding:20px;\n    border-radius:10px;\n    margin:30px 0;\n}\n\n\/* REFERENCES *\/\n.icone-note{\n    font-size:14px;\n    color:#777;\n    margin-bottom:25px;\n}\n\n\/* IMAGE *\/\n.icone-image{\n    text-align:center;\n    margin:35px 0;\n}\n\n.icone-image img{\n    max-width:100%;\n    border-radius:12px;\n    box-shadow:0 10px 25px rgba(0,0,0,.12);\n}\n\n\/* PROJECT TIMELINE *\/\n.timeline{\n    position:relative;\n    margin:50px 0;\n    padding-left:40px;\n}\n\n.timeline:before{\n    content:\"\";\n    position:absolute;\n    left:10px;\n    top:0;\n    bottom:0;\n    width:4px;\n    background:#0d5cab;\n}\n\n.timeline-item{\n    position:relative;\n    margin-bottom:35px;\n}\n\n.timeline-dot{\n    position:absolute;\n    left:-37px;\n    top:25px;\n    width:16px;\n    height:16px;\n    background:#0d5cab;\n    border-radius:50%;\n    border:4px solid #fff;\n}\n\n.timeline-card{\n    background:#ffffff;\n    border:1px solid #e4eaf2;\n    border-radius:14px;\n    padding:25px;\n    box-shadow:0 5px 18px rgba(0,0,0,.06);\n}\n\n.current .timeline-card{\n    border:2px solid #0d5cab;\n    background:#f7fbff;\n}\n\n.timeline-year{\n    display:inline-block;\n    background:#0d5cab;\n    color:#fff;\n    padding:5px 12px;\n    border-radius:6px;\n    font-weight:bold;\n}\n\n.timeline-card h4{\n    color:#0d5cab;\n    font-size:20px;\n    margin:15px 0 10px;\n}\n\n.timeline-status{\n    display:inline-block;\n    background:#eef5fc;\n    color:#0d5cab;\n    padding:6px 14px;\n    border-radius:20px;\n    font-size:13px;\n    font-weight:bold;\n}\n\n\/* STATISTICS *\/\n.icone-stats{\n    display:grid;\n    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));\n    gap:20px;\n}\n\n.icone-stat{\n    background:#f4f8fd;\n    border-left:5px solid #0d5cab;\n    padding:20px;\n    border-radius:10px;\n}\n\n.stat-number{\n    font-size:34px;\n    font-weight:900;\n    color:#0d5cab;\n}\n\n.stat-label{\n    color:#555;\n}\n\n\/* MOBILE *\/\n@media (max-width:768px){\n\n    .icone-container{\n        margin:20px;\n        padding:30px;\n    }\n\n    .icone-title{\n        font-size:30px;\n    }\n\n    .icone-subtitle{\n        font-size:22px;\n    }\n\n    .timeline{\n        padding-left:25px;\n    }\n\n    .timeline-dot{\n        left:-22px;\n    }\n\n}\n<\/style>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-34b32ea e-flex e-con-boxed e-con e-parent\" data-id=\"34b32ea\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-72909cb e-flex e-con-boxed e-con e-parent\" data-id=\"72909cb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1118743 elementor-widget elementor-widget-html\" data-id=\"1118743\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\" \/>\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/>\r\n\r\n<title>RFQ\/DTL Accelerator - Complete Visualization<\/title>\r\n\r\n<style>\r\n:root {\r\n  --bg-primary: #f7fbff;\r\n  --bg-secondary: #ffffff;\r\n  --primary: #0d5cab;\r\n  --yellow: #e6a800;\r\n  --blue: #003dff;\r\n  --blue-light: #004bff;\r\n  --green: #27ae60;\r\n  --red: #d62828;\r\n  --black: #111827;\r\n  --white: #ffffff;\r\n  --shadow: 0 4px 12px rgba(0,0,0,0.1);\r\n  --radius: 6px;\r\n}\r\n\r\n* {\r\n  margin:0;\r\n  padding:0;\r\n  box-sizing:border-box;\r\n}\r\n\r\nbody {\r\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;\r\n  min-height:100vh;\r\n  background:linear-gradient(180deg,var(--bg-primary),var(--bg-secondary));\r\n  padding:20px;\r\n}\r\n\r\n.container {\r\n  max-width:1200px;\r\n  margin:0 auto;\r\n}\r\n\r\n.header {\r\n  text-align:center;\r\n  margin-bottom:20px;\r\n}\r\n\r\n.header h1 {\r\n  font-size:1.8rem;\r\n  color:var(--black);\r\n  margin-bottom:5px;\r\n}\r\n\r\n.header .subtitle {\r\n  color:#666;\r\n  font-size:1rem;\r\n}\r\n\r\n.visualization {\r\n  position:relative;\r\n  background:var(--white);\r\n  border-radius:var(--radius);\r\n  box-shadow:var(--shadow);\r\n  overflow:hidden;\r\n  height:750px;\r\n}\r\n\r\n#canvas {\r\n  width:100%;\r\n  height:100%;\r\n  display:block;\r\n  cursor:default;\r\n}\r\n\r\n.controls {\r\n  position:absolute;\r\n  top:15px;\r\n  right:15px;\r\n  display:flex;\r\n  gap:8px;\r\n  z-index:100;\r\n}\r\n\r\n.control-btn {\r\n  width:36px;\r\n  height:36px;\r\n  border:none;\r\n  border-radius:var(--radius);\r\n  background:var(--white);\r\n  color:var(--primary);\r\n  cursor:pointer;\r\n  font-size:16px;\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n  transition:all .2s;\r\n  box-shadow:0 2px 4px rgba(0,0,0,.1);\r\n}\r\n\r\n.control-btn:hover {\r\n  transform:scale(1.05);\r\n  background:#f0f4f8;\r\n}\r\n\r\n.control-btn:active {\r\n  transform:scale(.95);\r\n}\r\n\r\n.control-btn.active {\r\n  background:var(--primary);\r\n  color:var(--white);\r\n}\r\n\r\n.control-btn:disabled {\r\n  opacity:.5;\r\n  cursor:not-allowed;\r\n}\r\n\r\n.legend {\r\n  position:absolute;\r\n  bottom:15px;\r\n  left:50%;\r\n  transform:translateX(-50%);\r\n  background:rgba(255,255,255,.95);\r\n  padding:10px 16px;\r\n  border-radius:var(--radius);\r\n  box-shadow:var(--shadow);\r\n  display:flex;\r\n  gap:15px;\r\n  z-index:100;\r\n}\r\n\r\n.legend-item {\r\n  display:flex;\r\n  align-items:center;\r\n  gap:6px;\r\n  font-size:.85rem;\r\n  color:#555;\r\n}\r\n\r\n.legend-color {\r\n  width:10px;\r\n  height:10px;\r\n  border-radius:50%;\r\n}\r\n\r\n#tooltip {\r\n  position:absolute;\r\n  display:none;\r\n  padding:12px 16px;\r\n  background:var(--primary);\r\n  color:var(--white);\r\n  border-radius:var(--radius);\r\n  pointer-events:none;\r\n  box-shadow:var(--shadow);\r\n  z-index:1000;\r\n  font-size:.85rem;\r\n  line-height:1.4;\r\n  opacity:0;\r\n  transition:opacity .2s, transform .2s;\r\n  transform:translateY(8px);\r\n}\r\n\r\n#tooltip.visible {\r\n  display:block;\r\n  opacity:1;\r\n  transform:translateY(0);\r\n}\r\n\r\n#tooltip::after {\r\n  content:'';\r\n  position:absolute;\r\n  bottom:-8px;\r\n  left:50%;\r\n  transform:translateX(-50%);\r\n  border-width:8px 8px 0;\r\n  border-style:solid;\r\n  border-color:var(--primary) transparent transparent;\r\n}\r\n\r\n.tooltip-title {\r\n  font-weight:700;\r\n  margin-bottom:4px;\r\n  font-size:1rem;\r\n}\r\n\r\n.tooltip-row {\r\n  display:flex;\r\n  justify-content:space-between;\r\n  gap:10px;\r\n  margin-bottom:3px;\r\n}\r\n\r\n.tooltip-label {\r\n  color:rgba(255,255,255,.8);\r\n}\r\n\r\n.tooltip-value {\r\n  font-weight:600;\r\n}\r\n\r\n.tooltip-desc {\r\n  font-size:.8rem;\r\n  color:rgba(255,255,255,.7);\r\n  font-style:italic;\r\n  margin-top:6px;\r\n  padding-top:6px;\r\n  border-top:1px solid rgba(255,255,255,.2);\r\n}\r\n\r\n.speed-indicator {\r\n  text-align:center;\r\n  margin-top:15px;\r\n  color:#666;\r\n  font-size:.85rem;\r\n}\r\n\r\n@media(max-width:768px){\r\n\r\n.visualization {\r\n  height:550px;\r\n}\r\n\r\n.legend {\r\n  flex-direction:column;\r\n  gap:8px;\r\n  transform:translateX(-50%) translateY(-100%);\r\n  bottom:0;\r\n}\r\n\r\n.controls {\r\n  top:10px;\r\n  right:10px;\r\n}\r\n\r\n.control-btn {\r\n  width:32px;\r\n  height:32px;\r\n  font-size:14px;\r\n}\r\n\r\n}\r\n\r\n<\/style>\r\n<\/head>\r\n\r\n<body>\r\n\r\n<div class=\"container\">\r\n\r\n<div class=\"header\">\r\n<\/div>\r\n\r\n<div class=\"visualization\">\r\n\r\n<canvas id=\"canvas\"><\/canvas>\r\n\r\n<div class=\"controls\">\r\n\r\n<button class=\"control-btn\" id=\"btn-pause\" title=\"Pause\/Resume\">\u23f8<\/button>\r\n\r\n<button class=\"control-btn\" id=\"btn-slower\" title=\"Slow Down\">\u2796<\/button>\r\n\r\n<button class=\"control-btn\" id=\"btn-faster\" title=\"Speed Up\">\u2795<\/button>\r\n\r\n<button class=\"control-btn\" id=\"btn-clear\" title=\"Clear Particles\">\ud83d\uddd1<\/button>\r\n\r\n<\/div>\r\n\r\n\r\n<div class=\"legend\">\r\n\r\n<div class=\"legend-item\">\r\n<span class=\"legend-color\" style=\"background:var(--yellow);\"><\/span>\r\n<span>Primary Beam<\/span>\r\n<\/div>\r\n\r\n<div class=\"legend-item\">\r\n<span class=\"legend-color\" style=\"background:var(--blue);\"><\/span>\r\n<span>Secondary Beam<\/span>\r\n<\/div>\r\n\r\n<div class=\"legend-item\">\r\n<span class=\"legend-color\" style=\"background:var(--green);\"><\/span>\r\n<span>Distribution Points<\/span>\r\n<\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<div id=\"tooltip\"><\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<div class=\"speed-indicator\" id=\"speed-indicator\">\r\nSpeed: 1\u00d7\r\n<\/div>\r\n\r\n<\/div>\r\n<script>\r\n(() => {\r\n\r\n  \/\/ ============================================\r\n  \/\/ CONSTANTS\r\n  \/\/ ============================================\r\n\r\n  const CONFIG = {\r\n    canvasHeight: 750,\r\n    centerY: 300,\r\n    instrumentSpacing: 45,\r\n    particleSpawnRate: 0.3,\r\n    particleSpeed: 0.012,\r\n    segmentSpeed: 0.025,\r\n\r\n    colors: {\r\n      yellow: '#e6a800',\r\n      blue: '#003dff',\r\n      blueLight: '#004bff',\r\n      green: '#27ae60',\r\n      red: '#d62828',\r\n      black: '#111827',\r\n      white: '#ffffff'\r\n    },\r\n\r\n    sizes: {\r\n      particlePrimary: 3.5,\r\n      particleSecondary: 3,\r\n      junctionRadius: 10,\r\n      nodeRadius: 16,\r\n      labelWidth: 60,\r\n      labelHeight: 28,\r\n      lineWidthPrimary: 7,\r\n      lineWidthSecondary: 2.5\r\n    }\r\n  };\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ DATA\r\n  \/\/ ============================================\r\n\r\n  const INSTRUMENTS = {\r\n\r\n    left: [\r\n      {\r\n        name: 'PRESTO',\r\n        type: 'HF Diffraction',\r\n        desc: 'Magnetism',\r\n        category: 'Diffraction'\r\n      },\r\n      {\r\n        name: 'FANTASTIC',\r\n        type: 'Inelastic',\r\n        desc: 'Phonons',\r\n        category: 'Spectroscopy'\r\n      },\r\n      {\r\n        name: 'PRECIS',\r\n        type: 'HR',\r\n        desc: 'Crystallography',\r\n        category: 'Crystallography'\r\n      },\r\n      {\r\n        name: 'CONTEXT',\r\n        type: 'Textures',\r\n        desc: 'Residual Stress',\r\n        category: 'Materials'\r\n      },\r\n      {\r\n        name: 'INEDIT',\r\n        type: 'QENS',\r\n        desc: 'Dynamics',\r\n        category: 'Dynamics'\r\n      }\r\n    ],\r\n\r\n    right: [\r\n      {\r\n        name: 'PREMS',\r\n        type: 'Reflectometry',\r\n        desc: 'Interfaces',\r\n        category: 'Surfaces'\r\n      },\r\n      {\r\n        name: 'LAMBDA',\r\n        type: 'SANS',\r\n        desc: 'Polymers',\r\n        category: 'Polymers'\r\n      },\r\n      {\r\n        name: 'NANOSANS',\r\n        type: 'Nano-SANS',\r\n        desc: 'Self-Assembly',\r\n        category: 'Nanomaterials'\r\n      },\r\n      {\r\n        name: 'TULIP',\r\n        type: '3D Imaging',\r\n        desc: 'Tomography',\r\n        category: 'Imaging'\r\n      },\r\n      {\r\n        name: 'GOLF',\r\n        type: 'Activation',\r\n        desc: 'Composition',\r\n        category: 'Composition'\r\n      }\r\n    ]\r\n\r\n  };\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ STATE\r\n  \/\/ ============================================\r\n\r\n  const state = {\r\n\r\n    width: 0,\r\n    height: CONFIG.canvasHeight,\r\n    devicePixelRatio: 1,\r\n\r\n    mouse: {\r\n      x: 0,\r\n      y: 0\r\n    },\r\n\r\n    particles: [],\r\n\r\n    hoveredInstrument: null,\r\n\r\n    isPaused: false,\r\n\r\n    speedMultiplier: 1\r\n\r\n  };\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ DOM ELEMENTS\r\n  \/\/ ============================================\r\n\r\n  const canvas = document.getElementById('canvas');\r\n  const ctx = canvas.getContext('2d');\r\n\r\n  const tooltip = document.getElementById('tooltip');\r\n\r\n  const visualization = document.querySelector('.visualization');\r\n\r\n  const btnPause = document.getElementById('btn-pause');\r\n  const btnSlower = document.getElementById('btn-slower');\r\n  const btnFaster = document.getElementById('btn-faster');\r\n  const btnClear = document.getElementById('btn-clear');\r\n\r\n  const speedIndicator = document.getElementById('speed-indicator');\r\n\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ PARTICLE CLASS\r\n  \/\/ ============================================\r\n\r\n  class Particle {\r\n\r\n    constructor() {\r\n\r\n      this.side = Math.random() < 0.5 ? 'left' : 'right';\r\n\r\n      this.instrumentIndex =\r\n        Math.floor(Math.random() * INSTRUMENTS.left.length);\r\n\r\n      this.segment = 0;\r\n\r\n      this.segmentProgress = 0;\r\n\r\n      this.globalProgress = 0;\r\n\r\n      this.size = Math.random() * 0.5 + 0.8;\r\n\r\n    }\r\n\r\n\r\n    update() {\r\n\r\n      if (state.isPaused) return true;\r\n\r\n\r\n      this.segmentProgress +=\r\n        CONFIG.segmentSpeed * state.speedMultiplier;\r\n\r\n\r\n      this.globalProgress +=\r\n        CONFIG.particleSpeed * state.speedMultiplier;\r\n\r\n\r\n\r\n      if (this.segmentProgress > 1) {\r\n\r\n        this.segment++;\r\n\r\n        this.segmentProgress = 0;\r\n\r\n      }\r\n\r\n\r\n      return this.globalProgress < 3;\r\n\r\n    }\r\n\r\n\r\n\r\n    draw(width) {\r\n\r\n      const centerX = width \/ 2;\r\n\r\n      const leftX = width * 0.3;\r\n\r\n      const rightX = width * 0.7;\r\n\r\n\r\n      const {\r\n        centerY,\r\n        instrumentSpacing,\r\n        colors,\r\n        sizes\r\n\r\n      } = CONFIG;\r\n\r\n\r\n\r\n      let x, y, color, radius;\r\n\r\n\r\n\r\n      \/\/ Primary beam\r\n\r\n      if (this.segment === 0) {\r\n\r\n\r\n        x = centerX;\r\n\r\n        y = 80 + (centerY - 80) * this.segmentProgress;\r\n\r\n        color = colors.yellow;\r\n\r\n        radius = sizes.particlePrimary * this.size;\r\n\r\n\r\n      }\r\n\r\n\r\n      \/\/ Beam distribution\r\n\r\n      else if (this.segment === 1) {\r\n\r\n\r\n        const startX = centerX;\r\n\r\n        const endX =\r\n          this.side === 'left'\r\n          ? leftX\r\n          : rightX;\r\n\r\n\r\n\r\n        x = startX +\r\n          (endX - startX) *\r\n          this.segmentProgress;\r\n\r\n\r\n        y = centerY;\r\n\r\n\r\n        color = colors.yellow;\r\n\r\n        radius = sizes.particlePrimary * this.size;\r\n\r\n\r\n      }\r\n\r\n\r\n      \/\/ Secondary beam\r\n\r\n      else {\r\n\r\n\r\n        const startX =\r\n          this.side === 'left'\r\n          ? leftX\r\n          : rightX;\r\n\r\n\r\n\r\n        const endX =\r\n          this.side === 'left'\r\n          ? leftX - 120\r\n          : rightX + 120;\r\n\r\n\r\n\r\n        const endY =\r\n          centerY +\r\n          this.instrumentIndex *\r\n          instrumentSpacing;\r\n\r\n\r\n\r\n        x =\r\n          startX +\r\n          (endX - startX) *\r\n          this.segmentProgress;\r\n\r\n\r\n\r\n        y =\r\n          centerY +\r\n          (endY - centerY) *\r\n          this.segmentProgress;\r\n\r\n\r\n\r\n        color = colors.blue;\r\n\r\n        radius =\r\n          sizes.particleSecondary *\r\n          this.size;\r\n\r\n      }\r\n\r\n\r\n\r\n      ctx.fillStyle = color;\r\n\r\n      ctx.beginPath();\r\n\r\n      ctx.arc(\r\n        x,\r\n        y,\r\n        radius,\r\n        0,\r\n        Math.PI * 2\r\n      );\r\n\r\n      ctx.fill();\r\n\r\n\r\n\r\n      ctx.strokeStyle = color;\r\n\r\n      ctx.lineWidth = 0.5;\r\n\r\n      ctx.stroke();\r\n\r\n    }\r\n\r\n  }\r\n    \/\/ ============================================\r\n  \/\/ DRAWING FUNCTIONS\r\n  \/\/ ============================================\r\n\r\n  function drawCanvas(width, height) {\r\n\r\n    const centerX = width \/ 2;\r\n    const leftX = width * 0.3;\r\n    const rightX = width * 0.7;\r\n\r\n    const {\r\n      centerY,\r\n      instrumentSpacing,\r\n      colors,\r\n      sizes\r\n    } = CONFIG;\r\n\r\n\r\n    \/\/ Background\r\n    ctx.clearRect(0, 0, width, height);\r\n\r\n    const gradient =\r\n      ctx.createLinearGradient(0, 0, 0, height);\r\n\r\n    gradient.addColorStop(0, '#f7fbff');\r\n    gradient.addColorStop(1, '#ffffff');\r\n\r\n    ctx.fillStyle = gradient;\r\n    ctx.fillRect(0, 0, width, height);\r\n\r\n\r\n\r\n    \/\/ RFQ\/DTL Accelerator\r\n    ctx.fillStyle = colors.black;\r\n\r\n    ctx.fillRect(\r\n      centerX - 140,\r\n      50,\r\n      280,\r\n      40\r\n    );\r\n\r\n\r\n    ctx.fillStyle = colors.white;\r\n\r\n    ctx.textAlign = 'center';\r\n\r\n    ctx.font = 'bold 14px Arial, sans-serif';\r\n\r\n    ctx.fillText(\r\n      'RFQ \/ DTL ACCELERATOR',\r\n      centerX,\r\n      75\r\n    );\r\n\r\n\r\n\r\n    \/\/ Primary yellow beam\r\n\r\n    ctx.strokeStyle = colors.yellow;\r\n\r\n    ctx.lineWidth = sizes.lineWidthPrimary;\r\n\r\n    ctx.lineCap = 'round';\r\n\r\n\r\n    ctx.beginPath();\r\n    ctx.moveTo(centerX, 80);\r\n    ctx.lineTo(centerX, centerY);\r\n    ctx.stroke();\r\n\r\n\r\n    ctx.beginPath();\r\n    ctx.moveTo(centerX, centerY);\r\n    ctx.lineTo(leftX, centerY);\r\n    ctx.stroke();\r\n\r\n\r\n    ctx.beginPath();\r\n    ctx.moveTo(centerX, centerY);\r\n    ctx.lineTo(rightX, centerY);\r\n    ctx.stroke();\r\n\r\n\r\n\r\n    \/\/ Central junction\r\n\r\n    ctx.fillStyle = colors.black;\r\n\r\n    ctx.beginPath();\r\n\r\n    ctx.arc(\r\n      centerX,\r\n      centerY,\r\n      sizes.junctionRadius,\r\n      0,\r\n      Math.PI * 2\r\n    );\r\n\r\n    ctx.fill();\r\n\r\n\r\n\r\n    \/\/ Green distribution nodes\r\n\r\n    ctx.fillStyle = colors.green;\r\n\r\n\r\n    ctx.beginPath();\r\n\r\n    ctx.arc(\r\n      leftX,\r\n      centerY,\r\n      sizes.nodeRadius,\r\n      0,\r\n      Math.PI * 2\r\n    );\r\n\r\n    ctx.fill();\r\n\r\n\r\n    ctx.beginPath();\r\n\r\n    ctx.arc(\r\n      rightX,\r\n      centerY,\r\n      sizes.nodeRadius,\r\n      0,\r\n      Math.PI * 2\r\n    );\r\n\r\n    ctx.fill();\r\n\r\n\r\n\r\n    \/\/ Secondary blue beam lines\r\n\r\n    ctx.strokeStyle = colors.blueLight;\r\n\r\n    ctx.lineWidth = sizes.lineWidthSecondary;\r\n\r\n\r\n\r\n    for (let i = 0; i < INSTRUMENTS.left.length; i++) {\r\n\r\n      ctx.beginPath();\r\n\r\n      ctx.moveTo(leftX, centerY);\r\n\r\n      ctx.lineTo(\r\n        leftX - 120,\r\n        centerY + i * instrumentSpacing\r\n      );\r\n\r\n      ctx.stroke();\r\n\r\n    }\r\n\r\n\r\n\r\n    for (let i = 0; i < INSTRUMENTS.right.length; i++) {\r\n\r\n      ctx.beginPath();\r\n\r\n      ctx.moveTo(rightX, centerY);\r\n\r\n      ctx.lineTo(\r\n        rightX + 120,\r\n        centerY + i * instrumentSpacing\r\n      );\r\n\r\n      ctx.stroke();\r\n\r\n    }\r\n\r\n\r\n\r\n    \/\/ Instrument labels\r\n\r\n    const leftLabelX = leftX - 120;\r\n    const rightLabelX = rightX + 120;\r\n\r\n\r\n\r\n    \/\/ Left instruments\r\n\r\n    for (let i = 0; i < INSTRUMENTS.left.length; i++) {\r\n\r\n      const x = leftLabelX;\r\n\r\n      const y =\r\n        centerY + i * instrumentSpacing;\r\n\r\n\r\n      ctx.fillStyle = colors.red;\r\n\r\n      ctx.fillRect(\r\n        x - 25,\r\n        y - 12,\r\n        sizes.labelWidth,\r\n        sizes.labelHeight\r\n      );\r\n\r\n\r\n      ctx.fillStyle = colors.black;\r\n\r\n      ctx.textAlign = 'right';\r\n\r\n      ctx.font =\r\n        'bold 12px Arial, sans-serif';\r\n\r\n\r\n      ctx.fillText(\r\n        INSTRUMENTS.left[i].name,\r\n        x - 30,\r\n        y + 5\r\n      );\r\n\r\n    }\r\n\r\n\r\n\r\n    \/\/ Right instruments\r\n\r\n    for (let i = 0; i < INSTRUMENTS.right.length; i++) {\r\n\r\n      const x = rightLabelX;\r\n\r\n      const y =\r\n        centerY + i * instrumentSpacing;\r\n\r\n\r\n      ctx.fillStyle = colors.red;\r\n\r\n      ctx.fillRect(\r\n        x - 25,\r\n        y - 12,\r\n        sizes.labelWidth,\r\n        sizes.labelHeight\r\n      );\r\n\r\n\r\n      ctx.fillStyle = colors.black;\r\n\r\n      ctx.textAlign = 'left';\r\n\r\n      ctx.font =\r\n        'bold 12px Arial, sans-serif';\r\n\r\n\r\n      ctx.fillText(\r\n        INSTRUMENTS.right[i].name,\r\n        x + 30,\r\n        y + 5\r\n      );\r\n\r\n    }\r\n\r\n\r\n\r\n    \/\/ Particles\r\n\r\n    state.particles.forEach(\r\n      particle => particle.draw(width)\r\n    );\r\n\r\n\r\n\r\n    \/\/ Pause indicator\r\n\r\n    if (state.isPaused) {\r\n\r\n      ctx.fillStyle =\r\n        'rgba(0,0,0,0.5)';\r\n\r\n      ctx.fillRect(\r\n        width \/ 2 - 40,\r\n        height \/ 2 - 20,\r\n        80,\r\n        40\r\n      );\r\n\r\n\r\n      ctx.fillStyle = colors.white;\r\n\r\n      ctx.textAlign = 'center';\r\n\r\n      ctx.font =\r\n        'bold 14px Arial, sans-serif';\r\n\r\n\r\n      ctx.fillText(\r\n        'PAUSED',\r\n        width \/ 2,\r\n        height \/ 2 + 5\r\n      );\r\n\r\n    }\r\n\r\n  }\r\n\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ UTILITY FUNCTIONS\r\n  \/\/ ============================================\r\n\r\n\r\n  function handleResize() {\r\n\r\n    if (!visualization) return;\r\n\r\n\r\n    const rect =\r\n      visualization.getBoundingClientRect();\r\n\r\n\r\n    state.width = rect.width;\r\n\r\n    state.height = rect.height;\r\n\r\n\r\n    state.devicePixelRatio =\r\n      window.devicePixelRatio || 1;\r\n\r\n\r\n\r\n    canvas.width =\r\n      state.width * state.devicePixelRatio;\r\n\r\n\r\n    canvas.height =\r\n      state.height * state.devicePixelRatio;\r\n\r\n\r\n\r\n    ctx.setTransform(\r\n      state.devicePixelRatio,\r\n      0,\r\n      0,\r\n      state.devicePixelRatio,\r\n      0,\r\n      0\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  function checkHover() {\r\n\r\n    const {\r\n      mouse,\r\n      width\r\n    } = state;\r\n\r\n\r\n    const {\r\n      centerY,\r\n      instrumentSpacing\r\n    } = CONFIG;\r\n\r\n\r\n    const leftX =\r\n      width * 0.3 - 120;\r\n\r\n\r\n    const rightX =\r\n      width * 0.7 + 120;\r\n\r\n\r\n\r\n    for (let i = 0; i < INSTRUMENTS.left.length; i++) {\r\n\r\n      const x = leftX;\r\n\r\n      const y =\r\n        centerY + i * instrumentSpacing;\r\n\r\n\r\n      if (\r\n        Math.hypot(\r\n          mouse.x - x,\r\n          mouse.y - y\r\n        ) < 18\r\n      ) {\r\n\r\n        return {\r\n          side:'left',\r\n          index:i\r\n        };\r\n\r\n      }\r\n\r\n    }\r\n\r\n\r\n\r\n    for (let i = 0; i < INSTRUMENTS.right.length; i++) {\r\n\r\n      const x = rightX;\r\n\r\n      const y =\r\n        centerY + i * instrumentSpacing;\r\n\r\n\r\n      if (\r\n        Math.hypot(\r\n          mouse.x - x,\r\n          mouse.y - y\r\n        ) < 18\r\n      ) {\r\n\r\n        return {\r\n          side:'right',\r\n          index:i\r\n        };\r\n\r\n      }\r\n\r\n    }\r\n\r\n\r\n    return null;\r\n\r\n  }\r\n\r\n\r\n\r\n  function showTooltip(info) {\r\n\r\n    const instrument =\r\n      INSTRUMENTS[info.side][info.index];\r\n\r\n\r\n    tooltip.innerHTML = `\r\n\r\n    <div class=\"tooltip-title\">\r\n      ${instrument.name}\r\n    <\/div>\r\n\r\n    <div class=\"tooltip-row\">\r\n      <span class=\"tooltip-label\">\r\n        Type:\r\n      <\/span>\r\n\r\n      <span class=\"tooltip-value\">\r\n        ${instrument.type}\r\n      <\/span>\r\n    <\/div>\r\n\r\n\r\n    <div class=\"tooltip-row\">\r\n\r\n      <span class=\"tooltip-label\">\r\n        Category:\r\n      <\/span>\r\n\r\n      <span class=\"tooltip-value\">\r\n        ${instrument.category}\r\n      <\/span>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"tooltip-desc\">\r\n      ${instrument.desc}\r\n    <\/div>\r\n\r\n    `;\r\n\r\n\r\n    tooltip.style.left =\r\n      (state.mouse.x + 15) + 'px';\r\n\r\n\r\n    tooltip.style.top =\r\n      (state.mouse.y + 15) + 'px';\r\n\r\n\r\n    tooltip.classList.add('visible');\r\n\r\n  }\r\n\r\n\r\n\r\n  function hideTooltip() {\r\n\r\n    tooltip.classList.remove('visible');\r\n\r\n  }\r\n\r\n\r\n\r\n  function updateSpeedButtons() {\r\n\r\n    btnSlower.disabled =\r\n      state.speedMultiplier <= 0.25;\r\n\r\n\r\n    btnFaster.disabled =\r\n      state.speedMultiplier >= 3;\r\n\r\n  }\r\n\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ ANIMATION LOOP\r\n  \/\/ ============================================\r\n\r\n\r\n  function animationLoop() {\r\n\r\n\r\n    drawCanvas(\r\n      state.width,\r\n      state.height\r\n    );\r\n\r\n\r\n    if (!state.isPaused) {\r\n\r\n\r\n      if (\r\n        Math.random() <\r\n        CONFIG.particleSpawnRate\r\n      ) {\r\n\r\n        state.particles.push(\r\n          new Particle()\r\n        );\r\n\r\n      }\r\n\r\n\r\n\r\n      for (\r\n        let i = state.particles.length - 1;\r\n        i >= 0;\r\n        i--\r\n      ) {\r\n\r\n        if (\r\n          !state.particles[i].update()\r\n        ) {\r\n\r\n          state.particles.splice(i,1);\r\n\r\n        }\r\n\r\n      }\r\n\r\n    }\r\n\r\n\r\n\r\n    const hoverInfo =\r\n      checkHover();\r\n\r\n\r\n    if (hoverInfo) {\r\n\r\n      showTooltip(hoverInfo);\r\n\r\n    } else {\r\n\r\n      hideTooltip();\r\n\r\n    }\r\n\r\n\r\n    requestAnimationFrame(\r\n      animationLoop\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ EVENT LISTENERS\r\n  \/\/ ============================================\r\n\r\n\r\n  window.addEventListener(\r\n    'resize',\r\n    handleResize\r\n  );\r\n\r\n\r\n\r\n  canvas.addEventListener(\r\n    'mousemove',\r\n    (e)=>{\r\n\r\n      const rect =\r\n        canvas.getBoundingClientRect();\r\n\r\n\r\n      state.mouse.x =\r\n        e.clientX - rect.left;\r\n\r\n\r\n      state.mouse.y =\r\n        e.clientY - rect.top;\r\n\r\n    }\r\n  );\r\n\r\n\r\n  canvas.addEventListener(\r\n    'mouseleave',\r\n    hideTooltip\r\n  );\r\n\r\n\r\n\r\n  btnPause.addEventListener(\r\n    'click',\r\n    ()=>{\r\n\r\n      state.isPaused =\r\n        !state.isPaused;\r\n\r\n\r\n      btnPause.classList.toggle(\r\n        'active',\r\n        state.isPaused\r\n      );\r\n\r\n\r\n      btnPause.textContent =\r\n        state.isPaused\r\n        ? '\u25b6'\r\n        : '\u23f8';\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  btnSlower.addEventListener(\r\n    'click',\r\n    ()=>{\r\n\r\n      state.speedMultiplier =\r\n        Math.max(\r\n          0.25,\r\n          state.speedMultiplier - 0.25\r\n        );\r\n\r\n\r\n      updateSpeedButtons();\r\n\r\n\r\n      speedIndicator.textContent =\r\n        `Speed: ${state.speedMultiplier}\u00d7`;\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  btnFaster.addEventListener(\r\n    'click',\r\n    ()=>{\r\n\r\n      state.speedMultiplier =\r\n        Math.min(\r\n          3,\r\n          state.speedMultiplier + 0.25\r\n        );\r\n\r\n\r\n      updateSpeedButtons();\r\n\r\n\r\n      speedIndicator.textContent =\r\n        `Speed: ${state.speedMultiplier}\u00d7`;\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  btnClear.addEventListener(\r\n    'click',\r\n    ()=>{\r\n\r\n      state.particles = [];\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  \/\/ ============================================\r\n  \/\/ INITIALIZATION\r\n  \/\/ ============================================\r\n\r\n\r\n  handleResize();\r\n\r\n  updateSpeedButtons();\r\n\r\n  animationLoop();\r\n\r\n\r\n})();\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2f5522f e-flex e-con-boxed e-con e-parent\" data-id=\"2f5522f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b013ce3 elementor-widget elementor-widget-html\" data-id=\"b013ce3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<section class=\"instrument-section\">\r\n\r\n<div class=\"container\">\r\n\r\n<h2>Instrument Overview<\/h2>\r\n\r\n<div class=\"intro-text\">\r\n\r\n<p>\r\nThe <strong>ICONE<\/strong> project relies on a set of advanced scientific instruments,\r\neach dedicated to the production and analysis of specific data. This complementarity\r\nmakes it possible to explore a wide range of phenomena at different scales and through\r\nmultiple experimental approaches.\r\n<\/p>\r\n\r\n<p>\r\nThese instruments have been developed through contributions from the <strong>LLB<\/strong>\r\nand research teams. They reflect strong scientific momentum and bring together\r\nmultidisciplinary expertise.\r\n<\/p>\r\n\r\n<p>\r\nCombined within a single infrastructure, they provide a unique scientific environment.\r\n<\/p>\r\n\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-grid\">\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/presto\/\">\r\n<h3>PRESTO<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> High-flux versatile powder and single-crystal diffractometer.<br>\r\n<strong>Applications:<\/strong> Magnetism, phase transitions, multifunctional materials,\r\nsuperconductors, kinetics.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/precis\/\">\r\n<h3>PR\u00c9CIS<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> High-resolution diffractometer.<br>\r\n<strong>Applications:<\/strong> Batteries, hydrogen and CO\u2082 storage,\r\ncrystallography, phase transitions.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/lambda\/\">\r\n<h3>LAMBDA<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Small-angle neutron scattering (SANS).<br>\r\n<strong>Applications:<\/strong> Polymers, emulsions, gels, biomaterials, metallurgy.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/nansans\/\">\r\n<h3>NANOSANS<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> SANS \/ WANS.<br>\r\n<strong>Applications:<\/strong> Polymer crystallization, self-assembly.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/context\/\">\r\n<h3>CONTEXT<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Stress and texture analysis.<br>\r\n<strong>Applications:<\/strong> Welds, composites, grain orientation.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/inedit\">\r\n<h3>INEDIT<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Direct inelastic neutron scattering.<br>\r\n<strong>Applications:<\/strong> Liquids, biology, local dynamics.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/fantastic\/\">\r\n<h3>FANTASTIC<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Indirect inelastic neutron scattering.<br>\r\n<strong>Applications:<\/strong> Phonons, quantum magnetism.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\".\/prems\/\">\r\n<h3>PREMS<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Neutron reflectometry.<br>\r\n<strong>Applications:<\/strong> Interfaces, spintronics.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\"\/tulip\/\">\r\n<h3>TULIP<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Imaging.<br>\r\n<strong>Applications:<\/strong> Energy, cultural heritage, aerospace.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\"\/golf\">\r\n<h3>GOLF<\/h3>\r\n<p>\r\n<strong>Type:<\/strong> Gamma activation analysis.<br>\r\n<strong>Applications:<\/strong> Environment, geosciences.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\"\/lite-hf\">\r\n<h3>LiTe-HF<\/h3>\r\n<p>\r\nHigh-flux testing and development beamline.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"instrument-card\">\r\n<a href=\"\/lite-hr\">\r\n<h3>LiTe-HR<\/h3>\r\n<p>\r\nHigh-resolution testing and development beamline.\r\n<\/p>\r\n<\/a>\r\n<\/div>\r\n\r\n\r\n<\/div>\r\n\r\n<\/div>\r\n\r\n<\/section>\r\n<style>\r\n\r\n.instrument-section{\r\n\r\n    width:100%;\r\n    background:transparent;\r\n    padding:70px 0;\r\n\r\n}\r\n\r\n\r\n\/* MAIN CONTAINER *\/\r\n\r\n.instrument-section .container{\r\n\r\n    max-width:1100px;\r\n    margin:auto;\r\n    padding:50px;\r\n    background:#ffffff;\r\n    border-radius:18px;\r\n    box-shadow:0 8px 24px rgba(0,0,0,.08);\r\n    font-family:Arial, Helvetica, sans-serif;\r\n    line-height:1.8;\r\n    color:#333;\r\n\r\n}\r\n\r\n\r\n\/* TITLE *\/\r\n\r\n.instrument-section h2{\r\n\r\n    font-size:34px;\r\n    font-weight:800;\r\n    color:#0d5cab;\r\n    margin-bottom:30px;\r\n    padding-left:18px;\r\n    border-left:6px solid #0d5cab;\r\n\r\n}\r\n\r\n\r\n\/* INTRODUCTION *\/\r\n\r\n.intro-text p{\r\n\r\n    font-size:17px;\r\n    color:#444;\r\n    text-align:justify;\r\n    margin-bottom:18px;\r\n\r\n}\r\n\r\n\r\n\/* INSTRUMENT GRID *\/\r\n\r\n.instrument-grid{\r\n\r\n    display:grid;\r\n    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));\r\n    gap:20px;\r\n    margin-top:35px;\r\n\r\n}\r\n\r\n\r\n\/* CARDS *\/\r\n\r\n.instrument-card{\r\n\r\n    background:#f8fbff;\r\n    border:1px solid #dce8f5;\r\n    border-radius:14px;\r\n    box-shadow:0 4px 14px rgba(0,0,0,.05);\r\n    transition:.25s ease;\r\n\r\n}\r\n\r\n\r\n\/* HOVER EFFECT *\/\r\n\r\n.instrument-card:hover{\r\n\r\n    transform:translateY(-5px);\r\n    box-shadow:0 10px 25px rgba(0,0,0,.12);\r\n    border-color:#0d5cab;\r\n\r\n}\r\n\r\n\r\n\/* LINKS *\/\r\n\r\n.instrument-card a{\r\n\r\n    display:block;\r\n    padding:22px;\r\n    text-decoration:none;\r\n    color:inherit;\r\n\r\n}\r\n\r\n\r\n\/* INSTRUMENT TITLES *\/\r\n\r\n.instrument-card h3{\r\n\r\n    color:#0d5cab;\r\n    font-size:21px;\r\n    font-weight:800;\r\n    margin-bottom:12px;\r\n\r\n}\r\n\r\n\r\n\/* TEXT *\/\r\n\r\n.instrument-card p{\r\n\r\n    color:#444;\r\n    font-size:15px;\r\n    line-height:1.6;\r\n    margin:0;\r\n\r\n}\r\n\r\n\r\n\/* RESPONSIVE *\/\r\n\r\n@media(max-width:768px){\r\n\r\n\r\n    .instrument-section{\r\n\r\n        padding:40px 15px;\r\n\r\n    }\r\n\r\n\r\n    .instrument-section .container{\r\n\r\n        padding:30px 20px;\r\n\r\n    }\r\n\r\n\r\n    .instrument-section h2{\r\n\r\n        font-size:26px;\r\n\r\n    }\r\n\r\n\r\n    .instrument-grid{\r\n\r\n        grid-template-columns:1fr;\r\n\r\n    }\r\n\r\n\r\n}\r\n\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>General Information about ICONE The ICONE Facility The ICONE facility will provide French researchers and engineers with the capability to explore materials using neutrons. It is based on: \u2013 A high-current (80 mA), low-energy (25 MeV) proton accelerator \u2013 Two neutron production and moderation targets: High Flux (2 ms @ 20 Hz) and High Resolution [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-585","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/pages\/585","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/comments?post=585"}],"version-history":[{"count":18,"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/pages\/585\/revisions"}],"predecessor-version":[{"id":3571,"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/pages\/585\/revisions\/3571"}],"wp:attachment":[{"href":"https:\/\/www.icone-neutron.fr\/en\/wp-json\/wp\/v2\/media?parent=585"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}