/* theme-tokens:start (generated by scripts/dark-theme.mjs) */
:root{--c-000000:#000000;--c-168c49:#168c49;--c-17221c:#17221c;--c-176b42:#176b42;--c-1d6b3a:#1d6b3a;--c-202020:#202020;--c-222222:#222222;--c-242424:#242424;--c-2f5a20:#2f5a20;--c-302e28:#302e28;--c-303630:#303630;--c-333333:#333333;--c-35372f:#35372f;--c-36392f:#36392f;--c-373a30:#373a30;--c-3e6b2c:#3e6b2c;--c-444444:#444444;--c-4f7a3a:#4f7a3a;--c-63655b:#63655b;--c-666666:#666666;--c-68675f:#68675f;--c-6b675e:#6b675e;--c-6b6d64:#6b6d64;--c-747760:#747760;--c-76766c:#76766c;--c-76776d:#76776d;--c-777777:#777777;--c-77796f:#77796f;--c-815e37:#815e37;--c-8a2a20:#8a2a20;--c-8a877e:#8a877e;--c-999999:#999999;--c-9b7a28:#9b7a28;--c-a3271f:#a3271f;--c-aaaaaa:#aaaaaa;--c-b3afa5:#b3afa5;--c-bbbbbb:#bbbbbb;--c-c9cbc0:#c9cbc0;--c-cccccc:#cccccc;--c-d7d5cb:#d7d5cb;--c-d8d5cd:#d8d5cd;--c-d8d6cf:#d8d6cf;--c-d8d8d0:#d8d8d0;--c-d8d8d8:#d8d8d8;--c-dcebd3:#dcebd3;--c-dddddd:#dddddd;--c-dedbd2:#dedbd2;--c-e3e3dc:#e3e3dc;--c-e4e4dc:#e4e4dc;--c-e6e4de:#e6e4de;--c-e6e6dd:#e6e6dd;--c-e8e6df:#e8e6df;--c-e9e7e1:#e9e7e1;--c-ecece4:#ecece4;--c-edeae2:#edeae2;--c-eeeeee:#eeeeee;--c-f1efe6:#f1efe6;--c-f1f1ed:#f1f1ed;--c-f2f1ed:#f2f1ed;--c-f3dcd9:#f3dcd9;--c-f5f3ef:#f5f3ef;--c-f5f5f5:#f5f5f5;--c-f8f8f8:#f8f8f8;--c-f9f7f2:#f9f7f2;--c-f9f7f2e8:#f9f7f2e8;--c-faf9f6:#faf9f6;--c-fafaf7:#fafaf7;--c-fff8e6:#fff8e6;--c-fff8f7:#fff8f7;--c-ffffff:#ffffff;--c-ffffff40:#ffffff40;--c-fffffff0:#fffffff0;--c-fffffff2:#fffffff2}
@media screen{
html[data-theme=dark]{color-scheme:dark;--c-000000:#e9e9e9;--c-168c49:#168c49;--c-17221c:#c9dad1;--c-176b42:#176b42;--c-1d6b3a:#7fcf98;--c-202020:#cecece;--c-222222:#cdcdcd;--c-242424:#cbcbcb;--c-2f5a20:#b0c3a9;--c-302e28:#cac7bf;--c-303630:#bbc2bb;--c-333333:#bebebe;--c-35372f:#c1c4b9;--c-36392f:#c0c4b7;--c-373a30:#bfc3b7;--c-3e6b2c:#8fc27a;--c-444444:#b0b0b0;--c-4f7a3a:#98af8c;--c-63655b:#9c9e93;--c-666666:#949494;--c-68675f:#9b9991;--c-6b675e:#9c988e;--c-6b6d64:#94968d;--c-747760:#989b83;--c-76766c:#909085;--c-76776d:#8e8f84;--c-777777:#858585;--c-77796f:#8b8d83;--c-815e37:#ae9d8a;--c-8a2a20:#b39491;--c-8a877e:#807d74;--c-999999:#696969;--c-9b7a28:#aa9f85;--c-a3271f:#f08a80;--c-aaaaaa:#5b5b5b;--c-b3afa5:#605c51;--c-bbbbbb:#4c4c4c;--c-c9cbc0:#484a3d;--c-cccccc:#3e3e3e;--c-d7d5cb:#413f32;--c-d8d5cd:#3f3c32;--c-d8d6cf:#3d3b32;--c-d8d8d0:#3c3c32;--c-d8d8d8:#343434;--c-dcebd3:#2c3626;--c-dddddd:#303030;--c-dedbd2:#3c382c;--c-e3e3dc:#333329;--c-e4e4dc:#333327;--c-e6e4de:#312e25;--c-e6e6dd:#333325;--c-e8e6df:#312e23;--c-e9e7e1:#2f2c23;--c-ecece4:#2d2d20;--c-edeae2:#2e2a20;--c-eeeeee:#212121;--c-f1efe6:#2a281d;--c-f1f1ed:#25251c;--c-f2f1ed:#25231b;--c-f3dcd9:#4a2622;--c-f5f3ef:#232019;--c-f5f5f5:#1c1c1c;--c-f8f8f8:#191919;--c-f9f7f2:#201d16;--c-f9f7f2e8:#201d16e8;--c-faf9f6:#1e1b15;--c-fafaf7:#1d1d14;--c-fff8e6:#3a3220;--c-fff8f7:#3a1d1b;--c-ffffff:#131313;--c-ffffff40:#13131340;--c-fffffff0:#131313f0;--c-fffffff2:#131313f2}
/* Dark-mode details the colour flip can't handle */
html[data-theme=dark] .logo img,html[data-theme=dark] .footer-brand img,html[data-theme=dark] .slip-head img{filter:invert(1);mix-blend-mode:screen}
html[data-theme=dark] .swatch-dot{box-shadow:inset 0 0 0 1px #fff5}
html[data-theme=dark] .product-whatsapp,html[data-theme=dark] .whatsapp{color:#fff}
html[data-theme=dark] img:not(.logo img):not(.footer-brand img){filter:brightness(.94)}
}
/* theme-tokens:end */
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--c-f9f7f2);color:var(--c-302e28);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--c-815e37);outline-offset:5px}.announcement{text-align:center;background:var(--c-35372f);color:var(--c-ffffff);padding:11px;font-size:9px;letter-spacing:2px}header{height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 5%}.logo{font-size:35px;letter-spacing:3px;font-weight:500}.logo span{display:block;font-size:7px;text-align:center;margin-top:6px;letter-spacing:3px}nav{display:flex;gap:38px;font-size:12px}header button{border:0;background:none;font-size:12px}#count{border:1px solid var(--c-b3afa5);padding:4px 7px;margin-left:9px;border-radius:50%}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px}.hero-copy{padding:70px 10% 25px;display:flex;flex-direction:column;align-items:flex-start;background:var(--c-edeae2)}.eyebrow{font-size:10px;letter-spacing:2px;line-height:1.8}h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-2px}h1{font-size:clamp(48px,5.5vw,86px);line-height:1.06;margin:32px 0 25px}em{font-weight:400;color:var(--c-747760)}p{line-height:1.8}.hero-copy>p:not(.eyebrow){font-size:13px;color:var(--c-68675f)}.cta{background:var(--c-36392f);color:var(--c-ffffff);border:0;padding:19px 25px;display:inline-flex;gap:55px;align-items:center;font-size:12px;margin-top:23px}.cta span{font-size:20px}.issue{margin-top:auto;padding-top:55px;display:flex;justify-content:space-between;width:100%;font-size:8px;letter-spacing:1px;color:var(--c-77796f)}.hero-image{position:relative;max-height:790px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}.photo-label{position:absolute;bottom:25px;left:30px;color:var(--c-ffffff);font-size:9px;letter-spacing:2px}.collection{padding:85px 5%}.section-head{display:flex;justify-content:space-between;align-items:end}.section-head h2{font-size:42px;margin:10px 0 30px}.section-head>p{font-size:11px;color:var(--c-777777)}.controls{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--c-d8d5cd);padding:15px 0 23px;margin-bottom:28px}#filters{display:flex;gap:8px;flex-wrap:wrap}#filters button{border:1px solid var(--c-d7d5cb);background:transparent;padding:10px 16px;font-size:11px;border-radius:30px}#filters button.active{background:var(--c-373a30);border-color:var(--c-373a30);color:var(--c-ffffff)}input{border:0;border-bottom:1px solid var(--c-aaaaaa);background:transparent;padding:10px;max-width:180px;font-size:12px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 20px}.card{position:relative}.card .product{padding:0;text-align:left;border:0;background:none;width:100%;color:inherit}.card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:filter .3s}.card:hover img{filter:brightness(.95)}.card h3{font-weight:400;font-size:14px;margin:15px 0 7px}.card p{font-size:11px;color:var(--c-76776d);margin:0}.heart{position:absolute;right:10px;top:10px;border:0;border-radius:50%;width:33px;height:33px;background:var(--c-f9f7f2e8);font-size:20px}.story{background:var(--c-e6e6dd);padding:80px 7%;display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:40px}.story h2{font-size:64px;margin:0;line-height:1.1}.story div p{font-size:13px;color:var(--c-63655b)}.story div a{display:inline-block;border-bottom:1px solid;padding-bottom:8px;font-size:12px;margin-top:15px}.closing{padding:60px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-dedbd2)}.closing span{font:32px Georgia,serif}.closing a{font-size:10px;letter-spacing:2px}footer{padding:40px 5%;display:flex;align-items:center;justify-content:space-between}footer p,footer span,footer>a:last-child{font-size:10px;color:var(--c-76766c)}dialog{border:0;padding:0;width:min(900px,92vw);max-height:90vh;background:var(--c-f9f7f2);color:inherit}dialog::backdrop{background:#0009}.close{position:absolute;top:12px;right:15px;border:0;background:var(--c-f9f7f2);font-size:27px;z-index:2}.detail-grid{display:grid;grid-template-columns:1fr 1fr}.detail-grid>img{width:100%;max-height:85vh;object-fit:contain;background:var(--c-e8e6df)}.detail-copy{padding:65px 30px 30px}.detail-copy h2{font-size:40px}.detail-copy p{font-size:13px}.detail-copy .note{font-size:11px;color:var(--c-777777);margin-top:25px}#thumbs{display:flex;gap:10px}#thumbs button{padding:0;border:1px solid var(--c-aaaaaa);background:none}#thumbs img{width:55px;height:70px;object-fit:cover}@media(max-width:800px){header{height:85px}nav{gap:15px;font-size:10px}.logo{font-size:27px}.hero{min-height:0}.hero-copy{padding:35px 8% 25px}h1{font-size:48px}.hero-copy>p:not(.eyebrow){font-size:11px}.issue{font-size:7px;gap:15px}.grid{grid-template-columns:repeat(2,1fr)}.controls{align-items:start;flex-direction:column}.story{grid-template-columns:1fr 1fr}.story>.eyebrow{grid-column:1/-1}.story h2{font-size:50px}.section-head h2{font-size:34px}}@media(max-width:520px){.hero{display:flex;flex-direction:column-reverse}.hero-image{height:390px}.hero-image img{object-position:50% 25%}.hero-copy{padding:30px 6%}h1{font-size:54px;margin-top:15px}.issue{padding-top:30px}.hero-copy .eyebrow{margin:0}.collection{padding:45px 5%}.section-head{display:block}.section-head h2{font-size:32px}.grid{gap:25px 12px}.story{display:block;padding:45px 7%}.story h2{margin:25px 0}.closing{align-items:start;gap:25px;flex-direction:column}.closing span{font-size:28px}footer{gap:20px;flex-wrap:wrap}.detail-grid{grid-template-columns:1fr}.detail-grid>img{max-height:50vh}.detail-copy{padding:25px}#filters button{padding:9px 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Shopping-focused revision */
body{background:var(--c-ffffff);color:var(--c-202020)}.announcement{position:relative;overflow:hidden;padding:0;height:32px;background:var(--c-242424)}.ticker{display:flex;width:max-content;animation:marquee 26s linear infinite;align-items:center;height:32px;direction:ltr}.ticker span{white-space:nowrap;min-width:100vw;word-spacing:70px;letter-spacing:2px;padding-inline:35px;font-size:10px}#ticker-pause{position:absolute;right:0;top:0;background:var(--c-242424);border:0;color:var(--c-ffffff);height:32px;width:32px}@keyframes marquee{to{transform:translateX(-50%)}}header{height:100px;gap:35px;padding:0 5%;border-bottom:1px solid var(--c-eeeeee)}.logo img{width:190px;height:auto;display:block}.header-actions{display:flex;align-items:center;gap:21px}header svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.4}#saved{display:flex;align-items:center;padding:0;position:relative}#count{font-size:9px;border:0;padding:0;margin:0;position:absolute;top:-8px;right:-8px}#language{font-size:12px;padding:0}#header-search{display:flex;align-items:center;background:var(--c-f5f5f5);flex:1;max-width:560px;height:41px}#search{max-width:none;width:100%;border:0;padding:12px 16px;outline-offset:0}#header-search button{font-size:27px;padding:0 14px}.hero{display:block;position:relative;min-height:0;background:var(--c-e9e7e1)}.carousel{display:grid;grid-template-columns:1fr 1fr;max-height:650px;height:62vw;min-height:380px;overflow:hidden}.carousel img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;min-height:0}.carousel-controls{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:16px;background:var(--c-fffffff0);padding:7px 14px;font-size:10px;direction:ltr}.carousel-controls button{border:0;background:none;padding:4px;font-size:16px}.collection{padding:28px 5% 60px}.controls{margin-bottom:28px;padding:0 0 23px}#filters{justify-content:center;width:100%;gap:24px}#filters button{border:0;border-radius:0;padding:12px 4px;background:none;font-size:12px}#filters button.active{background:none;color:var(--c-222222);border-bottom:2px solid var(--c-222222)}.grid{gap:32px 20px}.card img{aspect-ratio:3/4;object-position:50% 20%}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}footer{display:grid;grid-template-columns:1.2fr 1fr 1.2fr 1fr;align-items:start;gap:35px;padding:55px 5% 25px;background:var(--c-f5f5f5)}footer h2{font-family:inherit;font-weight:700;letter-spacing:normal}footer h2{font-size:11px;letter-spacing:.7px;margin:0 0 22px}footer button{display:block;border:0;background:none;padding:0;margin:13px 0;color:var(--c-666666);font-size:12px;text-align:start}footer button:hover{text-decoration:underline}.footer-brand img{width:160px;mix-blend-mode:multiply}.footer-brand p{margin-top:25px}.footer-note{grid-column:1/-1;border-top:1px solid var(--c-dddddd);padding-top:20px;width:100%;font-size:11px}#info{padding:40px;max-width:500px}#info h2{font:26px Arial;letter-spacing:0;margin-top:10px}#info p{font-size:14px}.info-close{position:absolute;right:10px;top:10px;background:none;border:0;font-size:25px}html[dir=rtl] h2{letter-spacing:0}html[dir=rtl] .detail-copy{text-align:right}@media(max-width:800px){header{gap:20px;padding:0 4%}.logo img{width:145px}.header-actions{gap:16px}.carousel{height:620px}.grid{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media(max-width:520px){header{height:auto;min-height:110px;flex-wrap:wrap;gap:12px;padding:18px 5%}.logo img{width:135px}.header-actions{margin-inline-start:auto}#header-search{order:3;flex-basis:100%;max-width:none}.carousel{display:block;height:490px;min-height:0}.carousel img{object-position:50% 20%}#hero-second{display:none}.hero{display:block}.collection{padding-top:20px}#filters{gap:15px;justify-content:flex-start;flex-wrap:nowrap;overflow:auto}#filters button{white-space:nowrap}.controls{width:100%}.grid{gap:24px 12px}footer{gap:25px}.footer-brand{grid-column:1/-1}footer h2{font-size:10px}}@media(prefers-reduced-motion:reduce){.ticker{animation:none}}
/* Collection and cart */
.hero{background:var(--c-f2f1ed);padding:0;display:flex;justify-content:center}.carousel{display:block;position:relative;direction:ltr;width:min(100%,540px);height:auto;aspect-ratio:4/5;min-height:0;max-height:none;overflow:hidden}.carousel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%}.carousel-controls{bottom:18px}.product-photos{display:block;position:relative;overflow:hidden}.product-photos .hover-photo{position:absolute;inset:0;opacity:0;transition:opacity .45s ease}.product:focus-visible .hover-photo{opacity:1}@media(hover:hover){.product:hover .hover-photo{opacity:1}}.card:hover img{filter:none}.product-meta{display:flex;flex-direction:column;gap:9px}.rating{display:flex;gap:8px;align-items:center;color:var(--c-9b7a28);font-size:15px;letter-spacing:1px}.rating small{color:var(--c-777777);font-size:9px;letter-spacing:0}.price{font-size:15px;color:var(--c-222222)}.add-cart{width:100%;border:1px solid var(--c-d8d8d8);background:var(--c-ffffff);color:var(--c-222222);text-align:center;padding:11px 8px;margin-top:14px;font-size:11px}.add-cart:hover{background:var(--c-f1f1ed)}#cart-button{position:relative;padding:0;display:flex}#cart-count{position:absolute;top:-8px;right:-7px;font-size:9px}#cart-dialog{padding:35px;width:min(650px,94vw)}#cart-title{font:26px Arial;letter-spacing:0;margin:0 0 30px}#cart-close{position:absolute;right:13px;top:10px;font-size:26px;background:none;border:0}.cart-row{display:grid;grid-template-columns:80px 1fr auto;gap:18px;border-bottom:1px solid var(--c-dddddd);padding:20px 0;align-items:center}.cart-row img{width:80px;height:105px;object-fit:cover}.cart-row h3{font-size:13px;font-weight:400;margin:0}.cart-row p{font-size:11px;color:var(--c-666666)}.quantity{display:flex;align-items:center;gap:12px;font-size:12px}.quantity button{background:none;border:1px solid var(--c-dddddd);min-width:28px;height:28px}.quantity .remove{border:0;text-decoration:underline;font-size:10px}.cart-row strong{font-size:12px}#cart-total{margin-top:25px;font-weight:bold;font-size:17px}#cart-note{font-size:12px;line-height:1.7;color:var(--c-666666)}#detail-add{display:block;margin-top:12px}.header-actions{gap:17px}@media(max-width:520px){.carousel{width:100%;height:auto}.header-actions{gap:15px}.logo img{width:115px}.cart-row{grid-template-columns:60px 1fr;gap:12px}.cart-row img{width:60px;height:80px}.cart-row>strong{grid-column:2}#cart-dialog{padding:30px 20px}.rating{font-size:13px;gap:5px}.rating small{font-size:8px}}
footer a[data-en]{display:block;margin:3px 0;padding:5px 0;color:var(--c-666666);font-size:12px;text-align:start}footer a[data-en]:hover{text-decoration:underline}.info-page{max-width:850px;min-height:420px;margin:auto;padding:75px 25px 85px}.info-page>p{font-size:10px;letter-spacing:2px;color:var(--c-777777)}.info-page h1{font:40px Arial;letter-spacing:-1px;line-height:1.3}.info-page #page-copy{font-size:16px;line-height:1.9;max-width:690px}.info-page .cta{margin-top:30px}@media(max-width:520px){.info-page{padding:45px 22px}.info-page h1{font-size:30px}}
.carousel{width:min(100%,360px);aspect-ratio:4/5}.hero{max-height:450px}.card-thumbs{display:flex;gap:6px;overflow:auto;padding:9px 0;max-width:100%}.card-thumbs button{padding:0;border:1px solid transparent;background:none;flex:0 0 42px}.card-thumbs button[aria-pressed=true]{border-color:var(--c-222222)}.card-thumbs img{height:55px;width:40px;object-fit:cover}.newsletter{grid-column:1/-1;border-top:1px solid var(--c-dddddd);padding-top:30px;max-width:650px}.newsletter h2{font-size:18px}.newsletter p{font-size:13px}.newsletter-form>label{display:block;font-size:12px}.newsletter input[type=email]{display:block;max-width:none;width:100%;border:1px solid var(--c-bbbbbb);background:var(--c-ffffff);margin:10px 0}.newsletter .consent{display:flex;gap:9px;align-items:start;line-height:1.7}.newsletter button{background:var(--c-222222);color:var(--c-ffffff);padding:12px 28px}.newsletter-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}.whatsapp{position:fixed;bottom:22px;right:22px;z-index:20;width:54px;height:54px;background:var(--c-168c49);border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 14px #0003}.whatsapp svg{width:31px;height:31px;fill:none;stroke:var(--c-ffffff);stroke-width:1.5}.detail-copy{padding-top:35px}#garment-options h3{font-size:13px;margin:18px 0 5px}#garment-options p{font-size:11px;margin:5px 0}#garment-options select{padding:10px;width:100%;background:var(--c-ffffff);border:1px solid var(--c-cccccc)}.detail-copy h2{font-size:30px}#thumbs{overflow:auto}#view-all{display:block;margin:35px auto 0}#view-all[hidden]{display:none}#filters{flex-wrap:wrap}html[dir=rtl] .whatsapp{right:auto;left:22px}@media(max-width:520px){.carousel{width:300px;max-width:100%}.hero{max-height:375px}#filters{flex-wrap:wrap;gap:10px}.whatsapp{width:48px;height:48px;right:15px;bottom:15px}}

#slide-dots{display:flex;align-items:center;gap:4px}.carousel-controls .slide-dot{width:24px;height:32px;padding:8px;border:0;background:transparent;display:grid;place-items:center}.slide-dot:after{content:"";width:7px;height:7px;border:1px solid var(--c-222222);border-radius:50%;background:transparent}.slide-dot[aria-current=true]:after{background:var(--c-222222)}#menu-toggle{width:40px;height:44px;display:grid;place-items:center;border:0;background:none;flex-shrink:0}#menu-toggle svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.5}#main-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(390px,92vw);height:100dvh;max-height:none;max-width:none;border:0;padding:28px;background:var(--c-ffffff);color:var(--c-222222);overflow-y:auto}html[dir=rtl] #main-menu{inset:0 auto 0 0}#main-menu::backdrop{background:#0006}#main-menu .menu-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}#main-menu h2{font:20px Arial;margin:0}#main-menu h3{font:12px Arial;letter-spacing:.1em;margin:28px 0 12px}#main-menu a{display:block;padding:11px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--c-eeeeee)}#main-menu a:hover{text-decoration:underline}#main-menu button{border:0;background:none;font-size:26px;padding:8px}#main-menu select{padding:10px;border:1px solid var(--c-dddddd);background:var(--c-ffffff);width:100%;color:var(--c-222222)}body.menu-open{overflow:hidden}@media(max-width:600px){header{gap:12px}.header-actions{gap:12px}#menu-toggle{width:28px}}

/* Gentle display correction, keeping source photographs intact. */
.carousel img,.product img,.card-thumbs img,#detail-image,#thumbs img,.cart-row img{filter:brightness(1.08)}
#detail{width:min(1040px,94vw);max-height:90dvh;overflow:hidden;padding:0}
#detail .detail-grid{display:grid;grid-template-columns:1fr 1fr;height:85dvh;max-height:850px;direction:ltr;overflow:hidden}
#detail #detail-image{grid-column:2;grid-row:1;width:100%;height:100%;object-fit:contain;align-self:start;background:var(--c-f5f3ef)}
#detail .detail-copy{grid-column:1;grid-row:1;overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:36px;direction:ltr}
html[dir=rtl] #detail .detail-copy{direction:rtl}
#detail .close{position:absolute;top:12px;right:12px;z-index:4}
@media(max-width:650px){#detail{width:94vw;max-height:90dvh;overflow-y:auto}#detail .detail-grid{display:flex;flex-direction:column;height:auto;max-height:none;overflow:visible}#detail #detail-image{height:auto;max-height:48dvh;object-fit:contain;flex:none}#detail .detail-copy{overflow:visible;padding:24px;flex:none}#detail .close{position:sticky;top:10px;float:right;margin:10px 10px -44px 0}#garment-options select{max-width:100%}}
.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.product,.card-thumbs{min-width:0}.product{width:100%}.card-thumbs{max-width:100%;overflow-x:auto}@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.rating{flex-wrap:wrap}.card-thumbs button{flex-shrink:0}}

.garment-field{display:block;margin:16px 0;font-weight:600}.garment-field select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid var(--c-cccccc);background:var(--c-f8f8f8);color:var(--c-666666)}.stock-note{font-size:13px;line-height:1.6}#detail-image{cursor:zoom-in}#product-extras{margin:18px 0}.photo-zoom-button,.product-whatsapp{display:block;width:100%;padding:14px;margin:12px 0;border:1px solid var(--c-333333);background:transparent;text-align:center;text-decoration:none;color:var(--c-222222);font:inherit}.product-whatsapp{background:var(--c-176b42);border-color:var(--c-176b42);color:var(--c-ffffff)}#product-extras details{border-bottom:1px solid var(--c-dddddd);padding:16px 0}#product-extras summary{cursor:pointer;font-weight:600}#product-extras details p{font-size:14px;line-height:1.7}#photo-viewer{width:min(1100px,96vw);max-width:96vw;height:92dvh;max-height:92dvh;padding:0;border:0;background:var(--c-f5f3ef);overflow:hidden}#photo-viewer::backdrop{background:#000c}.zoom-toolbar{display:flex;align-items:center;justify-content:center;gap:12px;height:64px;background:var(--c-ffffff);padding:8px}.zoom-toolbar button{height:42px;min-width:42px;border:1px solid var(--c-cccccc);background:var(--c-ffffff);padding:8px;font:inherit}#zoom-close{margin-inline-start:auto}#zoom-out{margin-inline-start:auto}.zoom-canvas{height:calc(100% - 64px);overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}.zoom-canvas img{display:block;max-width:none;object-fit:contain;filter:brightness(1.08);margin:auto}@media(max-width:650px){.zoom-toolbar{gap:6px;padding:6px}#photo-viewer{width:96vw}.photo-zoom-button,.product-whatsapp{font-size:14px}}

.colour-section{padding:12px 0;border-bottom:1px solid var(--c-dddddd)}.colour-section h3{font-size:16px}.colour-section p{font-size:14px;line-height:1.7}.size-options{border:0;padding:12px 0;margin:20px 0}.size-options legend{font-weight:600}.size-options button{width:52px;height:44px;margin:6px 8px 6px 0;border:1px solid var(--c-bbbbbb);background:var(--c-ffffff);color:var(--c-222222)}.size-options button[aria-pressed=true]{background:var(--c-303630);color:var(--c-ffffff);border-color:var(--c-303630)}
.carousel-controls{background:rgba(255,255,255,.28);backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border:1px solid rgba(255,255,255,.55);box-shadow:0 4px 18px #00000015;border-radius:30px}.carousel-controls button{background:transparent;color:var(--c-17221c)}.carousel-controls button:hover{background:var(--c-ffffff40);border-radius:50%}.carousel-controls button:focus-visible{outline:2px solid var(--c-17221c);outline-offset:2px}.carousel-controls .slide-dot:after{border-color:var(--c-17221c)}.carousel-controls .slide-dot[aria-current=true]:after{background:var(--c-17221c)}

/* Account / sign-in */
.account-page .auth-tabs{display:flex;gap:4px;margin:28px 0 22px;border-bottom:1px solid var(--c-d8d8d0)}
.account-page .auth-tabs button{background:none;border:0;padding:12px 16px;font-size:13px;cursor:pointer;color:var(--c-6b6d64);border-bottom:2px solid transparent;margin-bottom:-1px}
.account-page .auth-tabs button[aria-selected="true"]{color:var(--c-36392f);border-bottom-color:var(--c-36392f)}
.auth-form{display:grid;gap:16px;max-width:420px}
.auth-form label{display:grid;gap:6px;font-size:12px}
.auth-form label[hidden]{display:none}
.auth-form input{font:inherit;font-size:15px;padding:12px;border:1px solid var(--c-c9cbc0);background:var(--c-ffffff);color:var(--c-222222);width:100%;max-width:none;box-sizing:border-box}
.auth-form input:focus{outline:2px solid var(--c-36392f);outline-offset:1px}
.auth-form .cta{justify-content:center;cursor:pointer;margin-top:4px}
.auth-form .cta:disabled{opacity:.6;cursor:wait}
.captcha{min-height:65px}
.link-button{background:none;border:0;padding:0;font-size:12px;text-decoration:underline;cursor:pointer;justify-self:start;color:var(--c-36392f)}
.auth-status{margin-top:18px;font-size:13px;min-height:1.4em}
.auth-status.error{color:var(--c-a3271f)}
#account.signed-in{position:relative}
#account.signed-in::after{content:"";position:absolute;top:2px;right:2px;width:7px;height:7px;border-radius:50%;background:var(--c-4f7a3a)}

/* Checkout */
.checkout-page{max-width:1100px}
.checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:48px;align-items:start;margin-top:28px}
.checkout-grid[hidden]{display:none}
.checkout-main h2,.checkout-summary h2{font:17px Arial;letter-spacing:normal;word-spacing:normal;margin:30px 0 14px}
.checkout-main h2:first-child,.checkout-summary h2:first-child{margin-top:0}
.auth-form select,.auth-form textarea{font:inherit;font-size:15px;padding:12px;border:1px solid var(--c-c9cbc0);background:var(--c-ffffff);color:var(--c-222222);width:100%;max-width:none;box-sizing:border-box}
.auth-form textarea{resize:vertical}
.checkout-main .auth-form{max-width:none}
.pay-options{border:0;padding:0;margin:0;display:grid;gap:10px}
.pay-option{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--c-c9cbc0);padding:14px;cursor:pointer;background:var(--c-ffffff)}
.pay-option:has(input:checked){border-color:var(--c-36392f);outline:1px solid var(--c-36392f)}
.pay-option input{margin-top:3px;accent-color:var(--c-36392f)}
.pay-option span{display:grid;gap:4px}
.pay-option small{color:var(--c-6b6d64);font-size:12px;line-height:1.5}
.checkout-summary{border:1px solid var(--c-d8d8d0);padding:22px;background:var(--c-fafaf7);position:sticky;top:20px}
.checkout-summary .cart-row{grid-template-columns:64px 1fr auto}
.checkout-summary .cart-row img{width:64px;height:84px}
.code-row{display:flex;gap:8px;margin-top:18px}
.code-row input{flex:1;min-width:0;font:inherit;font-size:14px;padding:11px;border:1px solid var(--c-c9cbc0);text-transform:uppercase}
.code-row button{border:1px solid var(--c-36392f);background:var(--c-ffffff);color:var(--c-36392f);padding:0 16px;cursor:pointer;font-size:13px}
.code-status{font-size:12px;min-height:1.3em;margin:8px 0 0}
.code-status.ok{color:var(--c-3e6b2c)}.code-status.error{color:var(--c-a3271f)}
.totals{margin:14px 0 18px;display:grid;gap:8px;font-size:14px}
.totals div{display:flex;justify-content:space-between;gap:12px}
.totals dt,.totals dd{margin:0}
.totals .grand{border-top:1px solid var(--c-d8d8d0);padding-top:10px;font-weight:bold;font-size:16px}
#t-discount-row dd{color:var(--c-3e6b2c)}
.checkout-summary .cta{width:100%;justify-content:center;cursor:pointer}
.checkout-summary .cta:disabled{opacity:.6;cursor:wait}
.checkout-done{max-width:560px;margin-top:20px;display:grid;gap:14px;justify-items:start}
.checkout-done h2{font:26px Arial;letter-spacing:normal;word-spacing:normal;margin:0}
.checkout-link{display:inline-flex;margin-top:4px}
@media (max-width:820px){.checkout-grid{grid-template-columns:1fr;gap:28px}.checkout-summary{position:static}}

/* Admin */
.admin-page{max-width:1200px}
.admin-tabs{display:flex;gap:4px;margin:24px 0;border-bottom:1px solid var(--c-d8d8d0)}
.admin-tabs button{background:none;border:0;padding:12px 16px;font-size:13px;cursor:pointer;color:var(--c-6b6d64);border-bottom:2px solid transparent;margin-bottom:-1px}
.admin-tabs button[aria-selected="true"]{color:var(--c-36392f);border-bottom-color:var(--c-36392f)}
.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th,.admin-table td{text-align:start;padding:10px 8px;border-bottom:1px solid var(--c-e4e4dc);vertical-align:top}
.admin-table th{font-weight:normal;color:var(--c-6b6d64);font-size:12px}
.admin-scroll{overflow-x:auto}
.admin-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;align-items:end;margin-bottom:28px;padding:18px;border:1px solid var(--c-d8d8d0);background:var(--c-fafaf7)}
.admin-form label{display:grid;gap:6px;font-size:12px}
.admin-form input{font:inherit;font-size:14px;padding:10px;border:1px solid var(--c-c9cbc0);background:var(--c-ffffff);width:100%;box-sizing:border-box}
.admin-form .check{display:flex;gap:8px;align-items:center}
.admin-form .check input{width:auto}
.admin-form .cta{margin:0;justify-content:center;cursor:pointer}
.small-button{border:1px solid var(--c-36392f);background:var(--c-ffffff);color:var(--c-36392f);padding:6px 10px;font-size:12px;cursor:pointer}
.pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;background:var(--c-ecece4)}
.pill.on{background:var(--c-dcebd3);color:var(--c-2f5a20)}.pill.off{background:var(--c-f3dcd9);color:var(--c-8a2a20)}
.order-items{margin:0;padding-inline-start:16px}
.admin-table select{font:inherit;font-size:12px;padding:4px}

/* Info pages: keep line breaks in the bilingual copy */
#page-copy{white-space:pre-line;line-height:1.75;font-size:15px;max-width:680px}
.ticker span{word-spacing:normal}

/* Branches */
.branches-intro{max-width:620px;line-height:1.7;letter-spacing:normal;font-size:15px;text-transform:none}
.branches{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:28px 0 10px}
.branch{border:1px solid var(--c-d8d8d0);padding:20px;background:var(--c-fafaf7);display:grid;gap:10px;align-content:start}
.branch h2{font:20px Arial;letter-spacing:normal;word-spacing:normal;margin:0}
.branch-city{margin:0;color:var(--c-6b6d64);font-size:12px;letter-spacing:1px;text-transform:uppercase}
.branch dl{margin:4px 0;display:grid;gap:8px;font-size:13px}
.branch dl div{display:grid;gap:2px}
.branch dt{color:var(--c-6b6d64);font-size:12px}
.branch dd{margin:0}
.branch-call{justify-self:start;border:1px solid var(--c-36392f);padding:9px 12px;font-size:13px;margin-top:4px}

/* Privacy notices */
.privacy-note{font-size:12px;color:var(--c-6b6d64);margin:4px 0 10px;line-height:1.5}
.privacy-note a{text-decoration:underline}
.footer-brand a{display:block;font-size:12px;margin-top:6px;text-decoration:underline}

/* Admin: orders with photos, alerts, printing */
.admin-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:6px}
.admin-filter{font-size:12px;display:inline-flex;gap:6px;align-items:center}
.admin-muted{font-size:11px;color:var(--c-6b6d64);margin:4px 0 12px}
.small-button.strong{background:var(--c-36392f);color:var(--c-ffffff)}
.small-button.gap{margin-inline-start:6px}
.upper{text-transform:uppercase}
.new-badge{background:var(--c-a3271f);color:var(--c-ffffff);border-radius:10px;padding:1px 7px;font-size:11px;margin-inline-start:4px}
.order-new{background:var(--c-fff8e6)}
.order-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.order-thumbs figure{margin:0;width:64px;font-size:10px;text-align:center}
.order-thumbs img{width:64px;height:84px;object-fit:cover;display:block;margin-bottom:3px}
.print-only{display:none}
@media print{
  .no-print,.whatsapp,#main-menu,#menu-toggle{display:none!important}
  body{background:var(--c-ffffff)}
  .print-only{display:block}
  /* Order slips for the receipt printer (public/receipt.js): one column, black only, no photos.
     Width per paper size via --receipt-width (80 mm roll = 72 mm printable); @page set by receipt.js. */
  html,body{margin:0!important;padding:0!important;background:rgb(255 255 255)!important}
  #print-area{width:var(--receipt-width,72mm);margin:0 auto;color:rgb(0 0 0)}
  .receipt{font:12px/1.35 Arial,sans-serif;color:rgb(0 0 0);background:rgb(255 255 255);padding:2mm 0 5mm;break-after:page;page-break-after:always;overflow-wrap:anywhere;word-break:break-word}
  .receipt:last-child{break-after:auto;page-break-after:auto}
  .receipt *{color:rgb(0 0 0)!important;background:none!important;box-shadow:none!important}
  .r-head{text-align:center;border-bottom:1px dashed rgb(0 0 0);padding-bottom:2mm}
  .r-brand{font:bold 18px Arial,sans-serif;letter-spacing:3px;margin:0}
  .receipt h1{font:bold 15px Arial,sans-serif;margin:1mm 0 0;letter-spacing:normal}
  .receipt section{border-bottom:1px dashed rgb(0 0 0);padding:2mm 0}
  .receipt h2{font:bold 12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;margin:0 0 1mm}
  .receipt p{margin:0}
  .r-collect{font-weight:bold;font-size:13px;margin-top:1mm!important}
  .r-notes{margin-top:1mm!important;font-weight:bold}
  .r-items{list-style:none;margin:0;padding:0}
  .r-item{padding:1.5mm 0;border-bottom:1px dotted rgb(0 0 0);break-inside:avoid}
  .r-item:last-child{border-bottom:0}
  .r-row{display:flex;justify-content:space-between;gap:2mm;flex-wrap:wrap}
  .r-code{font-size:13px}
  .r-totals{margin:2mm 0 0;display:grid;gap:1mm}
  .r-totals div{display:flex;justify-content:space-between;gap:2mm}
  .r-totals dt,.r-totals dd{margin:0}
  .r-totals dd{white-space:nowrap}
  .r-grand{border-top:2px solid rgb(0 0 0);padding-top:1mm;font:bold 15px Arial,sans-serif}
  .r-foot{text-align:center;margin-top:3mm;font-size:11px}
  #print-area[data-paper="58"] .receipt{font-size:11px}
  #print-area[data-paper=a4] .receipt{font-size:13px}
}

/* Admin: Telegram alerts */
.admin-h2{font:18px Arial;letter-spacing:normal;margin:6px 0 8px}
.tg-box{border:1px solid var(--c-d8d8d0);background:var(--c-fafaf7);padding:14px;max-width:640px}
.tg-steps{line-height:1.9;font-size:14px;max-width:640px}
.tg-chats{list-style:none;padding:0;margin:0 0 10px;font-size:14px}
.tg-code{font:16px monospace;background:var(--c-f1efe6);padding:4px 8px;border-radius:4px;margin:0 6px}
.tg-code:empty{display:none}

/* "Added to your cart" popup */
#added-dialog{padding:30px;width:min(440px,92vw);border:0;text-align:center}
.added-check{width:44px;height:44px;line-height:44px;border-radius:50%;background:var(--c-36392f);color:var(--c-ffffff);font-size:22px;margin:0 auto 10px}
#added-dialog h2{font:22px Arial;letter-spacing:normal;margin:0 0 18px}
.added-item{display:flex;gap:14px;align-items:center;text-align:start;border-top:1px solid var(--c-e3e3dc);border-bottom:1px solid var(--c-e3e3dc);padding:14px 0}
.added-item img{width:72px;height:96px;object-fit:cover}
.added-item h3{font:15px Arial;margin:0 0 6px}
.added-item p{margin:2px 0;font-size:13px;color:var(--c-6b6d64)}
.added-item p:empty{display:none}
.added-actions{display:grid;gap:10px;margin-top:20px}
.added-actions .cta{margin:0;justify-content:center}
.added-continue{border:1px solid var(--c-36392f);background:var(--c-ffffff);color:var(--c-36392f);padding:17px;font-size:12px;cursor:pointer;text-align:center}

/* Anything marked hidden stays hidden, whatever display rule it has */
[hidden]{display:none!important}

/* Saved details */
.auth-form label.save-info{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;cursor:pointer}
.save-info input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--c-36392f)}
.saved-details{border:1px solid var(--c-d8d8d0);background:var(--c-fafaf7);padding:16px;margin:18px 0;max-width:480px}
.saved-details h2{font:16px Arial;letter-spacing:normal;margin:0 0 8px}
.saved-details p{margin:4px 0;font-size:14px;line-height:1.6;white-space:pre-line}

/* "Sign in to shop" popup */
#auth-dialog{padding:34px 30px 26px;width:min(440px,92vw);border:0;text-align:center;position:fixed}
#auth-dialog h2{font:22px Arial;letter-spacing:normal;margin:0 0 10px}
.auth-dialog-text{font-size:14px;line-height:1.6;margin:0 0 10px;color:var(--c-36392f)}
.auth-dialog-offer{display:inline-block;background:var(--c-36392f);color:var(--c-ffffff);font-size:13px;padding:7px 12px;margin:0 0 6px}
.auth-dialog-close{position:absolute;top:8px;inset-inline-end:10px;border:0;background:none;font-size:26px;cursor:pointer;color:var(--c-36392f)}
.auth-dialog-browse{border:0;background:none;text-decoration:underline;font-size:12px;cursor:pointer;color:var(--c-6b6d64);padding:6px}

/* Logos carry width/height attributes (no layout shift); CSS sets the real size */
.logo img,.footer-brand img{height:auto}

/* Homepage intro: headline + call to action above the fold */
.hero-intro{text-align:center;padding:26px 5% 22px;background:var(--c-ffffff)}
.hero-intro .eyebrow{color:var(--c-6b675e);margin:0 0 8px}
.hero-intro h1{font:400 clamp(22px,3.2vw,34px)/1.25 Arial,sans-serif;letter-spacing:.5px;margin:0 auto 16px;max-width:640px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;align-items:center}
.hero-actions .cta,.sticky-cta .cta{justify-content:center}
.hero-actions .cta{margin:0;padding:15px 30px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer}
.hero-offer{font-size:13px;color:var(--c-36392f);text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.hero-intro{padding:18px 16px 16px}.hero-intro h1{font-size:21px;margin-bottom:12px}.hero-actions{flex-direction:column;gap:10px}.hero-actions .cta{width:100%}}

/* Loading states */
.card.skeleton{aspect-ratio:3/4;background:linear-gradient(100deg,var(--c-f2f1ed) 40%,var(--c-faf9f6) 50%,var(--c-f2f1ed) 60%) 0 0/300% 100%;animation:shimmer 1.3s linear infinite}
@keyframes shimmer{to{background-position:-150% 0}}
@media(prefers-reduced-motion:reduce){.card.skeleton{animation:none}}
.card img{background:var(--c-f2f1ed)}
.loading-note{font-size:14px;color:var(--c-6b675e);padding:30px 0}
.loading-note.error{color:var(--c-a3271f)}
button.is-loading,.cta.is-loading{position:relative;color:transparent!important;pointer-events:none}
button.is-loading::after,.cta.is-loading::after{content:"";position:absolute;inset:0;margin:auto;width:18px;height:18px;border:2px solid var(--c-ffffff);border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Form error states */
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--c-a3271f)!important;outline:1px solid var(--c-a3271f);background:var(--c-fff8f7)}
input[type=checkbox][aria-invalid=true]{outline:2px solid var(--c-a3271f);outline-offset:2px}
.field-error{display:block;color:var(--c-a3271f);font-size:12.5px;font-weight:400;margin-top:6px;line-height:1.4}
.field-error::before{content:"⚠ "}
.newsletter-status.error,.code-status.error{color:var(--c-a3271f)}
.newsletter-status.ok{color:var(--c-1d6b3a)}

.thank-you>p:not(.eyebrow):not(.privacy-note),.not-found>p:not(.eyebrow){font-size:15px;letter-spacing:normal;line-height:1.6;color:var(--c-36392f)}

/* 404 page */
.not-found h1{margin-top:6px}
.not-found-search{margin:26px 0 8px;max-width:480px}
.not-found-search label{display:block;font-size:13px;margin-bottom:8px}
.not-found-search div{display:flex;gap:8px}
.not-found-search input{flex:1;min-width:0;padding:13px;border:1px solid var(--c-cccccc);font-size:15px}
.not-found-search .cta{margin:0;padding:13px 20px}
.not-found .added-actions{max-width:480px}
.not-found-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:28px;font-size:13px}
.not-found-links a{text-decoration:underline;text-underline-offset:3px}

/* Thank-you page */
.thank-you .ty-order{font-size:16px;margin:10px 0}
.thank-you .ty-order strong{font-size:20px;letter-spacing:1px;margin-inline-start:6px}
.thank-you h2{font:600 15px Arial;letter-spacing:1px;text-transform:uppercase;margin:30px 0 10px}
.ty-steps{padding-inline-start:20px;line-height:1.7;font-size:14.5px}
.ty-steps li{margin-bottom:8px}
.thank-you .added-actions{max-width:420px}

/* Cookie notice */
.cookie-banner{position:fixed;z-index:60;left:16px;right:16px;bottom:16px;max-width:620px;margin:auto;background:var(--c-202020);color:var(--c-ffffff);padding:16px 18px;display:flex;gap:14px;align-items:center;box-shadow:0 6px 24px #0004;font-size:13px;line-height:1.5}
.cookie-banner p{margin:0;flex:1}
.cookie-banner a{color:var(--c-ffffff);text-decoration:underline}
.cookie-banner div{display:flex;gap:8px;flex:none}
.cookie-banner button{border:1px solid var(--c-ffffff);background:var(--c-ffffff);color:var(--c-202020);padding:9px 14px;font-size:12px;cursor:pointer}
.cookie-banner .cookie-essential{background:transparent;color:var(--c-ffffff)}
@media(max-width:650px){.cookie-banner{flex-direction:column;align-items:stretch;left:10px;right:10px;bottom:10px}.cookie-banner div button{flex:1}.has-sticky-cta .cookie-banner{bottom:74px}}

/* Colour picker in the garment view */
.colour-options{border:0;padding:0;margin:14px 0 6px}
.colour-options legend{font-size:13px;font-weight:600;margin-bottom:8px;padding:0}
.swatches{display:flex;flex-wrap:wrap;gap:8px}
.swatch{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--c-d8d6cf);background:var(--c-ffffff);padding:6px 11px 6px 7px;border-radius:999px;font-size:12px;cursor:pointer;color:var(--c-302e28)}
.swatch-dot{width:20px;height:20px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #0002;flex:none}
.swatch[aria-pressed=true]{border-color:var(--c-202020);box-shadow:0 0 0 1px var(--c-202020);font-weight:600}
.swatch:hover{border-color:var(--c-8a877e)}
.colour-hint{font-size:12px;color:var(--c-6b675e);margin:8px 0 0;min-height:0}
.colour-hint:empty{display:none}
.needs-choice{animation:nudge .5s}
.needs-choice legend{color:var(--c-a3271f)}
@keyframes nudge{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
#thumbs button[aria-current=true]{outline:2px solid var(--c-202020);outline-offset:1px}

/* Colour dots under garment cards */
.card-colours{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 8px}
.card-dot{width:18px;height:18px;padding:0;border-radius:50%;border:2px solid var(--c-ffffff);background:var(--swatch);box-shadow:0 0 0 1px var(--c-cccccc);cursor:pointer;flex:none}
.card-dot[aria-pressed=true]{box-shadow:0 0 0 2px var(--c-202020)}
.card-dot:hover{box-shadow:0 0 0 1px var(--c-8a877e)}
.card-dot-more{font-size:11px;color:var(--c-6b675e)}

/* Light / dark switch in the header */
#theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;background:none;color:inherit;cursor:pointer;border-radius:50%}
#theme-toggle:hover{background:var(--c-f2f1ed)}
#theme-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}
#theme-toggle[aria-pressed=false] svg{fill:currentColor;stroke:none}

/* Sticky mobile call to action (collection page) */
.sticky-cta{display:none}
@media(max-width:650px){
  .sticky-cta{display:block;position:fixed;z-index:50;left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--c-fffffff2);border-top:1px solid var(--c-e6e4de);transition:transform .25s}
  .sticky-cta.away{transform:translateY(110%)}
  .sticky-cta .cta{display:flex;width:100%;margin:0;padding:15px;letter-spacing:1.5px;text-transform:uppercase}
  .has-sticky-cta{padding-bottom:72px}
  .has-sticky-cta .whatsapp{bottom:84px}
}

/* ==================================================================
   Site header, menu and drawer (scripts/header.mjs + navigation.js)
   Mobile first: 360px phones, then 700px tablets, then 1024px desktop.
   ================================================================== */
/* Menu colours: theme tokens as the fallback, OKLCH where the browser supports it. */
:root{--menu-bg:var(--c-ffffff);--menu-ink:var(--c-202020);--menu-muted:var(--c-6b6d64);--menu-line:var(--c-e6e6dd);--menu-hover:var(--c-f5f3ef);--menu-press:var(--c-ecece4);--menu-accent:var(--c-36392f);--menu-on-accent:var(--c-ffffff);--menu-focus:var(--c-36392f);--menu-scrim:rgb(0 0 0 / .42);--header-h:56px}
@supports (color:oklch(0% 0 0)){
  :root{--menu-bg:oklch(100% 0 0);--menu-ink:oklch(23.5% .004 106);--menu-muted:oklch(51% .012 115);--menu-line:oklch(92.5% .008 106);--menu-hover:oklch(96.6% .006 85);--menu-press:oklch(93.5% .009 106);--menu-accent:oklch(32.5% .014 120);--menu-on-accent:oklch(99% 0 0);--menu-focus:oklch(48% .09 150);--menu-scrim:oklch(15% .01 100 / .45)}
  @media screen{html[data-theme=dark]{--menu-bg:oklch(19.5% .004 90);--menu-ink:oklch(91% .008 100);--menu-muted:oklch(71% .01 105);--menu-line:oklch(30% .008 100);--menu-hover:oklch(25.5% .008 95);--menu-press:oklch(29% .01 95);--menu-accent:oklch(84% .02 110);--menu-on-accent:oklch(19% .004 90);--menu-focus:oklch(78% .1 150);--menu-scrim:oklch(5% 0 0 / .6)}}
}
@media(min-width:700px){:root{--header-h:72px}}

/* Typography: kerning everywhere, balanced headings, no single-word last lines. */
body{font-kerning:normal}
h1,h2,h3{text-wrap:balance;text-rendering:optimizeLegibility}
p,li,figcaption{text-wrap:pretty}
/* Arabic is a joined script: never letter-space it. Tracking is for Latin capitals only. */
html[lang=ar] :is(h1,h2,h3,p,a,button,span,label,strong,li,summary,.eyebrow,.cta){letter-spacing:0}
/* Numbers that change or line up (prices, counts, totals, dates) use equal-width digits. */
.badge,.menu-count,.chip-count,.price,.product-meta,#cart-total,.cart-row strong,.quantity span,.added-price,.order-date,.order-totals,.order-line-price,.checkout-summary,#t-subtotal,#t-delivery,#t-discount,#t-total{font-variant-numeric:tabular-nums}
/* Text pages: comfortable line length and leading. */
.info-page #page-copy,.info-page>p,.info-page li{max-width:68ch}
.info-page #page-copy{line-height:1.7}
.info-page>p.branches-intro{font-size:15px;letter-spacing:normal;line-height:1.6;max-width:60ch}
html[lang=ar] .info-page #page-copy{line-height:1.85;font-size:17px}
html{scroll-padding-top:calc(var(--header-h) + 16px)}
body{padding-inline:env(safe-area-inset-left) env(safe-area-inset-right)}

/* ---- header ---- */
.site-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:auto auto 1fr auto;grid-template-areas:"menu logo . actions" "search search search search";align-items:center;gap:0 4px;height:auto;min-height:0;margin:0;padding:env(safe-area-inset-top) max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));background:var(--menu-bg);color:var(--menu-ink);border-bottom:1px solid var(--menu-line);flex-wrap:nowrap}
.site-header>:not(#header-search){min-height:var(--header-h)}
.site-header #menu-toggle{grid-area:menu;align-self:center;min-height:44px}
.site-header .logo{grid-area:logo;display:flex;align-items:center;padding:0 6px;margin:0}
.site-header .logo img{width:104px;height:auto}
.site-header .site-nav{display:none;grid-area:nav}
.site-header .header-actions{grid-area:actions;display:flex;align-items:center;gap:0;margin:0}
.site-header #header-search{grid-area:search;display:none;position:relative;max-width:none;height:auto;min-height:0;margin:0 0 8px;background:var(--menu-hover);border-radius:10px}
.site-header.search-open #header-search{display:flex}
.site-header #search{flex:1;min-width:0;height:44px;padding:0 14px;border:0;background:none;color:inherit;font-size:16px;outline:none}
.site-header #header-search:focus-within{box-shadow:0 0 0 2px var(--menu-focus)}
/* Icon buttons: at least 44x44 px to tap, icon optically centred. */
.site-header .hdr-btn,.site-header #theme-toggle{position:relative;display:inline-grid;place-items:center;min-width:44px;min-height:44px;width:44px;height:44px;padding:0;margin:0;border:0;border-radius:50%;background:none;color:inherit;font:600 13px/1 Arial,sans-serif;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color .15s}
.site-header .hdr-btn svg,.site-header #theme-toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.site-header #theme-toggle[aria-pressed=false] svg{fill:currentColor;stroke:none;width:20px;height:20px}
.site-header #menu-toggle svg{transform:translateY(.5px)}
.site-header #search-toggle svg,.site-header #header-search .hdr-btn svg{transform:translate(.5px,.5px)}
.site-header #cart-button svg{transform:translateY(-.5px)}
.site-header .lang-btn{font-size:13px;letter-spacing:.06em}
.site-header #account.signed-in::after{content:"";position:absolute;top:auto;left:auto;right:auto;bottom:9px;inset-inline-end:9px;width:7px;height:7px;border-radius:50%;background:var(--c-1d6b3a);box-shadow:0 0 0 2px var(--menu-bg)}
/* Badges sit on the icon (absolute), so a count never moves anything. */
.site-header .badge,.site-header #count,.site-header #cart-count{position:absolute;top:5px;left:auto;right:auto;inset-inline-end:3px;min-width:17px;height:17px;padding:0 4px;margin:0;border:0;border-radius:9px;background:var(--menu-accent);color:var(--menu-on-accent);font:700 10px/17px Arial,sans-serif;text-align:center;letter-spacing:0;pointer-events:none}
.site-header .lang-btn,.site-header #saved,.site-header #account,.site-header #theme-toggle{display:none}
@media(hover:hover){.site-header .hdr-btn:hover,.site-header #theme-toggle:hover{background:var(--menu-hover)}}
.site-header .hdr-btn:active,.site-header #theme-toggle:active{background:var(--menu-press)}
.site-header .hdr-btn[aria-pressed=true],.site-header .hdr-btn[aria-expanded=true]{background:var(--menu-press)}
:is(.site-header,.site-menu) :is(a,button,input):focus-visible{outline:2px solid var(--menu-focus);outline-offset:2px}

/* ---- search suggestions (combobox) ---- */
.search-list{position:absolute;top:calc(100% + 6px);inset-inline:0;z-index:45;max-height:min(60vh,420px);overflow:auto;margin:0;padding:6px;list-style:none;background:var(--menu-bg);color:var(--menu-ink);border:1px solid var(--menu-line);border-radius:12px;box-shadow:0 12px 32px rgb(0 0 0 / .14)}
.search-list[hidden]{display:none}
.search-opt{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px;border-radius:8px;cursor:pointer;font-size:15px;line-height:1.3}
.search-opt img{width:32px;height:42px;object-fit:cover;border-radius:4px;flex:none}
.search-opt .opt-kind{flex:none;min-width:32px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--menu-muted)}
html[lang=ar] .search-opt .opt-kind{font-size:12px;letter-spacing:0}
html[lang=ar] .search-opt{font-size:16px}
.search-opt[aria-selected=true],.search-opt:hover{background:var(--menu-hover)}
.search-opt[aria-selected=true]{box-shadow:inset 3px 0 0 var(--menu-accent)}
html[dir=rtl] .search-opt[aria-selected=true]{box-shadow:inset -3px 0 0 var(--menu-accent)}

/* ---- tablets ---- */
@media(min-width:700px){
  .site-header{grid-template-columns:auto auto minmax(180px,1fr) auto;grid-template-areas:"menu logo search actions";gap:0 12px;padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}
  .site-header .logo img{width:140px}
  .site-header #header-search{display:flex;margin:0;max-width:520px;justify-self:center;width:100%}
  .site-header #search-toggle{display:none}
  .site-header .lang-btn,.site-header #saved,.site-header #account,.site-header #theme-toggle{display:inline-grid}
}
/* ---- desktop: menu in the header, no drawer button ---- */
@media(min-width:1024px){
  .site-header{grid-template-columns:auto auto minmax(200px,1fr) auto;grid-template-areas:"logo nav search actions";padding-inline:max(4%,env(safe-area-inset-left)) max(4%,env(safe-area-inset-right))}
  .site-header #menu-toggle{display:none}
  .site-header .logo img{width:150px}
  .site-header .site-nav{display:flex;align-items:center}
}
.site-nav>ul{display:flex;align-items:center;gap:2px;margin:0;padding:0;list-style:none}
.site-nav li{position:static}
.site-nav .nav-trigger,.site-nav .nav-link{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:none;color:var(--menu-ink);font:500 15px/1.2 Arial,sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap;font-size-adjust:.52;transition:background-color .15s}
html[lang=ar] .site-nav .nav-trigger,html[lang=ar] .site-nav .nav-link{font-size:16.5px;font-size-adjust:none}
.site-nav .nav-trigger:hover,.site-nav .nav-link:hover{background:var(--menu-hover)}
.site-nav .nav-trigger:active,.site-nav .nav-link:active{background:var(--menu-press)}
.site-nav .nav-trigger[aria-expanded=true]{background:var(--menu-hover)}
.site-nav .nav-link[aria-current=page]{box-shadow:inset 0 -2px 0 var(--menu-accent);border-radius:8px 8px 0 0}
.chev{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transform:translateY(1px);transition:transform .2s;flex:none}
[aria-expanded=true]>.chev{transform:translateY(1px) rotate(180deg)}

/* Drop-down panels: fade and grow from their own button; closing mid-way simply reverses. */
.nav-panel{position:absolute;top:100%;z-index:44;min-width:240px;padding:10px;background:var(--menu-bg);color:var(--menu-ink);border:1px solid var(--menu-line);border-radius:0 0 14px 14px;box-shadow:0 18px 40px rgb(0 0 0 / .12);opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);transition:opacity .16s ease-in,transform .16s ease-in,visibility 0s .16s}
.nav-panel.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease-out,transform .24s cubic-bezier(.2,.8,.2,1),visibility 0s}
.nav-panel.nav-mega{inset-inline:max(4%,env(safe-area-inset-left));padding:18px 22px 22px}
.site-nav li:last-child{position:relative}
.site-nav li:last-child .nav-panel{inset-inline-start:0}
.nav-panel ul{margin:0;padding:0;list-style:none}
.mega-top{padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--menu-line)}
.mega-cols{display:grid;grid-template-columns:1fr 2fr 1fr;gap:8px 28px}
.mega-col:nth-child(2) ul{columns:2;column-gap:20px}
.mega-head{display:flex;align-items:center;min-height:44px;padding:0 10px;margin-bottom:4px;color:var(--menu-ink);font:700 12px/1.2 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;border-radius:8px}
html[lang=ar] .mega-head{font-size:15px;letter-spacing:0}
.panel-link{display:flex;align-items:center;min-height:44px;padding:0 10px;border-radius:8px;color:var(--menu-ink);font-size:15px;line-height:1.3;text-decoration:none;break-inside:avoid}
html[lang=ar] .panel-link{font-size:16px}
.panel-link.strong{font-weight:700}
.panel-link:hover,.mega-head:hover{background:var(--menu-hover)}
.panel-link:active,.mega-head:active{background:var(--menu-press)}
.panel-link[aria-current=page],.mega-head[aria-current=page]{font-weight:700;background:var(--menu-hover)}

/* ---- drawer ---- */
.site-menu{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--menu-ink);overflow:hidden}
.site-menu::backdrop{background:transparent}
.menu-scrim{position:absolute;inset:0;background:var(--menu-scrim);opacity:0;transition:opacity .28s}
.menu-panel{position:absolute;inset-block:0;inset-inline-start:0;display:flex;flex-direction:column;width:min(380px,88vw);overflow-y:auto;overscroll-behavior:contain;padding:max(10px,env(safe-area-inset-top)) 14px max(16px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:var(--menu-bg);box-shadow:0 0 40px rgb(0 0 0 / .18);transform:translateX(-100%);transition:transform .26s cubic-bezier(.4,0,.6,1)}
/* Origin-aware: the drawer comes from the side its button is on, so it mirrors in Arabic. */
.site-menu[dir=rtl] .menu-panel{transform:translateX(100%);padding-inline:max(14px,env(safe-area-inset-right)) 14px}
.site-menu.is-open .menu-scrim{opacity:1}
.site-menu.is-open .menu-panel{transform:none;transition:transform .32s cubic-bezier(.2,.8,.2,1)}
.menu-top{display:flex;align-items:center;justify-content:space-between;min-height:52px;margin-bottom:6px}
.menu-top h2{margin:0;padding-inline:10px;font:700 12px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--menu-muted)}
html[lang=ar] .menu-top h2{font-size:15px;letter-spacing:0}
.menu-close{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:none;color:inherit;cursor:pointer}
.menu-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.menu-close:hover{background:var(--menu-hover)}.menu-close:active{background:var(--menu-press)}
.site-menu nav{flex:1}
.menu-list,.sub-list{margin:0;padding:0;list-style:none}
.menu-row{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 10px;border:0;border-radius:10px;background:none;color:var(--menu-ink);font:400 16px/1.3 Arial,sans-serif;font-size-adjust:.52;text-align:start;text-decoration:none;cursor:pointer}
html[lang=ar] .menu-row{font-size:17px;font-size-adjust:none;line-height:1.5}
.menu-row svg:not(.chev){width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:var(--menu-muted)}
.menu-row>span{flex:1}
.menu-row.strong{font-weight:700}
.menu-row:hover{background:var(--menu-hover)}
.menu-row:active{background:var(--menu-press)}
.menu-row[aria-current=page],.menu-sub[aria-current=page]{font-weight:700;background:var(--menu-hover)}
.menu-count{min-width:22px;padding:2px 7px;border-radius:11px;background:var(--menu-hover);font-size:12px;text-align:center;color:var(--menu-muted)}
.menu-sep{height:1px;margin:8px 10px;background:var(--menu-line)}
/* Sub-categories fold under their group; opening or closing can be interrupted. */
.acc-body{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .22s ease,visibility 0s .22s}
.acc-trigger[aria-expanded=true]+.acc-body{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .26s cubic-bezier(.2,.8,.2,1),visibility 0s}
.acc-inner{min-height:0;overflow:hidden}
.sub-list{padding:2px 0 8px;padding-inline-start:20px}
.menu-sub{display:flex;align-items:center;min-height:44px;padding:0 10px;border-radius:8px;color:var(--menu-ink);font-size:15px;line-height:1.3;text-decoration:none}
html[lang=ar] .menu-sub{font-size:16px;line-height:1.5}
.menu-sub.strong{font-weight:700}
.menu-sub:hover{background:var(--menu-hover)}.menu-sub:active{background:var(--menu-press)}
.menu-foot{display:flex;gap:8px;padding:14px 4px 0;margin-top:10px;border-top:1px solid var(--menu-line)}
.menu-pill{flex:1;min-height:44px;padding:0 14px;border:1px solid var(--menu-line);border-radius:22px;background:none;color:var(--menu-ink);font:500 14px/1.2 Arial,sans-serif;cursor:pointer}
.menu-pill:hover{background:var(--menu-hover)}.menu-pill:active{background:var(--menu-press)}
/* Stagger: rows cascade in when the drawer opens (no delay when it closes). */
.menu-list>li,.menu-foot{opacity:0;transform:translateX(-10px);transition:opacity .12s,transform .12s}
.site-menu[dir=rtl] .menu-list>li,.site-menu[dir=rtl] .menu-foot{transform:translateX(10px)}
.site-menu.is-open .menu-list>li,.site-menu.is-open .menu-foot{opacity:1;transform:none;transition:opacity .24s ease-out,transform .3s cubic-bezier(.2,.8,.2,1);transition-delay:calc(60ms + min(var(--i,0),12) * 24ms)}

/* ---- collection: category heading, group chips and sub-category chips ---- */
.cat-head{margin:0 0 18px;text-align:center}
.cat-head[hidden]{display:none}
.cat-head h2{margin:6px 0 0}
.cat-trail{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 0;font-size:13px;color:var(--c-6b6d64)}
.cat-trail a{display:inline-flex;align-items:center;min-height:32px;padding:0 4px;color:inherit}
.cat-trail a+a::before{content:"/";margin-inline-end:8px;color:var(--c-b3afa5)}
#filters{display:block}
#filters .filter-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}
#filters .filter-subs{gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--c-eeeeee)}
#filters button{min-height:44px}
#filters .filter-subs button{display:inline-flex;align-items:center;gap:6px;padding:0 14px;border:1px solid var(--c-dddddd);border-radius:22px;font-size:13px}
#filters .filter-subs button.active{background:var(--c-222222);border-color:var(--c-222222);color:var(--c-ffffff)}
#filters .filter-subs button.empty{color:var(--c-777777);border-style:dashed}
.chip-count{min-width:2ch;font-size:11px;opacity:.7}
html[lang=ar] #filters button{font-size:14px;letter-spacing:0}
@media(max-width:520px){#filters .filter-row{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}}
#empty.coming-soon{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 16px;text-align:center}
#empty.coming-soon[hidden]{display:none}
#empty.coming-soon strong{font:400 28px/1.2 Georgia,serif}
#empty.coming-soon span{max-width:45ch;color:var(--c-6b6d64)}
.card .heart{min-width:44px;min-height:44px}

/* ---- My orders on the account page opens like a section ---- */
.my-orders>summary{list-style:none;cursor:pointer;display:flex;align-items:center;min-height:44px}
.my-orders>summary::-webkit-details-marker{display:none}
.my-orders>summary h2{margin:0}
.my-orders>summary::after{content:"";width:9px;height:9px;margin-inline-start:12px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.my-orders:not([open])>summary::after{transform:rotate(-45deg)}
html[dir=rtl] .my-orders:not([open])>summary::after{transform:rotate(135deg)}

/* Shared element: the product photo morphs from its card into the product view. */
::view-transition-group(product-photo){animation-duration:.34s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}
::view-transition-old(root),::view-transition-new(root){animation-duration:.2s}

/* Reduced motion: no slides, fades, cascades or morphs anywhere in the menu. */
@media(prefers-reduced-motion:reduce){
  .nav-panel,.nav-panel.is-open,.menu-scrim,.menu-panel,.site-menu.is-open .menu-panel,.acc-body,.acc-trigger[aria-expanded=true]+.acc-body,.menu-list>li,.menu-foot,.site-menu.is-open .menu-list>li,.site-menu.is-open .menu-foot,.chev,.my-orders>summary::after,.site-header .hdr-btn{transition:none!important}
  .nav-panel,.menu-list>li,.menu-foot{transform:none!important}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}
@media print{.site-header,.site-menu{display:none!important}}

/* ==================================================================
   Shop chat (parked/chat.js, switched off for now). Uses the menu colour tokens, so light,
   dark and OKLCH all follow the menu. Phones: full screen; 700px+: a panel.
   ================================================================== */
.chat-launch{position:fixed;z-index:45;bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px));inset-inline-end:max(16px,calc(env(safe-area-inset-right) + 12px));display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 18px 0 14px;border:0;border-radius:26px;background:var(--menu-accent);color:var(--menu-on-accent);font:600 15px/1.2 Arial,sans-serif;box-shadow:0 6px 22px rgb(0 0 0 / .22);cursor:pointer;transition:transform .15s,box-shadow .15s}
html[lang=ar] .chat-launch{font-size:16px}
.chat-launch svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transform:translateY(.5px)}
.chat-launch:hover{box-shadow:0 8px 28px rgb(0 0 0 / .28)}
.chat-launch:active{transform:scale(.97)}
.chat-launch:focus-visible,.chat-panel :is(a,button,textarea,[tabindex]):focus-visible{outline:2px solid var(--menu-focus);outline-offset:2px}
.has-sticky-cta .chat-launch{bottom:calc(84px + env(safe-area-inset-bottom))}
body.chat-open .chat-launch{display:none}
.chat-panel{position:fixed;z-index:60;inset:0;display:flex;flex-direction:column;background:var(--menu-bg);color:var(--menu-ink);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);opacity:0;transform:translateY(12px);transition:opacity .2s,transform .24s cubic-bezier(.2,.8,.2,1)}
.chat-panel[hidden]{display:none}
.chat-panel.is-open{opacity:1;transform:none}
@media(min-width:700px){
  .chat-panel{inset:auto;bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px));inset-inline-end:max(16px,calc(env(safe-area-inset-right) + 12px));width:min(400px,calc(100vw - 32px));height:min(640px,calc(100dvh - 120px));padding:0;border:1px solid var(--menu-line);border-radius:18px;box-shadow:0 18px 50px rgb(0 0 0 / .22);overflow:hidden;transform-origin:bottom right}
  .chat-panel[dir=rtl]{transform-origin:bottom left}
}
.chat-head{display:flex;align-items:center;gap:6px;padding:10px 8px 10px 16px;border-bottom:1px solid var(--menu-line)}
.chat-panel[dir=rtl] .chat-head{padding:10px 16px 10px 8px}
.chat-titles{flex:1;min-width:0}
.chat-titles h2{margin:0;font:700 17px/1.2 Arial,sans-serif;letter-spacing:0}
.chat-titles p{margin:2px 0 0;font-size:12px;line-height:1.4;color:var(--menu-muted)}
.chat-new{min-height:44px;padding:0 12px;border:1px solid var(--menu-line);border-radius:22px;background:none;color:inherit;font:500 13px Arial,sans-serif;cursor:pointer}
.chat-close{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:none;color:inherit;cursor:pointer}
.chat-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
:is(.chat-new,.chat-close,.chat-chip,.chat-secondary):hover{background:var(--menu-hover)}
:is(.chat-new,.chat-close,.chat-chip,.chat-secondary):active{background:var(--menu-press)}
.chat-log{flex:1;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:10px;padding:16px}
.chat-log>*{flex-shrink:0}
/* Each text takes its direction from its own first letter, so English (while the Arabic
   is mixed in) and Arabic both read correctly on an Arabic page. */
.chat-panel :is(h2,p,span,strong,a,button,.chat-msg),.chat-launch span{unicode-bidi:plaintext}
.chat-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-size:15px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;text-wrap:pretty}
html[lang=ar] .chat-msg{font-size:16px;line-height:1.7}
.chat-msg.bot{align-self:flex-start;background:var(--menu-hover);border-end-start-radius:4px}
.chat-msg.me{align-self:flex-end;background:var(--menu-accent);color:var(--menu-on-accent);border-end-end-radius:4px}
.chat-msg.notice{align-self:stretch;max-width:none;background:none;border:1px dashed var(--menu-line);color:var(--menu-ink)}
.chat-msg[aria-busy=true]::after{content:"▍";animation:chat-caret 1s steps(2) infinite}
@keyframes chat-caret{50%{opacity:0}}
.chat-wa{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;padding:0 4px;color:var(--c-168c49);font-weight:700}
html[data-theme=dark] .chat-wa{color:var(--c-1d6b3a)}
.chat-cards{display:flex;gap:10px;margin:0;padding:2px 0 6px;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory}
.chat-card{flex:none;width:132px;scroll-snap-align:start}
.chat-card a{display:flex;flex-direction:column;gap:4px;min-height:44px;color:inherit;text-decoration:none}
.chat-card img{width:132px;height:165px;object-fit:cover;border-radius:10px;background:var(--menu-hover)}
.chat-card strong{font-size:13px;line-height:1.3}
.chat-card span{font-size:12px;color:var(--menu-muted);font-variant-numeric:tabular-nums}
.chat-card a:hover strong{text-decoration:underline}
.chat-confirm{display:grid;grid-template-columns:56px 1fr;gap:6px 12px;align-items:center;padding:12px;border:1px solid var(--menu-line);border-radius:14px}
.chat-confirm img{width:56px;height:70px;object-fit:cover;border-radius:8px}
.chat-confirm strong{display:block;font-size:14px}
.chat-confirm span{font-size:13px;color:var(--menu-muted);font-variant-numeric:tabular-nums}
.chat-confirm-actions,.chat-confirm-done,.chat-confirm .chat-wa{grid-column:1/-1;margin:0}
.chat-confirm-actions{display:flex;gap:8px}
.chat-confirm-actions .cta{margin:0;padding:0 18px;min-height:44px;gap:0;justify-content:center;flex:1;cursor:pointer}
.chat-secondary{flex:1;min-height:44px;border:1px solid var(--menu-line);border-radius:0;background:none;color:inherit;font-size:13px;cursor:pointer}
.chat-confirm-done{font-size:14px;font-weight:700}
.chat-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 10px}
.chat-chips[hidden]{display:none}
.chat-chip{min-height:44px;padding:0 14px;border:1px solid var(--menu-line);border-radius:22px;background:none;color:inherit;font:500 14px Arial,sans-serif;cursor:pointer}
html[lang=ar] .chat-chip{font-size:15px}
.chat-captcha{padding:0 16px 8px;min-height:65px}
.chat-captcha[hidden]{display:none}
.chat-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--menu-line)}
.chat-form textarea{flex:1;min-width:0;min-height:44px;max-height:120px;padding:11px 14px;border:1px solid var(--menu-line);border-radius:22px;background:var(--menu-bg);color:inherit;font:16px/1.4 Arial,sans-serif;resize:none}
.chat-counter{align-self:center;font-size:11px;color:var(--menu-muted);font-variant-numeric:tabular-nums}
.chat-send{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:var(--menu-accent);color:var(--menu-on-accent);cursor:pointer}
.chat-send svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-panel[dir=rtl] .chat-send svg{transform:scaleX(-1)}
.chat-send:disabled{opacity:.5;cursor:default}
.chat-note{margin:0;padding:0 16px 10px;font-size:11px;line-height:1.4;color:var(--menu-muted)}
html[lang=ar] .chat-note{font-size:12px}
@media(prefers-reduced-motion:reduce){.chat-panel,.chat-launch{transition:none}.chat-msg[aria-busy=true]::after{animation:none}}
@media print{.chat-launch,.chat-panel{display:none!important}}

/* /admin: visitors panel */
.visitor-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0}
.visitor-cards>div{padding:12px;border:1px solid var(--c-d8d8d0);background:var(--c-fafaf7);font-size:13px;line-height:1.5}
.visitor-cards strong{font-size:24px;font-variant-numeric:tabular-nums}
.visitor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.visitor-list h3{font:700 13px Arial,sans-serif;margin:0 0 6px}
.visitor-list ol{margin:0;padding-inline-start:20px;font-size:13px;line-height:1.7}
.visitor-list li span{float:right;font-variant-numeric:tabular-nums;color:var(--c-6b6d64)}

/* Home hero videos (public/hero-video.js): over the photo, same 4:5 frame, so nothing moves */
/* 1px inside the photo's box: the video is never a bigger paint than the hero photo, so
   the photo (shown at once) stays the page's Largest Contentful Paint. */
.hero-video{position:absolute;inset:1px;z-index:1;display:block}
.hero-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s ease}
.hero-video video.is-active{opacity:1}
.hero.video-on .carousel-controls{display:none}
.hero-pause{position:absolute;z-index:2;bottom:14px;inset-inline-end:14px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:rgb(0 0 0 / .45);color:#fff;cursor:pointer}
.hero-pause svg{width:20px;height:20px;fill:currentColor}
.hero-pause:hover{background:rgb(0 0 0 / .6)}
.hero-pause:focus-visible,.hero-video:focus-visible{outline:2px solid var(--menu-focus);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.hero-video video{transition:none}}

/* Google reviews (public/reviews.js): home summary and /reviews */
.g-reviews{max-width:1100px;margin:0 auto;padding:40px 5%}
.g-reviews.is-loading{min-height:220px}
.g-reviews-home{text-align:center}
.g-sum-head{display:flex;flex-direction:column;align-items:center;gap:6px}
.g-sum-title{margin:0;font:400 20px/1.3 Arial,sans-serif;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 10px}
.g-big{font:400 40px/1 Georgia,serif;font-variant-numeric:tabular-nums}
.g-stars{color:#e8a200;letter-spacing:1px;font-size:18px;white-space:nowrap}
html[lang=ar] .g-stars{letter-spacing:1px}
.g-sum-line{margin:0;color:var(--c-6b6d64);font-variant-numeric:tabular-nums}
/* Google's text attribution style (Roboto, 400, 1rem, #5e5e5e, one line, not translated); a light chip keeps it legible in dark mode */
.gmp-attribution{display:inline-block;font-family:Roboto,Sans-Serif;font-style:normal;font-weight:400;font-size:1rem;letter-spacing:normal;white-space:nowrap;color:#5e5e5e;background:#fff;padding:0 6px;border-radius:4px}
.g-branch-mini{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:18px 0 0;padding:0;list-style:none;font-size:14px}
.g-mini-rating{color:var(--c-6b6d64);font-variant-numeric:tabular-nums}
.g-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}
.g-actions a{margin:0;min-height:44px;display:inline-flex;align-items:center}
.g-full-top{display:grid;gap:8px;justify-items:start;margin-bottom:20px}
.g-order-note{margin:0;font-size:13px;color:var(--c-6b6d64);max-width:68ch}
.g-branches{display:grid;gap:20px}
.g-branch{border:1px solid var(--c-d8d8d0);background:var(--c-fafaf7);padding:16px}
.g-branch h2{margin:8px 0 4px;font:400 24px/1.2 Georgia,serif;letter-spacing:0}
.g-branch-rating{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-variant-numeric:tabular-nums}
.g-branch .g-actions{justify-content:flex-start}
.g-review-list{display:grid;gap:12px;margin-top:16px}
.g-review{padding:12px 0;border-top:1px solid var(--c-e6e6dd)}
.g-author{display:flex;align-items:center;gap:10px}
.g-avatar{width:40px;height:40px;border-radius:50%;flex:none;object-fit:cover;background:var(--c-e6e6dd);display:grid;place-items:center;font-weight:700}
.g-meta{display:grid;gap:2px}
.g-author-name{font-weight:700;color:inherit}
.g-sub{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--c-6b6d64)}
.g-text{margin:8px 0;white-space:pre-line;line-height:1.6;max-width:68ch}
.g-review-links{display:flex;gap:16px;font-size:13px}
.g-review-links a{display:inline-flex;align-items:center;min-height:44px;color:inherit}
.g-report{color:var(--c-6b6d64)}
.g-fallback ul{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;padding:0;list-style:none}
.g-fallback a{display:inline-flex;min-height:44px;align-items:center;color:inherit}
@media(min-width:900px){.g-branches{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* "Rate us on Google" (thank-you, My orders, branches) */
.rate-us{margin:18px 0;padding:14px;border:1px solid var(--c-d8d8d0);background:var(--c-fafaf7)}
.rate-us-title{margin:0 0 4px;font:700 15px Arial,sans-serif}
.rate-us-help{margin:0 0 6px;font-size:13px;color:var(--c-6b6d64)}
.rate-us ul{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;padding:0;list-style:none}
.rate-us a,.branch-rate{display:inline-flex;align-items:center;min-height:44px;color:inherit}
.branch-rate{margin-top:6px;font-size:14px}
.auth-form label.marketing-consent{display:flex;gap:9px;align-items:start;font-size:13px;line-height:1.7}.auth-form label.marketing-consent[hidden]{display:none}.marketing-consent input{flex:0 0 auto;width:18px;height:18px;margin-top:3px}.email-unlock{margin-top:16px}.email-unlock-link{margin-top:28px}.unsubscribe-page .cta{margin:12px 0}.unsubscribe-page #unsub-intro,.unsubscribe-page #unsub-status{font-size:14px;letter-spacing:0;line-height:1.7}.unsubscribe-page .added-continue{display:inline-block;margin-top:24px;text-decoration:none}
.js-pending footer,.js-pending .info-page>.added-actions,.js-pending .info-page>.cta{visibility:hidden}
.link-button,.not-found-links a,.hero-offer{display:inline-block;min-height:24px;line-height:24px}
/* Hero frame: centred on phones too (there .hero is a flex column, so justify-content only centres it vertically). */
.hero>.carousel{margin-inline:auto}
/* Product view: pure white (light) / pure black (dark), own values (rgb, so dark-theme.mjs leaves them alone). */
#detail,#detail #detail-image{background:rgb(255 255 255)}
html[data-theme=dark] #detail,html[data-theme=dark] #detail #detail-image{background:rgb(0 0 0)}
/* Checkout confirm step (white / black like the product view). */
.confirm-dialog{width:min(560px,94vw);max-height:90dvh;overflow-y:auto;padding:22px;background:rgb(255 255 255);color:inherit}
html[data-theme=dark] .confirm-dialog{background:rgb(0 0 0)}
.confirm-dialog::backdrop{background:rgb(0 0 0 / .6)}
.confirm-dialog h2{font:20px Arial,sans-serif;letter-spacing:normal;margin:0 0 4px}
.confirm-items{display:grid;gap:10px;margin:14px 0}
.confirm-items .cart-row{margin:0}
.confirm-details{display:grid;gap:8px;font-size:14px;margin:0 0 6px;padding-top:12px;border-top:1px solid var(--c-d8d8d0)}
.confirm-details div{display:flex;justify-content:space-between;gap:14px}
.confirm-details dt{color:var(--c-6b675e);flex:none}
.confirm-details dd{margin:0;text-align:end;overflow-wrap:anywhere}
.confirm-actions{display:flex;gap:10px;margin-top:10px}
.confirm-actions .cta{flex:1;justify-content:center;margin:0;cursor:pointer;min-height:48px}
.confirm-actions .confirm-edit{background:transparent;color:var(--c-36392f);border:1px solid var(--c-36392f)}
#detail .close{background:rgb(255 255 255)}
html[data-theme=dark] #detail .close{background:rgb(0 0 0)}
html:not([data-theme=dark]) #detail .note{color:rgb(102 102 102)}
/* Prices: sale = original struck through, then the sale price; no online price = "Ask for price". */
.price.on-sale{font-size:15px}
.price.on-sale s{color:var(--c-666666);font-weight:400;margin-inline-end:4px}
.price.on-sale strong{color:var(--c-a3271f)}
.sale-badge{display:inline-block;background:var(--c-a3271f);color:var(--c-ffffff);font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:2px 6px;vertical-align:middle;margin-inline-end:6px}
.price-ask{font-size:13px;color:var(--c-666666)}
a.add-cart.ask-price{display:block;box-sizing:border-box;text-decoration:none;line-height:1.3}
#detail-ask{text-decoration:none;margin-top:12px}
#detail-ask[hidden],#detail-add[hidden]{display:none}
.detail-price{font-size:18px;margin:14px 0 6px}
#filters .sale-chip{color:var(--c-a3271f);font-weight:700}
#filters .sale-chip.active{text-decoration:underline;text-underline-offset:4px}
/* Sizes sold out in the chosen colour (stock sync) */
.size-options button.sold-out{text-decoration:line-through;opacity:.45;cursor:not-allowed}
