{"id":58674,"date":"2026-10-18T12:00:36","date_gmt":"2026-10-18T12:00:36","guid":{"rendered":"https:\/\/carmelcosmeticslabs.com\/?page_id=58674"},"modified":"2026-11-09T09:48:20","modified_gmt":"2026-11-09T09:48:20","slug":"thymian","status":"publish","type":"page","link":"https:\/\/carmelcosmeticslabs.com\/de\/glossar-kosmetische-inhaltsstoffe\/thymian\/","title":{"rendered":"Thymian"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"58674\" class=\"elementor elementor-58674 elementor-53801 elementor-bc-flex-widget\" data-elementor-post-type=\"page\">\n\t\t\t\t<div data-particle_enable=\"false\" data-particle-mobile-disabled=\"false\" class=\"elementor-element elementor-element-07389ee e-flex e-con-full e-con e-parent\" data-id=\"07389ee\" data-element_type=\"container\" data-e-type=\"container\" id=\"cm-cat\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c282ea7 elementor-widget elementor-widget-html\" data-id=\"c282ea7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>body .cm-cat{--bg:#fbfdfc;--paper:#ffffff;--mint:#edf5f2;--mint-2:#dcebe6;--ink:#10292a;--muted:#51686a;--line:#d6e4e0;--teal:#2f7266;--teal-ink:#ffffff;--deep:#0f3a35;--deep-ink:#e9f4f1;--deep-muted:#a9c9c2;--logo-filter:none;--note:#fff4cf;--note-ink:#5f4a0c;--shade:16 58 53;--f-display:\"Proxima Nova\",system-ui,sans-serif;--f-body:\"Lato\",system-ui,sans-serif;--f-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--ease-out:cubic-bezier(.23,1,.32,1);--ease-io:cubic-bezier(.77,0,.175,1);--r-lg:28px;--r-md:18px;--r-sm:10px}body .cm-cat *{box-sizing:border-box}body .cm-cat{background:var(--bg);color:var(--ink);font:400 16.5px\/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:clip}body .cm-cat ::selection{background:var(--teal);color:var(--teal-ink)}body .cm-cat .wrap{max-width:1280px;margin-inline:auto;padding-inline:clamp(16px,4vw,48px)}body .cm-cat h1,body .cm-cat h2,body .cm-cat h3{font-family:var(--f-display);text-wrap:balance;margin:0;color:var(--ink);font-optical-sizing:auto}body .cm-cat p{margin:0}body .cm-cat a{color:inherit;text-underline-offset:.2em}body .cm-cat .ico{width:1em;height:1em;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}body .cm-cat .mono{font-family:var(--f-mono);font-size:12px;letter-spacing:.02em;color:var(--muted);font-variant-numeric:tabular-nums}body .cm-cat .h2{font-size:clamp(32px,4.4vw,60px);line-height:1;letter-spacing:-.035em;font-weight:650}body .cm-cat .sub{color:var(--muted);font-size:17px;max-width:44ch}body .cm-cat .btn{--bg-b:var(--teal);--fg-b:var(--teal-ink);position:relative;display:inline-flex;align-items:center;gap:12px;font:600 15.5px\/1 var(--f-body);text-decoration:none;padding:17px 22px 17px 26px;border-radius:99px;background:var(--bg-b);color:var(--fg-b);border:0;cursor:pointer;transition:transform .16s var(--ease-out),box-shadow .25s ease,background-color .2s ease}body .cm-cat .btn .knob{display:grid;place-items:center;width:28px;height:28px;margin:-6px -8px -6px 0;border-radius:50%;background:var(--fg-b);color:var(--bg-b);overflow:hidden}body .cm-cat .btn .knob .ico{font-size:15px;transition:transform .35s var(--ease-out)}body .cm-cat .btn:active{transform:scale(.97)}body .cm-cat .btn-primary{box-shadow:0 10px 24px -12px rgb(var(--shade)\/.55)}@media (hover:hover) and (pointer:fine){body .cm-cat .btn-primary:hover{box-shadow:0 16px 32px -14px rgb(var(--shade)\/.6)}body .cm-cat .btn:hover .knob .ico{transform:translateX(3px) rotate(-45deg)}}body .cm-cat .btn-ghost{--bg-b:transparent;--fg-b:var(--ink);padding:10px 2px;border-radius:0;gap:8px;background:linear-gradient(currentColor,currentColor)0 100%\/100% 1.5px no-repeat}body .cm-cat .btn-ghost .ico{transition:transform .3s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .btn-ghost:hover{color:var(--teal)}body .cm-cat .btn-ghost:hover .ico{transform:translateX(4px)}}body .cm-cat .hero{padding-block:clamp(32px,4.5vw,64px) clamp(48px,6vw,88px);position:relative;overflow-x:clip}body .cm-cat .hero::before{content:\"\";position:absolute;inset:-12% -12%auto auto;width:min(70vw,900px);aspect-ratio:1;background:radial-gradient(closest-side,var(--mint),transparent 70%);z-index:-1;pointer-events:none}body .cm-cat .hero h1{font-size:clamp(40px,5vw,72px);line-height:.98;letter-spacing:-.042em;font-weight:680;margin-top:14px}@media (prefers-reduced-motion:no-preference){body .cm-cat .hero h1{animation-delay:.08s}}@keyframes rise{0%{opacity:.25;transform:translateY(18px);filter:blur(6px)}}body .cm-cat .section{padding-block:clamp(64px,8vw,120px)}body .cm-cat .ranges{background:var(--mint);border-radius:clamp(28px,4vw,48px) clamp(28px,4vw,48px)0 0}body .cm-cat .add{position:absolute;z-index:2;top:14px;right:14px;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 11px;border-radius:99px;border:0;cursor:pointer;background:rgb(255 255 255\/.9);color:#10292a;font:600 13px var(--f-body);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 6px 18px -8px rgb(16 58 53\/.45);transition:transform .16s var(--ease-out),background-color .2s ease,color .2s ease}body .cm-cat .add:active{transform:scale(.95)}body .cm-cat .add .ico{font-size:16px;transition:transform .3s var(--ease-out)}body .cm-cat .add[aria-pressed=true]{background:var(--teal);color:var(--teal-ink)}body .cm-cat .add[aria-pressed=true] .i-p{display:none}body .cm-cat .add[aria-pressed=true] .i-c{display:block}@media (prefers-reduced-motion:no-preference){body .cm-cat .add[aria-pressed=true] .i-c{animation:pop .3s var(--ease-out)}}@keyframes pop{0%{transform:scale(.6);opacity:.4}}body .cm-cat .all{grid-column:span 6;border-radius:var(--r-lg);background:var(--deep);color:var(--deep-ink);padding:clamp(26px,3.4vw,44px);display:flex;flex-direction:column;justify-content:space-between;gap:28px;text-decoration:none;position:relative;overflow:hidden;min-height:300px}body .cm-cat .all h3{color:var(--deep-ink);font-size:clamp(28px,3vw,42px);line-height:1;letter-spacing:-.035em;font-weight:650;max-width:14ch}body .cm-cat .all p{color:var(--deep-muted);max-width:40ch}body .cm-cat .all .btn{--bg-b:var(--deep-ink);--fg-b:var(--deep);align-self:flex-start}body .cm-cat .all .rings{position:absolute;right:-90px;bottom:-90px;width:320px;aspect-ratio:1;border-radius:50%;border:1px solid rgb(255 255 255\/.12);box-shadow:0 0 0 40px rgb(255 255 255\/.03),0 0 0 80px rgb(255 255 255\/.025);pointer-events:none;transition:transform 1.2s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .all:hover .rings{transform:scale(1.12)}}body .cm-cat .box{border-radius:var(--r-lg);padding:clamp(26px,3.5vw,48px);display:flex;flex-direction:column;gap:18px;position:relative;overflow:hidden}body .cm-cat .box h2{font-size:clamp(28px,3vw,40px);line-height:1.02;letter-spacing:-.03em;font-weight:650}body .cm-cat .box p{color:var(--muted);max-width:46ch}@media (prefers-reduced-motion:reduce){body .cm-cat .marquee ul[aria-hidden]{display:none}}body .cm-cat .faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px 64px;align-items:start}body .cm-cat .faq-grid .sticky{position:sticky;top:32px}body .cm-cat .qa{padding-block:14px;border-top:1px solid var(--line)}body .cm-cat .qa:last-child{border-bottom:1px solid var(--line)}body .cm-cat .qa h3{font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.3}body .cm-cat .qa p{color:var(--muted);font-size:15.5px;margin-top:8px;max-width:60ch}body .cm-cat .final{background:var(--deep);color:var(--deep-ink);border-radius:clamp(28px,4vw,48px);padding:clamp(36px,6vw,88px);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px 56px;align-items:end;position:relative;overflow:hidden}body .cm-cat .final::before{content:\"\";position:absolute;inset:auto -20% -60%auto;width:70%;aspect-ratio:1;background:radial-gradient(closest-side,rgb(99 184 167\/.28),transparent);pointer-events:none}body .cm-cat .final h2{color:var(--deep-ink);font-size:clamp(36px,5.4vw,76px);line-height:.95;letter-spacing:-.045em;font-weight:680}body .cm-cat .final p{color:var(--deep-muted);margin-top:18px;max-width:46ch}body .cm-cat .final .actions{display:flex;flex-direction:column;gap:18px;align-items:flex-start;position:relative}body .cm-cat .final .btn{--bg-b:var(--deep-ink);--fg-b:var(--deep)}body .cm-cat .final .btn-wa{--bg-b:rgb(255 255 255\/.1);--fg-b:var(--deep-ink);box-shadow:inset 0 0 0 1px rgb(255 255 255\/.2)}body .cm-cat .final .btn-wa .knob{background:var(--deep-ink);color:var(--deep)}body .cm-cat .wa{display:flex;align-items:center;gap:12px;flex-wrap:wrap}body .cm-cat .wa .num{font:500 16px var(--f-mono);color:var(--deep-ink);user-select:all;letter-spacing:.02em}body .cm-cat .final .mono{color:var(--deep-muted)}body .cm-cat .tray{position:fixed;left:50%;bottom:0;z-index:20;width:min(640px,calc(100% - 24px));margin-bottom:calc(14px + env(safe-area-inset-bottom,0));display:flex;align-items:center;gap:14px;padding:10px 10px 10px 18px;border-radius:99px;background:var(--deep);color:var(--deep-ink);box-shadow:0 24px 50px -20px rgb(0 0 0\/.5);transform:translate(-50%,calc(100% + 40px));opacity:0;transition:transform .45s var(--ease-out),opacity .3s ease;pointer-events:none}body .cm-cat .tray.open{transform:translate(-50%,0);opacity:1;pointer-events:auto}body .cm-cat .tray .count{display:grid;place-items:center;min-width:30px;height:30px;border-radius:99px;background:var(--teal);color:var(--teal-ink);font:600 14px var(--f-mono);font-variant-numeric:tabular-nums}body .cm-cat .tray .names{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--deep-muted)}body .cm-cat .tray .names b{color:var(--deep-ink);font-weight:600}body .cm-cat .tray .btn{--bg-b:var(--deep-ink);--fg-b:var(--deep);padding:13px 16px 13px 20px;font-size:14.5px;white-space:nowrap}body .cm-cat .tray .clear{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:0;background:0 0;color:var(--deep-muted);cursor:pointer;transition:background-color .2s ease}body .cm-cat .tray .clear:hover{background:rgb(255 255 255\/.1);color:var(--deep-ink)}@media (max-width:1020px){body .cm-cat .all{grid-column:span 6}body .cm-cat .final,body .cm-cat .faq-grid{grid-template-columns:1fr}body .cm-cat .faq-grid .sticky{position:static}}@media (max-width:640px){body .cm-cat .all{grid-column:auto}body .cm-cat .tray{border-radius:22px}body .cm-cat .tray .names{display:none}body .cm-cat .tray .btn{flex:1;justify-content:space-between}}@media (prefers-reduced-motion:reduce){body .cm-cat *,body .cm-cat ::before,body .cm-cat ::after{transition-duration:.01ms!important}}body .cm-cat .qa summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;min-height:44px}body .cm-cat .qa summary::-webkit-details-marker{display:none}body .cm-cat .qa .pm{position:relative;flex:none;width:32px;height:32px;border-radius:50%;background:var(--mint);transition:background-color .2s ease,transform .3s var(--ease-out)}body .cm-cat .qa .pm::before,body .cm-cat .qa .pm::after{content:\"\";position:absolute;left:50%;top:50%;width:12px;height:1.8px;border-radius:2px;background:var(--ink);transform:translate(-50%,-50%)}body .cm-cat .qa .pm::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .3s var(--ease-out)}body .cm-cat .qa[open] .pm{background:var(--teal)}body .cm-cat .qa[open] .pm::before,body .cm-cat .qa[open] .pm::after{background:var(--teal-ink)}body .cm-cat .qa[open] .pm::after{transform:translate(-50%,-50%) rotate(0deg)}body .cm-cat .qa summary:active .pm{transform:scale(.92)}body .cm-cat .qa .ans{overflow:hidden}@media (prefers-reduced-motion:no-preference){body .cm-cat .qa[open] .ans{animation:ans .35s var(--ease-out)}}@keyframes ans{0%{opacity:0;transform:translateY(-6px)}}body .cm-cat .wa-dock{display:none}body .cm-cat .tray[data-mode=default] .count,body .cm-cat .tray[data-mode=default] .names,body .cm-cat .tray[data-mode=default] .clear{display:none}body .cm-cat{-webkit-tap-highlight-color:transparent}@media (max-width:640px){body .cm-cat{font-size:16px;padding-bottom:calc(92px + env(safe-area-inset-bottom,0))}body .cm-cat .mono{font-size:12.5px}body .cm-cat .section{padding-block:56px}body .cm-cat .h2{font-size:30px;line-height:1.05;letter-spacing:-.03em}body .cm-cat .sub{font-size:16px}body .cm-cat .hero{padding-block:14px 40px}body .cm-cat .hero::before{display:none}body .cm-cat .hero h1{order:3;font-size:36px;line-height:1.02;letter-spacing:-.04em;margin-top:6px}body .cm-cat .ranges{border-radius:28px 28px 0 0}body .cm-cat .all{grid-column:1\/-1}body .cm-cat .add{top:8px;right:8px;width:46px;height:46px;padding:0;justify-content:center;border-radius:50%}body .cm-cat .add span{display:none}body .cm-cat .add .ico{font-size:18px}body .cm-cat .all{min-height:0;padding:24px;gap:20px;border-radius:18px}body .cm-cat .all h3{font-size:26px}body .cm-cat .all .rings{width:220px;right:-70px;bottom:-70px}body .cm-cat .all .btn{align-self:stretch;justify-content:space-between}body .cm-cat .btn-ghost{min-height:44px}body .cm-cat .box{padding:24px;border-radius:22px;gap:14px}body .cm-cat .box h2{font-size:26px}body .cm-cat .marquee ul[aria-hidden]{display:none}body .cm-cat .faq-grid{gap:18px}body .cm-cat .qa{padding-block:6px}body .cm-cat .qa summary{min-height:64px;padding-block:8px}body .cm-cat .qa h3{font-size:16.5px;line-height:1.3;text-wrap:pretty}body .cm-cat .qa p{font-size:15.5px;margin:0 0 14px;padding-right:44px}body .cm-cat .final{padding:28px 22px;border-radius:24px;gap:22px}body .cm-cat .final h2{font-size:34px}body .cm-cat .final .actions{align-items:stretch}body .cm-cat .final .btn{justify-content:space-between;min-height:54px}body .cm-cat .wa-final{display:flex}body .cm-cat .tray{width:calc(100% - 20px);margin-bottom:calc(10px + env(safe-area-inset-bottom,0));border-radius:22px;padding:8px;gap:8px}body .cm-cat .tray .names{display:none}body .cm-cat .tray .wa-dock{display:inline-flex}body .cm-cat .tray[data-mode=sel] .wa-dock{display:none}body .cm-cat .tray .btn{flex:1;min-width:0;justify-content:space-between;min-height:50px;padding:0 10px 0 18px;font-size:15px;white-space:nowrap}body .cm-cat .tray #tray-label{overflow:hidden;text-overflow:ellipsis}body .cm-cat .tray .count{min-width:36px;height:36px;margin-left:4px}body .cm-cat .tray .clear{width:44px;height:44px}body .cm-cat .wa-dock{align-items:center;justify-content:center;gap:8px;height:50px;padding:0 16px;border-radius:16px;background:rgb(255 255 255\/.1);color:var(--deep-ink);text-decoration:none;font:600 14.5px var(--f-body);flex:none;transition:transform .16s var(--ease-out)}body .cm-cat .wa-dock:active{transform:scale(.96)}body .cm-cat .wa-dock .ico{font-size:19px}}body .cm-cat .fmt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}body .cm-cat .fmt-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;display:flex;flex-direction:column;gap:10px}body .cm-cat .fmt-card>.ico{font-size:30px;color:var(--teal)}body .cm-cat .fmt-card h3{font-size:clamp(20px,1.8vw,24px);font-weight:620;letter-spacing:-.015em;line-height:1.15}body .cm-cat .fmt-card p{font-size:15px;color:var(--muted);line-height:1.55}@media (max-width:1020px){body .cm-cat .fmt{grid-template-columns:1fr}}@media (max-width:640px){body .cm-cat .fmt-card{padding:18px}}body .cm-cat .tile{position:relative;display:block;border-radius:var(--r-lg);overflow:hidden;color:#fff;text-decoration:none;background:var(--deep);isolation:isolate}body .cm-cat .tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out);z-index:-2}body .cm-cat .tile::after{content:\"\";position:absolute;inset:0;background:linear-gradient(to top,rgb(8 26 24\/.9),rgb(8 26 24\/.55) 40%,rgb(8 26 24\/.08) 75%);z-index:-1}body .cm-cat .tile-body{position:absolute;left:0;right:0;bottom:0;padding:22px 24px;display:flex;flex-direction:column;gap:6px}body .cm-cat .tile .mono{color:rgb(255 255 255\/.75)}body .cm-cat .tile h3{color:#fff;font-size:clamp(22px,2vw,28px);font-weight:650;letter-spacing:-.02em;line-height:1.1}body .cm-cat .tile p{color:rgb(255 255 255\/.85);font-size:14.5px;max-width:40ch;line-height:1.45}body .cm-cat .tile .more{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;margin-top:6px;color:#fff}body .cm-cat .tile .more .ico{transition:transform .3s var(--ease-out)}body .cm-cat .tile:active{transform:scale(.99)}@media (hover:hover) and (pointer:fine){body .cm-cat .tile:hover img{transform:scale(1.05)}body .cm-cat .tile:hover .more .ico{transform:translateX(4px)}}body .cm-cat .rail-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 28px;margin-bottom:clamp(24px,3vw,40px)}body .cm-cat .rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 max(16px,calc((100vw - 1280px)\/2 + 48px)) 8px;scrollbar-width:none;scroll-padding-inline:max(16px,calc((100vw - 1280px)\/2 + 48px))}body .cm-cat .rail::-webkit-scrollbar{display:none}body .cm-cat .rcard{flex:0 0 clamp(220px,22vw,300px);scroll-snap-align:start;position:relative;aspect-ratio:3\/4;border-radius:var(--r-md);overflow:hidden;color:#fff;text-decoration:none;background:var(--mint-2);isolation:isolate}body .cm-cat .rcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .9s var(--ease-out)}body .cm-cat .rcard::after{content:\"\";position:absolute;inset:0;background:linear-gradient(to top,rgb(8 26 24\/.75),transparent 55%);z-index:-1}body .cm-cat .rcard>span{position:absolute;left:16px;right:16px;bottom:16px;display:flex;flex-direction:column;gap:2px}body .cm-cat .rcard .mono{color:rgb(255 255 255\/.8)}body .cm-cat .rcard b{font-family:var(--f-display);font-size:21px;font-weight:620;letter-spacing:-.01em;color:#fff}@media (hover:hover) and (pointer:fine){body .cm-cat .rcard:hover img{transform:scale(1.05)}}body .cm-cat .rcard:active{transform:scale(.98)}@media (max-width:640px){body .cm-cat .rail{padding-inline:16px;scroll-padding-inline:16px;gap:10px}body .cm-cat .rcard{flex-basis:62vw}}body .cm-cat .hx-pause[aria-pressed=true] .i-pause{display:none}body .cm-cat .hx-pause[aria-pressed=true] .i-play2{display:block}body .cm-cat .faq-help{margin-top:28px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;padding:22px;border-radius:var(--r-md);background:var(--mint);max-width:360px}body .cm-cat .faq-help b{font-family:var(--f-display);font-size:18px;font-weight:640}body .cm-cat .faq-help span{color:var(--muted);font-size:14.5px}body .cm-cat .btn-wa-s{margin-top:10px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:99px;background:var(--paper);border:1px solid var(--line);color:var(--ink);font-weight:600;font-size:14px;text-decoration:none}body .cm-cat .btn-wa-s .ico{font-size:18px}@media (max-width:640px){body .cm-cat .faq-help{display:none}}body .cm-cat .rq-stars{display:inline-flex;gap:3px}body .cm-cat .rq-stars i{width:18px;height:18px;background:#f5b301;clip-path:polygon(50%0,61.8% 35.3%,100% 35.3%,69.1% 57.1%,80.9% 92.7%,50% 70.6%,19.1% 92.7%,30.9% 57.1%,0 35.3%,38.2% 35.3%)}body .cm-cat .rq{margin:0;position:relative;display:flex;flex-direction:column;gap:22px;padding:clamp(24px,2.6vw,36px);border-radius:26px;background:var(--paper);border:1px solid var(--line)}body .cm-cat .rq-mark{width:34px;height:auto;fill:var(--teal);opacity:.9}body .cm-cat .rq blockquote{margin:0;font-family:var(--f-display);font-weight:520;font-size:clamp(17px,1.35vw,19px);line-height:1.42;letter-spacing:-.01em;color:var(--ink);text-wrap:pretty}body .cm-cat .rq figcaption{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:1px solid var(--line)}body .cm-cat .rq-stars i{width:14px;height:14px}body .cm-cat .rq-who{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}body .cm-cat .rq-who b{font-size:14.5px;font-weight:600}body .cm-cat .rq-who .mono{font-size:11.5px;color:var(--muted)}body .cm-cat .rq-lead{background:#0f3a35;border-color:#0f3a35;overflow:hidden;isolation:isolate}body .cm-cat .rq-lead::before{content:\"\";position:absolute;right:-30%;bottom:-50%;width:90%;aspect-ratio:1;background:radial-gradient(closest-side,rgb(47 114 102\/.6),transparent);z-index:-1}body .cm-cat .rq-lead .rq-mark{fill:#8fd1c3}body .cm-cat .rq-lead blockquote{color:#fff;font-size:clamp(22px,2vw,30px);line-height:1.22;letter-spacing:-.02em;font-weight:560}body .cm-cat .rq-lead figcaption{border-top-color:rgb(255 255 255\/.14)}body .cm-cat .rq-lead .rq-who b{color:#fff}body .cm-cat .rq-lead .rq-who .mono{color:rgb(255 255 255\/.65)}@media (max-width:1020px){body .cm-cat .rq-lead{grid-column:1\/-1}}@media (max-width:640px){body .cm-cat .rq{flex:0 0 86%;scroll-snap-align:start;border-radius:22px;padding:22px}body .cm-cat .rq-lead blockquote{font-size:21px}}body .cm-cat .sv-ic[aria-pressed=true] .mx{display:inline}body .cm-cat .sv-ic[aria-pressed=true] .w1,body .cm-cat .sv-ic[aria-pressed=true] .w2{display:none}body .cm-cat .bl{padding:0 clamp(8px,1.2vw,16px)}body .cm-cat .cx{padding-block:clamp(64px,8vw,120px) clamp(24px,3vw,40px)}@media (max-width:640px){body .cm-cat .cx{padding-block:56px 16px}}body .cm-cat .ob-tab[aria-selected=false]{opacity:.62}@media (hover:hover) and (pointer:fine){body .cm-cat .ob-tab[aria-selected=false]:hover{opacity:1}}body .cm-cat .fm-head{display:flex;flex-direction:column;gap:12px;max-width:640px;margin-bottom:clamp(28px,4vw,48px)}body .cm-cat .fm-duo{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}body .cm-cat .fm-card{display:flex;flex-direction:column;border-radius:30px;overflow:hidden;background:var(--paper);border:1px solid var(--line)}body .cm-cat .fm-tech{background:#0f2a27;border-color:#0f2a27;color:#fff}body .cm-cat .fm-media{margin:0;aspect-ratio:16\/10;overflow:hidden;background:var(--mint-2)}body .cm-cat .fm-media img{width:100%;height:100%!important;object-fit:cover;display:block;transition:transform 1.2s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .fm-card:hover .fm-media img{transform:scale(1.04)}}body .cm-cat .fm-body{display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.6vw,34px);flex:1}body .cm-cat .fm-body h3{font-size:clamp(22px,2vw,28px);font-weight:650;letter-spacing:-.025em;line-height:1.1}body .cm-cat .fm-body>p{margin:0;font-size:15.5px;line-height:1.6;color:var(--muted);max-width:46ch}body .cm-cat .fm-tech h3{color:#fff}body .cm-cat .fm-tech .fm-body>p{color:rgb(255 255 255\/.75)}body .cm-cat .fm-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:6px 0 0}body .cm-cat .fm-stats div{display:flex;flex-direction:column-reverse;gap:4px}body .cm-cat .fm-stats dd{margin:0;font-family:var(--f-display);font-weight:660;font-size:clamp(30px,3vw,42px);line-height:1;letter-spacing:-.04em;color:var(--teal);font-variant-numeric:tabular-nums}body .cm-cat .fm-stats dt{font-size:12.5px;line-height:1.3;color:var(--muted)}body .cm-cat .fm-note{font-size:12px;color:var(--muted);margin-top:auto}body .cm-cat .fm-chips{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}body .cm-cat .fm-chips li{padding:8px 13px;border-radius:99px;font-size:13.5px;font-weight:500;color:#dff1ec;background:rgb(255 255 255\/.08);border:1px solid rgb(255 255 255\/.16);transition:background-color .2s ease,border-color .2s ease}@media (hover:hover) and (pointer:fine){body .cm-cat .fm-chips li:hover{background:rgb(143 209 195\/.18);border-color:rgb(143 209 195\/.5)}}body .cm-cat .fm-x{position:absolute;left:50%;top:calc(50% - 60px);transform:translate(-50%,-50%);z-index:2;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--bg);border:1px solid var(--line);font:500 24px\/1 var(--f-display);color:var(--teal);box-shadow:0 14px 30px -18px rgb(var(--shade)\/.5)}body .cm-cat .fm-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin:clamp(24px,3vw,36px)0 clamp(40px,5vw,64px)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){body .cm-cat .fm-nat{animation:fmL linear both;animation-timeline:view();animation-range:entry 0%entry 60%}body .cm-cat .fm-tech{animation:fmR linear both;animation-timeline:view();animation-range:entry 0%entry 60%}}}@keyframes fmL{0%{opacity:0;transform:translateX(-28px)}}@keyframes fmR{0%{opacity:0;transform:translateX(28px)}}@media (max-width:1020px){body .cm-cat .fm-duo{grid-template-columns:1fr}body .cm-cat .fm-x{top:auto;position:relative;left:auto;transform:none;margin:-34px auto;justify-self:center}}@media (max-width:640px){body .cm-cat .fm-card{border-radius:24px}body .cm-cat .fm-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}body .cm-cat .fm-stats dd{font-size:32px}body .cm-cat .fm-links .btn-primary{width:100%;justify-content:space-between}body .cm-cat .fm-x{width:48px;height:48px;font-size:20px}}@media (max-width:1020px){@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){body .cm-cat .fm-nat,body .cm-cat .fm-tech{animation-name:rise}}}}body .cm-cat .fm-rail-h{font-size:clamp(19px,1.6vw,22px);font-weight:640;letter-spacing:-.015em;margin:0 0 16px}body .cm-cat .tile,body .cm-cat .fm-card,body .cm-cat .rq,body .cm-cat .final{border-radius:28px}body .cm-cat .rcard,body .cm-cat .faq-help{border-radius:20px}@media (max-width:640px){body .cm-cat .tile,body .cm-cat .fm-card,body .cm-cat .rq,body .cm-cat .final{border-radius:22px}body .cm-cat .rcard{border-radius:18px}}body .cm-cat .fm-head{margin-bottom:clamp(28px,4vw,48px)}body .cm-cat .pb{display:flex;align-items:center;justify-content:center;gap:clamp(18px,3vw,40px);padding-block:clamp(18px,2.2vw,26px)0;color:var(--muted)}body .cm-cat .pb-rating{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);min-height:44px;transition:opacity .2s ease}body .cm-cat .pb-g{width:20px;height:20px;flex:none}body .cm-cat .pb-rating b{font-family:var(--f-display);font-weight:650;font-size:17px;letter-spacing:-.01em}body .cm-cat .pb-stars{display:inline-flex;gap:2px}body .cm-cat .pb-stars i{width:14px;height:14px;background:#f5b301;clip-path:polygon(50%0,61.8% 35.3%,100% 35.3%,69.1% 57.1%,80.9% 92.7%,50% 70.6%,19.1% 92.7%,30.9% 57.1%,0 35.3%,38.2% 35.3%)}body .cm-cat .pb-count{font-size:14px;color:var(--muted);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.2em;transition:text-decoration-color .2s ease}@media (hover:hover) and (pointer:fine){body .cm-cat .pb-rating:hover .pb-count{text-decoration-color:currentColor}}body .cm-cat .pb-sep{width:1px;height:24px;background:var(--line);flex:none}body .cm-cat .pb-press{display:flex;align-items:center;gap:clamp(14px,2vw,26px)}body .cm-cat .pb-label{font-size:13px;color:var(--muted);white-space:nowrap}body .cm-cat .pb-press ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:clamp(16px,2.2vw,28px);color:var(--ink)}body .cm-cat .pb-press li{display:flex;opacity:.55;filter:grayscale(1);transition:opacity .25s ease}@media (hover:hover) and (pointer:fine){body .cm-cat .pb-press li:hover{opacity:.9}}body .cm-cat .pb-press img{height:20px;width:auto}body .cm-cat .pb-press img.gci{height:28px}body .cm-cat .pb-press .cosmo{height:15px;width:auto;color:var(--ink)}body .cm-cat .pb-press .cosmo *{fill:currentColor}@media (max-width:640px){body .cm-cat .pb{flex-direction:column;gap:10px;padding-top:16px}body .cm-cat .pb-sep{display:none}body .cm-cat .pb-press{gap:14px}body .cm-cat .pb-label{font-size:12px}body .cm-cat .pb-press ul{gap:16px}body .cm-cat .pb-press img{height:16px}body .cm-cat .pb-press img.gci{height:22px}body .cm-cat .pb-press .cosmo{height:12px}}body .cm-cat .fm.section{padding-block:clamp(48px,6vw,88px)}body .cm-cat .fm-head{margin-bottom:clamp(20px,2.6vw,32px)}body .cm-cat .fm-duo{gap:12px}body .cm-cat .fm-card{flex-direction:row;align-items:stretch;border-radius:24px;min-height:0}body .cm-cat .fm-media{flex:0 0 38%;aspect-ratio:auto}body .cm-cat .fm-body{gap:8px;padding:clamp(18px,2vw,26px);justify-content:center}body .cm-cat .fm-body h3{font-size:clamp(18px,1.5vw,21px)}body .cm-cat .fm-body>p{font-size:14.5px;line-height:1.5}body .cm-cat .fm-x{top:50%;width:44px;height:44px;font-size:19px}body .cm-cat .fm-links{margin:clamp(18px,2.2vw,26px)0 clamp(28px,3.4vw,44px)}body .cm-cat .fm-rail-h{font-size:17px;margin-bottom:12px}body .cm-cat .fm .rcard{flex-basis:clamp(170px,15vw,210px);aspect-ratio:4\/5;border-radius:18px}body .cm-cat .fm .rcard b{font-size:17px}body .cm-cat .fm .rcard>span{left:12px;right:12px;bottom:12px}@media (max-width:1020px){body .cm-cat .fm-x{top:auto;margin:-26px auto}}@media (max-width:640px){body .cm-cat .fm-card{border-radius:20px}body .cm-cat .fm-media{flex-basis:34%}body .cm-cat .fm-body{padding:14px 16px}body .cm-cat .fm-body h3{font-size:17px}body .cm-cat .fm-body>p{font-size:13.5px}body .cm-cat .fm-x{width:38px;height:38px;font-size:16px;margin:-22px auto}body .cm-cat .fm .rcard{flex-basis:44vw}}body .cm-cat .fm .rcard{flex-basis:clamp(220px,21vw,290px);aspect-ratio:3\/4;border-radius:20px}body .cm-cat .fm .rcard b{font-size:20px}body .cm-cat .fm .rcard>span{left:16px;right:16px;bottom:16px}body .cm-cat .fm-head{align-items:flex-end}body .cm-cat .fm-ing{margin-top:clamp(40px,5vw,64px)}body .cm-cat .fm-ing-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px;margin-bottom:14px}body .cm-cat .fm-ing-head h3{font-size:clamp(17px,1.4vw,19px);font-weight:620;letter-spacing:-.01em;color:var(--ink)}body .cm-cat .fm-ing-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:600;font-size:14.5px;color:var(--teal);text-decoration:none}body .cm-cat .fm-ing-link .ico{transition:transform .25s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .fm-ing-link:hover .ico{transform:translateX(3px)}}body .cm-cat .fm-ing .fm-card{border-radius:20px}body .cm-cat .fm-ing .fm-media{flex-basis:26%}body .cm-cat .fm-ing .fm-body{padding:14px 18px;gap:4px}body .cm-cat .fm-ing .fm-body h3{font-size:16.5px}body .cm-cat .fm-ing .fm-body>p{font-size:13.5px}body .cm-cat .fm-ing .fm-x{width:36px;height:36px;font-size:15px}body .cm-cat .fm-links,body .cm-cat .fm-rail-h{display:none}@media (max-width:640px){body .cm-cat .fm-head .btn{width:100%;justify-content:space-between}body .cm-cat .fm .rcard{flex-basis:62vw}body .cm-cat .fm-ing .fm-media{flex-basis:30%}body .cm-cat .fm-ing .fm-x{margin:-20px auto}}body .cm-cat .fm-head.rail-head{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;max-width:none;gap:16px 28px}body .cm-cat .fm-head.rail-head>div{display:flex;flex-direction:column;gap:12px;max-width:640px}body .cm-cat .wa .copy{min-height:44px;padding-inline:14px}body .cm-cat .h2{text-wrap:balance}body .cm-cat .dv{padding-block:clamp(18px,2.6vw,40px) clamp(40px,5vw,72px);position:relative;overflow-x:clip}body .cm-cat .dv::before{content:\"\";position:absolute;inset:-25% -10%auto auto;width:min(80vw,980px);aspect-ratio:1;background:radial-gradient(closest-side,var(--mint),transparent 72%);z-index:-1;pointer-events:none}body .cm-cat .dv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(28px,5vw,84px);align-items:start}body .cm-cat .dv-crumbs{display:flex;gap:8px;align-items:center;margin-bottom:clamp(16px,2.2vw,28px);font-size:12.5px}body .cm-cat .dv-crumbs a{color:var(--muted);text-decoration:none}body .cm-cat .dv-crumbs [aria-current]{color:var(--ink)}body .cm-cat .dv-title{font-size:clamp(34px,4vw,58px);line-height:1.03;letter-spacing:-.045em;font-weight:680;max-width:16ch;text-wrap:balance}body .cm-cat .dv-title .tint{color:var(--teal)}body .cm-cat .dv-lede{margin-top:clamp(16px,1.8vw,24px);font-size:clamp(17px,1.3vw,19px);line-height:1.55;color:var(--muted);max-width:46ch}body .cm-cat .dv-get{list-style:none;margin:clamp(24px,2.8vw,36px)0 0;padding:0;display:grid;gap:16px}body .cm-cat .dv-get li{display:flex;gap:14px;align-items:flex-start}body .cm-cat .dv-get b{display:block;font:650 16.5px\/1.3 var(--f-display);letter-spacing:-.01em;color:var(--ink);margin-bottom:2px}body .cm-cat .dv-get li>span:last-child{color:var(--muted);font-size:15.5px;line-height:1.5}body .cm-cat .dv-ic{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--mint);color:var(--teal)}body .cm-cat .dv-ic .ico{width:21px;height:21px}body .cm-cat .dv-trust{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:clamp(26px,3vw,40px);padding-top:clamp(20px,2.4vw,28px);border-top:1px solid var(--line)}body .cm-cat .dv-rating{display:inline-flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-size:14px}body .cm-cat .dv-rating b{font:700 17px\/1 var(--f-display)}body .cm-cat .dv-g{width:20px;height:20px}body .cm-cat .dv-stars{display:inline-flex;gap:2px}body .cm-cat .dv-stars i{width:13px;height:13px;background:#f5b301;clip-path:polygon(50%0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}body .cm-cat .dv-sep{width:1px;height:28px;background:var(--line)}body .cm-cat .dv-iso{display:inline-flex;align-items:center;gap:10px;font:600 13.5px\/1.25 var(--f-body);color:var(--ink)}body .cm-cat .dv-iso img{width:40px;height:40px;object-fit:contain;border-radius:10px;background:var(--paper);padding:4px;box-shadow:0 0 0 1px var(--line)}body .cm-cat .dv-iso small{display:block;font-weight:400;color:var(--muted);font-size:12.5px}body .cm-cat .dv-card{position:sticky;top:96px;background:var(--paper);border-radius:var(--r-lg);padding:clamp(22px,2.4vw,34px);box-shadow:0 1px 0 rgb(var(--shade)\/.04),0 30px 70px -36px rgb(var(--shade)\/.45),0 0 0 1px var(--line)}body .cm-cat .dv-card-head{display:flex;gap:16px;align-items:center;margin-bottom:clamp(16px,1.8vw,22px)}body .cm-cat .dv-avatar{flex:none;width:64px;height:64px;border-radius:20px;object-fit:cover;object-position:30% 30%}body .cm-cat .dv-card-head h2{font:680 clamp(20px,1.7vw,24px)\/1.15 var(--f-display);letter-spacing:-.025em;color:var(--ink)}body .cm-cat .dv-card-head p{margin-top:4px;color:var(--muted);font-size:14.5px;line-height:1.45}body .cm-cat .dv-reassure{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:13px;line-height:1.45;color:var(--muted)}body .cm-cat .dv-reassure .ico{flex:none;width:17px;height:17px;margin-top:1px;color:var(--teal)}body .cm-cat .dv-form .wpforms-container{margin:0!important;max-width:none!important}body .cm-cat .dv-form .wpforms-head-container,body .cm-cat .dv-form .wpforms-title{display:none}body .cm-cat .dv-form .wpforms-field-container{display:grid;gap:14px}body .cm-cat .dv-form .wpforms-field{padding:0!important;margin:0!important;float:none!important;width:auto!important}body .cm-cat .dv-form .wpforms-field-name .wpforms-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:none!important}body .cm-cat .dv-form .choices.wpforms-field-row{display:block!important}body .cm-cat .dv-form .wpforms-field-row-block{width:auto!important;padding:0!important;float:none!important}body .cm-cat .dv-form .wpforms-field-row::before,body .cm-cat .dv-form .wpforms-field-row::after{display:none!important}body .cm-cat .dv-form label.wpforms-field-label,body .cm-cat .dv-form legend.wpforms-field-label{display:block;font:600 13.5px\/1.3 var(--f-body)!important;color:var(--ink)!important;margin:0 0 7px!important;padding:0!important;text-transform:none!important;letter-spacing:normal!important}body .cm-cat .dv-form fieldset{border:0!important;padding:0!important;margin:0!important;min-width:0}body .cm-cat .dv-form .wpforms-label-hide{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important}body .cm-cat .dv-form .wpforms-sublabel-hide{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}body .cm-cat .dv-form .wpforms-required-label{color:var(--teal)!important}body .cm-cat .dv-form input[type=text],body .cm-cat .dv-form input[type=email],body .cm-cat .dv-form input[type=tel],body .cm-cat .dv-form select,body .cm-cat .dv-form textarea{width:100%!important;max-width:none!important;box-sizing:border-box;font:400 15.5px\/1.4 var(--f-body)!important;color:var(--ink)!important;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:14px!important;padding:13px 15px!important;height:auto!important;min-height:50px;box-shadow:none!important;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}body .cm-cat .dv-form textarea{min-height:120px;resize:vertical}body .cm-cat .dv-form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%)!important;background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%!important;background-size:6px 6px!important;background-repeat:no-repeat!important;padding-right:40px!important}body .cm-cat .dv-form input:focus,body .cm-cat .dv-form select:focus,body .cm-cat .dv-form textarea:focus{outline:0!important;border-color:var(--teal)!important;background-color:var(--paper)!important;box-shadow:0 0 0 4px rgb(47 114 102\/.14)!important}body .cm-cat .dv-form ::placeholder{color:#8aa09d;opacity:1}body .cm-cat .dv-form .wpforms-submit-container{margin-top:6px!important;padding:0!important}body .cm-cat .dv-form button.wpforms-submit{width:100%!important;display:inline-flex!important;align-items:center;justify-content:center;gap:10px;font:650 16px\/1 var(--f-body)!important;color:#fff!important;background:var(--deep)!important;border:0!important;border-radius:99px!important;padding:19px 26px!important;min-height:58px;cursor:pointer;box-shadow:0 14px 30px -14px rgb(var(--shade)\/.7)!important;transition:transform .16s var(--ease-out),background-color .2s ease}body .cm-cat .dv-form button.wpforms-submit::after{content:\"\";width:18px;height:18px;background:currentColor;-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'\/%3E%3C\/svg%3E\")center\/contain no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'\/%3E%3C\/svg%3E\")center\/contain no-repeat}@media (hover:hover) and (pointer:fine){body .cm-cat .dv-form button.wpforms-submit:hover{background:var(--teal)!important}}body .cm-cat .dv-form button.wpforms-submit:active{transform:scale(.98)}body .cm-cat .dv-form .wpforms-error,body .cm-cat .dv-form label.wpforms-error,body .cm-cat .dv-form em.wpforms-error{display:block;color:#b3261e!important;font-size:12.5px!important;margin-top:5px!important}body .cm-cat .dv-form input.wpforms-error,body .cm-cat .dv-form select.wpforms-error,body .cm-cat .dv-form textarea.wpforms-error{border-color:#d26a5f!important}body .cm-cat .dv-form .wpforms-confirmation-container-full{background:var(--mint)!important;border:0!important;border-radius:18px!important;color:var(--ink)!important;padding:22px!important}body .cm-cat .dv-form .wpforms-submit-spinner{margin-left:10px}body .cm-cat .dv-steps.section{padding-block:clamp(48px,6vw,96px) clamp(24px,3vw,40px)}body .cm-cat .dv-flow{list-style:none;margin:clamp(26px,3.4vw,44px)0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);counter-reset:s;position:relative}body .cm-cat .dv-flow li{position:relative;padding:clamp(22px,2.4vw,32px);border-radius:var(--r-lg);background:var(--paper);box-shadow:0 0 0 1px var(--line)}body .cm-cat .dv-flow .mono{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--deep);color:var(--deep-ink);font-size:13px}body .cm-cat .dv-flow h3{margin-top:18px;font:650 clamp(19px,1.6vw,22px)\/1.2 var(--f-display);letter-spacing:-.02em}body .cm-cat .dv-flow p{margin-top:8px;color:var(--muted);font-size:15.5px;line-height:1.55}body .cm-cat .dv-flow li:not(:last-child)::after{content:\"\";position:absolute;top:44px;right:calc(-1*clamp(14px,1.8vw,24px));width:clamp(14px,1.8vw,24px);height:1.5px;background:var(--line)}body .cm-cat .dv-obj.section{padding-block:clamp(40px,5vw,80px)}body .cm-cat .dv-obj .h2{max-width:20ch}body .cm-cat .dv-obj-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:auto auto;gap:clamp(14px,1.6vw,20px);margin-top:clamp(26px,3.4vw,44px)}body .cm-cat .dv-o{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-lg);background:var(--mint)}body .cm-cat .dv-o h3{font:650 clamp(18px,1.5vw,21px)\/1.25 var(--f-display);letter-spacing:-.02em;color:var(--ink)}body .cm-cat .dv-o p{color:var(--muted);font-size:15.5px;line-height:1.55}body .cm-cat .dv-obj-grid>.dv-o:last-child{grid-column:span 2}body .cm-cat .dv-o-lead{grid-row:span 2;background:var(--deep);color:var(--deep-ink);justify-content:flex-end;min-height:320px;background-image:radial-gradient(120% 80%at 100%0,rgb(255 255 255\/.08),transparent 60%)}body .cm-cat .dv-o-lead h3{color:#fff;font-size:clamp(22px,2vw,28px)}body .cm-cat .dv-o-lead p{color:var(--deep-muted);font-size:16.5px}body .cm-cat .dv-link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font:600 14.5px\/1.3 var(--f-body);color:var(--teal);text-decoration:none;padding-top:6px}body .cm-cat .dv-o-lead .dv-link{color:#bfe3da}body .cm-cat .dv-link .ico{width:16px;height:16px;transition:transform .2s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .dv-link:hover .ico{transform:translateX(4px)}}body .cm-cat .dv-proof.section{padding-block:clamp(40px,5vw,80px)}body .cm-cat .dv-proof-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 40px}body .cm-cat .dv-proof-head .h2{max-width:19ch}body .cm-cat .dv-score{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);padding:14px 20px;border-radius:20px;background:var(--paper);box-shadow:0 0 0 1px var(--line)}body .cm-cat .dv-score>b{font:700 44px\/1 var(--f-display);letter-spacing:-.04em}body .cm-cat .dv-score>span{display:grid;gap:4px;font-size:13.5px;color:var(--muted)}body .cm-cat .dv-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,20px);margin-top:clamp(24px,3vw,40px)}body .cm-cat .dv-alt{padding-block:clamp(24px,4vw,56px) clamp(48px,7vw,104px)}body .cm-cat .dv-alt-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:center;background:var(--deep);color:var(--deep-ink);border-radius:clamp(28px,4vw,44px);padding:clamp(28px,5vw,72px)}body .cm-cat .dv-alt-copy h2{font:680 clamp(28px,3.2vw,44px)\/1.05 var(--f-display);letter-spacing:-.035em;color:#fff;max-width:14ch}body .cm-cat .dv-alt-copy p{margin-top:14px;color:var(--deep-muted);max-width:40ch}body .cm-cat .dv-alt-copy .btn{--bg-b:var(--deep-ink);--fg-b:var(--deep);margin-top:24px}body .cm-cat .dv-alt-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}body .cm-cat .dv-alt-list a{display:flex;gap:14px;align-items:flex-start;height:100%;box-sizing:border-box;padding:18px;border-radius:20px;background:rgb(255 255 255\/.06);box-shadow:inset 0 0 0 1px rgb(255 255 255\/.1);color:var(--deep-ink);text-decoration:none;transition:background-color .2s ease}@media (hover:hover) and (pointer:fine){body .cm-cat .dv-alt-list a:hover{background:rgb(255 255 255\/.11)}}body .cm-cat .dv-alt-list .ico{flex:none;width:22px;height:22px;color:#bfe3da;margin-top:2px}body .cm-cat .dv-alt-list b{display:block;color:#fff;font:650 15px\/1.3 var(--f-body);margin-bottom:3px}body .cm-cat .dv-alt-list span{font-size:14px;line-height:1.45;color:var(--deep-muted);overflow-wrap:anywhere}@media (prefers-reduced-motion:no-preference){body .cm-cat .dv-title{animation:dvrise .9s var(--ease-out) both}body .cm-cat .dv-lede{animation:dvrise .9s var(--ease-out) .06s both}body .cm-cat .dv-get{animation:dvrise .9s var(--ease-out) .12s both}body .cm-cat .dv-card{animation:dvrise 1s var(--ease-out) .1s both}}@keyframes dvrise{0%{opacity:.001;transform:translateY(14px)}}@media (max-width:1020px){body .cm-cat .dv-grid{grid-template-columns:1fr;gap:0}body .cm-cat .dv-copy{display:contents}body .cm-cat .dv-crumbs,body .cm-cat .dv-title,body .cm-cat .dv-lede{order:1}body .cm-cat .dv-card{order:2;position:relative;top:auto;margin-top:clamp(22px,4vw,32px)}body .cm-cat .dv-get,body .cm-cat .dv-trust{order:3}body .cm-cat .dv-title{max-width:18ch}body .cm-cat .dv-obj-grid{grid-template-columns:1fr 1fr}body .cm-cat .dv-o-lead{grid-row:auto;grid-column:span 2;min-height:0}body .cm-cat .dv-alt-box{grid-template-columns:1fr}}@media (max-width:760px){body .cm-cat .dv-flow{grid-template-columns:1fr}body .cm-cat .dv-flow li:not(:last-child)::after{display:none}body .cm-cat .dv-quotes{grid-template-columns:1fr}}@media (max-width:640px){body .cm-cat .dv-title{font-size:clamp(32px,9vw,40px)}body .cm-cat .dv-get{gap:14px}body .cm-cat .dv-card{padding:20px;border-radius:24px;margin-inline:-4px}body .cm-cat .dv-form .wpforms-field-name .wpforms-field-row{grid-template-columns:1fr}body .cm-cat .dv-obj-grid{grid-template-columns:1fr}body .cm-cat .dv-o-lead{grid-column:auto}body .cm-cat .dv-obj-grid>.dv-o:last-child{grid-column:auto}body .cm-cat .dv-alt-list{grid-template-columns:1fr}body .cm-cat .dv-sep{display:none}}body .cm-cat .dv-form .iti{display:block!important;width:100%!important}body .cm-cat .dv-form .iti input[type=tel]{padding-left:58px!important}body .cm-cat .dv-form .iti__flag-container,body .cm-cat .dv-form .iti__country-container{padding:0 0 0 6px}body .cm-cat .dv-form .iti__selected-flag,body .cm-cat .dv-form .iti__selected-country{border-radius:12px 0 0 12px;padding:0 6px 0 10px;background:0 0!important}body .cm-cat .dv-form .choices{width:100%!important;max-width:none!important;margin:0!important;font:400 15.5px\/1.4 var(--f-body)}body .cm-cat .dv-form .choices__inner{box-sizing:border-box;width:100%!important;max-width:none!important;min-height:50px!important;display:flex!important;align-items:center;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:14px!important;padding:8px 40px 8px 15px!important;font-size:15.5px!important;color:var(--ink)!important}body .cm-cat .dv-form .choices.is-focused .choices__inner,body .cm-cat .dv-form .choices.is-open .choices__inner{border-color:var(--teal)!important;background:var(--paper)!important;box-shadow:0 0 0 4px rgb(47 114 102\/.14)!important}body .cm-cat .dv-form .choices__list--single{padding:0!important}body .cm-cat .dv-form .choices__list--dropdown,body .cm-cat .dv-form .choices__list[aria-expanded]{border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 18px 40px -18px rgb(var(--shade)\/.45)!important;margin-top:6px!important;overflow:hidden}body .cm-cat .dv-form .choices__list--dropdown .choices__item{font-size:15px!important;padding:12px 15px!important}body .cm-cat .dv-form .choices__list--dropdown .choices__item--selectable.is-highlighted{background:var(--mint)!important}body .cm-cat .dv-form .choices[data-type*=select-one]::after{border-color:var(--muted) transparent transparent!important;right:18px!important}body .cm-cat .dv-form .choices.wpforms-error .choices__inner,body .cm-cat .dv-form .choices.is-invalid .choices__inner{border-color:#d26a5f!important}body .cm-cat .dv-form ::placeholder{font-size:15px}body .cm-cat .fc-hero{padding-block:clamp(16px,2.4vw,36px) clamp(28px,3.5vw,48px);position:relative;overflow-x:clip}body .cm-cat .fc-hero::before{content:\"\";position:absolute;inset:-30%auto auto -18%;width:min(70vw,880px);aspect-ratio:1;background:radial-gradient(closest-side,var(--mint),transparent 70%);z-index:-1;pointer-events:none}body .cm-cat .fc-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(28px,5vw,80px);align-items:center}body .cm-cat .fc-title{font-size:clamp(36px,4.3vw,62px);line-height:1.02;letter-spacing:-.045em;font-weight:680;max-width:15ch;text-wrap:balance}body .cm-cat .fc-title .tint{color:var(--teal)}body .cm-cat .fc-lede{margin-top:clamp(16px,1.8vw,24px);font-size:clamp(17px,1.35vw,19.5px);line-height:1.55;color:var(--muted);max-width:42ch}body .cm-cat .fc-cta{display:flex;flex-wrap:wrap;gap:12px 14px;margin-top:clamp(24px,2.8vw,34px)}body .cm-cat .btn.fc-ghost{--bg-b:transparent;--fg-b:var(--ink);background:0 0;box-shadow:inset 0 0 0 1.5px var(--line);padding:17px 24px}@media (hover:hover) and (pointer:fine){body .cm-cat .btn.fc-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--teal);color:var(--teal)}}body .cm-cat .fc-hero-media{margin:0;position:relative;justify-self:end;width:100%;max-width:520px}body .cm-cat .fc-hero-media img{display:block;width:100%;height:auto;aspect-ratio:4\/5;max-height:min(74vh,660px);object-fit:cover;object-position:50% 35%;border-radius:var(--r-lg);background:var(--mint-2);box-shadow:0 40px 80px -48px rgb(var(--shade)\/.6)}body .cm-cat .fc-seal{position:absolute;left:clamp(-28px,-2vw,-12px);bottom:9%;display:flex;align-items:center;gap:12px;background:var(--paper);color:var(--muted);padding:12px 18px 12px 12px;border-radius:18px;font-size:12.5px;box-shadow:0 18px 40px -20px rgb(var(--shade)\/.45)}body .cm-cat .fc-seal .ico{width:38px;height:38px;padding:8px;border-radius:12px;background:var(--teal);color:var(--teal-ink)}body .cm-cat .fc-seal b{display:block;color:var(--ink);font:650 14px\/1.2 var(--f-display)}body .cm-cat .fc-pb-fact{font-size:14px;color:var(--muted)}body .cm-cat .fc-pb-fact b{color:var(--ink);font:700 16px\/1 var(--f-display)}@media (prefers-reduced-motion:no-preference){body .cm-cat .fc-title{animation:fcrise .9s var(--ease-out) both}body .cm-cat .fc-lede{animation:fcrise .9s var(--ease-out) .06s both}body .cm-cat .fc-cta{animation:fcrise .9s var(--ease-out) .12s both}body .cm-cat .fc-hero-media img{animation:fcclip 1.1s var(--ease-io) .05s both}body .cm-cat .fc-seal{animation:fcrise .8s var(--ease-out) .6s both}}@keyframes fcrise{0%{opacity:.001;transform:translateY(14px)}}@keyframes fcclip{0%{clip-path:inset(8% 6% 8% 6%round 28px);opacity:.4}to{clip-path:inset(0 0 0 0 round 0)}}body .cm-cat .fc-roles.section{padding-block:clamp(56px,7vw,104px) clamp(28px,3.5vw,48px)}body .cm-cat .fc-answer{margin-top:clamp(16px,2vw,24px);font:500 clamp(19px,1.6vw,23px)\/1.45 var(--f-display);letter-spacing:-.012em;color:var(--ink);max-width:52ch}body .cm-cat .fc-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(14px,1.6vw,20px);margin-top:clamp(28px,3.4vw,44px)}body .cm-cat .fc-col{border-radius:var(--r-lg);padding:clamp(24px,2.6vw,36px)}body .cm-cat .fc-col h3{margin-top:16px;font:650 clamp(20px,1.7vw,24px)\/1.2 var(--f-display);letter-spacing:-.02em}body .cm-cat .fc-col ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}body .cm-cat .fc-col li{position:relative;padding-left:30px;font-size:16px;line-height:1.45}body .cm-cat .fc-col li::before{content:\"\";position:absolute;left:0;top:2px;width:19px;height:19px;border-radius:50%;background:var(--mint-2)url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7266' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'\/%3E%3C\/svg%3E\")center\/12px no-repeat}body .cm-cat .fc-col-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px}body .cm-cat .fc-col-ic .ico{width:22px;height:22px}body .cm-cat .fc-you{background:var(--paper);box-shadow:0 0 0 1px var(--line)}body .cm-cat .fc-you .fc-col-ic{background:var(--mint);color:var(--teal)}body .cm-cat .fc-us{background:var(--deep);color:var(--deep-ink);background-image:radial-gradient(110% 80%at 100%0,rgb(255 255 255\/.08),transparent 60%)}body .cm-cat .fc-us h3{color:#fff}body .cm-cat .fc-us .fc-col-ic{background:rgb(255 255 255\/.1);color:#bfe3da}body .cm-cat .fc-us-list{grid-template-columns:1fr 1fr;column-gap:24px}body .cm-cat .fc-us li{color:var(--deep-ink)}body .cm-cat .fc-us li::before{background-color:rgb(255 255 255\/.12);background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='%23bfe3da' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'\/%3E%3C\/svg%3E\")}body .cm-cat .fc-modes.section{padding-block:clamp(32px,4vw,64px)}body .cm-cat .fc-bento{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:repeat(2,minmax(230px,auto));gap:clamp(12px,1.4vw,18px);margin-top:clamp(26px,3.4vw,44px)}body .cm-cat .fc-m1{grid-row:span 2}body .cm-cat .fc-m2{grid-column:span 2}body .cm-cat .fc-bento .tile{min-height:0}body .cm-cat .fc-cap{padding-block:clamp(40px,5vw,80px)}body .cm-cat .fc-cap-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,4vw,64px);align-items:stretch;background:var(--mint);border-radius:clamp(28px,4vw,44px);padding:clamp(16px,2vw,24px)}body .cm-cat .fc-cap-media{margin:0;height:100%}body .cm-cat .fc-cap-media img{display:block;width:100%;height:100%;min-height:380px;object-fit:cover;border-radius:clamp(20px,3vw,32px)}body .cm-cat .fc-cap-copy{align-self:center;padding:clamp(8px,2vw,28px) clamp(8px,2vw,28px) clamp(8px,2vw,28px)0}body .cm-cat .fc-cap-copy>p{margin-top:14px;color:var(--muted);max-width:40ch}body .cm-cat .fc-chips{display:grid;gap:18px;margin-top:24px}body .cm-cat .fc-chips h3{font:600 12.5px\/1 var(--f-body);text-transform:uppercase;letter-spacing:.07em;color:var(--teal)}body .cm-cat .fc-chips ul{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}body .cm-cat .fc-chips li{padding:8px 14px;border-radius:99px;background:var(--paper);font-size:14.5px;color:var(--ink);box-shadow:0 0 0 1px var(--line)}body .cm-cat .fc-link{display:inline-flex;align-items:center;gap:8px;margin-top:24px;font:600 15px\/1.3 var(--f-body);color:var(--teal);text-decoration:none}body .cm-cat .fc-link .ico{width:16px;height:16px;transition:transform .2s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .fc-link:hover .ico{transform:translateX(4px)}}body .cm-cat .fc-why.section{padding-block:clamp(40px,5vw,80px)}body .cm-cat .fc-why .h2{max-width:18ch}body .cm-cat .fc-why-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:clamp(14px,1.6vw,20px);margin-top:clamp(26px,3.4vw,44px)}body .cm-cat .fc-w{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-lg);background:var(--paper);box-shadow:0 0 0 1px var(--line)}body .cm-cat .fc-w .ico{width:26px;height:26px;color:var(--teal)}body .cm-cat .fc-w h3{font:650 clamp(18px,1.5vw,21px)\/1.25 var(--f-display);letter-spacing:-.02em}body .cm-cat .fc-w p{color:var(--muted);font-size:15.5px;line-height:1.55}body .cm-cat .fc-w-lead{grid-row:span 2;justify-content:flex-end;background:var(--deep);box-shadow:none;min-height:320px;background-image:radial-gradient(120% 80%at 100%0,rgb(255 255 255\/.08),transparent 60%)}body .cm-cat .fc-w-lead .ico{color:#bfe3da;width:32px;height:32px}body .cm-cat .fc-w-lead h3{color:#fff;font-size:clamp(22px,2vw,28px)}body .cm-cat .fc-w-lead p{color:var(--deep-muted);font-size:16.5px}body .cm-cat .fc-why-grid>.fc-w:last-child{grid-column:span 2}body .cm-cat .fc-rev.section{padding-block:clamp(40px,5vw,80px)}@media (max-width:1020px){body .cm-cat .fc-hero-grid{grid-template-columns:1fr}body .cm-cat .fc-hero-media{justify-self:start;max-width:560px}body .cm-cat .fc-split{grid-template-columns:1fr}body .cm-cat .fc-bento{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:minmax(240px,auto)}body .cm-cat .fc-m1{grid-row:auto;grid-column:span 2}body .cm-cat .fc-m2{grid-column:auto}body .cm-cat .fc-cap-grid{grid-template-columns:1fr}body .cm-cat .fc-cap-copy{align-self:center;padding:8px 12px 16px}body .cm-cat .fc-why-grid{grid-template-columns:1fr 1fr}body .cm-cat .fc-w-lead{grid-row:auto;grid-column:span 2;min-height:0}body .cm-cat .fc-why-grid>.fc-w:last-child{grid-column:span 2}}@media (max-width:640px){body .cm-cat .fc-title{font-size:clamp(32px,9vw,40px)}body .cm-cat .fc-hero-media img{aspect-ratio:1\/1;max-height:none}body .cm-cat .fc-seal{left:12px;bottom:12px}body .cm-cat .fc-us-list{grid-template-columns:1fr}body .cm-cat .fc-bento{grid-template-columns:1fr;grid-auto-rows:minmax(220px,auto)}body .cm-cat .fc-m1{grid-column:auto}body .cm-cat .fc-cap-media img{min-height:0;aspect-ratio:4\/3}body .cm-cat .fc-why-grid{grid-template-columns:1fr}body .cm-cat .fc-w-lead,body .cm-cat .fc-why-grid>.fc-w:last-child{grid-column:auto}}body .cm-cat .fc-eu{flex:none;border-radius:6px}body .cm-cat .fc-eu-lg{width:66px;height:44px;box-shadow:0 0 0 1px rgb(255 255 255\/.18)}body .cm-cat .fc-seal .fc-eu{width:54px;height:36px;box-shadow:0 0 0 1px rgb(0 51 153\/.15)}body .cm-cat .pk-hero-media img{object-position:58% 40%}body .cm-cat .pk-ex.section{padding-block:clamp(40px,5vw,80px)}body .cm-cat .pk-ex-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(16px,4vw,56px);align-items:end}body .cm-cat .pk-ex-sub{color:var(--muted);font-size:17px;line-height:1.55;max-width:44ch}body .cm-cat .pk-ex-ui{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(16px,2.4vw,32px);margin-top:clamp(26px,3.4vw,44px);align-items:start}body .cm-cat .pk-tabs{position:relative;display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:22px;background:var(--mint)}body .cm-cat .pk-tab{position:relative;z-index:1;display:grid;gap:3px;text-align:left;padding:14px 16px;border:0;border-radius:16px;background:0 0;color:var(--ink);cursor:pointer;font:inherit;line-height:1.2;text-transform:none;letter-spacing:normal;box-shadow:none;min-height:0;transition:color .2s ease}body .cm-cat .pk-tab b{font:650 16px\/1.2 var(--f-display);letter-spacing:-.01em}body .cm-cat .pk-tab small{font-size:13.5px;color:var(--muted)}body .cm-cat .pk-tab:focus-visible{outline:2px solid var(--teal);outline-offset:2px}body .cm-cat .pk-tab[aria-selected=false]:hover{color:var(--teal)}body .cm-cat .pk-ind{position:absolute;left:0;top:0;z-index:0;border-radius:16px;background:var(--paper);box-shadow:0 1px 0 rgb(var(--shade)\/.04),0 10px 24px -14px rgb(var(--shade)\/.45);pointer-events:none}body .cm-cat .pk-tabs.ready .pk-ind{transition:transform .32s var(--ease-out),width .32s var(--ease-out),height .32s var(--ease-out)}body .cm-cat .pk-panels{min-width:0}body .cm-cat .pk-p{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border-radius:var(--r-lg);overflow:hidden;background:var(--paper);box-shadow:0 0 0 1px var(--line)}body .cm-cat .pk-p[hidden]{display:none}body .cm-cat .pk-p img{display:block;width:100%;height:100%;min-height:340px;object-fit:cover}body .cm-cat .pk-p.on img{animation:pkin .45s var(--ease-out) both}body .cm-cat .pk-p.on .pk-fiche{animation:pkfade .4s var(--ease-out) .05s both}@keyframes pkin{0%{opacity:.4;transform:scale(1.03)}to{opacity:1;transform:none}}@keyframes pkfade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}body .cm-cat .pk-fiche{display:flex;flex-direction:column;gap:16px;padding:clamp(22px,2.6vw,34px)}body .cm-cat .pk-fiche h3{font:680 clamp(24px,2.2vw,30px)\/1.1 var(--f-display);letter-spacing:-.03em}body .cm-cat .pk-fiche dl{margin:0;display:grid;gap:12px}body .cm-cat .pk-fiche dl>div{display:grid;gap:3px;padding-bottom:12px;border-bottom:1px solid var(--line)}body .cm-cat .pk-fiche dt{font:500 11.5px\/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}body .cm-cat .pk-fiche dd{margin:0;font-size:15.5px;line-height:1.45;font-weight:500}body .cm-cat .pk-tip{margin-top:auto;padding:14px 16px;border-radius:14px;background:var(--mint);font-size:14.5px;line-height:1.5;color:var(--ink)}body .cm-cat .pk-tip b{display:block;margin-bottom:2px;color:var(--teal);font-size:13px}body .cm-cat .pk-layers.section{padding-block:clamp(40px,5vw,72px)}body .cm-cat .pk-layers .h2{max-width:22ch}body .cm-cat .pk-lay-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,18px);margin-top:clamp(26px,3.4vw,44px);counter-reset:l}body .cm-cat .pk-l{position:relative;display:flex;flex-direction:column;gap:10px;padding:clamp(20px,2vw,26px);border-radius:var(--r-lg);background:var(--paper);box-shadow:0 0 0 1px var(--line);overflow:hidden}body .cm-cat .pk-l::before{content:\"\";position:absolute;left:0;right:0;top:0;height:6px;background:var(--c,var(--teal))}body .cm-cat .pk-l1{--c:#cfe6df}body .cm-cat .pk-l2{--c:#9fcdbf}body .cm-cat .pk-l3{--c:#5ea595}body .cm-cat .pk-l4{--c:var(--teal)}body .cm-cat .pk-l .mono{font-size:12px;color:var(--teal)}body .cm-cat .pk-l h3{font:650 clamp(19px,1.6vw,22px)\/1.2 var(--f-display);letter-spacing:-.02em}body .cm-cat .pk-l p{color:var(--muted);font-size:15px;line-height:1.55}body .cm-cat .pk-label.section{padding-block:clamp(40px,5vw,80px)}body .cm-cat .pk-label-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}body .cm-cat .pk-label-copy>p{margin-top:16px;color:var(--muted);font-size:17px;line-height:1.6;max-width:50ch}body .cm-cat .pk-mentions{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}body .cm-cat .pk-mentions li{display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:10px;font-size:14px;line-height:1.4;color:var(--muted)}body .cm-cat .pk-mentions li b{display:block;color:var(--ink);font-size:15px}body .cm-cat .pk-mentions span,body .cm-cat .pk-lbl i{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--teal);color:#fff;font:700 11.5px\/1 var(--f-body);font-style:normal;grid-row:span 2}body .cm-cat .pk-lbl{margin:0}body .cm-cat .pk-lbl-card{display:grid;grid-template-columns:1fr 1fr;border-radius:20px;overflow:hidden;box-shadow:0 0 0 1px var(--line),0 40px 70px -44px rgb(var(--shade)\/.55);background:var(--paper);transform:rotate(-1.2deg)}body .cm-cat .pk-lbl-front{display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:24px;background:linear-gradient(160deg,#eaf4f1,#d7eae4);min-height:300px}body .cm-cat .pk-lbl-brand{font:700 13px\/1 var(--f-mono);letter-spacing:.24em;color:var(--deep)}body .cm-cat .pk-lbl-name{font:680 26px\/1.05 var(--f-display);letter-spacing:-.03em;color:var(--deep)}body .cm-cat .pk-lbl-fn,body .cm-cat .pk-lbl-qty{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--deep)}body .cm-cat .pk-lbl-qty{font:700 18px\/1 var(--f-display)}body .cm-cat .pk-lbl-back{display:flex;flex-direction:column;gap:10px;padding:20px;font-size:11.5px;line-height:1.45;color:var(--muted)}body .cm-cat .pk-lbl-back p{margin:0}body .cm-cat .pk-lbl-back i{width:18px;height:18px;font-size:10px;vertical-align:middle;margin-left:4px}body .cm-cat .pk-lbl-inci b{color:var(--ink)}body .cm-cat .pk-lbl-row{display:flex;align-items:center;gap:6px;margin-top:auto}body .cm-cat .pk-pao{display:inline-grid;place-items:center;width:30px;height:26px;border:1.5px solid var(--ink);border-radius:4px 4px 7px 7px;font:700 9.5px\/1 var(--f-body);color:var(--ink)}body .cm-cat .pk-lbl-row .mono{margin-left:10px;font-size:11px;color:var(--ink)}body .cm-cat .pk-lbl-rp{padding-top:8px;border-top:1px dashed var(--line)}body .cm-cat .pk-lbl figcaption{margin-top:14px;font-size:12px;color:var(--muted);text-align:center}body .cm-cat .pk-why-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:14px}body .cm-cat .pk-why-list li{display:grid;gap:3px;padding-left:16px;border-left:2px solid rgb(255 255 255\/.2)}body .cm-cat .pk-why-list b{color:#fff;font-size:16px}body .cm-cat .pk-why-list span{color:var(--deep-muted);font-size:14.5px;line-height:1.5}body .cm-cat .pk-why-media img{aspect-ratio:4\/3;object-position:40% 50%}body .cm-cat .pk-ppwr{padding-block:clamp(32px,4vw,56px)0}body .cm-cat .pk-ppwr-box{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(24px,3vw,36px) clamp(24px,3vw,40px);border-radius:var(--r-lg);background:var(--mint);color:var(--ink);text-decoration:none;overflow:hidden;isolation:isolate}body .cm-cat .pk-ppwr-box::after{content:\"\";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:radial-gradient(closest-side,rgb(47 114 102\/.18),transparent);z-index:-1}body .cm-cat .pk-ppwr-tx{display:grid;gap:8px}body .cm-cat .pk-ppwr-box img{display:block;width:100%;height:auto;aspect-ratio:16\/10;object-fit:cover;border-radius:18px}body .cm-cat .pk-ppwr-box .mono{font-size:12px;color:var(--teal)}body .cm-cat .pk-ppwr-box h2{font:680 clamp(22px,2.4vw,30px)\/1.15 var(--f-display);letter-spacing:-.03em;max-width:30ch}body .cm-cat .pk-ppwr-box p{color:var(--muted);max-width:60ch}body .cm-cat .pk-ppwr-cta{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-weight:700;color:var(--teal)}body .cm-cat .pk-ppwr-cta .ico{transition:transform .2s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .pk-ppwr-box:hover .pk-ppwr-cta .ico{transform:translateX(4px)}}@media (max-width:1020px){body .cm-cat .pk-ex-head,body .cm-cat .pk-label-grid{grid-template-columns:1fr}body .cm-cat .pk-ex-ui{grid-template-columns:1fr}body .cm-cat .pk-tabs{flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(-1*clamp(16px,4vw,48px));border-radius:0;padding:6px clamp(16px,4vw,48px);background:0 0}body .cm-cat .pk-tabs::-webkit-scrollbar{display:none}body .cm-cat .pk-tab{flex:none;scroll-snap-align:center;background:var(--mint);padding:12px 16px}body .cm-cat .pk-tab[aria-selected=true]{background:0 0}body .cm-cat .pk-lay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .cm-cat .pk-why-media img{aspect-ratio:16\/9}body .cm-cat .pk-ppwr-box{grid-template-columns:1fr}}@media (max-width:640px){body .cm-cat .pk-p{grid-template-columns:1fr}body .cm-cat .pk-p img{min-height:0;aspect-ratio:4\/3;height:auto}body .cm-cat .pk-lay-grid,body .cm-cat .pk-mentions{grid-template-columns:1fr}body .cm-cat .pk-lbl-card{grid-template-columns:1fr;transform:none}body .cm-cat .pk-lbl-front{min-height:200px}}@media (prefers-reduced-motion:reduce){body .cm-cat .pk-p.on img,body .cm-cat .pk-p.on .pk-fiche{animation:none}body .cm-cat .pk-tabs.ready .pk-ind{transition:none}}body .cm-cat .ip{--ing:#c9902e;--ing2:#f3c46a;--glow:255 196 92}body .cm-cat .ip-em{font-family:var(--f-body);font-style:italic;font-weight:500;letter-spacing:-.03em}body .cm-cat .ip-hero{position:relative;height:420vh;padding:clamp(8px,1.4vw,16px) clamp(8px,1.4vw,16px)0}body .cm-cat .ip-stage{position:sticky;top:calc(var(--hdr,0px) + clamp(8px,1.4vw,16px));height:calc(100svh - var(--hdr,0px) - var(--bm,0px) - 2*clamp(8px,1.4vw,16px));min-height:520px;border-radius:clamp(22px,3vw,36px);overflow:hidden;background:radial-gradient(90% 70%at 60% 45%,#f7f7f5 0,#e6e8e5 60%,#d9dcd8 100%);isolation:isolate}body .cm-cat .ip-stage::after{content:\"\";position:absolute;left:18%;right:18%;bottom:-60px;height:120px;border-radius:50%;background:radial-gradient(closest-side,rgb(var(--glow)\/.55),transparent);filter:blur(10px);z-index:-1}body .cm-cat .ip-canvas{position:absolute;inset:0;width:100%;height:100%}body .cm-cat .ip-ui{position:absolute;inset:0;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;padding:clamp(20px,3vw,40px);pointer-events:none}body .cm-cat .ip-ui a,body .cm-cat .ip-ui button{pointer-events:auto}body .cm-cat .ip-tl{display:flex;flex-direction:column;gap:12px}body .cm-cat .ip-crumbs{font:500 12.5px\/1 var(--f-mono);color:#59625f}body .cm-cat .ip-crumbs a{color:#59625f;text-decoration:none}body .cm-cat .ip-brand{font:600 14px\/1 var(--f-mono);letter-spacing:.04em;color:#1c2422}body .cm-cat .ip-tr{display:grid;gap:8px;justify-items:end;font:500 12.5px\/1.3 var(--f-mono);color:#3b4441;text-align:right}body .cm-cat .ip-tr b{color:#1c2422}body .cm-cat .ip-ma{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:99px;background:#c1272d;color:#fff;font:600 12px\/1 var(--f-body)}body .cm-cat .ip-ma svg{width:14px;height:14px}body .cm-cat .ip-chap{grid-column:1;grid-row:2;align-self:end;max-width:720px}body .cm-cat .ip-h1{margin:0;font:720 clamp(52px,8vw,128px)\/.9 var(--f-display);letter-spacing:-.055em;color:#141b19}body .cm-cat .ip-lines{position:relative;min-height:2.6em;margin-top:clamp(12px,1.6vw,20px);font-size:clamp(20px,2.2vw,32px);line-height:1.2;max-width:24ch}body .cm-cat .ip-ch{position:absolute;left:0;top:0;margin:0;opacity:0;transform:translateY(16px);filter:blur(6px);transition:opacity .5s var(--ease-out),transform .6s var(--ease-out),filter .5s ease}body .cm-cat .ip-ch.on{opacity:1;transform:none;filter:none}body .cm-cat .ip-ch b{font:700 1em\/1.2 var(--f-display);letter-spacing:-.03em;color:#141b19}body .cm-cat .ip-ch .ip-em{color:var(--ing)}body .cm-cat .ip-mark{grid-column:2;grid-row:2;align-self:center;font:500 15px\/1 var(--f-mono);color:#1c2422;letter-spacing:.2em}body .cm-cat .ip-bl{grid-column:1\/-1;grid-row:3;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:22px}body .cm-cat .ip-inci{font:600 13px\/1.3 var(--f-mono);letter-spacing:.08em;color:#3b4441}body .cm-cat .ip-scroll{display:inline-flex;align-items:center;gap:10px;font:500 12px\/1 var(--f-mono);color:#59625f}body .cm-cat .ip-scroll i{position:relative;width:1px;height:34px;background:#b9bfbb;overflow:hidden}body .cm-cat .ip-scroll i::after{content:\"\";position:absolute;left:0;top:-40%;width:1px;height:40%;background:#1c2422;animation:ipline 1.8s var(--ease-out) infinite}@keyframes ipline{to{top:100%}}body .cm-cat .ip-prog{position:absolute;left:clamp(20px,3vw,40px);right:clamp(20px,3vw,40px);bottom:12px;height:2px;border-radius:2px;background:rgb(0 0 0\/.08);overflow:hidden}body .cm-cat .ip-prog i{position:absolute;inset:0;background:var(--ing);transform-origin:0 50%;transform:scaleX(0)}body .cm-cat .ip-id{padding-block:clamp(28px,4vw,56px)0}body .cm-cat .ip-id dl{margin:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-block:1px solid var(--line)}body .cm-cat .ip-id dl>div{display:grid;gap:8px;align-content:start;padding:clamp(16px,2vw,24px) clamp(10px,1.4vw,18px);border-left:1px solid var(--line)}body .cm-cat .ip-id dl>div:first-child{border-left:0;padding-left:0}body .cm-cat .ip-id dt{font:500 11.5px\/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}body .cm-cat .ip-id dd{margin:0;font-size:15px;line-height:1.4;font-weight:600}body .cm-cat .ip-id dd.mono{font:600 13px\/1.4 var(--f-mono);color:var(--teal);word-break:break-word}body .cm-cat .ip-sec{padding-block:clamp(48px,6vw,96px)}body .cm-cat .ip-k{display:flex;align-items:center;gap:12px;font:500 13px\/1 var(--f-mono);letter-spacing:.14em;color:var(--muted)}body .cm-cat .ip-k b{color:var(--ing);font-weight:600}body .cm-cat .ip-k::after{content:\"\";flex:1;height:1px;background:var(--line);max-width:120px}body .cm-cat .ip-sec .h2{margin-top:14px;max-width:18ch}body .cm-cat .ip-what{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,80px);align-items:start}body .cm-cat .ip-what .fc-answer{max-width:none}body .cm-cat .ip-comp{margin-top:28px;display:grid;gap:14px}body .cm-cat .ip-bar{display:grid;grid-template-columns:minmax(0,170px) minmax(0,1fr) 52px;gap:14px;align-items:center}body .cm-cat .ip-bar span{font-size:14.5px;font-weight:600}body .cm-cat .ip-bar small{display:block;font:500 11.5px\/1.3 var(--f-mono);color:var(--muted)}body .cm-cat .ip-bar .t{position:relative;height:10px;border-radius:99px;background:var(--mint);overflow:hidden}body .cm-cat .ip-bar .t i{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,var(--ing),var(--ing2));transform-origin:0 50%;transform:scaleX(var(--v));transition:transform 1.1s var(--ease-out)}body .cm-cat .ip-bar b{font:600 14px\/1 var(--f-mono);text-align:right}body .cm-cat .ip-note{margin-top:14px;font-size:12.5px;color:var(--muted);line-height:1.5}body .cm-cat .ip-photo{margin:0;position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 40px 80px -48px rgb(var(--shade)\/.6)}body .cm-cat .ip-photo img{display:block;width:100%;height:auto;aspect-ratio:4\/5;object-fit:cover;object-position:62% 50%}body .cm-cat .ip-photo figcaption{position:absolute;left:14px;bottom:14px;padding:8px 12px;border-radius:99px;background:rgb(255 255 255\/.92);font:500 12px\/1 var(--f-mono);color:var(--ink)}body .cm-cat .ip-ben{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,18px);margin-top:clamp(26px,3.4vw,44px)}body .cm-cat .ip-b{position:relative;display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-lg);background:var(--paper);box-shadow:0 0 0 1px var(--line);overflow:hidden}body .cm-cat .ip-b::before{content:\"\";position:absolute;right:-50px;top:-50px;width:150px;height:150px;border-radius:50%;background:radial-gradient(closest-side,rgb(var(--glow)\/.35),transparent)}body .cm-cat .ip-b .mono{font-size:12px;color:var(--ing)}body .cm-cat .ip-b h3{font:680 clamp(20px,1.8vw,24px)\/1.15 var(--f-display);letter-spacing:-.025em}body .cm-cat .ip-b p{color:var(--muted);font-size:15.5px;line-height:1.55}body .cm-cat .ip-prods{background:#141b19;color:#e9efec;border-radius:clamp(28px,4vw,44px);margin-inline:clamp(8px,1.4vw,16px);padding-block:clamp(48px,6vw,88px)}body .cm-cat .ip-prods .ip-k{color:rgb(233 239 236\/.6)}body .cm-cat .ip-prods .ip-k::after{background:rgb(255 255 255\/.15)}body .cm-cat .ip-prods .h2{color:#fff}body .cm-cat .ip-prods-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:18px}body .cm-cat .ip-prods-head p{max-width:42ch;color:rgb(233 239 236\/.7)}body .cm-cat .ip-pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,18px);margin-top:clamp(26px,3.4vw,40px)}body .cm-cat .ip-p{position:relative;display:block;aspect-ratio:4\/3;border-radius:22px;overflow:hidden;color:#fff;text-decoration:none;isolation:isolate}body .cm-cat .ip-p img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s var(--ease-out)}body .cm-cat .ip-p::after{content:\"\";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgb(10 16 14\/0) 40%,rgb(10 16 14\/.82))}body .cm-cat .ip-p span{position:absolute;left:18px;right:18px;bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:10px;font:650 19px\/1.2 var(--f-display);letter-spacing:-.015em}body .cm-cat .ip-p .ico{flex:none;width:36px;height:36px;padding:10px;border-radius:50%;background:rgb(255 255 255\/.16);backdrop-filter:blur(6px);transition:background-color .2s ease,transform .25s var(--ease-out)}@media (hover:hover) and (pointer:fine){body .cm-cat .ip-p:hover img{transform:scale(1.05)}body .cm-cat .ip-p:hover .ico{background:var(--ing);transform:translateX(3px)}}body .cm-cat .ip-notes{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:start}body .cm-cat .ip-nl{list-style:none;margin:0;padding:0;display:grid}body .cm-cat .ip-nl li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:4px 14px;padding:20px 0;border-top:1px solid var(--line)}body .cm-cat .ip-nl li:last-child{border-bottom:1px solid var(--line)}body .cm-cat .ip-nl .mono{grid-row:span 2;font:600 14px\/1.5 var(--f-mono);color:var(--ing)}body .cm-cat .ip-nl b{font:650 18px\/1.3 var(--f-display);letter-spacing:-.015em}body .cm-cat .ip-nl p{color:var(--muted);font-size:15.5px;line-height:1.55}body .cm-cat .ip-pairs{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}body .cm-cat .ip-pair{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:99px;background:var(--paper);box-shadow:0 0 0 1px var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:14.5px;transition:box-shadow .2s ease}body .cm-cat .ip-pair i{width:10px;height:10px;border-radius:50%;background:var(--ing)}@media (hover:hover) and (pointer:fine){body .cm-cat a.ip-pair:hover{box-shadow:0 0 0 1.5px var(--ing)}body .cm-cat span.ip-pair{cursor:default}}@media (max-width:1020px){body .cm-cat .ip-id dl{grid-template-columns:repeat(3,minmax(0,1fr))}body .cm-cat .ip-id dl>div:nth-child(4){border-left:0;padding-left:0}body .cm-cat .ip-id dl>div:nth-child(n+4){border-top:1px solid var(--line)}body .cm-cat .ip-what,body .cm-cat .ip-notes{grid-template-columns:1fr}body .cm-cat .ip-ben,body .cm-cat .ip-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}body .cm-cat .ip-photo img{aspect-ratio:16\/10}}@media (max-width:640px){body .cm-cat .ip-hero{height:340vh}body .cm-cat .ip-ui{grid-template-columns:1fr}body .cm-cat .ip-tr,body .cm-cat .ip-mark{display:none}body .cm-cat .ip-id dl{grid-template-columns:1fr 1fr}body .cm-cat .ip-id dl>div{border-left:0!important;padding-left:0!important;border-top:1px solid var(--line)}body .cm-cat .ip-ben,body .cm-cat .ip-pgrid{grid-template-columns:1fr}body .cm-cat .ip-bar{grid-template-columns:1fr 44px;gap:6px 10px}body .cm-cat .ip-bar .t{grid-column:1\/-1;grid-row:2}}@media (prefers-reduced-motion:reduce){body .cm-cat .ip-hero{height:auto}body .cm-cat .ip-stage{position:relative;height:88svh}body .cm-cat .ip-scroll i::after{animation:none}body .cm-cat .ip-ch{transition:none}}body .cm-cat .ip-hcta{pointer-events:auto;display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:99px;background:#141b19;color:#fff!important;font:600 14px\/1 var(--f-body);text-decoration:none;transition:background-color .2s ease,transform .16s var(--ease-out)}body .cm-cat .ip-hcta .ico{width:16px;height:16px}@media (hover:hover) and (pointer:fine){body .cm-cat .ip-hcta:hover{background:var(--ing)}}body .cm-cat .ip-hcta:active{transform:scale(.97)}body .cm-cat .ip-bl{align-items:center}body .cm-cat .ip-bl .ip-scroll{margin-left:auto}body .cm-cat .ip-tldr{padding-top:clamp(24px,3vw,40px)}body .cm-cat .ip-tldr-box{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,56px);padding:clamp(24px,3vw,40px);border-radius:var(--r-lg);background:var(--paper);box-shadow:0 0 0 1px var(--line);border-left:4px solid var(--ing)}body .cm-cat .ip-tldr-box h2{margin-top:10px;font:680 clamp(24px,2.4vw,32px)\/1.1 var(--f-display);letter-spacing:-.03em}body .cm-cat .ip-by{margin-top:12px;font-size:12px;color:var(--muted)}body .cm-cat .ip-tldr-box ul{list-style:none;margin:0;padding:0;display:grid}body .cm-cat .ip-tldr-box li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:11px 0;border-top:1px solid var(--line);font-size:15.5px}body .cm-cat .ip-tldr-box li:first-child{border-top:0;padding-top:0}body .cm-cat .ip-tldr-box li b{font-weight:650}body .cm-cat .ip-h3{margin-top:30px;font:680 clamp(19px,1.6vw,22px)\/1.2 var(--f-display);letter-spacing:-.02em}body .cm-cat .ip-vsg{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}body .cm-cat .ip-vs{padding:16px;border-radius:16px;background:var(--mint);font-size:14.5px}body .cm-cat .ip-vs.on{background:color-mix(in srgb,var(--ing) 9%,#fff);box-shadow:inset 0 0 0 1.5px var(--ing)}body .cm-cat .ip-vs b{display:block;margin-bottom:6px}body .cm-cat .ip-vs p{color:var(--muted);line-height:1.5}body .cm-cat .ip-use ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}body .cm-cat .ip-use li{padding:18px;border-radius:18px;background:var(--mint)}body .cm-cat .ip-use .mono{font-size:12px;color:var(--ing);letter-spacing:.06em;text-transform:uppercase}body .cm-cat .ip-use p{margin-top:6px;font-size:15px;line-height:1.5}body .cm-cat .ip-know{padding-block:0 clamp(40px,5vw,72px)}body .cm-cat .ip-know-box{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,56px);align-items:center;padding:clamp(26px,3.4vw,46px);border-radius:clamp(28px,4vw,44px);background:linear-gradient(135deg,color-mix(in srgb,var(--ing) 8%,#fff),color-mix(in srgb,var(--ing) 16%,#fff))}body .cm-cat .ip-know-box h2{margin-top:10px;font:680 clamp(24px,2.6vw,34px)\/1.1 var(--f-display);letter-spacing:-.03em}body .cm-cat .ip-know-box ol{list-style:none;margin:0;padding:0;display:grid;gap:14px}body .cm-cat .ip-know-box li{display:grid;gap:6px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--ing) 22%,transparent)}body .cm-cat .ip-know-box li:first-child{padding-top:0;border-top:0}body .cm-cat .ip-know-box li b{font:720 clamp(22px,2.2vw,28px)\/1.1 var(--f-display);overflow-wrap:anywhere;letter-spacing:-.04em;color:var(--ing)}body .cm-cat .ip-know-box li p{font-size:15.5px;line-height:1.5}body .cm-cat .ip-src{padding-bottom:clamp(28px,3vw,40px)}body .cm-cat .ip-src h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}body .cm-cat .ip-src ol{margin:10px 0 0;padding-left:18px;display:grid;gap:6px;font-size:13.5px;color:var(--muted)}body .cm-cat .ip-src a{color:var(--muted);text-underline-offset:3px}@media (max-width:1020px){body .cm-cat .ip-tldr-box,body .cm-cat .ip-know-box{grid-template-columns:1fr}body .cm-cat .ip-use ul{grid-template-columns:1fr}}@media (max-width:640px){body .cm-cat .ip-vsg{grid-template-columns:1fr}body .cm-cat .ip-tldr-box li{grid-template-columns:1fr;gap:2px}body .cm-cat .ip-hcta{display:none}}body .cm-cat .ip-vsg3{grid-template-columns:repeat(3,1fr)}body .cm-cat .ip-vs.warn{background:#fff;box-shadow:inset 0 0 0 1.5px #c1272d33}body .cm-cat .ip-vs.warn b{color:#a4232a}@media (max-width:1180px){body .cm-cat .ip-vsg3{grid-template-columns:1fr}}@media (min-width:1021px){body .cm-cat .ip-pgrid[data-n=\"4\"]{grid-template-columns:repeat(4,minmax(0,1fr))}body .cm-cat .ip-pgrid[data-n=\"5\"]{grid-template-columns:repeat(6,minmax(0,1fr))}body .cm-cat .ip-pgrid[data-n=\"5\"] .ip-p{grid-column:span 2}body .cm-cat .ip-pgrid[data-n=\"5\"] .ip-p:nth-child(n+4){grid-column:span 3;aspect-ratio:2\/1}}@media (min-width:641px) and (max-width:1020px){body .cm-cat .ip-pgrid[data-n=\"5\"] .ip-p:last-child{grid-column:span 2;aspect-ratio:2\/1}}body .cm-cat button{text-transform:none;letter-spacing:normal;line-height:1.2;box-shadow:none;min-height:0}body .cm-cat .copy:focus,body .cm-cat .copy:hover{background:rgb(255 255 255\/.1);color:var(--deep-ink)}body .cm-cat blockquote{border:0;padding:0;margin:0;font-style:normal;background:none;quotes:none}body .cm-cat blockquote::before,body .cm-cat blockquote::after{content:none}body .cm-cat img{max-width:100%}body .cm-cat a:hover{text-decoration:none}body .cm-cat{font-size:16.5px;line-height:1.6}body .cm-cat h1,body .cm-cat h2,body .cm-cat h3{text-transform:none}body .cm-cat .rv-reel:hover,body .cm-cat .rv-reel:focus,body .cm-cat .ob-tab:hover,body .cm-cat .ob-tab:focus,body .cm-cat .sv-ic:hover,body .cm-cat .rv-btn:hover,body .cm-cat .pod-btn:hover,body .cm-cat .hx-pause:hover{background-color:inherit}body .cm-cat .rv-reel{background:#10292a}body .cm-cat .ob-tab{background:transparent}body .cm-cat .rv-btn{background:var(--paper)}body .cm-cat .sv-ic{background:rgb(0 0 0\/.28)}body .cm-cat .bl-pod-btn{background:#0f3a35}body .cm-cat .hx-pause{background:rgb(255 255 255\/.55)}@media (max-width:640px){body .cm-cat .tray{margin-bottom:calc(var(--bm,0px) + 10px + env(safe-area-inset-bottom,0px))}body .cm-cat .toast{bottom:calc(var(--bm,0px) + 92px)}}<\/style><style>body .cm-cat .ip-ch .ip-em,body .cm-cat .ip-k b,body .cm-cat .ip-b .mono,body .cm-cat .ip-nl .mono,body .cm-cat .ip-use .mono,body .cm-cat .ip-know-box li b{color:var(--ingt,var(--ing))}body .cm-cat .ip-pairs-h{margin:26px 0 0;font:600 14px\/1.3 var(--f-body);color:var(--muted)}body .cm-cat .ip-pairs-h+.ip-pairs{margin-top:12px}body .cm-cat .ip-lite .ip-hero{height:auto}body .cm-cat .ip-lite .ip-stage{position:relative;top:auto;height:min(80svh,780px);min-height:540px}body .cm-cat .ip-lite .ip-stage{background:#f1f2ef}body .cm-cat .ip-lite .ip-hero-img{position:absolute;top:0;right:0;bottom:0;left:auto;width:62%;height:100%;object-fit:cover;object-position:50% 50%;z-index:-2}body .cm-cat .ip-lite .ip-stage::before{content:\"\";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f1f2ef 0,#f1f2ef 38%,rgb(241 242 239\/0) 54%)}body .cm-cat .ip-lite .ip-stage::after{display:none}body .cm-cat .ip-lite .ip-lines{min-height:0}body .cm-cat .ip-lite .ip-ch{position:relative;opacity:1;transform:none;filter:none}body .cm-cat .ip-lite .ip-what{grid-template-columns:minmax(0,1fr);max-width:880px}body .cm-cat .ip-lite .ip-chap{max-width:min(560px,40%)}body .cm-cat .ip-lite .ip-h1{font-size:clamp(46px,5.4vw,84px);text-wrap:balance}body .cm-cat .ip-lite .ip-bl{justify-content:flex-start;flex-wrap:wrap;gap:14px 22px}body .cm-cat .ip-h1.ip-h1-long{font-size:clamp(42px,5.6vw,88px);max-width:12ch;text-wrap:balance}body .cm-cat .ip-chap{max-width:min(720px,48%)}@media (max-width:640px){body .cm-cat .ip-chap{max-width:none}}@media (max-width:640px){body .cm-cat .ip-lite .ip-stage{height:auto;min-height:0;aspect-ratio:auto}body .cm-cat .ip-lite .ip-ui{position:relative;padding-top:clamp(240px,62vw,320px)}body .cm-cat .ip-lite .ip-chap{max-width:none}body .cm-cat .ip-lite .ip-hero-img{width:100%;height:clamp(220px,60vw,300px);bottom:auto;object-position:50% 50%}body .cm-cat .ip-lite .ip-stage::before{background:linear-gradient(180deg,rgb(241 242 239\/0) 0,rgb(241 242 239\/0) clamp(170px,48vw,240px),#f1f2ef clamp(220px,60vw,300px))}}<\/style>\n<div class=\"cm-cat\"><div lang=\"de\"><svg width=\"0\" height=\"0\" style=\"position:absolute\" aria-hidden=\"true\"><symbol id=\"i-arrow\" viewBox=\"0 0 24 24\"><path d=\"M5 12h14M13 6l6 6-6 6\"\/><\/symbol><symbol id=\"i-chat\" viewBox=\"0 0 24 24\"><path d=\"M4 19.5l1.2-3.6A8 8 0 1 1 8.3 19z\"\/><path d=\"M9 10.5h6M9 13.5h4\"\/><\/symbol><\/svg>\n<div class=\"ip\" data-shape=\"thym\" style=\"--ing:#5E7348;--ingt:#5e7348;--ing2:#A9B88E;--glow:94 115 72\">\n<section class=\"ip-hero\" aria-label=\"Thymian\"><div class=\"ip-stage\"><canvas class=\"ip-canvas\" aria-hidden=\"true\"><\/canvas><div class=\"ip-ui\"><div class=\"ip-tl\"><nav class=\"ip-crumbs\" aria-label=\"Brotkrumennavigation\"><a href=\"https:\/\/carmelcosmeticslabs.com\/de\/startseite\/\">Startseite<\/a> \/ <a href=\"https:\/\/carmelcosmeticslabs.com\/de\/glossar-kosmetische-inhaltsstoffe\/\">Glossar<\/a> \/ <span aria-current=\"page\">Thymian<\/span><\/nav><\/div><div class=\"ip-tr\"><span><b>Aromapflanze und \u00e4therisches \u00d6l<\/b><\/span><span class=\"ip-ma\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M12.00 3.60 L17.29 19.88 L3.44 9.82 L20.56 9.82 L6.71 19.88 Z\" fill=\"none\" stroke=\"#fff\" stroke-width=\"4.2\" stroke-linejoin=\"round\"\/><path d=\"M12.00 3.60 L17.29 19.88 L3.44 9.82 L20.56 9.82 L6.71 19.88 Z\" fill=\"none\" stroke=\"#006233\" stroke-width=\"2\" stroke-linejoin=\"round\"\/><\/svg>Marokkanisches Erbe<\/span><\/div><div class=\"ip-chap\"><h1 class=\"ip-h1\">Thymian<\/h1><div class=\"ip-lines\"><p class=\"ip-ch on\"><b>Thymian<\/b> <span class=\"ip-em\">eine aromatische Pflanze trockener H\u00fcgellandschaften, deren \u00d6l durch Destillation gewonnen wird.<\/span><\/p><p class=\"ip-ch\"><b>Bl\u00e4tter und Bl\u00fcten<\/b> <span class=\"ip-em\">verwendet werden die bl\u00fchenden Triebspitzen.<\/span><\/p><p class=\"ip-ch\"><b>Getrocknet und gemahlen<\/b> <span class=\"ip-em\">verleiht das Blatt Shampoos, Masken und Reinigungsprodukten seinen Duft.<\/span><\/p><p class=\"ip-ch\"><b>Das \u00e4therische \u00d6l<\/b> <span class=\"ip-em\">reich an Thymol, vor der Anwendung stets verd\u00fcnnt.<\/span><\/p><\/div><\/div><span class=\"ip-mark\" aria-hidden=\"true\">( A )<\/span><div class=\"ip-bl\"><span class=\"ip-inci\">INCI \u00b7 THYMUS VULGARIS LEAF<\/span><a class=\"ip-hcta\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/kostenlose-beratung\/\">Kostenlose Beratung <svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/a><span class=\"ip-scroll\" aria-hidden=\"true\"><i><\/i>Scrollen<\/span><\/div><\/div><div class=\"ip-prog\" aria-hidden=\"true\"><i><\/i><\/div><\/div><\/section>\n<section class=\"ip-id wrap\" aria-label=\"Steckbrief\"><dl><div><dt>INCI-Bezeichnung<\/dt><dd class=\"mono\">THYMUS VULGARIS LEAF<\/dd><\/div><div><dt>Weitere Namen<\/dt><dd>Echter Thymian, thyme; za\u00eetra f\u00fcr marokkanische Thymianarten<\/dd><\/div><div><dt>Familie<\/dt><dd>Aromapflanze (Lippenbl\u00fctler): Blatt, Extrakt oder \u00e4therisches \u00d6l<\/dd><\/div><div><dt>Herkunft<\/dt><dd>S\u00fcdeuropa und Mittelmeerraum; in Marokko gibt es 21 Thymianarten<\/dd><\/div><div><dt>Verwendeter Pflanzenteil<\/dt><dd>Bl\u00e4tter und bl\u00fchende Triebspitzen, getrocknet oder destilliert<\/dd><\/div><div><dt>Anwendungsbereiche<\/dt><dd>Haar, Kopfhaut, Reinigungsprodukte, Parfum<\/dd><\/div><\/dl><\/section>\n<section class=\"wrap ip-tldr\" aria-labelledby=\"ip-tl\"><div class=\"ip-tldr-box\"><div><span class=\"ip-k\"><b>Kurz erkl\u00e4rt<\/b><\/span><h2 id=\"ip-tl\">Thymian in 30 Sekunden<\/h2><p class=\"ip-by mono\">Vom F&amp;E-Team von Carmel Cosmetics Labs \u00b7 aktualisiert am 18. Oktober 2026<\/p><\/div><ul><li><b>INCI-Name<\/b><span>THYMUS VULGARIS LEAF (Thymianblatt)<\/span><\/li><li><b>Was es ist<\/b><span>eine Aromapflanze, die als Blatt, Extrakt oder \u00e4therisches \u00d6l verwendet wird<\/span><\/li><li><b>F\u00fcr das Haar<\/b><span>ein frischer, krautiger Duft in Shampoos und Masken<\/span><\/li><li><b>Vorschriften<\/b><span>das \u00e4therische \u00d6l enth\u00e4lt kennzeichnungspflichtige Allergene<\/span><\/li><li><b>Herkunft<\/b><span>S\u00fcdeuropa und Mittelmeerraum; zahlreiche endemische Thymianarten in Marokko<\/span><\/li><\/ul><\/div><\/section>\n<section class=\"ip-sec\" aria-labelledby=\"ip-a\"><div class=\"wrap ip-what\"><div><span class=\"ip-k\"><b>( A )<\/b>WAS IST DAS?<\/span><h2 class=\"h2\" id=\"ip-a\">Was ist Thymian in der Kosmetik?<\/h2><p class=\"fc-answer\">Thymian (Thymus vulgaris) ist eine aromatische Pflanze aus der Familie der Lippenbl\u00fctler, die aus S\u00fcdeuropa und dem Mittelmeerraum stammt. In der Kosmetik wird er in drei Formen eingesetzt: als getrocknetes Blatt, das als THYMUS VULGARIS LEAF deklariert und von CosIng als Duftstoff eingestuft wird, als Extrakt und als \u00e4therisches \u00d6l aus der Destillation. Dieses \u00d6l ist reich an Thymol und enth\u00e4lt zudem \u03b3-Terpinen und p-Cymen. Thymian verleiht Shampoos, Masken und Reinigungsprodukten seinen Duft.<\/p><h3 class=\"ip-h3\">Thymianblatt, Extrakt oder \u00e4therisches \u00d6l: die Unterschiede<\/h3><div class=\"ip-vsg ip-vsg3\"><div class=\"ip-vs on\"><b>Blatt<\/b><p>Die getrocknete und gemahlene Pflanze wird als THYMUS VULGARIS LEAF deklariert und von CosIng als Duftstoff eingestuft. Sie wird in Masken und Pulvern eingesetzt.<\/p><\/div><div class=\"ip-vs\"><b>Extrakt<\/b><p>Ein Extrakt aus Bl\u00fcten und Bl\u00e4ttern, beispielsweise als THYMUS VULGARIS FLOWER\/LEAF EXTRACT deklariert. CosIng stuft ihn als hautpflegenden und tonisierenden Inhaltsstoff sowie als Duftstoff ein.<\/p><\/div><div class=\"ip-vs\"><b>\u00c4therisches \u00d6l<\/b><p>Das destillierte, fl\u00fcchtige \u00d6l ist hochkonzentriert und reich an Thymol. Je nach destilliertem Pflanzenteil wird es als THYMUS VULGARIS OIL oder LEAF OIL deklariert. Es wird wie ein Duftstoff dosiert und erfordert die Kennzeichnung der Allergene.<\/p><\/div><\/div><\/div><figure class=\"ip-photo\"><img loading=\"lazy\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/thym-ingredient-cosmetique-carmel.webp\" width=\"1200\" height=\"1241\" srcset=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/thym-ingredient-cosmetique-carmel-441x456.webp 441w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/thym-ingredient-cosmetique-carmel-768x794.webp 768w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/thym-ingredient-cosmetique-carmel-990x1024.webp 990w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/thym-ingredient-cosmetique-carmel.webp 1200w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/thym-ingredient-cosmetique-carmel.webp 1200w\" sizes=\"auto, (max-width:1020px) 92vw, 50vw\" alt=\"Frische und getrocknete Thymianzweige neben einer Braunglasflasche mit \u00e4therischem Thymian\u00f6l\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><figcaption>Thymian \u00b7 Marokko<\/figcaption><\/figure><\/div><\/section>\n<section class=\"ip-sec\" aria-labelledby=\"ip-b\" style=\"padding-top:0\"><div class=\"wrap\"><span class=\"ip-k\"><b>( B )<\/b>DIE VORTEILE<\/span><h2 class=\"h2\" id=\"ip-b\">Die Vorteile von Thymian f\u00fcr Haar und Haut<\/h2><div class=\"ip-ben\"><article class=\"ip-b\"><span class=\"mono\">01<\/span><h3>F\u00fcr die Haare<\/h3><p>In Shampoo, Sp\u00fclung oder Maske verleiht Thymian einen frischen, krautigen Duft. Die Rezeptur reinigt die Kopfhaut und hinterl\u00e4sst ein frisches Gef\u00fchl.<\/p><\/article><article class=\"ip-b\"><span class=\"mono\">02<\/span><h3>F\u00fcr die Haut<\/h3><p>In Reinigungsschaum oder Tonerdemasken verleiht er hautreinigenden Pflegeprodukten seinen Duft. CosIng ordnet dem Bl\u00fcten- und Blattextrakt eine hautpflegende und tonisierende Funktion zu.<\/p><\/article><article class=\"ip-b\"><span class=\"mono\">03<\/span><h3>F\u00fcr die Rezeptur<\/h3><p>Sein thymolreiches \u00e4therisches \u00d6l duftet bereits in sehr geringer Dosierung. Studien beschreiben zahlreiche Chemotypen (Thymol, Linalool, Geraniol\u2026), die den Geruch und die enthaltenen Allergene beeinflussen. Wir w\u00e4hlen die Charge anhand der Analyse aus.<\/p><\/article><\/div><div class=\"ip-use\"><h3 class=\"ip-h3\">Wie werden Thymian und sein \u00e4therisches \u00d6l verwendet?<\/h3><ul><li><span class=\"mono\">Haare<\/span><p>Massieren Sie Thymianshampoo oder -sp\u00fclung ins nasse Haar ein und sp\u00fclen Sie es anschlie\u00dfend aus. Eine Maske lassen Sie einige Minuten in den Haarl\u00e4ngen einwirken.<\/p><\/li><li><span class=\"mono\">Gesicht<\/span><p>Tragen Sie den Reinigungsschaum auf die feuchte Haut auf, sch\u00e4umen Sie ihn mit kleinen kreisenden Bewegungen auf und sp\u00fclen Sie ihn anschlie\u00dfend ab. Sparen Sie die Augen aus.<\/p><\/li><li><span class=\"mono\">\u00c4therisches \u00d6l<\/span><p>Niemals unverd\u00fcnnt auf die Haut auftragen: stets niedrig dosiert in einem Pflanzen\u00f6l oder einer Basis verd\u00fcnnen und vor der Anwendung an einer kleinen Stelle testen. Von Augen und Schleimh\u00e4uten fernhalten.<\/p><\/li><\/ul><\/div><\/div><\/section>\n<section class=\"ip-prods\" aria-labelledby=\"ip-c\"><div class=\"wrap\"><div class=\"ip-prods-head\"><div><span class=\"ip-k\"><b>( C )<\/b>IN UNSEREN PRODUKTEN<\/span><h2 class=\"h2\" id=\"ip-c\">Starten Sie Ihre Pflegelinie mit Thymian<\/h2><\/div><p>Wir verarbeiten Thymian in Shampoos, Sp\u00fclungen, Masken und Reinigungssch\u00e4umen und bieten ihn als reines \u00e4therisches \u00d6l an, bereit f\u00fcr Ihre Marke. W\u00e4hlen Sie eine Kategorie, um unsere Rezepturen zu entdecken.<\/p><\/div><div class=\"ip-pgrid\" data-n=\"4\"><a class=\"ip-p\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/white-label-kosmetik-katalog\/pulver-hydrolate-aetherische-oele-white-label\/\"><img src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/texture-ghassoul-poudre-marque-blanche.webp\" alt=\"| Carmel Cosmetics Labs\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><span>Pulver und Hydrolate<svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/span><\/a><a class=\"ip-p\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/white-label-kosmetik-katalog\/hersteller-shampoo-spuelung-white-label\/\"><img src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/shampooings-marque-blanche-carmel-cosmetics-labs.webp\" alt=\"| Carmel Cosmetics Labs\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><span>Shampoos<svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/span><\/a><a class=\"ip-p\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/white-label-kosmetik-katalog\/haarmasken-haarkuren-white-label\/\"><img src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/masque-capillaire-marque-blanche-cheveux-boucles.webp\" alt=\"| Carmel Cosmetics Labs\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><span>Haarmasken und Haarkuren<svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/span><\/a><a class=\"ip-p\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/white-label-kosmetik-katalog\/gesichtsreinigung-white-label\/\"><img src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/10\/nettoyants-visage-marque-blanche-carmel-cosmetics-labs.webp\" alt=\"| Carmel Cosmetics Labs\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><span>Gesichtsreinigung<svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/span><\/a><\/div><div class=\"ip-catprods\"><p class=\"ip-cp-h\">Katalogprodukte mit Thymian<\/p><ul><li><a href=\"https:\/\/carmelcosmeticslabs.com\/de\/white-label-kosmetik-katalog\/pulver-hydrolate-aetherische-oele-white-label\/aetherisches-thymianoel-white-label\/\">\u00c4therisches Thymian\u00f6l<\/a><\/li><\/ul><\/div><\/div><\/section>\n<style>.ip-catprods{margin-top:clamp(2.2rem,4vw,3.2rem);padding-top:clamp(1.6rem,3vw,2.2rem);border-top:1px solid color-mix(in srgb,currentColor 16%,transparent);color:inherit}.ip-catprods .ip-cp-h{font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:600;letter-spacing:-.01em;margin:0 0 1.1rem;color:inherit}.ip-catprods ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}.ip-catprods a{display:inline-flex;align-items:center;gap:.5rem;padding:.62rem 1.05rem;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 26%,transparent);color:inherit;text-decoration:none;font-size:.95rem;line-height:1.2;transition:background .2s,border-color .2s}.ip-catprods a:hover,.ip-catprods a:focus-visible{background:color-mix(in srgb,currentColor 10%,transparent);border-color:color-mix(in srgb,currentColor 50%,transparent)}.ip-catprods a::after{content:\"\\2192\";opacity:.7}html[dir=rtl] .ip-catprods a::after{content:\"\\2190\"}<\/style>\n<section class=\"ip-sec\" aria-labelledby=\"ip-d\"><div class=\"wrap ip-notes\"><div><span class=\"ip-k\"><b>( D )<\/b>HINWEISE ZUR FORMULIERUNG<\/span><h2 class=\"h2\" id=\"ip-d\">So setzen wir den Inhaltsstoff ein<\/h2><p class=\"pk-ex-sub\" style=\"margin-top:14px\">Worauf unsere Rezepturentwickler achten, wenn Thymian in Ihr Produkt kommt.<\/p><p class=\"ip-pairs-h\">H\u00e4ufig kombiniert mit<\/p><div class=\"ip-pairs\" aria-label=\"H\u00e4ufig kombinierte Inhaltsstoffe\"><span class=\"ip-pair\" title=\"Zwei mediterrane Aromapflanzen, die h\u00e4ufig gemeinsam in Haarpflegeprodukten und Masken verwendet werden.\"><i><\/i>Rosmarinpulver<\/span><a class=\"ip-pair\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/glossar-kosmetische-inhaltsstoffe\/ghassoul-rhassoul\/\" title=\"Die marokkanische Wascherde bildet die Basis der Maske, der Thymian seinen Duft verleiht.\"><i><\/i>Ghassoul (Rhassoul)<\/a><a class=\"ip-pair\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/glossar-kosmetische-inhaltsstoffe\/damaszener-rosenwasser\/\" title=\"Eine blumige Note, die den krautigen und phenolischen Charakter des Thymians abmildert.\"><i><\/i>Damaszener-Rosenwasser<\/a><span class=\"ip-pair\" title=\"Eine milde Pflanze, die Thymian in Rezepturen f\u00fcr die Kopfhaut und empfindliche Haut ausgleicht.\"><i><\/i>Kamille<\/span><a class=\"ip-pair\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/glossar-kosmetische-inhaltsstoffe\/arganoel\/\" title=\"Das \u00d6l pflegt die Haarl\u00e4ngen, w\u00e4hrend Thymian dem Pflegeprodukt seinen Duft verleiht.\"><i><\/i>Argan\u00f6l<\/a><\/div><\/div><ol class=\"ip-nl\"><li><span class=\"mono\">01<\/span><b>Kennzeichnungspflichtige Allergene<\/b><p>Je nach Chemotyp enth\u00e4lt \u00e4therisches Thymian\u00f6l Linalool, Limonen oder Geraniol, Allergene aus Anhang III der Verordnung 1223\/2009. Bei mehr als 0,001 % in einem Produkt, das auf der Haut verbleibt, und mehr als 0,01 % in einem absp\u00fclbaren Produkt werden sie in der INCI-Liste genannt.<\/p><\/li><li><span class=\"mono\">02<\/span><b>Eine erweiterte Liste<\/b><p>Die Verordnung (EU) 2023\/1545 erg\u00e4nzt neue kennzeichnungspflichtige Allergene, darunter Terpineol und Kampfer. Nicht konforme Produkte d\u00fcrfen nach dem 31. Juli 2026 nicht mehr in Verkehr gebracht werden.<\/p><\/li><li><span class=\"mono\">03<\/span><b>Sorgf\u00e4ltige Dosierung<\/b><p>Das \u00e4therische \u00d6l ist reich an Phenolen wie Thymol und wird niedrig dosiert. Die Rezeptur wird vor dem Inverkehrbringen auf Vertr\u00e4glichkeit gepr\u00fcft.<\/p><\/li><li><span class=\"mono\">04<\/span><b>Keine medizinischen Wirkversprechen<\/b><p>Thymian hat in Marokko und andernorts zahlreiche traditionelle medizinische Verwendungen. Wir stellen diese als Tradition dar und formulieren Ihre Produktaussagen im kosmetischen Rahmen: beduften, reinigen, erfrischen.<\/p><\/li><\/ol><\/div><\/section>\n<section class=\"ip-know\" aria-labelledby=\"ip-kn\"><div class=\"wrap\"><div class=\"ip-know-box\"><div><span class=\"ip-k\"><b>Wussten Sie schon?<\/b><\/span><h2 id=\"ip-kn\">Marokko, Heimat vieler Thymianarten<\/h2><\/div><ol><li><b>21 Arten<\/b><p>Die Gattung Thymus umfasst in Marokko 21 Arten, davon 10 endemische. Das entspricht einem Endemismusanteil von fast 48 %.<\/p><\/li><li><b>Za\u00eetra<\/b><p>Die lokale Bev\u00f6lkerung nennt die marokkanischen Thymianarten \u201eza\u00eetra\u201c oder \u201eazoukeni\u201c. Sie werden geerntet und frisch oder getrocknet auf den M\u00e4rkten der St\u00e4dte verkauft.<\/p><\/li><li><b>Chemotypen<\/b><p>Dieselbe Art, Thymus vulgaris, kann sehr unterschiedliche \u00d6le liefern: Eine Untersuchung von 85 \u00d6len identifizierte mindestens 20 Chemotypen.<\/p><\/li><\/ol><\/div><\/div><\/section>\n<section class=\"section\" aria-labelledby=\"ip-faq\" style=\"padding-top:0\"><div class=\"wrap faq-grid\"><div class=\"sticky\"><h2 class=\"h2\" id=\"ip-faq\">Thymian und \u00e4therisches Thymian\u00f6l: Ihre Fragen<\/h2><div class=\"faq-help\"><b>Planen Sie ein Produkt mit diesem Inhaltsstoff?<\/b><span>Unser Produktspezialist antwortet Ihnen auf WhatsApp.<\/span><a class=\"btn btn-wa-s\" href=\"https:\/\/wa.me\/212761511711\" target=\"_blank\" rel=\"noopener\"><svg class=\"ico\"><use href=\"#i-chat\"\/><\/svg>Auf WhatsApp schreiben<\/a><\/div><\/div><div><details class=\"qa\" open><summary><h3>Welche Vorteile bietet Thymian in der Kosmetik?<\/h3><span class=\"pm\" aria-hidden=\"true\"><\/span><\/summary><div class=\"ans\"><p>Thymian verleiht Pflegeprodukten eine frische, krautige Duftnote. CosIng stuft den Extrakt als hautpflegend und tonisierend ein, das Blatt und das \u00e4therische \u00d6l als Duftstoffe. Thymian wird in Shampoos, Masken und Reinigungsprodukten eingesetzt, im kosmetischen Rahmen und ohne medizinische Versprechen.<\/p><\/div><\/details>\n<details class=\"qa\"><summary><h3>Ist Thymian gut f\u00fcr die Haare?<\/h3><span class=\"pm\" aria-hidden=\"true\"><\/span><\/summary><div class=\"ans\"><p>Eine Befragung von Kr\u00e4uterkundigen in F\u00e8s-Mekn\u00e8s, Marokko, nennt einen lokalen Thymian, Thymus zygis, unter dem Namen zeitra als Bestandteil traditioneller Haarzubereitungen. In unseren Shampoos und Masken verleiht Thymian Duft und begleitet die Reinigung der Kopfhaut, ohne Versprechen zu Haarausfall oder Haarwachstum.<\/p><\/div><\/details>\n<details class=\"qa\"><summary><h3>Wie wird \u00e4therisches Thymian\u00f6l auf der Haut angewendet?<\/h3><span class=\"pm\" aria-hidden=\"true\"><\/span><\/summary><div class=\"ans\"><p>Nie unverd\u00fcnnt anwenden: Verd\u00fcnnen Sie das \u00d6l immer in einem Pflanzen\u00f6l oder setzen Sie es in geringer Dosierung in einem formulierten Produkt ein. Testen Sie es vor der ersten Anwendung in der Armbeuge und vermeiden Sie Kontakt mit Augen und Schleimh\u00e4uten. Lassen Sie sich bei empfindlichen Personengruppen fachlich beraten.<\/p><\/div><\/details>\n<details class=\"qa\"><summary><h3>Wie setzt sich \u00e4therisches Thymian\u00f6l zusammen?<\/h3><span class=\"pm\" aria-hidden=\"true\"><\/span><\/summary><div class=\"ans\"><p>F\u00fcr ein handels\u00fcbliches \u00d6l aus Thymus vulgaris werden folgende Werte genannt: Thymol 23 bis 60 %, \u03b3-Terpinen 18 bis 50 %, p-Cymen 8 bis 44 %, Carvacrol 2 bis 8 % und Linalool 3 bis 4 %. Die Zusammensetzung variiert stark je nach Chemotyp und Herkunft.<\/p><\/div><\/details>\n<details class=\"qa\"><summary><h3>Enth\u00e4lt \u00e4therisches Thymian\u00f6l Allergene?<\/h3><span class=\"pm\" aria-hidden=\"true\"><\/span><\/summary><div class=\"ans\"><p>Ja. Je nach Chemotyp enth\u00e4lt es Linalool, Limonen oder Geraniol, Allergene, die in der Europ\u00e4ischen Union reguliert sind. Bei mehr als 0,001 % in einem Produkt, das auf der Haut verbleibt, und mehr als 0,01 % in einem absp\u00fclbaren Produkt m\u00fcssen sie in der Inhaltsstoffliste aufgef\u00fchrt werden.<\/p><\/div><\/details>\n<details class=\"qa\"><summary><h3>Kann ich mit Carmel Cosmetics Labs eine Produktreihe mit Thymian entwickeln?<\/h3><span class=\"pm\" aria-hidden=\"true\"><\/span><\/summary><div class=\"ans\"><p>Ja. Wir bieten reines \u00e4therisches Thymian\u00f6l unter Ihrer Marke an und verarbeiten Thymian in Shampoos, Masken und Reinigungssch\u00e4umen als White Label oder in einer exklusiven Private-Label-Rezeptur. Die Herstellung erfolgt in unserem Werk nach ISO 22716 in A\u00eft Melloul.<\/p><\/div><\/details><\/div><\/div><\/section>\n<section class=\"wrap ip-src\" aria-labelledby=\"ip-sr\"><h2 id=\"ip-sr\" class=\"mono\">Quellen<\/h2><ol><li><a href=\"https:\/\/ec.europa.eu\/growth\/tools-databases\/cosing\/details\/59747\" target=\"_blank\" rel=\"noopener\">Europ\u00e4ische Kommission, CosIng-Datenbank: THYMUS VULGARIS LEAF (Thymianblatt)<\/a><\/li><li><a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC5302419\/\" target=\"_blank\" rel=\"noopener\">Satyal P. et al., Essential Oil Characterization of Thymus vulgaris from Various Geographical Locations, Foods 5(4) (2016)<\/a><\/li><li><a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC9508645\/\" target=\"_blank\" rel=\"noopener\">Drioiche A. et al., Correlation between the chemical composition and the antimicrobial properties of seven samples of essential oils of endemic Thymes in Morocco, Saudi Pharmaceutical Journal 30(8) (2022)<\/a><\/li><li><a href=\"https:\/\/doi.org\/10.26538\/tjnpr\/v7i11.17\" target=\"_blank\" rel=\"noopener\">Salhi N. et al., Traditional Knowledge of Medicinal Plants Used for Cosmetic Purposes in the Fez-Meknes Region, Trop J Nat Prod Res 7(11) (2023)<\/a><\/li><li><a href=\"https:\/\/eur-lex.europa.eu\/eli\/reg\/2023\/1545\/oj\" target=\"_blank\" rel=\"noopener\">Europ\u00e4ische Kommission, Verordnung (EU) 2023\/1545 zur \u00c4nderung von Anhang III der Verordnung (EG) Nr. 1223\/2009 (Kennzeichnung von Duftstoffallergenen) (2023)<\/a><\/li><\/ol><\/section>\n<section style=\"padding-bottom:clamp(40px,6vw,80px)\"><div class=\"wrap\"><div class=\"final\"><div><h2>Ihre Thymian-Pflegelinie, hergestellt in Marokko<\/h2><p>Senden Sie uns Ihr Briefing: Wir entwickeln und fertigen Ihre Pflegeprodukte und \u00e4therischen \u00d6le mit Thymian in unserem Werk nach ISO 22716 in A\u00eft Melloul. Kostenlose Beratung und unverbindliche Rezepturauswahl.<\/p><\/div><div class=\"actions\"><a class=\"btn\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/kostenlose-beratung\/\">Kostenlose Beratung <span class=\"knob\"><svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/span><\/a><a class=\"btn btn-wa\" href=\"https:\/\/carmelcosmeticslabs.com\/de\/white-label-kosmetik-katalog\/\"><span>Katalog ansehen<\/span><span class=\"knob\"><svg class=\"ico\"><use href=\"#i-arrow\"\/><\/svg><\/span><\/a><\/div><\/div><\/div><\/section>\n<script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@graph\": [{\"@type\": \"DefinedTerm\", \"@id\": \"https:\/\/carmelcosmeticslabs.com\/en\/glossary-cosmetic-ingredients\/thyme\/#term\", \"name\": \"Thymian\", \"alternateName\": \"THYMUS VULGARIS LEAF\", \"termCode\": \"THYMUS VULGARIS LEAF\", \"description\": \"Thymian (Thymus vulgaris) ist eine aromatische Pflanze aus der Familie der Lippenbl\u00fctler, die aus S\u00fcdeuropa und dem Mittelmeerraum stammt. In der Kosmetik wird er in drei Formen eingesetzt: als getrocknetes Blatt, das als THYMUS VULGARIS LEAF deklariert und von CosIng als Duftstoff eingestuft wird, als Extrakt und als \u00e4therisches \u00d6l aus der Destillation. Dieses \u00d6l ist reich an Thymol und enth\u00e4lt zudem \u03b3-Terpinen und p-Cymen. Thymian verleiht Shampoos, Masken und Reinigungsprodukten seinen Duft.\", \"url\": \"https:\/\/carmelcosmeticslabs.com\/en\/glossary-cosmetic-ingredients\/thyme\/\", \"inDefinedTermSet\": \"https:\/\/carmelcosmeticslabs.com\/de\/glossar-kosmetische-inhaltsstoffe\/#glossaire\"}, {\"@type\": \"WebPage\", \"@id\": \"https:\/\/carmelcosmeticslabs.com\/en\/glossary-cosmetic-ingredients\/thyme\/\", \"url\": \"https:\/\/carmelcosmeticslabs.com\/en\/glossary-cosmetic-ingredients\/thyme\/\", \"name\": \"Thymian in Kosmetik: \u00e4therisches \u00d6l und Haare | Carmel\", \"description\": \"Thymian (Thymus vulgaris): Blatt, Extrakt, \u00e4therisches \u00d6l f\u00fcr Haut und Haar, kennzeichnungspflichtige Allergene. Hersteller in Marokko.\", \"inLanguage\": \"de\", \"dateModified\": \"2026-10-18\", \"isPartOf\": {\"@id\": \"https:\/\/carmelcosmeticslabs.com\/de\/startseite\/#website\"}, \"about\": {\"@id\": \"https:\/\/carmelcosmeticslabs.com\/en\/glossary-cosmetic-ingredients\/thyme\/#term\"}, \"author\": {\"@type\": \"Organization\", \"name\": \"F&E-Team von Carmel Cosmetics Labs\", \"url\": \"https:\/\/carmelcosmeticslabs.com\/de\/rezepturentwicklung-kosmetiklabor\/\"}, \"publisher\": {\"@id\": \"https:\/\/carmelcosmeticslabs.com\/de\/startseite\/#organization\"}, \"citation\": [\"https:\/\/ec.europa.eu\/growth\/tools-databases\/cosing\/details\/59747\", \"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC5302419\/\", \"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC9508645\/\", \"https:\/\/doi.org\/10.26538\/tjnpr\/v7i11.17\", \"https:\/\/eur-lex.europa.eu\/eli\/reg\/2023\/1545\/oj\"]}, {\"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"Welche Vorteile bietet Thymian in der Kosmetik?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Thymian verleiht Pflegeprodukten eine frische, krautige Duftnote. CosIng stuft den Extrakt als hautpflegend und tonisierend ein, das Blatt und das \u00e4therische \u00d6l als Duftstoffe. Thymian wird in Shampoos, Masken und Reinigungsprodukten eingesetzt, im kosmetischen Rahmen und ohne medizinische Versprechen.\"}}, {\"@type\": \"Question\", \"name\": \"Ist Thymian gut f\u00fcr die Haare?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Eine Befragung von Kr\u00e4uterkundigen in F\u00e8s-Mekn\u00e8s, Marokko, nennt einen lokalen Thymian, Thymus zygis, unter dem Namen zeitra als Bestandteil traditioneller Haarzubereitungen. In unseren Shampoos und Masken verleiht Thymian Duft und begleitet die Reinigung der Kopfhaut, ohne Versprechen zu Haarausfall oder Haarwachstum.\"}}, {\"@type\": \"Question\", \"name\": \"Wie wird \u00e4therisches Thymian\u00f6l auf der Haut angewendet?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Nie unverd\u00fcnnt anwenden: Verd\u00fcnnen Sie das \u00d6l immer in einem Pflanzen\u00f6l oder setzen Sie es in geringer Dosierung in einem formulierten Produkt ein. Testen Sie es vor der ersten Anwendung in der Armbeuge und vermeiden Sie Kontakt mit Augen und Schleimh\u00e4uten. Lassen Sie sich bei empfindlichen Personengruppen fachlich beraten.\"}}, {\"@type\": \"Question\", \"name\": \"Wie setzt sich \u00e4therisches Thymian\u00f6l zusammen?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"F\u00fcr ein handels\u00fcbliches \u00d6l aus Thymus vulgaris werden folgende Werte genannt: Thymol 23 bis 60 %, \u03b3-Terpinen 18 bis 50 %, p-Cymen 8 bis 44 %, Carvacrol 2 bis 8 % und Linalool 3 bis 4 %. Die Zusammensetzung variiert stark je nach Chemotyp und Herkunft.\"}}, {\"@type\": \"Question\", \"name\": \"Enth\u00e4lt \u00e4therisches Thymian\u00f6l Allergene?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Ja. Je nach Chemotyp enth\u00e4lt es Linalool, Limonen oder Geraniol, Allergene, die in der Europ\u00e4ischen Union reguliert sind. Bei mehr als 0,001 % in einem Produkt, das auf der Haut verbleibt, und mehr als 0,01 % in einem absp\u00fclbaren Produkt m\u00fcssen sie in der Inhaltsstoffliste aufgef\u00fchrt werden.\"}}, {\"@type\": \"Question\", \"name\": \"Kann ich mit Carmel Cosmetics Labs eine Produktreihe mit Thymian entwickeln?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Ja. Wir bieten reines \u00e4therisches Thymian\u00f6l unter Ihrer Marke an und verarbeiten Thymian in Shampoos, Masken und Reinigungssch\u00e4umen als White Label oder in einer exklusiven Private-Label-Rezeptur. Die Herstellung erfolgt in unserem Werk nach ISO 22716 in A\u00eft Melloul.\"}}]}]}<\/script>\n<script>\n(function(){\n  document.documentElement.classList.add('ip-js');\n  [].forEach.call(document.querySelectorAll('details.qa'),function(d,i){d.open=i===0;});\n  var comp=document.querySelector('.ip-comp');\n  if(comp&&'IntersectionObserver' in window){new IntersectionObserver(function(es,o){es.forEach(function(e){if(e.isIntersecting){comp.classList.add('in');o.disconnect();}});},{threshold:.35}).observe(comp);}else if(comp){comp.classList.add('in');}\n  \/* ---------- HERO: particle story, one shape per chapter (ingredient-specific) ---------- *\/\n  var hero=document.querySelector('.ip-hero'),cv=document.querySelector('.ip-canvas');if(!hero||!cv)return;\n  var ipr=document.querySelector('.ip');function chrome(){var h=0,b=0,hd=document.querySelector('.elementor-location-header'),bm=document.querySelector('.wp-bottom-menu');if(hd&&\/sticky|fixed\/.test(getComputedStyle(hd).position))h=hd.getBoundingClientRect().height;if(bm){var cs=getComputedStyle(bm);if(cs.display!=='none'&&cs.visibility!=='hidden')b=bm.getBoundingClientRect().height;}ipr.style.setProperty('--hdr',h+'px');ipr.style.setProperty('--bm',b+'px');}\n  chrome();setTimeout(function(){chrome();build();},1200);\n  var ctx=cv.getContext('2d'),reduce=window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n  var chs=[].slice.call(document.querySelectorAll('.ip-ch')),mark=document.querySelector('.ip-mark'),bar=document.querySelector('.ip-prog i'),L='ABCD';\n  \/* Shape library: each draws in a 400x400 box with real colours (sampled as particle colours). *\/\n  function leaf(c,x,y,len,w,ang,col){c.save();c.translate(x,y);c.rotate(ang);c.fillStyle=col;c.beginPath();c.moveTo(0,0);c.quadraticCurveTo(len*.5,-w,len,0);c.quadraticCurveTo(len*.5,w,0,0);c.fill();c.restore();}\n  function almond(c,x,y,rx,ry,ang,col){c.save();c.translate(x,y);c.rotate(ang);c.fillStyle=col;c.beginPath();c.moveTo(0,-ry);c.bezierCurveTo(rx*1.1,-ry*.55,rx*1.1,ry*.55,0,ry);c.bezierCurveTo(-rx*1.1,ry*.55,-rx*1.1,-ry*.55,0,-ry);c.fill();c.restore();}\n  var SHAPES={argan:[\n    function tree(c){ \/\/ short wide canopy, gnarled twisted trunk, golden fruits\n      c.fillStyle='#6a4a2b';c.beginPath();c.moveTo(186,390);c.bezierCurveTo(176,330,206,300,180,250);c.lineTo(150,205);c.lineTo(162,198);c.lineTo(196,240);c.bezierCurveTo(200,220,214,212,226,196);c.lineTo(238,202);c.bezierCurveTo(224,226,216,262,232,300);c.bezierCurveTo(240,330,226,360,232,390);c.closePath();c.fill();\n      var g=['#4f6a2a','#6b8636','#8aa142','#5d7a30'];var blobs=[[200,150,120,62],[110,175,70,42],[292,170,78,44],[160,118,66,40],[250,112,72,42],[205,92,60,34],[70,196,40,24],[332,194,44,26]];\n      blobs.forEach(function(b,i){c.fillStyle=g[i%4];c.beginPath();c.ellipse(b[0],b[1],b[2],b[3],0,0,6.283);c.fill();});\n      c.fillStyle='#d9a43a';[[150,150],[240,140],[290,180],[120,190],[210,110],[180,180],[262,200]].forEach(function(p){c.beginPath();c.arc(p[0],p[1],6,0,6.283);c.fill();});\n    },\n    function fruit(c){ \/\/ olive-like argan fruit with stem and two leaves\n      leaf(c,206,92,120,24,-2.5,'#5d7a30');leaf(c,212,96,110,22,-.55,'#7b9638');\n      c.strokeStyle='#6a4a2b';c.lineWidth=7;c.beginPath();c.moveTo(208,96);c.lineTo(205,128);c.stroke();\n      var gr=c.createRadialGradient(178,190,10,200,230,120);gr.addColorStop(0,'#f3c46a');gr.addColorStop(.55,'#d79a32');gr.addColorStop(1,'#9c6a1f');\n      c.fillStyle=gr;c.beginPath();c.ellipse(204,240,92,112,.12,0,6.283);c.fill();\n      c.fillStyle='rgba(255,236,190,.95)';c.beginPath();c.ellipse(172,196,18,30,-.4,0,6.283);c.fill();\n    },\n    function nut(c){ \/\/ cracked nut: two shell halves apart, three kernels inside\n      c.fillStyle='#7a5432';\n      c.beginPath();c.ellipse(118,220,62,112,-.2,Math.PI*.5,Math.PI*1.5);c.fill();\n      c.beginPath();c.ellipse(290,214,62,112,.2,-Math.PI*.5,Math.PI*.5);c.fill();\n      c.fillStyle='#9a6c3e';c.beginPath();c.ellipse(126,220,40,94,-.2,Math.PI*.5,Math.PI*1.5);c.fill();c.beginPath();c.ellipse(282,214,40,94,.2,-Math.PI*.5,Math.PI*.5);c.fill();\n      almond(c,170,226,30,62,-.18,'#f2dfb4');almond(c,208,212,32,68,0,'#ead1a0');almond(c,246,226,30,62,.2,'#f2dfb4');\n    },\n    function drop(c){ \/\/ golden oil drop + ripple\n      var gr=c.createLinearGradient(140,60,260,330);gr.addColorStop(0,'#ffd27a');gr.addColorStop(.6,'#d99a2e');gr.addColorStop(1,'#a8701d');\n      c.fillStyle=gr;c.beginPath();c.moveTo(200,40);c.bezierCurveTo(232,110,292,170,292,236);c.bezierCurveTo(292,290,250,330,200,330);c.bezierCurveTo(150,330,108,290,108,236);c.bezierCurveTo(108,170,168,110,200,40);c.fill();\n      c.fillStyle='rgba(255,246,220,.95)';c.beginPath();c.ellipse(160,222,14,36,.28,0,6.283);c.fill();\n      c.strokeStyle='#d9a43a';c.lineWidth=5;[[110,22],[150,30],[188,38]].forEach(function(r,i){c.globalAlpha=1-i*.25;c.beginPath();c.ellipse(200,372,r[0],r[1]*.5,0,0,6.283);c.stroke();});c.globalAlpha=1;\n    }\n  ]};\n  var CP=CanvasRenderingContext2D.prototype;if(!CP.roundRect)CP.roundRect=function(x,y,w,h,r){r=Math.min(Array.isArray(r)?r[0]:r,w\/2,h\/2);this.moveTo(x+r,y);this.arcTo(x+w,y,x+w,y+h,r);this.arcTo(x+w,y+h,x,y+h,r);this.arcTo(x,y+h,x,y,r);this.arcTo(x,y,x+w,y,r);this.closePath();};\n  function drop(c,cx,top,bot,hw,c1,c2,c3,hl){var gr=c.createLinearGradient(cx-hw,top,cx+hw,bot);gr.addColorStop(0,c1);gr.addColorStop(.6,c2);gr.addColorStop(1,c3);c.fillStyle=gr;var mid=bot-hw;c.beginPath();c.moveTo(cx,top);c.bezierCurveTo(cx+hw*.35,top+(mid-top)*.45,cx+hw,mid-hw*.7,cx+hw,mid);c.bezierCurveTo(cx+hw,mid+hw*.6,cx+hw*.55,bot,cx,bot);c.bezierCurveTo(cx-hw*.55,bot,cx-hw,mid+hw*.6,cx-hw,mid);c.bezierCurveTo(cx-hw,mid-hw*.7,cx-hw*.35,top+(mid-top)*.45,cx,top);c.fill();c.fillStyle=hl;c.beginPath();c.ellipse(cx-hw*.45,mid-hw*.1,hw*.15,hw*.4,.28,0,6.283);c.fill();}\n  function ripple(c,cx,y,col){c.strokeStyle=col;c.lineWidth=5;[[110,22],[150,30],[188,38]].forEach(function(r,i){c.globalAlpha=1-i*.25;c.beginPath();c.ellipse(cx,y,r[0],r[1]*.5,0,0,6.283);c.stroke();});c.globalAlpha=1;}\n  function poly(c,pts,col){c.fillStyle=col;c.beginPath();c.moveTo(pts[0][0],pts[0][1]);for(var i=1;i<pts.length;i++)c.lineTo(pts[i][0],pts[i][1]);c.closePath();c.fill();}\n  function rr(c,x,y,w,h,r,col){c.fillStyle=col;c.beginPath();c.roundRect(x,y,w,h,r);c.fill();}\n  SHAPES.nigelle=[\n    function flower(c){ \/\/ Nigella sativa: 5 pale petals with blue tips, green ovary + horn styles, feathery leaves\n      c.strokeStyle='#6f8a3a';c.lineWidth=7;c.beginPath();c.moveTo(200,390);c.bezierCurveTo(196,330,206,280,200,232);c.stroke();\n      c.lineWidth=4;[[-1,330],[1,300],[-1,270]].forEach(function(f){var y=f[1];for(var k=0;k<3;k++){c.beginPath();c.moveTo(200,y);c.quadraticCurveTo(200+f[0]*(40+k*18),y-20-k*10,200+f[0]*(70+k*26),y-60+k*14);c.stroke();}});\n      for(var i=0;i<5;i++){var a=-Math.PI\/2+i*Math.PI*2\/5;c.save();c.translate(200,170);c.rotate(a);var g=c.createLinearGradient(0,0,108,0);g.addColorStop(0,'#eef2fa');g.addColorStop(.6,'#cbd7f0');g.addColorStop(1,'#6f8fd0');c.fillStyle=g;c.beginPath();c.moveTo(0,0);c.bezierCurveTo(30,-50,96,-46,110,0);c.bezierCurveTo(96,46,30,50,0,0);c.fill();c.strokeStyle='#9fb3e0';c.lineWidth=3;c.beginPath();c.moveTo(14,0);c.lineTo(92,0);c.stroke();c.restore();}\n      c.fillStyle='#3a3550';for(var j=0;j<22;j++){var b=j\/22*6.283;c.beginPath();c.arc(200+Math.cos(b)*30,170+Math.sin(b)*30,4.5,0,6.283);c.fill();}\n      c.fillStyle='#7f9b45';c.beginPath();c.arc(200,170,20,0,6.283);c.fill();\n      c.strokeStyle='#5d7a30';c.lineWidth=4;for(var h=0;h<5;h++){var t=-Math.PI\/2+h*1.2566;c.beginPath();c.moveTo(200,170);c.quadraticCurveTo(200+Math.cos(t)*30,170+Math.sin(t)*30,200+Math.cos(t+.5)*44,170+Math.sin(t+.5)*44);c.stroke();}\n    },\n    function capsule(c){ \/\/ inflated 5-chambered seed pod with horn-like styles\n      c.strokeStyle='#6f8a3a';c.lineWidth=8;c.beginPath();c.moveTo(200,392);c.quadraticCurveTo(190,350,200,312);c.stroke();\n      var g=c.createRadialGradient(170,200,10,200,220,130);g.addColorStop(0,'#d9dc9a');g.addColorStop(.6,'#a8b062');g.addColorStop(1,'#6f7a38');c.fillStyle=g;\n      c.beginPath();c.moveTo(200,312);c.bezierCurveTo(90,300,92,150,140,112);c.lineTo(260,112);c.bezierCurveTo(308,150,310,300,200,312);c.fill();\n      c.strokeStyle='#6a7434';c.lineWidth=4;[[150,110],[176,108],[200,106],[224,108],[250,110]].forEach(function(p,i){c.beginPath();c.moveTo(200,312);c.quadraticCurveTo(p[0]+(p[0]-200)*.9,220,p[0],p[1]);c.stroke();});\n      c.strokeStyle='#5d6a2c';c.lineWidth=6;[[140,112,-1],[170,110,-.5],[200,108,0],[230,110,.5],[260,112,1]].forEach(function(p){c.beginPath();c.moveTo(p[0],p[1]);c.quadraticCurveTo(p[0]+p[2]*20,p[1]-40,p[0]+p[2]*44,p[1]-62);c.stroke();});\n      c.fillStyle='#24222b';[[150,330],[168,348],[236,340],[252,326]].forEach(function(p,i){c.save();c.translate(p[0],p[1]);c.rotate(i);c.beginPath();c.moveTo(-6,5);c.lineTo(0,-7);c.lineTo(7,5);c.closePath();c.fill();c.restore();});\n    },\n    function seeds(c){ \/\/ heap of matte black angular seeds\n      var R=rng(5),cols=['#1c1b21','#2a2830','#34323c','#46434f'];\n      for(var n=0;n<520;n++){var u=R()*2-1,h=Math.pow(1-u*u,.8)*230,x=200+u*135,y=360-R()*h;if(R()<.07){x=70+R()*260;y=362+R()*24;}c.save();c.translate(x,y);c.rotate(R()*6.28);c.fillStyle=cols[(R()*4)|0];c.beginPath();c.moveTo(-6,5);c.lineTo(-1,-7);c.lineTo(7,4);c.closePath();c.fill();c.restore();}\n      c.fillStyle='#6a6676';for(var m=0;m<40;m++){c.beginPath();c.arc(120+R()*160,220+R()*120,1.6,0,6.283);c.fill();}\n    },\n    function oil(c){drop(c,200,40,330,92,'#f2c25e','#c98a22','#8a5410','rgba(255,240,205,.95)');ripple(c,200,372,'#c98a22');}\n  ];\n  SHAPES.henne=[\n    function shrub(c){ \/\/ multi-stem henna bush with cream flower clusters\n      c.strokeStyle='#6a4a2b';c.lineCap='round';[[200,392,200,250,9],[200,320,140,220,6],[200,300,262,214,6],[200,270,176,176,5],[200,262,236,170,5]].forEach(function(b){c.lineWidth=b[4];c.beginPath();c.moveTo(b[0],b[1]);c.quadraticCurveTo((b[0]+b[2])\/2+8,(b[1]+b[3])\/2,b[2],b[3]);c.stroke();});\n      var R=rng(9),g=['#4c6a26','#5f7f2e','#78963a','#8aa84a'];\n      for(var n=0;n<260;n++){var a=R()*6.283,r=Math.sqrt(R()),x=200+Math.cos(a)*r*150,y=180+Math.sin(a)*r*92;leaf(c,x,y,22,7,R()*6.28,g[(R()*4)|0]);}\n      c.fillStyle='#f3e6c8';[[130,140],[262,128],[200,104],[300,190],[100,196],[226,170]].forEach(function(p){for(var k=0;k<7;k++){c.beginPath();c.arc(p[0]+Math.cos(k)*9,p[1]+Math.sin(k*1.7)*7,4.5,0,6.283);c.fill();}});\n    },\n    function leaves(c){ \/\/ branch with opposite elliptic leaves\n      c.strokeStyle='#6a4a2b';c.lineWidth=6;c.lineCap='round';c.beginPath();c.moveTo(110,370);c.bezierCurveTo(170,290,220,170,290,40);c.stroke();\n      var g=['#4f6e28','#6b8a33','#86a442'];for(var i=0;i<8;i++){var t=i\/8,x=110+t*(180),y=370-t*330,s=1-t*.35;leaf(c,x,y,74*s,22*s,-1.07-.95,g[i%3]);leaf(c,x,y,74*s,22*s,-1.07+.95,g[(i+1)%3]);}\n      leaf(c,290,40,50,16,-1.1,'#86a442');\n    },\n    function powder(c){ \/\/ terracotta bowl with a mound of green henna powder\n      c.fillStyle='#7d8a3c';c.beginPath();c.moveTo(70,220);c.bezierCurveTo(110,120,290,120,330,220);c.closePath();c.fill();\n      var R=rng(3);c.fillStyle='#93a04c';for(var n=0;n<300;n++){var a=R()*3.14,r=R();c.beginPath();c.arc(200-Math.cos(a)*r*120,212-Math.sin(a)*r*76,2.2,0,6.283);c.fill();}\n      var g=c.createLinearGradient(0,220,0,350);g.addColorStop(0,'#c46a3a');g.addColorStop(1,'#8a3f1d');c.fillStyle=g;c.beginPath();c.moveTo(56,214);c.lineTo(344,214);c.bezierCurveTo(338,300,280,350,200,350);c.bezierCurveTo(120,350,62,300,56,214);c.fill();\n      c.fillStyle='#e0956a';c.fillRect(56,212,288,8);\n      c.fillStyle='#7d8a3c';for(var m=0;m<90;m++){c.beginPath();c.arc(90+R()*230,362+R()*22,2.2,0,6.283);c.fill();}\n    },\n    function hand(c){ \/\/ open hand with a festive henna motif\n      var sk='#e5b48a';rr(c,128,188,148,170,46,sk);[[132,72,34,150],[172,44,36,170],[214,52,36,160],[254,86,32,130]].forEach(function(f){rr(c,f[0],f[1],f[2],f[3],17,sk);});\n      c.save();c.translate(132,292);c.rotate(-.75);rr(c,-18,-96,36,110,17,sk);c.restore();rr(c,150,330,104,70,20,sk);\n      var hn='#8a3517';c.strokeStyle=hn;c.fillStyle=hn;c.lineCap='round';\n      for(var p=0;p<8;p++){c.save();c.translate(202,264);c.rotate(p*.785);c.beginPath();c.ellipse(0,-34,11,22,0,0,6.283);c.fill();c.restore();}\n      c.fillStyle=sk;c.beginPath();c.arc(202,264,20,0,6.283);c.fill();c.fillStyle=hn;c.beginPath();c.arc(202,264,11,0,6.283);c.fill();\n      c.lineWidth=7;c.beginPath();c.arc(202,264,72,Math.PI*1.1,Math.PI*1.9);c.stroke();\n      [[149,72],[190,44],[232,52],[270,86]].forEach(function(f){c.beginPath();c.roundRect(f[0]-17,f[1],34,34,[17,17,4,4]);c.fill();c.lineWidth=6;c.beginPath();c.moveTo(f[0],f[1]+48);c.lineTo(f[0],f[1]+112);c.stroke();for(var d=0;d<3;d++){c.beginPath();c.ellipse(f[0]+(d%2?9:-9),f[1]+58+d*20,6,9,d%2?.6:-.6,0,6.283);c.fill();}});\n      c.lineWidth=7;c.beginPath();for(var w=0;w<5;w++){c.moveTo(160+w*21+8,362);c.arc(160+w*21,362,8,0,Math.PI,true);}c.stroke();\n      c.beginPath();c.moveTo(150,384);c.lineTo(254,384);c.stroke();\n    }\n  ];\n  SHAPES.alun=[\n    function ore(c){ \/\/ rough grey rock bristling with pale octahedral crystal points\n      poly(c,[[50,330],[90,250],[160,226],[250,232],[330,262],[360,330],[300,372],[110,374]],'#8d8ba0');poly(c,[[90,250],[160,226],[200,300],[110,330]],'#a3a1b6');poly(c,[[250,232],[330,262],[300,330],[220,300]],'#77758c');\n      [[140,240,40,96,-.25],[200,236,52,136,0],[262,244,40,104,.3],[100,270,28,64,-.6],[312,272,26,60,.6]].forEach(function(k){c.save();c.translate(k[0],k[1]);c.rotate(k[4]);var w=k[2],h=k[3];poly(c,[[0,-h],[-w,0],[0,w*.3]],'#cfcce6');poly(c,[[0,-h],[w,0],[0,w*.3]],'#9f9cc9');c.strokeStyle='#6c69a0';c.lineWidth=3;c.beginPath();c.moveTo(0,-h);c.lineTo(0,w*.3);c.stroke();c.restore();});\n    },\n    function crystal(c){ \/\/ perfect octahedron, the natural habit of potassium alum\n      var T=[200,30],B=[200,370],L=[52,214],Rr=[348,186],F=[222,236],K=[178,166];\n      poly(c,[T,L,K],'#b9b6db');poly(c,[T,K,Rr],'#a09dcc');poly(c,[B,K,L],'#8f8cbf');poly(c,[B,Rr,K],'#7a77ad');\n      poly(c,[T,L,F],'#dcdaf0');poly(c,[T,F,Rr],'#b3b0d8');poly(c,[B,L,F],'#a7a4d2');poly(c,[B,F,Rr],'#8582b8');\n      c.strokeStyle='#5d5a92';c.lineWidth=3;[[T,F],[B,F],[L,F],[Rr,F],[T,L],[T,Rr],[B,L],[B,Rr]].forEach(function(e){c.beginPath();c.moveTo(e[0][0],e[0][1]);c.lineTo(e[1][0],e[1][1]);c.stroke();});\n    },\n    function stone(c){ \/\/ cut and polished alum stone: rounded block seen in 3\/4, flat polished top\n      var g=c.createLinearGradient(80,0,320,0);g.addColorStop(0,'#a9a6d2');g.addColorStop(.35,'#dcdaf0');g.addColorStop(1,'#7f7cb2');c.fillStyle=g;\n      c.beginPath();c.moveTo(84,150);c.lineTo(84,300);c.bezierCurveTo(84,350,316,350,316,300);c.lineTo(316,150);c.closePath();c.fill();\n      c.fillStyle='#ebeaf7';c.beginPath();c.ellipse(200,150,116,46,0,0,6.283);c.fill();\n      c.strokeStyle='#7f7cb2';c.lineWidth=4;c.beginPath();c.ellipse(200,150,116,46,0,0,6.283);c.stroke();\n      c.fillStyle='#fff';c.beginPath();c.ellipse(160,140,40,10,-.15,0,6.283);c.fill();c.fillRect(112,190,14,110);\n      c.strokeStyle='#9895c6';c.lineWidth=3;c.beginPath();c.moveTo(150,220);c.quadraticCurveTo(200,236,262,212);c.moveTo(170,270);c.quadraticCurveTo(220,282,280,262);c.stroke();\n    },\n    function stick(c){ \/\/ moistened alum stick in its holder, with a water drop\n      rr(c,148,226,104,150,16,'#7d7fa6');rr(c,140,214,120,26,8,'#666893');\n      var g=c.createLinearGradient(152,0,248,0);g.addColorStop(0,'#c9c7e2');g.addColorStop(.45,'#f3f2fa');g.addColorStop(1,'#a9a7cf');c.fillStyle=g;c.beginPath();c.moveTo(156,216);c.lineTo(156,130);c.bezierCurveTo(156,96,244,96,244,130);c.lineTo(244,216);c.fill();\n      c.fillStyle='rgba(255,255,255,.95)';c.fillRect(174,120,10,90);\n      drop(c,200,8,92,30,'#e2ecf8','#a9c2e6','#7d9cd0','rgba(255,255,255,.95)');\n    }\n  ];\n  SHAPES.aker=[\n    function poppy(c){ \/\/ corn poppies in a spring field: hairy stems, four crinkled scarlet petals, black blotch and stamens, a drooping bud\n      var R=rng(41),g=['#5f8a3a','#4f7a30','#76a048','#3f6b2c'];\n      for(var n=0;n<120;n++){var x=24+R()*352,h=40+R()*70;c.strokeStyle=g[(R()*4)|0];c.lineWidth=3+R()*2;c.lineCap='round';c.beginPath();c.moveTo(x,380);c.quadraticCurveTo(x+(R()-.5)*30,380-h*.6,x+(R()-.5)*40,380-h);c.stroke();}\n      function stem(x0,x1,y1){c.strokeStyle='#5f8a3a';c.lineWidth=6;c.beginPath();c.moveTo(x0,380);c.bezierCurveTo(x0+6,320,x1-12,y1+60,x1,y1);c.stroke();}\n      function flower(x,y,s,rot){c.save();c.translate(x,y);c.rotate(rot);\n        var p=[['#a8141f',-.78],['#a8141f',2.36],['#d8232f',.78],['#d8232f',-2.36]];\n        p.forEach(function(q){c.fillStyle=q[0];c.beginPath();c.ellipse(Math.cos(q[1])*s*.42,Math.sin(q[1])*s*.42,s*.62,s*.54,q[1],0,6.283);c.fill();});\n        c.fillStyle='#ef4a4f';c.beginPath();c.ellipse(-s*.18,-s*.28,s*.3,s*.14,-.5,0,6.283);c.fill();\n        c.fillStyle='#1c1416';c.beginPath();c.arc(0,0,s*.24,0,6.283);c.fill();\n        c.strokeStyle='#2a1e22';c.lineWidth=2;for(var k=0;k<14;k++){var a=k*.449;c.beginPath();c.moveTo(Math.cos(a)*s*.14,Math.sin(a)*s*.14);c.lineTo(Math.cos(a)*s*.34,Math.sin(a)*s*.34);c.stroke();}\n        c.fillStyle='#7d8f4a';c.beginPath();c.arc(0,0,s*.11,0,6.283);c.fill();c.restore();}\n      stem(120,110,170);stem(214,236,108);stem(300,310,200);stem(64,58,250);\n      flower(110,160,70,.2);flower(236,100,82,-.3);flower(312,192,60,.5);flower(58,244,40,.1);\n      c.strokeStyle='#5f8a3a';c.lineWidth=5;c.beginPath();c.moveTo(170,380);c.bezierCurveTo(176,300,196,270,180,246);c.stroke();\n      almond(c,176,236,11,18,.6,'#6f9a42');c.fillStyle='#c41e2a';c.beginPath();c.ellipse(170,232,4,9,.6,0,6.283);c.fill();\n    },\n    function grenade(c){ \/\/ whole pomegranate with its crown, a halved fruit full of ruby arils, curled strips of drying rind\n      var g=c.createRadialGradient(140,150,20,160,180,120);g.addColorStop(0,'#e0604a');g.addColorStop(.6,'#b8322a');g.addColorStop(1,'#7a1a1c');c.fillStyle=g;\n      c.beginPath();c.arc(160,180,108,0,6.283);c.fill();\n      poly(c,[[138,80],[146,52],[156,74],[166,48],[174,74],[186,54],[184,84]],'#8a2a22');\n      c.fillStyle='rgba(255,220,200,.75)';c.beginPath();c.ellipse(118,140,26,12,-.6,0,6.283);c.fill();\n      c.save();c.translate(282,270);\n      c.fillStyle='#9a2a24';c.beginPath();c.ellipse(0,0,92,80,0,0,6.283);c.fill();\n      c.fillStyle='#f3dcc0';c.beginPath();c.ellipse(0,-4,80,68,0,0,6.283);c.fill();\n      var R=rng(9),ar=['#c41e3a','#e0344f','#a01430','#f0607a'];\n      for(var n=0;n<150;n++){var a=R()*6.283,r=Math.sqrt(R());var x=Math.cos(a)*r*70,y=Math.sin(a)*r*58-4;if(Math.abs(x)<5||Math.abs(y+4)<4)continue;c.fillStyle=ar[(R()*4)|0];c.beginPath();c.ellipse(x,y,5.5,7,a,0,6.283);c.fill();}\n      c.strokeStyle='#f3dcc0';c.lineWidth=5;c.beginPath();c.moveTo(-78,-4);c.lineTo(78,-4);c.moveTo(0,-70);c.lineTo(0,62);c.stroke();\n      c.restore();\n      function strip(x,y,rot,col){c.save();c.translate(x,y);c.rotate(rot);c.fillStyle=col;c.beginPath();c.moveTo(-34,-6);c.quadraticCurveTo(0,-20,34,-6);c.lineTo(34,6);c.quadraticCurveTo(0,-6,-34,6);c.closePath();c.fill();c.restore();}\n      strip(70,330,.2,'#8a2a22');strip(130,356,-.3,'#a8452e');strip(60,372,.05,'#c2603a');strip(150,320,.6,'#7a1f1c');\n    },\n    function zlafa(c){ \/\/ small unglazed terracotta bowl coated inside with red aker fassi, a moistened fingertip, a heap of crimson powder\n      c.fillStyle='rgba(120,70,50,.25)';c.beginPath();c.ellipse(190,350,150,24,0,0,6.283);c.fill();\n      var g=c.createLinearGradient(50,0,330,0);g.addColorStop(0,'#9a4e2c');g.addColorStop(.45,'#d98a5a');g.addColorStop(1,'#8a4424');c.fillStyle=g;\n      c.beginPath();c.moveTo(48,226);c.lineTo(332,226);c.bezierCurveTo(324,300,262,346,190,346);c.bezierCurveTo(118,346,56,300,48,226);c.fill();\n      c.fillStyle='#e7a073';c.beginPath();c.ellipse(190,226,144,40,0,0,6.283);c.fill();\n      var r=c.createRadialGradient(170,226,10,190,232,130);r.addColorStop(0,'#e0303c');r.addColorStop(.7,'#b01e2a');r.addColorStop(1,'#7e1420');c.fillStyle=r;\n      c.beginPath();c.ellipse(190,230,128,32,0,0,6.283);c.fill();\n      c.fillStyle='rgba(255,170,160,.85)';c.beginPath();c.ellipse(152,224,34,6,-.05,0,6.283);c.fill();\n      c.strokeStyle='#b8693f';c.lineWidth=3;c.beginPath();c.moveTo(70,262);c.bezierCurveTo(130,292,250,292,310,262);c.stroke();\n      var R=rng(13);for(var n=0;n<160;n++){var u=R()*2-1,h=Math.pow(1-u*u,1.5)*36,x=330+u*44,y=360-R()*h;c.fillStyle=['#c41e2a','#9a1622','#e04450'][(R()*3)|0];c.beginPath();c.arc(x,y,2.2,0,6.283);c.fill();}\n      c.save();c.translate(250,150);c.rotate(.5);\n      rr(c,-30,-140,60,160,30,'#e9b896');c.fillStyle='#f4d0b4';c.beginPath();c.ellipse(-10,-70,9,50,0,0,6.283);c.fill();\n      c.strokeStyle='#c98f6c';c.lineWidth=3;[-104,-96,-54].forEach(function(y){c.beginPath();c.moveTo(-18,y);c.quadraticCurveTo(0,y+5,18,y);c.stroke();});\n      rr(c,-17,-26,34,36,14,'#f7dccb');c.fillStyle='rgba(255,255,255,.7)';c.beginPath();c.ellipse(-6,-12,4,10,0,0,6.283);c.fill();\n      c.fillStyle='#c41e2a';c.beginPath();c.ellipse(0,16,24,9,0,0,6.283);c.fill();c.restore();\n    },\n    function lips(c){ \/\/ the result: full lips tinted poppy red with a gloss highlight, a soft blush swatch and scattered petals\n      var g=c.createLinearGradient(0,150,0,290);g.addColorStop(0,'#d8232f');g.addColorStop(1,'#9a1622');c.fillStyle=g;\n      c.beginPath();c.moveTo(50,214);c.bezierCurveTo(90,170,140,140,176,164);c.bezierCurveTo(188,172,194,176,200,176);c.bezierCurveTo(206,176,212,172,224,164);c.bezierCurveTo(260,140,310,170,350,214);\n      c.bezierCurveTo(300,212,240,206,200,214);c.bezierCurveTo(160,206,100,212,50,214);c.closePath();c.fill();\n      c.fillStyle='#b81c28';c.beginPath();c.moveTo(50,218);c.bezierCurveTo(100,220,160,214,200,222);c.bezierCurveTo(240,214,300,220,350,218);c.bezierCurveTo(310,284,250,300,200,300);c.bezierCurveTo(150,300,90,284,50,218);c.closePath();c.fill();\n      c.strokeStyle='#6e0e18';c.lineWidth=9;c.beginPath();c.moveTo(56,216);c.bezierCurveTo(110,214,160,210,200,218);c.bezierCurveTo(240,210,290,214,344,216);c.stroke();\n      c.fillStyle='rgba(255,200,200,.9)';c.beginPath();c.ellipse(170,256,40,10,-.08,0,6.283);c.fill();c.beginPath();c.ellipse(244,190,20,6,-.3,0,6.283);c.fill();\n      var b=c.createRadialGradient(200,80,6,200,80,70);b.addColorStop(0,'rgba(232,96,106,.95)');b.addColorStop(1,'rgba(232,96,106,0)');c.fillStyle=b;c.beginPath();c.arc(200,80,70,0,6.283);c.fill();\n      almond(c,70,330,12,22,1.1,'#c41e2a');almond(c,320,340,11,20,-1,'#e04450');almond(c,200,352,10,18,.2,'#a8141f');\n    }\n  ];\n  SHAPES.cedre=[\n    function forest(c){ \/\/ Middle Atlas cedar forest: snow-capped ridges, stands of flat-tiered Atlas cedars on the slope\n      poly(c,[[20,230],[90,120],[140,170],[210,80],[280,160],[330,110],[380,190],[380,250],[20,250]],'#8fa3b4');\n      poly(c,[[90,120],[110,150],[98,146],[84,156],[74,146]],'#f4f8fb');poly(c,[[210,80],[236,118],[220,112],[204,124],[190,108]],'#f4f8fb');poly(c,[[330,110],[350,140],[334,134],[320,142]],'#f4f8fb');\n      c.fillStyle='#6f8a5a';c.beginPath();c.moveTo(20,250);c.bezierCurveTo(120,226,260,232,380,244);c.lineTo(380,380);c.lineTo(20,380);c.closePath();c.fill();\n      c.fillStyle='#5b7548';c.beginPath();c.moveTo(20,320);c.bezierCurveTo(140,300,260,310,380,300);c.lineTo(380,380);c.lineTo(20,380);c.closePath();c.fill();\n      function cedar(x,base,s){var R=rng((x*7+base)|0);c.fillStyle='#5a3d28';c.fillRect(x-4*s,base-60*s,8*s,60*s);\n        var w=[1,.92,.78,.6,.4],cols=['#2f5a52','#3d6b63','#2f5a52','#4a7a70','#3d6b63'];\n        for(var k=0;k<5;k++){var y=base-40*s-k*22*s,hw=58*s*w[k];c.fillStyle='#24463f';c.beginPath();c.ellipse(x,y+4*s,hw,8*s,0,0,6.283);c.fill();\n          c.fillStyle=cols[k];for(var j=0;j<6;j++){var bx=x-hw+(j+.5)*hw*2\/6;c.beginPath();c.ellipse(bx,y-R()*4*s,hw\/3.2,7*s,0,0,6.283);c.fill();}}}\n      [[70,300,.8],[160,290,1],[260,296,.9],[330,302,.7],[115,372,1.1],[225,376,1.2],[318,372,.95]].forEach(function(t){cedar(t[0],t[1],t[2]);});\n    },\n    function tree(c){ \/\/ one majestic Atlas cedar: thick trunk, horizontal branches, flat glaucous tiers, upright barrel cones\n      c.fillStyle='#5a3d28';c.beginPath();c.moveTo(184,380);c.bezierCurveTo(190,300,192,200,196,96);c.lineTo(206,96);c.bezierCurveTo(210,200,212,300,220,380);c.closePath();c.fill();\n      c.fillStyle='#7a5638';c.fillRect(196,150,6,220);\n      c.strokeStyle='#5a3d28';c.lineCap='round';[[200,300,60,286,9],[200,300,340,282,9],[200,246,82,232,7],[200,246,320,228,7],[200,192,110,180,6],[200,192,292,176,6],[200,142,140,130,5],[200,142,262,128,5]].forEach(function(b){c.lineWidth=b[4];c.beginPath();c.moveTo(b[0],b[1]);c.quadraticCurveTo((b[0]+b[2])\/2,b[1]-10,b[2],b[3]);c.stroke();});\n      var R=rng(53),tiers=[[200,290,160],[200,236,136],[200,182,110],[200,130,84],[200,86,52]],g=['#2f5a52','#3d6b63','#5b8a80','#7fa9a0'];\n      tiers.forEach(function(t){var cx=t[0],y=t[1],hw=t[2];c.fillStyle='#24463f';c.beginPath();c.ellipse(cx,y+8,hw,13,0,0,6.283);c.fill();\n        for(var n=0;n<70;n++){var u=R()*2-1,x=cx+u*hw*.96,yy=y-R()*14*(1-Math.abs(u)*.5);c.fillStyle=g[(R()*4)|0];c.beginPath();c.ellipse(x,yy,9+R()*8,5+R()*3,0,0,6.283);c.fill();}});\n      [[150,262],[262,208],[168,158],[230,112],[118,214]].forEach(function(p){var gr=c.createLinearGradient(p[0]-8,0,p[0]+8,0);gr.addColorStop(0,'#8a6236');gr.addColorStop(.5,'#c79a5c');gr.addColorStop(1,'#7a5430');c.fillStyle=gr;c.beginPath();c.ellipse(p[0],p[1]-14,9,15,0,0,6.283);c.fill();c.fillStyle='#6b4a2a';c.beginPath();c.ellipse(p[0],p[1]-28,5,3,0,0,6.283);c.fill();});\n    },\n    function wood(c){ \/\/ cedar log cut across: bark, sapwood, reddish heartwood and growth rings; curled shavings and a heap of sawdust\n      rr(c,150,96,210,128,20,'#6e4a30');c.fillStyle='#8a5e3c';for(var k=0;k<6;k++){c.fillRect(170+k*32,100,6,120);}\n      c.fillStyle='#5a3a24';c.beginPath();c.ellipse(150,160,72,66,0,0,6.283);c.fill();\n      c.fillStyle='#e2b47a';c.beginPath();c.ellipse(150,160,62,57,0,0,6.283);c.fill();\n      c.fillStyle='#c27a44';c.beginPath();c.ellipse(152,162,46,42,0,0,6.283);c.fill();\n      c.strokeStyle='#9a5a30';c.lineWidth=2.4;[38,30,22,14,7].forEach(function(r){c.beginPath();c.ellipse(153,163,r*1.08,r,0,0,6.283);c.stroke();});\n      c.strokeStyle='#8a4e28';c.lineWidth=2;c.beginPath();c.moveTo(153,163);c.lineTo(196,140);c.stroke();\n      var R=rng(61),cols=['#e8c08a','#d6a467','#c08a4e','#f0d3a2'];\n      c.fillStyle='#d6a467';c.beginPath();c.moveTo(150,374);c.bezierCurveTo(200,370,230,262,270,258);c.bezierCurveTo(310,262,336,366,376,374);c.closePath();c.fill();\n      for(var n=0;n<300;n++){var u=R()*2-1,h=Math.pow(1-u*u,1.3)*112,x=266+u*106,y=374-R()*h;c.fillStyle=cols[(R()*4)|0];c.beginPath();c.arc(x,y,1.6+R()*1.6,0,6.283);c.fill();}\n      c.lineCap='round';[[70,300,26,'#e2b47a'],[112,338,22,'#d6a467'],[60,352,18,'#f0d3a2'],[150,300,16,'#c08a4e']].forEach(function(s){c.strokeStyle=s[3];c.lineWidth=9;c.beginPath();c.arc(s[0],s[1],s[2],.3,4.6);c.stroke();c.lineWidth=5;c.beginPath();c.arc(s[0]+3,s[1]+2,s[2]*.5,.6,4.2);c.stroke();});\n    },\n    function oil(c){ \/\/ amber drop of cedarwood oil, a sprig of blue-green needle tufts and a cone beside its ripple\n      drop(c,200,40,320,92,'#f6dca0','#d9a14a','#9a5f22','rgba(255,246,220,.95)');\n      ripple(c,200,368,'#d9a14a');\n      function tuft(x,y,r,col){c.strokeStyle=col;c.lineWidth=3;c.lineCap='round';for(var i=0;i<16;i++){var a=-Math.PI*.95+i*Math.PI*.9\/15;c.beginPath();c.moveTo(x,y);c.lineTo(x+Math.cos(a)*r,y+Math.sin(a)*r);c.stroke();}}\n      c.strokeStyle='#6b4a2a';c.lineWidth=5;c.beginPath();c.moveTo(40,360);c.quadraticCurveTo(80,330,124,318);c.stroke();\n      tuft(66,346,24,'#3d6b63');tuft(96,330,22,'#5b8a80');tuft(124,318,20,'#3d6b63');\n      var gr=c.createLinearGradient(310,0,342,0);gr.addColorStop(0,'#8a6236');gr.addColorStop(.5,'#c79a5c');gr.addColorStop(1,'#7a5430');c.fillStyle=gr;c.beginPath();c.ellipse(326,334,15,24,0,0,6.283);c.fill();\n      c.strokeStyle='#6b4a2a';c.lineWidth=2;for(var k=0;k<4;k++){c.beginPath();c.moveTo(312,320+k*9);c.lineTo(340,320+k*9);c.stroke();}\n    }\n  ];\n  SHAPES.figue=[\n    function cactus(c){ \/\/ Opuntia ficus-indica: stacked oval pads (raquettes) with areoles, crowned with ripe figs\n      function pad(x,y,rx,ry,a,c1,c2){c.save();c.translate(x,y);c.rotate(a);var g=c.createLinearGradient(-rx,-ry,rx,ry);g.addColorStop(0,c1);g.addColorStop(1,c2);c.fillStyle=g;c.beginPath();c.ellipse(0,0,rx,ry,0,0,6.283);c.fill();\n        c.fillStyle='#e6edc4';for(var i=-2;i<=2;i++)for(var j=-3;j<=3;j++){if((i+j)%2)continue;var px=i*rx*.32,py=j*ry*.24;if(px*px\/(rx*rx)+py*py\/(ry*ry)<.72){c.beginPath();c.arc(px,py,3.2,0,6.283);c.fill();}}c.restore();}\n      function fig(x,y,a,col){c.save();c.translate(x,y);c.rotate(a);c.fillStyle=col;c.beginPath();c.ellipse(0,0,13,19,0,0,6.283);c.fill();c.fillStyle='#5a3a1e';c.beginPath();c.ellipse(0,-17,7,3,0,0,6.283);c.fill();c.fillStyle='rgba(255,220,200,.9)';c.beginPath();c.arc(-4,-4,3,0,6.283);c.fill();c.restore();}\n      pad(200,316,54,60,0,'#5f8a3a','#3f6a2a');\n      pad(138,236,46,60,-.45,'#6f9a44','#4a742e');pad(266,230,46,60,.4,'#6a9440','#456e2c');\n      pad(98,146,38,50,-.7,'#7aa64c','#507a32');pad(196,150,40,54,-.05,'#76a24a','#4d7830');pad(302,140,38,50,.6,'#7aa64c','#507a32');\n      [[70,96,-.9,'#c2185b'],[96,90,-.5,'#e0566e'],[178,94,-.2,'#d83a5e'],[208,92,.1,'#f08a3c'],[230,100,.35,'#c2185b'],[318,90,.6,'#e0566e'],[340,104,.9,'#f08a3c']].forEach(function(f){fig(f[0],f[1],f[2],f[3]);});\n    },\n    function fruit(c){ \/\/ a whole prickly pear and a halved one: magenta pulp full of seeds\n      c.save();c.translate(122,196);c.rotate(-.32);var g=c.createLinearGradient(-70,-100,70,100);g.addColorStop(0,'#f29a4a');g.addColorStop(.55,'#e0566e');g.addColorStop(1,'#a3174f');c.fillStyle=g;\n      c.beginPath();c.ellipse(0,0,66,96,0,0,6.283);c.fill();c.fillStyle='#6b4a2a';c.beginPath();c.ellipse(0,-92,20,8,0,0,6.283);c.fill();\n      c.fillStyle='#f7dcae';for(var i=0;i<14;i++){var a=i*2.4,r=.25+(i%4)*.18;c.beginPath();c.arc(Math.cos(a)*44*r*1.6,Math.sin(a)*70*r*1.4,3,0,6.283);c.fill();}c.restore();\n      c.save();c.translate(256,232);c.rotate(.12);\n      c.fillStyle='#e8743a';c.beginPath();c.ellipse(0,0,104,132,0,0,6.283);c.fill();\n      c.fillStyle='#8aa64a';c.beginPath();c.ellipse(0,0,94,122,0,0,6.283);c.fill();\n      var f=c.createRadialGradient(-20,-30,10,0,0,120);f.addColorStop(0,'#f0558c');f.addColorStop(.6,'#c2185b');f.addColorStop(1,'#8e1146');c.fillStyle=f;c.beginPath();c.ellipse(0,0,86,114,0,0,6.283);c.fill();\n      var R=rng(21);c.fillStyle='#3b2418';for(var n=0;n<70;n++){var t=R()*6.283,q=Math.sqrt(R());c.save();c.translate(Math.cos(t)*q*58,Math.sin(t)*q*80);c.rotate(R()*6.28);c.beginPath();c.ellipse(0,0,5,3.4,0,0,6.283);c.fill();c.restore();}\n      c.fillStyle='rgba(255,210,226,.9)';c.beginPath();c.ellipse(-46,-60,12,24,-.4,0,6.283);c.fill();c.restore();\n    },\n    function seeds(c){ \/\/ heap of hard, flat, light-brown prickly pear seeds\n      var R=rng(13),cols=['#d8b884','#c9a06a','#b08450','#8e6a3e'];\n      for(var n=0;n<460;n++){var u=R()*2-1,h=Math.pow(1-u*u,.8)*230,x=200+u*140,y=360-R()*h;if(R()<.06){x=70+R()*260;y=362+R()*16;}\n        c.save();c.translate(x,y);c.rotate(R()*6.28);c.fillStyle=cols[(R()*4)|0];c.beginPath();c.ellipse(0,0,7.5,5.5,0,0,6.283);c.fill();c.fillStyle='#6e4f2c';c.beginPath();c.arc(5,0,1.6,0,6.283);c.fill();c.restore();}\n      c.fillStyle='#f0dcb4';for(var m=0;m<36;m++){c.beginPath();c.ellipse(120+R()*160,220+R()*120,2.4,1.4,R()*3,0,6.283);c.fill();}\n    },\n    function oil(c){drop(c,200,40,330,92,'#f4dc7a','#cdb23a','#8a7a1e','rgba(255,248,214,.95)');ripple(c,200,372,'#cdb23a');}\n  ];\n  SHAPES.ghassoul=[\n    function atlas(c){ \/\/ Middle Atlas: stratified clay mountains cut by the Moulouya gorge, warm sun\n      c.fillStyle='#f0c27a';c.beginPath();c.arc(318,86,30,0,6.283);c.fill();\n      poly(c,[[20,250],[80,150],[130,190],[190,110],[250,170],[300,130],[380,220],[380,260],[20,260]],'#c9ad98');\n      c.save();c.beginPath();c.moveTo(20,370);c.lineTo(20,270);c.lineTo(90,190);c.lineTo(150,240);c.lineTo(178,214);c.lineTo(200,300);c.lineTo(222,214);c.lineTo(260,180);c.lineTo(320,230);c.lineTo(380,200);c.lineTo(380,370);c.closePath();c.clip();\n      var band=['#a8735a','#8a5a44','#c08f70','#6f4a3a','#b07e62','#7d5240','#c79a7c'];\n      for(var i=0;i<12;i++){c.fillStyle=band[i%band.length];c.beginPath();c.moveTo(20,180+i*17);c.bezierCurveTo(120,170+i*17,260,196+i*17,380,182+i*17);c.lineTo(380,204+i*17);c.bezierCurveTo(260,218+i*17,120,192+i*17,20,202+i*17);c.closePath();c.fill();}\n      c.restore();\n      c.fillStyle='#5f8fbf';c.beginPath();c.moveTo(196,300);c.lineTo(204,300);c.bezierCurveTo(214,330,250,350,262,372);c.lineTo(138,372);c.bezierCurveTo(150,350,186,330,196,300);c.fill();\n      c.fillStyle='#9cc3e4';c.beginPath();c.moveTo(199,312);c.bezierCurveTo(206,336,226,352,232,368);c.lineTo(212,368);c.bezierCurveTo(206,350,200,334,199,312);c.fill();\n    },\n    function slabs(c){ \/\/ raw ghassoul: stacked flat laminated brown clay plates\n      function slab(x,y,w,h,d,sk,top,side,line){c.save();c.translate(x,y);c.rotate(sk);\n        poly(c,[[0,0],[w,0],[w+d,-d*.6],[d,-d*.6]],top);poly(c,[[0,0],[w,0],[w,h],[0,h]],side);poly(c,[[w,0],[w+d,-d*.6],[w+d,h-d*.6],[w,h]],line);\n        c.strokeStyle='rgba(70,46,34,.55)';c.lineWidth=2;for(var k=1;k<4;k++){c.beginPath();c.moveTo(2,h*k\/4);c.lineTo(w-2,h*k\/4+(k%2?2:-2));c.stroke();}\n        c.restore();}\n      slab(60,300,230,48,40,.02,'#b48a70','#8a6250','#6e4c3c');\n      slab(90,248,190,44,36,-.06,'#c09a80','#946a56','#734f3f');\n      slab(120,196,150,40,32,.08,'#ab8068','#82594a','#664535');\n      slab(150,148,100,34,26,-.1,'#c7a288','#9a705b','#7a5442');\n      var R=rng(4);c.fillStyle='#8a6250';for(var n=0;n<14;n++){c.save();c.translate(60+R()*290,362+R()*14);c.rotate(R()*.8-.4);c.beginPath();c.moveTo(-9,0);c.lineTo(-3,-5);c.lineTo(8,-3);c.lineTo(10,2);c.lineTo(-2,5);c.closePath();c.fill();c.restore();}\n    },\n    function powder(c){ \/\/ heap of fine taupe ghassoul powder with a wooden scoop\n      var g=c.createLinearGradient(0,120,0,370);g.addColorStop(0,'#c49c80');g.addColorStop(1,'#8e6650');c.fillStyle=g;\n      c.beginPath();c.moveTo(40,370);c.bezierCurveTo(110,360,150,140,210,130);c.bezierCurveTo(260,140,300,350,360,370);c.closePath();c.fill();\n      var R=rng(7),cols=['#d6b398','#a37b63','#7e5b48','#b8907a'];for(var n=0;n<420;n++){var u=R()*2-1,h=Math.pow(1-u*u,1.4)*230,x=205+u*150,y=370-R()*h;c.fillStyle=cols[(R()*4)|0];c.beginPath();c.arc(x,y,1.8+R()*1.4,0,6.283);c.fill();}\n      c.save();c.translate(300,150);c.rotate(.55);rr(c,-10,-110,20,120,8,'#c8a070');c.fillStyle='#b48a5c';c.beginPath();c.ellipse(0,30,40,28,0,0,6.283);c.fill();c.fillStyle='#b8907a';c.beginPath();c.ellipse(0,24,32,18,0,0,6.283);c.fill();c.restore();\n    },\n    function tassa(c){ \/\/ engraved brass hammam bowl full of silky paste, wooden spatula lifting a ribbon\n      var g=c.createLinearGradient(50,0,350,0);g.addColorStop(0,'#a87422');g.addColorStop(.4,'#efc66a');g.addColorStop(1,'#9a661c');c.fillStyle=g;\n      c.beginPath();c.moveTo(46,220);c.lineTo(354,220);c.bezierCurveTo(346,310,280,356,200,356);c.bezierCurveTo(120,356,54,310,46,220);c.fill();\n      rr(c,150,350,100,22,8,'#a87422');\n      c.fillStyle='#7d5418';for(var i=0;i<14;i++){var a=Math.PI*(.08+i*.06),x=200-Math.cos(a)*130,y=262+Math.sin(a)*52;c.beginPath();c.arc(x,y,4.5,0,6.283);c.fill();}\n      c.strokeStyle='#7d5418';c.lineWidth=3;c.beginPath();c.moveTo(70,250);c.bezierCurveTo(130,282,270,282,330,250);c.stroke();\n      c.fillStyle='#e9bd62';c.beginPath();c.ellipse(200,220,156,34,0,0,6.283);c.fill();\n      var p=c.createLinearGradient(0,196,0,244);p.addColorStop(0,'#a8735a');p.addColorStop(1,'#7d5240');c.fillStyle=p;c.beginPath();c.ellipse(200,222,140,26,0,0,6.283);c.fill();\n      c.fillStyle='rgba(240,214,190,.9)';c.beginPath();c.ellipse(150,214,44,7,-.05,0,6.283);c.fill();\n      c.fillStyle='#8a5c46';c.beginPath();c.moveTo(232,214);c.bezierCurveTo(236,180,252,150,250,128);c.lineTo(272,128);c.bezierCurveTo(272,156,256,184,252,214);c.closePath();c.fill();\n      c.save();c.translate(262,120);c.rotate(.42);rr(c,-6,-104,12,60,6,'#b08654');rr(c,-16,-50,32,62,10,'#c8a070');c.restore();\n      c.fillStyle='#8a5c46';c.beginPath();c.ellipse(258,130,22,12,.4,0,6.283);c.fill();\n    }\n  ];\n  SHAPES.nila=[\n    function plant(c){ \/\/ indigo plant (Indigofera): woody stems, pinnate leaves of small paired oval leaflets, pink-violet pea-flower spikes, slender pods\n      c.strokeStyle='#6b4f2e';c.lineCap='round';\n      [[200,384,200,96,8],[200,340,104,170,5],[200,320,300,160,5],[200,270,138,110,4],[200,262,268,104,4],[200,226,200,70,3]].forEach(function(b){c.lineWidth=b[4];c.beginPath();c.moveTo(b[0],b[1]);c.quadraticCurveTo((b[0]+b[2])\/2+8,(b[1]+b[3])\/2,b[2],b[3]);c.stroke();});\n      function pinnate(x,y,ang,n,col1,col2){c.save();c.translate(x,y);c.rotate(ang);c.strokeStyle='#4e6b2a';c.lineWidth=2.4;c.beginPath();c.moveTo(0,0);c.lineTo(n*15+10,0);c.stroke();\n        for(var i=0;i<n;i++){var px=12+i*15;c.fillStyle=i%2?col1:col2;c.beginPath();c.ellipse(px,-8,6,10,-.35,0,6.283);c.fill();c.beginPath();c.ellipse(px,8,6,10,.35,0,6.283);c.fill();}\n        c.fillStyle=col1;c.beginPath();c.ellipse(n*15+16,0,10,6,0,0,6.283);c.fill();c.restore();}\n      var R=rng(31),G=[['#4f8a34','#3d7029'],['#5f9a3e','#477d2f'],['#6aa548','#4f8a34']];\n      [[200,300,-2.6],[200,300,-.5],[160,236,-2.3],[240,230,-.8],[130,190,-2.9],[272,180,-.2],[200,190,-1.9],[200,180,-1.2],[118,148,-2.2],[284,140,-.9],[170,130,-2.6],[232,124,-.6],[200,120,-1.57]].forEach(function(p){var g=G[(R()*3)|0];pinnate(p[0],p[1],p[2]+(R()-.5)*.2,3+((R()*3)|0),g[0],g[1]);});\n      function spike(x,y,len,ang){c.save();c.translate(x,y);c.rotate(ang);c.strokeStyle='#7a5a3a';c.lineWidth=2;c.beginPath();c.moveTo(0,0);c.lineTo(0,-len);c.stroke();\n        for(var k=0;k<7;k++){var yy=-len+k*len\/7,s=5.5-k*.3,side=k%2?1:-1;c.fillStyle=k<3?'#c45a9a':'#d97fb5';c.beginPath();c.ellipse(side*5,yy,s,s*1.2,side*.4,0,6.283);c.fill();c.fillStyle='#8e3a7a';c.beginPath();c.arc(side*5,yy+2,2,0,6.283);c.fill();}\n        c.restore();}\n      spike(104,170,48,-.5);spike(300,160,46,.5);spike(200,74,44,0);spike(138,110,40,-.3);spike(268,104,40,.35);\n      c.strokeStyle='#8a6a3a';c.lineWidth=4;[[150,262,120,300],[256,250,290,286],[176,318,146,350]].forEach(function(p){c.beginPath();c.moveTo(p[0],p[1]);c.quadraticCurveTo(p[2]+12,(p[1]+p[3])\/2,p[2],p[3]);c.stroke();});\n    },\n    function vat(c){ \/\/ fermentation: terracotta vat of deep-blue indigo bath with coppery bloom (fleur\u00e9e), floating leaves, wooden stirring paddle\n      var g=c.createLinearGradient(60,0,340,0);g.addColorStop(0,'#9a4f2a');g.addColorStop(.45,'#d0784a');g.addColorStop(1,'#8a4424');c.fillStyle=g;\n      c.beginPath();c.moveTo(70,170);c.bezierCurveTo(40,250,70,350,140,372);c.lineTo(260,372);c.bezierCurveTo(330,350,360,250,330,170);c.closePath();c.fill();\n      c.strokeStyle='#7a3a1c';c.lineWidth=4;[230,290,340].forEach(function(y,i){c.beginPath();c.moveTo(62+i*8,y);c.bezierCurveTo(140,y+16,260,y+16,338-i*8,y);c.stroke();});\n      c.fillStyle='#b8643a';c.beginPath();c.ellipse(200,170,140,34,0,0,6.283);c.fill();\n      var b=c.createRadialGradient(180,166,10,200,170,130);b.addColorStop(0,'#2c4fb0');b.addColorStop(.6,'#1d3486');b.addColorStop(1,'#142463');c.fillStyle=b;c.beginPath();c.ellipse(200,172,124,26,0,0,6.283);c.fill();\n      var R=rng(12);for(var n=0;n<40;n++){var a=R()*6.283,r=Math.sqrt(R()),x=196+Math.cos(a)*r*60,y=170+Math.sin(a)*r*12;c.fillStyle=R()<.5?'#b07a4a':'#8a6a9e';c.beginPath();c.arc(x,y,3+R()*4,0,6.283);c.fill();}\n      c.fillStyle='rgba(205,150,90,.95)';c.beginPath();c.ellipse(196,170,34,7,0,0,6.283);c.fill();\n      leaf(c,110,176,30,8,-.2,'#3f7a2e');leaf(c,268,178,28,8,3.3,'#4f8a34');leaf(c,300,166,22,7,2.6,'#3f7a2e');\n      c.save();c.translate(256,150);c.rotate(.5);rr(c,-7,-138,14,138,6,'#c8a070');rr(c,-22,-6,44,40,10,'#b08654');c.restore();\n      c.fillStyle='#1d3486';c.beginPath();c.moveTo(322,40);c.bezierCurveTo(326,52,330,58,330,64);c.bezierCurveTo(330,72,314,72,314,64);c.bezierCurveTo(314,58,318,52,322,40);c.fill();\n    },\n    function nila(c){ \/\/ nila: rough indigo rock-like lumps beside a heap of fine deep-blue powder\n      var g=c.createLinearGradient(0,170,0,372);g.addColorStop(0,'#3d5fc8');g.addColorStop(1,'#1c2f80');c.fillStyle=g;\n      c.beginPath();c.moveTo(150,372);c.bezierCurveTo(200,362,236,190,284,178);c.bezierCurveTo(326,190,350,352,380,370);c.closePath();c.fill();\n      var R=rng(9),cols=['#5a7ad8','#2a44a8','#1a2a70','#3f5fc4','#7f98e6'];for(var n=0;n<300;n++){var u=R()*2-1,h=Math.pow(1-u*u,1.4)*186,x=272+u*104,y=370-R()*h;c.fillStyle=cols[(R()*5)|0];c.beginPath();c.arc(x,y,1.6+R()*1.6,0,6.283);c.fill();}\n      function lump(x,y,s,ang,top,side,dark){c.save();c.translate(x,y);c.rotate(ang);\n        poly(c,[[-s,-s*.2],[-s*.5,-s*.85],[s*.35,-s*.95],[s,-s*.3],[s*.8,s*.5],[-s*.2,s*.75],[-s*.9,s*.45]],side);\n        poly(c,[[-s*.5,-s*.85],[s*.35,-s*.95],[s,-s*.3],[s*.1,-s*.15],[-s,-s*.2]],top);\n        poly(c,[[s*.1,-s*.15],[s,-s*.3],[s*.8,s*.5],[-s*.2,s*.75]],dark);\n        c.fillStyle='rgba(170,190,245,.8)';c.beginPath();c.arc(-s*.2,-s*.55,s*.12,0,6.283);c.fill();c.restore();}\n      lump(96,300,56,.1,'#4b6cd0','#2b46a6','#1a2c74');\n      lump(170,236,40,-.3,'#5576d6','#3150b0','#1d3080');\n      lump(66,200,32,.4,'#4565cc','#2a43a2','#192a6e');\n      lump(190,330,30,.7,'#5070d2','#2e4aaa','#1b2e78');\n      lump(130,150,24,-.5,'#5a7ad8','#3554b4','#1f3384');\n      c.fillStyle='#2a44a8';for(var k=0;k<16;k++){c.beginPath();c.arc(40+R()*200,362+R()*12,2+R()*3,0,6.283);c.fill();}\n    },\n    function ritual(c){ \/\/ hammam ritual: terracotta bowl of amber savon noir marbled with blue nila, kessa glove beside\n      var g=c.createLinearGradient(40,0,300,0);g.addColorStop(0,'#a8522c');g.addColorStop(.45,'#d9804e');g.addColorStop(1,'#984624');c.fillStyle=g;\n      c.beginPath();c.moveTo(36,200);c.lineTo(300,200);c.bezierCurveTo(294,290,236,340,168,340);c.bezierCurveTo(100,340,42,290,36,200);c.fill();\n      rr(c,118,334,100,20,8,'#984624');\n      c.fillStyle='#f2e3c8';for(var i=0;i<9;i++){var x=62+i*27;poly(c,[[x,250],[x+9,240],[x+18,250],[x+9,260]],'#f2e3c8');}\n      c.fillStyle='#c46a3e';c.beginPath();c.ellipse(168,200,132,30,0,0,6.283);c.fill();\n      var s=c.createLinearGradient(0,180,0,226);s.addColorStop(0,'#7a4a18');s.addColorStop(1,'#4e2e0e');c.fillStyle=s;c.beginPath();c.ellipse(168,202,118,23,0,0,6.283);c.fill();\n      c.save();c.beginPath();c.ellipse(168,202,118,23,0,0,6.283);c.clip();\n      c.strokeStyle='#2c4fb8';c.lineWidth=14;c.lineCap='round';c.beginPath();c.moveTo(80,204);c.bezierCurveTo(120,186,150,224,190,200);c.bezierCurveTo(222,182,246,214,268,198);c.stroke();\n      c.strokeStyle='#5f80e0';c.lineWidth=6;c.beginPath();c.moveTo(104,212);c.bezierCurveTo(140,200,170,220,206,208);c.stroke();\n      c.fillStyle='#1f378e';c.beginPath();c.arc(150,196,8,0,6.283);c.fill();c.restore();\n      c.fillStyle='rgba(255,230,190,.6)';c.beginPath();c.ellipse(120,196,26,4,-.05,0,6.283);c.fill();\n      c.save();c.translate(312,250);c.rotate(-.35);rr(c,-38,-70,76,140,22,'#5a5a52');rr(c,-38,52,76,22,6,'#7a3a2a');\n      c.strokeStyle='#44443e';c.lineWidth=2;for(var r=-60;r<48;r+=9){c.beginPath();c.moveTo(-34,r);c.lineTo(34,r+4);c.stroke();}\n      rr(c,-46,-44,18,40,9,'#5a5a52');c.restore();\n    }\n  ];\n  SHAPES.oranger=[\n    function branch(c){ \/\/ bitter orange branch: glossy dark leaves, clusters of white blossoms, one bitter orange\n      function bl(x,y,r,a){c.save();c.translate(x,y);c.rotate(a);for(var i=0;i<5;i++){c.save();c.rotate(i*1.2566);var g=c.createLinearGradient(0,0,0,-r);g.addColorStop(0,'#e3cd9c');g.addColorStop(1,'#f6ead0');c.fillStyle=g;c.beginPath();c.moveTo(0,0);c.bezierCurveTo(r*.55,-r*.3,r*.45,-r,0,-r);c.bezierCurveTo(-r*.45,-r,-r*.55,-r*.3,0,0);c.fill();c.strokeStyle='#b89a62';c.lineWidth=1.6;c.stroke();c.restore();}c.fillStyle='#e9b92c';c.beginPath();c.arc(0,0,r*.28,0,6.283);c.fill();c.fillStyle='#8fae3c';c.beginPath();c.arc(0,0,r*.12,0,6.283);c.fill();c.restore();}\n      function bud(x,y,a){c.save();c.translate(x,y);c.rotate(a);c.fillStyle='#efdfbc';c.beginPath();c.ellipse(0,0,7,13,0,0,6.283);c.fill();c.strokeStyle='#b89a62';c.lineWidth=1.6;c.stroke();c.fillStyle='#6f8a3a';c.beginPath();c.arc(0,10,5,0,6.283);c.fill();c.restore();}\n      c.strokeStyle='#6a4a2b';c.lineCap='round';c.lineWidth=10;c.beginPath();c.moveTo(34,370);c.bezierCurveTo(120,300,220,190,360,60);c.stroke();\n      c.lineWidth=6;[[110,306,70,210],[190,232,250,300],[250,176,206,92],[300,118,350,170]].forEach(function(b){c.beginPath();c.moveTo(b[0],b[1]);c.quadraticCurveTo((b[0]+b[2])\/2+10,(b[1]+b[3])\/2-10,b[2],b[3]);c.stroke();});\n      var g=['#2f5a22','#3d6e2a','#4f8233'];\n      [[74,344,-.6],[96,318,-2.4],[150,272,-.4],[150,272,-2.7],[214,214,-.2],[214,214,-2.9],[282,150,-.1],[282,150,-2.6],[70,210,-2.2],[250,300,.6],[206,92,-1.9],[350,170,.7],[330,90,-.5]].forEach(function(l,i){leaf(c,l[0],l[1],74,24,l[2],g[i%3]);});\n      var o=c.createRadialGradient(236,304,6,250,318,46);o.addColorStop(0,'#ffc067');o.addColorStop(.6,'#ec8a1e');o.addColorStop(1,'#b85d0f');c.fillStyle=o;c.beginPath();c.arc(252,320,44,0,6.283);c.fill();\n      c.fillStyle='rgba(255,235,200,.9)';c.beginPath();c.ellipse(236,302,9,14,-.5,0,6.283);c.fill();c.fillStyle='#4f8233';c.beginPath();c.arc(252,278,6,0,6.283);c.fill();\n      [[70,196,22,.2],[44,232,18,1],[206,74,22,.5],[234,62,17,1.4],[352,184,20,.9],[330,206,16,.1],[176,170,18,.7]].forEach(function(b){bl(b[0],b[1],b[2],b[3]);});\n      [[92,186,.4],[186,96,-.3],[372,160,.8],[160,190,.2]].forEach(function(b){bud(b[0],b[1],b[2]);});\n    },\n    function flower(c){ \/\/ one open orange blossom: 5 thick waxy petals, ring of yellow stamens, two buds and leaves\n      leaf(c,200,210,170,46,-2.55,'#3d6e2a');leaf(c,200,210,160,44,-.45,'#2f5a22');leaf(c,200,210,150,40,1.6,'#4f8233');\n      [[96,92,-.5],[316,96,.5]].forEach(function(b){c.save();c.translate(b[0],b[1]);c.rotate(b[2]);c.fillStyle='#efdfbc';c.beginPath();c.ellipse(0,0,18,32,0,0,6.283);c.fill();c.strokeStyle='#b89a62';c.lineWidth=3;c.stroke();c.fillStyle='#6f8a3a';c.beginPath();c.ellipse(0,28,13,9,0,0,6.283);c.fill();c.restore();});\n      for(var i=0;i<5;i++){c.save();c.translate(200,200);c.rotate(-Math.PI\/2+i*1.2566);var g=c.createLinearGradient(0,0,150,0);g.addColorStop(0,'#d2b273');g.addColorStop(.4,'#e6d09e');g.addColorStop(1,'#efe0bb');c.fillStyle=g;c.beginPath();c.moveTo(0,0);c.bezierCurveTo(40,-58,130,-50,150,-6);c.quadraticCurveTo(156,6,146,14);c.bezierCurveTo(120,52,40,56,0,0);c.fill();c.strokeStyle='#b89a62';c.lineWidth=3;c.stroke();c.strokeStyle='#e2cfa2';c.lineWidth=2.5;c.beginPath();c.moveTo(20,0);c.quadraticCurveTo(80,-6,132,0);c.stroke();c.restore();}\n      c.strokeStyle='#f0dc8a';c.lineWidth=3;for(var s=0;s<16;s++){var a=s\/16*6.283;c.beginPath();c.moveTo(200,200);c.lineTo(200+Math.cos(a)*44,200+Math.sin(a)*44);c.stroke();}\n      c.fillStyle='#d99a14';for(var t=0;t<16;t++){var b=t\/16*6.283;c.beginPath();c.ellipse(200+Math.cos(b)*46,200+Math.sin(b)*46,5,8,b,0,6.283);c.fill();}\n      c.fillStyle='#8fae3c';c.beginPath();c.arc(200,200,17,0,6.283);c.fill();c.fillStyle='#c8d66a';c.beginPath();c.arc(200,200,8,0,6.283);c.fill();\n    },\n    function still(c){ \/\/ copper alembic on a brazier, swan neck to a cooling coil, dripping into a glass flask\n      rr(c,52,322,140,50,10,'#5b4a42');\n      var g=c.createRadialGradient(100,200,10,122,240,96);g.addColorStop(0,'#f2b27a');g.addColorStop(.55,'#c8692e');g.addColorStop(1,'#8a4219');c.fillStyle=g;c.beginPath();c.ellipse(122,248,82,74,0,0,6.283);c.fill();\n      c.fillStyle='#a8521f';rr(c,70,170,104,18,8,'#a8521f');c.beginPath();c.moveTo(80,172);c.bezierCurveTo(80,90,164,90,164,172);c.fill();\n      c.fillStyle='rgba(255,226,190,.9)';c.beginPath();c.ellipse(92,226,11,28,-.3,0,6.283);c.fill();c.fillStyle='#f08a2c';[[86,326],[122,324],[158,326]].forEach(function(p){c.beginPath();c.moveTo(p[0]-15,p[1]);c.quadraticCurveTo(p[0]-4,p[1]-22,p[0],p[1]-36);c.quadraticCurveTo(p[0]+6,p[1]-20,p[0]+15,p[1]);c.fill();});\n      c.strokeStyle='#b85d22';c.lineWidth=14;c.lineCap='round';c.beginPath();c.moveTo(150,112);c.bezierCurveTo(210,70,262,80,280,138);c.stroke();\n      var cg=c.createLinearGradient(240,0,340,0);cg.addColorStop(0,'#9aa7b0');cg.addColorStop(.5,'#d7dee3');cg.addColorStop(1,'#8b98a2');c.fillStyle=cg;c.beginPath();c.roundRect(240,130,92,120,14);c.fill();\n      c.strokeStyle='#b85d22';c.lineWidth=7;for(var k=0;k<4;k++){c.beginPath();c.ellipse(286,150+k*26,38,9,0,0,Math.PI);c.stroke();}\n      c.lineWidth=8;c.beginPath();c.moveTo(286,250);c.lineTo(286,272);c.stroke();\n      c.fillStyle='#8fbbe0';c.beginPath();c.ellipse(286,288,5,8,0,0,6.283);c.fill();\n      c.fillStyle='rgba(206,226,240,.95)';c.beginPath();c.moveTo(270,300);c.lineTo(302,300);c.lineTo(302,318);c.lineTo(344,374);c.lineTo(228,374);c.lineTo(270,318);c.closePath();c.fill();\n      c.fillStyle='#a9cdea';c.beginPath();c.moveTo(252,344);c.lineTo(320,344);c.lineTo(344,374);c.lineTo(228,374);c.closePath();c.fill();\n      c.strokeStyle='#7e9db5';c.lineWidth=3;c.beginPath();c.moveTo(270,300);c.lineTo(270,318);c.lineTo(228,374);c.lineTo(344,374);c.lineTo(302,318);c.lineTo(302,300);c.stroke();\n      [[196,346],[214,362]].forEach(function(p,i){c.save();c.translate(p[0],p[1]);for(var j=0;j<5;j++){c.save();c.rotate(j*1.2566+i);c.fillStyle='#f1e3c2';c.beginPath();c.ellipse(0,-9,5,9,0,0,6.283);c.fill();c.strokeStyle='#b89a62';c.lineWidth=1.5;c.stroke();c.restore();}c.fillStyle='#e0b02a';c.beginPath();c.arc(0,0,4,0,6.283);c.fill();c.restore();});\n    },\n    function mrach(c){ \/\/ Moroccan silver sprinkler (mrach) scattering drops of orange flower water\n      leaf(c,96,356,50,16,2.6,'#3d6e2a');leaf(c,306,358,46,14,.4,'#2f5a22');\n      var sg=c.createLinearGradient(130,0,270,0);sg.addColorStop(0,'#5f6a76');sg.addColorStop(.4,'#c3ccd4');sg.addColorStop(.7,'#929eaa');sg.addColorStop(1,'#535e6a');c.fillStyle=sg;\n      c.beginPath();c.moveTo(150,372);c.lineTo(250,372);c.lineTo(234,350);c.lineTo(166,350);c.closePath();c.fill();\n      c.beginPath();c.moveTo(186,350);c.bezierCurveTo(120,340,112,250,170,226);c.lineTo(230,226);c.bezierCurveTo(288,250,280,340,214,350);c.closePath();c.fill();\n      c.beginPath();c.moveTo(184,228);c.lineTo(192,96);c.lineTo(208,96);c.lineTo(216,228);c.closePath();c.fill();\n      c.beginPath();c.ellipse(200,96,16,8,0,0,6.283);c.fill();c.beginPath();c.moveTo(194,96);c.lineTo(197,62);c.lineTo(203,62);c.lineTo(206,96);c.closePath();c.fill();\n      c.beginPath();c.arc(200,58,9,0,6.283);c.fill();\n      c.strokeStyle='#434c56';c.lineWidth=3;c.beginPath();c.ellipse(200,288,58,14,0,0,Math.PI);c.stroke();c.beginPath();c.ellipse(200,262,50,10,0,0,Math.PI);c.stroke();\n      c.fillStyle='#434c56';for(var k=0;k<7;k++){var x=160+k*13.3;c.beginPath();c.moveTo(x,300);c.lineTo(x+6,312);c.lineTo(x,324);c.lineTo(x-6,312);c.closePath();c.fill();}\n      c.fillStyle='rgba(255,255,255,.95)';c.fillRect(160,250,8,70);c.fillRect(194,120,4,96);\n      [[150,30,.9],[120,52,.7],[250,30,.9],[280,52,.7],[200,18,1],[100,84,.6],[300,84,.6],[170,40,.8],[230,40,.8]].forEach(function(d){drop(c,d[0],d[1]-14*d[2],d[1]+14*d[2],8*d[2],'#a9cdea','#5f9bd0','#3d78b3','rgba(255,255,255,.9)');});\n      [[96,356,18,.3],[306,358,16,1.1]].forEach(function(b){c.save();c.translate(b[0],b[1]);c.rotate(b[3]);for(var j=0;j<5;j++){c.save();c.rotate(j*1.2566);c.fillStyle='#f1e3c2';c.beginPath();c.ellipse(0,-b[2]*.55,b[2]*.32,b[2]*.55,0,0,6.283);c.fill();c.strokeStyle='#b89a62';c.lineWidth=1.6;c.stroke();c.restore();}c.fillStyle='#e0b02a';c.beginPath();c.arc(0,0,b[2]*.25,0,6.283);c.fill();c.restore();});\n    }\n  ];\n  SHAPES.rose=[\n    function bush(c){ \/\/ Damask rosebush: woody stems, dense serrated foliage, pink blooms and buds\n      c.strokeStyle='#5e4a2c';c.lineCap='round';[[200,388,200,240,9],[200,350,130,200,6],[200,330,276,190,6],[196,290,160,150,5],[204,280,246,140,5],[200,250,200,120,5]].forEach(function(b){c.lineWidth=b[4];c.beginPath();c.moveTo(b[0],b[1]);c.quadraticCurveTo((b[0]+b[2])\/2-10,(b[1]+b[3])\/2,b[2],b[3]);c.stroke();});\n      var R=rng(21),g=['#3f6b2c','#4f7d34','#628f3e','#2f5a26'];\n      for(var n=0;n<230;n++){var a=R()*6.283,r=Math.sqrt(R()),x=200+Math.cos(a)*r*158,y=196+Math.sin(a)*r*104;leaf(c,x,y,24,9,R()*6.28,g[(R()*4)|0]);}\n      function bloom(x,y,s){var p=['#9e2f4f','#c4566f','#e07f98','#f4b3c3'];for(var k=0;k<4;k++){var rad=s*(1-k*.22);c.fillStyle=p[k];for(var j=0;j<6;j++){var t=j*1.047+k*.5;c.beginPath();c.ellipse(x+Math.cos(t)*rad*.35,y+Math.sin(t)*rad*.35,rad*.62,rad*.48,t,0,6.283);c.fill();}}c.fillStyle='#8a2443';c.beginPath();c.arc(x,y,s*.16,0,6.283);c.fill();}\n      [[128,160,30],[200,118,34],[278,150,30],[160,226,26],[250,232,28],[96,226,22],[318,214,22]].forEach(function(b){bloom(b[0],b[1],b[2]);});\n      [[150,112],[244,100],[330,170],[70,180]].forEach(function(p){almond(c,p[0],p[1],9,15,0,'#b8405e');leaf(c,p[0],p[1]+12,16,6,1.2,'#4f7d34');leaf(c,p[0],p[1]+12,16,6,1.9,'#4f7d34');});\n    },\n    function bloom(c){ \/\/ one open Damask rose: layered spiralling petals, sepals, stem and two leaves\n      c.strokeStyle='#4f7d34';c.lineWidth=9;c.lineCap='round';c.beginPath();c.moveTo(200,388);c.quadraticCurveTo(212,320,200,262);c.stroke();\n      leaf(c,204,340,92,30,-.55,'#4f7d34');leaf(c,200,312,86,28,-2.6,'#628f3e');\n      c.fillStyle='#3f6b2c';for(var s=0;s<5;s++){var a=Math.PI\/2+(s-2)*.42;leaf(c,200,250,70,12,a,'#3f6b2c');}\n      var rings=[[118,'#a83656',7],[96,'#c4566f',7],[74,'#d96a86',6],[54,'#e98aa2',5],[36,'#f4b3c3',5]];\n      rings.forEach(function(r,k){c.fillStyle=r[1];for(var j=0;j<r[2];j++){var t=j*6.283\/r[2]+k*.45;c.beginPath();c.ellipse(200+Math.cos(t)*r[0]*.42,170+Math.sin(t)*r[0]*.38,r[0]*.62,r[0]*.46,t,0,6.283);c.fill();}});\n      c.strokeStyle='#8a2443';c.lineWidth=4;c.beginPath();for(var i=0;i<60;i++){var th=i*.32,rr2=4+i*.55;var x=200+Math.cos(th)*rr2,y=170+Math.sin(th)*rr2*.9;if(i)c.lineTo(x,y);else c.moveTo(x,y);}c.stroke();\n      c.fillStyle='rgba(255,232,238,.95)';c.beginPath();c.ellipse(158,122,22,9,-.5,0,6.283);c.fill();\n    },\n    function still(c){ \/\/ copper alembic heaped with petals, swan-neck pipe, condenser coil, flask collecting rose water\n      c.fillStyle='#6b3f22';c.fillRect(70,350,170,18);rr(c,84,330,142,24,6,'#2f2a2a');\n      c.fillStyle='#f08a3a';[[110,336],[150,332],[190,336]].forEach(function(p){c.beginPath();c.moveTo(p[0]-12,348);c.quadraticCurveTo(p[0],p[1]-26,p[0]+12,348);c.fill();});\n      var g=c.createLinearGradient(60,0,250,0);g.addColorStop(0,'#8a4a22');g.addColorStop(.4,'#e09a5c');g.addColorStop(.7,'#c4733a');g.addColorStop(1,'#7a3f1c');c.fillStyle=g;\n      c.beginPath();c.moveTo(78,200);c.bezierCurveTo(60,300,96,334,155,334);c.bezierCurveTo(214,334,250,300,232,200);c.closePath();c.fill();\n      c.fillStyle='#b8652f';c.fillRect(74,192,162,14);\n      var R=rng(31),pc=['#c4566f','#e07f98','#a83656','#f4b3c3'];for(var n=0;n<46;n++){var x=88+R()*134,y=176+R()*22;almond(c,x,y,7,12,R()*6.28,pc[(R()*4)|0]);}\n      c.fillStyle=g;c.beginPath();c.moveTo(110,180);c.bezierCurveTo(110,120,200,120,200,180);c.closePath();c.fill();\n      c.fillStyle='#d98a4a';c.beginPath();c.ellipse(155,128,20,10,0,0,6.283);c.fill();\n      c.strokeStyle='#c4733a';c.lineWidth=12;c.lineCap='round';c.beginPath();c.moveTo(160,124);c.quadraticCurveTo(220,60,300,120);c.stroke();\n      rr(c,276,118,56,120,10,'#a95a2c');c.strokeStyle='#f0b27a';c.lineWidth=6;for(var k=0;k<5;k++){c.beginPath();c.moveTo(280,132+k*22);c.lineTo(328,142+k*22);c.stroke();}\n      c.strokeStyle='#c4733a';c.lineWidth=8;c.beginPath();c.moveTo(304,238);c.lineTo(304,272);c.stroke();\n      c.fillStyle='#d6e4ef';c.beginPath();c.moveTo(292,276);c.lineTo(316,276);c.lineTo(316,300);c.bezierCurveTo(362,316,362,378,304,378);c.bezierCurveTo(246,378,246,316,292,300);c.closePath();c.fill();\n      c.fillStyle='#f4b3c3';c.beginPath();c.moveTo(262,336);c.bezierCurveTo(262,380,346,380,346,336);c.closePath();c.fill();\n      c.fillStyle='#e98aa2';c.beginPath();c.arc(304,286,5,0,6.283);c.fill();\n    },\n    function water(c){ \/\/ drop of clear rose water with a petal floating on its ripple\n      drop(c,200,40,320,92,'#fde3ea','#f0a3b5','#c4566f','rgba(255,255,255,.95)');\n      ripple(c,200,368,'#e07f98');\n      almond(c,118,350,10,18,1.2,'#c4566f');almond(c,288,360,9,16,-1,'#e07f98');\n    }\n  ];\n  SHAPES.sidr=[\n    function shrub(c){ \/\/ wild jujube (sedra): dense thorny mound of zigzag branches, small oval leaves and red-brown fruits, on arid sandy ground under a warm sun\n      c.fillStyle='#f0c27a';c.beginPath();c.arc(320,78,28,0,6.283);c.fill();\n      var gr=c.createLinearGradient(0,300,0,380);gr.addColorStop(0,'#e2bf86');gr.addColorStop(1,'#c99a5c');c.fillStyle=gr;\n      c.beginPath();c.moveTo(20,380);c.lineTo(20,322);c.bezierCurveTo(90,300,150,292,200,290);c.bezierCurveTo(260,292,320,302,380,318);c.lineTo(380,380);c.closePath();c.fill();\n      c.fillStyle='#b8874c';c.beginPath();c.ellipse(200,312,150,22,0,0,6.283);c.fill();\n      var R=rng(11);c.strokeStyle='#6b5236';c.lineCap='round';c.lineJoin='round';\n      for(var b=0;b<16;b++){var x=200+(R()-.5)*60,y=308,a=-Math.PI\/2+(R()-.5)*2.4,len=70+R()*90;c.lineWidth=3+R()*3;c.beginPath();c.moveTo(x,y);\n        for(var s=0;s<5;s++){a+=(s%2?.5:-.5);x+=Math.cos(a)*len\/5;y+=Math.sin(a)*len\/5;c.lineTo(x,y);}c.stroke();}\n      var g=['#5f7a2e','#7a9440','#4d6a26','#8fa852'];\n      for(var n=0;n<300;n++){var t=R()*6.283,r=Math.sqrt(R()),lx=200+Math.cos(t)*r*150,ly=214+Math.sin(t)*r*92;if(ly>300)continue;almond(c,lx,ly,5,9,R()*6.28,g[(R()*4)|0]);}\n      c.strokeStyle='#8a6a44';c.lineWidth=2;for(var k=0;k<40;k++){var tx=200+(R()-.5)*290,ty=150+R()*150,ta=R()*6.28;c.beginPath();c.moveTo(tx,ty);c.lineTo(tx+Math.cos(ta)*9,ty+Math.sin(ta)*9);c.stroke();}\n      var f=['#a8442a','#c4612e','#8a3a24'];for(var m=0;m<16;m++){var t2=R()*6.283,r2=Math.sqrt(R())*.9,fx=200+Math.cos(t2)*r2*140,fy=210+Math.sin(t2)*r2*80;c.fillStyle=f[m%3];c.beginPath();c.arc(fx,fy,6,0,6.283);c.fill();c.fillStyle='rgba(255,220,190,.85)';c.beginPath();c.arc(fx-2,fy-2,1.8,0,6.283);c.fill();}\n    },\n    function branch(c){ \/\/ jujube twig: zigzag stem, paired thorns at each node (one straight, one hooked), alternate oval three-veined leaves, two small fruits\n      var pts=[[44,356],[110,300],[100,236],[172,190],[166,128],[246,92],[246,44],[330,30]];\n      c.strokeStyle='#7a5a3a';c.lineWidth=9;c.lineCap='round';c.lineJoin='round';c.beginPath();c.moveTo(pts[0][0],pts[0][1]);for(var i=1;i<pts.length;i++)c.lineTo(pts[i][0],pts[i][1]);c.stroke();\n      function vleaf(x,y,ang,L,W,col){c.save();c.translate(x,y);c.rotate(ang);c.fillStyle='#5f7a2e';c.fillRect(0,-2,14,4);c.translate(14,0);\n        c.fillStyle=col;c.beginPath();c.ellipse(L\/2,0,L\/2,W\/2,0,0,6.283);c.fill();\n        c.strokeStyle='rgba(225,236,190,.85)';c.lineWidth=2.2;c.beginPath();c.moveTo(2,0);c.lineTo(L-6,0);c.moveTo(4,0);c.quadraticCurveTo(L*.45,-W*.34,L-12,-W*.12);c.moveTo(4,0);c.quadraticCurveTo(L*.45,W*.34,L-12,W*.12);c.stroke();c.restore();}\n      function thorns(x,y,a){c.fillStyle='#a8875a';c.save();c.translate(x,y);c.rotate(a);c.beginPath();c.moveTo(-4,0);c.lineTo(4,0);c.lineTo(0,-32);c.closePath();c.fill();\n        c.beginPath();c.moveTo(-3,4);c.lineTo(3,4);c.quadraticCurveTo(14,18,4,24);c.quadraticCurveTo(8,14,-3,4);c.fill();c.restore();}\n      var cols=['#5f7a2e','#7a9440','#4d6a26','#6f8a36'];\n      [[110,300,-2.5,0],[100,236,.1,1],[172,190,-2.6,2],[166,128,.2,3],[246,92,-2.4,0],[246,44,.4,1]].forEach(function(n,k){thorns(n[0],n[1],k%2?.8:-.8);vleaf(n[0],n[1],n[2],78,48,cols[n[3]]);});\n      vleaf(77,328,-.9,64,40,'#7a9440');vleaf(206,110,-1.2,60,38,'#4d6a26');vleaf(290,40,.9,58,36,'#6f8a36');\n      [[136,276],[150,262]].forEach(function(p,k){c.strokeStyle='#5f7a2e';c.lineWidth=2;c.beginPath();c.moveTo(p[0]-20,p[1]-14);c.lineTo(p[0],p[1]);c.stroke();c.fillStyle=k?'#c4612e':'#a8442a';c.beginPath();c.arc(p[0],p[1],11,0,6.283);c.fill();c.fillStyle='rgba(255,220,190,.85)';c.beginPath();c.arc(p[0]-3,p[1]-4,3,0,6.283);c.fill();});\n    },\n    function powder(c){ \/\/ heap of fine olive-green sidr powder, dried leaves and a stone mortar with pestle\n      var g=c.createLinearGradient(0,140,0,370);g.addColorStop(0,'#a9b86a');g.addColorStop(1,'#6f7f3a');c.fillStyle=g;\n      c.beginPath();c.moveTo(30,370);c.bezierCurveTo(90,362,130,170,186,160);c.bezierCurveTo(236,170,270,352,320,370);c.closePath();c.fill();\n      var R=rng(5),cols=['#b9c67e','#8a9a4a','#5e6c30','#9fae60'];for(var n=0;n<380;n++){var u=R()*2-1,h=Math.pow(1-u*u,1.4)*200,x=178+u*140,y=370-R()*h;c.fillStyle=cols[(R()*4)|0];c.beginPath();c.arc(x,y,1.8+R()*1.3,0,6.283);c.fill();}\n      [[60,330,.4,'#8a8a3e'],[96,354,-.6,'#7a7a34'],[300,356,2.6,'#8f9244']].forEach(function(l){almond(c,l[0],l[1],10,18,l[2],l[3]);});\n      var m=c.createLinearGradient(260,0,370,0);m.addColorStop(0,'#8e8a80');m.addColorStop(.5,'#c9c4b8');m.addColorStop(1,'#7c776e');c.fillStyle=m;\n      c.beginPath();c.moveTo(262,262);c.lineTo(370,262);c.bezierCurveTo(366,320,348,344,316,344);c.bezierCurveTo(284,344,266,320,262,262);c.fill();\n      rr(c,288,340,56,14,5,'#7c776e');\n      c.fillStyle='#a8a296';c.beginPath();c.ellipse(316,262,54,13,0,0,6.283);c.fill();c.fillStyle='#7f8f40';c.beginPath();c.ellipse(316,264,44,8,0,0,6.283);c.fill();\n      c.save();c.translate(318,200);c.rotate(.45);rr(c,-11,-70,22,120,11,'#b3ad9f');c.fillStyle='#8e8a80';c.beginPath();c.ellipse(0,50,14,9,0,0,6.283);c.fill();c.restore();\n    },\n    function bowl(c){ \/\/ celadon ceramic bowl of smooth green sidr paste crowned with a light foam (saponins), a wooden spoon and a leaf\n      var g=c.createLinearGradient(50,0,350,0);g.addColorStop(0,'#7fa39a');g.addColorStop(.45,'#cfe2da');g.addColorStop(1,'#6e9389');c.fillStyle=g;\n      c.beginPath();c.moveTo(48,226);c.lineTo(352,226);c.bezierCurveTo(344,312,280,356,200,356);c.bezierCurveTo(120,356,56,312,48,226);c.fill();\n      rr(c,148,350,104,20,8,'#6e9389');\n      c.strokeStyle='#4f7a70';c.lineWidth=4;c.beginPath();c.moveTo(66,258);c.bezierCurveTo(130,290,270,290,334,258);c.stroke();\n      c.fillStyle='#e4efe9';c.beginPath();c.ellipse(200,226,154,32,0,0,6.283);c.fill();\n      var p=c.createLinearGradient(0,204,0,250);p.addColorStop(0,'#8a9a4a');p.addColorStop(1,'#5e6c30');c.fillStyle=p;c.beginPath();c.ellipse(200,228,138,24,0,0,6.283);c.fill();\n      var R=rng(9);for(var n=0;n<46;n++){var t=R()*6.283,r=Math.sqrt(R()),x=176+Math.cos(t)*r*86,y=222+Math.sin(t)*r*14,s=4+R()*9;c.fillStyle='#f3f6e6';c.beginPath();c.arc(x,y-s*.4,s,0,6.283);c.fill();c.strokeStyle='#c9d4a8';c.lineWidth=1.5;c.stroke();}\n      for(var k=0;k<7;k++){var bx=150+R()*90,by=150+R()*50,bs=5+R()*7;c.fillStyle='rgba(243,246,230,.95)';c.beginPath();c.arc(bx,by,bs,0,6.283);c.fill();c.strokeStyle='#b9c67e';c.lineWidth=2;c.stroke();}\n      c.save();c.translate(300,150);c.rotate(.5);rr(c,-7,-100,14,110,7,'#c8a070');c.fillStyle='#b48a5c';c.beginPath();c.ellipse(0,22,22,32,0,0,6.283);c.fill();c.fillStyle='#6f7f3a';c.beginPath();c.ellipse(0,26,16,22,0,0,6.283);c.fill();c.restore();\n      leaf(c,70,372,70,22,-.25,'#5f7a2e');leaf(c,330,376,60,18,3.3,'#7a9440');\n    }\n  ];\nSHAPES.thym=[\n    function tuft(c){ \/\/ wild thyme in flower: a low woody cushion of thin upright stems, tiny grey-green leaves and pale pink-lilac flower heads, on dry stony hillside ground\n      var s=29;function R(){s=(s*16807)%2147483647;return s\/2147483647;}\n      var gr=c.createLinearGradient(0,320,0,392);gr.addColorStop(0,'#d2b98c');gr.addColorStop(1,'#a88c5e');c.fillStyle=gr;\n      c.beginPath();c.moveTo(20,392);c.lineTo(20,344);c.bezierCurveTo(120,320,280,320,380,344);c.lineTo(380,392);c.closePath();c.fill();\n      c.fillStyle='#9a8462';[[56,364,16],[318,370,20],[352,352,11],[136,378,9],[250,382,8]].forEach(function(p){c.beginPath();c.ellipse(p[0],p[1],p[2],p[2]*.6,0,0,6.283);c.fill();});\n      var g=['#5e7348','#7a8c5e','#8f9f76','#4e6238','#a9b88e'],tips=[];\n      c.lineCap='round';\n      for(var n=0;n<70;n++){var x0=200+(R()-.5)*90,a=-Math.PI\/2+(R()-.5)*2.1,len=110+R()*120;var x1=x0+Math.cos(a)*len,y1=340+Math.sin(a)*len;if(y1<70)y1=70+R()*20;\n        c.strokeStyle=R()<.5?'#6b5a44':'#7d6a50';c.lineWidth=2+R()*1.5;c.beginPath();c.moveTo(x0,340);c.quadraticCurveTo((x0+x1)\/2+(R()-.5)*30,(340+y1)\/2,x1,y1);c.stroke();\n        for(var k=1;k<8;k++){var t=k\/8,lx=x0+(x1-x0)*t,ly=340+(y1-340)*t;almond(c,lx-4,ly,2.6,5.5,-.6,g[(R()*5)|0]);almond(c,lx+4,ly,2.6,5.5,.6,g[(R()*5)|0]);}\n        tips.push([x1,y1]);}\n      for(var m=0;m<900;m++){var t2=R()*6.283,r=Math.sqrt(R()),x=200+Math.cos(t2)*r*160,y=230+Math.sin(t2)*r*110;if(y>334)continue;almond(c,x,y,2.8,5.8,R()*6.28,g[(R()*5)|0]);}\n      var f=['#e8c8e2','#d7a8d0','#c48ab8','#f2dcee'];\n      tips.forEach(function(p){for(var q=0;q<10;q++){c.fillStyle=f[(R()*4)|0];c.beginPath();c.arc(p[0]+(R()-.5)*14,p[1]+(R()-.5)*12,3+R()*2,0,6.283);c.fill();}});\n    },\n    function sprig(c){ \/\/ a sprig of thyme: woody lower stem branching into slender shoots with pairs of tiny oval leaves, topped by rounded heads of small two-lipped pink flowers\n      function shoot(x0,y0,cx,cy,x1,y1,w,sz){c.strokeStyle='#7d6a50';c.lineWidth=w;c.lineCap='round';c.beginPath();c.moveTo(x0,y0);c.quadraticCurveTo(cx,cy,x1,y1);c.stroke();\n        var g=['#5e7348','#7a8c5e','#4e6238','#8f9f76'];for(var k=1;k<12;k++){var t=k\/12,u=1-t,x=u*u*x0+2*u*t*cx+t*t*x1,y=u*u*y0+2*u*t*cy+t*t*y1,tx=2*u*(cx-x0)+2*t*(x1-cx),ty=2*u*(cy-y0)+2*t*(y1-cy),a=Math.atan2(ty,tx);\n          leaf(c,x,y,sz,sz*.42,a-1.0,g[k%4]);leaf(c,x,y,sz,sz*.42,a+1.0,g[(k+1)%4]);}}\n      function head(x,y,r){c.fillStyle='#7a6a8a';c.beginPath();c.ellipse(x,y+r*.25,r*.7,r*.9,0,0,6.283);c.fill();\n        var f=['#e8c8e2','#d7a8d0','#c48ab8','#f2dcee','#dbb4d8'];for(var k=0;k<26;k++){var a=k*2.4,q=Math.sqrt((k+1)\/26)*r,px=x+Math.cos(a)*q,py=y+Math.sin(a)*q*1.1;\n          c.fillStyle=f[k%5];c.beginPath();c.ellipse(px,py-3,5.5,4,a,0,6.283);c.fill();c.beginPath();c.ellipse(px+2,py+3,4,3,a+.6,0,6.283);c.fill();}\n        c.fillStyle='rgba(255,246,252,.9)';c.beginPath();c.arc(x-r*.3,y-r*.35,3.5,0,6.283);c.fill();}\n      shoot(200,396,196,330,200,270,9,20);\n      shoot(200,276,150,200,128,96,5,18);shoot(200,276,206,180,212,66,5,18);shoot(200,276,262,210,290,112,5,18);shoot(198,322,130,300,86,226,4,16);shoot(202,318,290,300,318,236,4,16);\n      head(128,86,30);head(212,56,32);head(290,102,29);head(86,218,22);head(318,228,22);\n    },\n    function dried(c){ \/\/ dried thyme: a bundle of stems tied with twine, olive-grey dried leaves, beside a wooden mortar of crushed leaves with its pestle and loose crumbs\n      var s=13;function R(){s=(s*16807)%2147483647;return s\/2147483647;}\n      var g=['#7d8350','#8e9266','#6a7044','#a4a47a','#5e6440'];\n      c.save();c.translate(160,196);c.rotate(-.5);\n      c.lineCap='round';for(var n=0;n<22;n++){var dx=(R()-.5)*16,spread=(R()-.5)*1.1;c.strokeStyle=n%2?'#7a6648':'#8c7656';c.lineWidth=2.5;c.beginPath();c.moveTo(dx,150);c.lineTo(dx*.5,40);c.quadraticCurveTo(spread*60,-40,spread*130,-130+R()*30);c.stroke();}\n      for(var m=0;m<820;m++){var t=R(),sp=(R()-.5)*1.1,x=sp*130*t+(R()-.5)*14,y=40-170*t+(R()-.5)*14;if(t<.15)continue;almond(c,x,y,3,6.5,R()*6.28,g[(R()*5)|0]);}\n      for(var k=0;k<40;k++){var tt=.75+R()*.25,sp2=(R()-.5)*1.1;c.fillStyle=k%2?'#b89ab0':'#a3889c';c.beginPath();c.arc(sp2*130*tt,40-170*tt,3+R()*1.5,0,6.283);c.fill();}\n      rr(c,-16,62,32,16,4,'#c9a46a');c.strokeStyle='#a8844f';c.lineWidth=2;c.beginPath();c.moveTo(-16,70);c.lineTo(16,70);c.stroke();\n      c.strokeStyle='#c9a46a';c.lineWidth=3;c.beginPath();c.moveTo(14,74);c.quadraticCurveTo(34,96,24,120);c.stroke();\n      c.restore();\n      var m2=c.createLinearGradient(220,0,380,0);m2.addColorStop(0,'#7a5434');m2.addColorStop(.45,'#b8875a');m2.addColorStop(1,'#6a4828');c.fillStyle=m2;\n      c.beginPath();c.moveTo(220,262);c.lineTo(380,262);c.bezierCurveTo(374,334,346,360,300,360);c.bezierCurveTo(254,360,226,334,220,262);c.fill();\n      rr(c,262,354,76,16,6,'#6a4828');\n      c.fillStyle='#9a7048';c.beginPath();c.ellipse(300,262,80,17,0,0,6.283);c.fill();c.fillStyle='#6a7044';c.beginPath();c.ellipse(300,264,68,11,0,0,6.283);c.fill();\n      for(var q=0;q<40;q++){c.fillStyle=g[(R()*5)|0];c.beginPath();c.arc(250+R()*100,258+R()*10,2+R()*1.6,0,6.283);c.fill();}\n      c.save();c.translate(322,196);c.rotate(.42);rr(c,-12,-76,24,128,12,'#c09468');c.fillStyle='#a87c52';c.beginPath();c.ellipse(0,52,16,10,0,0,6.283);c.fill();c.restore();\n      for(var z=0;z<26;z++){almond(c,40+R()*330,370+R()*16,2.8,6,R()*6.28,g[(R()*5)|0]);}\n    },\n    function oil(c){ \/\/ thyme essential oil: an amber glass dropper bottle, a golden drop, a fresh sprig of thyme with pink flowers lying at its foot\n      var b=c.createLinearGradient(130,0,270,0);b.addColorStop(0,'#5a2a0a');b.addColorStop(.35,'#b8661e');b.addColorStop(.6,'#d8843a');b.addColorStop(1,'#6a3410');c.fillStyle=b;\n      c.beginPath();c.moveTo(176,150);c.lineTo(224,150);c.lineTo(224,170);c.bezierCurveTo(262,180,272,200,272,226);c.lineTo(272,336);c.bezierCurveTo(272,350,262,356,250,356);c.lineTo(150,356);c.bezierCurveTo(138,356,128,350,128,336);c.lineTo(128,226);c.bezierCurveTo(128,200,138,180,176,170);c.closePath();c.fill();\n      c.fillStyle='rgba(70,30,6,.45)';c.beginPath();c.moveTo(128,268);c.lineTo(272,268);c.lineTo(272,336);c.bezierCurveTo(272,350,262,356,250,356);c.lineTo(150,356);c.bezierCurveTo(138,356,128,350,128,336);c.closePath();c.fill();\n      c.fillStyle='rgba(255,226,170,.7)';c.beginPath();c.moveTo(146,214);c.bezierCurveTo(150,196,160,190,168,188);c.lineTo(160,330);c.bezierCurveTo(152,330,146,326,146,318);c.closePath();c.fill();\n      rr(c,170,120,60,36,6,'#2a2420');c.strokeStyle='#4a4038';c.lineWidth=2;for(var i=0;i<6;i++){c.beginPath();c.moveTo(176+i*9.6,124);c.lineTo(176+i*9.6,152);c.stroke();}\n      rr(c,182,58,36,66,16,'#3a322c');c.fillStyle='rgba(255,255,255,.18)';c.beginPath();c.ellipse(192,84,5,16,0,0,6.283);c.fill();\n      var d=c.createLinearGradient(296,150,330,230);d.addColorStop(0,'#fbe6a0');d.addColorStop(1,'#d89a2a');c.fillStyle=d;\n      c.beginPath();c.moveTo(312,150);c.bezierCurveTo(320,176,334,194,334,212);c.bezierCurveTo(334,226,324,236,312,236);c.bezierCurveTo(300,236,290,226,290,212);c.bezierCurveTo(290,194,304,176,312,150);c.fill();\n      c.fillStyle='rgba(255,250,230,.9)';c.beginPath();c.ellipse(303,208,4,9,.3,0,6.283);c.fill();\n      c.strokeStyle='#7d6a50';c.lineWidth=4;c.lineCap='round';c.beginPath();c.moveTo(40,380);c.quadraticCurveTo(200,362,350,372);c.stroke();\n      var g=['#5e7348','#7a8c5e','#4e6238','#8f9f76'];for(var k=0;k<16;k++){var x=52+k*19,y=378-k*0.6-Math.sin(k*.35)*6;leaf(c,x,y,22,9,-2.2,g[k%4]);leaf(c,x,y,22,9,-.9,g[(k+1)%4]);leaf(c,x,y,18,7,.9,g[(k+2)%4]);}\n      var f=['#e8c8e2','#d7a8d0','#c48ab8','#f2dcee'];for(var q=0;q<18;q++){c.fillStyle=f[q%4];c.beginPath();c.arc(352+((q*7)%22)-6,366+((q*5)%16)-6,4.5,0,6.283);c.fill();}\n    }\n  ];\n\n  var key=document.querySelector('.ip').getAttribute('data-shape')||'argan',SH=SHAPES[key]||SHAPES.argan;\n  function rng(a){return function(){a|=0;a=a+0x6D2B79F5|0;var t=Math.imul(a^a>>>15,1|a);t=t+Math.imul(t^t>>>7,61|t)^t;return((t^t>>>14)>>>0)\/4294967296;};}\n  var W,H,D,N,P=[],G=[];\n  function sample(fn,R){\n    var o=document.createElement('canvas');o.width=o.height=400;var c=o.getContext('2d');fn(c);\n    var d=c.getImageData(0,0,400,400).data,pts=[];\n    for(var y=0;y<400;y+=3)for(var x=0;x<400;x+=3){var i=(y*400+x)*4;if(d[i+3]>140)pts.push([x+R()*3-1.5,y+R()*3-1.5,d[i],d[i+1],d[i+2]]);}\n    for(var k=pts.length-1;k>0;k--){var j=Math.floor(R()*(k+1)),t=pts[k];pts[k]=pts[j];pts[j]=t;}\n    var out=[];for(var n=0;n<N;n++)out.push(pts[n%pts.length]);return out;\n  }\n  function build(){\n    var r=cv.getBoundingClientRect();W=r.width;H=r.height;D=Math.min(window.devicePixelRatio||1,2);cv.width=W*D;cv.height=H*D;ctx.setTransform(D,0,0,D,0,0);\n    var mob=W<700;N=mob?1500:2800;var R=rng(11);\n    var size=mob?Math.min(W*.86,H*.5):Math.min(H*.78,W*.44),ox=(mob?W*.5:W*.66)-size\/2,oy=(mob?H*.36:H*.5)-size\/2,k=size\/400;\n    G=SH.map(function(fn){return sample(fn,R).map(function(p){return [ox+p[0]*k,oy+p[1]*k,p[2],p[3],p[4]];});});\n    P=[];for(var i=0;i<N;i++)P.push({d:R()*.25,sw:(R()-.5)*2,ph:R()*6.28,s:(mob?1.2:1.35)+R()*1.1});\n  }\n  function ez(t){return t<.5?4*t*t*t:1-Math.pow(-2*t+2,3)\/2;}\n  function cl(v){return v<0?0:v>1?1:v;}\n  var prog=reduce?1:0,cur=prog,vis=true,t0=performance.now(),lastT=t0;\n  function measure(){var r=hero.getBoundingClientRect(),span=hero.offsetHeight-window.innerHeight;prog=reduce?1:cl(-r.top\/Math.max(span,1));}\n  function draw(now){\n    measure();var dt=Math.min(.1,(now-lastT)\/1000);lastT=now;cur+=(prog-cur)*(1-Math.exp(-dt*7));var f=cur*(G.length-1),seg=Math.min(G.length-2,Math.floor(f)),lt=f-seg,time=(now-t0)\/1000;\n    ctx.clearRect(0,0,W,H);\n    var A=G[seg],B=G[seg+1],m=Math.min(W,H);\n    for(var i=0;i<N;i++){\n      var q=P[i],t=ez(cl((lt-.28-q.d*.6)\/.44)),a=A[i],b=B[i],sw=Math.sin(t*Math.PI)*m*.09*q.sw;\n      var x=a[0]+(b[0]-a[0])*t,y=a[1]+(b[1]-a[1])*t,dx=b[1]-a[1],dy=a[0]-b[0],dl=Math.sqrt(dx*dx+dy*dy)||1;\n      x+=dx\/dl*sw+Math.sin(time*1.4+q.ph)*.9;y+=dy\/dl*sw+Math.cos(time*1.2+q.ph)*.9;\n      var r=a[2]+(b[2]-a[2])*t|0,g=a[3]+(b[3]-a[3])*t|0,bl=a[4]+(b[4]-a[4])*t|0;\n      ctx.fillStyle='rgb('+r+','+g+','+bl+')';ctx.beginPath();ctx.arc(x,y,q.s,0,6.283);ctx.fill();\n    }\n    var k=Math.min(G.length-1,Math.round(f));chs.forEach(function(c,i){c.classList.toggle('on',i===k);});\n    if(mark)mark.textContent='( '+L[k]+' )';if(bar)bar.style.transform='scaleX('+cur.toFixed(3)+')';\n    if(vis&&!reduce)requestAnimationFrame(draw);\n  }\n  build();measure();cur=prog;\n  window.addEventListener('scroll',measure,{passive:true});\n  var rt;window.addEventListener('resize',function(){clearTimeout(rt);rt=setTimeout(function(){chrome();build();measure();if(reduce)draw(performance.now());},150);});\n  if('IntersectionObserver' in window){new IntersectionObserver(function(es){es.forEach(function(e){var was=vis;vis=e.isIntersecting;if(vis&&!was&&!reduce)requestAnimationFrame(draw);});}).observe(hero);}\n  requestAnimationFrame(draw);\n})();\n<\/script>\n<\/div>\n<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":3,"featured_media":53786,"parent":20248,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-58674","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/pages\/58674","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/comments?post=58674"}],"version-history":[{"count":2,"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/pages\/58674\/revisions"}],"predecessor-version":[{"id":58678,"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/pages\/58674\/revisions\/58678"}],"up":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/pages\/20248"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/media\/53786"}],"wp:attachment":[{"href":"https:\/\/carmelcosmeticslabs.com\/de\/wp-json\/wp\/v2\/media?parent=58674"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}