/*
 * CitySound — KOMPONENTY (BEM)
 * Skopiowane 1:1 z design_handoff_wordpress/theme/assets/css/citysound.css.
 * Wymaga cs-tokens.css (zmienne --wp--preset--* i --wp--custom--*).
 * Nie edytuj tu wartości kolorów/rozmiarów — to robi cs-tokens.css.
 */

/* CitySound — komponenty jako klasy CSS (BEM). Ładowane po theme.json.
   Zmienne --wp--preset--* pochodzą z theme.json; poniżej aliasy skrótowe. */
:root{
--cs-brand:var(--wp--preset--color--brand);--cs-brand-strong:var(--wp--preset--color--brand-strong);--cs-brand-soft:var(--wp--preset--color--brand-soft);
--cs-ink:var(--wp--preset--color--ink);--cs-text:var(--wp--preset--color--text-body);--cs-muted:var(--wp--preset--color--text-muted);--cs-faint:var(--wp--preset--color--text-faint);
--cs-hair:var(--wp--preset--color--border-hairline);--cs-soft:var(--wp--preset--color--border-soft);--cs-sunken:var(--wp--preset--color--sunken);
--cs-r-md:var(--wp--custom--radius--md);--cs-r-card:var(--wp--custom--radius--lg);--cs-r-panel:var(--wp--custom--radius--xl);--cs-r-section:var(--wp--custom--radius--3xl);--cs-pill:999px;
--cs-sh-1:var(--wp--preset--shadow--1);--cs-sh-2:var(--wp--preset--shadow--2);--cs-sh-3:var(--wp--preset--shadow--3);--cs-sh-4:var(--wp--preset--shadow--4);--cs-sh-5:var(--wp--preset--shadow--5);--cs-sh-brand:var(--wp--preset--shadow--brand);
--cs-ease:var(--wp--custom--motion--ease-out);--cs-t:all var(--wp--custom--motion--base) var(--cs-ease);
--cs-display:var(--wp--preset--font-family--display);--cs-body:var(--wp--preset--font-family--body);
}
*,*::before,*::after{box-sizing:border-box}
body{-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4{text-wrap:balance;margin:0}
:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(224,27,20,.38)}
::selection{background:#FFD9D5;color:#7A0604}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* ---------- Layout ---------- */
.cs-wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 24px}.cs-wrap--wide{max-width:1440px}
.cs-section{padding:var(--wp--preset--spacing--section) 0}.cs-section--sunken{background:var(--cs-sunken)}
.cs-slab{position:relative;border-radius:var(--cs-r-section);overflow:hidden;background:var(--wp--preset--gradient--ink);color:#fff}
.cs-slab--heart{background:var(--wp--preset--gradient--heart)}.cs-slab--photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cs-slab__protect{position:absolute;inset:0;background:var(--wp--preset--gradient--protect)}
.cs-slab__glow{position:absolute;top:-200px;left:35%;width:640px;height:640px;border-radius:50%;background:var(--wp--preset--gradient--heart);opacity:.32;filter:blur(90px);pointer-events:none}
.cs-grid{display:grid;gap:24px}.cs-grid--2{grid-template-columns:1fr 1fr}.cs-grid--3{grid-template-columns:repeat(3,1fr)}.cs-grid--4{grid-template-columns:repeat(4,1fr)}.cs-grid--5{grid-template-columns:repeat(5,1fr)}
.cs-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(260px,auto);gap:20px}.cs-bento__big{grid-column:span 2;grid-row:span 2}

/* ---------- Type ---------- */
.cs-eyebrow{font-family:var(--cs-display);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cs-brand);margin-bottom:12px}.cs-eyebrow--light{color:#FF6A5E}
.cs-display{font-family:var(--cs-display);font-size:var(--wp--preset--font-size--display-1);font-weight:800;line-height:1.02;letter-spacing:-.03em;color:var(--cs-ink)}
.cs-display-2{font-family:var(--cs-display);font-size:var(--wp--preset--font-size--display-2);font-weight:800;line-height:1.14;letter-spacing:-.03em}
.cs-lead{font-size:19px;line-height:1.75;color:var(--cs-muted)}.cs-accent{color:#FF6A5E}
.cs-price{font-family:var(--cs-display);font-weight:800;letter-spacing:-.015em;color:var(--cs-brand)}

/* ---------- Button ---------- */
.cs-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 24px;border-radius:var(--cs-pill);border:1px solid transparent;font:600 16px/1 var(--cs-body);letter-spacing:-.005em;cursor:pointer;text-decoration:none;white-space:nowrap;transition:var(--cs-t);background:var(--cs-brand);color:#fff;box-shadow:var(--cs-sh-brand)}
.cs-btn:hover{background:var(--cs-brand-strong);box-shadow:0 16px 36px rgba(224,27,20,.34);color:#fff}.cs-btn:active{transform:scale(.975)}
.cs-btn--sm{height:40px;padding:0 18px;font-size:15px}.cs-btn--lg{height:56px;padding:0 32px;font-size:19px}.cs-btn--full{width:100%}
.cs-btn--ink{background:var(--cs-ink);box-shadow:var(--cs-sh-2)}.cs-btn--ink:hover{background:#1E1E23;box-shadow:var(--cs-sh-3)}
.cs-btn--secondary{background:#fff;color:var(--cs-ink);border-color:var(--cs-soft);box-shadow:var(--cs-sh-1)}.cs-btn--secondary:hover{background:var(--cs-sunken);border-color:#B6B6BF;color:var(--cs-ink)}
.cs-btn--ghost{background:transparent;color:var(--cs-ink);border-color:var(--cs-soft);box-shadow:none}.cs-btn--ghost:hover{background:var(--cs-sunken);border-color:#B6B6BF;color:var(--cs-ink)}
.cs-btn--glass{background:var(--wp--custom--glass--light-bg);color:var(--cs-ink);border-color:var(--wp--custom--glass--light-border);backdrop-filter:var(--wp--custom--glass--light-blur);box-shadow:var(--wp--custom--glass--shadow),var(--wp--custom--glass--highlight)}.cs-btn--glass:hover{background:rgba(255,255,255,.78);color:var(--cs-ink)}
.cs-btn--quiet{background:transparent;color:var(--cs-brand-strong);box-shadow:none}.cs-btn--quiet:hover{background:var(--cs-brand-soft);color:var(--cs-brand-strong)}
.cs-btn[disabled],.cs-btn.is-disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
.cs-btn svg{width:20px;height:20px}.cs-btn--sm svg{width:16px;height:16px}

/* ---------- IconButton / Chip / Badge / Tabs ---------- */
.cs-iconbtn{width:44px;height:44px;border-radius:var(--cs-pill);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cs-hair);background:#fff;color:var(--cs-ink);cursor:pointer;box-shadow:var(--cs-sh-2);transition:var(--cs-t)}
.cs-iconbtn--glass{background:var(--wp--custom--glass--light-bg);border-color:var(--wp--custom--glass--light-border);backdrop-filter:var(--wp--custom--glass--light-blur)}.cs-iconbtn--ink{background:var(--cs-ink);color:#fff;border-color:transparent}.cs-iconbtn--bare{background:transparent;border-color:var(--cs-soft);box-shadow:none;color:var(--cs-muted)}
.cs-iconbtn.is-active{color:var(--cs-brand)}.cs-iconbtn:active{transform:scale(.975)}
.cs-chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--cs-pill);border:1px solid var(--cs-soft);background:#fff;color:var(--cs-text);font:500 15px var(--cs-body);cursor:pointer;transition:var(--cs-t)}
.cs-chip:hover{background:var(--cs-sunken)}.cs-chip.is-selected{background:var(--cs-ink);color:#fff;border-color:transparent}.cs-chip__count{font-size:13px;font-weight:600;color:var(--cs-faint)}.cs-chip.is-selected .cs-chip__count{color:rgba(255,255,255,.6)}
.cs-badge{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:var(--cs-pill);font:700 11px var(--cs-display);letter-spacing:.1em;text-transform:uppercase;background:var(--cs-brand-soft);color:#9C0806}
.cs-badge--brand{background:var(--cs-brand);color:#fff}.cs-badge--ink{background:var(--cs-ink);color:#fff}.cs-badge--neutral{background:#EBEBEF;color:var(--cs-text)}.cs-badge--ok{background:#E6F5EE;color:#1B8A5A}.cs-badge--warn{background:#FFF3DF;color:#C97A05}
.cs-badge--glass{background:var(--wp--custom--glass--frost-bg);color:var(--cs-ink);backdrop-filter:var(--wp--custom--glass--frost-blur);box-shadow:var(--wp--custom--glass--highlight)}
.cs-badge--glass-brand{background:var(--wp--custom--glass--brand-bg);color:#fff;border:1px solid var(--wp--custom--glass--brand-border);backdrop-filter:var(--wp--custom--glass--brand-blur)}
.cs-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:var(--cs-pill);background:var(--cs-sunken);border:1px solid var(--cs-hair)}
.cs-tabs__tab{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border:none;border-radius:var(--cs-pill);background:transparent;color:var(--cs-muted);font:600 15px var(--cs-body);cursor:pointer;transition:var(--cs-t)}.cs-tabs__tab.is-active{background:var(--cs-ink);color:#fff;box-shadow:var(--cs-sh-2)}
.cs-tabs__count{font-size:13px;font-weight:700;padding:2px 8px;border-radius:var(--cs-pill);background:#EBEBEF;color:var(--cs-text)}.cs-tabs__tab.is-active .cs-tabs__count{background:rgba(255,255,255,.16);color:#fff}

/* ---------- Card / Glass / Placeholder ---------- */
.cs-card{background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-card);padding:24px;box-shadow:var(--cs-sh-2);transition:transform var(--wp--custom--motion--slow) var(--cs-ease),box-shadow var(--wp--custom--motion--slow) var(--cs-ease)}
.cs-card--interactive:hover{transform:translateY(-4px);box-shadow:var(--cs-sh-3)}.cs-card--sunken{background:var(--cs-sunken)}.cs-card--ink{background:var(--wp--preset--gradient--ink);color:rgba(255,255,255,.68);border-color:rgba(255,255,255,.16)}.cs-card--brand{background:var(--wp--preset--gradient--brand);color:rgba(255,255,255,.86);border-color:transparent}.cs-card--flush{padding:0;overflow:hidden}
.cs-glass{background:var(--wp--custom--glass--light-bg);border:1px solid var(--wp--custom--glass--light-border);backdrop-filter:var(--wp--custom--glass--light-blur);-webkit-backdrop-filter:var(--wp--custom--glass--light-blur);border-radius:var(--cs-r-panel);padding:24px;box-shadow:var(--wp--custom--glass--shadow),var(--wp--custom--glass--highlight);color:var(--cs-ink)}
.cs-glass--frost{background:var(--wp--custom--glass--frost-bg);border-color:var(--wp--custom--glass--frost-border);backdrop-filter:var(--wp--custom--glass--frost-blur)}
.cs-glass--dark{background:var(--wp--custom--glass--dark-bg);border-color:var(--wp--custom--glass--dark-border);backdrop-filter:var(--wp--custom--glass--dark-blur);color:#fff}
.cs-glass--brand{background:var(--wp--custom--glass--brand-bg);border-color:var(--wp--custom--glass--brand-border);backdrop-filter:var(--wp--custom--glass--brand-blur);color:#fff}
@supports not (backdrop-filter:blur(1px)){.cs-glass,.cs-glass--frost{background:rgba(255,255,255,.96)}.cs-glass--dark{background:rgba(19,19,22,.92)}.cs-btn--glass{background:rgba(255,255,255,.92)}}
.cs-plate{width:56px;height:56px;border-radius:var(--cs-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--cs-brand-soft);color:var(--cs-brand);flex-shrink:0}.cs-plate svg{width:24px;height:24px}
.cs-plate--brand{background:var(--wp--preset--gradient--brand);color:#fff}.cs-plate--ink{background:var(--cs-ink);color:#fff}.cs-plate--glass{background:var(--wp--custom--glass--light-bg);border:1px solid var(--wp--custom--glass--light-border);backdrop-filter:var(--wp--custom--glass--light-blur);color:inherit}
.cs-avatar{border-radius:50%;object-fit:cover;background:linear-gradient(150deg,#EDEDF1,#DEDEE4);width:56px;height:56px;flex-shrink:0}.cs-avatar--ring{box-shadow:0 0 0 3px #fff,0 0 0 4px var(--cs-brand)}
.cs-stat__value{font-family:var(--cs-display);font-size:var(--wp--preset--font-size--display-2);font-weight:800;letter-spacing:-.03em;line-height:1.05;color:var(--cs-ink)}.cs-stat__value b{color:var(--cs-brand);font-weight:inherit}.cs-stat__label{font-size:15px;color:var(--cs-muted);margin-top:8px}.cs-stat--light .cs-stat__value{color:#fff}.cs-stat--light .cs-stat__label{color:rgba(255,255,255,.68)}

/* ---------- Forms ---------- */
.cs-field{display:block}.cs-field__label{display:block;font-size:13px;font-weight:600;color:var(--cs-text);margin-bottom:8px;padding-left:8px}
.cs-input,.cs-select{display:flex;align-items:center;gap:12px;height:52px;padding:0 20px;background:#fff;border:1px solid var(--cs-soft);border-radius:var(--cs-pill);box-shadow:var(--cs-sh-1);transition:var(--cs-t);font:16px var(--cs-body);color:var(--cs-ink);width:100%}
.cs-input:focus-within,.cs-select:focus-within,.cs-textarea:focus{border-color:var(--cs-brand);box-shadow:0 0 0 4px rgba(224,27,20,.38)}.cs-input input,.cs-select select{border:0;outline:0;background:transparent;width:100%;height:100%;font:inherit;color:inherit;appearance:none}
.cs-input.is-error{border-color:#C9110D}.cs-field__hint{display:block;font-size:13px;color:var(--cs-faint);margin-top:8px;padding-left:8px}.cs-field__hint--error{color:#C9110D}
.cs-textarea{width:100%;display:block;resize:vertical;outline:0;background:#fff;color:var(--cs-ink);border:1px solid var(--cs-soft);border-radius:var(--cs-r-md);padding:16px 20px;font:16px/1.62 var(--cs-body);box-shadow:var(--cs-sh-1);transition:var(--cs-t)}
.cs-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:15px;line-height:1.5;color:var(--cs-muted)}.cs-check input{position:absolute;opacity:0;width:0;height:0}
.cs-check__box{width:24px;height:24px;flex-shrink:0;margin-top:1px;border-radius:8px;border:1px solid var(--cs-soft);background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:var(--cs-t);box-shadow:var(--cs-sh-1)}.cs-check input:checked+.cs-check__box{background:var(--cs-brand);border-color:var(--cs-brand);box-shadow:var(--cs-sh-brand)}
.cs-searchbar{display:flex;align-items:center;gap:8px;padding:12px;background:var(--wp--custom--glass--frost-bg);border:1px solid var(--wp--custom--glass--frost-border);backdrop-filter:var(--wp--custom--glass--frost-blur);border-radius:var(--cs-pill);box-shadow:var(--cs-sh-4),var(--wp--custom--glass--highlight)}
.cs-searchbar__field{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:0 20px;border-left:1px solid var(--cs-hair)}.cs-searchbar__field:first-child{border-left:0}.cs-searchbar__k{font:700 11px var(--cs-body);letter-spacing:.08em;text-transform:uppercase;color:var(--cs-faint)}.cs-searchbar__v{font:600 15px var(--cs-body);color:var(--cs-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- Patterns ---------- */
.cs-listing{display:flex;flex-direction:column;background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-card);overflow:hidden;box-shadow:var(--cs-sh-2);transition:transform var(--wp--custom--motion--slow) var(--cs-ease),box-shadow var(--wp--custom--motion--slow) var(--cs-ease)}
.cs-listing:hover{transform:translateY(-4px);box-shadow:var(--cs-sh-3)}.cs-listing__media{position:relative;margin:8px;border-radius:var(--cs-r-md);overflow:hidden;aspect-ratio:4/3}.cs-listing__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--wp--custom--motion--slow) var(--cs-ease)}.cs-listing:hover .cs-listing__media img{transform:scale(1.04)}
.cs-listing__badges{position:absolute;top:16px;left:16px;display:flex;gap:8px}.cs-listing__save{position:absolute;top:16px;right:16px;width:40px;height:40px}
.cs-listing__body{padding:20px 20px 16px;display:flex;flex-direction:column;gap:12px;flex:1}.cs-listing__loc{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--cs-muted)}.cs-listing__loc svg{color:var(--cs-brand);width:14px;height:14px}
.cs-listing__title{font:700 20px/1.3 var(--cs-display);letter-spacing:-.015em;color:var(--cs-ink)}.cs-listing__price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:8px}.cs-listing__price .cs-price{font-size:24px}.cs-listing__note{font-size:13px;color:var(--cs-faint)}
.cs-listing__specs{display:flex;gap:16px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--cs-hair);font:500 13px var(--cs-body);color:var(--cs-text)}.cs-listing__specs span{display:flex;align-items:center;gap:6px}.cs-listing__specs svg{width:15px;height:15px;color:var(--cs-faint)}
.cs-listing-row{display:grid;grid-template-columns:300px 1fr;gap:20px;padding:8px;background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-card);box-shadow:var(--cs-sh-2)}.cs-listing-row__media{position:relative;border-radius:var(--cs-r-md);overflow:hidden;min-height:210px}.cs-listing-row__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cs-listing-row.is-sold .cs-listing-row__media img{filter:grayscale(.6)}
.cs-listing-row__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:12px;border-top:1px solid var(--cs-hair)}
.cs-agent{position:relative;border-radius:var(--cs-r-card);overflow:hidden;border:1px solid var(--cs-hair);background:linear-gradient(180deg,#F3F2F4,#E4E3E8);box-shadow:var(--cs-sh-2);transition:transform var(--wp--custom--motion--slow) var(--cs-ease),box-shadow var(--wp--custom--motion--slow) var(--cs-ease)}.cs-agent:hover{transform:translateY(-4px);box-shadow:var(--cs-sh-3)}
.cs-agent__photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;display:block}.cs-agent--compact .cs-agent__photo{aspect-ratio:3/4}
.cs-agent__plate{position:absolute;inset:auto 12px 12px;padding:16px 16px 12px;border-radius:var(--cs-r-card);background:var(--wp--custom--glass--frost-bg);backdrop-filter:var(--wp--custom--glass--frost-blur);border:1px solid var(--wp--custom--glass--frost-border);box-shadow:var(--wp--custom--glass--shadow),var(--wp--custom--glass--highlight)}
.cs-agent__name{font:700 20px/1.2 var(--cs-display);letter-spacing:-.015em;color:var(--cs-ink)}.cs-agent__role{font-size:13px;color:var(--cs-muted);margin-top:3px}.cs-agent__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.cs-agent__tags span{font:600 11px var(--cs-body);padding:4px 10px;border-radius:var(--cs-pill);background:rgba(11,11,13,.06);color:var(--cs-text)}
.cs-agent__foot{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--cs-hair)}.cs-agent__lic{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--cs-faint);margin-right:auto}
.cs-service-tile{position:relative;display:flex;border-radius:var(--cs-r-card);overflow:hidden;min-height:260px;box-shadow:var(--cs-sh-2);text-decoration:none;color:#fff;transition:transform var(--wp--custom--motion--slow) var(--cs-ease),box-shadow var(--wp--custom--motion--slow) var(--cs-ease)}.cs-service-tile:hover{transform:translateY(-4px);box-shadow:var(--cs-sh-4);color:#fff}
.cs-service-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform var(--wp--custom--motion--slow) var(--cs-ease)}.cs-service-tile:hover img{transform:scale(1.04)}.cs-service-tile .cs-plate{position:absolute;top:20px;left:20px;width:48px;height:48px}
.cs-service-tile__body{position:relative;margin-top:auto;padding:24px;width:100%}.cs-service-tile__tag{font:600 13px var(--cs-body);color:#FF6A5E;letter-spacing:.04em}.cs-service-tile__title{font:800 20px/1.2 var(--cs-display);letter-spacing:-.015em;margin-top:6px}.cs-bento__big .cs-service-tile__title{font-size:32px}
.cs-service-tile__cta{display:inline-flex;align-items:center;gap:6px;margin-top:16px;height:36px;padding:0 14px;border-radius:var(--cs-pill);background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(12px);font:600 13px var(--cs-body);transition:var(--cs-t)}.cs-service-tile:hover .cs-service-tile__cta{background:var(--cs-brand)}
.cs-testimonial{margin:0;background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-card);padding:24px;box-shadow:var(--cs-sh-2);display:flex;flex-direction:column;gap:16px}.cs-testimonial__stars{display:flex;gap:2px;color:var(--cs-brand)}.cs-testimonial__stars svg{width:16px;height:16px}.cs-testimonial blockquote{margin:0;font-size:16px;line-height:1.75;color:var(--cs-text);flex:1}.cs-testimonial figcaption{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--cs-hair)}
.cs-step{display:flex;gap:16px}.cs-step__rail{display:flex;flex-direction:column;align-items:center;gap:8px}.cs-step__num{width:48px;height:48px;border-radius:var(--cs-pill);display:flex;align-items:center;justify-content:center;font:800 15px var(--cs-display);background:#fff;color:var(--cs-ink);border:1px solid var(--cs-soft)}.cs-step.is-active .cs-step__num{background:var(--wp--preset--gradient--brand);color:#fff;border-color:transparent;box-shadow:var(--cs-sh-brand)}.cs-step__line{flex:1;width:1px;background:var(--cs-soft)}.cs-step:last-child .cs-step__line{display:none}
.cs-step__body{padding-bottom:32px}.cs-step__title{font:700 20px var(--cs-display);letter-spacing:-.015em;color:var(--cs-ink)}.cs-step__text{margin:8px 0 0;font-size:15px;line-height:1.62;color:var(--cs-muted);max-width:460px}.cs-step__benefit{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:600 13px var(--cs-body);color:var(--cs-brand-strong)}
.cs-faq{background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-md);box-shadow:var(--cs-sh-1);overflow:hidden;transition:var(--cs-t)}.cs-faq[open]{border-color:var(--cs-soft);box-shadow:var(--cs-sh-2)}
.cs-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;cursor:pointer;font:700 16px var(--cs-display);letter-spacing:-.015em;color:var(--cs-ink)}.cs-faq summary::-webkit-details-marker{display:none}
.cs-faq__caret{width:32px;height:32px;flex-shrink:0;border-radius:var(--cs-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--cs-brand-soft);color:var(--cs-brand);transition:var(--cs-t)}.cs-faq[open] .cs-faq__caret{background:var(--cs-brand);color:#fff;transform:rotate(180deg)}.cs-faq__caret svg{width:17px;height:17px}
.cs-faq__body{margin:0;padding:0 24px 24px;font-size:15px;line-height:1.75;color:var(--cs-muted);max-width:720px}
.cs-pagination{display:flex;align-items:center;gap:8px}.cs-pagination a,.cs-pagination span{min-width:44px;height:44px;padding:0 12px;border-radius:var(--cs-pill);display:inline-flex;align-items:center;justify-content:center;font:600 15px var(--cs-body);background:#fff;color:var(--cs-text);border:1px solid var(--cs-soft);box-shadow:var(--cs-sh-1);text-decoration:none}.cs-pagination .current{background:var(--cs-ink);color:#fff;border-color:transparent;box-shadow:var(--cs-sh-2)}

/* ---------- Header / Footer ---------- */
.cs-header{position:sticky;top:0;z-index:50;background:var(--wp--custom--glass--light-bg);backdrop-filter:var(--wp--custom--glass--light-blur);-webkit-backdrop-filter:var(--wp--custom--glass--light-blur);border-bottom:1px solid rgba(255,255,255,.5);box-shadow:var(--cs-sh-2)}
.cs-header__inner{height:84px;display:flex;align-items:center;gap:24px;transition:var(--cs-t)}.cs-header.is-compact .cs-header__inner{height:68px}.cs-header__logo img{height:40px;width:auto;display:block}.cs-header.is-compact .cs-header__logo img{height:32px}
.cs-header__nav{display:flex;align-items:center;gap:20px;margin-left:auto}.cs-header__nav>li{list-style:none;position:relative}.cs-header__nav a{display:flex;align-items:center;gap:4px;font:600 15px var(--cs-body);color:var(--cs-muted);padding-bottom:4px;border-bottom:2px solid transparent;white-space:nowrap;text-decoration:none}.cs-header__nav .current-menu-item>a,.cs-header__nav .current-menu-ancestor>a{color:var(--cs-ink);border-bottom-color:var(--cs-brand)}
.cs-header__nav .sub-menu{position:absolute;top:100%;left:-12px;padding-top:14px;display:none;list-style:none;margin:0}.cs-header__nav li:hover>.sub-menu{display:block}.cs-header__nav .sub-menu>div,.cs-header__nav .sub-menu ul{background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-md);box-shadow:var(--cs-sh-4);padding:8px;min-width:300px;display:flex;flex-direction:column}.cs-header__nav .sub-menu a{padding:10px 14px;border-radius:12px;font-weight:500;color:var(--cs-text);border:0}.cs-header__nav .sub-menu a:hover{background:var(--cs-sunken)}
.cs-header__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.cs-cart-btn{position:relative;width:44px;height:44px;border-radius:var(--cs-pill);border:1px solid var(--cs-soft);background:#fff;display:inline-flex;align-items:center;justify-content:center;color:var(--cs-ink)}.cs-cart-btn__count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;border-radius:var(--cs-pill);background:var(--cs-brand);color:#fff;font:700 11px var(--cs-body);display:grid;place-items:center;box-shadow:var(--cs-sh-brand)}
.cs-burger{display:none}
.cs-footer{background:var(--wp--preset--gradient--ink);color:rgba(255,255,255,.68);margin-top:24px}.cs-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:48px;padding:80px 0 32px}.cs-footer__title{font:700 11px var(--cs-display);letter-spacing:.16em;text-transform:uppercase;color:#FF6A5E;margin-bottom:20px}.cs-footer a{color:rgba(255,255,255,.68);text-decoration:none}.cs-footer a:hover{color:#fff}.cs-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;font-size:15px}
.cs-footer__social{display:flex;gap:8px;margin-top:24px}.cs-footer__social a{width:40px;height:40px;border-radius:var(--cs-pill);display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff}
.cs-footer__legal{border-top:1px solid rgba(255,255,255,.16);padding:20px 0 40px;font-size:13px;color:rgba(255,255,255,.45)}.cs-footer__legal small{display:block;margin-top:16px;font-size:11px;color:rgba(255,255,255,.32);letter-spacing:.02em}
.cs-wordmark{font:800 21px/1 var(--cs-display);letter-spacing:-.02em;color:#fff}.cs-wordmark small{display:block;font:600 8px var(--cs-display);letter-spacing:.28em;color:rgba(255,255,255,.7);margin-top:4px}

/* ---------- WooCommerce ---------- */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0;list-style:none}.woocommerce ul.products li.product{margin:0;width:auto;float:none}
.woocommerce ul.products li.product .cs-product{display:grid;grid-template-rows:auto 1fr;border-radius:var(--cs-r-card);overflow:hidden;background:#fff;border:1px solid var(--cs-hair);box-shadow:var(--cs-sh-2);transition:transform var(--wp--custom--motion--slow) var(--cs-ease),box-shadow var(--wp--custom--motion--slow) var(--cs-ease)}.woocommerce ul.products li.product .cs-product:hover{transform:translateY(-4px);box-shadow:var(--cs-sh-4)}
.cs-product__media{position:relative;background:linear-gradient(160deg,#FFF0EE,#FFD9D5);display:grid;place-items:center;padding:40px 24px;min-height:340px}.cs-product__media img{width:170px;height:auto;filter:drop-shadow(0 40px 60px rgba(11,11,13,.35));transform:perspective(1200px) rotateY(-14deg) rotateX(2deg);transition:transform var(--wp--custom--motion--slow) var(--cs-ease)}.cs-product:hover .cs-product__media img{transform:perspective(1200px) rotateY(-22deg) rotateX(3deg) translateY(-6px)}
.cs-product__body{padding:20px 24px 24px;display:flex;flex-direction:column;gap:8px}.cs-product__foot{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--cs-hair)}.cs-product__foot .price{font:800 24px var(--cs-display);letter-spacing:-.015em;color:var(--cs-brand);margin-right:auto}
.woocommerce .onsale{position:absolute;top:16px;left:16px}
.woocommerce div.product .cs-buybox{background:#fff;border:1px solid var(--cs-hair);border-radius:var(--cs-r-card);padding:24px;box-shadow:var(--cs-sh-2);display:flex;flex-direction:column;gap:20px}
.woocommerce div.product .cs-buybox .price{font:800 var(--wp--preset--font-size--display-2) var(--cs-display);letter-spacing:-.03em;line-height:1;color:var(--cs-brand)}
.woocommerce div.product form.cart .quantity{display:inline-flex;align-items:center;border:1px solid var(--cs-soft);border-radius:var(--cs-pill);height:52px;background:#fff}.woocommerce div.product form.cart .quantity .qty{width:48px;border:0;text-align:center;font:700 16px var(--cs-display)}
.woocommerce div.product form.cart .single_add_to_cart_button{height:56px;padding:0 32px;border-radius:var(--cs-pill);background:var(--cs-brand);color:#fff;font:600 19px var(--cs-body);box-shadow:var(--cs-sh-brand);flex:1}
.cs-express{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cs-express button{height:48px;border-radius:var(--cs-pill);border:1px solid var(--cs-soft);font:700 14px var(--cs-display);cursor:pointer}
.cs-shipnote{border-radius:var(--cs-r-card);background:var(--wp--preset--gradient--heart);color:#fff;padding:20px 24px;display:flex;gap:16px;align-items:center;box-shadow:var(--cs-sh-brand)}
.woocommerce-tabs ul.tabs{display:inline-flex;gap:4px;padding:4px;border-radius:var(--cs-pill);background:var(--cs-sunken);border:1px solid var(--cs-hair);margin:0 0 20px}.woocommerce-tabs ul.tabs li{border:0;background:transparent;margin:0;padding:0}.woocommerce-tabs ul.tabs li a{display:inline-flex;height:40px;padding:0 18px;border-radius:var(--cs-pill);font:600 15px var(--cs-body);color:var(--cs-muted)}.woocommerce-tabs ul.tabs li.active a{background:var(--cs-ink);color:#fff}
.cs-cart-drawer{position:fixed;top:12px;right:12px;bottom:12px;width:min(440px,calc(100vw - 24px));z-index:90;transform:translateX(calc(100% + 24px));transition:transform var(--wp--custom--motion--slow) var(--cs-ease);display:flex;flex-direction:column;background:var(--wp--custom--glass--frost-bg);backdrop-filter:var(--wp--custom--glass--frost-blur);border:1px solid var(--wp--custom--glass--frost-border);border-radius:var(--cs-r-panel);box-shadow:var(--cs-sh-5),var(--wp--custom--glass--highlight)}.cs-cart-drawer.is-open{transform:none}
.cs-cart-backdrop{position:fixed;inset:0;background:rgba(11,11,13,.45);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity var(--wp--custom--motion--slow) var(--cs-ease);z-index:80}.cs-cart-backdrop.is-open{opacity:1;pointer-events:auto}
.woocommerce-message,.woocommerce-info{border-radius:var(--cs-r-md);border:1px solid var(--cs-hair);border-top-color:var(--cs-hair);background:var(--cs-sunken);color:var(--cs-text)}.woocommerce-message::before{color:var(--cs-brand)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select{height:52px;border-radius:var(--cs-pill);border:1px solid var(--cs-soft);padding:0 20px;font:16px var(--cs-body)}.woocommerce form .form-row textarea{border-radius:var(--cs-r-md)}
.woocommerce #payment{background:var(--cs-sunken);border-radius:var(--cs-r-card)}.woocommerce #payment div.payment_box{background:#fff;border-radius:var(--cs-r-md)}.woocommerce #payment #place_order{width:100%;height:56px;border-radius:var(--cs-pill);background:var(--cs-brand);font:600 19px var(--cs-body);box-shadow:var(--cs-sh-brand)}

/* ---------- Responsive ---------- */
@media (max-width:1100px){.cs-header__nav,.cs-header__actions{display:none}.cs-burger{display:inline-flex;margin-left:auto}.cs-grid--5{grid-template-columns:repeat(3,1fr)}.cs-grid--4{grid-template-columns:repeat(2,1fr)}.cs-bento__big{grid-column:span 3;grid-row:auto}}
@media (max-width:768px){.cs-grid--2,.cs-grid--3,.cs-grid--4,.cs-bento,.woocommerce ul.products,.cs-express{grid-template-columns:1fr}.cs-grid--5{grid-template-columns:repeat(2,1fr)}.cs-footer__grid{grid-template-columns:1fr 1fr;gap:32px}.cs-listing-row{grid-template-columns:1fr}.cs-slab{border-radius:32px}.cs-searchbar{flex-wrap:wrap;border-radius:24px}.cs-searchbar__field{width:100%;flex:none;border-left:0;padding:12px 8px;border-top:1px solid var(--cs-hair)}.cs-searchbar__field:first-child{border-top:0}.cs-display{font-size:clamp(32px,9vw,44px)}}
@media (max-width:480px){.cs-grid--5,.cs-footer__grid{grid-template-columns:1fr}}
