/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-sm:2px;--radius-lg:4px;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono);--color-border:var(--border-subtle)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--surface-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:1.0625rem;font-weight:300;line-height:1.65}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}h1,h2,h3,h4{font-family:var(--font-display);text-wrap:balance;font-weight:400;line-height:1.1}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}::selection{background:var(--sable-rose);color:var(--brun-nuit)}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.-top-12{top:calc(var(--spacing) * -12)}.top-0{top:0}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-4{top:calc(var(--spacing) * 4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing) * -12)}.right-0{right:0}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.-bottom-12{bottom:calc(var(--spacing) * -12)}.bottom-0{bottom:0}.-left-12{left:calc(var(--spacing) * -12)}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:var(--spacing)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:var(--spacing)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-\(--cell-size\){height:var(--cell-size)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-\[1px\]{height:1px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.min-h-0{min-height:0}.min-h-\[60px\]{min-height:60px}.min-h-svh{min-height:100svh}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:0}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[1px\]{width:1px}.w-\[100px\]{width:100px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-lg{max-width:var(--container-lg)}.max-w-max{max-width:max-content}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[2px\]{border-radius:2px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:4px}.rounded-md{border-radius:3px}.rounded-none{border-radius:0}.rounded-sm{border-radius:2px}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-l-md{border-top-left-radius:3px;border-bottom-left-radius:3px}.rounded-tl-sm{border-top-left-radius:2px}.rounded-r-md{border-top-right-radius:3px;border-bottom-right-radius:3px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-border\/50{border-color:var(--border-subtle)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border-subtle) 50%, transparent)}}.border-destructive\/50{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/50{border-color:color-mix(in oklab, var(--danger) 50%, transparent)}}.border-input{border-color:var(--border-strong)}.border-primary,.border-primary\/50{border-color:var(--surface-dark)}@supports (color:color-mix(in lab, red, red)){.border-primary\/50{border-color:color-mix(in oklab, var(--surface-dark) 50%, transparent)}}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-accent{background-color:var(--surface-secondary)}.bg-background{background-color:var(--surface-primary)}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab, red, red)){.bg-black\/80{background-color:color-mix(in oklab, var(--color-black) 80%, transparent)}}.bg-border{background-color:var(--border-subtle)}.bg-card{background-color:var(--surface-primary)}.bg-destructive{background-color:var(--danger)}.bg-foreground{background-color:var(--text-primary)}.bg-muted,.bg-muted\/50{background-color:var(--surface-secondary)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--surface-secondary) 50%, transparent)}}.bg-popover{background-color:var(--surface-primary)}.bg-primary,.bg-primary\/10{background-color:var(--surface-dark)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--surface-dark) 10%, transparent)}}.bg-primary\/20{background-color:var(--surface-dark)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--surface-dark) 20%, transparent)}}.bg-secondary{background-color:var(--surface-secondary)}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.fill-primary{fill:var(--surface-dark)}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[1px\]{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground,.text-card-foreground{color:var(--text-primary)}.text-current{color:currentColor}.text-destructive{color:var(--danger)}.text-destructive-foreground{color:var(--text-on-dark)}.text-foreground{color:var(--text-primary)}.text-muted-foreground{color:var(--text-muted)}.text-popover-foreground{color:var(--text-primary)}.text-primary{color:var(--surface-dark)}.text-primary-foreground{color:var(--text-on-dark)}.text-secondary-foreground{color:var(--text-primary)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-ring{--tw-ring-color:var(--focus)}.ring-offset-background{--tw-ring-offset-color:var(--surface-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:2rem\]{--cell-size:2rem}.paused{animation-play-state:paused}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:\!size-8:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + 1rem)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:\!p-0:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:\!p-2:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:var(--focus)}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:var(--focus)}@supports (color:color-mix(in lab, red, red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab, var(--focus) 50%, transparent)}}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:4px}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:shadow:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-\[\.toast\]\:bg-muted:is(:where(.group).toast *){background-color:var(--surface-secondary)}.group-\[\.toast\]\:bg-primary:is(:where(.group).toast *){background-color:var(--surface-dark)}.group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *){color:var(--text-muted)}.group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *){color:var(--text-on-dark)}.group-\[\.toaster\]\:border-border:is(:where(.group).toaster *){border-color:var(--border-subtle)}.group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *){background-color:var(--surface-primary)}.group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *){color:var(--text-primary)}.group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *){--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--text-primary)}.placeholder\:text-muted-foreground::placeholder{color:var(--text-muted)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:var(--spacing)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:rounded-r-md:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--surface-secondary)}.hover\:bg-destructive\/80:hover{background-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, var(--danger) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--danger) 90%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--surface-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--surface-secondary) 50%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--surface-dark)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--surface-dark) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--surface-dark)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--surface-dark) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--surface-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--surface-secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover,.hover\:text-foreground:hover{color:var(--text-primary)}.hover\:text-muted-foreground:hover{color:var(--text-muted)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:bg-accent:focus{background-color:var(--surface-secondary)}.focus\:text-accent-foreground:focus{color:var(--text-primary)}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--focus)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--focus)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--surface-primary)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-focus\:border-ring:has(:focus){border-color:var(--focus)}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:var(--focus)}@supports (color:color-mix(in lab, red, red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab, var(--focus) 50%, transparent)}}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--text-muted)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:var(--spacing)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--text-muted)}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:3px}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:var(--surface-dark)}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:var(--text-on-dark)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:var(--surface-secondary)}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:var(--text-primary)}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:3px}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:var(--surface-dark)}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:var(--text-on-dark)}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:var(--surface-dark)}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:var(--text-on-dark)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--surface-secondary)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--text-primary)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--surface-primary)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--text-primary)}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--surface-dark)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--text-on-dark)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--surface-secondary)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--text-primary)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:var(--surface-secondary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab, var(--surface-secondary) 50%, transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--surface-secondary)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--text-primary)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--text-muted)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:var(--surface-secondary)}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus,.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--surface-secondary)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--border-strong)}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}@media (width>=40rem){.sm\:mt-0{margin-top:0}.sm\:flex{display:flex}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}:where(.sm\:space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:4px}.sm\:text-left{text-align:left}}@media (width>=48rem){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:flex-row{flex-direction:row}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:var(--radius-xl)}.md\:peer-data-\[variant\=inset\]\:shadow:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2:is(:where(.peer)[data-state=collapsed]~*):is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing) * 2)}}.after\:md\:hidden:after{content:var(--tw-content)}@media (width>=48rem){.after\:md\:hidden:after{display:none}}.dark\:border-destructive:is(.dark *){border-color:var(--danger)}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--text-muted)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:var(--border-subtle)}@supports (color:color-mix(in lab, red, red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, var(--border-subtle) 50%, transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--border-subtle)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{--tw-outline-style:none;outline-style:none}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{stroke:var(--border-subtle)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--surface-secondary)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{stroke:var(--border-subtle)}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector{--tw-outline-style:none;outline-style:none}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{--tw-outline-style:none;outline-style:none}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--text-muted)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:3px;border-bottom-left-radius:3px}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:3px;border-bottom-right-radius:3px}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:top-4>svg{top:calc(var(--spacing) * 4)}.\[\&\>svg\]\:left-4>svg{left:calc(var(--spacing) * 4)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:h-3\.5>svg{height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}.\[\&\>svg\]\:w-3\.5>svg{width:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:var(--danger)}.\[\&\>svg\]\:text-foreground>svg{color:var(--text-primary)}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--text-muted)}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:calc(var(--spacing) * 7)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize,[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}.skip-link{z-index:100;background:var(--surface-dark);color:var(--text-on-dark);inset-inline-start:1rem;padding:.75rem 1rem;position:fixed;top:-100px}.skip-link:focus{top:1rem}main:focus{outline:none}.page-solid{padding-top:var(--header-h)}.site-header{z-index:40;height:var(--header-h);transition:background-color .32s var(--ease-out), box-shadow .32s var(--ease-out);top:0;position:fixed;inset-inline:0}.site-header[data-state=solid]{background:var(--surface-primary);box-shadow:0 1px 0 var(--border-subtle)}.site-header__inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;height:100%;display:grid}.site-header__tools{justify-content:flex-end;align-items:center;gap:.25rem;display:flex}.wordmark{font-family:"Marcellus", var(--font-display);letter-spacing:.34em;white-space:nowrap;padding-inline-start:.34em;font-size:1.2rem;line-height:1}.site-header .wordmark{justify-self:center}.icon-btn{width:44px;height:44px;transition:background var(--dur-ui) var(--ease-out);border-radius:2px;place-items:center;display:inline-grid;position:relative}.icon-btn:hover{background:#2b20190f}.icon-btn svg{stroke-width:1.4px;width:20px;height:20px}.site-header__menu-btn{justify-self:start;margin-inline-start:-10px}.cart-btn__count{background:var(--surface-dark);min-width:17px;height:17px;color:var(--text-on-dark);text-align:center;font-variant-numeric:tabular-nums;top:6px;border-radius:9px;padding-inline:4px;font-size:10.5px;font-weight:500;line-height:17px;position:absolute;inset-inline-end:4px}.site-nav{display:none}.lang-switch{min-height:44px;padding-inline:.6rem;font-size:.9rem}@media (width>=1024px){.site-header__inner{grid-template-columns:auto 1fr auto;gap:3rem}.site-header__menu-btn{display:none}.site-header .wordmark{grid-column:1;justify-self:start}.site-nav{letter-spacing:.04em;justify-content:center;gap:2.4rem;font-size:.93rem;display:flex}.site-nav a{transition:background-size var(--dur-ui) var(--ease-out);background:linear-gradient(currentColor,currentColor) 50% 100%/0 1px no-repeat;padding-block:.5rem}.site-nav a:hover,.site-nav a[aria-current=page]{background-size:100% 1px}}.sheet-overlay{z-index:50;background:#2b201952;position:fixed;inset:0}.sheet-overlay[data-state=open]{animation:fade-in .26s var(--ease-out)}.menu-sheet{z-index:51;background:var(--surface-primary);padding:0 var(--gutter) calc(1.5rem + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.menu-sheet[data-state=open]{animation:sheet-in .42s var(--ease-out)}.menu-sheet__top{height:var(--header-h);justify-content:space-between;align-items:center;margin-inline-end:-10px;display:flex}.menu-sheet__nav{flex-direction:column;flex:1;justify-content:center;gap:2.5rem;padding-block:2rem;display:flex}.menu-sheet__primary{gap:.4rem;display:grid}.menu-sheet__primary a{font-family:var(--font-display);font-size:var(--step-3);padding-block:.2rem;line-height:1.25;display:inline-block}.menu-sheet__sub{gap:1.5rem;margin:.1rem 0 .4rem;padding-inline-start:.15rem;display:flex}.menu-sheet__primary .menu-sheet__sub a{font-family:var(--font-body);font-size:var(--step-1);color:var(--text-muted);padding-block:.45rem}.menu-sheet__primary .menu-sheet__sub a:hover{color:var(--text-primary)}.menu-sheet__secondary{color:var(--text-muted);flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.menu-sheet__secondary a{padding-block:.6rem;display:inline-block}.menu-sheet__foot{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:1rem;font-size:.92rem;display:flex}.menu-sheet__foot a{padding-block:.6rem}.search-panel{z-index:51;background:var(--surface-primary);box-shadow:0 1px 0 var(--border-subtle);top:0;max-height:80svh;position:fixed;inset-inline:0;overflow-y:auto}.search-panel[data-state=open]{animation:drop-in .32s var(--ease-out)}.search-panel__bar{height:calc(var(--header-h) + 24px);border-bottom:1px solid var(--border-subtle);align-items:center;gap:1rem;display:flex}.search-panel__bar input{min-width:0;font-family:var(--font-display);font-size:var(--step-2);color:var(--text-primary);background:0 0;border:0;flex:1;padding-block:.5rem}.search-panel__bar input:focus{outline:none}.search-panel__bar input::placeholder{color:var(--text-muted)}.search-panel__bar:focus-within{box-shadow:inset 0 -2px 0 var(--focus)}.search-panel__results{padding-block:.5rem 1.5rem}.search-panel__results a{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;padding-block:.85rem;display:flex}.search-panel__name{font-family:var(--font-display);font-size:var(--step-1)}.search-panel__sub,.search-panel__empty{color:var(--text-muted);font-size:.92rem}.search-panel__empty{padding-block:1rem}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-in{0%{opacity:0;transform:translateY(12px)}}@keyframes drop-in{0%{opacity:0;transform:translateY(-12px)}}.site-footer{background:var(--surface-dark);color:var(--text-on-dark);padding-top:var(--space-6)}.site-footer__inner{gap:var(--space-5);display:grid}.wordmark--light{color:var(--text-on-dark)}.site-footer__tagline{font-family:var(--font-display);font-size:var(--step-3);max-width:18ch;margin-top:1.5rem;line-height:1.2}.site-footer__signature{font-family:var(--font-script);color:var(--accent-gold);margin-top:.75rem;font-size:1.6rem}.site-footer__cols{gap:var(--space-4) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.site-footer__cols h2{font-family:var(--font-body);font-size:var(--step--1);letter-spacing:.08em;color:var(--text-on-dark-muted);margin-bottom:.75rem;font-weight:400}.site-footer__cols a{padding-block:.35rem;font-size:.95rem;display:inline-block}.site-footer__cols a:hover{color:var(--accent-gold)}.site-footer__base{margin-top:var(--space-5);padding-block:1.5rem calc(1.5rem + env(safe-area-inset-bottom,0px));font-size:var(--step--1);color:var(--text-on-dark-muted);border-top:1px solid #f5ede424;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.site-footer__base .star8{color:var(--accent-gold);width:8px;height:8px}@media (width>=900px){.site-footer__inner{grid-template-columns:5fr 7fr}.site-footer__cols{grid-template-columns:repeat(4,minmax(0,1fr))}}.system-page,.chapter-pending{padding-top:var(--header-h);align-items:center;min-height:78svh;display:grid}.system-page__inner,.chapter-pending__inner{padding-block:var(--space-6);justify-items:start;gap:1.1rem;max-width:44rem;display:grid}.system-page h1,.chapter-pending h1{font-size:var(--step-4)}.system-page p:not(.eyebrow),.chapter-pending p:not(.eyebrow){color:var(--text-muted);max-width:46ch}.system-page__actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.chapter-pending__arch{aspect-ratio:3/4;border:1px solid var(--accent-decor);border-bottom:0;border-radius:50% 50% 0 0/37.5% 37.5% 0 0;width:72px;margin-bottom:.5rem}.threshold{--p:0;--pe:0;height:calc(100svh + 70vh);position:relative}@media (width>=1024px){.threshold{height:calc(100svh + 100vh)}}.threshold[data-reduced]{height:auto}.hero{isolation:isolate;background:var(--surface-plaster);height:100svh;min-height:640px;position:sticky;top:0;overflow:hidden}.threshold[data-reduced] .hero{position:relative}.hero__wall{z-index:-2;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.008 .022' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .33 0 0 0 0 .24 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E"), linear-gradient(180deg, #f4ebe1 0%, var(--plaster) 55%, #e8d9c8 100%);position:absolute;inset:0}.hero__light{z-index:-1;pointer-events:none;background:linear-gradient(108deg,#fff8ecbf 0%,#fff8ec00 34%),linear-gradient(108deg,#0000 58%,#5a42300b 61% 74%,#0000 77%);position:absolute;inset:0}.hero__grid{height:100%;padding-top:calc(var(--header-h) + .75rem);flex-direction:column;gap:.75rem;padding-bottom:1rem;display:flex}.hero__copy{gap:.55rem;max-width:34rem;display:grid}.hero__title{max-width:16ch;font-size:clamp(1.9rem,1.2rem + 2vw,3.1rem);line-height:1.06}.hero__lede{color:var(--text-muted);font-size:.98rem}.hero__ctas{flex-wrap:wrap;gap:.6rem;margin-top:.4rem;display:flex}.hero__ctas .btn{min-height:44px;padding:.6rem 1.1rem;font-size:.9rem}.hero__stage{aspect-ratio:4/5;touch-action:pan-y;flex:none;align-self:center;max-width:100%;height:clamp(250px,100svh - 470px,560px);position:relative}.hero__niche{z-index:0;transform:scale(var(--arch-k,1));will-change:transform;background:linear-gradient(90deg,#dcc8b4 0%,#e7d7c6 30%,#efe3d6 70%,#ebdccc 100%);border-radius:50% 50% 0 0/40% 40% 0 0;position:absolute;inset:1% 13% 22%;box-shadow:inset 22px 0 28px -22px #2b201938,inset 0 26px 40px -34px #2b201933}.hero__niche:after{content:"";border-radius:inherit;background:var(--surface-secondary);opacity:calc(var(--pe) * 1.6);position:absolute;inset:0}.hero__bgtype{z-index:1;font-family:"Marcellus", var(--font-display);letter-spacing:.06em;color:#2b201913;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:calc(1 - var(--pe) * 3);padding-inline-start:.06em;font-size:clamp(4rem,17vw,17rem);line-height:.8;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}.hero__object{z-index:2;position:absolute;inset:0}.hero__pedestal{filter:drop-shadow(0 14px 18px #2b20191f);width:82%;height:27%;position:absolute;bottom:0;left:9%}.hero__shadow{width:40%;height:4%;animation:shadow-settle .9s var(--ease-out) both;background:radial-gradient(closest-side,#2b201942,#2b201900);border-radius:50%;position:absolute;bottom:25.2%;left:50%;transform:translate(-50%)}@keyframes shadow-settle{0%{opacity:.35;transform:translate(-50%)scaleX(.7)}}.hero__slot{height:calc(66% * var(--frame-k));aspect-ratio:var(--frame-ar);opacity:0;transition:opacity .76s var(--ease-out), transform .9s var(--ease-out);pointer-events:none;position:absolute;bottom:26.2%;left:50%;transform:translate(-50%,26px)scale(.97)}.hero__slot[data-state=active]{opacity:1;transition-delay:.14s;transform:translate(-50%)scale(1)}.hero__slot[data-state=leaving]{opacity:0;transition-duration:.56s,.64s;transform:translate(-50%,12px)scale(.95)}.hero__index{text-align:center;justify-items:center;gap:.5rem;display:grid}.hero__now{justify-items:center;gap:.1rem;min-height:5.6rem;display:grid}.hero__step{font-size:var(--step--1);letter-spacing:.06em;color:var(--accent)}.hero__name{font-family:var(--font-display);font-size:var(--step-2);line-height:1.15}.hero__sub{color:var(--text-muted);font-size:.9rem;line-height:1.4}.hero__now .link-arrow{margin-top:.35rem;font-size:.88rem}.hero__controls{align-items:center;gap:.25rem;display:flex}.hero__ticks{align-items:center;display:flex}.hero__ticks button{place-items:center;width:26px;height:44px;display:grid}.hero__ticks button:before{content:"";background:var(--border-strong);width:18px;height:2px;transition:background var(--dur-ui) var(--ease-out), width var(--dur-ui) var(--ease-out)}.hero__ticks button[aria-current=true]:before{background:var(--text-primary);width:22px}.hero__ticks li[data-ritual=cheveux]+li[data-ritual=corps]{margin-inline-start:12px}.hero__tick-name{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.threshold .fade-on-pass{opacity:calc(1 - var(--pe) * 2.6);transform:translateY(calc(var(--pe) * 36px))}.threshold[data-passed] .fade-on-pass{visibility:hidden}@media (width>=1024px){.hero__grid{padding-top:var(--header-h);grid-template-columns:minmax(0,1.15fr) auto minmax(0,.85fr);align-items:center;gap:clamp(1.5rem,3vw,4rem);padding-bottom:2rem;display:grid}.hero__copy{align-self:center;gap:1rem}.hero__lede{font-size:1.05rem}.hero__ctas{gap:.75rem;margin-top:1rem}.hero__ctas .btn{min-height:48px;padding:.75rem 1.5rem;font-size:.95rem}.hero__stage{height:min(74svh,720px)}.hero__index{text-align:start;justify-self:end;justify-items:start;gap:2rem;width:min(100%,17rem)}.hero__now{justify-items:start}.hero__controls{grid-template-columns:auto auto 1fr;grid-template-areas:"list list list""prev next play";row-gap:1rem;width:100%;margin-inline-start:-10px;display:grid}.hero__controls>.icon-btn:first-child{grid-area:prev}.hero__ticks{flex-direction:column;grid-area:list;align-items:stretch;margin-inline-start:10px}.hero__controls>.icon-btn:nth-child(3){grid-area:next}.hero__play{grid-area:play;justify-self:end}.hero__ticks button{width:100%;height:auto;min-height:32px;color:var(--text-muted);text-align:start;align-items:center;gap:.75rem;font-size:.88rem;display:flex}.hero__ticks button:before{flex:none;width:12px;height:1px}.hero__ticks button[aria-current=true]{color:var(--text-primary)}.hero__ticks button[aria-current=true]:before{width:28px}.hero__ticks button:hover{color:var(--text-primary)}.hero__tick-name{clip:auto;width:auto;height:auto;position:static;overflow:visible}.hero__ticks li[data-ritual=cheveux]+li[data-ritual=corps]{margin-inline-start:0;margin-top:.9rem}}@media (width<=1023px) and (height<=700px){.hero__lede{display:none}}.universes{background:var(--surface-secondary);padding-block:var(--space-6) var(--space-7)}.universes__head{gap:var(--space-2);margin-bottom:var(--space-6);display:grid}.universes__title{font-size:clamp(2rem,1.5rem + 2vw,3.2rem);line-height:1.1}.universes__intro{max-width:36rem;color:var(--text-muted);font-size:1.05rem;line-height:1.65}.universes__rooms{gap:var(--space-6);display:grid}.room{gap:0;display:grid}.room__frame{aspect-ratio:4/5;transition:border-radius .7s var(--ease-out);border-radius:50% 50% 0 0/40% 40% 0 0;display:block;overflow:hidden}.room__frame .asset{transition:transform 1.1s var(--ease-out)}.room__text{transition:transform .6s var(--ease-out);gap:.45rem;margin-top:-.55em;padding-inline:.25rem;display:grid;position:relative}.room__name{font-family:var(--font-display);font-size:clamp(3.2rem,2rem + 6vw,6.5rem);line-height:1}.room__line{font-size:1.05rem}.room__meta{font-size:var(--step--1);color:var(--text-muted)}.room__cta{justify-self:start;margin-top:.5rem}@media (hover:hover) and (pointer:fine){.room:hover .room__frame{border-radius:50% 50% 0 0/34% 34% 0 0}.room:hover .room__frame .asset{transform:scale(1.035)}.room:hover .room__text{transform:translateY(-6px)}}@media (width>=768px){.universes__rooms{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(2rem,6vw,7rem)}.room[data-room=corps]{margin-top:clamp(4rem,14vw,12rem)}}.manifesto{padding-block:var(--space-7)}.manifesto__inner{gap:var(--space-3);display:grid}.manifesto__title{max-width:16ch;font-size:clamp(2.3rem,1.4rem + 4.2vw,5rem);line-height:1.04}.manifesto__body{gap:var(--space-3);max-width:36rem;color:var(--text-muted);display:grid}.manifesto__body>p{font-size:1.12rem;line-height:1.7}.manifesto__values{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:.5rem 0;font-size:.95rem;display:flex}.manifesto__values li{align-items:center;gap:.9rem;margin-inline-end:.9rem;display:inline-flex}.manifesto__body .link-arrow{color:var(--text-primary);justify-self:start}@media (width>=1024px){.manifesto__inner{grid-template-columns:7fr 5fr;align-items:end;column-gap:6vw}.manifesto__inner .eyebrow{grid-column:1/-1}.manifesto__body{padding-bottom:.6rem}}.wall{padding-block:var(--space-6) var(--space-7)}.wall__head{margin-bottom:var(--space-5);gap:1rem;display:grid}.wall__title{font-size:var(--step-4)}.wall__filters{gap:1.5rem;display:flex}.wall__filter{min-height:44px;color:var(--text-muted);transition:background-size var(--dur-ui) var(--ease-out), color var(--dur-ui) var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 calc(100% - 8px)/0 1px no-repeat;font-size:.98rem}.wall__filter[aria-pressed=true]{color:var(--text-primary);background-size:100% 1px}.wall__filter:hover{color:var(--text-primary)}.wall__count{font-size:var(--step--1);color:var(--text-muted)}.wall__grid{gap:var(--space-5) clamp(1rem, 3vw, 2.5rem);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=768px){.wall__head{grid-template-columns:1fr auto auto;align-items:end;gap:2.5rem}}@media (width>=1024px){.wall__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wall__grid>li:nth-child(2n){margin-top:var(--space-5)}}.pcard__link{gap:1rem;display:grid}.pcard__alcove{aspect-ratio:4/5;background:linear-gradient(180deg, #f1e6da, var(--plaster));transition:background .6s var(--ease-out);border-radius:50% 50% 0 0/40% 40% 0 0;display:block;position:relative;overflow:hidden}.pcard__object{height:calc(80% * var(--frame-k));aspect-ratio:var(--frame-ar);transition:transform .7s var(--ease-out);position:absolute;bottom:13%;left:50%;transform:translate(-50%)}.pcard__plinth{background:linear-gradient(90deg,#f7f0e7,#e4d4c2);width:62%;height:7%;position:absolute;bottom:6%;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #fbf7f1,0 8px 12px -8px #2b201940}.pcard__meta{gap:.15rem;display:grid}.pcard__category{font-size:var(--step--1);letter-spacing:.06em;color:var(--accent)}.pcard__name{font-family:var(--font-display);font-size:clamp(1.1rem,1rem + .5vw,1.4rem);line-height:1.2}.pcard__sub{color:var(--text-muted);font-size:.88rem;line-height:1.45}.pcard__price{font-variant-numeric:tabular-nums;margin-top:.35rem}@media (hover:hover) and (pointer:fine){.pcard__link:hover .pcard__object{transform:translate(-50%,-8px)}.pcard__link:hover .pcard__alcove{background:linear-gradient(#f6eee5,#f0e5d9)}}.ingredients{padding-block:0 var(--space-7)}.ingredients__inner{gap:var(--space-5);display:grid}.ingredients__head{gap:var(--space-2);max-width:36rem;display:grid}.ingredients__title{font-size:clamp(2rem,1.5rem + 2vw,3.2rem);line-height:1.1}.ingredients__intro{color:var(--text-muted);font-size:1.05rem;line-height:1.65}.ingredients__list{gap:0 var(--space-5);display:grid}.ingredients__item{border-top:1px solid var(--border-subtle);gap:.35rem;padding-block:1.1rem 1.3rem;display:grid}.ingredients__name{font-family:var(--font-display);color:var(--text-primary);font-size:1.75rem;line-height:1.15}.ingredients__in{color:var(--text-muted);font-size:.92rem;line-height:1.6}.ingredients__in a{color:var(--text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}@media (width>=768px){.ingredients__list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.ingredients__list{grid-template-columns:repeat(3,minmax(0,1fr))}}[data-frame]{--frame-ar:3 / 4;--frame-k:1;--ghost-w:50%;--ghost-h:84%}[data-frame=square]{--frame-ar:1 / 1;--frame-k:.82;--ghost-w:80%;--ghost-h:82%}[data-frame=wide]{--frame-ar:4 / 3;--frame-k:.68;--ghost-w:92%;--ghost-h:70%}[data-frame] .asset-pending.asset--cutout{width:var(--ghost-w);height:var(--ghost-h);position:absolute;bottom:0;left:50%;transform:translate(-50%)}[data-frame] .asset-dev-id{inset:auto 4px 4px}.frame-box{height:calc(100% * var(--frame-k));aspect-ratio:var(--frame-ar);max-width:100%;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.frame-box .asset-dev-id{display:none}.pdp__object{height:calc(70% * var(--frame-k));aspect-ratio:var(--frame-ar);position:absolute;bottom:17%;left:50%;transform:translate(-50%)}@supports not (view-transition-name:none){.pd-top,.wall__grid{animation:fallback-enter .42s var(--ease-out) both}}@keyframes fallback-enter{0%{opacity:0;transform:translateY(8px)}}.pd-top{grid-template-columns:minmax(0,1fr);display:grid}.pd-top__visual{height:clamp(300px,44svh,440px);position:relative}.niche{isolation:isolate;position:absolute;inset:0;overflow:hidden;container-type:size}.niche__wall{background:linear-gradient(100deg, #fff8ec99 0%, #fff8ec00 46%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.008 .022' numOctaves='3' seed='11'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .33 0 0 0 0 .24 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E"), linear-gradient(180deg, #f2e8dd 0%, var(--surface-plaster) 60%, #e9dccc 100%);position:absolute;inset:0}.niche__recess{background:linear-gradient(90deg,#d8c3ae 0%,#e4d3c1 22%,#ecdfd1 60%,#f1e6da 100%);border-radius:50% 50% 0 0/9cqh 9cqh 0 0;width:62cqh;max-width:82cqw;position:absolute;top:9cqh;bottom:17cqh;left:50%;transform:translate(-50%);box-shadow:inset 3cqh 0 4cqh -2.4cqh #2b201933,inset 0 3.4cqh 4cqh -3cqh #2b201929,inset -1px 0 #fffaf3b3}.niche__sill{background:linear-gradient(#f8f1e8 0 18%,#e7d8c7 18%,#d9c6b2 100%);width:74cqh;max-width:94cqw;height:3.6cqh;position:absolute;bottom:13.4cqh;left:50%;transform:translate(-50%);box-shadow:0 2.4cqh 3cqh -1.6cqh #2b201938}.niche__shadow{width:30cqh;height:2.4cqh;animation:niche-settle .9s var(--ease-out) .18s both;background:radial-gradient(closest-side,#2b201947,#2b201900);border-radius:50%;position:absolute;bottom:16.4cqh;left:50%;transform:translate(-50%)}@keyframes niche-settle{0%{opacity:.3;transform:translate(-50%)scaleX(.72)}}.niche__object{z-index:1}.pd .pdp__info.pd-buy{padding:1.25rem var(--gutter) 2.5rem;display:block}.pd-crumbs ol{font-size:var(--step--1);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.25rem .6rem;display:flex}.pd-crumbs li+li:before{content:"/";color:var(--border-strong);margin-inline-end:.6rem}.pd-crumbs a{align-items:center;gap:.45rem;min-height:32px;display:inline-flex}.pd-crumbs a:hover{color:var(--text-primary)}.pd-crumbs__arrow{width:15px;height:15px}.pd-crumbs li:not(:first-child){display:none}.pd-buy__eyebrow{margin-top:.9rem}.pd-buy__name{margin-top:.35rem;font-size:clamp(2.1rem,1.6rem + 2vw,3.3rem);line-height:1.04}.pd-buy__designation{color:var(--text-muted);margin-top:.35rem;font-size:1.02rem}.pd-buy__price{letter-spacing:.01em;font-variant-numeric:tabular-nums;margin-top:.9rem;font-size:1.3rem;font-weight:400}.pd-buy__lead{max-width:42ch;color:var(--text-primary);margin-top:.5rem}.pd-buy__action{margin-top:1.4rem}.pd-buy__row{gap:.75rem;display:flex}.pd-buy__row .pd-buy__cta{white-space:nowrap;flex:1;place-items:center;min-width:0;min-height:52px;padding-inline:1rem;display:grid;overflow:hidden}.pd-buy__cta-label{transition:opacity .2s var(--ease-out);grid-area:1/1;align-items:center;gap:.5rem;display:inline-flex}.pd-buy__cta-label[aria-hidden=true]{opacity:0}.pd-buy__cta-done svg{width:17px;height:17px}.pd-buy__feedback{opacity:0;height:2rem;transition:opacity .24s var(--ease-out);align-items:center;display:flex}.pd-buy__feedback[data-visible]{opacity:1}.pd-buy__view{text-underline-offset:3px;font-size:.9rem;text-decoration:underline}.pd-buy__help{color:var(--text-muted);margin-top:1.2rem;font-size:.92rem}.pd-buy__help a{color:var(--text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}.pd-buy__info{border-top:1px solid var(--border-subtle);color:var(--text-muted);gap:.35rem;margin-top:1.2rem;padding-top:1rem;font-size:.9rem;display:grid}.pd-buy__info a{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px;padding-block:.3rem;display:inline-block}.qty{border:1px solid var(--border-strong);border-radius:2px;flex:none;grid-template-columns:44px 2.4rem 44px;align-items:center;height:52px;display:inline-grid}.qty--sm{grid-template-columns:36px 2rem 36px;height:38px}.qty__btn{place-items:center;height:100%;display:grid}.qty__btn svg{stroke-width:1.5px;width:15px;height:15px}.qty__btn:disabled{opacity:.3;cursor:default}.qty__btn:not(:disabled):hover{background:#2b20190d}.qty__value{text-align:center;font-variant-numeric:tabular-nums}@media (width>=1024px){.pd-top{min-height:calc(100svh - var(--header-h));grid-template-columns:minmax(0,55fr) minmax(0,45fr);align-items:center}.pd-top__visual{height:clamp(620px, calc(100svh - var(--header-h)), 940px)}.pd .pdp__info.pd-buy{padding:3rem var(--gutter) 3rem clamp(2.5rem, 5vw, 6rem);max-width:36rem}.pd-crumbs li:not(:first-child){display:list-item}.pd-crumbs{margin-bottom:2.6rem}.pd-buy__eyebrow{margin-top:0}.pd-buy__name{margin-top:.8rem}.pd-buy__designation{margin-top:.6rem;font-size:1.1rem}.pd-buy__price{margin-top:1.8rem;font-size:1.45rem}.pd-buy__lead{margin-top:.8rem}.pd-buy__action{margin-top:2.2rem}.pd-buy__info{margin-top:2rem}}.pd-h2{font-size:var(--step-3)}.pd-h3{font-size:var(--step-1)}.pd-note{font-size:var(--step--1);color:var(--text-muted)}[data-reveal-ready] [data-reveal]{transition:opacity .8s var(--ease-out), transform .9s var(--ease-out)}[data-reveal-ready] [data-reveal]:not([data-revealed]){opacity:0;transform:translateY(18px)}.pd-benefits{gap:var(--space-4);padding-block:var(--space-6);display:grid}.pd-benefits__list{display:grid}.pd-benefits__list li{font-family:var(--font-display);border-top:1px solid var(--border-subtle);max-width:30ch;padding-block:1.4rem;font-size:clamp(1.4rem,1.1rem + 1.4vw,2.3rem);line-height:1.22}.pd-benefits__list li:last-child{border-bottom:1px solid var(--border-subtle)}.pd-benefits__media{margin-top:var(--space-4);max-width:22rem}.pd-editorial{max-width:1600px;margin-inline:auto}.pd-usage{background:var(--surface-secondary);padding-block:var(--space-6)}.pd-usage__inner{gap:var(--space-5);display:grid}.pd-usage__label{margin-top:var(--space-3);font-size:var(--step--1);color:var(--text-muted)}.pd-usage__phase{font-family:var(--font-display);font-size:var(--step-3);line-height:1.1}.pd-phasebar{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;max-width:26rem;margin-top:1rem;display:grid}.pd-phasebar li{color:var(--text-muted);border-top:2px solid #2b201924;padding-top:.6rem;font-size:.8rem;line-height:1.3}.pd-phasebar li[aria-current=step]{color:var(--text-primary);border-top-color:var(--text-primary)}.pd-usage__facts{margin-top:var(--space-4);flex-wrap:wrap;gap:1rem 2.5rem;display:flex}.pd-usage__facts dt{font-size:var(--step--1);color:var(--text-muted)}.pd-usage__facts dd{font-family:var(--font-display);font-size:1.3rem}.pd-usage__steps{counter-reset:step;display:grid}.pd-usage__steps li{counter-increment:step;font-family:var(--font-display);border-top:1px solid #2b201924;grid-template-columns:2.4rem minmax(0,1fr);align-items:baseline;gap:.6rem;padding-block:1.1rem;font-size:clamp(1.15rem,1rem + .6vw,1.5rem);line-height:1.32;display:grid}.pd-usage__steps li:before{content:counter(step);font-family:var(--font-body);font-size:var(--step--1);color:var(--accent)}.pd-ingredients{gap:var(--space-5);padding-block:var(--space-6);display:grid}.pd-ingredients__main .pd-note{margin-top:.6rem}.pd-ingredients__list{margin-top:var(--space-4);columns:2;column-gap:2rem}.pd-ingredients__list li{break-inside:avoid;border-top:1px solid var(--border-subtle);font-family:var(--font-display);align-items:center;gap:.8rem;padding-block:.7rem;font-size:1.08rem;line-height:1.3;display:flex}.pd-ingredients__media{flex:none;width:3rem}.pd-ingredients__inci{margin-top:var(--space-3);color:var(--text-muted);font-size:.95rem;line-height:1.7}.pd-ingredients__aside{background:var(--surface-plaster);scroll-margin-top:calc(var(--header-h) + 1rem);align-self:start;padding:1.5rem}.pd-ingredients__aside h3{scroll-margin-top:calc(var(--header-h) + 1.5rem)}.pd-ingredients__precautions{gap:.5rem;margin-top:.8rem;display:grid}.pd-ingredients__precautions li{padding-inline-start:1.1rem;font-size:.95rem;position:relative}.pd-ingredients__precautions li:before{content:"";background:var(--accent-decor);inset-inline-start:0;width:.5rem;height:1px;position:absolute;top:.72em}.pd-specs{border-top:1px solid var(--border-subtle);gap:.6rem;margin-top:1.4rem;padding-top:1rem;display:grid}.pd-specs div{justify-content:space-between;gap:1rem;font-size:.9rem;display:flex}.pd-specs dt{color:var(--text-muted)}.pd-specs dd{text-align:end}.pd-map{background:var(--surface-dark);color:var(--text-on-dark);padding-block:var(--space-6)}.pd-map .pd-h2{color:var(--text-on-dark)}.pd-map__intro{max-width:46ch;color:var(--text-on-dark-muted);margin-top:.8rem}.pd-map__phases{margin-top:var(--space-5);gap:0;display:grid}.pd-map__phase{border-top:1px solid #f5ede429;align-content:start;gap:.9rem;padding-block:1.5rem 2.6rem;display:grid;position:relative}.pd-map__phase[aria-current=step]{border-top-color:var(--accent-gold)}.pd-map__phase-name{font-family:var(--font-display);font-size:var(--step-2)}.pd-map__phase[aria-current=step] .pd-map__phase-name{color:var(--accent-gold)}.pd-map__shared{color:var(--text-on-dark-muted);max-width:30ch;font-size:.9rem}.pd-map__products{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.pd-map__products[data-count="1"]{grid-template-columns:minmax(0,1fr);max-width:50%}.pd-map__card{height:100%;transition:border-color var(--dur-ui) var(--ease-out);border:1px solid #f5ede424;gap:.35rem;padding:.9rem;display:grid}a.pd-map__card:hover{border-color:#f5ede466}.pd-map__product[data-current] .pd-map__card{border-color:var(--accent-gold);background:#c9a22712}.pd-map__thumb{aspect-ratio:3/4;width:56px;margin-bottom:.3rem;display:block;position:relative}.pd-map__thumb .asset-pending.asset--cutout{background:linear-gradient(90deg,#f5ede41f,#f5ede40d);box-shadow:inset 0 0 0 1px #f5ede41f}.pd-map__thumb .asset-dev-id{display:none}.pd-map__name{font-family:var(--font-display);font-size:1.1rem;line-height:1.2}.pd-map__zones{color:var(--text-on-dark-muted);font-size:.85rem}.pd-map__here{font-size:var(--step--1);color:var(--accent-gold);margin-top:.2rem}.pd-map__next{color:var(--accent-gold);inset-inline-start:0;position:absolute;bottom:.6rem}.pd-map__next svg,[dir=rtl] .pd-map__next svg.flip-rtl{width:18px;height:18px;transform:rotate(90deg)}@media (width>=900px){.pd-map__phases{grid-template-columns:var(--map-cols,1fr 1fr 1fr);gap:2.5rem}.pd-map__phase{padding-bottom:1.5rem}.pd-map__products[data-count="1"]{max-width:none}.pd-map__next{top:1.6rem;bottom:auto;inset-inline:auto -1.9rem}.pd-map__next svg{transform:none}[dir=rtl] .pd-map__next svg.flip-rtl{transform:scaleX(-1)}}.pd-continue{padding-block:var(--space-6) var(--space-7)}.pd-continue__grid{margin-top:var(--space-4);gap:var(--space-4) clamp(1rem, 3vw, 2.5rem);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=1024px){.pd-benefits{padding-block:var(--space-7) var(--space-6);grid-template-columns:4fr 8fr;column-gap:clamp(2rem,6vw,7rem)}.pd-usage{padding-block:var(--space-7)}.pd-usage__inner{grid-template-columns:5fr 7fr;column-gap:clamp(2rem,6vw,7rem)}.pd-ingredients{padding-block:var(--space-7);grid-template-columns:8fr 4fr;column-gap:clamp(2rem,5vw,6rem)}.pd-ingredients__list{columns:3}.pd-map{padding-block:var(--space-7)}.pd-continue__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=420px){.pd-ingredients__list{columns:1}}.pd-sticky{z-index:30;padding:.7rem max(1rem, env(safe-area-inset-right,0px)) calc(.7rem + env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));background:var(--surface-primary);box-shadow:0 -1px 0 var(--border-subtle);transition:transform .32s var(--ease-out);inset-inline:0;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:fixed;bottom:0;transform:translateY(105%)}.pd-sticky[data-visible]{transform:none}.pd-sticky__text{min-width:0;display:grid}.pd-sticky__name{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-size:1.02rem;line-height:1.2;overflow:hidden}.pd-sticky__price{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.92rem}.pd-sticky__cta{flex:none;min-height:48px;padding-inline:1.2rem;font-size:.92rem}.pd-sticky__cta svg{width:16px;height:16px}html[data-sticky-bar] .site-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}@media (width>=1024px){.pd-sticky{display:none}html[data-sticky-bar] .site-footer{padding-bottom:0}}.cart-panel{z-index:51;background:var(--surface-primary);max-height:88svh;padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -1px 0 var(--border-subtle);inset-inline:0;flex-direction:column;display:flex;position:fixed;bottom:0}.cart-panel[data-state=open]{animation:cart-up .36s var(--ease-out)}@keyframes cart-up{0%{opacity:0;transform:translateY(24px)}}.cart-panel__head{padding:.75rem var(--gutter);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.cart-panel__title{font-size:var(--step-2)}.cart-panel__empty{padding:2rem var(--gutter) 2.5rem;color:var(--text-muted);justify-items:start;gap:1rem;display:grid}.cart-panel__lines{padding-inline:var(--gutter);flex:1;overflow-y:auto}.cart-line{border-bottom:1px solid var(--border-subtle);grid-template-columns:52px minmax(0,1fr) auto;align-items:start;gap:1rem;padding-block:1rem;display:grid}.cart-line__thumb{aspect-ratio:3/4;display:block;position:relative}.cart-line__thumb .asset-dev-id{display:none}.cart-line__body{gap:.2rem;display:grid}.cart-line__name{font-family:var(--font-display);font-size:1.05rem;line-height:1.2}.cart-line__unit{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.85rem}.cart-line__row{align-items:center;gap:.5rem;margin-top:.4rem;display:flex}.cart-line__remove{width:38px;height:38px;color:var(--text-muted);place-items:center;display:grid}.cart-line__remove svg{width:15px;height:15px}.cart-line__total{font-variant-numeric:tabular-nums}.cart-panel__foot{padding:1rem var(--gutter) 1.25rem;border-top:1px solid var(--border-subtle);gap:.6rem;display:grid}.cart-panel__subtotal{font-variant-numeric:tabular-nums;justify-content:space-between;font-size:1.05rem;display:flex}.cart-panel__note{color:var(--text-muted);font-size:.85rem}.cart-panel__soon{border:1px solid var(--border-strong);text-align:center;color:var(--text-muted);padding:.9rem 1rem;font-size:.92rem}.cart-panel__checkout{width:100%;margin-top:.3rem}@media (width>=768px){.cart-panel{width:min(440px,100vw);max-height:none;box-shadow:-1px 0 0 var(--border-subtle);inset-inline:auto 0;top:0;bottom:0}[dir=rtl] .cart-panel{inset-inline:0 auto}.cart-panel[data-state=open]{animation:cart-in .36s var(--ease-out)}@keyframes cart-in{0%{opacity:0;transform:translate(24px)}}}.cart-btn__count[data-pulse]{animation:badge-pulse .52s var(--ease-out)}@keyframes badge-pulse{40%{transform:scale(1.28)}}@media (prefers-reduced-motion:reduce){[data-reveal-ready] [data-reveal]:not([data-revealed]){opacity:1;transform:none}}@media (width<=400px){.qty{grid-template-columns:40px 2rem 40px}.pd-buy__row .pd-buy__cta{padding-inline:.75rem;font-size:.9rem}.pd-buy__cta-done svg{display:none}}.ritual{--noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.008 .022' numOctaves='3' seed='11'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .33 0 0 0 0 .24 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");--shadow-ink:#2b201933;--cut:.9rem;overflow-x:clip}.ritual--cheveux{background:var(--surface-primary)}.ritual--corps{background:var(--surface-hammam)}.ritual__title{font-family:var(--font-display);letter-spacing:.005em;font-size:clamp(2.6rem,1.7rem + 3.8vw,5.2rem);line-height:1}.ritual__lede{max-width:33rem;font-size:var(--step-1);color:var(--text-muted);margin-top:1rem;line-height:1.5}.ritual-object,.rh-bay__obj,.rb-bench__obj{aspect-ratio:var(--frame-ar);display:block;position:relative}.ritual-object .asset-dev-id,.rh-bay__obj .asset-dev-id,.rb-bench__obj .asset-dev-id{display:none}.ritual-name{font-family:var(--font-display);font-size:var(--step-3);line-height:1.08}.ritual-role{color:var(--text-muted);letter-spacing:.01em;margin-top:.4rem}.ritual-zones{font-size:var(--step--1);flex-wrap:wrap;gap:.2rem .75rem;margin-top:1.1rem;display:flex}.ritual-zones__label,.ritual-usage__label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.ritual-zones__label{align-self:center}.ritual-usage{margin-top:1.6rem}.ritual-usage__steps{gap:.55rem;max-width:34rem;margin-top:.7rem;display:grid}.ritual-usage__steps li{padding-inline-start:1.6rem;line-height:1.55;position:relative}.ritual-usage__steps li:before{content:"";background:var(--accent-decor);inset-inline-start:0;width:.85rem;height:1px;position:absolute;top:.8em}.ritual-usage__facts{flex-wrap:wrap;gap:.75rem 2.25rem;margin-top:1.1rem;display:flex}.ritual-usage__facts dt{font-size:var(--step--1);color:var(--text-muted)}.ritual-usage__facts dd{font-family:var(--font-display);font-size:var(--step-1)}.ritual-discover{min-height:44px;margin-top:1.8rem}.ritual-band{width:min(100% - 2 * var(--gutter), var(--container) - 2 * var(--gutter));aspect-ratio:4/5;margin:clamp(2.5rem,6vw,4.5rem) auto;position:relative;overflow:hidden}.ritual-band--texture{aspect-ratio:3/2;width:100%}.rb-step__macro{width:7rem;margin-top:1.4rem}@media (width>=720px){.ritual-band:not(.ritual-band--texture){aspect-ratio:16/9}}.ritual__phases{position:relative}.ritual-rail{display:none}@media (width>=1200px){.ritual__phases{grid-template-columns:11.5rem minmax(0,1fr);display:grid}.ritual-rail{top:calc(var(--header-h) + 32vh);grid-area:1/1;align-self:start;padding-inline-start:var(--gutter);display:block;position:sticky}.ritual__chapters{grid-area:1/2;min-width:0}}.ritual-rail ol{border-inline-start:1px solid var(--border-subtle);gap:.9rem;padding-inline-start:1rem;display:grid;position:relative}.ritual-rail ol:before{content:"";width:1px;height:calc((var(--rail-i) + 1) / var(--rail-n) * 100%);background:var(--accent-decor);opacity:0;transition:height .52s var(--ease-out), opacity .32s var(--ease-out);inset-inline-start:-1px;position:absolute;top:0}.ritual-rail[data-started] ol:before{opacity:1}.ritual-rail a{min-height:32px;font-size:var(--step--1);color:var(--text-muted);transition:color var(--dur-ui) var(--ease-out);gap:.1rem;display:grid}.ritual-rail a:hover,.ritual-rail a[aria-current]{color:var(--text-primary)}.ritual-rail__mark{letter-spacing:.14em;font-size:.72rem}.ritual-rail a[aria-current] .ritual-rail__mark{color:var(--accent)}.rh-bay__recess:before,.rh-stage__recess:before,.rh-single__recess{background:var(--noise), linear-gradient(90deg, var(--plaster-shade) 0%, var(--plaster) 26%, var(--surface-primary) 78%, var(--stone-light) 100%);box-shadow:inset 1.6rem 0 2rem -1.4rem var(--shadow-ink), inset 0 1.4rem 1.8rem -1.5rem #2b201926;clip-path:polygon(0 var(--cut), var(--cut) 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%)}.rh-bay__recess:after,.rh-stage__recess:after,.rh-single__sill{content:"";background:linear-gradient(180deg, var(--stone-light) 0 30%, var(--plaster-shade) 100%);height:7px;box-shadow:0 8px 12px -8px var(--shadow-ink);position:absolute;bottom:-7px;left:-3%;right:-3%}.rh-open{padding-top:calc(var(--header-h) + clamp(1rem, 3vw, 2.25rem));background:linear-gradient(100deg, #fff8ec99 0%, #fff8ec00 46%), var(--noise), linear-gradient(180deg, var(--surface-primary) 0%, var(--surface-plaster) 100%);padding-bottom:clamp(3.5rem,8vw,6rem);position:relative}.rh-open .ritual__title{margin-top:clamp(1.5rem,4vw,3rem)}.rh-wall{--recess-h:11.5rem;flex-wrap:wrap;align-items:flex-end;gap:2.4rem .9rem;margin-top:clamp(2.5rem,6vw,4.5rem);display:flex;position:relative}.rh-bay{flex:40%;min-width:0}.rh-bay[data-count="2"]{flex-basis:100%}.rh-bay__link{color:inherit;gap:1.35rem;display:grid}.rh-bay__recess{isolation:isolate;height:var(--recess-h);justify-content:center;align-items:flex-end;gap:10%;display:flex;position:relative}.rh-bay__recess:before{content:"";z-index:-1;position:absolute;inset:0}.rh-bay__obj{height:calc(74% * var(--frame-k))}.rh-bay__label{gap:.15rem;display:grid}.rh-bay__phase{font-family:var(--font-display);font-size:var(--step-2);line-height:1.15}.rh-bay__names{font-size:var(--step--1);color:var(--text-muted)}.rh-bay__link:hover .rh-bay__phase{text-underline-offset:.25em;text-decoration:underline;text-decoration-thickness:1px}@media (width>=720px){.rh-wall{--recess-h:clamp(13rem, 25vw, 21rem);flex-wrap:nowrap;gap:clamp(1rem,2.4vw,2rem)}.rh-bay,.rh-bay[data-count="2"]{flex-basis:0}.rh-wall:before{content:"";left:calc(-1 * var(--gutter));right:calc(-1 * var(--gutter));top:calc(var(--recess-h) + 7px);background:var(--border-strong);transform-origin:0;height:1px;position:absolute}}.rh-phase{scroll-margin-top:var(--header-h);border-top:1px solid var(--border-subtle);padding-block:clamp(4rem,9vw,7.5rem)}.rh-head__title{font-family:var(--font-display);font-size:var(--step-4);margin-top:.45rem;line-height:1.04}.rh-head__note{max-width:26rem;color:var(--text-muted);margin-top:.7rem}.rh-shared__grid{gap:2.75rem;display:grid}.rh-stage{margin-top:2.25rem}.rh-stage__recess{isolation:isolate;justify-content:center;align-items:flex-end;gap:12%;height:clamp(14rem,60vw,25rem);display:flex;position:relative}.rh-stage__recess:before{content:"";z-index:-1;position:absolute;inset:0}.rh-stage__item{transform-origin:50% 100%;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.rh-stage__obj{height:calc(76% * var(--frame-k))}.rh-stage__caption{white-space:nowrap;font-size:var(--step--1);color:var(--text-muted);position:absolute;top:calc(100% + 1rem)}.rh-zones{font-size:var(--step--1);flex-wrap:wrap;gap:.5rem 1.6rem;margin-top:3.4rem;display:flex}.rh-zones li{transition:color .5s var(--ease-out);align-items:center;gap:.6rem;display:inline-flex}.rh-zones__mark{background:var(--accent-decor);width:2.6rem;height:2px;transition:width .6s var(--ease-out), background-color .5s var(--ease-out)}.rh-text+.rh-text{border-top:1px solid var(--border-subtle);margin-top:3.25rem;padding-top:3.25rem}.rh-single__grid{gap:2.25rem;display:grid}.rh-single__visual{isolation:isolate;height:clamp(14rem,64vw,29rem);position:relative}.rh-single__recess{z-index:-1;position:absolute;inset:26% 0 0}[data-frame-kind=tall] .rh-single__recess{inset:0 16%}.rh-single__sill{bottom:-7px}[data-frame-kind=tall] .rh-single__sill{left:13%;right:13%}.rh-single__obj{height:calc(78% * var(--frame-k));position:absolute;bottom:0;left:50%;transform:translate(-50%)}[data-frame-kind=wide] .rh-single__obj{height:calc(100% * var(--frame-k))}@media (width>=1024px){.rh-shared__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(3rem,6vw,6rem)}.rh-stage__recess{height:clamp(15rem,44svh,25rem)}.rh-text{flex-direction:column;justify-content:center;min-height:68svh;display:flex}.rh-text+.rh-text{margin-top:0}.rh-shared__texts{padding-top:6rem}.rh-single__grid{grid-template-rows:auto 1fr;grid-template-columns:repeat(12,minmax(0,1fr));gap:2rem clamp(2rem,4vw,4.5rem)}.rh-single__visual{grid-row:1/3;height:clamp(20rem,62svh,33rem)}[data-frame-kind=wide] .rh-head,[data-frame-kind=wide] .rh-single__text{grid-column:8/-1}[data-frame-kind=wide] .rh-single__visual{grid-area:1/1/3/8}[data-frame-kind=tall] .rh-head,[data-frame-kind=tall] .rh-single__text{grid-column:1/7}[data-frame-kind=tall] .rh-single__visual{grid-column:7/-1}[data-frame-kind=tall] .rh-single__obj{height:70%}.rh-head{grid-row:1;align-self:end}.rh-single__text{grid-row:2}}@media (width>=1024px) and (prefers-reduced-motion:no-preference){.rh-shared__stage{top:calc(var(--header-h) + 1.5rem);position:sticky}.rh-stage__obj{transform-origin:50% 100%;transition:opacity .6s var(--ease-out), transform .7s var(--ease-out)}.rh-stage__item:not([data-active]) .rh-stage__obj{opacity:.4;transform:scale(.93)}.rh-stage__item[data-active] .rh-stage__caption{color:var(--text-primary)}.rh-zones li:not([data-on]){color:var(--text-muted)}.rh-zones li:not([data-on]) .rh-zones__mark{background:var(--border-strong);width:1.2rem;height:1px}}@media (prefers-reduced-motion:no-preference){.rh-wall:before{animation:rh-draw 1.3s var(--ease-out) .15s both}.rh-bay{animation:rh-rise .9s var(--ease-out) both}.rh-bay:nth-child(2){animation-delay:.14s}.rh-bay:nth-child(3){animation-delay:.28s}.rh-single__sill{transition:transform 1.1s var(--ease-out);transform-origin:0}[data-reveal-ready] .rh-single__visual:not([data-revealed]) .rh-single__sill{transform:scaleX(0)}}@keyframes rh-draw{0%{transform:scaleX(0)}}@keyframes rh-rise{0%{opacity:0;transform:translateY(14px)}}.rb-bench:before,.rb-scene__vault,.ritual--corps .ritual-final__thumb{background:var(--noise), linear-gradient(90deg, var(--hammam-shade) 0%, var(--hammam-wall) 20%, var(--hammam-light) 64%, var(--hammam-light) 100%);box-shadow:inset 2.4rem 0 2.8rem -2rem #2b201942,inset 0 2.2rem 2.6rem -2rem #2b201938}.rb-bench:after,.rb-scene__bench{background:linear-gradient(180deg, var(--stone-light) 0 22%, var(--stone) 22%, var(--hammam-shade) 100%);box-shadow:0 1.2rem 1.6rem -1rem #2b201942}.rb-open{isolation:isolate;padding-top:calc(var(--header-h) + clamp(1rem, 3vw, 2.25rem));padding-bottom:clamp(3.5rem,8vw,6rem);position:relative;overflow:hidden}.rb-open__room{z-index:-1;position:absolute;inset:0}.rb-open__back{background:radial-gradient(ellipse 60% 50% at 24% 6%, #fff6ea8c, #fff6ea00), var(--noise), linear-gradient(180deg, var(--hammam-wall) 0%, var(--hammam-light) 100%);transform:translateY(calc(var(--v,0) * 36px));position:absolute;inset:-8% 0}.rb-open__vault{width:min(58%,46rem);height:74%;transform:translateY(calc(var(--v,0) * 18px));inset-inline-end:-12%;background:linear-gradient(90deg,#2b20190b,#2b201900 70%);border-radius:6rem 6rem 0 0;position:absolute;top:6%}@media (width<=899px){.rb-open__vault{display:none}}.rb-open .ritual__title{margin-top:clamp(1.5rem,4vw,3rem)}.rb-bench{--seat-h:clamp(8rem, 24vw, 15rem);--vault-pad:clamp(2.75rem, 8vw, 5.5rem);isolation:isolate;margin-top:calc(var(--vault-pad) + clamp(2rem, 5vw, 3.5rem));grid-template-columns:repeat(3,minmax(0,1fr));padding-inline:clamp(.25rem,3vw,3rem);display:grid;position:relative}.rb-bench:before{content:"";left:0;right:0;top:calc(-1 * var(--vault-pad));height:calc(var(--vault-pad) + var(--seat-h));border-radius:var(--vault-pad) var(--vault-pad) 0 0;z-index:-1;position:absolute}.rb-bench:after{content:"";left:-2%;right:-2%;top:var(--seat-h);z-index:-1;height:1.1rem;position:absolute}.rb-bench__link{color:inherit;display:grid}.rb-bench__seat{height:var(--seat-h);justify-content:center;align-items:flex-end;display:flex}.rb-bench__obj{height:calc(84% * var(--frame-k));max-width:92%}.rb-bench__label{text-align:center;justify-items:center;gap:.15rem;padding:2.2rem .25rem 0;display:grid}.rb-bench__num{font-family:var(--font-display);font-size:var(--step-1)}.rb-bench__phase{font-family:var(--font-display);font-size:var(--step-2);line-height:1.15}.rb-bench__names{font-size:var(--step--1);color:var(--text-muted)}.rb-bench__link:hover .rb-bench__phase{text-underline-offset:.25em;text-decoration:underline;text-decoration-thickness:1px}.rb-step{scroll-margin-top:var(--header-h);padding-block:clamp(3.5rem,8vw,6.5rem)}.rb-step__grid{gap:1.75rem;display:grid}.rb-step__title{font-family:var(--font-display);font-size:var(--step-4);align-items:baseline;gap:.9rem;line-height:1.04;display:flex}.rb-step__num{color:var(--accent);font-size:.56em}.rb-step__line{max-width:30rem;color:var(--text-muted)}.rb-scene{isolation:isolate;border-radius:var(--radius-lg);height:clamp(15rem,68vw,31rem);position:relative;overflow:hidden}.rb-scene__back{background:radial-gradient(ellipse 70% 60% at 30% 10%, #fff6ea80, #fff6ea00), var(--noise), linear-gradient(180deg, var(--hammam-wall), var(--hammam-shade));transform:translateY(calc(var(--v,0) * -30px));position:absolute;inset:-12% 0}.rb-scene__vault{transform:translateY(calc(var(--v,0) * -12px));border-radius:clamp(2.5rem,7vw,4.5rem) clamp(2.5rem,7vw,4.5rem) 0 0;position:absolute;inset:11% 13% 17%}.rb-scene__bench{height:8%;position:absolute;bottom:9%;left:5%;right:5%}.rb-scene__shadow{width:calc(58% * var(--frame-k) + 10%);background:radial-gradient(closest-side,#2b20194d,#2b201900);border-radius:50%;height:4%;position:absolute;bottom:15.5%;left:50%;transform:translate(-50%)}.rb-scene__obj{z-index:1;height:calc(76% * var(--frame-k));position:absolute;bottom:17%;left:50%;transform:translate(-50%)}@media (width>=1024px){.rb-step__grid{grid-template-rows:auto auto 1fr;grid-template-columns:repeat(12,minmax(0,1fr));gap:1.75rem clamp(2rem,4vw,4.5rem)}.rb-scene{grid-row:1/4;height:clamp(22rem,66svh,34rem)}.rb-step__title{grid-row:1;align-self:end}.rb-step__line{grid-row:2;align-self:start}.rb-step__text{grid-row:3}[data-side=start] .rb-scene{grid-column:1/8}[data-side=start] .rb-step__title,[data-side=start] .rb-step__line,[data-side=start] .rb-step__text{grid-column:8/-1}[data-side=end] .rb-scene{grid-column:6/-1}[data-side=end] .rb-step__title,[data-side=end] .rb-step__line,[data-side=end] .rb-step__text{grid-column:1/6}}@media (prefers-reduced-motion:no-preference){.rb-bench__step{animation:rb-settle 1.1s var(--ease-out) both}.rb-bench__step:nth-child(2){animation-delay:.16s}.rb-bench__step:nth-child(3){animation-delay:.32s}.rb-scene__vault,.rb-scene__obj,.rb-scene__shadow{transition:opacity 1s var(--ease-out), transform 1.1s var(--ease-out)}.rb-scene__obj,.rb-scene__shadow{transition-delay:.22s}[data-reveal-ready] .rb-scene:not([data-revealed]) .rb-scene__vault{opacity:.4;transform:translateY(18px)scale(1.03)}[data-reveal-ready] .rb-scene:not([data-revealed]) .rb-scene__obj{opacity:0;transform:translate(-50%,22px)}[data-reveal-ready] .rb-scene:not([data-revealed]) .rb-scene__shadow{opacity:0}[data-reveal-ready] .rb-step__text[data-reveal]{transition-delay:.26s}}@keyframes rb-settle{0%{opacity:0;transform:translateY(20px)}}.ritual-final{border-top:1px solid var(--border-subtle);padding-block:clamp(4.5rem,10vw,8rem)}.ritual--cheveux .ritual-final{background:var(--noise), linear-gradient(180deg, var(--surface-primary), var(--surface-plaster))}.ritual-final__title{font-family:var(--font-display);font-size:var(--step-4);text-align:center;line-height:1.06}.ritual-final__line{text-align:center;max-width:34rem;font-size:var(--step-1);color:var(--text-muted);margin:.9rem auto 0}.ritual-final__sequence{font-family:var(--font-display);font-size:var(--step-2);color:var(--text-primary);margin-bottom:.35rem;display:block}.ritual-final__after{display:block}.ritual-final__phases{gap:2.5rem;margin-top:clamp(2.5rem,6vw,4rem);display:grid}.ritual-final__phase{border-top:1px solid var(--border-strong);padding-top:1.1rem;position:relative}.ritual-final__phase-name{font-family:var(--font-display);font-size:var(--step-2);align-items:baseline;gap:.7rem;display:flex}.ritual-final__mark{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.ritual-final__products{gap:1rem;margin-top:1.25rem;display:grid}.ritual-final__card{color:inherit;grid-template-rows:auto auto 1fr;grid-template-columns:5.5rem minmax(0,1fr);align-items:start;gap:.15rem 1rem;display:grid}.ritual-final__thumb{aspect-ratio:4/5;background:var(--noise), linear-gradient(90deg, var(--plaster-shade) 0%, var(--plaster) 30%, var(--stone-light) 100%);box-shadow:inset 1rem 0 1.4rem -1rem var(--shadow-ink);grid-row:1/4;display:block;position:relative}.ritual-final__thumb .ritual-object{height:calc(78% * var(--frame-k));max-width:92%;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.ritual-final__name{font-family:var(--font-display);font-size:var(--step-1);line-height:1.2}.ritual-final__sub{font-size:var(--step--1);color:var(--text-muted)}.ritual-final__cta{font-size:var(--step--1);border-bottom:1px solid;place-self:end start;margin-top:.5rem}.ritual-final__card:hover .ritual-final__cta{color:var(--accent)}.ritual-final__next{display:none}.ritual-final__more{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.25rem 2rem;margin-top:clamp(2.75rem,6vw,4rem);display:flex}@media (width>=900px){.ritual-final__phases{grid-template-columns:var(--final-cols);gap:clamp(1.5rem,3vw,3rem)}.ritual-final__products{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:clamp(1rem,2vw,1.75rem)}.ritual-final__card{grid-template-rows:none;grid-template-columns:minmax(0,1fr);row-gap:.3rem}.ritual-final__thumb{aspect-ratio:auto;grid-row:auto;height:clamp(12rem,19vw,16.5rem);margin-bottom:.7rem}.ritual-final__thumb .ritual-object{transition:transform .5s var(--ease-out)}.ritual-final__card:hover .ritual-final__thumb .ritual-object{transform:translate(-50%)translateY(-4px)}[data-arrows] .ritual-final__next{width:1.2rem;color:var(--accent-decor);top:50%;place-items:center;display:grid;position:absolute;inset-inline-end:calc(clamp(1.5rem,3vw,3rem)/-2 - .6rem)}.ritual-final__next svg{width:1.1rem;height:1.1rem}}@media (prefers-reduced-motion:reduce){.rb-open__back,.rb-open__vault,.rb-scene__back,.rb-scene__vault{transform:none}.ritual-rail ol:before{transition:none}}.info{--noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.008 .022' numOctaves='3' seed='11'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .33 0 0 0 0 .24 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");--shadow-ink:#2b201933;--cut:.9rem;padding-bottom:clamp(3.5rem,8vw,6rem);overflow-x:clip}.crumbs ol{font-size:var(--step--1);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.25rem .6rem;display:flex}.crumbs li+li:before{content:"/";color:var(--border-strong);margin-inline-end:.6rem}.crumbs a{align-items:center;min-height:32px;display:inline-flex}.crumbs a:hover,.crumbs [aria-current]{color:var(--text-primary)}.info-open{padding-top:calc(var(--header-h) + clamp(1rem, 3vw, 2rem));border-bottom:1px solid var(--border-subtle);background:linear-gradient(100deg, #fff8ec99 0%, #fff8ec00 46%), var(--noise), linear-gradient(180deg, var(--surface-primary) 0%, var(--surface-plaster) 100%);padding-bottom:clamp(2.5rem,6vw,4rem)}.info-open__inner{gap:0;display:grid}.info-open__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-top:clamp(1.5rem,4vw,2.75rem);font-size:.75rem}.info-open__title{max-width:22ch;font-family:var(--font-display);margin-top:clamp(1.5rem,4vw,2.75rem);font-size:clamp(2.4rem,1.7rem + 3vw,4.4rem);line-height:1.04}.info-open__eyebrow+.info-open__title{margin-top:.6rem}.info-open__lede{max-width:38rem;font-size:var(--step-1);color:var(--text-muted);margin-top:1rem;line-height:1.5}.info-open__media{max-width:28rem;margin-top:2rem}.info-section{padding-block:clamp(3rem,7vw,5.5rem)}.info-section+.info-section{border-top:1px solid var(--border-subtle)}.info-section--plaster{background:var(--noise), linear-gradient(180deg, var(--surface-plaster), var(--surface-primary))}.info-section__lede{color:var(--text-muted);margin-top:.6rem}.info-h2{font-family:var(--font-display);font-size:var(--step-3);line-height:1.1}.info-h3{font-family:var(--font-display);font-size:var(--step-2);line-height:1.2}.info-cta{border-top:1px solid var(--border-subtle)}.info-cta__inner{text-align:center;justify-items:center;gap:1.5rem;padding-top:clamp(3rem,7vw,5rem);display:grid}.info-cta__title{font-family:var(--font-display);font-size:var(--step-3)}.info-cta__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem 2rem;display:flex}.hub__entries{gap:clamp(2.5rem,5vw,3.5rem);padding-top:clamp(2.5rem,6vw,4.5rem);display:grid}.hub__entries--compact{padding-top:2rem}@media (width>=900px){.hub__entries{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem)}}.ritual-entry{color:inherit;gap:1.4rem;display:grid}.ritual-entry__recess{isolation:isolate;aspect-ratio:2;--entry-x:36cqi;justify-content:center;align-items:flex-end;gap:4%;padding-inline:6%;display:flex;position:relative;container-type:inline-size}[data-ritual=cheveux] .ritual-entry__recess{--entry-x:26cqi}.ritual-entry__recess:before{content:"";z-index:-1;position:absolute;inset:0}.ritual-entry__recess:after{content:"";background:linear-gradient(180deg, var(--stone-light) 0 30%, var(--plaster-shade) 100%);height:7px;box-shadow:0 8px 12px -8px var(--shadow-ink);position:absolute;bottom:-7px;left:-2%;right:-2%}[data-ritual=cheveux] .ritual-entry__recess:before{background:var(--noise), linear-gradient(90deg, var(--plaster-shade) 0%, var(--plaster) 26%, var(--surface-primary) 78%, var(--stone-light) 100%);box-shadow:inset 1.6rem 0 2rem -1.4rem var(--shadow-ink), inset 0 1.4rem 1.8rem -1.5rem #2b201926;clip-path:polygon(0 var(--cut), var(--cut) 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%)}[data-ritual=corps] .ritual-entry__recess:before{background:var(--noise), linear-gradient(90deg, var(--hammam-shade) 0%, var(--hammam-wall) 20%, var(--hammam-light) 64%, var(--hammam-light) 100%);border-radius:clamp(2rem,6vw,4rem) clamp(2rem,6vw,4rem) 0 0;box-shadow:inset 2.4rem 0 2.8rem -2rem #2b201942,inset 0 2.2rem 2.6rem -2rem #2b201938}[data-ritual=corps] .ritual-entry__recess:after{background:linear-gradient(180deg, var(--stone-light) 0 22%, var(--stone) 22%, var(--hammam-shade) 100%);height:.9rem;bottom:-.9rem}.ritual-entry__obj{height:calc(var(--entry-x) * var(--frame-k));aspect-ratio:var(--frame-ar);min-width:0;transition:transform .5s var(--ease-out);display:block;position:relative}.ritual-entry__obj .asset-dev-id{display:none}.ritual-entry:hover .ritual-entry__obj{transform:translateY(-4px)}.ritual-entry__text{justify-items:start;gap:.35rem;display:grid}.ritual-entry__name{font-family:var(--font-display);font-size:var(--step-3);line-height:1.1}.ritual-entry__line{max-width:32rem;color:var(--text-muted)}.ritual-entry__count{font-size:var(--step--1);color:var(--text-muted)}.ritual-entry__cta{margin-top:.6rem}.ritual-entry:hover .ritual-entry__cta{gap:.9em}.maison-split{gap:1.25rem;display:grid}.maison-split__body{max-width:36rem;font-size:var(--step-1);gap:1rem;line-height:1.6;display:grid}.maison-split__media{margin-top:1rem}@media (width>=900px){.maison-split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem)}}.maison-principles{gap:0;margin-top:2rem;display:grid}.maison-principles li{border-top:1px solid var(--border-subtle);gap:.4rem;padding-block:1.4rem;display:grid}.maison-principles p{max-width:34rem;color:var(--text-muted)}@media (width>=900px){.maison-principles{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2rem,5vw,4rem)}}.maison-values{font-family:var(--font-display);font-size:var(--step-1);gap:.35rem;margin-top:2.5rem;display:grid}.maison-values__label{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.guide{max-width:52rem;padding-top:clamp(2.5rem,6vw,4rem);position:relative}.guide__tizi{width:6rem;margin-bottom:1rem}.guide__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.guide__question{font-family:var(--font-display);font-size:var(--step-3);line-height:1.12}.guide__question:focus{outline:none}.guide__question:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.guide__options{border-top:1px solid var(--border-subtle);margin-top:1.75rem;display:grid}.guide__option{border-bottom:1px solid var(--border-subtle);min-height:60px;font-size:var(--step-1);transition:padding var(--dur-ui) var(--ease-out), color var(--dur-ui) var(--ease-out);justify-content:space-between;align-items:center;gap:1rem;padding:1rem .25rem;display:flex}.guide__option svg{width:1.1rem;height:1.1rem;color:var(--accent-decor);flex:none}.guide__option:hover{padding-inline-start:.75rem}.guide__options[data-size=large]{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,3vw,1.5rem)}.guide__options[data-size=large] .guide__option{isolation:isolate;min-height:clamp(9rem,32vw,14rem);font-family:var(--font-display);font-size:var(--step-2);border-bottom:0;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:1.25rem;position:relative}.guide__options[data-size=large] .guide__option:before{content:"";z-index:-1;background:var(--noise), linear-gradient(90deg, var(--plaster-shade) 0%, var(--plaster) 26%, var(--surface-primary) 78%, var(--stone-light) 100%);box-shadow:inset 1.6rem 0 2rem -1.4rem var(--shadow-ink), inset 0 1.4rem 1.8rem -1.5rem #2b201926;clip-path:polygon(0 var(--cut), var(--cut) 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%);position:absolute;inset:0}.guide__options[data-size=large] li:last-child .guide__option:before{clip-path:none;background:var(--noise), linear-gradient(90deg, var(--hammam-shade) 0%, var(--hammam-wall) 22%, var(--hammam-light) 70%);border-radius:2.5rem 2.5rem 0 0}.guide__options[data-size=large] .guide__option:hover{padding-inline-start:1.25rem}.guide__options[data-size=large] .guide__option:hover svg{transform:translate(4px)}.guide__nav{flex-wrap:wrap;gap:.5rem 1.75rem;margin-top:2rem;display:flex}.guide__back{min-height:44px;font-size:var(--step--1);color:var(--text-muted);align-items:center;gap:.5rem;display:inline-flex}.guide__back:hover{color:var(--text-primary)}.guide__back svg{width:1rem;height:1rem}.guide__result{justify-items:start;gap:0;display:grid}.guide__picks{justify-self:stretch}.guide__eyebrow+.guide__question{margin-top:.5rem}.guide__intro,.guide__message{max-width:38rem;font-size:var(--step-1);color:var(--text-muted);margin-top:.9rem;line-height:1.5}.guide__message{color:var(--text-primary);margin-bottom:1.5rem}.guide__picks{border-top:1px solid var(--border-subtle);margin-top:2rem;display:grid}.guide-pick{border-bottom:1px solid var(--border-subtle);grid-template-columns:5.5rem minmax(0,1fr);gap:1.25rem;padding-block:1.5rem;display:grid}.guide-pick__thumb{aspect-ratio:4/5;background:var(--noise), linear-gradient(90deg, var(--plaster-shade) 0%, var(--plaster) 30%, var(--stone-light) 100%);box-shadow:inset 1rem 0 1.4rem -1rem var(--shadow-ink);position:relative}.guide-pick__thumb .frame-box{height:calc(78% * var(--frame-k));bottom:8%}.guide-pick__text{justify-items:start;gap:.3rem;display:grid}.guide-pick__name{font-family:var(--font-display);font-size:var(--step-2);line-height:1.15}.guide-pick__sub{font-size:var(--step--1);color:var(--text-muted)}.guide-pick__why{max-width:34rem;margin-block:.4rem .6rem}.guide-pick__label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.72rem;display:block}@media (width>=720px){.guide-pick{grid-template-columns:8rem minmax(0,1fr);gap:2rem}}.guide__after{justify-items:start;gap:1rem;margin-top:2rem;display:grid}.guide__disclaimer{max-width:36rem;font-size:var(--step--1);color:var(--text-muted)}@media (prefers-reduced-motion:no-preference){.guide__question,.guide__options,.guide__intro,.guide__picks{animation:guide-step .42s var(--ease-out) both}}@keyframes guide-step{0%{opacity:0;transform:translateY(6px)}}.faq{max-width:52rem;padding-top:clamp(2rem,5vw,3.5rem)}.faq__group+.faq__group{margin-top:clamp(2.5rem,6vw,3.5rem)}.faq__category{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem;font-size:.75rem}.faq__item{border-top:1px solid var(--border-subtle);scroll-margin-top:calc(var(--header-h) + 1rem)}.faq__item:last-child{border-bottom:1px solid var(--border-subtle)}.faq__trigger{text-align:start;width:100%;min-height:56px;font-family:var(--font-display);font-size:var(--step-1);justify-content:space-between;align-items:center;gap:1rem;padding:1rem .25rem;line-height:1.3;display:flex}.faq__icon{width:1.1rem;height:1.1rem;color:var(--accent-decor);transition:transform var(--dur-ui) var(--ease-out);flex:none}.faq__trigger[data-state=open] .faq__icon{transform:rotate(45deg)}.faq__a{overflow:hidden}.faq__a>p:first-child{margin-top:0}.faq__a p{max-width:40rem;color:var(--text-muted);margin-block:0 .7rem;padding-inline:.25rem;line-height:1.6}.faq__a .link-arrow{margin:.2rem .25rem 1.25rem}.faq__a[data-state=closed]{display:none}.faq__more{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:2.5rem;display:flex}.info-facts{max-width:52rem;padding-top:clamp(1.5rem,4vw,2.5rem);display:grid}.info-fact{border-bottom:1px solid var(--border-subtle);gap:.6rem;padding-block:1.75rem;display:grid}.info-fact__title{font-family:var(--font-display);font-size:var(--step-2);line-height:1.2}.info-fact p{max-width:38rem;color:var(--text-muted);line-height:1.6}.info-fact p.info-fact__key{font-size:var(--step-1);color:var(--text-primary)}.info-fact__links{flex-wrap:wrap;gap:.75rem 2rem;margin-top:.5rem;display:flex}@media (width>=900px){.info-fact{grid-template-columns:minmax(0,4fr) minmax(0,7fr);column-gap:3rem}.info-fact>:not(.info-fact__title){grid-column:2}.info-fact__title{grid-row:1/span 4}}.info-table{border-collapse:collapse;width:100%;font-size:var(--step--1);margin-top:.5rem}.info-table caption{text-align:start;color:var(--text-muted);padding-bottom:.5rem}.info-table th,.info-table td{text-align:start;border-bottom:1px solid var(--border-subtle);padding:.6rem .25rem}.contact{gap:clamp(1.5rem,4vw,2.5rem);padding-top:clamp(2rem,5vw,3.5rem);display:grid}.contact__channel{border:1px solid var(--border-subtle);align-content:start;justify-items:start;gap:.6rem;padding:clamp(1.5rem,4vw,2.5rem);display:grid}.contact__channel p{color:var(--text-muted)}.contact__channel--primary{background:var(--noise), linear-gradient(180deg, var(--surface-plaster), var(--surface-primary))}.contact__channel .btn{margin-top:.75rem}.contact__value{font-family:var(--font-display);font-size:var(--step-2);color:var(--text-primary)!important}.contact__before{gap:.6rem;display:grid}.contact__before p{color:var(--text-muted)}.contact__before ul{flex-wrap:wrap;gap:.75rem 2rem;margin-top:.25rem;display:flex}@media (width>=900px){.contact{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.contact__before{border-top:1px solid var(--border-subtle);grid-column:1/-1;padding-top:1rem}}@media (prefers-reduced-motion:reduce){.ritual-entry__obj,.faq__icon,.guide__option{transition:none}}.legal-list{gap:.5rem;margin-top:.8rem;display:grid}.legal-list>div{gap:.1rem;display:grid}.legal-list dt{color:var(--text-muted);font-size:.85rem}.legal-bullets{gap:.3rem;margin-top:.6rem;padding-inline-start:1.1rem;list-style:outside;display:grid}.legal-updated{color:var(--text-muted);font-size:.9rem}.legal-todo{background:var(--accent-decor);border-radius:3px;padding:.05em .35em}@supports (color:color-mix(in lab, red, red)){.legal-todo{background:color-mix(in srgb, var(--accent-decor) 16%, transparent)}}.legal-todo{color:var(--text-primary);font-size:.92em}@media (width>=768px){.legal-list>div{grid-template-columns:12rem 1fr;gap:1rem}}.co{max-width:72rem;padding-block:clamp(1.75rem,5vw,3.5rem) clamp(3.5rem,8vw,6rem)}.co__head{gap:.6rem;margin-bottom:clamp(1.5rem,4vw,2.5rem);display:grid}.co__title{font-family:var(--font-display);font-size:var(--step-3);line-height:1.1}.co__title:focus{outline:none}.co__lede{max-width:36rem;color:var(--text-muted)}.co__form{align-items:start;gap:2rem;display:grid}@media (width>=960px){.co__form{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,4vw,4rem)}.co-review{top:calc(var(--header-h) + 1.5rem);position:sticky}}.co__fields{gap:1.75rem;display:grid}.co-section{border:0;gap:1.1rem;min-width:0;margin:0;padding:0;display:grid}.co-section legend{float:inline-start;border-bottom:1px solid var(--border-subtle);letter-spacing:.16em;text-transform:uppercase;width:100%;color:var(--accent);margin-bottom:.4rem;padding-bottom:.5rem;font-size:.75rem}.co-section legend+*{clear:both}.co-field{gap:.35rem;display:grid}.co-field label{font-size:var(--step--1);font-weight:500}.co-field__optional{color:var(--text-muted);font-weight:400}.co-field__hint{font-size:var(--step--1);color:var(--text-muted)}.co-field input,.co-field select,.co-field textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-primary);width:100%;min-height:48px;color:var(--text-primary);font:inherit;padding:.7rem .85rem;font-size:1rem}.co-field textarea{resize:vertical}.co-field input:focus-visible,.co-field select:focus-visible,.co-field textarea:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-color:var(--focus)}.co-field[data-invalid] input,.co-field[data-invalid] select,.co-field[data-invalid] textarea{border-color:var(--danger)}.co-field__error{font-size:var(--step--1);color:var(--danger)}.co-hp{width:1px;height:1px;position:absolute;inset-inline-start:-10000px;overflow:hidden}.co-pay{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-plaster);align-items:flex-start;gap:.75rem;padding:.9rem 1rem;display:flex}.co-pay input{accent-color:var(--surface-dark);margin-top:.3rem}.co-pay>span{gap:.15rem;display:grid}.co-pay__name{font-weight:500}.co-pay__hint{font-size:var(--step--1);color:var(--text-muted)}.co-errors,.co-failure{border:1px solid var(--danger);border-radius:var(--radius-sm);background:var(--surface-primary);border-inline-start-width:4px;padding:1rem 1.1rem}.co-errors:focus,.co-failure:focus{outline:2px solid var(--focus);outline-offset:2px}.co-errors p{font-weight:500}.co-errors ul{gap:.25rem;margin-top:.4rem;display:grid}.co-errors a{color:var(--danger);text-decoration:underline}.co-failure{gap:.6rem;margin-top:1rem;display:grid}.co-review{border:1px solid var(--border-subtle);background:var(--surface-plaster);padding:clamp(1.25rem,3vw,1.75rem)}.co-review__title{font-family:var(--font-display);font-size:var(--step-2);margin-bottom:.75rem}.co-lines{display:grid}.co-line{border-bottom:1px solid var(--border-subtle);grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"name name remove""qty total total";align-items:center;gap:.4rem .75rem;padding-block:.8rem;display:grid}.co-line--static{grid-template-areas:"name qty total"}.co-line__name{font-family:var(--font-display);font-size:var(--step-1);grid-area:name;line-height:1.25}.co-line__qty{color:var(--text-muted);grid-area:qty;justify-self:start}.co-line__total{grid-area:total;justify-self:end}.co-line__remove{width:36px;height:36px;color:var(--text-muted);grid-area:remove;justify-self:end}.co-line__remove svg{width:16px;height:16px}.co-totals{gap:.45rem;margin-top:1rem;display:grid}.co-totals>div{justify-content:space-between;gap:1rem;display:flex}.co-totals dt{color:var(--text-muted)}.co-totals dd{text-align:end}.co-totals__total{border-top:1px solid var(--border-strong);font-family:var(--font-display);font-size:var(--step-2);margin-top:.4rem;padding-top:.75rem}.co-totals__total dt{color:var(--text-primary)}.co-totals__pending{font-family:var(--font-body);font-size:var(--step--1);color:var(--text-muted)}.co-submit{width:100%;margin-top:1.25rem}.co-submit[aria-busy=true]{cursor:progress;opacity:.75}.co-notice{max-width:36rem;font-size:var(--step-1);justify-items:start;gap:1.25rem;display:grid}.confirm__head{justify-items:start}.confirm__icon{width:2.25rem;height:2.25rem;color:var(--accent-botanical)}.confirm__ref{gap:.2rem;margin-top:.5rem;display:grid}.confirm__ref span{color:var(--text-muted)}.confirm__ref strong{font-family:var(--font-display);font-size:var(--step-3);letter-spacing:.04em;font-weight:400}.confirm__summary{max-width:36rem}.confirm__pay{margin-top:.25rem;font-weight:500}.confirm__after{border-top:1px solid var(--border-subtle);justify-items:start;gap:.6rem;max-width:36rem;margin-top:2rem;padding-top:1.75rem;display:grid}.confirm__help-title{font-family:var(--font-display);font-size:var(--step-2)}.confirm__hint{color:var(--text-muted);margin-bottom:.5rem}.confirm__shop{margin-top:1.25rem}.admin{background:var(--stone-light);min-height:100svh;color:var(--text-primary);font-size:.95rem}.admin__bar{background:var(--surface-dark);color:var(--text-on-dark);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem clamp(1rem,3vw,2rem);display:flex}.admin__brand{letter-spacing:.08em}.admin__logout{color:var(--text-on-dark);min-height:40px;text-decoration:underline}.admin__main{max-width:72rem;margin:0 auto;padding:clamp(1rem,3vw,2rem)}.admin h1{font-family:var(--font-display);font-size:1.7rem}.admin h2{margin:1.5rem 0 .6rem;font-size:1rem;font-weight:600}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.admin-filters{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin input,.admin select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-primary);min-height:40px;font:inherit;padding:.4rem .6rem}.admin-btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-primary);min-height:40px;padding:.45rem 1rem}.admin-btn--primary{background:var(--surface-dark);border-color:var(--surface-dark);color:var(--text-on-dark)}.admin-btn--danger{color:var(--danger);border-color:var(--danger)}.admin-btn:disabled{opacity:.6}.admin :focus-visible{outline:2px solid var(--focus);outline-offset:2px}.admin-table-wrap{border:1px solid var(--border-subtle);background:var(--surface-primary);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:start;border-bottom:1px solid var(--border-subtle);white-space:nowrap;padding:.6rem .75rem}.admin-table thead th{background:var(--surface-plaster);font-weight:600}.admin-table .num{text-align:end;font-variant-numeric:tabular-nums}.admin-total th,.admin-total td{font-weight:600}.admin-ref{font-weight:600;text-decoration:underline}.admin-test{border:1px solid var(--accent);color:var(--accent);vertical-align:middle;border-radius:2px;margin-inline-start:.4rem;padding:.05rem .35rem;font-size:.7rem}.admin-status{background:var(--surface-plaster);border-radius:999px;padding:.15rem .5rem;font-size:.85rem;display:inline-block}.admin-status[data-status=pending]{background:var(--surface-secondary)}.admin-status[data-status=delivered]{background:var(--accent-botanical)}@supports (color:color-mix(in lab, red, red)){.admin-status[data-status=delivered]{background:color-mix(in srgb, var(--accent-botanical) 28%, var(--surface-primary))}}.admin-status[data-status=cancelled]{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.admin-status[data-status=cancelled]{background:color-mix(in srgb, var(--danger) 16%, var(--surface-primary))}}.admin-meta,.admin-empty{color:var(--text-muted)}.admin-error{color:var(--danger)}.admin-ok{color:var(--text-primary)}.admin-grid{gap:0 2rem;display:grid}@media (width>=760px){.admin-grid{grid-template-columns:1fr 1fr}}.admin-dl{grid-template-columns:max-content 1fr;gap:.35rem 1rem;display:grid}.admin-dl dt{color:var(--text-muted)}.pre{white-space:pre-line}.admin-actions{flex-wrap:wrap;gap:.6rem;display:flex}.admin-history{color:var(--text-muted);margin-top:1rem;padding-inline-start:1.2rem;list-style:outside}.admin-login{gap:.5rem;max-width:22rem;margin:3rem auto;display:grid}.admin-login button{margin-top:.75rem}:root{--ivoire:#f5ede4;--sable-rose:#e8d3c3;--terracotta:#b97455;--or-lune:#c9a227;--brun-nuit:#2b2019;--olive:#8a8b5c;--plaster:#efe3d6;--plaster-shade:#e2cfbd;--stone:#ece0d2;--stone-light:#f8f2ea;--hammam-wall:#e4cfbb;--hammam-shade:#cdb29a;--hammam-light:#f1e5d8;--terracotta-text:#8f5236;--surface-primary:var(--ivoire);--surface-secondary:var(--sable-rose);--surface-plaster:var(--plaster);--surface-dark:var(--brun-nuit);--surface-hammam:var(--hammam-light);--text-primary:var(--brun-nuit);--text-muted:#5f4f43;--text-on-dark:var(--ivoire);--text-on-dark-muted:#cbbcad;--accent:var(--terracotta-text);--accent-decor:var(--terracotta);--accent-gold:var(--or-lune);--accent-botanical:var(--olive);--border-subtle:#2b20191f;--border-strong:#2b201947;--focus:var(--terracotta-text);--danger:#9b2c1f;--font-display:"Marcellus", "Cormorant Garamond", Georgia, serif;--font-body:"Jost", "Helvetica Neue", Arial, sans-serif;--font-script:"Parisienne", "Snell Roundhand", cursive;--font-arabic-display:"Noto Naskh Arabic", "Amiri", serif;--font-arabic-body:"IBM Plex Sans Arabic", "Noto Sans Arabic", sans-serif;--step--1:.84rem;--step-0:1rem;--step-1:1.2rem;--step-2:clamp(1.4rem, 1.2rem + .8vw, 1.75rem);--step-3:clamp(1.8rem, 1.4rem + 1.6vw, 2.6rem);--step-4:clamp(2.2rem, 1.6rem + 2.8vw, 3.8rem);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4.5rem;--space-7:7rem;--container:1280px;--gutter:clamp(1.25rem, 4vw, 3rem);--header-h:60px;--ease-out:cubic-bezier(.22, .61, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-ui:.24s;--dur-reveal:.9s}@media (width>=1024px){:root{--header-h:72px}}[dir=rtl]{--font-display:var(--font-arabic-display);--font-body:var(--font-arabic-body)}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.eyebrow{font-family:var(--font-body);font-size:var(--step--1);letter-spacing:.08em;color:var(--accent);font-weight:400}.link-arrow{letter-spacing:.02em;transition:gap var(--dur-ui) var(--ease-out);border-bottom:1px solid;align-items:center;gap:.6em;padding-bottom:2px;font-size:.95rem;display:inline-flex}.link-arrow:hover{gap:.9em}.link-arrow svg{width:1em;height:1em}[dir=rtl] .link-arrow svg,[dir=rtl] .flip-rtl{transform:scaleX(-1)}.btn{letter-spacing:.03em;border:1px solid var(--surface-dark);min-height:48px;transition:background var(--dur-ui) var(--ease-out), color var(--dur-ui) var(--ease-out);border-radius:2px;justify-content:center;align-items:center;gap:.6em;padding:.75rem 1.6rem;font-size:.95rem;display:inline-flex}.btn-solid{background:var(--surface-dark);color:var(--text-on-dark)}.btn-solid:hover{background:#44352a}.btn-line{color:var(--text-primary)}.btn-line:hover{background:#2b20190f}.btn svg{width:18px;height:18px}.star8{width:10px;height:10px;color:var(--accent-decor);flex:none}.asset{width:100%;display:block;position:relative;overflow:hidden}.asset>img{object-fit:cover;width:100%;height:100%}.asset--contain>img{object-fit:contain}.asset--cutout>img{object-position:50% 100%}[data-frame] .asset--cutout{overflow:visible}[data-frame] .asset--cutout>img{transform:translateY(var(--asset-baseline,0%))}.asset-pending{background:linear-gradient(160deg, #ffffff59, transparent 60%), var(--surface-plaster);box-shadow:inset 0 0 0 1px var(--border-subtle)}.asset-pending.asset--cutout{background:linear-gradient(90deg,#2b20190d,#2b201904 45%,#2b20190a);border-radius:3px 3px 2px 2px;box-shadow:inset 0 0 0 1px #2b20190f}.asset-dev-id{letter-spacing:.02em;color:var(--text-muted);text-align:center;overflow-wrap:anywhere;font:500 10px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute;inset:auto 6px 6px}.asset-dev-id span{opacity:.7;display:block}.site-header{view-transition-name:site-header}.pdp__info{view-transition-name:pdp-info}::view-transition-old(root){animation:.26s var(--ease-out) both vt-fade-out}::view-transition-new(root){animation:.46s var(--ease-out) .14s both vt-fade-in}::view-transition-group(*){animation-duration:.76s;animation-timing-function:var(--ease-in-out)}::view-transition-old(*):not(:only-child){opacity:0;animation:none}::view-transition-new(*):not(:only-child){animation:none}::view-transition-new(pdp-info):only-child{animation:.52s var(--ease-out) .26s both vt-rise-in}::view-transition-old(pdp-info):only-child{animation:.2s var(--ease-out) both vt-fade-out}::view-transition-group(site-header){z-index:2;animation-duration:0s}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-rise-in{0%{opacity:0;transform:translateY(16px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}[data-morph],.pdp__info,.site-header{view-transition-name:none!important}::view-transition-old(root){animation:.18s linear both vt-fade-out}::view-transition-new(root){animation:.22s linear both vt-fade-in}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}

/* TIZILYA — local art direction. Brand palette and approved photography retained. */
:root {
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --ease-in-out: cubic-bezier(.76, 0, .24, 1);
  --dur-ui: .35s;
  --gutter: clamp(1.5rem, 5vw, 6rem);
  --container: 1440px;
}
body { -webkit-font-smoothing: antialiased; }
::selection { background: var(--sable-rose); color: var(--brun-nuit); }
.site-header { background: #f5ede4e8; backdrop-filter: blur(16px); }
.site-header__inner { border-bottom: 1px solid var(--border-subtle); }
.wordmark { font-size: 1.35rem; letter-spacing: .4em; }
.eyebrow { font-size: .7rem; letter-spacing: .18em; text-transform: uppercase; }
.btn { border-radius: 0; transition: background .35s, color .35s, transform .35s; }
.btn:hover { transform: translateY(-2px); }
.btn-solid { box-shadow: 0 6px 18px #2b20190b; }
.hero__wall {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='.035'/%3E%3C/svg%3E"), linear-gradient(112deg, var(--ivoire) 8%, var(--stone-light) 39%, var(--plaster) 78%, var(--sable-rose));
}
.hero__light { background: linear-gradient(121deg, #fff8ec00 48%, #fff8ec8c 49%, #fff8ec00 75%); }
.hero__copy { gap: 1.25rem; }
.hero__title { max-width: 13ch; font-size: clamp(3rem, 5.5vw, 6.25rem); line-height: 1.03; letter-spacing: -.045em; text-wrap: balance; }
.hero__lede { max-width: 33ch; font-size: 1rem; line-height: 1.75; }
.hero__bgtype { font-size: clamp(4rem, 12vw, 13rem); letter-spacing: -.02em; color: #2b20190a; top: 33%; }
.hero__niche { background: linear-gradient(100deg, #cdb29a 0%, var(--plaster-shade) 24%, var(--plaster) 72%, var(--sable-rose)); box-shadow: inset 15px 8px 32px -18px #2b201966, 2px 0 0 #f8f2ea80; }
.hero__pedestal { filter: drop-shadow(10px 16px 14px #2b20191c); }
.hero__slot { transition: opacity 1s var(--ease-out), transform 1.3s var(--ease-out); }
.hero__slot[data-state=active] { transition-delay: .12s; }
.hero__slot[data-state=leaving] { transition-duration: .65s, 1s; transform: translate(-50%, 8px) scale(.985); }
.hero__step { font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.hero__name { font-size: clamp(1.65rem, 2.2vw, 2.2rem); letter-spacing: -.025em; }
.hero__sub { font-size: .85rem; }
.hero__now { gap: .3rem; }
.hero__controls { margin-top: .75rem; }
.hero__ticks button:before { height: 1px; }
.hero__ctas .btn { min-height: 50px; font-size: .85rem; padding-inline: 1.5rem; }
.hero__ctas .btn-line { border-color: transparent; border-bottom-color: var(--border-strong); padding-inline: .15rem; margin-inline-start: .75rem; }
.universes { padding-block: clamp(5rem, 10vw, 9rem); }
.universes__head { border-top: 1px solid var(--border-strong); padding-top: 1.75rem; }
.universes__title { max-width: 13ch; font-size: clamp(2.8rem, 5vw, 4.75rem); letter-spacing: -.04em; }
.universes__intro { max-width: 38ch; }
.room__frame { position: relative; isolation: isolate; border-radius: 48% 48% 0 0 / 34% 34% 0 0; background: var(--plaster); }
.room__frame .asset-pending { background: radial-gradient(ellipse at 60% 22%, #f8f2eab3, transparent 65%), linear-gradient(112deg, var(--hammam-shade), var(--plaster) 50%, var(--sable-rose)); box-shadow: inset 12px 10px 32px -20px #2b20194d; }
/* Still lifes use only the supplied, unaltered cutouts. Pending editorial assets remain pending. */
.room__frame:before { content: ''; z-index: 1; position: absolute; inset: 0; background-repeat: no-repeat; pointer-events: none; filter: drop-shadow(5px 14px 10px #2b201926); transition: transform 1.2s var(--ease-out); }
.room[data-room=cheveux] .room__frame:before { background-image: url('/assets/products/huile-capillaire-cutout.webp'), url('/assets/products/shampoing-anti-chute-cutout.webp'), url('/assets/products/beurre-capillaire-cutout.webp'); background-size: 35% auto, 38% auto, 39% auto; background-position: 21% 53%, 73% 53%, 51% 89%; }
.room[data-room=corps] .room__frame:before { background-image: url('/assets/products/beurre-corporel-cutout.webp'), url('/assets/products/savon-corporel-cutout.webp'), url('/assets/products/gommage-corporel-cafe-cutout.webp'); background-size: 48% auto, 42% auto, 55% auto; background-position: 63% 35%, 17% 63%, 75% 85%; }
.room:hover .room__frame:before { transform: translateY(-5px); }
.room__text { margin-top: 1.65rem; gap: .6rem; }
.room__name { font-size: clamp(2.8rem, 5vw, 5rem); letter-spacing: -.04em; }
.room__line { font-size: 1rem; }
.room__meta { font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; }
.room__cta { margin-top: 1rem; font-size: .85rem; }
.manifesto { position: relative; padding-block: clamp(5rem, 10vw, 10rem); background: var(--brun-nuit); color: var(--ivoire); }
.manifesto:before { content: ''; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 0 0, #b974551f, transparent 65%); }
.manifesto .eyebrow { color: var(--sable-rose); }
.manifesto__title { font-size: clamp(3rem, 5.6vw, 6rem); letter-spacing: -.04em; line-height: 1.08; }
.manifesto__body { color: var(--text-on-dark-muted); }
.manifesto__body>p { font-size: 1rem; line-height: 1.9; }
.manifesto__values, .manifesto__body .link-arrow { color: var(--ivoire); }
.manifesto__values { font-size: .8rem; gap: .75rem 0; }
.manifesto .star8 { color: var(--or-lune); }
.ingredients { padding-block: clamp(5rem, 9vw, 9rem); }
.ingredients__title { letter-spacing: -.035em; }
.ingredients__name { font-style: italic; }
.ingredients__item { padding-block: 1.5rem; }
.wall { border-top: 1px solid var(--border-subtle); padding-block: 5rem 7rem; }
.wall__title { font-size: clamp(2.6rem, 5vw, 4.5rem); letter-spacing: -.045em; }
.wall__filters { gap: 1.75rem; }
.wall__filter { font-size: .85rem; }
.pcard__alcove { border-radius: 1px; background: radial-gradient(ellipse at 55% 20%, var(--stone-light), transparent 75%), linear-gradient(120deg, var(--plaster), var(--sable-rose)); }
.pcard__plinth { height: 1px; width: 72%; bottom: 12%; opacity: .65; box-shadow: 0 9px 14px 3px #2b20191a; }
.pcard__object { bottom: 14%; height: calc(74% * var(--frame-k)); filter: drop-shadow(4px 10px 7px #2b20191a); }
.pcard__link { gap: 1.25rem; }
.pcard__category { font-size: .65rem; text-transform: uppercase; letter-spacing: .1em; }
.pcard__name { font-size: clamp(1.2rem, 1.6vw, 1.65rem); letter-spacing: -.02em; }
.pcard__sub { font-size: .8rem; }
.pcard__price { font-size: .85rem; margin-top: .6rem; }
.pd-buy__name { font-size: clamp(2.8rem, 4.5vw, 4.5rem); letter-spacing: -.045em; }
.pd-buy__lead { line-height: 1.8; }
.pd-buy__info { line-height: 1.7; }
.pd-h2 { letter-spacing: -.025em; }
.site-footer { padding-top: 5rem; }
.site-footer__tagline { font-size: clamp(2rem, 3vw, 3rem); letter-spacing: -.025em; }
@media (min-width: 1024px) {
  .hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); grid-template-rows: 1fr auto; column-gap: 2vw; padding-top: calc(var(--header-h) + 2rem); padding-bottom: 2.5rem; }
  .hero__copy { grid-column: 1; grid-row: 1; padding-top: 1rem; align-self: center; }
  .hero__stage { grid-column: 2; grid-row: 1 / 3; width: 100%; height: min(76svh, 800px); }
  .hero__index { grid-column: 1; grid-row: 2; display: flex; align-items: end; justify-content: space-between; gap: 1.5rem; width: 100%; justify-self: start; padding-top: 1.75rem; border-top: 1px solid var(--border-strong); }
  .hero__controls { display: flex; width: auto; gap: 0; margin: 0; }
  .hero__ticks { flex-direction: row; margin: 0; }
  .hero__ticks button { width: 18px; min-height: 44px; padding: 0; }
  .hero__ticks button:before { width: 10px; }
  .hero__ticks button[aria-current=true]:before { width: 15px; }
  .hero__ticks li[data-ritual=cheveux]+li[data-ritual=corps] { margin-top: 0; margin-inline-start: 6px; }
  .hero__tick-name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .hero__play { margin-inline-start: .25rem; }
  .universes__head { grid-template-columns: 1fr 1fr; align-items: end; gap: 6vw; }
  .universes__intro { justify-self: start; padding-bottom: .4rem; }
  .wall__grid>li:nth-child(2n) { margin-top: 2.5rem; }
}
@media (max-width: 1023px) {
  .hero { height: max(960px, 100svh); }
  .threshold { height: calc(max(960px, 100svh) + 65vh); }
  .hero__grid { gap: 1rem; padding-top: calc(var(--header-h) + 2rem); padding-bottom: 2rem; justify-content: space-between; }
  .hero__copy { width: 100%; max-width: 38rem; }
  .hero__title { font-size: clamp(2.75rem, 7.2vw, 4.5rem); max-width: 16ch; }
  .hero__lede { font-size: .9rem; max-width: 39ch; }
  .hero__stage { height: clamp(290px, 43svh, 480px); }
  .hero__index { gap: .35rem; }
  .hero__now { min-height: 6.5rem; }
  .hero__controls { margin-top: .25rem; }
  .hero__bgtype { font-size: 20vw; }
  .room[data-room=corps] { margin-top: 2rem; }
}
@media (max-width: 480px) {
  .hero { height: max(850px, 100svh); }
  .threshold { height: calc(max(850px, 100svh) + 50vh); }
  .hero__grid { padding-top: calc(var(--header-h) + 1.5rem); gap: .75rem; }
  .hero__title { font-size: 2.75rem; }
  .hero__lede { display: block; font-size: .85rem; line-height: 1.6; }
  .hero__ctas { gap: .65rem; }
  .hero__ctas .btn { font-size: .78rem; padding-inline: .85rem; }
  .hero__ctas .btn-line { padding-inline: .1rem; margin-inline-start: 0; }
  .hero__stage { height: 310px; }
  .hero__name { font-size: 1.6rem; }
  .universes__rooms { gap: 3.5rem; }
  .manifesto__body { margin-top: 1rem; }
  .wall__grid { column-gap: 1rem; row-gap: 2.75rem; }
  .pcard__sub { font-size: .75rem; }
  .pcard__name { font-size: 1.15rem; }
}
@media (prefers-reduced-motion: no-preference) {
  ::view-transition-group(*) { animation-duration: .95s; animation-timing-function: cubic-bezier(.65, 0, .2, 1); }
  ::view-transition-old(root) { animation-duration: .3s; }
  ::view-transition-new(root) { animation-duration: .65s; animation-delay: .1s; }
  .wall__grid>li { animation: premium-appear .7s var(--ease-out) both; }
  .wall__grid>li:nth-child(2) { animation-delay: .06s; }
  .wall__grid>li:nth-child(3) { animation-delay: .12s; }
  .wall__grid>li:nth-child(4) { animation-delay: .18s; }
  @keyframes premium-appear { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
}
@media (prefers-reduced-motion: reduce) {
  .threshold[data-reduced] { height: auto; }
  .hero__slot, .room__frame:before { transition: none; }
}

/* Revision 2 — aligned editorial sections and readable product information. */
.universes__head { margin-bottom: 2.5rem; }
.universes__rooms { gap: clamp(1.5rem, 3vw, 3rem); }
.room[data-room=corps] { margin-top: 0; }
.room__frame, .room:hover .room__frame { border-radius: 0; aspect-ratio: 5/4; }
.room__frame:before { display: none; }
.room__frame img { object-position: 50% 48%; transition: transform 1s var(--ease-out); }
.room[data-room=corps] .room__frame img { object-position: 50% 62%; }
.room__text { display: grid; grid-template-columns: 1fr auto; gap: .5rem 1.5rem; padding: 1.5rem 0 0; margin: 0; }
.room__name { font-size: clamp(2.4rem, 3.5vw, 3.8rem); grid-column: 1; }
.room__line { grid-column: 1; max-width: 40ch; font-size: .95rem; line-height: 1.65; }
.room__line { min-height: 3.3em; }
.room__meta { grid-column: 2; grid-row: 1; align-self: center; }
.room__cta { grid-column: 1 / -1; margin-top: .5rem; }
.wall { padding-block: 3.5rem 5rem; }
.wall__head { padding-bottom: 1.5rem; margin-bottom: 2rem; border-bottom: 1px solid var(--border-subtle); align-items: center; }
.wall__title { font-size: clamp(2.6rem, 4vw, 4rem); }
.wall__filters { gap: .5rem; }
.wall__filter { padding: .65rem 1rem; background: transparent; border: 1px solid transparent; }
.wall__filter[aria-pressed=true] { background: var(--brun-nuit); color: var(--ivoire); border-color: var(--brun-nuit); }
.wall__filter:hover { border-color: var(--border-strong); }
.wall__filter[aria-pressed=true]:hover { color: var(--ivoire); }
.wall__grid { gap: 2.75rem 1.75rem; align-items: start; }
.wall__grid>li:nth-child(2n) { margin-top: 0; }
.pcard__alcove { border-radius: 0; aspect-ratio: 1; }
.pcard__meta { gap: .4rem; padding-bottom: .5rem; }
.pcard__name { font-size: 1.3rem; min-height: 2.5em; line-height: 1.25; }
.pcard__sub { min-height: 3em; line-height: 1.5; }
.pcard__price { border-top: 1px solid var(--border-subtle); padding-top: .75rem; margin-top: .3rem; }
.pd-top { width: min(100%, 1440px); margin-inline: auto; padding: 2.25rem var(--gutter) 3rem; gap: clamp(2rem, 5vw, 5rem); min-height: 0; align-items: start; }
.pd-top__visual { height: clamp(430px, 62vw, 620px); background: var(--plaster); position: sticky; top: calc(var(--header-h) + 1.5rem); }
.niche__recess { border-radius: 0; top: 9cqh; bottom: 17cqh; box-shadow: inset 14px 8px 28px -22px #2b20194d; }
.niche__object { height: calc(62% * var(--frame-k)); }
.pd .pdp__info.pd-buy { padding: 0; max-width: none; }
.pd-crumbs { margin-bottom: 1.75rem; }
.pd-buy__name { font-size: clamp(2.5rem, 3.5vw, 3.8rem); line-height: 1.08; margin-top: .65rem; }
.pd-buy__designation { font-size: 1rem; line-height: 1.5; margin-top: .65rem; }
.pd-buy__lead { font-size: .96rem; line-height: 1.8; color: var(--text-muted); max-width: 58ch; margin-top: 1.4rem; }
.pd-buy__price { font-size: 1.5rem; border-top: 1px solid var(--border-subtle); padding-top: 1.25rem; margin-top: 1.25rem; }
.pd-buy__action { margin-top: 1rem; }
.pd-buy__feedback { height: 0; overflow: hidden; }
.pd-buy__feedback[data-visible] { height: 2rem; padding-top: .35rem; }
.pd-buy__help { margin-top: 1rem; font-size: .85rem; }
.pd-buy__info { margin-top: 1rem; padding-top: .8rem; font-size: .83rem; line-height: 1.65; }
.pd-sections { display: flex; justify-content: center; flex-wrap: wrap; gap: .5rem clamp(.75rem, 3vw, 3rem); background: var(--stone-light); border-block: 1px solid var(--border-subtle); padding: .8rem var(--gutter); }
.pd-sections a { padding: .65rem .2rem; font-size: .85rem; border-bottom: 1px solid transparent; }
.pd-sections a:hover { border-bottom-color: var(--accent); color: var(--accent); }
.pd [id] { scroll-margin-top: calc(var(--header-h) + 2rem); }
.pd-benefits { display: block; padding-block: 3.5rem; }
.pd-h2 { font-size: clamp(1.9rem, 3vw, 2.75rem); line-height: 1.15; letter-spacing: -.025em; }
.pd-benefits__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 1rem; margin-top: 1.75rem; counter-reset: benefit; }
.pd-benefits__list li, .pd-benefits__list li:last-child { counter-increment: benefit; font-family: var(--font-body); font-size: 1rem; line-height: 1.75; max-width: none; padding: 1.5rem; border: 1px solid var(--border-subtle); background: var(--stone-light); }
.pd-benefits__list li:before { content: '0' counter(benefit); display: block; font-family: var(--font-display); color: var(--accent); font-size: 1.6rem; line-height: 1; margin-bottom: 1.25rem; }
/* Product information is never concealed by an entrance animation. */
.pd [data-reveal-ready] [data-reveal], .pd [data-reveal]:not([data-revealed]) { opacity: 1; transform: none; }
.pd-benefits__media { display: none; }
.pd-usage { padding-block: 3.5rem; background: var(--sable-rose); }
.pd-usage__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 2rem 4rem; align-items: start; }
.pd-usage__label { font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; margin-top: 1.5rem; }
.pd-usage__phase { font-size: 1.5rem; margin-top: .35rem; }
.pd-usage__facts { gap: 1.5rem; margin-top: 1.5rem; }
.pd-usage__steps li { font-family: var(--font-body); font-size: 1rem; line-height: 1.75; grid-template-columns: 1.75rem minmax(0, 1fr); padding-block: 1rem; }
.pd-usage__steps li:last-child { border-bottom: 1px solid var(--border-strong); }
.pd-ingredients { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 3rem; padding-block: 3.5rem; }
.pd-ingredients__list { columns: 2; column-gap: 2rem; margin-top: 1.5rem; }
.pd-ingredients__list li { font-family: var(--font-body); font-size: .92rem; line-height: 1.65; padding-block: .75rem; }
.pd-ingredients__aside { padding: 1.75rem; border: 1px solid var(--border-subtle); background: var(--stone-light); }
.pd-ingredients__precautions li { font-size: .9rem; line-height: 1.7; }
.pd-ingredients__inci { font-size: .92rem; line-height: 1.9; overflow-wrap: anywhere; }
.pd-specs { gap: 0; }
.pd-specs div { padding-block: .6rem; border-bottom: 1px solid var(--border-subtle); font-size: .85rem; line-height: 1.6; }
.pd-map { padding-block: 3.5rem; }
.pd-map__phases { margin-top: 2rem; gap: 2rem; }
.pd-map__card { padding: 1rem; }
.pd-continue { padding-block: 3.5rem 5rem; }
.pd-continue__grid { margin-top: 2rem; }
@media (min-width: 1024px) {
  .pd-top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
@media (min-width: 640px) and (max-width: 1023px) {
  .wall__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .universes__rooms { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
  .pd-top { padding-top: 1.5rem; gap: 2rem; }
  .pd-top__visual { position: relative; top: 0; height: clamp(350px, 65vw, 500px); }
  .pd .pdp__info.pd-buy { padding: 0; }
  .pd-crumbs { margin-bottom: 1.25rem; }
  .pd-buy__name { font-size: clamp(2.4rem, 5vw, 3.5rem); }
  .pd-usage__inner, .pd-ingredients { grid-template-columns: 1fr; gap: 2rem; }
}
@media (max-width: 639px) {
  .universes { padding-block: 3.5rem; }
  .universes__rooms { grid-template-columns: 1fr; gap: 2.75rem; }
  .room__frame { aspect-ratio: 5/4; }
  .room__text { padding-top: 1.25rem; }
  .wall__head { gap: 1rem; }
  .wall__count { font-size: .75rem; }
  .wall__grid { gap: 2rem 1rem; }
  .pcard__name { font-size: 1.15rem; min-height: 2.5em; }
  .pcard__sub { font-size: .78rem; min-height: 4.5em; }
  .wall__filter { padding: .55rem .8rem; }
  .pd-top { padding-bottom: 2rem; }
  .pd-benefits, .pd-ingredients, .pd-continue { padding-block: 2.5rem; }
  .pd-usage, .pd-map { padding-block: 2.5rem; }
  .pd-ingredients__list { columns: 1; }
  .pd-map__products[data-count="1"] { max-width: none; }
  .pd-map__phases { grid-template-columns: 1fr; gap: 1rem; }
  .pd-map__next { display: none; }
  .pd-sections { gap: .4rem .9rem; justify-content: start; }
  .pd-sections a { font-size: .78rem; }
}

/* Ritual map: one shared card baseline, with the two pre-wash options grouped. */
.pd-map__phases { gap: 1.5rem; align-items: stretch; }
.pd-map__phase {
  display: grid;
  grid-template-rows: minmax(2.25rem, auto) minmax(3rem, auto) 1fr;
  align-content: stretch;
  gap: .75rem;
  padding-block: 1.5rem 0;
  min-width: 0;
}
.pd-map__phase-name { grid-row: 1; font-size: clamp(1.25rem, 1.65vw, 1.65rem); line-height: 1.3; margin: 0; }
.pd-map__shared { grid-row: 2; font-size: .85rem; line-height: 1.65; max-width: 38ch; margin: 0; }
.pd-map__products { grid-row: 3; align-items: stretch; gap: .75rem; }
.pd-map__products[data-count="1"] { max-width: none; }
.pd-map__product { display: flex; min-width: 0; }
.pd-map__card {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-rows: 108px minmax(3rem, auto) minmax(2.8rem, auto) 1.5rem;
  align-content: start;
  align-items: start;
  gap: .6rem;
  padding: 1.25rem 1rem;
  background: #f5ede404;
  border-radius: 0;
}
.pd-map__thumb { grid-row: 1; width: 100%; height: 108px; aspect-ratio: auto; margin: 0; }
.pd-map__thumb .frame-box { bottom: 5px; height: calc(96px * var(--frame-k)); }
.pd-map__name { grid-row: 2; font-size: 1.2rem; line-height: 1.35; align-self: start; }
.pd-map__zones { grid-row: 3; font-size: .82rem; line-height: 1.6; }
.pd-map__here { grid-row: 4; margin: 0; font-size: .75rem; line-height: 1.5; align-self: end; }
.pd-map__next { display: none; }
.pd-map__product[data-current] .pd-map__card { background: #c9a2270c; }
@media (min-width: 901px) {
  .pd-map__phases { grid-template-rows: auto auto auto; row-gap: .75rem; }
  .pd-map__phases:has(.pd-map__products[data-count="2"]) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pd-map__phase:has(.pd-map__products[data-count="2"]) { grid-column: span 2; }
  .pd-map__products { column-gap: 1.5rem; }
  .pd-map__phase { grid-row: 1 / span 3; grid-template-rows: subgrid; }
}
@media (max-width: 900px) {
  .pd-map__phases { grid-template-columns: 1fr; gap: 2rem; }
  .pd-map__phase { grid-template-rows: auto auto; }
  .pd-map__shared { grid-row: auto; }
  .pd-map__products { grid-row: auto; }
  .pd-map__products[data-count="1"] { grid-template-columns: minmax(0, 1fr); }
  .pd-map__products[data-count="1"] .pd-map__card {
    grid-template-columns: 100px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    column-gap: 1.25rem;
  }
  .pd-map__products[data-count="1"] .pd-map__thumb { grid-column: 1; grid-row: 1 / span 3; }
  .pd-map__products[data-count="1"] .pd-map__name { grid-column: 2; grid-row: 1; }
  .pd-map__products[data-count="1"] .pd-map__zones { grid-column: 2; grid-row: 2; }
  .pd-map__products[data-count="1"] .pd-map__here { grid-column: 2; grid-row: 3; }
}

/* Hair ritual — editorial introduction and a consistent chapter system. */
.ritual--cheveux .rh-open { background: var(--ivoire); padding-block: calc(var(--header-h) + 2.5rem) 3rem; }
.rh-open__inner { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto 1fr; column-gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.rh-open__inner .breadcrumbs { grid-column: 1; }
.rh-open__inner .ritual__title { grid-column: 1; font-size: clamp(3.5rem, 6vw, 6.5rem); letter-spacing: -.045em; line-height: 1.04; margin-top: 2.5rem; max-width: 9ch; }
.rh-open__inner .ritual__lede { grid-column: 1; margin-top: 1.5rem; max-width: 35ch; font-size: 1.05rem; line-height: 1.8; }
.rh-open__portrait { grid-column: 2; grid-row: 1 / span 3; aspect-ratio: 5/4; overflow: hidden; }
.rh-open__portrait img { object-position: 50% 45%; }
.ritual--cheveux .rh-wall { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; --recess-h: 190px; margin-top: 3rem; }
.ritual--cheveux .rh-wall:before { display: none; }
.ritual--cheveux .rh-bay__link { gap: 0; border: 1px solid var(--border-subtle); height: 100%; background: var(--stone-light); }
.ritual--cheveux .rh-bay__recess { padding-top: 1rem; height: var(--recess-h); margin: 0; }
.ritual--cheveux .rh-bay__recess:before { clip-path: none; background: linear-gradient(120deg, var(--plaster), var(--stone-light)); box-shadow: none; }
.ritual--cheveux .rh-bay__recess:after { display: none; }
.ritual--cheveux .rh-bay__obj { height: calc(78% * var(--frame-k)); }
.ritual--cheveux .rh-bay__label { padding: 1.25rem; gap: .6rem; }
.ritual--cheveux .rh-bay__phase { font-size: 1.5rem; letter-spacing: -.02em; }
.ritual--cheveux .rh-bay__names { font-size: .82rem; line-height: 1.65; min-height: 3.3em; }
.ritual--cheveux .ritual__phases { display: block; }
.ritual--cheveux .ritual-rail { display: block; position: sticky; top: var(--header-h); z-index: 12; padding: .8rem var(--gutter); background: var(--stone-light); border-block: 1px solid var(--border-subtle); }
.ritual--cheveux .ritual-rail ol { display: flex; justify-content: center; gap: clamp(1rem, 4vw, 4rem); border: 0; padding: 0; }
.ritual--cheveux .ritual-rail ol:before { display: none; }
.ritual--cheveux .ritual-rail a { display: flex; align-items: center; gap: .6rem; padding: .4rem 0; border-bottom: 1px solid transparent; font-size: .85rem; }
.ritual--cheveux .ritual-rail a[aria-current] { border-bottom-color: var(--accent); color: var(--accent); }
.ritual--cheveux .rh-phase { padding-block: 3.5rem; scroll-margin-top: calc(var(--header-h) + 85px); }
.ritual--cheveux .rh-head { grid-column: 1 / -1; grid-row: 1; align-self: start; padding-bottom: 1.5rem; border-bottom: 1px solid var(--border-subtle); }
.ritual--cheveux .rh-head__title { margin-top: 0; font-size: clamp(2.3rem, 4vw, 3.5rem); letter-spacing: -.035em; }
.ritual--cheveux .rh-head__note { max-width: 50ch; font-size: .95rem; line-height: 1.7; margin-top: .65rem; }
.ritual--cheveux .rh-shared__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem clamp(2rem, 5vw, 5rem); }
.ritual--cheveux .rh-shared__stage { display: contents; }
.ritual--cheveux .rh-stage { grid-column: 1; grid-row: 2; position: sticky; top: calc(var(--header-h) + 100px); margin: 0; }
.ritual--cheveux .rh-stage__recess { height: clamp(280px, 32vw, 420px); gap: 9%; }
.ritual--cheveux .rh-stage__recess:before { clip-path: none; box-shadow: none; background: linear-gradient(120deg, var(--plaster), var(--stone-light)); }
.ritual--cheveux .rh-stage__recess:after { display: none; }
.ritual--cheveux .rh-stage__caption { font-size: .8rem; top: calc(100% + .85rem); }
.ritual--cheveux .rh-stage__item:not([data-active]) .rh-stage__obj { opacity: .7; transform: scale(.97); }
.ritual--cheveux .rh-zones { margin-top: 3.25rem; gap: .75rem 1.25rem; font-size: .8rem; }
.ritual--cheveux .rh-shared__texts { grid-column: 2; grid-row: 2; padding-top: 0; display: grid; gap: 1.5rem; }
.ritual--cheveux .rh-text { min-height: 0; justify-content: start; padding: 1.75rem; border: 1px solid var(--border-subtle); background: var(--stone-light); transition: border-color .5s; }
.ritual--cheveux .rh-text[data-active] { border-color: var(--accent-decor); }
.ritual--cheveux .rh-text+.rh-text { margin-top: 0; padding-top: 1.75rem; }
.ritual--cheveux .ritual-name { font-size: clamp(1.8rem, 2.5vw, 2.5rem); letter-spacing: -.025em; line-height: 1.15; }
.ritual--cheveux .ritual-role { font-size: .92rem; line-height: 1.65; }
.ritual--cheveux .ritual-zones { padding-top: 1rem; border-top: 1px solid var(--border-subtle); gap: .5rem; font-size: .82rem; }
.ritual--cheveux .ritual-usage { margin-top: 1.25rem; }
.ritual--cheveux .ritual-usage__steps { counter-reset: hair-use; gap: 0; margin-top: .75rem; max-width: none; }
.ritual--cheveux .ritual-usage__steps li { counter-increment: hair-use; padding: .7rem 0 .7rem 1.75rem; border-top: 1px solid var(--border-subtle); font-size: .94rem; line-height: 1.75; }
.ritual--cheveux .ritual-usage__steps li:before { content: counter(hair-use); background: none; width: auto; height: auto; color: var(--accent); font-size: .78rem; top: .95rem; }
.ritual--cheveux .ritual-usage__facts { gap: 1rem 2rem; padding-top: 1rem; border-top: 1px solid var(--border-subtle); }
.ritual--cheveux .ritual-discover { margin-top: 1.25rem; font-size: .85rem; align-self: start; }
.ritual--cheveux #nettoyage { background: var(--sable-rose); }
.ritual--cheveux .rh-single__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto; gap: 2rem clamp(2rem, 5vw, 5rem); align-items: start; }
.ritual--cheveux .rh-single__visual { grid-column: 1; grid-row: 2; height: clamp(300px, 34vw, 450px); background: linear-gradient(120deg, var(--plaster), var(--stone-light)); }
.ritual--cheveux .rh-single__recess, .ritual--cheveux .rh-single__sill { display: none; }
.ritual--cheveux .rh-single__obj { height: calc(74% * var(--frame-k)); bottom: 13%; }
.ritual--cheveux .rh-single__text { grid-column: 2; grid-row: 2; padding: 1.75rem; border: 1px solid var(--border-subtle); background: var(--stone-light); }
.ritual--cheveux [data-reveal]:not([data-revealed]) { opacity: 1; transform: none; }
.ritual--cheveux .ritual-final { background: var(--stone-light); padding-block: 3.5rem; }
.ritual--cheveux .ritual-final__title { text-align: start; font-size: clamp(2.3rem, 4vw, 3.5rem); letter-spacing: -.035em; }
.ritual--cheveux .ritual-final__line { text-align: start; margin: .9rem 0 0; max-width: 55ch; font-size: 1rem; line-height: 1.7; }
.ritual--cheveux .ritual-final__phases { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; margin-top: 2rem; }
.ritual--cheveux .ritual-final__phase:has(.ritual-final__products>li:nth-child(2)) { grid-column: span 2; }
.ritual--cheveux .ritual-final__products { gap: 1.5rem; }
.ritual--cheveux .ritual-final__card { height: 100%; grid-template-rows: auto minmax(3rem, auto) minmax(3rem, auto) auto; }
.ritual--cheveux .ritual-final__thumb { height: 210px; box-shadow: none; }
.ritual--cheveux .ritual-final__name { font-size: 1.2rem; }
.ritual--cheveux .ritual-final__sub { font-size: .8rem; line-height: 1.6; }
.ritual--cheveux .ritual-final__next { display: none; }
@media (max-width: 900px) {
  .rh-open__inner { grid-template-columns: 1fr; gap: 0; }
  .rh-open__portrait { grid-column: 1; grid-row: 4; margin-top: 2rem; aspect-ratio: 16/9; }
  .rh-open__inner .ritual__title { margin-top: 1.5rem; font-size: clamp(3.25rem, 8vw, 5rem); max-width: none; }
  .rh-open__inner .ritual__lede { max-width: 50ch; }
  .ritual--cheveux .rh-wall { gap: 1rem; --recess-h: 140px; margin-top: 1.5rem; }
  .ritual--cheveux .rh-bay__label { padding: 1rem; }
  .ritual--cheveux .rh-bay__phase { font-size: 1.2rem; }
  .ritual--cheveux .rh-bay__names { font-size: .75rem; }
  .ritual--cheveux .rh-shared__grid, .ritual--cheveux .rh-single__grid { grid-template-columns: 1fr; }
  .ritual--cheveux .rh-stage { position: relative; top: 0; grid-column: 1; grid-row: 2; margin-bottom: 1rem; }
  .ritual--cheveux .rh-stage__recess { height: 320px; }
  .ritual--cheveux .rh-shared__texts, .ritual--cheveux .rh-single__text { grid-column: 1; grid-row: 3; }
  .ritual--cheveux .rh-single__visual { grid-column: 1; grid-row: 2; height: 320px; }
  .ritual--cheveux .ritual-final__phases { grid-template-columns: 1fr; }
  .ritual--cheveux .ritual-final__phase:has(.ritual-final__products>li:nth-child(2)) { grid-column: auto; }
  .ritual--cheveux .ritual-final__products { grid-auto-flow: initial; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  .ritual--cheveux .rh-wall { grid-template-columns: 1fr; }
  .ritual--cheveux .rh-bay__link { grid-template-columns: 110px minmax(0, 1fr); align-items: center; }
  .ritual--cheveux .rh-bay__recess { height: 120px; gap: 5%; }
  .ritual--cheveux .rh-bay__names { min-height: 0; }
  .ritual--cheveux .rh-text, .ritual--cheveux .rh-single__text { padding: 1.25rem; }
  .ritual--cheveux .rh-text+.rh-text { padding-top: 1.25rem; }
  .ritual--cheveux .ritual-rail { padding-inline: 1rem; }
  .ritual--cheveux .ritual-rail a { gap: .25rem; font-size: .75rem; }
  .ritual--cheveux .ritual-rail ol { gap: .75rem; }
  .ritual--cheveux .rh-phase { padding-block: 2.5rem; }
}
@media(min-width:900px){.site-footer__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Hair ritual, cinematic direction. Existing moments, products and technical copy retained. */
body:has(.ritual--cheveux) .site-header:not([data-state=solid]) { background: transparent; color: var(--ivoire); backdrop-filter: none; }
body:has(.ritual--cheveux) .site-header:not([data-state=solid]) a { color: inherit; }
body:has(.ritual--cheveux) .site-header:not([data-state=solid]) .site-header__inner { border-color: #f5ede42b; }
.ritual--cheveux .rh-open { position: relative; isolation: isolate; padding: 0; color: var(--ivoire); background: var(--brun-nuit); min-height: min(100svh, 1100px); overflow: hidden; }
.ritual--cheveux .rh-open:after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, #2b2019b8 0%, #2b201987 30%, #2b201924 63%, transparent 86%), linear-gradient(0deg, #2b2019e8, transparent 40%); }
.ritual--cheveux .rh-open__inner { position: static; display: flex; flex-direction: column; justify-content: center; align-items: start; gap: 0; min-height: min(100svh, 1100px); padding-top: calc(var(--header-h) + 3rem); padding-bottom: 13rem; }
.ritual--cheveux .rh-open__portrait { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; margin: 0; z-index: 0; }
.ritual--cheveux .rh-open__portrait img { display:block;width:100%;height:100%;object-fit:cover;object-position:60% center; }
.ritual--cheveux .rh-open__inner .ritual-crumbs { position: relative; z-index: 2; color: #f5ede4b3; margin-bottom: 3rem; font-size: .75rem; }
.ritual--cheveux .rh-open__inner .ritual-crumbs a { color: inherit; }
.ritual--cheveux .rh-open__inner .ritual-crumbs * { color: #f5ede4ad; }
.ritual--cheveux .rh-open__inner .ritual__title { position: relative; z-index: 2; max-width: 8.5ch; margin: 0; color: var(--ivoire); font-size: clamp(5rem, 8.8vw, 10rem); line-height: .98; letter-spacing: -.055em; }
.rh-open__kicker { display: block; font: 400 .75rem/1.6 var(--font-body); letter-spacing: .24em; text-transform: uppercase; margin-bottom: 1.75rem; color: var(--sable-rose); }
.rh-open__headline { display: block; }
.ritual--cheveux .rh-open__inner .ritual__lede { position: relative; z-index: 2; margin-top: 2rem; color: #f5ede4c9; max-width: 35ch; font-size: 1rem; line-height: 1.8; }
.ritual--cheveux .rh-open>.container:last-child { position: absolute; z-index: 3; bottom: 2.5rem; left: 50%; transform: translateX(-50%); }
.ritual--cheveux .rh-wall { margin: 0; gap: 2rem; }
.ritual--cheveux .rh-bay__link { display: block; padding: 1.25rem 0 0; border: 0; border-top: 1px solid #f5ede44a; background: transparent; }
.ritual--cheveux .rh-bay__recess { display: none; }
.ritual--cheveux .rh-bay__label { padding: 0; gap: .65rem; position: relative; }
.ritual--cheveux .rh-bay__phase { color: var(--ivoire); font-size: clamp(1.2rem, 2vw, 1.8rem); padding-right: 2rem; }
.ritual--cheveux .rh-bay__names { min-height: 0; color: #f5ede4a3; font-size: .8rem; }
.ritual--cheveux .rh-bay__label:after { content: '↘'; position: absolute; right: .25rem; top: 0; color: var(--sable-rose); font-size: 1.5rem; transition: transform .5s var(--ease-out); }
.ritual--cheveux .rh-bay__link:hover .rh-bay__label:after { transform: translate(3px, 3px); }
.ritual--cheveux .rh-bay__link:hover .rh-bay__phase { text-decoration: none; }
.ritual--cheveux .ritual-rail { padding-block: .65rem; background: #f5ede4f5; backdrop-filter: blur(16px); }
.ritual--cheveux .ritual-rail ol { justify-content: start; max-width: calc(var(--container) - 2 * var(--gutter)); margin-inline: auto; gap: 3rem; }
.ritual--cheveux .rh-phase { padding-block: clamp(4rem, 7vw, 7rem); border-top: 0; }
.ritual--cheveux .rh-head { display: flex; align-items: end; justify-content: space-between; gap: 2rem; border: 0; padding: 0 0 1.5rem; }
.ritual--cheveux .rh-head__title { font-size: clamp(3rem, 5vw, 5.5rem); letter-spacing: -.045em; max-width: 12ch; line-height: 1.03; }
.ritual--cheveux .rh-head__note { margin: 0 0 .25rem; max-width: 33ch; font-size: .9rem; }
.ritual--cheveux .rh-shared__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 2rem clamp(3rem, 7vw, 7rem); }
.ritual--cheveux .rh-stage { top: calc(var(--header-h) + 90px); }
.ritual--cheveux .rh-stage__recess { height: clamp(380px, 42vw, 610px); gap: 8%; }
.ritual--cheveux .rh-stage__recess:before { background: radial-gradient(ellipse at 50% 70%, var(--sable-rose), transparent 75%); }
.ritual--cheveux .rh-stage__item { height: 92%; }
.ritual--cheveux .rh-stage__obj { filter: drop-shadow(8px 16px 12px #2b201922); transition: opacity .9s var(--ease-out), transform 1.1s var(--ease-out), filter 1.1s var(--ease-out); }
.ritual--cheveux .rh-stage__item:not([data-active]) .rh-stage__obj { opacity: .48; transform: translateY(10px) scale(.94); }
.ritual--cheveux .rh-stage__caption { top: calc(100% + .25rem); }
.ritual--cheveux .rh-zones { margin-top: 2.5rem; }
.ritual--cheveux .rh-shared__texts { gap: 0; }
.ritual--cheveux .rh-text, .ritual--cheveux .rh-text+.rh-text { padding: 2.5rem 0 3rem; border: 0; border-top: 1px solid var(--border-strong); background: transparent; }
.ritual--cheveux .rh-text[data-active] { border-top-color: var(--terracotta); }
.ritual--cheveux .rh-text+.rh-text { padding-top: 3rem; }
.ritual--cheveux .ritual-name { font-size: clamp(2rem, 2.8vw, 3rem); line-height: 1.1; }
.ritual--cheveux .ritual-role { margin-top: .7rem; font-size: .9rem; }
.ritual--cheveux .ritual-zones { border: 0; padding-top: 0; margin-top: 1.4rem; }
.ritual--cheveux .ritual-usage { margin-top: 2rem; }
.ritual--cheveux .ritual-usage__steps li { border-top: 0; border-bottom: 1px solid var(--border-subtle); padding-block: .85rem; font-size: .95rem; }
.ritual--cheveux .ritual-usage__steps li:before { top: 1.1rem; }
.ritual--cheveux .ritual-usage__facts { border-top: 0; padding-top: .5rem; }
.ritual--cheveux .ritual-discover { margin-top: 2rem; }
.ritual--cheveux #nettoyage { background: var(--brun-nuit); color: var(--ivoire); }
.ritual--cheveux #nettoyage .rh-head__note, .ritual--cheveux #nettoyage .ritual-role { color: var(--text-on-dark-muted); }
.ritual--cheveux #nettoyage .ritual-usage__label { color: var(--sable-rose); }
.ritual--cheveux #nettoyage .ritual-usage__steps li { border-color: #f5ede424; }
.ritual--cheveux #nettoyage .ritual-usage__steps li:before { color: var(--sable-rose); }
.ritual--cheveux .rh-single__grid { gap: 2.5rem clamp(3rem, 7vw, 7rem); }
.ritual--cheveux .rh-single__visual { height: clamp(350px, 40vw, 560px); background: radial-gradient(ellipse at center, #b9745514, transparent 75%); }
.ritual--cheveux #nettoyage .rh-single__visual { background: radial-gradient(ellipse at center, #f5ede41a, transparent 75%); }
.ritual--cheveux .rh-single__obj { bottom: 16%; height: calc(75% * var(--frame-k)); filter: drop-shadow(10px 20px 15px #0003); }
.ritual--cheveux .rh-single__text { padding: 1.5rem 0; border: 0; background: transparent; align-self: center; }
.ritual--cheveux #shampoing .rh-single__visual { grid-column: 2; }
.ritual--cheveux #shampoing .rh-single__text { grid-column: 1; }
.ritual--cheveux .ritual-final { background: var(--sable-rose); padding-block: 5rem; }
.ritual--cheveux .ritual-final__thumb { background: #f8f2ea70; }
.ritual--cheveux .ritual-final__name { min-height: 3rem; }
@media (prefers-reduced-motion: no-preference) {
  .ritual--cheveux .rh-open__portrait img { animation: hair-cinema 2s cubic-bezier(.16,1,.3,1) both; }
  .rh-open__headline { animation: hair-title 1.2s cubic-bezier(.16,1,.3,1) .12s both; }
  .ritual--cheveux .rh-open .ritual__lede { animation: hair-title 1.2s cubic-bezier(.16,1,.3,1) .3s both; }
  @keyframes hair-cinema { from { transform: scale(1.08); opacity: .65; } to { transform: scale(1); opacity: 1; } }
  @keyframes hair-title { from { transform: translateY(24px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
}
@media (max-width: 900px) {
  .ritual--cheveux .rh-open, .ritual--cheveux .rh-open__inner { min-height: 850px; }
  .ritual--cheveux .rh-open__inner { padding-top: calc(var(--header-h) + 2rem); padding-bottom: 13rem; }
  .ritual--cheveux .rh-open__portrait { inset: 0; }
  .ritual--cheveux .rh-open__portrait img { object-position:66% center; }
  .ritual--cheveux .rh-open:after { background: linear-gradient(90deg,#2b2019e8,#2b201938),linear-gradient(0deg,#2b2019f5,transparent 75%); }
  .ritual--cheveux .rh-open__inner .ritual__title { font-size: clamp(4.5rem, 12vw, 7rem); }
  .ritual--cheveux .rh-open__inner .ritual-crumbs { margin-bottom: 2rem; }
  .ritual--cheveux .rh-open .rh-wall { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
  .ritual--cheveux .rh-bay__link { display: block; }
  .ritual--cheveux .rh-bay__phase { font-size: 1.05rem; padding-right: 1rem; }
  .ritual--cheveux .rh-bay__names { font-size: .7rem; }
  .ritual--cheveux .rh-bay__label:after { font-size: 1rem; right: 0; }
  .ritual--cheveux .rh-shared__grid, .ritual--cheveux .rh-single__grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .ritual--cheveux .rh-head { display: block; }
  .ritual--cheveux .rh-head__note { margin-top: 1rem; }
  .ritual--cheveux .rh-stage { top: 0; }
  .ritual--cheveux .rh-stage__recess { height: 350px; }
  .ritual--cheveux .rh-text, .ritual--cheveux .rh-text+.rh-text { padding-block: 2rem; }
  .ritual--cheveux #shampoing .rh-single__visual { grid-column: 1; }
  .ritual--cheveux .rh-single__visual { height: 350px; }
  .ritual--cheveux .ritual-rail ol { gap: 1.25rem; }
}
@media (max-width: 540px) {
  .ritual--cheveux .rh-open, .ritual--cheveux .rh-open__inner { min-height: 790px; }
  .ritual--cheveux .rh-open__inner .ritual__title { font-size: 4.75rem; }
  .rh-open__kicker { font-size: .65rem; }
  .ritual--cheveux .rh-open__inner .ritual__lede { font-size: .9rem; max-width: 30ch; }
  .ritual--cheveux .rh-bay__names { display: none; }
  .ritual--cheveux .rh-open>.container:last-child { bottom: 2rem; }
  .ritual--cheveux .rh-bay__phase { font-size: .9rem; line-height: 1.5; }
  .ritual--cheveux .rh-phase { padding-block: 3.5rem; }
}

/* Catalogue offers, using the site's established editorial language. */
.catalogue-offers { margin-top: 4rem; padding-top: 3rem; border-top: 1px solid var(--border-strong); }
.catalogue-offers>h2 { margin-top: .75rem; font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.1; letter-spacing: -.035em; }
.catalogue-offers__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 2rem; margin-top: 2rem; }
.catalogue-offer { display: flex; flex-direction: column; align-items: start; gap: .75rem; padding: 1.75rem 0; border-top: 1px solid var(--border-strong); }
.catalogue-offer h3 { font-size: 1.65rem; line-height: 1.2; letter-spacing: -.02em; min-height: 2.4em; }
.catalogue-offer__description { font-size: .9rem; color: var(--text-muted); line-height: 1.75; flex: 1; }
.catalogue-offer__price { font-family: var(--font-display); font-size: 2.2rem; margin-top: .5rem; }
.catalogue-offer__delivery { font-size: .8rem; color: var(--accent); }
.catalogue-offer .link-arrow { font-size: .85rem; margin-top: .5rem; }

/* Photographic reference hero. Product assets, carousel state and morphs stay native. */
body:has(.hero-reference){--header-h:clamp(48px,4.4vw,76px)}
body:has(.hero-reference) .site-header{background:#f4ecdf;backdrop-filter:none}
body:has(.hero-reference) .site-header__inner{width:64%;max-width:1240px;padding-inline:0;border:0;margin-inline:auto}
body:has(.hero-reference) .wordmark{font-family:var(--font-body);font-weight:400;letter-spacing:.08em;font-size:clamp(1.25rem,2vw,2rem)}
body:has(.hero-reference) .site-nav{font-size:clamp(.6rem,.8vw,.95rem);text-transform:uppercase}
.hero-reference{height:auto;padding-top:var(--header-h);background:#e7d8be}
.hero-reference .hero{position:relative;height:calc(100svh - var(--header-h));min-height:550px;top:0;isolation:isolate;overflow:hidden;background:#e7d8be}
.hero-reference .fade-on-pass{opacity:1;visibility:visible;transform:none}
.hero-reference .hero__wall{position:absolute;inset:0;background:#e7d8be url('/assets/scenes/home-hero-reference.png') no-repeat;background-position:var(--scene-left,50%) var(--scene-top,50%);background-size:var(--scene-size,cover);transform:none;opacity:1}
.hero-reference .hero__light,.hero-reference .hero__pedestal,.hero-reference .hero__shadow,.hero-reference .hero__bgtype{display:none}
.hero-reference .hero__grid{position:static;display:block;width:100%;max-width:none;height:100%;padding:0;margin:0}
.hero-reference .hero__copy{position:absolute;z-index:3;left:max(18vw,calc((100% - 1240px)/2));top:19%;width:37%;max-width:680px;padding:0;gap:0;align-self:auto}
.hero-reference .hero__copy .eyebrow{font-size:clamp(.59rem,.73vw,.84rem);letter-spacing:.14em;margin:0 0 1rem;color:#30271e}
.hero-reference .hero__title{font-size:clamp(3rem,4.7vw,5.8rem);line-height:1.02;letter-spacing:-.045em;max-width:12ch;text-wrap:initial;margin:0;color:#18130f;font-weight:400}
.hero-reference .hero__lede{display:block;font-size:clamp(.8rem,1.1vw,1.2rem);line-height:1.4;max-width:31ch;margin:1rem 0 0;color:#382d23}
.hero-reference .hero__ctas{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.2rem}
.hero-reference .hero__ctas .btn{font-size:clamp(.6rem,.72vw,.83rem);min-height:34px;padding:.7rem 1.25rem;text-transform:uppercase;letter-spacing:.01em}
.hero-reference .hero__ctas .btn-solid{border-radius:999px;background:#281e16;border:1px solid #18130e;box-shadow:inset 0 1px 0 #ffffff25}
.hero-reference .hero__ctas .btn-line{border:0;margin:0;padding-inline:0;background:none;box-shadow:none;border-radius:0}
.hero-reference .hero__ctas .btn-line:after{content:' →';margin-inline-start:.25rem}
.hero-reference .hero__stage{position:absolute;inset:0;z-index:1;width:100%;height:100%;max-width:none;aspect-ratio:auto;margin:0;transform:none}
.hero-reference .hero__niche{position:absolute;inset:5% 16% 8% 53%;opacity:0;transform:none;width:auto;height:auto}
.hero-reference .hero__object{position:absolute;inset:0;width:100%;height:100%;transform:none}
.hero-reference .hero__slot{left:var(--hero-x,68.8%);top:auto;bottom:calc(100% - var(--hero-ground,66%));height:calc(var(--hero-product-h,370px) * var(--frame-k));aspect-ratio:var(--frame-ar);filter:drop-shadow(8px 7px 5px #28190d32);transform:translate(-50%,10px) scale(.98);transition:opacity .85s ease,transform 1.2s cubic-bezier(.2,.65,.3,1)}
.hero-reference .hero__slot[data-state=active]{transform:translate(-50%,0) scale(1);transition-delay:.12s}
.hero-reference .hero__slot[data-state=leaving]{transform:translate(-50%,-6px) scale(.99);transition-delay:0s}
.hero-reference .hero__index{position:absolute;z-index:4;left:max(18vw,calc((100% - 1240px)/2));bottom:0;width:clamp(340px,32vw,560px);height:clamp(100px,8.6vw,150px);display:flex;align-items:center;justify-content:flex-start;gap:1rem;padding:1rem 1.1rem;border:0;background:#f7f0e4ed;box-shadow:0 8px 40px #44301b08}
.hero-reference .hero__thumb{position:relative;flex:0 0 46px;height:76px;background:#ebe0ce;border-radius:50% 50% 0 0;overflow:hidden}
.hero-reference .hero__thumb .asset{position:absolute;inset:8%;width:84%!important;height:84%!important}
.hero-reference .hero__now{position:relative;display:flex;flex:1;flex-direction:column;justify-content:center;gap:.25rem;min-height:0;min-width:0;text-align:start}
.hero-reference .hero__step{display:none}
.hero-reference .hero__name{font-size:clamp(.95rem,1.25vw,1.5rem);font-weight:400;text-transform:uppercase;letter-spacing:-.02em;line-height:1.1;margin:0}
.hero-reference .hero__sub{font-size:clamp(.64rem,.73vw,.85rem);line-height:1.35;margin:0;color:#4c4034}
.hero-reference .hero__now .link-arrow{position:absolute;inset:-.5rem;opacity:0;z-index:1;margin:0;padding:.5rem}
.hero-reference .hero__now .link-arrow:focus-visible{opacity:1;background:#f7f0e4;outline:1px solid #4c4034}
.hero-reference .hero__controls{display:flex;align-items:center;gap:0;flex:0 0 auto;width:auto;margin:0;flex-wrap:nowrap}
.hero-reference .hero__controls .icon-btn{width:26px;height:36px;min-width:26px;min-height:36px;padding:5px;background:none;border:0}
.hero-reference .hero__controls .icon-btn svg{width:13px;height:13px}
.hero-reference .hero__counter{font-size:.62rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.hero-reference .hero__ticks{display:none}
.hero-reference .hero__controls .hero__play{width:23px;min-width:23px;margin:0;opacity:.65}
@media(min-width:1600px){.hero-reference .hero__thumb{flex-basis:62px;height:102px}.hero-reference .hero__index{gap:1.25rem;padding:1.25rem 1.5rem}.hero-reference .hero__controls .icon-btn{width:32px}.hero-reference .hero__counter{font-size:.75rem}}
@media(max-width:799px){
 body:has(.hero-reference) .site-header__inner{width:auto;padding-inline:1.25rem}
 .hero-reference .hero{height:calc(100svh - var(--header-h));min-height:800px}
 .hero-reference .hero__wall{mask-image:linear-gradient(to bottom,transparent 28%,#000 42%)}
 .hero-reference .hero__copy{left:1.5rem;top:5%;width:calc(100% - 3rem);max-width:500px}
 .hero-reference .hero__copy .eyebrow{font-size:.6rem;margin-bottom:.8rem}
 .hero-reference .hero__title{font-size:clamp(2.8rem,8vw,4rem);max-width:13ch}
 .hero-reference .hero__lede{font-size:.85rem;max-width:31ch;margin-top:.8rem}
 .hero-reference .hero__ctas{margin-top:1rem;gap:.9rem}
 .hero-reference .hero__ctas .btn{font-size:.6rem;padding:.65rem 1rem}
 .hero-reference .hero__ctas .btn-line{padding-inline:0}
 .hero-reference .hero__index{left:1.25rem;bottom:1rem;width:calc(100% - 2.5rem);height:100px;gap:.65rem;padding:.8rem}
 .hero-reference .hero__name{font-size:.95rem}
 .hero-reference .hero__sub{font-size:.62rem}
 .hero-reference .hero__thumb{flex-basis:37px;height:66px}
 .hero-reference .hero__controls .icon-btn{width:22px;min-width:22px}
 .hero-reference .hero__counter{font-size:.6rem}
}
@media(prefers-reduced-motion:reduce){.hero-reference{height:auto}.hero-reference .hero{position:relative;top:0}.hero-reference .hero__slot{transition:none}}
/* User revision: remove the product panel; retain an unobtrusive pause control. */
.hero-reference .hero__index{display:contents}
.hero-reference .hero__thumb,.hero-reference .hero__now,.hero-reference .hero__counter,.hero-reference .hero__controls .icon-btn:not(.hero__play){display:none}
.hero-reference .hero__controls{position:absolute;z-index:4;right:1.5rem;bottom:1.5rem;gap:0}
.hero-reference .hero__controls .hero__play{width:40px;height:40px;min-width:40px;min-height:40px;border:1px solid #3d2b2038;border-radius:50%;background:#f4ecdf75;opacity:.7}
.hero-reference .hero__slot .asset img{filter:sepia(.18) saturate(.75) brightness(.96) contrast(.96)}
.hero-reference .hero__slot[data-morph=savon-corporel] .asset img{filter:sepia(.2) saturate(.52) brightness(.93) contrast(.93)}

/* A photographed Moroccan display wall; all packaging remains the approved cutout. */
.wall{position:relative;isolation:isolate;background:#e5d3b7;padding-block:3.5rem 5rem;color:#281c13;scroll-margin-top:var(--header-h)}
.wall:before{content:'';position:absolute;z-index:-1;inset:0 0 auto;height:max(850px,56.25vw);max-height:100%;background:url('/assets/scenes/collection-plaster-v1.png') right top/cover no-repeat;filter:brightness(.97) contrast(.85) saturate(.8);opacity:.8;mask-image:linear-gradient(#000 65%,transparent);pointer-events:none}
.wall>.container{width:min(calc(100% - 3rem),68vw);max-width:1280px;padding-inline:0}
.wall .wall__head{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding-bottom:1.3rem;margin-bottom:1.5rem;border-color:#573e2326}
.wall .wall__title{font-size:clamp(2rem,3.3vw,4rem);font-weight:400;line-height:1.1;letter-spacing:-.045em;scroll-margin-top:calc(var(--header-h) + 1.75rem)}
.wall .wall__filters{display:flex;gap:.2rem}
.wall .wall__filter{min-height:36px;border-radius:999px;padding:.5rem .9rem;background:none;font-size:clamp(.62rem,.72vw,.82rem);color:#3e2d1f;transition:background-color .25s,color .25s,border-color .25s}
.wall .wall__filter[aria-pressed=true]{background:#2c2017;border-color:#2c2017;color:#f6efdf}
.wall .wall__filter:hover{border-color:#573e2345}
.wall .wall__count{font-size:clamp(.6rem,.7vw,.8rem);color:#594431}
.wall .wall__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem 1.25rem;align-items:start}
.wall .wall__grid>li:nth-child(n){margin-top:0}
.wall .pcard__link{gap:.85rem}
.wall .pcard__alcove,.wall .pcard__link:hover .pcard__alcove{aspect-ratio:1;border-radius:0;background:#d5bd97 url('/assets/scenes/collection-niche-v1.png') center/100% 100% no-repeat;overflow:hidden;box-shadow:none;isolation:isolate}
.wall .pcard__alcove:after{content:'';position:absolute;z-index:0;left:30%;bottom:20%;width:40%;height:2%;border-radius:50%;background:#3d281d65;filter:blur(2.5px);pointer-events:none}
.wall .pcard__plinth{display:none}
.wall .pcard__object{height:calc(68% * var(--frame-k));bottom:21%;z-index:1;filter:drop-shadow(5px 4px 2px #33211345);transition:filter .5s ease;transform:translate(-50%)}
.wall .pcard__object .asset img{filter:sepia(.24) saturate(.76) brightness(.94) contrast(.96);transition:filter .5s ease}
.wall .pcard[data-slug=savon-corporel] .pcard__object .asset img{filter:sepia(.2) saturate(.52) brightness(.93) contrast(.93)}
.wall .pcard__link:hover .pcard__object{transform:translate(-50%);filter:drop-shadow(6px 5px 3px #33211350)}
.wall .pcard__link:hover .pcard__object .asset img{filter:sepia(.2) saturate(.8) brightness(.98) contrast(.96)}
.wall .pcard[data-slug=savon-corporel] .pcard__link:hover .pcard__object .asset img{filter:sepia(.2) saturate(.56) brightness(.96) contrast(.93)}
.wall .pcard__meta{display:grid;gap:.3rem;padding:0}
.wall .pcard__category{text-transform:uppercase;letter-spacing:.08em;font-size:clamp(.5rem,.55vw,.68rem);color:#77553a}
.wall .pcard__name{font-size:clamp(.95rem,1.12vw,1.4rem);font-weight:400;line-height:1.22;letter-spacing:-.025em;min-height:1.5em;color:#281c13}
.wall .pcard__sub{font-size:clamp(.68rem,.75vw,.9rem);line-height:1.45;min-height:2.9em;color:#493728}
.wall .pcard__price{display:flex;align-items:center;justify-content:space-between;font-size:clamp(.65rem,.73vw,.9rem);margin:.3rem 0 0;padding:.65rem 0 0;border-color:#573e2326;color:#39281a}
.wall .pcard__price:after{content:'→';font-size:1.1rem;font-weight:300;transition:transform .3s ease}
.wall .pcard__link:hover .pcard__price:after{transform:translateX(3px)}
.wall .pcard__link:focus-visible{outline:2px solid #7c5935;outline-offset:5px}
.wall .catalogue-offers{margin-top:4rem;border-color:#573e2333}
.wall .catalogue-offer{border-color:#573e2333}
@media(max-width:1199px){.wall>.container{width:calc(100% - 3rem)}.wall .wall__grid{gap:2rem 1rem}}
@media(max-width:899px){
 .wall{padding-block:2.5rem 3rem}
 .wall:before{opacity:.3}
 .wall>.container{width:calc(100% - 2.5rem)}
 .wall .wall__head{grid-template-columns:1fr auto;row-gap:.9rem;margin-bottom:1.25rem;padding-bottom:1rem}
 .wall .wall__title{grid-column:1/-1;font-size:2.4rem}
 .wall .wall__filters{justify-self:start;gap:.1rem}
 .wall .wall__filter{min-height:36px;font-size:.67rem;padding:.5rem .8rem}
 .wall .wall__count{font-size:.65rem}
 .wall .wall__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.9rem .85rem}
 .wall .pcard__link{gap:.7rem}
 .wall .pcard__name{font-size:1rem;min-height:2.45em}
 .wall .pcard__category{font-size:.52rem}
 .wall .pcard__sub{font-size:.65rem;min-height:4.35em}
 .wall .pcard__price{font-size:.7rem}
 .wall .pcard__object{filter:drop-shadow(3px 3px 2px #33211345)}
 .wall .catalogue-offers{margin-top:3rem}
}
@media(prefers-reduced-motion:reduce){.wall .pcard__object,.wall .pcard__object .asset img,.wall .pcard__price:after{transition:none}.wall .wall__grid>li{animation:none}}

/* The supplied photograph is mirrored only on the backdrop, never on packaging.
   Image: 1672 x 941; mirrored plinth center: x=522, contact plane: y=620.
   Container units calculate the same cover crop for the photo and morph target,
   before hydration, without measuring/repositioning the product after entrance. */
.pd .pd-top{position:relative;isolation:isolate;container-type:size;display:grid;grid-template-columns:56% 34%;align-items:center;gap:0;width:100%;max-width:none;margin:0;padding:0;height:max(760px,calc(100svh - var(--header-h)));min-height:760px;overflow:hidden;background:#e8dbc3;animation:none;--pd-photo-w:max(100cqw,calc(100cqh * 1672 / 941));--pd-photo-h:max(100cqh,calc(100cqw * 941 / 1672))}
.pd .pd-top:before{content:'';position:absolute;z-index:0;inset:0;background:url('/assets/scenes/home-hero-reference.png') center/cover no-repeat;transform:scaleX(-1);pointer-events:none}
.pd .pd-top__visual{position:absolute;inset:0;z-index:1;width:100%;height:100%;background:none;pointer-events:none}
.pd .pd-top .niche{inset:0;overflow:visible}
.pd .pd-top .niche__wall,.pd .pd-top .niche__recess,.pd .pd-top .niche__sill,.pd .pd-top .niche__shadow{display:none}
.pd .pd-top .niche__object{position:absolute;left:calc(50cqw - var(--pd-photo-w) * .187799043);bottom:calc(50cqh - var(--pd-photo-h) * .158873539);height:calc(var(--pd-photo-h) * .393198725 * var(--frame-k));aspect-ratio:var(--frame-ar);max-width:none;transform:translate(-50%);filter:drop-shadow(-8px 7px 5px #28190d32)}
.pd .pd-top .niche__object .asset img{filter:sepia(.18) saturate(.75) brightness(.96) contrast(.96)}
.pd .pd-top .niche__object[data-morph=savon-corporel] .asset img{filter:sepia(.2) saturate(.52) brightness(.93) contrast(.93)}
.pd .pd-top .pd-buy{position:relative;z-index:2;grid-column:2;align-self:center;width:100%;max-width:590px;padding:2.5rem 0;margin:0;background:none;color:#2c2017}
.pd .pd-top .pd-crumbs{margin:0 0 1.7rem}
.pd .pd-top .pd-crumbs ol{font-size:.73rem;gap:.2rem .45rem;color:#514232}
.pd .pd-top .pd-buy__eyebrow{font-size:.63rem;line-height:1.65;letter-spacing:.11em;margin:0 0 .65rem;color:#65503b}
.pd .pd-top .pd-buy__name{font-size:clamp(2.65rem,3.75vw,4.7rem);line-height:1.04;letter-spacing:-.045em;font-weight:400;margin:0;color:#241a12}
.pd .pd-top .pd-buy__designation{font-size:clamp(.86rem,1vw,1.15rem);line-height:1.5;margin:.8rem 0 0;color:#51402e}
.pd .pd-top .pd-buy__lead{font-size:clamp(.85rem,.95vw,1rem);line-height:1.75;max-width:46ch;margin:1.15rem 0 0;color:#493a2b}
.pd .pd-top .pd-buy__price{font-family:var(--font-display);font-size:2rem;font-weight:400;margin:1.25rem 0 0;padding-top:1rem;border-color:#5d452e38}
.pd .pd-top .pd-buy__action{margin-top:1rem}
.pd .pd-top .pd-buy__row{gap:.75rem}
.pd .pd-top .pd-buy__row .pd-buy__cta{min-height:52px;border-radius:0;background:#2c2017;border:1px solid #2c2017;font-size:.8rem;color:#f7eedf}
.pd .pd-top .quantity{background:#f4e9d759;border-color:#5d452e45}
.pd .pd-top .pd-buy__help{font-size:.75rem;line-height:1.7;margin:1rem 0 0;color:#594632}
.pd .pd-top .pd-buy__info{font-size:.73rem;line-height:1.65;gap:.25rem;margin-top:1.05rem;padding-top:.85rem;border-color:#5d452e38;color:#594632}
.pd .pd-top .pd-buy__feedback[data-visible]{height:2rem}
@media(min-width:1600px){.pd .pd-top .pd-buy{padding-block:3rem}.pd .pd-top .pd-buy__lead{font-size:1rem}.pd .pd-top .pd-buy__eyebrow{font-size:.72rem}.pd .pd-top .pd-buy__help,.pd .pd-top .pd-buy__info{font-size:.85rem}}
@media(max-width:999px){
 .pd .pd-top{height:auto;min-height:0;container-type:normal;display:flex;flex-direction:column;background:#e8dbc3;overflow:visible}
 .pd .pd-top:before{display:none}
 .pd .pd-top__visual{position:relative;inset:auto;container-type:size;flex-shrink:0;width:100%;height:clamp(400px,58svh,560px);overflow:hidden}
 .pd .pd-top__visual:before{content:'';position:absolute;inset:0;background:url('/assets/scenes/home-hero-reference.png') no-repeat;background-size:var(--pd-photo-w) var(--pd-photo-h);background-position:calc(50% - var(--pd-photo-w) * .187799043) 50%;transform:scaleX(-1);pointer-events:none}
 .pd .pd-top .niche__object{left:50cqw;filter:drop-shadow(-5px 5px 3px #28190d32)}
 .pd .pd-top .pd-buy{max-width:650px;padding:2rem 1.5rem 2.75rem;margin:0 auto;background:none}
 .pd .pd-top .pd-crumbs{margin-bottom:1.4rem}
 .pd .pd-top .pd-buy__name{font-size:clamp(2.6rem,7vw,3.75rem)}
 .pd .pd-top .pd-buy__lead{font-size:.9rem;max-width:none}
 .pd .pd-top .pd-buy__designation{font-size:.95rem}
 .pd .pd-top .pd-buy__help,.pd .pd-top .pd-buy__info{font-size:.8rem}
}

/* Product-specific editorial photography, using the original brand palette. */
.pd{--editorial-ivory:#f4efe3;--editorial-sand:#dfbf96;--editorial-ink:#302218;--editorial-line:#8060433d}
.pd .pd-sections{position:sticky;top:var(--header-h);z-index:6;background:var(--editorial-ivory);border-color:var(--editorial-line);gap:1.25rem;padding-block:.8rem}
.pd #pd-benefits,.pd #pd-usage,.pd #pd-ingredients,.pd #precautions{scroll-margin-top:calc(var(--header-h) + 5rem)}
.pd .pd-sections a{font-size:.78rem;color:var(--editorial-ink)}
.pd .pd-h2{font-size:clamp(2rem,2.65vw,3rem);line-height:1.1;font-weight:400;letter-spacing:-.035em;color:var(--editorial-ink)}
.pd .pd-map .pd-h2{color:var(--text-on-dark,#f5ede4)}
.pd .pd-benefits{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.85fr);grid-template-rows:auto 1fr;column-gap:0;width:100%;max-width:none;min-height:320px;margin:0;padding:0 max(12vw,calc((100% - 1250px)/2));background:var(--editorial-ivory);overflow:hidden}
.pd .pd-benefits:before,.pd .pd-ingredients:before{content:'';position:absolute;z-index:-1;inset:0;background:url('/assets/scenes/collection-plaster-v1.png') right center/cover no-repeat;opacity:.09;pointer-events:none}
.pd .pd-benefits__head{display:block;grid-column:1;grid-row:1;padding:2.4rem 2rem 1.25rem 0;align-self:end}
.pd .pd-benefits__list{grid-column:1;grid-row:2;z-index:1;align-self:start;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0 -1.5rem 0 0;padding-bottom:2.4rem;counter-reset:benefit}
.pd .pd-benefits__list li,.pd .pd-benefits__list li:last-child{display:block;padding:1.2rem 1.3rem;min-height:113px;font-size:.9rem;line-height:1.55;background:#faf8f1f5;border:1px solid var(--editorial-line);border-radius:0;color:var(--editorial-ink)}
.pd .pd-benefits__list li:before{margin-bottom:.6rem;font-size:2.1rem;font-weight:400;color:#b3957a}
.pd .pd-benefits__list li:last-child:nth-child(odd){grid-column:1/-1}
.pd .pd-benefits__portrait{position:relative;grid-column:2;grid-row:1/3;width:100%;height:auto;align-self:stretch;min-height:0;max-height:none;margin:0;overflow:hidden}
.pd .pd-benefits__portrait img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.pd .pd-usage{position:relative;isolation:isolate;padding-block:2.5rem;background:var(--editorial-sand);overflow:hidden}
.pd .pd-usage:before{content:'';position:absolute;z-index:-1;inset:0;background:url('/assets/scenes/collection-plaster-v1.png') right center/cover no-repeat;transform:scaleX(-1);opacity:.12;pointer-events:none}
.pd .pd-usage__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(100px,.44fr);width:76%;max-width:1250px;padding-inline:0;gap:2rem;align-items:center}
.pd .pd-usage__when .pd-h2{margin-bottom:1.2rem}
.pd .pd-usage__label{font-size:.6rem;letter-spacing:.09em;margin-top:0;color:#64503b}
.pd .pd-usage__phase{font-size:1.25rem;line-height:1.4;margin-top:.25rem;color:var(--editorial-ink)}
.pd .pd-phasebar{font-size:.62rem;gap:.65rem;padding-top:.5rem;margin-top:.5rem;border-color:var(--editorial-line)}
.pd .pd-phasebar li{white-space:normal}
.pd .pd-usage__facts{display:flex;flex-wrap:wrap;gap:.7rem 1.25rem;margin-top:1rem}
.pd .pd-usage__facts dt{font-size:.6rem;letter-spacing:0;color:#64503b}
.pd .pd-usage__facts dd{font-size:.95rem;line-height:1.35;color:var(--editorial-ink)}
.pd .pd-usage__steps{margin:0;align-self:center}
.pd .pd-usage__steps li{font-family:var(--font-body);font-size:.8rem;line-height:1.65;grid-template-columns:1.1rem minmax(0,1fr);gap:.5rem;padding:.75rem 0;border-color:var(--editorial-line)}
.pd .pd-usage__steps li:last-child{border-color:var(--editorial-line)}
.pd .pd-usage__steps li:before{font-size:.83rem;color:#8d694a}
.pd .pd-ingredients{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);align-items:start;gap:3rem;width:100%;max-width:none;padding:2.7rem max(12vw,calc((100% - 1250px)/2));margin:0;background:var(--editorial-ivory)}
.pd .pd-ingredients__main{position:relative;min-width:0}
.pd .pd-ingredients .pd-note{font-size:.67rem;line-height:1.6;margin-top:.5rem;color:#66513e}
.pd .pd-ingredients__list{display:block;columns:2;column-gap:1.5rem;margin-top:1rem}
.pd .pd-ingredients__list li{font-family:var(--font-body);font-size:.78rem;line-height:1.6;padding:.45rem 0;border-color:var(--editorial-line);break-inside:avoid;color:var(--editorial-ink)}
.pd .pd-ingredients__inci{font-family:var(--font-body);font-size:.75rem;line-height:1.85;margin-top:1rem;color:var(--editorial-ink)}
.pd .pd-botanical{margin:.5rem 0 0 auto;width:min(100%,420px);height:215px}
.pd .pd-botanical img{display:block;width:100%;height:100%;object-fit:contain;filter:saturate(.78)}
.pd .pd-ingredients__aside{position:relative;margin:0;padding:1.3rem;background:#f8f5ecb8;border:1px solid var(--editorial-line);outline:1px solid var(--editorial-line);outline-offset:-5px;border-radius:0}
.pd .pd-ingredients__aside .pd-h3{font-size:1.15rem;font-weight:400;line-height:1.3;margin:0 0 .6rem;color:var(--editorial-ink)}
.pd .pd-ingredients__precautions li{font-size:.72rem;line-height:1.65;padding:.2rem 0;color:var(--editorial-ink)}
.pd .pd-specs{gap:0;margin-top:1rem;padding-top:.5rem;border-top:1px solid var(--editorial-line)}
.pd .pd-specs div{font-size:.69rem;line-height:1.6;gap:1rem;padding:.55rem 0;border-color:var(--editorial-line);color:var(--editorial-ink)}
.pd .pd-specs dd{text-align:end}
@media(min-width:1600px){.pd .pd-benefits__list li{font-size:1rem}.pd .pd-usage__steps li{font-size:.9rem}.pd .pd-ingredients__list li{font-size:.88rem}.pd .pd-ingredients__precautions li,.pd .pd-specs div{font-size:.8rem}}
@media(max-width:1000px){
 .pd .pd-benefits{padding-inline:1.5rem;grid-template-columns:minmax(0,1.3fr) minmax(210px,1fr)}
 .pd .pd-usage__inner{width:calc(100% - 3rem);gap:1.25rem;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
 .pd .pd-usage__when{grid-row:1/3;align-self:start}
 .pd .pd-ingredients{padding-inline:1.5rem;gap:1.5rem;grid-template-columns:minmax(0,1.2fr) minmax(240px,1fr)}
}
@media(max-width:649px){
 .pd .pd-sections{gap:1rem;padding-inline:1.25rem;overflow-x:auto;justify-content:start}
 .pd .pd-sections a{font-size:.72rem;white-space:nowrap}
 .pd .pd-h2{font-size:2.1rem}
 .pd .pd-benefits{grid-template-columns:minmax(0,1fr);padding:2rem 1.25rem;gap:1.25rem}
 .pd .pd-benefits__head{grid-column:1;grid-row:1;padding:0;align-self:auto}
 .pd .pd-benefits__portrait{grid-column:1;grid-row:2;height:300px;min-height:0;max-height:none;object-position:center}
 .pd .pd-benefits__list{grid-column:1;grid-row:3;margin:-2.5rem .65rem 0;padding:0;gap:.65rem}
 .pd .pd-benefits__list li,.pd .pd-benefits__list li:last-child{font-size:.85rem;min-height:118px;padding:1rem}
 .pd .pd-usage{padding:2rem 0}
 .pd .pd-usage__inner{width:calc(100% - 2.5rem);grid-template-columns:1fr;gap:1.25rem}
 .pd .pd-usage__when{grid-row:auto;grid-column:1}
 .pd .pd-usage__when .pd-h2{margin-bottom:1rem}
 .pd .pd-usage__steps{grid-column:1}
 .pd .pd-usage__steps li{font-size:.88rem}
 .pd .pd-ingredients{padding:2rem 1.25rem;grid-template-columns:1fr;gap:1.75rem}
 .pd .pd-ingredients__list{columns:1}
 .pd .pd-ingredients__list li{font-size:.85rem}
 .pd .pd-ingredients__inci{font-size:.8rem}
 .pd .pd-botanical{width:min(100%,300px);height:160px;margin:1rem auto 0}
 .pd .pd-ingredients__aside{padding:1.5rem}
 .pd .pd-ingredients__precautions li,.pd .pd-specs div{font-size:.8rem}
}
@media(prefers-reduced-motion:reduce){.pd .pd-benefits__list li{animation:none;transition:none}}

/* Review revision: a full, larger portrait; text-only usage; botanicals on the left. */
.pd .pd-benefits{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);grid-template-rows:1fr 1fr;column-gap:3rem;padding-block:2.5rem;min-height:0;align-items:center}
.pd .pd-benefits__head{padding:0 0 1.5rem;align-self:end}
.pd .pd-benefits__list{margin:0;padding:0;align-self:start}
.pd .pd-benefits__portrait{height:auto;align-self:center;overflow:visible}
.pd .pd-benefits__portrait img{position:static;inset:auto;width:100%;height:auto;object-fit:contain;object-position:center}
.pd .pd-usage__inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:3.5rem}
.pd .pd-usage__when{grid-row:auto}
.pd .pd-ingredients{grid-template-columns:minmax(280px,1.1fr) minmax(0,1.25fr) minmax(240px,.9fr);gap:2rem;padding:3.5rem max(4vw,calc((100% - 1500px)/2))}
.pd .pd-ingredients>.pd-botanical{grid-column:1;grid-row:1;width:100%;height:auto;aspect-ratio:3/2;margin:0;align-self:center}
.pd .pd-botanical img{width:100%;height:100%;object-fit:contain}
.pd .pd-ingredients__main{grid-column:2;grid-row:1}
.pd .pd-ingredients__list{columns:1}
.pd .pd-ingredients__aside{grid-column:3;grid-row:1}
@media(max-width:1000px){
 .pd .pd-benefits{column-gap:1.5rem;padding:2rem 1.5rem}
 .pd .pd-usage__inner{gap:2rem}
 .pd .pd-ingredients{grid-template-columns:minmax(220px,1fr) minmax(0,1.3fr);gap:1.5rem;padding:2.5rem 1.5rem}
 .pd .pd-ingredients>.pd-botanical{grid-column:1;grid-row:1/3}
 .pd .pd-ingredients__main{grid-column:2;grid-row:1}
 .pd .pd-ingredients__aside{grid-column:2;grid-row:2}
}
@media(max-width:649px){
 .pd .pd-benefits{grid-template-columns:1fr;grid-template-rows:auto;gap:1.25rem;padding:2rem 1.25rem}
 .pd .pd-benefits__head{padding:0}
 .pd .pd-benefits__portrait{height:auto;min-height:0;aspect-ratio:4/5}
 .pd .pd-benefits__list{margin:0;padding:0}
 .pd .pd-usage__inner{grid-template-columns:1fr;gap:1.5rem}
 .pd .pd-ingredients{display:flex;flex-direction:column;gap:1rem;padding:2rem 1.25rem}
 .pd .pd-ingredients__main{display:contents}
 .pd .pd-ingredients__main>.pd-h2{order:0}
 .pd .pd-ingredients__main>.pd-note{order:1;margin:0}
 .pd .pd-ingredients>.pd-botanical{order:2;width:100%;max-width:420px;align-self:flex-start;margin:.5rem 0}
 .pd .pd-ingredients__list,.pd .pd-ingredients__inci{order:3;width:100%;margin:0}
 .pd .pd-ingredients__aside{order:4;width:100%;margin-top:1rem}
}

/* Body ritual: supplied group photograph, then alternating single-arch scenes. */
.ritual--corps{padding-top:var(--header-h);background:#e8dbc3}
.ritual--corps .rb-open{height:clamp(720px,calc(100svh - var(--header-h)),1100px);min-height:720px;padding:0;background:#e8dbc3}
.ritual--corps .rb-open__room{inset:0;background:url('/assets/scenes/body-ritual-hero-niches-v2.png') center/cover no-repeat;transform:none}
.ritual--corps .rb-open__back,.ritual--corps .rb-open__vault{display:none}
.ritual--corps .rb-open__inner{position:absolute;left:12%;top:6%;z-index:1;display:block;width:34%;max-width:560px;margin:0;padding:0}
.ritual--corps .rb-open .ritual-crumbs{font-size:.75rem;margin:0 0 1.5rem;color:#5c4937}
.ritual--corps .rb-open .ritual__title{font-size:clamp(3.8rem,4.6vw,6rem);font-weight:400;line-height:1.02;letter-spacing:-.045em;max-width:10ch;margin:0;color:#281c14}
.ritual--corps .rb-open .ritual__lede{font-size:clamp(.85rem,.95vw,1.05rem);line-height:1.6;max-width:32ch;margin:1rem 0 0;color:#51402f}
.ritual--corps .rb-open__bench-wrap{position:absolute;z-index:2;bottom:0;left:0;width:100%;max-width:none;padding:0;background:#f5eddfeb;border-top:1px solid #5f452b30}
.ritual--corps .rb-bench{width:76%;max-width:1250px;padding:0;margin:0 auto;gap:2rem}
.ritual--corps .rb-bench:before,.ritual--corps .rb-bench:after,.ritual--corps .rb-bench__seat{display:none}
.ritual--corps .rb-bench__label{display:grid;grid-template-columns:auto 1fr;gap:.25rem .8rem;text-align:start;justify-items:start;padding:1.1rem 0}
.ritual--corps .rb-bench__num{grid-column:1;grid-row:1/3;font-size:1.6rem;align-self:center;color:#9b7955}
.ritual--corps .rb-bench__phase{grid-column:2;font-size:1.25rem;color:#35251a}
.ritual--corps .rb-bench__names{grid-column:2;font-size:.7rem;color:#65513d}
.ritual--corps .ritual__phases{display:block}
.ritual--corps .ritual-rail{display:block;position:sticky;top:var(--header-h);z-index:5;padding:.65rem 0;background:#f5eddfef;border-block:1px solid #5f452b20;backdrop-filter:blur(12px)}
.ritual--corps .ritual-rail ol{display:flex;flex-direction:row;gap:3rem;border:0;padding:0;width:76%;max-width:1250px;margin:auto}
.ritual--corps .ritual-rail ol:before{display:none}
.ritual--corps .ritual-rail a{display:flex;align-items:center;gap:.6rem}
.ritual--corps .ritual__chapters{display:block}
.ritual--corps .rb-step{position:relative;isolation:isolate;container-type:size;height:max(760px,calc(100svh - var(--header-h) - 60px));min-height:760px;padding:0;overflow:hidden;background:#e8dbc3;scroll-margin-top:calc(var(--header-h) + 58px);--body-photo-w:max(100cqw,calc(100cqh * 1672 / 941));--body-photo-h:max(100cqh,calc(100cqw * 941 / 1672))}
.ritual--corps .rb-step:before{content:'';position:absolute;inset:0;z-index:0;background:url('/assets/scenes/home-hero-reference.png') center/cover no-repeat;pointer-events:none}
.ritual--corps .rb-step[data-side=start]:before{transform:scaleX(-1)}
.ritual--corps .rb-step__grid{position:relative;z-index:1;width:100%;max-width:none;height:100%;margin:0;padding:0;display:grid;grid-template-columns:10% 34% 12% 34% 10%;grid-template-rows:1fr auto auto auto 1fr;gap:0}
.ritual--corps .rb-step .rb-scene{position:absolute;inset:0;z-index:0;grid-area:auto;width:100%;height:100%;background:none;border-radius:0;overflow:visible;opacity:1;transform:none}
.ritual--corps .rb-scene__back,.ritual--corps .rb-scene__vault,.ritual--corps .rb-scene__bench,.ritual--corps .rb-scene__shadow{display:none}
.ritual--corps .rb-step .rb-scene .rb-scene__obj{position:absolute;bottom:calc(50cqh - var(--body-photo-h) * .158873539);left:calc(50cqw - var(--body-photo-w) * .187799043);height:calc(var(--body-photo-h) * .393198725 * var(--frame-k));aspect-ratio:var(--frame-ar);transform:translate(-50%);opacity:1;filter:drop-shadow(-8px 7px 5px #28190d32);transition:opacity .8s ease}
.ritual--corps .rb-step[data-side=end] .rb-scene .rb-scene__obj{left:calc(50cqw + var(--body-photo-w) * .187799043);filter:drop-shadow(8px 7px 5px #28190d32)}
.ritual--corps .rb-scene__obj .asset img{filter:sepia(.18) saturate(.75) brightness(.96) contrast(.96)}
.ritual--corps .rb-scene__obj[data-morph=savon-corporel] .asset img{filter:sepia(.2) saturate(.52) brightness(.93) contrast(.93)}
.ritual--corps .rb-step .rb-step__title{position:relative;z-index:1;grid-column:4;grid-row:2;align-self:auto;font-size:clamp(2.8rem,3.6vw,4.5rem);font-weight:400;line-height:1.05;letter-spacing:-.04em;color:#302218;margin:0}
.ritual--corps .rb-step .rb-step__line{position:relative;z-index:1;grid-column:4;grid-row:3;align-self:auto;margin:.9rem 0 1.8rem;max-width:44ch;font-size:.86rem;line-height:1.65;color:#5b4734}
.ritual--corps .rb-step .rb-step__text{position:relative;z-index:1;grid-column:4;grid-row:4;margin:0;padding:0;background:none;border:0}
.ritual--corps .rb-step[data-side=end] .rb-step__title,.ritual--corps .rb-step[data-side=end] .rb-step__line,.ritual--corps .rb-step[data-side=end] .rb-step__text{grid-column:2}
.ritual--corps .rb-step__num{font-size:.43em;letter-spacing:0;color:#977553}
.ritual--corps .rb-step .ritual-name{font-size:clamp(1.8rem,2.3vw,2.8rem);font-weight:400;letter-spacing:-.025em;line-height:1.15;color:#302218}
.ritual--corps .rb-step .ritual-role{font-size:.86rem;line-height:1.65;margin-top:.5rem;color:#5b4734}
.ritual--corps .rb-step .ritual-usage{margin-top:1.5rem}
.ritual--corps .rb-step .ritual-usage__label{font-size:.65rem;color:#826243}
.ritual--corps .rb-step .ritual-usage__steps{margin-top:.6rem;gap:.65rem}
.ritual--corps .rb-step .ritual-usage__steps li{font-size:.86rem;line-height:1.7;color:#493727}
.ritual--corps .rb-step .ritual-usage__facts{margin-top:1rem}
.ritual--corps .rb-step .ritual-discover{margin-top:1.5rem}
@media(max-width:899px){
 .ritual--corps .rb-open{height:auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}
 .ritual--corps .rb-open__inner{position:static;order:1;width:100%;max-width:none;padding:2rem 1.5rem}
 .ritual--corps .rb-open .ritual-crumbs{margin-bottom:1.1rem}
 .ritual--corps .rb-open .ritual__title{font-size:3.5rem;max-width:none}
 .ritual--corps .rb-open .ritual__lede{max-width:36ch;font-size:.9rem}
 .ritual--corps .rb-open__room{position:relative;inset:auto;order:2;width:100%;height:auto;aspect-ratio:1672/941;background-size:contain;background-repeat:no-repeat;z-index:0}
 .ritual--corps .rb-open__bench-wrap{position:relative;inset:auto;order:3}
 .ritual--corps .rb-bench{width:calc(100% - 2.5rem);gap:1rem}
 .ritual--corps .rb-bench__label{display:flex;flex-direction:column;gap:.25rem;padding:1rem 0;align-items:start}
 .ritual--corps .rb-bench__num{align-self:start;font-size:1.2rem}
 .ritual--corps .rb-bench__phase{font-size:1.1rem}
 .ritual--corps .rb-bench__names{font-size:.62rem;line-height:1.5}
 .ritual--corps .ritual-rail ol{width:calc(100% - 2.5rem);justify-content:space-between;gap:1rem}
 .ritual--corps .ritual-rail a{font-size:.75rem}
 .ritual--corps .rb-step{container-type:normal;height:auto;min-height:0;padding:0}
 .ritual--corps .rb-step:before{display:none}
 .ritual--corps .rb-step__grid{display:flex;flex-direction:column;width:100%;height:auto;padding:0}
 .ritual--corps .rb-step .rb-step__title{order:0;font-size:2.8rem;margin:2rem 1.25rem .75rem}
 .ritual--corps .rb-step .rb-step__line{order:1;max-width:none;margin:0 1.25rem 1.5rem;font-size:.85rem}
 .ritual--corps .rb-step .rb-scene{position:relative;inset:auto;container-type:size;order:2;height:clamp(380px,58svh,560px);width:100%;overflow:hidden}
 .ritual--corps .rb-step .rb-scene:before{content:'';position:absolute;inset:0;background:url('/assets/scenes/home-hero-reference.png') no-repeat;background-size:var(--body-photo-w) var(--body-photo-h);background-position:calc(50% - var(--body-photo-w) * .187799043) 50%}
 .ritual--corps .rb-step[data-side=start] .rb-scene:before{transform:scaleX(-1)}
 .ritual--corps .rb-step .rb-scene .rb-scene__obj,.ritual--corps .rb-step[data-side=end] .rb-scene .rb-scene__obj{left:50cqw}
 .ritual--corps .rb-step .rb-step__text{order:3;margin:0;padding:2rem 1.25rem 2.5rem}
 .ritual--corps .rb-step .ritual-name{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){.ritual--corps .rb-step .rb-scene .rb-scene__obj{transition:none}}

/* Closing editorial triptych, inspired by the client's sunlit plaster reference. */
.ritual--corps .ritual-final{background:#eee2cc url('/assets/scenes/collection-plaster-v1.png') center/cover no-repeat;padding:clamp(4rem,7vw,8rem) 0;border-top:1px solid #80634720;color:#302218}
.ritual--corps .ritual-final>.container{width:78%;max-width:1400px}
.ritual--corps .ritual-final__title{font-size:clamp(2.5rem,4.1vw,5rem);font-weight:400;letter-spacing:-.035em;line-height:1.1}
.ritual--corps .ritual-final__line{max-width:52rem;font-size:clamp(.9rem,1.1vw,1.15rem);line-height:1.7;margin:1.2rem auto 0;color:#594633}
.ritual--corps .ritual-final__sequence{font-size:clamp(1.4rem,1.8vw,2.1rem);color:#302218;margin-bottom:.45rem}
.ritual--corps .ritual-final__phases{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,2.6vw,3.5rem);margin-top:3.7rem}
.ritual--corps .ritual-final__phase{border-color:#81674d50;padding-top:1.2rem}
.ritual--corps .ritual-final__phase-name{font-size:clamp(1.7rem,2.1vw,2.7rem);gap:.7rem;color:#302218}
.ritual--corps .ritual-final__mark{font-size:.7rem;letter-spacing:.07em;color:#a08262}
.ritual--corps .ritual-final__products{display:block;margin-top:1.6rem}
.ritual--corps .ritual-final__card{display:flex;flex-direction:column;align-items:stretch;gap:0}
.ritual--corps .ritual-final__thumb{height:auto;aspect-ratio:3/2;width:100%;margin:0 0 1.1rem;overflow:hidden;border-radius:0;background:none;box-shadow:none}
.ritual--corps .ritual-final__thumb .ritual-object{inset:0;width:100%;height:100%;max-width:none;aspect-ratio:3/2;transform:none;background-position:center;background-size:cover;transition:transform .8s var(--ease-out)}
.ritual--corps .ritual-final__thumb .ritual-object .asset{visibility:hidden}
.ritual--corps .ritual-final__thumb [data-morph=gommage-corporel-cafe]{background-image:url('/assets/editorial/gommage-corporel-cafe-still-life-v1.png')}
.ritual--corps .ritual-final__thumb [data-morph=savon-corporel]{background-image:url('/assets/editorial/savon-corporel-still-life-v1.png')}
.ritual--corps .ritual-final__thumb [data-morph=beurre-corporel]{background-image:url('/assets/editorial/beurre-corporel-still-life-v1.png')}
.ritual--corps .ritual-final__card:hover .ritual-final__thumb .ritual-object{transform:scale(1.035)}
.ritual--corps .ritual-final__name{font-size:clamp(1.25rem,1.55vw,2rem);line-height:1.25;color:#302218}
.ritual--corps .ritual-final__sub{font-size:.8rem;line-height:1.6;margin-top:.25rem;color:#594633}
.ritual--corps .ritual-final__cta{align-self:flex-start;margin-top:1.2rem;font-size:.8rem;padding-bottom:.2rem;color:#51402f}
.ritual--corps .ritual-final__cta:after{content:' →';display:inline-block;margin-left:.5rem}
.ritual--corps .ritual-final__next{top:50%;color:#a48564}
.ritual--corps .ritual-final__more{margin-top:3.7rem;gap:1.5rem 2.2rem}
.ritual--corps .ritual-final__more .btn{border-radius:0;background:transparent;border-color:#786048;color:#423020;padding:1rem 1.7rem}
.ritual--corps .ritual-final__more .link-arrow{color:#423020;font-size:.9rem}
@media(max-width:899px){
 .ritual--corps .ritual-final>.container{width:calc(100% - 3rem)}
 .ritual--corps .ritual-final__phases{grid-template-columns:1fr;gap:2.7rem;margin-top:2.5rem}
 .ritual--corps .ritual-final__phase-name{font-size:2rem}
 .ritual--corps .ritual-final__name{font-size:1.5rem}
 .ritual--corps .ritual-final__next{display:none}
 .ritual--corps .ritual-final__more{flex-direction:column;align-items:center;margin-top:2.5rem}
}
@media(prefers-reduced-motion:reduce){.ritual--corps .ritual-final__thumb .ritual-object{transition:none}}

/* Ritual landing: two photographic entries on a continuous sunlit wall. */
.info--hub{position:relative;isolation:isolate;background:#eee2ce;padding-bottom:clamp(4rem,7vw,8rem);color:#302218}
.info--hub:before{content:'';position:absolute;z-index:-1;inset:0;background:url('/assets/scenes/collection-plaster-v1.png') center/cover no-repeat;transform:scaleX(-1);pointer-events:none}
.info--hub .container{width:70%;max-width:1400px;padding-inline:0}
.info--hub .info-open{background:none;border:0;padding-top:calc(var(--header-h) + 2rem);padding-bottom:0}
.info--hub .info-open__title{font-size:clamp(3.6rem,5.1vw,6.5rem);font-weight:400;line-height:1.03;letter-spacing:-.04em;margin-top:2.5rem;color:#302218}
.info--hub .info-open__lede{font-size:clamp(1rem,1.15vw,1.25rem);line-height:1.65;max-width:56ch;margin-top:1.3rem;color:#493728}
.info--hub .hub__entries{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.75rem,2.5vw,3.5rem);padding-top:3.6rem}
.info--hub .ritual-entry{display:flex;flex-direction:column;gap:1.3rem;align-items:stretch}
.info--hub .ritual-entry__recess{display:block;aspect-ratio:1.43;padding:0;overflow:hidden;background:none;border-radius:0;box-shadow:none;isolation:isolate}
.info--hub .ritual-entry__recess:before{z-index:0;clip-path:none;border-radius:0;box-shadow:none;background-position:center;background-size:cover;transition:transform .9s var(--ease-out)}
.info--hub [data-ritual=cheveux] .ritual-entry__recess:before{background-image:url('/assets/editorial/ritual-hub-cheveux-v1.png')}
.info--hub [data-ritual=corps] .ritual-entry__recess:before{background-image:url('/assets/editorial/ritual-hub-corps-v1.png')}
.info--hub .ritual-entry__recess:after,.info--hub .ritual-entry__obj{display:none}
.info--hub .ritual-entry:hover .ritual-entry__recess:before{transform:scale(1.025)}
.info--hub .ritual-entry__text{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}
.info--hub .ritual-entry__name{font-size:clamp(2rem,2.65vw,3.6rem);font-weight:400;line-height:1.12;letter-spacing:-.025em;color:#302218}
.info--hub .ritual-entry__line{font-size:clamp(.9rem,1vw,1.1rem);line-height:1.7;max-width:50ch;color:#493728}
.info--hub .ritual-entry__count{font-size:.85rem;line-height:1.6;color:#594633}
.info--hub .ritual-entry__cta{font-size:.95rem;margin-top:.7rem;color:#423020;border-bottom:1px solid #786048;padding-bottom:.3rem}
.info--hub .ritual-entry:focus-visible{outline:2px solid #9a7651;outline-offset:8px}
@media(max-width:899px){
 .info--hub .container{width:calc(100% - 3rem)}
 .info--hub .info-open{padding-top:calc(var(--header-h) + 1.5rem)}
 .info--hub .info-open__title{font-size:3.6rem;margin-top:1.8rem}
 .info--hub .info-open__lede{font-size:1rem}
 .info--hub .hub__entries{grid-template-columns:1fr;gap:3rem;padding-top:2.3rem}
 .info--hub .ritual-entry__name{font-size:2.3rem}
}
@media(prefers-reduced-motion:reduce){.info--hub .ritual-entry__recess:before{transition:none}}

/* Notre Maison: tactile architecture, editorial story, clear principles. */
.maison-editorial{background:#f3eee3;color:#302218;padding-bottom:0}
.maison-editorial .container{width:78%;max-width:1320px;padding-inline:0}
.maison-editorial figure{margin:0;overflow:hidden;border-radius:0}
.maison-editorial figure img{display:block;width:100%;height:100%;object-fit:cover}
.maison-hero{position:relative;isolation:isolate;min-height:clamp(740px,100svh,1040px);display:flex;align-items:center;padding-top:var(--header-h);overflow:hidden;background:#e9decb}
.maison-hero__photo{position:absolute;inset:0;z-index:-2}
.maison-hero__photo img{object-position:center}
.maison-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f1e6d340,transparent 65%);pointer-events:none}
.maison-editorial .maison-hero .info-open{background:none;border:0;width:100%;padding:3rem 0 5rem}
.maison-hero .info-open__inner{position:relative}
.maison-hero .info-open__inner>.breadcrumbs{margin-bottom:1rem}
.maison-hero .info-open__eyebrow{font-size:.7rem;letter-spacing:.2em;margin-top:3.5rem;color:#70533a}
.maison-hero .info-open__title{font-size:clamp(3.8rem,5.5vw,6.6rem);max-width:11ch;line-height:1.02;font-weight:400;letter-spacing:-.045em;margin-top:1.2rem;color:#302218}
.maison-hero .info-open__lede{font-size:clamp(.95rem,1.05vw,1.15rem);line-height:1.8;max-width:37ch;margin-top:1.8rem;color:#51402f}
.maison-heading{font-family:var(--font-display);font-size:clamp(2.7rem,3.8vw,4.8rem);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#302218}
.maison-story{display:grid;grid-template-columns:.95fr 1.1fr;gap:8%;padding-block:clamp(5rem,8vw,9rem);align-items:center}
.maison-story__copy .maison-heading{margin-bottom:2.6rem}
.maison-story__copy p{font-size:clamp(16px,1.05vw,19px);line-height:1.85;max-width:44ch;margin-top:1.5rem;color:#49382a}
.maison-story__collage{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(12,minmax(0,1fr));aspect-ratio:.95;position:relative}
.maison-story__hands{grid-column:1/12;grid-row:1/9}
.maison-story__botanicals{grid-column:2/8;grid-row:8/13;z-index:1;border:10px solid #f3eee3}
.maison-story__product{grid-column:8/13;grid-row:7/12;z-index:2;border:10px solid #f3eee3}
.maison-story__product img{object-position:50% 55%}
.maison-approach{background:linear-gradient(#f3eee360,#f3eee360),url('/assets/scenes/collection-plaster-v1.png') center/cover,#e7d4b5;padding-block:clamp(4rem,7vw,7.5rem)}
.maison-approach__inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;align-items:start}
.maison-editorial .maison-values{display:flex;flex-direction:column;gap:1rem;border:0;padding:0;margin:2.5rem 0 0;font-size:.95rem;line-height:1.8;color:#59432f;max-width:30ch}
.maison-editorial .maison-values__label{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:#806043}
.maison-commitments{list-style:none;margin:0;padding:0}
.maison-commitments li{display:grid;grid-template-columns:2.7rem 1fr;gap:1rem;padding:1.6rem 0;border-top:1px solid #80634745}
.maison-commitments li:last-child{border-bottom:1px solid #80634745}
.maison-commitments__number{font-family:var(--font-display);font-size:1.9rem;line-height:1.2;color:#9a7752}
.maison-commitments h3{font-family:var(--font-display);font-size:clamp(1.5rem,1.8vw,2.2rem);font-weight:400;line-height:1.2;color:#302218}
.maison-commitments p{font-size:16px;line-height:1.8;color:#493728;margin-top:.6rem;max-width:50ch}
.maison-univers{padding-block:clamp(4.5rem,7vw,8rem);background:#f3eee3}
.maison-univers__heading{display:flex;justify-content:space-between;align-items:end;gap:2rem}
.maison-univers__heading>p{font-size:1rem;color:#705740;padding-bottom:.3rem}
.maison-univers .hub__entries{padding-top:2.7rem;gap:2.5rem}
.maison-editorial .ritual-entry{display:flex;flex-direction:column;gap:1.3rem;align-items:stretch}
.maison-editorial .ritual-entry__recess{display:block;aspect-ratio:1.5;padding:0;overflow:hidden;background:none;box-shadow:none;border-radius:0}
.maison-editorial .ritual-entry__recess:before{z-index:0;background-position:center;background-size:cover;clip-path:none;box-shadow:none;border-radius:0;transition:transform .9s var(--ease-out)}
.maison-editorial [data-ritual=cheveux] .ritual-entry__recess:before{background-image:url('/assets/editorial/ritual-hub-cheveux-v1.png')}
.maison-editorial [data-ritual=corps] .ritual-entry__recess:before{background-image:url('/assets/editorial/ritual-hub-corps-v1.png')}
.maison-editorial .ritual-entry__recess:after,.maison-editorial .ritual-entry__obj{display:none}
.maison-editorial .ritual-entry:hover .ritual-entry__recess:before{transform:scale(1.025)}
.maison-editorial .ritual-entry__name{font-size:clamp(2rem,2.6vw,3.3rem);font-weight:400;letter-spacing:-.025em}
.maison-editorial .ritual-entry__line{font-size:.95rem;line-height:1.8;color:#59432f;max-width:48ch}
.maison-editorial .ritual-entry__count{font-size:.8rem;color:#705740}
.maison-editorial .ritual-entry__cta{font-size:.9rem;margin-top:.9rem;border-bottom:1px solid #806347;padding-bottom:.3rem;color:#423020}
.maison-closing{padding:clamp(4rem,7vw,8rem) 0;background:#e9ddc7 url('/assets/scenes/collection-plaster-v1.png') center/cover;text-align:center}
.maison-closing .maison-heading{max-width:17ch;margin:auto}
.maison-closing__actions{display:flex;flex-wrap:wrap;gap:1.5rem 2rem;justify-content:center;align-items:center;margin-top:2.5rem}
.maison-closing .btn{background:transparent;border-radius:0;border-color:#806347;color:#423020;padding:1rem 1.5rem}
.maison-closing .link-arrow{color:#423020}
@media(max-width:899px){
 .maison-editorial .container{width:calc(100% - 3rem)}
 .maison-hero{display:flex;flex-direction:column;min-height:0;padding-top:var(--header-h)}
 .maison-editorial .maison-hero .info-open{order:0;padding:1.5rem 0 2.5rem}
 .maison-hero__photo{position:relative;inset:auto;z-index:0;order:1;width:100%;height:340px}
 .maison-hero__photo img{object-position:75% 50%}
 .maison-hero:after{display:none}
 .maison-hero .info-open__eyebrow{margin-top:2rem}
 .maison-hero .info-open__title{font-size:3.2rem;max-width:none}
 .maison-hero .info-open__lede{font-size:.95rem;max-width:38ch;margin-top:1.3rem}
 .maison-story{grid-template-columns:1fr;gap:2.7rem;padding-block:3.7rem}
 .maison-story__copy .maison-heading{margin-bottom:1.7rem}
 .maison-story__copy p{font-size:16px;line-height:1.8}
 .maison-story__collage{aspect-ratio:.95}
 .maison-story__botanicals,.maison-story__product{border-width:5px}
 .maison-approach__inner{grid-template-columns:1fr;gap:2.3rem}
 .maison-editorial .maison-values{margin-top:1.7rem;max-width:none}
 .maison-univers__heading{display:block}
 .maison-univers__heading>p{margin-top:1rem}
 .maison-univers .hub__entries{grid-template-columns:1fr;gap:3rem;padding-top:2rem}
 .maison-closing__actions{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.maison-editorial .ritual-entry__recess:before{transition:none}}

/* Keep checkout quiet and legible, consistent with the product pages. */
.co{max-width:1150px;padding-bottom:5rem}
.co__title{font-weight:400;letter-spacing:-.035em}
.co__lede{line-height:1.8}
.co-preview{border:1px solid #a3825d65;background:#eee1ca;padding:1rem 1.2rem;margin-top:1.5rem;font-size:.9rem;line-height:1.7;color:#59422b;max-width:65ch}
.co-privacy{font-size:.85rem;line-height:1.7;color:#65523d;max-width:70ch;margin-top:1rem}
.co-privacy a{text-decoration:underline;text-underline-offset:3px}
.co-section,.co-review{border-radius:0}
.co-field input,.co-field select,.co-field textarea{border-radius:0;background:#fffaf2;color:#302218}
.co-section legend{font-weight:400}
.co__form{gap:3rem}
.co-review{background:#eee4d2;border-color:#ac927050}
.co-submit,.co .btn{border-radius:0}
@media(max-width:899px){.co__form{gap:2rem}.co-preview{font-size:.85rem}}

.co-request__delivery,.co-request__footnote{font-size:.88rem;line-height:1.75;color:#65523d;margin:1.25rem 0}.co-request .co-line__remove{font-size:.75rem}.co-request .co-review h2{font-family:var(--font-display,Georgia,serif);font-weight:400;font-size:1.8rem;margin-bottom:1.5rem}.co-request .co-section{padding-top:1.5rem}.co-request .co__lede{max-width:62ch}.co-request .co-submit{white-space:normal;text-align:center}.co-request.confirm .co-review{max-width:750px}

/* WhatsApp ordering, in the same warm plaster and restrained typography as the maison. */
.wa-checkout{background:#f4eee3;background-image:linear-gradient(90deg,#f4eee3f5,#f4eee3d9),url('/assets/scenes/collection-plaster-v1.png');background-size:cover;background-position:center top}
.co-whatsapp{max-width:1240px;padding-top:3rem;padding-bottom:6rem;color:#302218}
.co-whatsapp .wa-head{max-width:none;margin-bottom:3rem}
.wa-back{display:inline-block;font-size:.8rem;margin-bottom:2.3rem;color:#6c5842}
.wa-eyebrow{font-size:.66rem;letter-spacing:.17em;line-height:1.7;color:#927256;margin:0 0 1rem}
.co-whatsapp .co__title{font-size:clamp(2.9rem,5.5vw,5.4rem);line-height:1.03;margin-bottom:1.1rem;outline:none}
.co-whatsapp .co__lede{max-width:55ch;font-size:.95rem;color:#705e4b;line-height:1.8}
.wa-progress{display:flex;list-style:none;gap:2.5rem;padding:1.7rem 0 0;margin-top:2rem;border-top:1px solid #9d80633b;max-width:700px;color:#a89681;font-size:.73rem}
.wa-progress li.is-active{color:#302218}.wa-progress li.is-complete{color:#806647}
.co-whatsapp .co__form{grid-template-columns:minmax(0,1.3fr) minmax(350px,1fr);gap:5rem;align-items:start}
.co-whatsapp .co-section{padding:0 0 2rem;border:0;border-bottom:1px solid #9d80633b;margin-bottom:2rem}
.co-whatsapp .co-section legend{padding:0;margin-bottom:1.8rem;font-size:1.65rem;font-family:Georgia,serif;letter-spacing:-.03em;text-transform:none;color:#302218}
.co-whatsapp .co-section legend>span{font-size:.7rem;font-family:inherit;letter-spacing:0;color:#a18160;margin-right:1rem;vertical-align:middle}
.wa-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.co-whatsapp .co-field{margin-bottom:1.3rem}.co-whatsapp .co-field:last-child{margin-bottom:0}
.co-whatsapp .co-field label{font-size:.78rem;font-weight:400;margin-bottom:.65rem;display:block}
.co-whatsapp .co-field__optional{font-size:.69rem;color:#96816b}
.co-whatsapp .co-field input,.co-whatsapp .co-field textarea{padding:.9rem 1rem;min-height:50px;width:100%;border:1px solid #9c81664a;background:#fffdf785;box-shadow:none;font-size:.9rem;transition:border-color .2s,background .2s;box-sizing:border-box}
.co-whatsapp .co-field input:focus,.co-whatsapp .co-field textarea:focus{outline:2px solid #95754c;outline-offset:2px;border-color:#95754c;background:#fffdf7}
.co-whatsapp .co-field textarea{min-height:90px;resize:vertical;line-height:1.6}
.co-whatsapp .co-field__hint{font-size:.68rem;line-height:1.65;color:#8a7661;margin-top:.5rem}
.co-whatsapp .wa-summary{position:sticky;top:calc(var(--header-h,72px) + 2rem);padding:2.2rem;background:#eee4d2e8;border:1px solid #a1835c3b;border-radius:0;box-shadow:0 12px 45px #6c4b2410}
.co-whatsapp .wa-summary h2{font-family:Georgia,serif;font-size:1.95rem;font-weight:400;letter-spacing:-.035em;line-height:1.2;margin:0 0 1.5rem}
.co-whatsapp .co-line{padding:1rem 0;grid-template-columns:1fr auto;gap:.65rem}
.co-whatsapp .co-line__name{font-size:1.1rem;grid-column:1;grid-row:1;line-height:1.4}
.co-whatsapp .co-line__remove{grid-column:2;grid-row:1;font-size:.62rem;align-self:start;color:#8a765f;background:none;border:0;padding:0}
.co-whatsapp .co-line__qty{grid-column:1;grid-row:2;font-size:.75rem;color:#7a6249}
.co-whatsapp .co-line__total{grid-column:2;grid-row:2;font-size:.85rem;align-self:center}
.co-whatsapp .co-totals{margin-top:1.5rem}.co-whatsapp .co-totals>div{font-size:.75rem;gap:1rem}.co-whatsapp .co-totals dd{text-align:right;overflow-wrap:anywhere}
.co-whatsapp .co-totals .co-totals__total{font-family:Georgia,serif;font-size:1.55rem;letter-spacing:-.02em;margin-top:1rem;padding-top:1.2rem}
.co-whatsapp .co-request__delivery{font-size:.69rem;line-height:1.8;margin:1rem 0 1.5rem;color:#87725b}
.wa-payment{display:flex;gap:.8rem;padding:1.2rem 0;border-top:1px solid #ac927050;border-bottom:1px solid #ac927050;margin:0 0 1.5rem}
.wa-payment__mark{font-size:.8rem;color:#87663e;border:1px solid #9e815e80;width:24px;height:24px;display:grid;place-content:center;flex-shrink:0}
.wa-payment strong{display:block;font-size:.8rem;font-weight:500;line-height:1.6}.wa-payment p{font-size:.68rem;line-height:1.7;color:#8a765f;margin-top:.3rem}
.co-whatsapp .co-submit{display:flex;align-items:center;justify-content:space-between;gap:.7rem;width:100%;border-radius:0;font-size:.75rem;min-height:54px;white-space:normal;text-align:left;padding:1rem 1.2rem;background:#302218;color:#fff8ea}
.co-whatsapp .co-submit:hover{background:#59422d}.co-whatsapp .co-submit:focus-visible{outline:2px solid #95754c;outline-offset:4px}
.co-whatsapp .co-request__footnote{text-align:center;font-size:.65rem;line-height:1.8;color:#8a765f;margin:.9rem 0 0}
.wa-detail{padding:0 0 2rem}.wa-section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.8rem}.wa-section-heading h2,.wa-message h2{font-family:Georgia,serif;font-size:2rem;font-weight:400;letter-spacing:-.03em}.wa-section-heading button{font-size:.75rem;background:none;border:0;color:#705535}
.wa-details{margin:0}.wa-details>div{display:grid;grid-template-columns:145px 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid #9d80632b}.wa-details dt{font-size:.72rem;color:#917961}.wa-details dd{font-size:.88rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.wa-message{padding:2rem;background:#fff9ec80;border:1px solid #9d806338}.wa-message p:not(.wa-eyebrow){font-size:.85rem;line-height:1.9;color:#7c664e;margin-top:1rem}.wa-message .wa-message__important{color:#302218}
@media(max-width:1000px){.co-whatsapp .co__form{gap:2.5rem;grid-template-columns:minmax(0,1fr) minmax(310px,.85fr)}.wa-field-pair{grid-template-columns:1fr}.co-whatsapp .wa-summary{padding:1.6rem}}
@media(max-width:760px){.co-whatsapp{padding-top:1.8rem;padding-bottom:3rem}.co-whatsapp .co__form{display:grid;grid-template-columns:1fr;gap:1rem}.co-whatsapp .wa-summary{position:static;padding:1.6rem}.wa-back{margin-bottom:1.8rem}.wa-progress{gap:1.5rem;font-size:.63rem}.co-whatsapp .wa-head{margin-bottom:2rem}.wa-details>div{grid-template-columns:105px 1fr}.co-whatsapp .co__title{font-size:3.05rem}.wa-message{padding:1.5rem}.co-whatsapp .co-submit{font-size:.75rem}.wa-field-pair{gap:0}}

/* Contact checkout: soft olive confirmation and a distinct voucher panel. */
.callback-checkout .co__fields .co-field{margin-bottom:1.5rem}
.callback-checkout .co-section{padding-bottom:1.5rem}
.callback-checkout .co-whatsapp .callback-confirm,.callback-success .callback-confirm{background:#dce7d3;color:#34472d;border:1px solid #a0b190;box-shadow:none;border-radius:0;transition:background .2s,border-color .2s}
.callback-checkout .co-whatsapp .callback-confirm:hover,.callback-success .callback-confirm:hover{background:#cedfc1;color:#2e4027;border-color:#7f996e}
.callback-confirm:focus-visible{outline:2px solid #73915f;outline-offset:4px}
.callback-confirm:disabled{opacity:.65;cursor:wait}
.callback-demo{font-size:.76rem;line-height:1.8;background:#e9efdf;color:#536747;border:1px solid #b7c6a640;padding:.85rem 1rem;margin-top:1.2rem;max-width:65ch}
.callback-payment{padding:1.6rem;background:#f9f5eb8c;border:1px solid #a1835c3b}
.callback-payment h2{font:400 1.55rem/1.3 Georgia,serif;letter-spacing:-.025em;margin-bottom:.7rem}
.callback-payment>p:not(.wa-eyebrow){font-size:.8rem;line-height:1.85;color:#806c55}
.callback-payment__badge{display:inline-block;font-size:.68rem;color:#5c714c;padding:.45rem .7rem;background:#e5ecd9;margin-top:1rem}
.callback-promo{margin:1.6rem 0 0;padding:1.25rem;background:#fffaf0;border:1px dashed #a38d694d}
.callback-promo__heading{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.callback-promo__heading h3{font:400 1.25rem/1.3 Georgia,serif;letter-spacing:-.02em;margin:0;color:#6c5537}
.callback-promo__icon{display:grid;place-items:center;width:32px;height:32px;background:#eee2cb;color:#8a6c40;font:400 1.3rem/1 Georgia,serif;flex-shrink:0}
.co-whatsapp .callback-promo .co-field{margin:0}
.co-whatsapp .callback-promo .co-field label{font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;color:#8b7558}
.co-whatsapp .callback-promo input{background:#fffefa;border:1px solid #b69a7060;letter-spacing:.1em;text-transform:uppercase}
.co-whatsapp .callback-promo .co-field__hint{font-size:.67rem;line-height:1.7;margin-top:.65rem}
.callback-success{background:linear-gradient(180deg,#edf2e7,#f7f3e9);color:#34432d;padding:4rem 0 5rem;min-height:80vh}
.callback-success__inner{max-width:880px}
.callback-success__head{text-align:center;max-width:740px;margin:0 auto 2.5rem}
.callback-success__check{width:66px;height:66px;display:grid;place-items:center;margin:0 auto 1.5rem;background:#d7e3cd;border:1px solid #b0c29c;color:#607f4c;font-size:1.8rem}
.callback-success__head h1{font:400 clamp(2.5rem,4.5vw,4.3rem)/1.1 Georgia,serif;letter-spacing:-.04em;outline:none;margin:0 0 1.3rem;color:#3d4c34}
.callback-success__lede{font-size:.95rem;line-height:1.9;color:#58664f;max-width:54ch;margin:auto}
.callback-success .callback-demo{margin:1.3rem auto 0}
.callback-success__reference{font-size:.75rem;letter-spacing:.035em;margin-top:1.5rem;color:#5e6c53}
.callback-success__reference strong{font-weight:500;color:#516544}
.callback-success__summary{max-width:660px;margin:0 auto 2rem;padding:2rem;background:#fffdf4bd;border:1px solid #bac8ad66}
.callback-success__summary h2{font:400 1.8rem/1.3 Georgia,serif;letter-spacing:-.03em;margin-bottom:1.3rem}
.callback-success__summary ul{list-style:none;padding:0;margin:0}
.callback-success__summary li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;border-bottom:1px solid #a3b29138;padding:1rem 0;font-size:.85rem;line-height:1.7}
.callback-success__summary li>span:last-child{white-space:nowrap}
.callback-success__total{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;font:400 1.6rem/1.4 Georgia,serif;letter-spacing:-.02em}
.callback-success__total strong{font-weight:400}
.callback-success__note{font-size:.73rem;line-height:1.8;color:#617154;margin-top:1rem}
.callback-success .wa-eyebrow{color:#637453}
.callback-success__back{display:flex;width:fit-content;max-width:100%;margin:0 auto;white-space:normal;text-align:center;justify-content:center;padding:1rem 1.5rem;font-size:.8rem}
@media(max-width:760px){.callback-success{padding:2.8rem 0}.callback-success__summary{padding:1.4rem}.callback-success__head h1{font-size:2.8rem}.callback-success__total{font-size:1.4rem}.callback-checkout input{font-size:16px!important}}

/* City search and transparent delivery totals, Sendit Grille 3. */
.delivery-city__control{position:relative}
.delivery-city__options{position:absolute;top:calc(100% + .3rem);inset-inline:0;z-index:20;list-style:none;padding:.35rem;margin:0;max-height:280px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;border:1px solid #b7a07e;background:#fffdf6;box-shadow:0 12px 30px #49331c26;border-radius:0}
.delivery-city__options li{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem .9rem;border-bottom:1px solid #aa937626;font-size:.85rem;line-height:1.5;color:#4d3c29;cursor:pointer;overflow-wrap:anywhere}
.delivery-city__options li:last-child{border-bottom:0}
.delivery-city__options li:hover,.delivery-city__options li.is-active{background:#e8efdf;color:#3f5532}
.delivery-city__options .delivery-city__empty{color:#8b765e;cursor:default}
.delivery-city__fee{font-size:.75rem;white-space:nowrap;color:#826344}
.co-whatsapp .delivery-totals>div{align-items:start;padding:.75rem 0}
.delivery-totals dt small{display:block;font-size:.7rem;font-weight:400;line-height:1.7;color:#8c765e;margin-top:.3rem;max-width:24ch}
.delivery-totals__shipping{border-top:1px solid #ac927030}
.delivery-totals__free{color:#607e49;font-size:.8rem}
.delivery-totals__free s{font-size:.72rem;color:#9b8a74;margin-right:.3rem}
.delivery-totals__pending{font-size:.73rem;color:#8c765e}
.delivery-free-note{font-size:.7rem;line-height:1.8;color:#61744e;margin-top:1rem}
.callback-success__delivery{margin:1.5rem 0 0}
.callback-success__delivery>div{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;font-size:.8rem;line-height:1.8;padding:.65rem 0}
.callback-success__delivery dt{color:#6f7e62}
.callback-success__delivery dd{margin:0;text-align:right;white-space:nowrap}
@media(max-width:760px){.delivery-city__options{max-height:235px}.delivery-city__options li{font-size:.9rem}.callback-success__delivery>div{gap:1rem;font-size:.75rem}}



/* TIZILYA homepage hero scroll fix.
   The compiled threshold controller marks the new reference hero as passed
   after a very small scroll on mobile. The legacy rule then hides every
   .fade-on-pass layer, including the headline and current product. Keep the
   reference hero visible while preserving threshold behavior elsewhere. */
.hero-reference[data-passed] .fade-on-pass {
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}
