﻿*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-bottom:0;padding-top:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-origin:border-box;border-color:#6b7280;border-width:1px;color:#2563eb;display:inline-block;flex-shrink:0;height:1rem;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:1rem;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{background-color:currentColor;border-color:transparent}[type=checkbox]:indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{background-color:currentColor;border-color:transparent}[type=file]{background:unset;border-color:inherit;border-radius:0;border-width:0;font-size:unset;line-height:inherit;padding:0}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mr-4{margin-right:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-5{margin-top:1.25rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-0\.5{height:.125rem}.h-10{height:2.5rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[72px\]{height:72px}.h-full{height:100%}.min-h-\[85vh\]{min-height:85vh}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-\[72px\]{width:72px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.scroll-mt-24{scroll-margin-top:6rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(2rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(2rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-arkeo-dark{--tw-border-opacity:1;border-color:rgb(10 37 30/var(--tw-border-opacity,1))}.border-arkeo-dark\/40{border-color:rgba(10,37,30,.4)}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-green-100{--tw-border-opacity:1;border-color:rgb(220 252 231/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-arkeo-dark{--tw-bg-opacity:1;background-color:rgb(10 37 30/var(--tw-bg-opacity,1))}.bg-arkeo-dark\/40{background-color:rgba(10,37,30,.4)}.bg-arkeo-light{--tw-bg-opacity:1;background-color:rgb(244 246 243/var(--tw-bg-opacity,1))}.bg-arkeo-light\/50{background-color:rgba(244,246,243,.5)}.bg-arkeo-light\/60{background-color:rgba(244,246,243,.6)}.bg-arkeo-light\/95{background-color:rgba(244,246,243,.95)}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-teal-50{--tw-bg-opacity:1;background-color:rgb(240 253 250/var(--tw-bg-opacity,1))}.bg-teal-500{--tw-bg-opacity:1;background-color:rgb(20 184 166/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/15{background-color:hsla(0,0%,100%,.15)}.object-cover{-o-object-fit:cover;object-fit:cover}.object-left{-o-object-position:left;object-position:left}.p-2{padding:.5rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-14{padding-bottom:3.5rem;padding-top:3.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-20{padding-bottom:5rem;padding-top:5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pl-1{padding-left:.25rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pr-0{padding-right:0}.pr-5{padding-right:1.25rem}.pt-16{padding-top:4rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.font-serif{font-family:Playfair Display,Georgia,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-\[0\.95rem\]{font-size:.95rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.normal-case{text-transform:none}.italic{font-style:italic}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.2\]{line-height:1.2}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-arkeo-dark{--tw-text-opacity:1;color:rgb(10 37 30/var(--tw-text-opacity,1))}.text-arkeo-dark\/40{color:rgba(10,37,30,.4)}.text-arkeo-dark\/70{color:rgba(10,37,30,.7)}.text-arkeo-green{--tw-text-opacity:1;color:rgb(44 76 59/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-teal-600{--tw-text-opacity:1;color:rgb(13 148 136/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/25{color:hsla(0,0%,100%,.25)}.text-white\/30{color:hsla(0,0%,100%,.3)}.text-white\/40{color:hsla(0,0%,100%,.4)}.text-white\/50{color:hsla(0,0%,100%,.5)}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/90{color:hsla(0,0%,100%,.9)}.underline{text-decoration-line:underline}.placeholder-gray-300::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(209 213 219/var(--tw-placeholder-opacity,1))}.placeholder-gray-300::placeholder{--tw-placeholder-opacity:1;color:rgb(209 213 219/var(--tw-placeholder-opacity,1))}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.brightness-0{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-0{--tw-brightness:brightness(0)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-sm,.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.focus-within\:border-arkeo-dark:focus-within{--tw-border-opacity:1;border-color:rgb(10 37 30/var(--tw-border-opacity,1))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-arkeo-dark:hover{--tw-border-opacity:1;border-color:rgb(10 37 30/var(--tw-border-opacity,1))}.hover\:bg-black:hover{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:text-arkeo-dark:hover{--tw-text-opacity:1;color:rgb(10 37 30/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-arkeo-dark:focus{--tw-border-opacity:1;border-color:rgb(10 37 30/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-arkeo-dark\/30:focus{--tw-ring-color:rgba(10,37,30,.3)}@media (min-width:640px){.sm\:mb-14{margin-bottom:3.5rem}.sm\:mb-16{margin-bottom:4rem}.sm\:block{display:block}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-0{gap:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-16{padding-bottom:4rem;padding-top:4rem}.sm\:py-28{padding-bottom:7rem;padding-top:7rem}.sm\:pt-20{padding-top:5rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:768px){.md\:col-span-3{grid-column:span 3/span 3}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:mb-0{margin-bottom:0}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-1\/2{width:50%}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:justify-end{justify-content:flex-end}.md\:gap-8{gap:2rem}.md\:object-center{-o-object-position:center;object-position:center}.md\:p-10{padding:2.5rem}.md\:py-24{padding-bottom:6rem;padding-top:6rem}.md\:pr-12{padding-right:3rem}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-28{top:7rem}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:aspect-auto{aspect-ratio:auto}.lg\:h-\[480px\]{height:480px}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:gap-14{gap:3.5rem}.lg\:gap-16{gap:4rem}.lg\:self-start{align-self:flex-start}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-5xl{font-size:3rem;line-height:1}}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/Inter-300-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/Inter-300-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/Inter-400-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/Inter-400-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/Inter-500-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/Inter-500-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/Inter-600-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/Inter-600-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/PlayfairDisplay-400-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/PlayfairDisplay-400-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/PlayfairDisplay-400-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/PlayfairDisplay-400-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/PlayfairDisplay-700-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/PlayfairDisplay-700-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}


    body {
      font-family: 'Inter', sans-serif;
    }
    h1, h2, h3, .font-serif {
      font-family: 'Playfair Display', serif;
    }
    .text-arkeo-dark { color: #0a251e; }
    .bg-arkeo-dark { background-color: #0a251e; }
    .bg-arkeo-light { background-color: #f4f6f3; }
    /* Utilitaire absent du build Tailwind purgé — colonnes égales pour les cartes du formulaire */
    .grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

    .nav-dropdown-wrap { position: relative; }
    .nav-dropdown-btn { display: inline-flex; align-items: center; gap: 5px; background: none; padding: 0 0 4px; border: none; border-bottom: 2px solid transparent; font-family: inherit; font-size: .875rem; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; color: #6b7280; cursor: pointer; transition: color .15s ease, opacity .15s ease; }
    .nav-dropdown-btn:hover { color: #0a251e; }
    .nav-dropdown-chevron { width: 13px; height: 13px; flex-shrink: 0; transition: transform .2s cubic-bezier(.4,0,.2,1); }
    .nav-dropdown-btn[aria-expanded="true"] .nav-dropdown-chevron { transform: rotate(180deg); }
    .nav-dropdown-panel { position: absolute; top: calc(100% + 14px); left: 50%; transform: translateX(-50%) translateY(-6px); min-width: 210px; background: rgba(244,246,243,.96); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); border-radius: 6px; box-shadow: 0 8px 24px -4px rgba(10,37,30,.12), 0 40px 48px -12px rgba(10,37,30,.06); padding: 6px 0; opacity: 0; pointer-events: none; transition: opacity .18s ease-out, transform .18s ease-out; z-index: 200; }
    .nav-dropdown-panel.nav-dropdown-open { opacity: 1; pointer-events: auto; transform: translateX(-50%) translateY(0); }
    .nav-dropdown-panel a { display: block; padding: 9px 18px; font-size: .75rem; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; color: #6b7280; white-space: nowrap; transition: color .12s, background .12s; }
    .nav-dropdown-panel a:hover { color: #0a251e; background: rgba(10,37,30,.04); }
    .nav-dropdown-panel a[aria-current="page"] { color: #0a251e; font-weight: 700; }
    .mobile-diag-toggle { background: none; border: none; cursor: pointer; font-family: inherit; text-align: left; }
    .mobile-diag-chevron { transition: transform .2s cubic-bezier(.4,0,.2,1); }
    .mobile-diag-panel { background: rgba(10,37,30,.03); }
    .mobile-diag-item { display: block; padding: 10px 16px 10px 28px; font-size: .8rem; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; color: #6b7280; transition: color .12s; }
    .mobile-diag-item:hover { color: #0a251e; }
    .mobile-diag-item--active { color: #0a251e; font-weight: 700; }

    /* ── Cartes de choix (étape 1 : projet & type de bien) ── */
    .choice-card{
      position:relative;
      display:flex; flex-direction:column; align-items:center; justify-content:flex-start;
      gap:10px; padding:18px 8px 15px;
      border:1px solid #e5e7eb; border-radius:14px;
      background:#fff; cursor:pointer; text-align:center;
      transition:border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
    }
    .choice-card:hover{ background:#f9fafb; border-color:#d1d5db; }
    .choice-icon{
      display:flex; align-items:center; justify-content:center;
      width:46px; height:46px; border-radius:13px;
      background:#f4f6f3; color:#9ca3af;
      transition:background-color .2s ease, color .2s ease, box-shadow .2s ease;
    }
    .choice-icon svg{ width:23px; height:23px; }
    .choice-title{
      font-size:13px; line-height:1.15; font-weight:700; color:#6b7280;
      min-height:2.3em;                 /* réserve 2 lignes → toutes les cartes alignées */
      display:flex; align-items:center; justify-content:center;
      letter-spacing:-0.01em;
      transition:color .2s ease;
    }
    .choice-card.is-selected{
      border:2px solid #0a251e;
      padding:17px 7px 14px;            /* compense le +1px de bordure : aucun saut de mise en page */
      background:#f4f6f3;
      box-shadow:0 8px 22px rgba(10,37,30,.10);
    }
    .choice-card.is-selected .choice-icon{
      background:#2c4c3b; color:#fff;        /* vert forêt : se distingue du bouton CTA quasi-noir */
      box-shadow:0 4px 12px rgba(44,76,59,.30);
    }
    .choice-card.is-selected .choice-title{ color:#0a251e; }
    @media (prefers-reduced-motion: reduce){
      .choice-card, .choice-icon, .choice-title{ transition:none; }
    }

    /* ── Titre étape 1 (Inter : harmonieux avec la carte) ── */
    .form-accent{
      display:inline-flex; align-items:center; gap:5px;
      background:rgba(10,37,30,0.07);
      color:#0a251e;
      font-weight:600;
      font-size:0.78rem;
      padding:2px 8px 2px 6px;
      border-radius:4px;
      white-space:nowrap;
      vertical-align:middle;
      line-height:1.6;
    }
    .devis-title{
      font-family:'Inter', sans-serif;
      font-weight:700;
      font-size:1.5rem;            /* 24px */
      line-height:1.2;
      letter-spacing:-0.01em;
      color:#0a251e;
      text-wrap:balance;
      margin-bottom:1.25rem;
    }
    .devis-title .accent{
      position:relative;
      white-space:nowrap;          /* "2 minutes" jamais coupé */
    }
    .devis-title .accent::after{
      content:"";
      position:absolute;
      left:0; right:0; bottom:-3px;
      height:2px;
      background:#2c4c3b;          /* vert accent : cohérent avec les chips sélectionnés */
      border-radius:2px;
    }

    /* ── Bandeau architectural en tête de carte ── */
    .hero-form-card::before{
      content:"";
      position:absolute;
      top:0; left:0; right:0;
      height:4px;
      background:linear-gradient(90deg, #0a251e 0%, #2c4c3b 58%, #4ade80 100%);
      z-index:1;
    }

    /* ── Badge « choisi » sur la carte sélectionnée ── */
    .choice-card.is-selected::after{
      content:"";
      position:absolute;
      top:8px; right:8px;
      width:18px; height:18px;
      border-radius:50%;
      background:#2c4c3b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / 11px no-repeat;
      box-shadow:0 2px 6px rgba(44,76,59,.40);
      animation:badgePop .22s cubic-bezier(0.34,1.56,0.64,1) both;
    }
    @keyframes badgePop{
      from{ transform:scale(0); opacity:0; }
      to  { transform:scale(1); opacity:1; }
    }

    /* ── CTA dégradé (boutons de navigation du formulaire) ── */
    .btn-cta{
      position:relative;
      width:100%;
      display:flex; align-items:center; justify-content:center; gap:12px;
      padding:16px;
      border-radius:14px;
      font-weight:700; color:#fff;
      background:linear-gradient(100deg, #0a251e 0%, #1c3b2e 55%, #2c4c3b 100%);
      box-shadow:0 10px 24px -8px rgba(10,37,30,.55);
      transition:box-shadow .25s ease, transform .25s ease, filter .25s ease;
    }
    .btn-cta:hover{
      filter:brightness(1.10);
      box-shadow:0 16px 32px -10px rgba(10,37,30,.6);
      transform:translateY(-1px);
    }
    .btn-cta:active{ transform:translateY(0); }
    .btn-cta svg{ width:20px; height:20px; flex-shrink:0; transition:transform .25s cubic-bezier(0.16,1,0.3,1); }
    .btn-cta--arrow:hover svg{ transform:translateX(4px); }
    @media (prefers-reduced-motion: reduce){
      .btn-cta, .btn-cta svg{ transition:none; }
      .btn-cta:hover{ transform:none; }
      .btn-cta--arrow:hover svg{ transform:none; }
      .choice-card.is-selected::after{ animation:none; }
    }

    /* A11y : focus-visible sur labels-radio */
    .choice-card:focus-visible,
    .bien-label:focus-visible,
    .projet-label:focus-visible,
    .copro-label:focus-visible,
    .annee-label:focus-visible,
    .gaz-label:focus-visible,
    .typo-label:focus-visible {
      outline: 2px solid #0a251e;
      outline-offset: 2px;
    }

    @keyframes stepOutLeft {
      from { opacity: 1; transform: translateX(0); }
      to   { opacity: 0; transform: translateX(-22px); }
    }
    @keyframes stepInRight {
      from { opacity: 0; transform: translateX(22px); }
      to   { opacity: 1; transform: translateX(0); }
    }
    @keyframes stepOutRight {
      from { opacity: 1; transform: translateX(0); }
      to   { opacity: 0; transform: translateX(22px); }
    }
    @keyframes stepInLeft {
      from { opacity: 0; transform: translateX(-22px); }
      to   { opacity: 1; transform: translateX(0); }
    }
    @keyframes sendPress {
      0%   { transform: scale(1); }
      40%  { transform: scale(0.97); }
      100% { transform: scale(1); }
    }
    @keyframes sendTextOut {
      from { opacity: 1; transform: translateY(0); }
      to   { opacity: 0; transform: translateY(-7px); }
    }
    @keyframes sendTextIn {
      from { opacity: 0; transform: translateY(7px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    @keyframes checkDraw {
      from { stroke-dashoffset: 30; }
      to   { stroke-dashoffset: 0; }
    }
    @keyframes shakeX {
      0%, 100% { transform: translateX(0); }
      20%      { transform: translateX(-5px); }
      40%      { transform: translateX(5px); }
      60%      { transform: translateX(-3px); }
      80%      { transform: translateX(3px); }
    }
    .shake { animation: shakeX 0.35s ease-out; }
    .field-err { border-color: #ef4444 !important; }

    /* ── Hero Badge (renforcé : lisibilité + accent émeraude) ── */
    .hero-badge {
      cursor: default;
      display: inline-block;
      border-radius: 16px;
      border: none;
      padding: 2px;
      position: relative;
      background: radial-gradient(circle 80px at 80% -10%, #ffffff, #0a251e);
      margin-bottom: 24px;
      animation: heroBadgeIn 0.6s cubic-bezier(0.16,1,0.3,1) both;
    }
    .hero-badge::after {
      content: "";
      position: absolute;
      width: 65%;
      height: 60%;
      border-radius: 120px;
      top: 0;
      right: 0;
      box-shadow: 0 0 20px rgba(74,222,128,0.22);
      z-index: -1;
    }
    .hero-badge .blob1 {
      position: absolute;
      width: 70px;
      height: 100%;
      border-radius: 16px;
      bottom: 0;
      left: 0;
      background: radial-gradient(circle 60px at 0% 100%, #ffffff, rgba(255,255,255,0.35), transparent);
      box-shadow: -10px 10px 30px rgba(255,255,255,0.10);
    }
    .hero-badge .inner {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      padding: 11px 22px;
      border-radius: 14px;
      color: #fff;
      z-index: 3;
      position: relative;
      background: radial-gradient(circle 80px at 80% -50%, #1c4a3a, #0a251e);
    }
    .hero-badge .inner::before {
      content: "";
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      border-radius: 14px;
      background: radial-gradient(circle 60px at 0% 100%, rgba(255,255,255,0.08), rgba(255,255,255,0.04), transparent);
      position: absolute;
    }
    .hero-badge__text {
      position: relative;
      z-index: 1;
      color: #ffffff;
      font-size: 13px;
      font-weight: 600;
      letter-spacing: 1.4px;
      text-transform: uppercase;
      white-space: pre-wrap;
    }
    @keyframes heroBadgeIn {
      from { opacity: 0; transform: translateY(10px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    /* ── Hero premium refonte ──────────────────────── */
    @keyframes heroRise {
      from { opacity: 0; transform: translateY(16px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    .hero-title {
      font-size: clamp(3rem, 6.4vw, 5.25rem);
      line-height: 1.06;
      letter-spacing: -0.03em;
      font-weight: 400;
      color: #fff;
      text-wrap: balance;
      font-kerning: normal;
      font-feature-settings: "kern" 1, "liga" 1;
      text-rendering: optimizeLegibility;
      text-shadow: 0 2px 26px rgba(10,37,30,0.5), 0 1px 4px rgba(10,37,30,0.55);
      animation: heroRise 0.7s cubic-bezier(0.16,1,0.3,1) both;
      animation-delay: 0.05s;
    }
    .hero-lead {
      letter-spacing: 0.01em;
      text-wrap: pretty;
      text-shadow: 0 1px 18px rgba(10,37,30,0.45), 0 1px 3px rgba(10,37,30,0.5);
      animation: heroRise 0.7s cubic-bezier(0.16,1,0.3,1) both;
      animation-delay: 0.14s;
    }
    .hero-trust {
      display: flex; flex-wrap: wrap; gap: 0.6rem;
      animation: heroRise 0.7s cubic-bezier(0.16,1,0.3,1) both;
      animation-delay: 0.22s;
    }
    .hero-chip {
      display: inline-flex; align-items: center; gap: 0.5rem;
      padding: 0.55rem 0.95rem;
      border-radius: 999px;
      font-size: 0.82rem; font-weight: 600;
      color: #fff;
      background: rgba(10,37,30,0.5);
      border: 1px solid rgba(255,255,255,0.16);
    }
    .hero-chip svg { width: 1.05rem; height: 1.05rem; color: #4ade80; flex-shrink: 0; }
    /* ── Google Reviews badge (hero) ── */
    .hero-gbp {
      display:inline-flex; align-items:center; gap:12px;
      padding:11px 14px;
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.12);
      border-radius:12px;
      text-decoration:none;
      margin-top:1rem;
      transition:background .2s ease, border-color .2s ease;
      animation: heroRise 0.7s cubic-bezier(0.16,1,0.3,1) both;
      animation-delay: 0.28s;
    }
    .hero-gbp:hover { background:rgba(255,255,255,.11); border-color:rgba(255,255,255,.20); }
    .hero-gbp-logo { flex-shrink:0; width:26px; height:26px; }
    .hero-gbp-stars { display:flex; gap:2px; margin-bottom:2px; }
    .hero-gbp-star { width:12px; height:12px; fill:#FFC107; }
    .hero-form-card {
      position: relative;
      scroll-margin-top: 84px;
      border-radius: 1rem;
      box-shadow: 0 30px 60px -18px rgba(10,37,30,0.5), 0 0 0 1px rgba(10,37,30,0.05);
      animation: heroRise 0.7s cubic-bezier(0.16,1,0.3,1) both;
      animation-delay: 0.1s;
    }
    @media (prefers-reduced-motion: reduce) {
      .hero-badge, .hero-title, .hero-lead, .hero-trust, .hero-form-card { animation: none; }
    }

    /* ── Interactive Selector (8 panels) ────────────── */
    .diag-selector { display: flex; gap: 2px; height: 520px; }
    .diag-panel {
      flex: 1 1 0%;
      position: relative;
      overflow: hidden;
      cursor: pointer;
      transition: flex 0.7s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .diag-panel.active { flex: 8 1 0%; }
    .diag-panel .diag-img {
      position: absolute; inset: 0;
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .diag-panel.active .diag-img { transform: scale(1.05); }
    .diag-panel .diag-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(10,37,30,0.88) 0%, rgba(10,37,30,0.25) 50%, rgba(10,37,30,0.08) 100%);
      transition: background 0.5s;
    }
    .diag-panel:not(.active) .diag-overlay { background: rgba(10,37,30,0.6); }

    /* Collapsed label */
    .diag-panel .diag-collapsed {
      position: absolute; bottom: 0; left: 0; right: 0;
      padding: 1rem 0.6rem;
      color: #fff;
      display: flex; flex-direction: column; align-items: center; gap: 0.4rem;
      opacity: 1;
      transition: opacity 0.3s;
    }
    .diag-panel.active .diag-collapsed { opacity: 0; pointer-events: none; }
    .diag-collapsed .diag-badge-sm {
      width: 30px; height: 30px; border-radius: 50%; object-fit: cover; flex-shrink: 0;
    }
    .diag-collapsed .diag-short {
      font-size: 0.65rem; font-weight: 600; line-height: 1.2; text-align: center;
    }

    /* Expanded content */
    .diag-panel .diag-expanded {
      position: absolute; bottom: 0; left: 0; right: 0;
      padding: 2.5rem 2rem;
      color: #fff;
      opacity: 0;
      transform: translateY(14px);
      transition: opacity 0.5s 0.25s, transform 0.5s 0.25s;
      pointer-events: none;
    }
    .diag-panel.active .diag-expanded {
      opacity: 1; transform: translateY(0); pointer-events: auto;
    }
    .diag-expanded .diag-badge-tag {
      display: inline-block;
      font-size: 0.6rem; font-weight: 700;
      letter-spacing: 0.12em; text-transform: uppercase;
      background: rgba(255,255,255,0.12);
      backdrop-filter: blur(6px);
      padding: 0.35rem 0.85rem;
      border-radius: 999px;
      margin-bottom: 0.85rem;
    }
    .diag-expanded .diag-title-row {
      display: flex; align-items: center; gap: 0.65rem; margin-bottom: 0.65rem;
    }
    .diag-expanded .diag-badge-lg {
      width: 40px; height: 40px; border-radius: 50%; object-fit: cover; flex-shrink: 0;
    }
    .diag-expanded h3 {
      font-family: 'Playfair Display', serif;
      font-size: 1.65rem; font-weight: 700;
      line-height: 1.25; margin: 0;
    }
    .diag-expanded p {
      font-size: 0.85rem; line-height: 1.7; opacity: 0.82;
      max-width: 480px;
    }

    /* ── Mobile ── */
    @media (max-width: 767px) {
      .diag-selector { flex-direction: column; height: auto; gap: 4px; }
      .diag-panel {
        flex: 0 0 52px;
        transition: flex 0.5s cubic-bezier(0.4, 0, 0.2, 1);
      }
      .diag-panel.active { flex: 0 0 300px; }
      .diag-panel .diag-collapsed {
        flex-direction: row; align-items: center; gap: 0.6rem;
        padding: 0 1rem; top: 0; bottom: 0;
      }
      .diag-collapsed .diag-badge-sm { width: 26px; height: 26px; }
      .diag-collapsed .diag-short { font-size: 0.75rem; text-align: left; }
      .diag-expanded h3 { font-size: 1.3rem; }
      .diag-expanded { padding: 1.5rem 1.25rem; }
      .diag-expanded .diag-badge-lg { width: 32px; height: 32px; }
    }
  

  .veille-section {
    position: relative;
    background: #f4f6f3;
    overflow: hidden;
  }
  .veille-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
      radial-gradient(circle at 12% 18%, rgba(44,76,59,0.05) 0%, transparent 38%),
      radial-gradient(circle at 88% 82%, rgba(44,76,59,0.04) 0%, transparent 42%);
    pointer-events: none;
  }

  /* Eyebrow with live pulse */
  .veille-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #0a251e;
  }
  .veille-eyebrow-pulse {
    position: relative;
    width: 7px; height: 7px;
    border-radius: 50%;
    background: #d97706;
    flex-shrink: 0;
  }
  .veille-eyebrow-pulse::after {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 50%;
    background: #d97706;
    opacity: 0.5;
    animation: veillePulse 2s cubic-bezier(0.4,0,0.6,1) infinite;
  }
  @keyframes veillePulse {
    0%, 100% { transform: scale(1); opacity: 0.5; }
    50%      { transform: scale(1.7); opacity: 0; }
  }

  /* ── FEATURED CARD ───────────────────────────────── */
  .veille-feat {
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
    background:
      radial-gradient(circle at 80% 20%, rgba(217,119,6,0.18) 0%, transparent 45%),
      radial-gradient(circle at 20% 90%, rgba(44,76,59,0.6) 0%, transparent 55%),
      linear-gradient(135deg, #0a251e 0%, #143b30 60%, #0a251e 100%);
    color: #fff;
    box-shadow:
      0 25px 50px -20px rgba(10,37,30,0.45),
      0 10px 25px -10px rgba(10,37,30,0.3);
    transition: transform 0.5s cubic-bezier(0.4,0,0.2,1), box-shadow 0.5s;
  }
  .veille-feat::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
      url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
    background-size: 200px;
    pointer-events: none;
    mix-blend-mode: overlay;
  }
  .veille-feat:hover {
    transform: translateY(-3px);
    box-shadow:
      0 35px 60px -20px rgba(10,37,30,0.55),
      0 15px 30px -10px rgba(10,37,30,0.4);
  }

  .veille-feat-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    padding: 2.5rem;
  }
  @media (min-width: 768px) {
    .veille-feat-grid {
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: 3rem;
      padding: 3rem 3.5rem;
    }
  }
  @media (min-width: 1024px) {
    .veille-feat-grid {
      padding: 3.5rem 4rem;
      gap: 4rem;
    }
  }

  .veille-feat-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #fde68a;
    background: rgba(217,119,6,0.18);
    border: 1px solid rgba(245,158,11,0.4);
    padding: 0.4rem 0.85rem;
    border-radius: 999px;
    margin-bottom: 1.25rem;
  }
  .veille-feat-badge-dot {
    width: 5px; height: 5px;
    background: #fbbf24;
    border-radius: 50%;
    box-shadow: 0 0 8px #fbbf24;
  }

  .veille-feat-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 1rem;
    margin-bottom: 1.5rem;
    font-size: 0.78rem;
    color: rgba(255,255,255,0.7);
  }
  .veille-feat-date {
    font-weight: 600;
    letter-spacing: 0.04em;
    color: #fff;
  }
  .veille-feat-sep {
    width: 3px; height: 3px;
    background: rgba(255,255,255,0.4);
    border-radius: 50%;
  }
  .veille-feat-countdown {
    display: inline-flex;
    align-items: baseline;
    gap: 0.3rem;
    font-weight: 700;
    color: #fbbf24;
    letter-spacing: 0.02em;
  }
  .veille-feat-countdown-num {
    font-family: 'Playfair Display', serif;
    font-size: 1rem;
  }

  .veille-feat-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.5rem);
    line-height: 1.15;
    font-weight: 700;
    color: #fff;
    margin-bottom: 1rem;
    letter-spacing: -0.01em;
  }
  .veille-feat-title em {
    font-style: italic;
    color: #fde68a;
    font-weight: 400;
  }

  .veille-feat-body {
    font-size: 0.95rem;
    line-height: 1.7;
    color: rgba(255,255,255,0.78);
    max-width: 56ch;
    margin-bottom: 1.5rem;
  }
  .veille-feat-body strong {
    color: #fff;
    font-weight: 600;
  }

  .veille-feat-cta {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    font-weight: 600;
    color: #fde68a;
    border-bottom: 1px solid rgba(253,230,138,0.3);
    padding-bottom: 2px;
    transition: border-color 0.3s, gap 0.3s;
  }
  .veille-feat-cta:hover {
    border-color: #fde68a;
    gap: 0.7rem;
  }
  .veille-feat-cta:focus-visible {
    outline: 2px solid #fde68a;
    outline-offset: 4px;
    border-radius: 2px;
  }
  .veille-feat-cta svg { width: 14px; height: 14px; }

  /* Stat block (replaces A→G scale) */
  .veille-stat {
    position: relative;
    display: none;
    flex-shrink: 0;
    text-align: right;
    padding-left: 2rem;
    border-left: 1px solid rgba(251,191,36,0.25);
  }
  @media (min-width: 768px) {
    .veille-stat { display: block; }
  }
  .veille-stat-num {
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    font-size: clamp(2.6rem, 1.6rem + 2.4vw, 3.8rem);
    line-height: 1;
    color: #fbbf24;
    letter-spacing: -0.02em;
    text-shadow: 0 2px 16px rgba(251,191,36,0.18);
  }
  .veille-stat-num small {
    font-size: 0.55em;
    font-weight: 600;
    color: rgba(251,191,36,0.7);
    letter-spacing: 0;
    margin-left: 2px;
  }
  .veille-stat-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #fde68a;
    margin-top: 0.6rem;
  }
  .veille-stat-sub {
    font-size: 0.78rem;
    color: rgba(255,255,255,0.55);
    margin-top: 0.45rem;
    line-height: 1.4;
    max-width: 14ch;
    margin-left: auto;
  }

  /* ── TIMELINE ─────────────────────────────────── */
  .veille-tl {
    position: relative;
    padding-left: 2rem;
  }
  .veille-tl::before {
    content: '';
    position: absolute;
    left: 7px;
    top: 8px;
    bottom: 8px;
    width: 1px;
    background: linear-gradient(to bottom,
      rgba(10,37,30,0.18) 0%,
      rgba(10,37,30,0.18) 92%,
      transparent 100%);
  }

  .veille-item {
    position: relative;
    padding: 1.25rem 0 1.5rem;
    transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
  }
  .veille-item + .veille-item {
    border-top: 1px solid rgba(10,37,30,0.06);
  }
  .veille-item::before {
    content: '';
    position: absolute;
    left: -2rem;
    top: 1.65rem;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background: #f4f6f3;
    border: 2px solid #0a251e;
    transition: transform 0.35s cubic-bezier(0.4,0,0.2,1), background 0.35s;
    box-shadow: 0 0 0 4px #f4f6f3;
  }
  .veille-item:hover::before {
    background: #0a251e;
    transform: scale(1.15);
  }
  .veille-item.is-highlight::before {
    background: #f59e0b;
    border-color: #d97706;
  }
  .veille-item.is-highlight:hover::before {
    background: #d97706;
  }

  .veille-date {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #2c4c3b;
    margin-bottom: 0.55rem;
  }
  .veille-date-dot {
    width: 4px; height: 4px;
    background: #2c4c3b;
    border-radius: 50%;
  }
  .veille-item.is-highlight .veille-date {
    color: #92400e;
  }
  .veille-item.is-highlight .veille-date-dot {
    background: #d97706;
  }

  .veille-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.3rem;
    line-height: 1.3;
    font-weight: 700;
    color: #0a251e;
    margin-bottom: 0.55rem;
  }
  @media (min-width: 1024px) {
    .veille-title { font-size: 1.4rem; }
  }
  .veille-body {
    font-size: 0.92rem;
    line-height: 1.65;
    color: #475e57;
  }
  .veille-body strong {
    color: #0a251e;
    font-weight: 600;
  }

  .veille-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.85rem;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: #b45309;
    background: rgba(245,158,11,0.1);
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
  }
  .veille-tag svg {
    width: 12px; height: 12px;
  }

  /* Lead block */
  .veille-lead-rule {
    width: 36px; height: 2px;
    background: #0a251e;
    margin-bottom: 1.5rem;
    opacity: 0.85;
  }

  /* Editorial signature card (aside) */
  .veille-note {
    position: relative;
    background: #fff;
    border-radius: 1.25rem;
    padding: 2rem 2rem 1.85rem;
    border: 1px solid rgba(10,37,30,0.06);
    box-shadow: 0 4px 16px -6px rgba(10,37,30,0.08);
    overflow: hidden;
  }
  .veille-note::before {
    content: '';
    position: absolute;
    top: 0; left: 2rem;
    width: 44px; height: 3px;
    background: #2c4c3b;
    border-radius: 0 0 2px 2px;
  }
  @media (min-width: 768px) {
    .veille-note { padding: 2.25rem 2.25rem 2rem; }
  }
  .veille-note-logo {
    display: block;
    height: 52px;
    width: auto;
    margin-bottom: 1.1rem;
  }
  .veille-note-rule {
    display: block;
    width: 32px; height: 2px;
    background: #0a251e;
    opacity: 0.35;
    margin-bottom: 1rem;
  }
  .veille-note-eyebrow {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #2c4c3b;
    margin-bottom: 0.85rem;
  }
  .veille-note-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.65rem;
    line-height: 1.2;
    font-weight: 700;
    color: #0a251e;
    letter-spacing: -0.005em;
    margin-bottom: 1.1rem;
  }
  @media (min-width: 1024px) {
    .veille-note-title { font-size: 1.85rem; }
  }
  .veille-note-title em {
    font-style: italic;
    color: #2c4c3b;
    font-weight: 400;
  }
  .veille-note-body {
    font-size: 0.95rem;
    line-height: 1.7;
    color: #475e57;
    margin-bottom: 1.5rem;
  }
  .veille-note-body strong {
    color: #0a251e;
    font-weight: 600;
  }
  .veille-note-cta {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.86rem;
    font-weight: 600;
    color: #0a251e;
    border-bottom: 1px solid rgba(10,37,30,0.35);
    padding-bottom: 3px;
    transition: gap 0.3s ease, border-color 0.3s;
  }
  .veille-note-cta:hover { gap: 0.75rem; border-color: #0a251e; }
  .veille-note-cta:focus-visible {
    outline: 2px solid #0a251e;
    outline-offset: 4px;
    border-radius: 2px;
  }
  .veille-note-cta svg { width: 14px; height: 14px; }
  .veille-note-sign {
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgba(10,37,30,0.07);
    font-size: 0.78rem;
    color: #6b7e76;
    line-height: 1.5;
  }
  .veille-note-sign strong {
    color: #0a251e;
    font-weight: 600;
    display: block;
  }

  /* Reveal */
  @keyframes veilleIn {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  .veille-reveal {
    opacity: 0;
    animation: veilleIn 0.7s cubic-bezier(0.4,0,0.2,1) forwards;
  }
  .veille-reveal-1 { animation-delay: 0.05s; }
  .veille-reveal-2 { animation-delay: 0.15s; }
  .veille-reveal-3 { animation-delay: 0.25s; }
  .veille-reveal-4 { animation-delay: 0.4s; }
  .veille-reveal-5 { animation-delay: 0.5s; }
  .veille-reveal-6 { animation-delay: 0.6s; }
  .veille-reveal-7 { animation-delay: 0.7s; }

  .veille-cta:focus-visible {
    outline: 2px solid #0a251e;
    outline-offset: 4px;
    border-radius: 2px;
  }

  /* Reduced motion */
  @media (prefers-reduced-motion: reduce) {
    .veille-reveal { opacity: 1; animation: none; }
    .veille-feat,
    .veille-item,
    .veille-item::before,
    .veille-eyebrow-pulse::after,
    .veille-feat-cta { transition: none; animation: none; }
  }

  /* Responsive tightening */
  @media (max-width: 640px) {
    .veille-tl { padding-left: 1.5rem; }
    .veille-item::before { left: -1.5rem; }
    .veille-feat-grid { padding: 2rem 1.5rem; }
    .veille-feat-title { line-height: 1.2; }
  }


  /* Card Carousel (Swiper coverflow) */
  .sec-swiper {
    width: 100%;
    padding-top: 6px;
    padding-bottom: 46px;
  }
  .sec-swiper .swiper-slide {
    position: relative;
    width: 320px;
    border-radius: 1rem;
    overflow: hidden;
    background: #0a251e;
    box-shadow: 0 18px 40px -16px rgba(10,37,30,0.45);
  }
  .sec-swiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 420px;
    object-fit: cover;
  }
  .sec-swiper .swiper-slide-shadow-left,
  .sec-swiper .swiper-slide-shadow-right { background-image: none; }
  /* Légende (slide centrale) */
  .sec-cap {
    position: absolute;
    left: 0; right: 0; bottom: 0;
    padding: 2.4rem 1.1rem 1rem;
    background: linear-gradient(to top, rgba(10,37,30,0.82), transparent);
    color: #fff;
    font-size: 0.88rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
  }
  .sec-swiper .swiper-slide-active .sec-cap { opacity: 1; }
  /* Pagination + navigation (couleurs marque) */
  .sec-swiper .swiper-pagination-bullet {
    background: #0a251e;
    opacity: 0.22;
    transition: opacity 0.3s, transform 0.3s;
  }
  .sec-swiper .swiper-pagination-bullet-active {
    background: #4ade80;
    opacity: 1;
    transform: scale(1.25);
  }
  @media (prefers-reduced-motion: reduce) {
    .sec-cap { transition: none; }
  }
  .loc-pin {
    width: 10px; height: 10px;
    background: #2c4c3b;
    border-radius: 50%;
    position: relative;
    flex-shrink: 0;
  }
  .loc-pin::after {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 2px solid rgba(44,76,59,0.2);
    animation: locPulse 2.5s ease-out infinite;
  }
  @keyframes locPulse {
    0% { transform: scale(1); opacity: 0.6; }
    100% { transform: scale(2.2); opacity: 0; }
  }
  .loc-dept-line {
    width: 32px; height: 2px;
    background: linear-gradient(90deg, #2c4c3b, transparent);
    border-radius: 1px;
  }
  .loc-city {
    position: relative;
    padding-left: 14px;
    color: #4b5563;
    font-size: 0.9rem;
    line-height: 2;
  }
  .loc-city::before {
    content: '';
    position: absolute;
    left: 0; top: 50%;
    width: 5px; height: 5px;
    background: #d1d5db;
    border-radius: 50%;
    transform: translateY(-50%);
  }
  .loc-city-hq::before { background: #2c4c3b; }
  .loc-caption {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    padding: 3rem 1.5rem 1.25rem;
    background: linear-gradient(to top, rgba(10,37,30,0.7), transparent);
    color: white;
  }


  .trust-section {
    position: relative;
    background: #fff;
    overflow: hidden;
  }
  .trust-section::before,
  .trust-section::after {
    content: '';
    position: absolute;
    left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(10,37,30,0.08) 20%, rgba(10,37,30,0.08) 80%, transparent);
  }
  .trust-section::before { top: 0; }
  .trust-section::after  { bottom: 0; }

  /* Grain overlay */
  .trust-section .trust-grain {
    pointer-events: none;
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
    background-size: 160px;
    opacity: 0.4;
  }

  /* Partner card */
  .trust-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 2rem 2.5rem;
    border-radius: 1rem;
    cursor: default;
    transition: background 0.35s ease, transform 0.35s cubic-bezier(0.4,0,0.2,1), box-shadow 0.35s ease;
    position: relative;
  }
  .trust-card:hover {
    background: rgba(10,37,30,0.025);
    transform: translateY(-3px);
    box-shadow: 0 12px 32px -8px rgba(10,37,30,0.1);
  }
  .trust-logo {
    height: 48px;
    width: auto;
    max-width: 180px;
    object-fit: contain;
    filter: grayscale(100%) opacity(0.55);
    transition: filter 0.5s cubic-bezier(0.4,0,0.2,1);
  }
  .trust-card:hover .trust-logo {
    filter: grayscale(0%) opacity(1);
  }

  /* Divider — vertical on sm+, horizontal on mobile */
  .trust-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-shrink: 0;
    opacity: 0.2;
    /* Mobile: horizontal row */
    flex-direction: row;
    width: 100%;
    padding: 0 2rem;
  }
  @media (min-width: 640px) {
    .trust-divider {
      flex-direction: column;
      width: auto;
      padding: 0;
    }
  }
  .trust-divider-line {
    background: #0a251e;
    /* Mobile: horizontal line */
    height: 1px;
    width: 40px;
  }
  @media (min-width: 640px) {
    .trust-divider-line {
      width: 1px;
      height: 40px;
    }
  }
  .trust-divider-diamond {
    width: 6px; height: 6px;
    background: #0a251e;
    transform: rotate(45deg);
    flex-shrink: 0;
  }

  /* Reveal animation */
  @keyframes trustReveal {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  .trust-animate {
    opacity: 0;
    animation: trustReveal 0.7s cubic-bezier(0.4,0,0.2,1) forwards;
  }
  .trust-animate-1 { animation-delay: 0.1s; }
  .trust-animate-2 { animation-delay: 0.25s; }
  .trust-animate-3 { animation-delay: 0.18s; }

  /* Label chip */
  .trust-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(10,37,30,0.35);
    border: 1px solid rgba(10,37,30,0.1);
    padding: 0.3rem 0.75rem;
    border-radius: 999px;
  }
  .trust-chip-dot {
    width: 5px; height: 5px;
    border-radius: 50%;
    background: #2c4c3b;
    flex-shrink: 0;
  }
  .trust-descriptor {
    font-size: 0.72rem;
    color: rgba(10,37,30,0.35);
    letter-spacing: 0.04em;
    text-align: center;
    line-height: 1.5;
  }



  /* Contact modal */
  .contact-panel {
    background: #fff;
    border-radius: 1.25rem;
    max-width: 460px;
    width: 100%;
    overflow: hidden;
    box-shadow: 0 25px 80px -20px rgba(10,37,30,0.45);
    transform: translateY(20px) scale(0.98);
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
  }
  .legal-modal.legal-open .contact-panel { transform: translateY(0) scale(1); }
  .contact-header {
    background: linear-gradient(135deg, #0a251e 0%, #2c4c3b 100%);
    padding: 2rem 2rem 1.5rem;
    text-align: center;
    position: relative;
  }
  .contact-header img { height: 84px; width: auto; margin: 0 auto 0.75rem; filter: brightness(0) invert(1); }
  .contact-header h3 {
    font-family: 'Playfair Display', serif;
    color: #fff; font-size: 1.5rem; font-weight: 700; margin: 0;
  }
  .contact-header p { color: rgba(255,255,255,0.7); font-size: 0.8rem; margin-top: 0.25rem; letter-spacing: 0.05em; }
  .contact-close-btn {
    position: absolute; top: 0.75rem; right: 0.75rem;
    width: 34px; height: 34px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    color: rgba(255,255,255,0.7); cursor: pointer;
    transition: background 0.2s, color 0.2s;
  }
  .contact-close-btn:hover { background: rgba(255,255,255,0.12); color: #fff; }
  .contact-body { padding: 1.5rem 1.75rem 1.75rem; }
  .contact-row {
    display: flex; align-items: center; gap: 0.9rem;
    padding: 0.9rem 1rem;
    background: #f7f8f5;
    border: 1px solid #e8ebe4;
    border-radius: 0.75rem;
    transition: background 0.2s, border-color 0.2s, transform 0.15s;
  }
  .contact-row + .contact-row { margin-top: 0.75rem; }
  .contact-row:hover { background: #f0f3ec; border-color: #d9dfd2; }
  .contact-icon {
    flex-shrink: 0;
    width: 40px; height: 40px; border-radius: 50%;
    background: #0a251e; color: #fff;
    display: flex; align-items: center; justify-content: center;
  }
  .contact-row .contact-meta { flex: 1; min-width: 0; }
  .contact-row .contact-label {
    font-size: 0.65rem; font-weight: 700; letter-spacing: 0.12em;
    text-transform: uppercase; color: #6b7280;
  }
  .contact-row .contact-value {
    display: block; font-weight: 600; color: #0a251e;
    font-size: 0.82rem; margin-top: 0.15rem;
    text-decoration: none; white-space: nowrap;
  }
  .contact-row .contact-value:hover { color: #2c4c3b; }
  .contact-copy-btn {
    flex-shrink: 0;
    display: inline-flex; align-items: center; gap: 0.35rem;
    padding: 0.4rem 0.7rem;
    background: #fff; border: 1px solid #d9dfd2;
    border-radius: 0.5rem; color: #0a251e;
    font-size: 0.7rem; font-weight: 600;
    cursor: pointer; transition: background-color 0.2s, color 0.2s, border-color 0.2s;
  }
  .contact-copy-btn:hover { background: #0a251e; color: #fff; border-color: #0a251e; }
  .contact-copy-btn.copied { background: #16a34a; color: #fff; border-color: #16a34a; }
  .contact-foot {
    margin-top: 1.25rem; padding-top: 1rem;
    border-top: 1px solid #f0f2ec;
    text-align: center;
    font-size: 0.75rem; color: #6b7280;
  }
  .contact-foot .dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #22c55e; margin-right: 0.4rem; box-shadow: 0 0 6px rgba(34,197,94,0.8); animation: contactPulse 2s infinite; }
  @keyframes contactPulse { 0%,100%{opacity:1;} 50%{opacity:0.4;} }
