      :root {
        --ink: #171614;
        --ink-soft: #3f3b37;
        --paper: #e7e1da;
        --paper-deep: #d9d0c7;
        --white: #f8f6f2;
        --taupe: #9b8d80;
        --clay: #a9553c;
        --clay-dark: #813d2b;
        --line: rgba(23, 22, 20, 0.16);
        --line-light: rgba(248, 246, 242, 0.2);
        --serif: Georgia, "Times New Roman", serif;
        --sans: "Archivo", Arial, sans-serif;
        --mono: "DM Mono", "Courier New", monospace;
        --shadow: 0 20px 50px rgba(23, 22, 20, 0.13);
        --radius: 2px;
      }

      * { box-sizing: border-box; }
      html { scroll-behavior: smooth; overflow-x: hidden; }
      body {
        margin: 0; overflow-x: hidden;
        color: var(--ink);
        background: var(--paper);
        font-family: var(--sans);
        -webkit-font-smoothing: antialiased;
      }
      button, input, select, textarea { font: inherit; }
      button { color: inherit; }
      a { color: inherit; text-decoration: none; }
      img { display: block; max-width: 100%; }
      ::selection { color: var(--white); background: var(--clay); }

      .sr-only {
        position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
        overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
      }

      .eyebrow, .meta, .section-number, .tag, .filter-label, .microcopy {
        font-family: var(--mono);
        font-size: 0.64rem;
        line-height: 1.35;
        letter-spacing: 0.075em;
        text-transform: uppercase;
      }

      .utility-bar {
        display: flex; align-items: center; justify-content: space-between;
        min-height: 31px; padding: 0 3.2vw;
        color: var(--white); background: var(--ink);
        font-family: var(--mono); font-size: 0.58rem; letter-spacing: 0.075em;
        text-transform: uppercase;
      }
      .utility-bar span:last-child { color: #cdc3b9; }

      .site-header {
        position: sticky; top: 0; z-index: 40;
        background: rgba(231, 225, 218, 0.94);
        backdrop-filter: blur(14px);
        border-bottom: 1px solid var(--line);
      }
      .header-inner {
        height: 75px; display: grid; grid-template-columns: minmax(150px, 1fr) auto minmax(150px, 1fr);
        align-items: center; padding: 0 3.2vw;
      }
      .brand {
        display: inline-flex; align-items: center; width: fit-content; min-height: 56px;
        padding: 4px 0; border-radius: var(--radius); transition: opacity 180ms ease;
      }
      .brand-wordmark { display: block; width: clamp(140px, 10.6vw, 164px); height: auto; }
      .brand:hover { opacity: .72; }
      .brand:focus-visible { outline: 2px solid var(--clay); outline-offset: 4px; }
      .desktop-nav { display: flex; gap: clamp(1rem, 2.3vw, 2.6rem); }
      .desktop-nav a {
        font-family: var(--mono); font-size: 0.63rem; letter-spacing: 0.04em;
        text-transform: uppercase; transition: color 180ms ease;
      }
      .desktop-nav a:hover { color: var(--clay); }
      .header-actions { display: flex; justify-content: flex-end; gap: 0.3rem; }
      .icon-button, .nav-toggle {
        width: 40px; height: 40px; display: inline-grid; place-items: center;
        border: 1px solid transparent; background: transparent; cursor: pointer;
        border-radius: 50%; transition: border-color 180ms ease, background 180ms ease;
      }
      .icon-button:hover, .nav-toggle:hover { border-color: var(--ink); background: var(--white); }
      .icon-button svg, .nav-toggle svg { width: 16px; height: 16px; stroke-width: 1.65; }
      .nav-toggle { display: none; }
      .mobile-nav {
        display: none; padding: 0 5vw 1.5rem; border-top: 1px solid var(--line);
      }
      .mobile-nav.is-open { display: grid; }
      .mobile-nav a { padding: 0.85rem 0; border-bottom: 1px solid var(--line); font-weight: 700; }

      .hero { display: grid; grid-template-columns: minmax(0, 0.94fr) minmax(360px, 1.06fr); min-height: min(750px, calc(100vh - 106px)); }
      .hero-copy {
        display: flex; flex-direction: column; justify-content: space-between;
        padding: clamp(2.4rem, 6.8vw, 7.5rem) 3.2vw clamp(2rem, 4.2vw, 4rem);
        background: var(--paper);
      }
      .hero-copy .hero-eyebrow { margin:0; color:var(--clay-dark); font-size:.7rem; }
      .hero-copy h1 {
        max-inline-size:100%; margin:.7rem 0 .95rem; font-size:clamp(3.1rem,5.1vw,6.3rem);
        font-weight:900; letter-spacing:-.105em; line-height:.84; text-transform:uppercase; text-wrap:balance;
      }
      .hero-copy h1 span { display: block; color: var(--clay); }
      .hero-deck { max-width:32rem; margin:0 0 .7rem; font-size:clamp(1.08rem,1.5vw,1.38rem); font-weight:680; letter-spacing:-.04em; line-height:1.18; text-wrap:balance; }
      .hero-description { max-width:34rem; margin:0; color:var(--ink-soft); font-size:clamp(.9rem,1.12vw,1.04rem); line-height:1.55; }
      .hero-bottom { display: flex; align-items: end; justify-content: space-between; gap: 1.2rem; }
      .hero-count { color: var(--taupe); text-align: right; }
      .hero-count strong { display: block; color: var(--ink); font-family: var(--sans); font-size: 1.8rem; letter-spacing: -0.075em; }
      .button, .button-outline {
        display: inline-flex; align-items: center; justify-content: center; gap: 0.65rem;
        min-height: 48px; width: fit-content; padding: 0 1.1rem; border: 1px solid var(--ink);
        color: var(--white); background: var(--ink); cursor: pointer; font-weight: 750; font-size: 0.78rem;
        letter-spacing: 0.012em; transition: transform 180ms ease, color 180ms ease, background 180ms ease;
      }
      .button:hover { transform: translateY(-2px); color: var(--ink); background: var(--clay); border-color: var(--clay); }
      .button svg, .button-outline svg { width: 15px; height: 15px; }
      .button-outline { color: var(--ink); background: transparent; }
      .button-outline:hover { color: var(--white); background: var(--ink); }

      .hero-visual {
        position: relative; min-height: 520px; overflow: hidden; background: #2b2825;
      }
      .hero-visual::after {
        content: ""; position: absolute; inset: 0; pointer-events: none;
        z-index: 1; background: linear-gradient(115deg, rgba(0,0,0,.28), transparent 48%, rgba(0,0,0,.25));
      }
      .hero-label, .hero-stamp { position: absolute; z-index: 5; color: var(--white); }
      .hero-label { top: 2rem; left: 2rem; }
      .hero-stamp { right: 2rem; bottom: 2rem; max-width: 130px; color: #e9dfd4; text-align: right; }
      .hero-stamp b { display: block; margin-bottom: 0.25rem; color: var(--clay); font-size: 0.8rem; }
      .hero-stamp em { font-style: normal; opacity: .7; }
      .hero-figure {
        position: absolute; bottom: -1px; width: 44%; height: 91%; z-index: 1;
      }
      .hero-figure.one { left: 13%; }
      .hero-figure.two { right: 9%; transform: scale(.91); transform-origin: bottom; }
      .hero-figure .head, .look-art .head {
        position: absolute; top: 0; left: 50%; width: 17%; aspect-ratio: 1; transform: translateX(-50%);
        border-radius: 48% 52% 45% 49%; background: #9c725a;
      }
      .hero-figure .hair, .look-art .hair {
        position: absolute; z-index: 2; top: -2%; left: 50%; width: 19%; aspect-ratio: 1.08;
        transform: translateX(-50%); border-radius: 54% 46% 28% 32%; background: #121110;
      }
      .hero-figure .neck, .look-art .neck { position:absolute; top: 14%; left: 46.5%; width: 7%; height: 8%; background:#8d624c; }
      .hero-figure .body, .look-art .body {
        position: absolute; top: 19%; left: 24%; width: 53%; height: 42%; border-radius: 8% 8% 2% 2%;
        background: #141312;
      }
      .hero-figure .body::after, .look-art .body::after {
        content:""; position:absolute; left:49%; top:0; bottom:0; width:1px; background:rgba(248,246,242,.18);
      }
      .hero-figure .arm, .look-art .arm { position:absolute; top: 23%; width: 17%; height: 39%; border-radius: 50px 50px 7px 7px; background:#151412; }
      .hero-figure .arm.left, .look-art .arm.left { left: 13%; transform: rotate(5deg); }
      .hero-figure .arm.right, .look-art .arm.right { right: 13%; transform: rotate(-5deg); }
      .hero-figure .leg, .look-art .leg { position: absolute; top: 58%; width: 22%; height: 41%; background:#23211f; }
      .hero-figure .leg.left, .look-art .leg.left { left: 28%; transform: skew(-4deg); }
      .hero-figure .leg.right, .look-art .leg.right { right: 28%; transform: skew(4deg); }
      .hero-figure.two .body, .hero-figure.two .arm { background: #c9b29d; }
      .hero-figure.two .leg { background:#827164; }
      .hero-figure.two .head { background:#ad7b61; }
      .hero-figure.two .hair { background:#372b27; border-radius: 48% 52% 60% 35%; }
      .hero-figure.two .body::after { background: rgba(23,22,20,.25); }
      .hero-figure.two .arm { background:#c9b29d; }
      .hero-orb { position:absolute; width: 46%; aspect-ratio:1; top:10%; left:28%; border-radius:50%; background:#9f4e39; opacity:.74; filter: blur(.2px); }
      .hero-gridlines { position:absolute; z-index:2; inset: 0; pointer-events:none; opacity:.22; background-image: linear-gradient(90deg, rgba(255,255,255,.2) 1px, transparent 1px), linear-gradient(rgba(255,255,255,.2) 1px, transparent 1px); background-size: 68px 68px; mix-blend-mode:overlay; }

      .new-series-stage { position:absolute; z-index:3; inset:0; }
      .new-series-slide { position:relative; display:block; width:100%; height:100%; border:0; padding:0; overflow:hidden; color:var(--white); background:#2b2825; cursor:pointer; text-align:left; }
      .new-series-visual { position:absolute; inset:0; display:block; }
      .new-series-visual::after { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(8,8,8,.08) 22%,rgba(8,8,8,.06) 46%,rgba(8,8,8,.72) 100%); }
      .new-series-visual .look-art, .new-series-visual .look-uploaded-image { display:block; width:100%; height:100%; }
      .new-series-visual .look-uploaded-image { object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
      .new-series-slide:hover .new-series-visual .look-uploaded-image { transform:scale(1.025); }
      .new-series-overlay { position:absolute; z-index:2; right:2rem; bottom:4.45rem; left:2rem; display:grid; gap:.38rem; max-width:440px; }
      .new-series-count { color:#f1e8df; }
      .new-series-overlay strong { max-width:400px; font-size:clamp(2rem,4vw,4.15rem); font-weight:850; letter-spacing:-.095em; line-height:.85; text-transform:uppercase; }
      .new-series-meta { color:#f1e8df; font-family:var(--mono); font-size:.6rem; letter-spacing:.06em; line-height:1.45; text-transform:uppercase; }
      .new-series-open { width:fit-content; margin-top:.3rem; padding-bottom:.18rem; border-bottom:1px solid currentColor; font-family:var(--mono); font-size:.58rem; letter-spacing:.07em; text-transform:uppercase; }
      .new-series-controls { position:absolute; z-index:6; right:2rem; bottom:1.35rem; left:2rem; display:flex; align-items:center; justify-content:space-between; gap:.8rem; }
      .new-series-arrow { display:inline-grid; width:36px; height:36px; place-items:center; border:1px solid rgba(255,255,255,.58); border-radius:50%; padding:0; color:var(--white); background:rgba(15,14,13,.16); cursor:pointer; font-size:1.25rem; line-height:1; transition:background .18s ease,color .18s ease,border-color .18s ease; }
      .new-series-arrow:hover:not(:disabled) { color:var(--ink); border-color:var(--white); background:var(--white); }
      .new-series-arrow:disabled { cursor:default; opacity:.42; }
      .new-series-dots { display:flex; align-items:center; justify-content:center; gap:.38rem; }
      .new-series-dot { width:7px; height:7px; border:1px solid rgba(255,255,255,.85); border-radius:50%; padding:0; background:transparent; cursor:pointer; transition:width .18s ease,border-radius .18s ease,background .18s ease; }
      .new-series-dot.is-active { width:25px; border-radius:99px; background:var(--white); }
      .new-series-empty { position:absolute; inset:0; display:grid; place-items:center; padding:4rem 2rem 2rem; color:var(--white); text-align:center; }
      .new-series-empty p { max-width:260px; margin:0; color:#e9dfd4; font-family:var(--mono); font-size:.65rem; line-height:1.55; letter-spacing:.04em; text-transform:uppercase; }

      .ticker { display:flex; overflow:hidden; color:var(--white); background:var(--clay); border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); }
      .ticker-track { display:flex; flex:none; min-width:max-content; animation:ticker 42s linear infinite; }
      .ticker span { padding: 0.78rem 1.25rem; font-family:var(--mono); font-size:.62rem; letter-spacing:.075em; text-transform:uppercase; }
      .ticker span::before { content:"✦"; margin-right:1.25rem; }
      @keyframes ticker { to { transform: translateX(-50%); } }

      .section { padding: clamp(4.5rem, 8vw, 8rem) 3.2vw; border-bottom: 1px solid var(--line); }
      .section.dark { color:var(--white); background:var(--ink); border-color:rgba(255,255,255,.14); }
      .section-heading { display:flex; align-items:end; justify-content:space-between; column-gap:clamp(1.5rem,4vw,4.5rem); row-gap:1rem; margin-bottom:2.3rem; }
      .section-heading > div { min-width:0; }
      .section-title { max-width:740px; margin:0; font-size:clamp(2.25rem,4.35vw,4.85rem); font-weight:850; letter-spacing:-.078em; line-height:.92; text-transform:none; text-wrap:balance; }
      .section-title .accent { color:var(--clay); }
      .section-lead { display:grid; gap:.72rem; max-width:23rem; }
      .section-deck { max-width:34rem; margin:.72rem 0 0; font-size:clamp(1rem,1.3vw,1.25rem); font-weight:650; letter-spacing:-.035em; line-height:1.25; text-wrap:balance; }
      .section-description { max-width:23rem; margin:0; color:var(--ink-soft); font-size:clamp(.87rem,.92vw,.98rem); line-height:1.55; }
      .dark .section-description { color:#c6bdb4; }
      .dark .section-deck, .personal-section .section-deck { color:#e1d8cf; }
      .text-link { display:inline-flex; align-items:center; gap:.5rem; padding-bottom:.2rem; border-bottom:1px solid currentColor; font-family:var(--mono); font-size:.64rem; letter-spacing:.06em; text-transform:uppercase; }
      .text-link:hover { color:var(--clay); }

      .mood-list { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr); border:1px solid var(--line); background:var(--line); gap:1px; }
      .mood-preview { position:relative; min-width:0; height:clamp(520px,46vw,660px); overflow:hidden; background:var(--ink); }
      .mood-preview-button { position:absolute; inset:0; width:100%; padding:0; overflow:hidden; border:0; color:var(--white); background:var(--ink); cursor:pointer; text-align:left; }
      .mood-preview-visual { position:absolute; inset:0; display:block; }
      .mood-preview-visual::after { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(8,8,8,.05) 24%,rgba(8,8,8,.08) 48%,rgba(8,8,8,.78) 100%); }
      .mood-preview-visual .look-art,.mood-preview-visual .look-uploaded-image,.mood-preview-visual .look-media-collage { width:100%; height:100%; }
      .mood-preview-visual .look-uploaded-image { object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
      .mood-preview-button:hover .look-uploaded-image,.mood-preview-button:hover .look-media-collage { transform:scale(1.025); }
      .mood-preview-overlay { position:absolute; z-index:2; right:clamp(1rem,2.4vw,2rem); bottom:clamp(1rem,2.4vw,2rem); left:clamp(1rem,2.4vw,2rem); display:grid; gap:.4rem; max-width:520px; }
      .mood-preview-overlay strong { max-width:480px; font-size:clamp(2.1rem,4.1vw,4.6rem); font-weight:850; letter-spacing:-.095em; line-height:.84; text-transform:uppercase; text-wrap:balance; }
      .mood-preview-meta,.mood-preview-open { color:#f1e8df; font-family:var(--mono); font-size:.58rem; letter-spacing:.06em; line-height:1.45; text-transform:uppercase; }
      .mood-preview-open { width:fit-content; margin-top:.25rem; padding-bottom:.18rem; border-bottom:1px solid currentColor; }
      .mood-style-link { position:absolute; z-index:3; right:clamp(1rem,2.4vw,2rem); top:clamp(1rem,2.4vw,2rem); padding:.7rem .9rem; color:#111; background:var(--clay); border:1px solid #111; box-shadow:3px 3px 0 #111; font-family:var(--mono); font-size:.62rem; font-weight:700; letter-spacing:.05em; text-decoration:none; text-transform:uppercase; transition:color 160ms ease,background 160ms ease,box-shadow 160ms ease,transform 160ms ease; }
      .mood-style-link:hover,.mood-style-link:focus-visible { color:var(--white); background:var(--ink); box-shadow:0 0 0 #111; transform:translate(2px,2px); outline:none; }
      .mood-options { display:grid; min-width:0; grid-template-rows:repeat(var(--mood-count,5),minmax(0,1fr)); background:var(--white); }
      .mood-button { min-height:84px; padding:1rem; display:flex; align-items:end; justify-content:space-between; gap:.7rem; border:0; border-bottom:1px solid var(--line); background:transparent; cursor:pointer; text-align:left; transition:background .18s ease,color .18s ease; }
      .mood-button:last-child { border-bottom:0; }
      .mood-button strong { max-width:105px; font-size:clamp(1.05rem,1.65vw,1.45rem); letter-spacing:-.065em; line-height:.95; }
      .mood-button span { color:var(--clay); font-family:var(--mono); font-size:.72rem; }
      .mood-button:hover,.mood-button.is-active { color:var(--white); background:var(--ink); }
      .mood-button:hover span,.mood-button.is-active span { color:var(--clay); }

      .popular-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
      .popular-card { min-width:0; padding:1.05rem; color:var(--ink); background:var(--white); }
      .popular-card .product-art { margin-bottom:1rem; }
      .product-art { position:relative; width:100%; aspect-ratio:1 / 1; overflow:hidden; background:var(--product-bg,#d5ccc3); }
      .product-art::before { content:""; position:absolute; inset:auto 14% 6%; height:8%; border-radius:50%; background:rgba(23,22,20,.13); filter:blur(5px); }
      .product-art .garment { position:absolute; left:50%; top:14%; width:52%; height:66%; transform:translateX(-50%); background:var(--product-ink,#242220); border-radius:12% 12% 5% 5%; }
      .product-art .garment::before { content:""; position:absolute; width:50%; height:20%; top:-7%; left:25%; border:1px solid rgba(255,255,255,.25); border-bottom:0; border-radius:40% 40% 0 0; }
      .product-art .garment::after { content:""; position:absolute; width:27%; height:100%; left:-26%; top:3%; border-radius:30px 0 15px 15px; background:inherit; transform:rotate(7deg); box-shadow:calc(370% + 4px) 0 0 var(--product-ink,#242220); }
      .product-art .product-code { position:absolute; right:.6rem; top:.65rem; color:rgba(23,22,20,.55); }
      .product-art img { width:100%; height:100%; object-fit:cover; }
      .product-name { margin:.1rem 0 .25rem; font-size:.92rem; font-weight:750; letter-spacing:-.035em; line-height:1.1; }
      .product-price { margin:0; color:var(--clay-dark); font-family:var(--mono); font-size:.68rem; }
      .product-meta { display:flex; justify-content:space-between; align-items:center; gap:.6rem; margin-top:.7rem; }
      .swatch { width:10px; height:10px; flex:0 0 10px; display:inline-block; border:1px solid rgba(23,22,20,.25); border-radius:50%; background:var(--swatch); }
      .product-link { display:inline-flex; align-items:center; gap:.3rem; font-family:var(--mono); font-size:.6rem; letter-spacing:.035em; text-transform:uppercase; }
      .product-link:hover { color:var(--clay); }
      .product-card-open, .product-name-link, .look-item-title, .article-related-product-open { margin:0; padding:0; border:0; color:inherit; background:transparent; cursor:pointer; text-align:left; }
      .product-card-open { display:block; width:100%; }
      .product-card-open:focus-visible, .product-name-link:focus-visible, .look-item-title:focus-visible, .article-related-product-open:focus-visible { outline:2px solid var(--clay); outline-offset:3px; }
      .product-name-link { display:block; font-size:inherit; font-weight:inherit; line-height:inherit; letter-spacing:inherit; }
      .product-name-link:hover, .look-item-title:hover, .article-related-product-open:hover { color:var(--clay); }

      .lookbook-section { background:var(--white); }
      .home-catalogue-controls[hidden] { display:none !important; }
      .filter-toolbar { display:grid; grid-template-columns:minmax(180px,1.35fr) repeat(3,minmax(126px,.45fr)); gap:.55rem; margin-bottom:1.25rem; }
      .field, .field select, .field input, .field textarea { width:100%; }
      .field { position:relative; }
      .field input, .field select, .field textarea {
        min-height:48px; padding:.76rem .85rem; color:var(--ink); border:1px solid var(--line); border-radius:0; outline:0; background:var(--white); font-size:.77rem;
      }
      .field textarea { min-height:96px; resize:vertical; }
      .field input:focus, .field select:focus, .field textarea:focus { border-color:var(--clay); box-shadow:0 0 0 2px rgba(169,85,60,.14); }
      .field.has-icon input { padding-left:2.55rem; }
      .field.has-icon svg { position:absolute; pointer-events:none; left:.85rem; top:50%; width:15px; height:15px; transform:translateY(-50%); }
      .field label { display:block; margin-bottom:.38rem; font-family:var(--mono); font-size:.58rem; letter-spacing:.05em; text-transform:uppercase; }
      .filter-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:40px; margin-bottom:1.5rem; }
      .active-filter { display:flex; flex-wrap:wrap; gap:.35rem; }
      .filter-chip { padding:.5rem .7rem; border:1px solid var(--line); color:var(--ink-soft); background:transparent; cursor:pointer; font-family:var(--mono); font-size:.59rem; letter-spacing:.04em; text-transform:uppercase; transition:.15s ease; }
      .filter-chip:hover, .filter-chip.is-active { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .result-count { color:var(--taupe); white-space:nowrap; }
      .look-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.25rem; }
      .look-card { min-width:0; background:var(--paper); }
      .look-card-image { position:relative; width:100%; aspect-ratio:1 / 1; padding:0; overflow:hidden; border:0; cursor:pointer; background:var(--ink); text-align:left; isolation:isolate; }
      .look-card-image.image-frame--square,.look-card-image.image-frame--portrait { aspect-ratio:1 / 1; }
      .look-card-image:hover .look-art, .look-card-image:hover .look-uploaded-image, .look-card-image:hover .look-media-collage { transform:scale(1.025); }
      .look-card-image:hover .open-look { opacity:1; transform:translateY(0); }
      .look-card-body { padding:1rem 1rem 1.15rem; }
      .look-card-meta { display:flex; align-items:center; justify-content:space-between; gap:.6rem; color:var(--taupe); }
      .look-card-title { margin:.5rem 0 .72rem; font-size:clamp(1.05rem,1.35vw,1.42rem); font-weight:800; letter-spacing:-.06em; line-height:.95; }
      .look-card-tags { display:flex; flex-wrap:wrap; gap:.35rem; }
      .look-card-footer { display:flex; align-items:flex-end; justify-content:space-between; gap:.6rem; }
      .look-like-button { display:inline-flex; align-items:center; justify-content:center; gap:.32rem; min-height:36px; padding:.42rem .58rem; border:1px solid var(--line); color:var(--ink); background:var(--white); font-family:var(--mono); font-size:.57rem; letter-spacing:.03em; cursor:pointer; transition:.16s ease; }
      .look-like-button:hover,.look-like-button.is-liked { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .look-like-button.is-compact { min-height:28px; padding:.26rem .38rem; font-size:.5rem; }
      .tag { display:inline-flex; align-items:center; min-height:20px; padding:0 .35rem; color:var(--ink-soft); border:1px solid var(--line); background:rgba(248,246,242,.45); font-size:.55rem; letter-spacing:.035em; }
      .open-look { position:absolute; right:.8rem; bottom:.8rem; opacity:0; transform:translateY(7px); transition:.18s ease; }
      .look-uploaded-image { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
      .look-media-collage { display:grid; width:100%; height:100%; grid-template-columns:1.08fr .92fr; overflow:hidden; background:var(--ink); transition:transform .35s ease; }
      .look-media-collage[data-count="1"] { display:block; }
      .look-media-collage__primary, .look-media-collage__support img { display:block; width:100%; height:100%; object-fit:cover; }
      .look-media-collage__support { display:grid; min-width:0; grid-template-rows:1fr 1fr; gap:2px; background:rgba(248,246,242,.68); }
      .look-media-collage[data-count="2"] .look-media-collage__support { grid-template-rows:1fr; }
      .look-cover-overlay { position:absolute; z-index:2; inset:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; padding:clamp(.8rem,1.35vw,1.2rem); color:var(--white); background:linear-gradient(180deg,rgba(12,11,10,.04) 30%,rgba(12,11,10,.82) 100%); pointer-events:none; }
      .look-cover-overlay__eyebrow { margin:0 0 .45rem; color:rgba(248,246,242,.82); font-family:var(--mono); font-size:.56rem; letter-spacing:.055em; text-transform:uppercase; }
      .look-cover-overlay__title { max-width:93%; margin:0; font-size:clamp(1.35rem,2vw,2.35rem); font-weight:850; letter-spacing:-.082em; line-height:.87; text-transform:uppercase; text-wrap:balance; }
      .look-cover-overlay__meta { display:flex; flex-wrap:wrap; gap:.32rem .55rem; margin-top:.7rem; color:rgba(248,246,242,.82); font-family:var(--mono); font-size:.53rem; letter-spacing:.045em; text-transform:uppercase; }
      .look-cover-overlay__open { display:inline-flex; margin-top:.85rem; padding-bottom:.18rem; border-bottom:1px solid currentColor; color:var(--white); font-family:var(--mono); font-size:.54rem; letter-spacing:.045em; text-transform:uppercase; opacity:.82; }
      .look-art { position:relative; width:100%; height:100%; overflow:hidden; color:var(--figure); background:var(--art-bg); transition:transform .35s ease; }
      .look-art::before { content:""; position:absolute; width:68%; aspect-ratio:1; top:-17%; right:-16%; border-radius:50%; background:var(--art-accent); opacity:.9; }
      .look-art::after { content:""; position:absolute; inset:0; background:linear-gradient(115deg,rgba(0,0,0,.12),transparent 42%,rgba(255,255,255,.1)); mix-blend-mode:soft-light; }
      .look-art .art-index { position:absolute; z-index:4; top:.8rem; left:.8rem; color:var(--art-label); }
      .look-art .art-caption { position:absolute; z-index:4; right:.75rem; bottom:.72rem; max-width:72px; color:var(--art-label); text-align:right; opacity:.85; }
      .look-art .figure { position:absolute; z-index:2; bottom:-1%; left:50%; width:55%; height:83%; transform:translateX(-50%); }
      .look-art .figure.secondary { z-index:1; left:24%; height:64%; width:42%; opacity:.86; transform:translateX(-50%) scale(.86); transform-origin:bottom; }
      .look-art .head { width:20%; background:var(--skin); }
      .look-art .hair { width:22%; background:var(--hair); }
      .look-art .neck { background:var(--skin-dark); }
      .look-art .body { background:var(--garment); }
      .look-art .arm { background:var(--garment); }
      .look-art .leg { background:var(--bottom); }
      .look-art.flip .figure { left:56%; }
      .look-art.flip .figure.secondary { left:77%; }
      .look-art .stripe { position:absolute; z-index:3; width:1px; height:100%; left:22%; background:rgba(248,246,242,.25); transform:rotate(17deg); }
      .look-art.light .body, .look-art.light .arm { background:#d9d0c5; }
      .look-art.light .leg { background:#4f4a45; }
      .look-art.light .hair { background:#2d251f; }
      .look-art.light .head { background:#a97256; }
      .look-art.light .neck { background:#98654d; }
      .empty-state { grid-column:1/-1; padding:4rem 1rem; border:1px solid var(--line); text-align:center; }
      .empty-state h3 { margin:0 0 .55rem; font-size:1.45rem; letter-spacing:-.06em; }
      .empty-state p { margin:0; color:var(--ink-soft); font-size:.86rem; }

      .journal-grid { display:grid; grid-template-columns:1.3fr repeat(2,1fr); gap:1px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.16); }
      .journal-card { position:relative; display:flex; flex-direction:column; min-height:300px; padding:1.25rem; overflow:hidden; color:var(--white); background:#242220; }
      .journal-card:nth-child(2) { background:#4b433d; }
      .journal-card:nth-child(3) { background:#8d5041; }
      .journal-card-cover { position:absolute; inset:0; z-index:0; opacity:.34; }
      .journal-card-cover::after { content:""; position:absolute; inset:0; background:linear-gradient(120deg,rgba(17,16,15,.82),rgba(17,16,15,.28)); }
      .journal-card-cover img { width:100%; height:100%; object-fit:cover; }
      .journal-card > :not(.journal-card-cover) { position:relative; z-index:1; }
      .journal-card .article-number { color:#d8c3b3; }
      .journal-card h3 { max-width:430px; margin:auto 0 1rem; font-size:clamp(1.65rem,3vw,3.25rem); font-weight:780; letter-spacing:-.075em; line-height:.93; }
      .journal-card-excerpt { max-width:430px; margin:-.15rem 0 1rem; color:rgba(255,255,255,.75); font-size:.82rem; line-height:1.55; }
      .journal-card button { padding:0; width:fit-content; border:0; color:inherit; background:none; cursor:pointer; }
      .journal-card button:hover { color:var(--clay); }

      .request-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr); border:1px solid var(--line); background:var(--paper); }
      .request-copy { padding:clamp(2rem,4.3vw,4.5rem); background:var(--ink); color:var(--white); }
      .request-copy .section-title { max-width:100%; font-size:clamp(2.25rem,3.9vw,4.7rem); letter-spacing:-.088em; line-height:.91; text-wrap:balance; }
      .request-copy .request-description { max-width:33rem; color:#c6bdb4; font-size:clamp(.92rem,1.1vw,1.06rem); line-height:1.6; }
      .request-note { display:flex; gap:.65rem; align-items:flex-start; margin-top:2rem; color:#dacdc2; }
      .request-note svg { width:16px; flex:0 0 16px; margin-top:.1rem; color:var(--clay); }
      .request-form { padding:clamp(1.4rem,3.3vw,3rem); }
      .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:.85rem; }
      .form-grid .full { grid-column:1/-1; }
      .form-status { min-height:22px; margin:.8rem 0 0; color:var(--clay-dark); font-size:.78rem; }

      .personal-section { color:var(--white); background:var(--ink); }
      .personal-section .section-description { color:#c6bdb4; }
      .personal-section .section-number { color:#d8c3b3; }
      .personal-section .section-title .accent { color:#d5a488; }
      .personal-grid { display:grid; grid-template-columns:minmax(220px,.74fr) minmax(0,1.26fr); gap:1px; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.16); }
      .personal-intro, .personal-results { padding:1.25rem; background:#262421; }
      .personal-intro { display:flex; min-height:280px; flex-direction:column; justify-content:space-between; }
      .personal-intro h3 { max-width:320px; margin:0; font-size:clamp(1.7rem,3vw,2.85rem); letter-spacing:-.075em; line-height:.92; }
      .personal-intro p { max-width:330px; margin:1rem 0; color:#c6bdb4; font-size:.84rem; line-height:1.55; }
      .personal-intro .button-outline { width:fit-content; color:var(--white); border-color:rgba(255,255,255,.42); }
      .personal-intro .button-outline:hover { color:var(--ink); border-color:var(--clay); background:var(--clay); }
      .personal-results { background:#3c3732; }
      .personal-group + .personal-group { margin-top:1.2rem; padding-top:1.2rem; border-top:1px solid rgba(255,255,255,.16); }
      .personal-group-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.75rem; }
      .personal-group-head h4 { margin:0; color:#d8c3b3; font-family:var(--mono); font-size:.61rem; font-weight:500; letter-spacing:.06em; text-transform:uppercase; }
      .personal-looks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.55rem; }
      .personal-look { position:relative; min-width:0; overflow:hidden; border:1px solid rgba(255,255,255,.22); color:var(--white); background:#242220; }
      .personal-look:hover,.personal-look:focus-within { border-color:var(--clay); }
      .personal-look-open { display:block; width:100%; padding:0; border:0; color:inherit; background:transparent; text-align:left; cursor:pointer; }
      .personal-look .look-art, .personal-look .look-uploaded-image { height:132px; min-height:132px; }
      .personal-look-copy { display:block; padding:.65rem; }
      .personal-look-copy strong { display:block; overflow:hidden; font-size:.8rem; letter-spacing:-.035em; text-overflow:ellipsis; white-space:nowrap; }
      .personal-look-copy span { display:block; overflow:hidden; margin-top:.25rem; color:#c6bdb4; font-family:var(--mono); font-size:.55rem; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
      .personal-look > .catalogue-card-actions { position:absolute; z-index:2; top:.45rem; right:.45rem; display:flex; gap:.28rem; }
      .personal-look > .catalogue-card-actions .look-like-button,
      .personal-look > .catalogue-card-actions .retention-save-button { width:34px; min-width:34px; min-height:34px; padding:0; color:var(--white); border-color:rgba(255,255,255,.42); background:rgba(20,18,16,.48); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
      .personal-look > .catalogue-card-actions .look-like-button span { display:none; }
      .personal-look > .catalogue-card-actions .look-like-button:hover,
      .personal-look > .catalogue-card-actions .look-like-button.is-liked,
      .personal-look > .catalogue-card-actions .retention-save-button:hover,
      .personal-look > .catalogue-card-actions .retention-save-button.is-saved { color:var(--ink); border-color:var(--white); background:var(--white); }
      .personal-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.55rem; }
      .personal-product { min-width:0; padding:.65rem; border:1px solid rgba(255,255,255,.18); background:#302c29; }
      .personal-product .product-art { height:96px; }
      .personal-product h5 { overflow:hidden; margin:.55rem 0 .2rem; color:var(--white); font-size:.75rem; letter-spacing:-.035em; text-overflow:ellipsis; white-space:nowrap; }
      .personal-product p { margin:0; color:#d8c3b3; font-family:var(--mono); font-size:.56rem; }
      .personal-product .retention-save-button { margin-top:.42rem; color:var(--white); border-color:rgba(255,255,255,.42); }
      .personal-product a { display:inline-block; margin-top:.55rem; color:var(--white); font-family:var(--mono); font-size:.56rem; text-decoration:none; text-transform:uppercase; }
      .personal-product a:hover { color:var(--clay); }
      .personal-empty { margin:0; color:#c6bdb4; font-size:.84rem; line-height:1.55; }

      .about-section { display:grid; grid-template-columns:.55fr 1.45fr; gap:2rem; align-items:start; }
      .about-section h2 { max-width:820px; margin:0; font-size:clamp(2.3rem,4.7vw,5.2rem); font-weight:830; letter-spacing:-.09em; line-height:.9; text-transform:uppercase; text-wrap:balance; }
      .about-section h2 em { color:var(--clay); font-style:normal; }
      .about-section .about-copy { max-width:560px; font-size:1rem; line-height:1.6; }
      .about-points { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:2.4rem; background:var(--line); border:1px solid var(--line); }
      .about-points div { min-height:130px; padding:1rem; background:var(--white); }
      .about-points strong { display:block; margin:.7rem 0 .35rem; font-size:.92rem; letter-spacing:-.035em; }
      .about-points p { margin:0; color:var(--ink-soft); font-size:.76rem; line-height:1.45; }

      .footer { padding:2.2rem 3.2vw; color:var(--white); background:var(--ink); }
      .footer-top { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; padding-bottom:2.1rem; border-bottom:1px solid var(--line-light); }
      .footer-brand { font-size:clamp(3.5rem,8vw,8rem); font-weight:900; letter-spacing:-.12em; line-height:.68; }
      .footer-top p { max-width:290px; margin:0; color:#c5bbb0; line-height:1.45; }
      .footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding-top:1rem; color:#a69c93; font-family:var(--mono); font-size:.56rem; letter-spacing:.045em; text-transform:uppercase; }
      .footer-links { display:flex; gap:1rem; }
      .footer a:hover { color:var(--clay); }

      dialog { max-width:none; max-height:none; width:100%; height:100%; margin:0; padding:0; border:0; background:rgba(23,22,20,.68); }
      dialog::backdrop { background:rgba(23,22,20,.68); backdrop-filter:blur(4px); }
      .modal-shell { position:relative; width:min(1060px,calc(100vw - 2rem)); max-height:calc(100vh - 2rem); margin:1rem auto; overflow:auto; color:var(--ink); background:var(--white); box-shadow:var(--shadow); }
      .look-modal-shell { width:min(1240px,calc(100vw - 2rem)); height:min(900px,calc(100dvh - 2rem)); max-height:calc(100dvh - 2rem); overflow:hidden; }
      .look-modal-shell #lookDetail { height:100%; }
      .look-modal-shell > .modal-close { position:absolute; top:0; right:0; float:none; margin:1rem; }
      .modal-close { position:sticky; z-index:4; top:1rem; float:right; margin:1rem; background:var(--white); border-color:var(--line); }
      .look-detail { display:grid; height:100%; min-height:0; grid-template-columns:minmax(0,1fr) minmax(355px,.86fr); }
      .detail-visual { width:min(100%,calc(100dvh - 2rem)); max-width:100%; aspect-ratio:1 / 1; align-self:center; min-height:0; overflow:hidden; background:var(--paper-deep); }
      .detail-visual .look-art, .detail-visual .look-uploaded-image, .detail-visual .look-media-collage { width:100%; height:100%; min-height:0; }
      .detail-visual .look-uploaded-image,.detail-visual .look-media-collage__primary,.detail-visual .look-media-collage__support img { object-fit:contain; background:var(--paper-deep); }
      .detail-content { min-height:0; padding:clamp(1.5rem,3.8vw,3.6rem); overflow:auto; }
      .detail-heading { padding-right:2rem; }
      .detail-heading h2 { margin:.75rem 0 1.2rem; font-size:clamp(2.6rem,5vw,5.4rem); font-weight:850; letter-spacing:-.1em; line-height:.83; text-transform:uppercase; }
      .detail-description { margin:0 0 1.25rem; color:var(--ink-soft); line-height:1.55; }
      .detail-actions { display:flex; gap:.6rem; margin-bottom:2rem; }
      .detail-actions .button-outline { min-height:42px; }
      .item-list { border-top:1px solid var(--line); }
      .look-item { display:grid; grid-template-columns:47px 1fr auto; gap:.8rem; align-items:center; padding:.85rem 0; border-bottom:1px solid var(--line); }
      .look-item-art { width:47px; aspect-ratio:1; overflow:hidden; }
      .look-item-art .product-art { height:100%; }
      .look-item-title { margin:0 0 .3rem; font-size:.86rem; font-weight:750; letter-spacing:-.03em; }
      .look-item-info { display:flex; align-items:center; gap:.4rem; color:var(--taupe); font-family:var(--mono); font-size:.58rem; text-transform:uppercase; }
      .item-link { padding:.55rem .62rem; border:1px solid var(--line); font-family:var(--mono); font-size:.55rem; letter-spacing:.035em; text-transform:uppercase; transition:.15s; }
      .item-link:hover { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .price-note { margin:1rem 0 0; color:var(--taupe); font-family:var(--mono); font-size:.58rem; line-height:1.5; }

      .article-shell { width:min(760px,calc(100vw - 2rem)); height:auto; max-height:calc(100vh - 2rem); padding:clamp(1.5rem,4vw,4rem); overflow:auto; color:var(--ink); background:var(--white); }
      .article-editorial-shell { width:min(1120px,calc(100vw - 2rem)); padding:0; }
      .editorial-article { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.63fr); min-height:min(760px,calc(100dvh - 2rem)); }
      .editorial-article-head { grid-column:1/-1; padding:clamp(2rem,5vw,5.5rem) clamp(1.5rem,5vw,5rem) clamp(1.35rem,3vw,3rem); border-bottom:1px solid var(--line); }
      .editorial-article-head .eyebrow { color:var(--clay); }
      .editorial-article-head h2 { max-width:900px; margin:.85rem 0 1rem; font-size:clamp(2.9rem,7vw,7.4rem); font-weight:900; letter-spacing:-.11em; line-height:.79; text-transform:uppercase; text-wrap:balance; }
      .editorial-article-head .article-lede { max-width:650px; margin:0; color:var(--ink-soft); font-size:clamp(1rem,1.45vw,1.2rem); line-height:1.55; }
      .editorial-article-meta { display:flex; flex-wrap:wrap; gap:.45rem .85rem; margin-top:1.2rem; color:var(--taupe); font-family:var(--mono); font-size:.58rem; letter-spacing:.045em; text-transform:uppercase; }
      .article-head-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem; margin-top:1.35rem; }
      .editorial-article-visual { min-height:480px; background:var(--sand); }
      .editorial-article-visual .article-cover { width:100%; max-width:none; height:100%; min-height:480px; margin:0; }
      .editorial-article-visual .article-cover img { display:block; width:100%; height:100%; object-fit:cover; }
      .editorial-article-main { padding:clamp(1.5rem,4vw,4rem); }
      .editorial-article-main .article-content { max-width:650px; }
      .editorial-article-main .article-curation { max-width:650px; }
      .article-shell h2 { margin:.8rem 0 1.2rem; font-size:clamp(2.3rem,5.2vw,4.8rem); letter-spacing:-.09em; line-height:.86; }
      .article-shell p { max-width:620px; color:var(--ink-soft); line-height:1.7; }
      .article-lede { margin:-.2rem 0 1.65rem; font-size:1rem; }
      .article-cover { width:100%; max-width:620px; aspect-ratio:3 / 4; margin:1.5rem 0 1.75rem; overflow:hidden; background:var(--sand); }
      .article-cover.image-frame--square { aspect-ratio:1 / 1; }
      .article-cover img { width:100%; height:100%; object-fit:cover; }
      .product-shell { width:min(900px,calc(100vw - 2rem)); }
      .product-detail { display:grid; grid-template-columns:minmax(0,.94fr) minmax(280px,1.06fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:start; }
      .product-detail .product-art { height:auto; }
      .product-detail h2 { margin:.65rem 0 .75rem; font-size:clamp(2.25rem,5vw,4.4rem); letter-spacing:-.09em; line-height:.88; }
      .product-detail-price { margin:.2rem 0 1rem; color:var(--clay-dark); font-family:var(--mono); font-size:.8rem; letter-spacing:.035em; }
      .product-variant-options { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.25rem 0 1.5rem; }
      .product-variant-option { display:inline-flex; align-items:center; gap:.45rem; min-height:38px; padding:0 .75rem; border:1px solid var(--line); color:var(--ink); background:transparent; cursor:pointer; font-size:.76rem; }
      .product-variant-option.is-selected { border-color:var(--ink); background:var(--ink); color:var(--white); }
      .product-variant-option .swatch { border-color:currentColor; }
      .product-detail .detail-actions { margin:1.2rem 0 1.25rem; flex-wrap:wrap; }
      .product-related-looks { margin-top:1.65rem; padding-top:1.25rem; border-top:1px solid var(--line); }
      .product-related-looks h3 { margin:0 0 .75rem; font-size:.92rem; letter-spacing:-.035em; }
      .product-related-look-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
      .product-related-look { position:relative; min-width:0; min-height:145px; padding:0; overflow:hidden; border:1px solid var(--line); color:var(--white); background:var(--ink); text-align:left; cursor:pointer; }
      .product-related-look .look-art, .product-related-look .look-uploaded-image, .product-related-look .look-media-collage { height:100%; min-height:145px; }
      .product-related-look-copy { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:.7rem; background:linear-gradient(180deg,transparent 30%,rgba(15,14,13,.82)); }
      .product-related-look-copy span { color:rgba(248,246,242,.75); font-family:var(--mono); font-size:.52rem; letter-spacing:.035em; text-transform:uppercase; }
      .product-related-look-copy strong { margin-top:.3rem; font-size:1rem; letter-spacing:-.055em; line-height:.92; }
      .article-content { display:grid; gap:1.15rem; }
      .article-block { max-width:620px; }
      .article-block h3 { margin:0; font-size:clamp(1.3rem,2.6vw,2rem); letter-spacing:-.055em; line-height:1; }
      .article-block p { margin:0; white-space:pre-wrap; }
      .article-block blockquote { margin:0; padding:.15rem 0 .15rem 1rem; border-left:2px solid var(--clay); color:var(--ink); font-size:clamp(1.1rem,2.2vw,1.45rem); font-weight:650; line-height:1.38; }
      .article-figure { width:100%; max-width:620px; margin:0; }
      .article-figure img { display:block; width:100%; aspect-ratio:3 / 4; object-fit:cover; background:var(--sand); }
      .article-figure.image-frame--square img { aspect-ratio:1 / 1; }
      .article-figure figcaption { margin-top:.5rem; color:var(--taupe); font-family:var(--mono); font-size:.58rem; line-height:1.45; }
      .article-curation { display:grid; gap:1rem; margin:2rem 0 0; padding-top:1.3rem; border-top:1px solid var(--line); }
      .article-curation h3 { margin:0; font-size:1rem; letter-spacing:-.035em; }
      .article-related-looks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
      .article-related-look { position:relative; display:grid; min-width:0; grid-template-columns:minmax(112px,.8fr) minmax(0,1.2fr) auto; align-items:stretch; gap:0; padding:0; overflow:hidden; border:1px solid var(--line); color:var(--ink); background:var(--white); text-align:left; cursor:pointer; transition:.18s ease; }
      .article-related-look:hover { border-color:var(--ink); transform:translateY(-2px); box-shadow:0 12px 28px rgba(17,17,17,.09); }
      .article-related-look-visual { min-height:210px; overflow:hidden; background:var(--ink); }
      .article-related-look-visual .look-art,.article-related-look-visual .look-uploaded-image,.article-related-look-visual .look-media-collage { width:100%; height:100%; min-height:210px; }
      .article-related-look-copy { display:flex; min-width:0; flex-direction:column; justify-content:flex-end; gap:.42rem; padding:1rem .8rem; }
      .article-related-look-copy small,.article-related-look-copy em { color:var(--taupe); font-family:var(--mono); font-size:.52rem; font-style:normal; letter-spacing:.05em; line-height:1.35; text-transform:uppercase; }
      .article-related-look-copy strong { font-size:clamp(1.05rem,1.6vw,1.4rem); letter-spacing:-.045em; line-height:.96; }
      .article-related-look-copy > span { display:flex; flex-wrap:wrap; gap:.28rem; margin-top:.18rem; }
      .article-related-look-copy b { padding:.23rem .34rem; border:1px solid var(--line); font-family:var(--mono); font-size:.46rem; font-weight:500; letter-spacing:.04em; text-transform:uppercase; }
      .article-related-look-arrow { align-self:flex-start; padding:.75rem .7rem 0 0; color:var(--ink); font-family:var(--mono); font-size:.8rem; }
      .article-related-products { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:.65rem; }
      .article-related-product { display:grid; gap:.6rem; padding:.7rem; border:1px solid var(--line); }
      .article-related-product h4 { margin:0; font-size:.94rem; letter-spacing:-.035em; }
      .article-related-product .product-art { min-height:0; }
      .image-upload-note { margin:.48rem 0 0; color:var(--taupe); font-size:.67rem; line-height:1.45; }
      .article-related-product a { width:fit-content; color:var(--ink); font-family:var(--mono); font-size:.6rem; text-decoration:none; }
      .article-related-product a:hover { color:var(--clay); }
      .auth-shell { width:min(440px,calc(100vw - 2rem)); }
      .auth-shell h2 { margin:.8rem 0 .65rem; font-size:clamp(2rem,4vw,3.5rem); letter-spacing:-.08em; line-height:.9; text-transform:uppercase; }
      .auth-shell > p { margin:0 0 1.4rem; color:var(--ink-soft); line-height:1.55; }
      .member-shell { width:min(720px,calc(100vw - 2rem)); }
      .member-auth-switch { margin:.1rem 0 0; padding:0; border:0; color:var(--clay-dark); background:transparent; font:inherit; font-size:.77rem; text-decoration:underline; cursor:pointer; }
      .member-auth-switch:hover { color:var(--ink); }
      .social-auth { display:grid; gap:.65rem; margin:1.15rem 0; }
      .social-auth-button { display:flex; align-items:center; justify-content:center; gap:.7rem; width:100%; min-height:48px; padding:.75rem 1rem; border:1px solid var(--ink); border-radius:999px; color:var(--ink); background:var(--white); font-weight:700; cursor:pointer; transition:transform .16s ease,box-shadow .16s ease,background .16s ease; }
      .social-auth-button:hover { transform:translateY(-1px); box-shadow:0 7px 18px rgba(17,17,17,.09); background:var(--paper); }
      .social-auth-button:focus-visible { outline:3px solid var(--yellow); outline-offset:2px; }
      .social-auth-button:disabled { opacity:.58; cursor:wait; transform:none; box-shadow:none; }
      .social-auth-button svg { width:19px; height:19px; flex:0 0 auto; }
      .auth-divider { display:flex; align-items:center; gap:.8rem; margin:1rem 0; color:var(--taupe); font-family:var(--mono); font-size:.58rem; letter-spacing:.06em; text-transform:uppercase; }
      .auth-divider::before,.auth-divider::after { content:""; height:1px; flex:1; background:var(--line); }
      .member-profile-head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin-right:2rem; }
      .member-profile-head h2 { max-width:470px; }
      .member-profile-head .small-button { flex:0 0 auto; }
      .member-help { margin:.25rem 0 1rem; color:var(--taupe); font-size:.72rem; line-height:1.45; }
      .member-tag-picker { overflow:hidden; border:1px solid var(--line); background:var(--white); }
      .member-tag-picker-head { display:flex; align-items:center; justify-content:space-between; gap:.8rem; padding:.62rem .75rem; border-bottom:1px solid var(--line); color:var(--taupe); font-family:var(--mono); font-size:.57rem; letter-spacing:.035em; text-transform:uppercase; }
      .member-tag-picker-count { flex:0 0 auto; color:var(--clay-dark); white-space:nowrap; }
      .member-tag-options { display:flex; flex-wrap:wrap; gap:.42rem; padding:.7rem; }
      .member-tag-option { min-height:31px; padding:.42rem .58rem; border:1px solid var(--line); border-radius:999px; color:var(--ink); background:transparent; font-family:var(--mono); font-size:.56rem; letter-spacing:.025em; text-transform:uppercase; cursor:pointer; transition:background .16s ease,color .16s ease,border-color .16s ease; }
      .member-tag-option:hover:not(:disabled), .member-tag-option:focus-visible { border-color:var(--clay); color:var(--clay-dark); outline:0; }
      .member-tag-option[aria-pressed="true"] { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .member-tag-option.is-legacy { border-style:dashed; }
      .member-tag-option:disabled { opacity:.34; cursor:not-allowed; }
      .member-request-list { display:grid; gap:.65rem; margin-top:1rem; }
      .member-request { padding:.85rem; border:1px solid var(--line); background:var(--paper); }
      .member-request-top { display:flex; align-items:flex-start; justify-content:space-between; gap:.8rem; }
      .member-request h4 { margin:0; font-size:.95rem; letter-spacing:-.035em; }
      .member-request p { margin:.55rem 0 0; font-size:.78rem; line-height:1.5; }
      .request-status { flex:0 0 auto; padding:.34rem .45rem; color:var(--ink); border:1px solid var(--line); background:var(--white); font-family:var(--mono); font-size:.55rem; letter-spacing:.04em; text-transform:uppercase; }
      .request-status.is-replied, .request-status.is-closed { color:#27513d; border-color:#a7c8b1; background:#eef8f0; }
      .request-status.is-reviewing { color:#79542c; border-color:#dac09b; background:#fff7e8; }
      .member-request-links { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.75rem; }
      .member-request-links a, .member-request-links button { padding:.45rem .55rem; border:1px solid var(--line); color:var(--ink); background:var(--white); font-family:var(--mono); font-size:.56rem; text-decoration:none; text-transform:uppercase; cursor:pointer; }
      .member-request-links a:hover, .member-request-links button:hover { color:var(--white); border-color:var(--ink); background:var(--ink); }

      .studio-scrim { position:fixed; z-index:70; inset:0; visibility:hidden; opacity:0; background:rgba(23,22,20,.43); transition:.2s; }
      .studio-scrim.is-open { visibility:visible; opacity:1; }
      .studio-drawer { position:fixed; z-index:80; top:0; right:0; width:min(940px,100vw); height:100dvh; overflow:auto; transform:translateX(102%); color:var(--ink); background:var(--white); box-shadow:-20px 0 50px rgba(0,0,0,.18); transition:transform .28s cubic-bezier(.2,.7,.2,1); }
      .studio-drawer.is-open { transform:translateX(0); }
      .studio-top { position:sticky; z-index:3; top:0; display:flex; align-items:center; justify-content:space-between; padding:1.1rem clamp(1.1rem,2.7vw,2.4rem); border-bottom:1px solid var(--line); background:rgba(248,246,242,.95); backdrop-filter:blur(12px); }
      .studio-title { margin:0; font-size:clamp(1.25rem,2vw,1.65rem); font-weight:850; letter-spacing:-.075em; }
      .studio-top-actions { display:flex; align-items:center; gap:.35rem; }
      .studio-content { max-width:880px; padding:clamp(1.15rem,3vw,2.5rem); }
      .prototype-note { margin:0 0 1.3rem; padding:.85rem; border-left:3px solid var(--clay); background:#f1e8df; color:var(--ink-soft); font-size:.76rem; line-height:1.5; }
      .studio-tabs { display:flex; flex-wrap:wrap; gap:.4rem; margin-bottom:1.35rem; padding-bottom:.8rem; border-bottom:1px solid var(--line); }
      .studio-tab { padding:.65rem .8rem; border:1px solid var(--line); background:var(--paper); cursor:pointer; font-family:var(--mono); font-size:.6rem; letter-spacing:.035em; text-transform:uppercase; transition:.16s ease; }
      .studio-tab.is-active { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .studio-panel { display:none; }
      .studio-panel.is-active { display:block; }
      .journal-block-list { display:grid; gap:.65rem; margin:.7rem 0; }
      .journal-block { padding:.75rem; border:1px solid var(--line); background:var(--paper); }
      .journal-block-head, .journal-cta-head { display:flex; align-items:center; justify-content:space-between; gap:.7rem; margin-bottom:.65rem; }
      .journal-block-type { color:var(--taupe); font-family:var(--mono); font-size:.58rem; letter-spacing:.05em; text-transform:uppercase; }
      .journal-block textarea { min-height:118px; resize:vertical; }
      .journal-block-controls { display:flex; flex-wrap:wrap; gap:.4rem; }
      .journal-block-image-note { margin:.55rem 0 0; color:var(--taupe); font-family:var(--mono); font-size:.58rem; line-height:1.45; }
      .journal-cta-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:.25rem; }
      .journal-cta-list { display:grid; gap:.45rem; margin-top:.55rem; }
      .journal-cta-item { display:grid; grid-template-columns:minmax(0,1fr) 1.1fr auto; align-items:center; gap:.5rem; padding:.55rem; border:1px solid var(--line); background:var(--paper); }
      .journal-cta-item strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.75rem; }
      .journal-cta-item input { min-width:0; padding:.52rem; font-size:.7rem; }
      .journal-editor-hint { margin:.5rem 0 0; color:var(--taupe); font-size:.7rem; line-height:1.45; }
      .studio-section { margin-bottom:2rem; padding-bottom:1.7rem; border-bottom:1px solid var(--line); }
      .studio-section h3 { margin:0 0 .35rem; font-size:1.35rem; letter-spacing:-.06em; }
      .studio-section > p { margin:.1rem 0 1rem; color:var(--ink-soft); font-size:.78rem; line-height:1.45; }
      .form-stack { display:grid; gap:.75rem; }
      .taxonomy-picker { display:grid; gap:.5rem; margin:0; padding:0; border:0; }
      .taxonomy-picker legend { padding:0; color:var(--ink); font-family:var(--mono); font-size:.58rem; letter-spacing:.055em; text-transform:uppercase; }
      .taxonomy-picker legend span { color:var(--taupe); }
      .taxonomy-options { display:flex; flex-wrap:wrap; gap:.4rem; }
      .taxonomy-options label { position:relative; display:inline-flex; }
      .taxonomy-options input { position:absolute; inline-size:1px; block-size:1px; overflow:hidden; opacity:0; pointer-events:none; }
      .taxonomy-options span { display:inline-flex; align-items:center; min-height:34px; padding:.38rem .54rem; border:1px solid var(--line); color:var(--ink-soft); background:var(--paper); font-family:var(--mono); font-size:.54rem; letter-spacing:.035em; text-transform:uppercase; cursor:pointer; transition:.16s ease; }
      .taxonomy-options label:hover span,.taxonomy-options label.is-selected span { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .taxonomy-options input:focus-visible + span { outline:2px solid var(--clay); outline-offset:2px; }
      .taxonomy-custom-add { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.45rem; max-width:430px; }
      .taxonomy-custom-add input { min-height:36px; padding:.48rem .58rem; border:1px solid var(--line); color:var(--ink); background:var(--white); font-size:.72rem; }
      .taxonomy-custom-add input:focus { border-color:var(--clay); outline:0; box-shadow:0 0 0 2px rgba(169,85,60,.14); }
      .taxonomy-custom-add .small-button { min-height:36px; }
      .look-gallery-upload-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }
      .compact-row { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }
      .editor-product-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.5rem; }
      .small-button { min-height:38px; padding:0 .7rem; border:1px solid var(--ink); color:var(--white); background:var(--ink); cursor:pointer; font-size:.7rem; font-weight:700; }
      .small-button:hover { color:var(--ink); background:var(--clay); border-color:var(--clay); }
      .small-button.muted { color:var(--ink); border-color:var(--line); background:transparent; }
      .small-button.muted:hover { color:var(--white); background:var(--ink); border-color:var(--ink); }
      .small-button.danger { color:#8e2e2e; border-color:#d3aaa3; background:#fff7f5; }
      .small-button.danger:hover { color:var(--white); border-color:#8e2e2e; background:#8e2e2e; }
      .draft-items, .studio-list { display:grid; gap:.45rem; }
      .draft-item, .studio-row { display:flex; align-items:center; justify-content:space-between; gap:.65rem; padding:.65rem; border:1px solid var(--line); background:var(--paper); }
      .draft-item p, .studio-row p { min-width:0; margin:0; font-size:.72rem; line-height:1.3; }
      .draft-item span, .studio-row span { display:block; overflow:hidden; color:var(--taupe); font-family:var(--mono); font-size:.56rem; text-overflow:ellipsis; white-space:nowrap; }
      .studio-row-actions { display:flex; gap:.35rem; flex:0 0 auto; }
      .journal-cta-item.is-look > div { display:flex; min-width:0; align-items:center; gap:.55rem; }
      .journal-cta-item.is-look p { display:grid; min-width:0; gap:.15rem; margin:0; }
      .journal-cta-thumb { width:48px; height:58px; flex:0 0 48px; overflow:hidden; border:1px solid var(--line); background:var(--ink); }
      .journal-cta-thumb .look-art,.journal-cta-thumb .look-uploaded-image,.journal-cta-thumb .look-media-collage { width:100%; height:100%; }
      .journal-cta-owner { color:var(--taupe); font-family:var(--mono); font-size:.48rem; letter-spacing:.035em; text-transform:uppercase; }
      .curator-admin-row { align-items:flex-start; }
      .curator-admin-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:.35rem; }
      .curator-admin-actions label { display:flex; align-items:center; gap:.28rem; color:var(--ink-soft); font-family:var(--mono); font-size:.58rem; }
      .curator-admin-actions input[type="number"] { width:4.5rem; min-height:38px; padding:.35rem; border:1px solid var(--line); background:var(--white); color:var(--ink); font:inherit; font-size:.7rem; }
      .curator-admin-actions input[type="checkbox"] { accent-color:var(--ink); }
      .library-search { display:grid; gap:.4rem; margin:.8rem 0; }
      .library-search input { width:100%; min-height:40px; padding:.65rem .72rem; border:1px solid var(--line); border-radius:0; background:var(--paper); color:var(--ink); font:inherit; font-size:.78rem; }
      .library-search input:focus { outline:2px solid var(--clay); outline-offset:1px; }
      .library-search-meta { min-height:1em; margin:0; color:var(--taupe); font-family:var(--mono); font-size:.57rem; letter-spacing:.02em; }
      .library-more { margin-top:.7rem; }
      .form-mode-actions { display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding:.65rem; border:1px dashed var(--line); background:rgba(185,162,141,.1); }
      .form-mode-actions .microcopy { margin:0; color:var(--ink-soft); }
      .form-error { min-height:18px; margin:0; color:#9f3831; font-size:.72rem; }
      .bulk-import-actions { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; }
      .request-admin-list { display:grid; gap:.8rem; }
      .request-admin-card { padding:.85rem; border:1px solid var(--line); background:var(--paper); }
      .request-admin-title { display:flex; align-items:flex-start; justify-content:space-between; gap:.8rem; margin-bottom:.85rem; }
      .request-admin-title h4 { margin:0; font-size:1rem; letter-spacing:-.04em; }
      .request-admin-meta { margin:.22rem 0 0; color:var(--taupe); font-family:var(--mono); font-size:.57rem; line-height:1.45; text-transform:uppercase; }
      .request-admin-brief { margin:.75rem 0; padding:.7rem; border-left:2px solid var(--clay); color:var(--ink-soft); background:var(--white); font-size:.74rem; line-height:1.5; }
      .request-admin-pills { display:flex; flex-wrap:wrap; gap:.35rem; margin:.5rem 0; }
      .request-admin-pills span { padding:.28rem .42rem; color:var(--ink-soft); border:1px solid var(--line); background:var(--white); font-family:var(--mono); font-size:.55rem; text-transform:uppercase; }
      .request-rec-controls { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; }
      .request-rec-controls .editor-product-row { grid-template-columns:minmax(0,1fr) auto; }
      .request-rec-list { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.6rem; }
      .request-rec-chip { display:flex; align-items:center; gap:.35rem; max-width:100%; padding:.4rem .48rem; border:1px solid var(--line); background:var(--white); font-size:.66rem; }
      .request-rec-chip strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
      .request-rec-chip button { padding:0; border:0; color:var(--taupe); background:transparent; cursor:pointer; font-size:.9rem; line-height:1; }
      .bulk-import-status { min-height:18px; margin:0; color:var(--ink-soft); font-size:.72rem; line-height:1.45; }
      .bulk-preview { margin-top:.1rem; border:1px solid var(--line); background:var(--paper); }
      .bulk-preview summary { padding:.7rem .75rem; cursor:pointer; color:var(--ink); font-size:.72rem; font-weight:700; }
      .bulk-preview-list { max-height:180px; margin:0; padding:.1rem .75rem .75rem 1.8rem; overflow:auto; color:var(--ink-soft); font-size:.68rem; line-height:1.55; }
      .bulk-preview-list li + li { margin-top:.2rem; }
      .bulk-preview-list .warning { color:#806149; }
      .bulk-preview-list .invalid { color:#9f3831; }
      .reset-row { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; }
      .new-series-slots { display:grid; gap:.48rem; }
      .new-series-slot { display:grid; grid-template-columns:2.5rem minmax(0,1fr); gap:.55rem; align-items:center; padding:.5rem; border:1px solid var(--line); background:var(--paper); }
      .new-series-slot-number { color:var(--clay); font-family:var(--mono); font-size:.65rem; letter-spacing:.06em; }
      .new-series-slot select { min-width:0; width:100%; }
      .new-series-status { min-height:18px; margin:.75rem 0 0; color:var(--ink-soft); font-size:.72rem; line-height:1.45; }
      .new-series-status.is-warning { color:#806149; }
      body.drawer-open { overflow:hidden; }

      .toast { position:fixed; z-index:100; right:1rem; bottom:1rem; max-width:min(400px,calc(100vw - 2rem)); padding:.85rem 1rem; opacity:0; transform:translateY(15px); pointer-events:none; color:var(--white); background:var(--ink); box-shadow:var(--shadow); font-size:.78rem; line-height:1.4; transition:.2s; }
      .catalogue-route-layer { position:fixed; z-index:145; inset:0; display:none; overflow:auto; color:var(--ink); background:var(--white); }
      .catalogue-route-layer.is-open { display:block; }
      .catalogue-route-bar { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; min-height:74px; padding:0 3.2vw; border-bottom:1px solid var(--line); background:rgba(248,246,242,.94); backdrop-filter:blur(13px); }
      .catalogue-route-brand img { display:block; width:clamp(120px,10vw,158px); height:auto; }
      .catalogue-route-back { color:var(--ink); font-family:var(--mono); font-size:.6rem; letter-spacing:.055em; text-transform:uppercase; }
      .catalogue-route-body { width:min(1440px,100%); margin:0 auto; padding:clamp(1.5rem,4vw,4.4rem) 3.2vw 5rem; }
      .catalogue-route-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(240px,.55fr); align-items:end; gap:1.2rem 4rem; padding-bottom:2.1rem; border-bottom:1px solid var(--line); }
      .catalogue-route-heading > p:first-child { grid-column:1/-1; margin:0; color:var(--clay); font-family:var(--mono); font-size:.58rem; letter-spacing:.055em; text-transform:uppercase; }
      .catalogue-route-heading h1 { margin:0; font-size:clamp(3rem,7vw,7.4rem); font-weight:900; letter-spacing:-.108em; line-height:.82; text-transform:uppercase; text-wrap:balance; }
      .catalogue-route-heading > p:last-child { max-width:32rem; margin:0; color:var(--ink-soft); font-size:clamp(.95rem,1.25vw,1.12rem); line-height:1.48; }
      .catalogue-route-tabs { display:flex; flex-wrap:wrap; gap:.42rem; padding:1rem 0 1.25rem; }
      .catalogue-route-tabs a,.catalogue-route-tabs span { padding:.42rem .58rem; border:1px solid var(--line); color:var(--ink-soft); background:var(--paper); font-family:var(--mono); font-size:.55rem; letter-spacing:.035em; text-transform:uppercase; }
      .catalogue-route-tabs a:hover,.catalogue-route-tabs a.is-active,.catalogue-route-tabs span.is-active { color:var(--white); border-color:var(--ink); background:var(--ink); }
      .catalogue-filter { display:grid; grid-template-columns:minmax(260px,1.7fr) repeat(3,minmax(150px,.7fr)); gap:.55rem; padding:0 0 1rem; }
      .catalogue-filter label { display:grid; gap:.28rem; color:var(--ink-soft); font-family:var(--mono); font-size:.52rem; letter-spacing:.045em; text-transform:uppercase; }
      .catalogue-filter input,.catalogue-filter select { width:100%; min-height:48px; padding:0 .75rem; border:1px solid var(--line); color:var(--ink); background:var(--paper); font:inherit; font-size:.66rem; }
      .catalogue-filter input { text-transform:none; }
      .catalogue-result-count { margin:0 0 .65rem; color:var(--taupe); font-family:var(--mono); font-size:.55rem; letter-spacing:.04em; text-transform:uppercase; }
      .catalogue-look-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:var(--line); }
      .catalogue-look-card { min-width:0; background:var(--white); }
      .catalogue-look-image { position:relative; width:100%; aspect-ratio:1/1; padding:0; overflow:hidden; border:0; background:var(--ink); cursor:pointer; isolation:isolate; }
      .catalogue-look-image.image-frame--square,.catalogue-look-image.image-frame--portrait { aspect-ratio:1; }
      .catalogue-look-copy { display:grid; gap:.62rem; min-height:154px; padding:1rem; }
      .catalogue-look-attribution { margin:0; color:var(--taupe); font-family:var(--mono); font-size:.53rem; letter-spacing:.045em; text-transform:uppercase; }
      .catalogue-look-title { margin:0; font-size:clamp(1.05rem,1.45vw,1.45rem); font-weight:820; letter-spacing:-.06em; line-height:.94; }
      .catalogue-look-copy > p,.catalogue-product-card p { margin:0; color:var(--taupe); font-family:var(--mono); font-size:.54rem; letter-spacing:.04em; text-transform:uppercase; }
      .catalogue-look-copy h2,.catalogue-product-card h2,.catalogue-journal-card h2 { margin:0; font-size:clamp(1.2rem,1.8vw,1.75rem); line-height:.94; letter-spacing:-.07em; }
      .catalogue-look-copy .look-like-button { justify-self:end; margin-top:auto; }
      .catalogue-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:var(--line); }
      .catalogue-product-card { min-width:0; padding:1rem; background:var(--white); }
      .catalogue-product-card > button { width:100%; padding:0; border:0; background:transparent; cursor:pointer; }
      .catalogue-product-card > div { padding-top:.8rem; }
      .catalogue-product-card span { display:block; margin-top:.5rem; font-family:var(--mono); font-size:.63rem; }
      .catalogue-journal-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--line); }
      .catalogue-journal-card { background:var(--white); }
      .catalogue-journal-card button { position:relative; display:grid; align-content:end; width:100%; min-height:360px; padding:1rem; overflow:hidden; border:0; color:var(--white); background:var(--ink); text-align:left; cursor:pointer; isolation:isolate; }
      .catalogue-journal-card button::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,transparent,rgba(0,0,0,.82)); }
      .catalogue-journal-card img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; }
      .catalogue-journal-card span { margin-bottom:.65rem; color:rgba(248,246,242,.72); font-family:var(--mono); font-size:.55rem; letter-spacing:.04em; text-transform:uppercase; }
      .catalogue-journal-card p { margin:.62rem 0 0; color:rgba(248,246,242,.85); font-size:.78rem; line-height:1.45; }
      .catalogue-empty { margin:0; padding:2rem; border:1px solid var(--line); color:var(--ink-soft); background:var(--paper); }
      body.catalogue-route-open { overflow:hidden; }
      .toast.show { opacity:1; transform:translateY(0); }

      @media (max-width: 980px) {
        .desktop-nav { gap:1rem; }
        .hero { grid-template-columns:1fr .9fr; }
        .look-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
        .popular-grid { grid-template-columns:repeat(2,1fr); }
        .mood-list { grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr); }
        .mood-button { min-width:130px; }
        .journal-grid { grid-template-columns:1fr 1fr; }
        .journal-card:first-child { grid-column:1/-1; min-height:260px; }
        .personal-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
      }
      /* Stack the hero before tablet widths so phone landscape never squeezes the title. */
      @media (max-width: 900px) {
        .hero { display:block; min-height:0; }
        .hero-copy {
          min-height:auto; justify-content:flex-start; gap:clamp(1.5rem,5vw,2.5rem);
          padding:clamp(2rem,8vw,3.25rem) 5vw clamp(2rem,6vw,2.75rem);
        }
        .hero-copy h1 {
          max-inline-size:100%; margin:.65rem 0 .9rem; font-size:clamp(2.75rem,10vw,4.75rem);
          letter-spacing:-.1em; line-height:.87;
        }
        .hero-visual { min-height:clamp(360px,70vw,520px); }
        .hero-label { top:1.25rem; left:1.25rem; }
        .hero-stamp { right:1.25rem; bottom:1.25rem; }
        .new-series-overlay { right:1.25rem; bottom:4.1rem; left:1.25rem; }
        .new-series-controls { right:1.25rem; bottom:1rem; left:1.25rem; }
      }
      @media (max-width: 760px) {
        .catalogue-route-bar { min-height:62px; padding:0 5vw; }
        .catalogue-route-brand img { width:112px; }
        .catalogue-route-body { padding:1.3rem 5vw 3.5rem; }
        .catalogue-route-heading { grid-template-columns:1fr; gap:.85rem; padding-bottom:1.35rem; }
        .catalogue-route-heading h1 { font-size:clamp(2.8rem,14vw,4.6rem); }
        .catalogue-route-heading > p:last-child { font-size:.9rem; }
        .catalogue-route-tabs { flex-wrap:nowrap; overflow:auto; margin-right:-5vw; padding-right:5vw; }
        .catalogue-route-tabs a,.catalogue-route-tabs span { white-space:nowrap; }
        .catalogue-filter { grid-template-columns:1fr 1fr; }
        .catalogue-filter label:first-child { grid-column:1/-1; }
        .catalogue-look-grid,.catalogue-product-grid,.catalogue-journal-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
        .catalogue-look-copy { min-height:0; padding:.72rem; }
        .catalogue-look-copy h2,.catalogue-product-card h2,.catalogue-journal-card h2 { font-size:1.05rem; }
        .catalogue-look-copy > p,.catalogue-product-card p { font-size:.46rem; }
        .catalogue-product-card { padding:.72rem; }
        .catalogue-journal-card button { min-height:250px; padding:.72rem; }
        .look-gallery-upload-grid { grid-template-columns:1fr; }
        .utility-bar { padding:0 5vw; }
        .utility-bar span:last-child { display:none; }
        .header-inner { height:64px; padding:0 5vw; grid-template-columns:1fr auto; }
        .brand { min-height:48px; padding:3px 0; }
        .brand-wordmark { width:clamp(118px,32vw,144px); }
        .desktop-nav, .header-actions .studio-trigger { display:none; }
        .nav-toggle { display:inline-grid; }
        .hero-figure.one { left:12%; }
        .hero-figure.two { right:8%; }
        .section { padding-left:5vw; padding-right:5vw; }
        .section-heading { display:block; }
        .section-title { font-size:clamp(2.25rem,9vw,3.75rem); line-height:.94; }
        .section-deck { margin-top:.62rem; font-size:clamp(.98rem,4.2vw,1.16rem); }
        .section-lead { max-width:38rem; margin-top:1rem; }
        .section-description { max-width:38rem; font-size:.9rem; }
        .section-heading .text-link { margin-top:.2rem; }
        .filter-toolbar { grid-template-columns:1fr 1fr; }
        .filter-toolbar .field:first-child { grid-column:1/-1; }
        .filter-row { align-items:flex-start; flex-direction:column; }
        .result-count { align-self:flex-end; }
        .look-grid { gap:.75rem; }
        .look-card-body { padding:.75rem; }
        .look-card-title { font-size:1.23rem; }
        .journal-grid { display:block; background:transparent; border:0; }
        .journal-card { min-height:245px; margin-bottom:.7rem; }
        .journal-cta-grid { grid-template-columns:1fr; }
        .request-grid, .about-section, .look-detail, .product-detail { grid-template-columns:1fr; }
        .personal-grid { grid-template-columns:1fr; }
        .personal-intro { min-height:0; }
        .about-section { gap:1rem; }
        .about-points { grid-template-columns:1fr; }
        .footer { padding-left:5vw; padding-right:5vw; }
        .footer-top { display:block; }
        .footer-top p { margin-top:1.8rem; }
        .footer-bottom { flex-direction:column; }
        .footer-links { flex-wrap:wrap; row-gap:.65rem; }
        .look-modal-shell { width:100%; height:100dvh; max-height:none; margin:0; overflow:auto; }
        .look-modal-shell #lookDetail { height:auto; }
        .look-modal-shell .look-detail { height:auto; min-height:100%; }
        .detail-visual { width:100%; aspect-ratio:1 / 1; }
        .detail-visual, .detail-visual .look-art, .detail-visual .look-uploaded-image, .detail-visual .look-media-collage { min-height:0; height:auto; }
        .detail-visual .look-art, .detail-visual .look-uploaded-image, .detail-visual .look-media-collage { aspect-ratio:1 / 1; }
        .detail-content { overflow:visible; }
        .modal-shell:not(.look-modal-shell) { width:100%; max-height:100vh; margin:0; }
        .article-editorial-shell { width:100%; min-height:100dvh; padding:0; }
        .editorial-article { display:block; min-height:0; }
        .editorial-article-head { padding:4.4rem 5vw 1.5rem; }
        .editorial-article-head h2 { font-size:clamp(2.65rem,13vw,4.35rem); }
        .article-head-actions { align-items:stretch; flex-direction:column; }
        .article-head-actions .button-outline { width:100%; }
        .editorial-article-visual, .editorial-article-visual .article-cover { min-height:0; height:auto; }
        .editorial-article-visual .article-cover { aspect-ratio:3/4; }
        .editorial-article-main { padding:1.65rem 5vw 3rem; }
        .article-related-looks { grid-template-columns:1fr; }
        .article-related-look { grid-template-columns:112px minmax(0,1fr) auto; }
        .article-related-look-visual,.article-related-look-visual .look-art,.article-related-look-visual .look-uploaded-image,.article-related-look-visual .look-media-collage { min-height:168px; }
        .product-related-look-list { grid-template-columns:1fr; }
        .modal-close { top:.5rem; }
      }
      @media (max-width: 480px) {
        .mood-list { grid-template-columns:1fr; }
        .mood-preview { height:auto; aspect-ratio:1 / 1; }
        .mood-options { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; }
        .mood-button { min-height:82px; border-right:1px solid var(--line); }
        .mood-button:nth-child(even) { border-right:0; }
        .mood-preview-overlay strong { font-size:clamp(1.8rem,9vw,2.8rem); }
        .brand-wordmark { width:112px; }
        .hero-copy h1 { font-size:clamp(2.55rem,11vw,3.4rem); letter-spacing:-.09em; line-height:.9; }
        .section-title { font-size:clamp(2.05rem,9.4vw,2.9rem); letter-spacing:-.07em; }
        .request-copy .section-title { font-size:clamp(2.15rem,10vw,3rem); }
        .hero-bottom { align-items:flex-start; flex-direction:column; }
        .hero-count { display:none; }
        .new-series-overlay { bottom:4rem; }
        .new-series-overlay strong { font-size:clamp(2rem,10vw,3.25rem); }
        .new-series-meta { max-width:260px; }
        .new-series-arrow { width:34px; height:34px; }
        .popular-grid { grid-template-columns:1fr 1fr; }
        .product-art { height:auto; }
        .look-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
        .look-card-title { margin:.45rem 0 .6rem; font-size:1.06rem; }
        .filter-toolbar { grid-template-columns:1fr; }
        .filter-toolbar .field:first-child { grid-column:auto; }
        .form-grid, .compact-row { grid-template-columns:1fr; }
        .form-grid .full { grid-column:auto; }
        .journal-cta-item { grid-template-columns:minmax(0,1fr) auto; }
        .journal-cta-item input { grid-column:1/-1; }
        .look-item { grid-template-columns:42px 1fr; }
        .item-link { grid-column:2; width:fit-content; }
        .personal-looks { grid-template-columns:1fr; }
        .personal-look-open { display:grid; grid-template-columns:110px 1fr; align-items:stretch; }
        .personal-look .look-art, .personal-look .look-uploaded-image { height:100%; min-height:100px; }
        .personal-products { grid-template-columns:1fr 1fr; }
        .request-rec-controls { grid-template-columns:1fr; }
      }
      @media (prefers-reduced-motion: reduce) {
        *, *::before, *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
      }
