@font-face {
    font-family: Cantarell;
    src: url('../fonts/Cantarell-Regular.otf') format('opentype');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}
:root { color-scheme: dark; --bg: #000; --text: #f2f0ee; --muted: #a7a4a2; --line: #303030; --warm: #c9a99a; }
* { box-sizing: border-box; }
html { background: var(--bg); }
body { display: flex; flex-direction: column; min-width: 280px; min-height: 100vh; min-height: 100svh; margin: 0; background: var(--bg); color: var(--text); font-family: Cantarell, Arial, sans-serif; }
button { font: inherit; }
a { color: inherit; }
img { max-width: 100%; }
.site-header { position: sticky; z-index: 20; top: 0; border-bottom: 1px solid #ffffff1c; background: #000e; backdrop-filter: blur(16px); }
.header-inner { display: flex; align-items: center; justify-content: space-between; gap: 38px; width: min(100% - 52px, 1380px); min-height: 84px; margin: auto; }
.site-logo { position: relative; display: block; flex: none; width: clamp(190px, 19vw, 270px); line-height: 0; }
.site-logo img { display: block; width: 100%; height: auto; }
.site-logo::after { position: absolute; inset: 0; content: ''; pointer-events: none; background: linear-gradient(135deg, transparent 38%, #d6e1f5ad 45%, #fff 50%, #d6e1f5ad 55%, transparent 62%); background-size: 220% 220%; background-position: 100% 100%; -webkit-mask: url('../morfarin-shine.svg') center / contain no-repeat; mask: url('../morfarin-shine.svg') center / contain no-repeat; animation: logo-shimmer 7s linear infinite; }
@keyframes logo-shimmer { 0% { background-position: 100% 100%; } 58%, 100% { background-position: 0 0; } }
.site-nav { display: flex; align-items: center; gap: clamp(18px, 2.8vw, 42px); }
.site-nav a { position: relative; padding: 9px 0; color: #bcb8b5; font-size: 14px; text-decoration: none; transition: color .2s; white-space: nowrap; }
.site-nav a::after { position: absolute; right: 0; bottom: 2px; left: 0; height: 1px; content: ''; background: var(--warm); transform: scaleX(0); transform-origin: left; transition: transform .2s; }
.site-nav a:hover, .site-nav a:focus-visible, .site-nav a[aria-current='page'] { color: #fff; }
.site-nav a:hover::after, .site-nav a:focus-visible::after, .site-nav a[aria-current='page']::after { transform: scaleX(1); }
.language-switch { display: flex; align-items: center; gap: 7px; flex: none; margin: 0; }
.language-globe { flex: none; color: #c9a99a; }
.language-switch select { min-width: 78px; padding: 8px 10px; border: 1px solid #574c47; border-radius: 0; background: #090909; color: #eee; cursor: pointer; font: 12px Cantarell, Arial, sans-serif; letter-spacing: .08em; }
.language-switch select:focus-visible { outline: 2px solid var(--warm); outline-offset: 2px; }
.language-submit, .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; }
.page-shell { width: min(100% - 52px, 1280px); margin: 0 auto; }
.page-hero { padding: clamp(54px, 8vw, 120px) 0 clamp(50px, 7vw, 100px); }
.page-hero.compact { padding-bottom: clamp(28px, 4vw, 58px); }
.hero-split { display: grid; grid-template-columns: 1fr .87fr; align-items: center; gap: clamp(42px, 8vw, 130px); }
.eyebrow { margin: 0 0 22px; color: var(--warm); font-size: 12px; letter-spacing: .23em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 880px; margin-bottom: 24px; font-size: clamp(48px, 7.4vw, 106px); font-weight: 400; letter-spacing: -.065em; line-height: .99; }
h2 { margin-bottom: 18px; font-size: clamp(34px, 4vw, 58px); font-weight: 400; letter-spacing: -.045em; line-height: 1.08; }
h3 { font-size: clamp(19px, 2vw, 27px); font-weight: 400; letter-spacing: -.02em; }
.lede { max-width: 620px; margin-bottom: 0; color: #c3c0bd; font-size: clamp(17px, 1.7vw, 22px); line-height: 1.6; }
.supporting { max-width: 680px; color: var(--muted); font-size: 16px; line-height: 1.75; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 12px; padding: 12px 22px; border: 1px solid #e7e3df; background: #e7e3df; color: #111; font-size: 14px; text-decoration: none; transition: background .2s, color .2s, border-color .2s; }
.button:hover, .button:focus-visible { background: #fff; border-color: #fff; }
.button.ghost { border-color: #777; background: transparent; color: #eee; }
.button.ghost:hover, .button.ghost:focus-visible { border-color: #fff; background: #ffffff13; }
.hero-image { margin: 0; overflow: hidden; background: #000; }
.hero-image img { display: block; width: 100%; height: 100%; max-height: 680px; object-fit: cover; }
.hero-image.portrait img { object-position: center 26%; }
.about-facts { display: flex; flex-wrap: wrap; gap: 26px 52px; max-width: 620px; margin-top: 32px; padding-top: 22px; border-top: 1px solid #443e3b; }
.about-facts span { display: block; color: var(--warm); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.about-facts strong { display: block; margin-top: 8px; color: #f2f0ee; font-size: clamp(20px, 2vw, 25px); font-weight: 400; }
.contact-hero { grid-template-columns: 1fr .92fr; padding-top: clamp(48px, 6vw, 88px); padding-bottom: clamp(48px, 6vw, 88px); }
.contact-policy { max-width: 620px; margin-top: 32px; padding-top: 26px; border-top: 1px solid #443e3b; }
.contact-policy .eyebrow { margin-bottom: 15px; }
.contact-policy p:last-child { margin-bottom: 0; color: #c8c4c1; font-size: clamp(16px, 1.45vw, 18px); line-height: 1.68; }
.contact-policy strong { color: #fff; font-weight: 600; }
.contact-photo { background: #000; }
.contact-photo img { height: auto; max-height: 760px; object-fit: contain; }
.contact-telegram { gap: 10px; }
.contact-handle { font-size: 17px; font-weight: 600; }
.contact-alternative { margin: 18px 0 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.contact-alternative a { color: #eee; text-decoration-color: #8d8580; text-underline-offset: 4px; white-space: nowrap; }
.contact-alternative a:hover, .contact-alternative a:focus-visible { text-decoration-color: #fff; }
.payment-hero { grid-template-columns: 1fr .9fr; padding-top: clamp(48px, 6vw, 88px); padding-bottom: clamp(48px, 6vw, 88px); }
.payment-methods { max-width: 620px; margin-top: 30px; border-top: 1px solid #443e3b; }
.payment-methods > div { display: grid; grid-template-columns: 32px 1fr; gap: 16px; padding: 18px 0; border-bottom: 1px solid #302b29; }
.payment-methods h3 { margin: 0 0 4px; font-size: 20px; }
.payment-methods p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.5; }
.payment-number { padding-top: 4px; color: var(--warm); font-size: 12px; letter-spacing: .1em; }
.payment-summary { max-width: 620px; margin: 22px 0 0; padding-left: 16px; border-left: 1px solid var(--warm); color: #ded9d5; font-size: 15px; line-height: 1.6; }
.payment-photo { background: #000; }
.payment-photo img { height: auto; max-height: 780px; object-fit: contain; }
.section { padding: clamp(58px, 7vw, 96px) 0; border-top: 1px solid var(--line); }
.gallery-section { padding-top: clamp(30px, 4vw, 54px); }
.section-head { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 28px; margin-bottom: 32px; }
.section-head h2 { margin-bottom: 0; }
.image-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.image-card { display: block; min-width: 0; color: inherit; text-decoration: none; }
.image-card img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; background: #151515; transition: opacity .25s; }
.image-card:hover img, .image-card:focus-visible img { opacity: .82; }
.image-card-caption { display: flex; justify-content: space-between; gap: 12px; padding: 12px 2px; color: #bcb9b6; font-size: 13px; }
.image-card-caption span:last-child { color: #787574; }
.gallery-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.gallery-grid .image-card:nth-child(4n + 2) { transform: translateY(28px); }
.gallery-grid .image-card:nth-child(4n + 4) { transform: translateY(28px); }
.quiet-panel { display: grid; grid-template-columns: .7fr 1fr; gap: 50px; padding: clamp(34px, 5vw, 70px); border: 1px solid #34302e; background: linear-gradient(120deg, #161210, #0a0909 70%); }
.quiet-panel p:last-child { margin-bottom: 0; }
.note { display: inline-block; padding: 8px 12px; border: 1px solid #6b5951; color: #d0ada0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.details-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.payment-terms-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.detail-card { min-height: 210px; padding: 28px; border: 1px solid var(--line); background: #0d0c0c; }
.detail-card .number { display: block; margin-bottom: 42px; color: var(--warm); font-size: 13px; letter-spacing: .16em; }
.detail-card p { margin-bottom: 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.site-footer { margin-top: auto; border-top: 1px solid var(--line); }
.footer-inner { display: flex; justify-content: space-between; align-items: center; gap: 20px; width: min(100% - 52px, 1380px); margin: auto; padding: 24px 0; color: #9f9b98; font-size: 12px; letter-spacing: .12em; }
.footer-inner small { margin-left: 8px; color: #666; font-size: 12px; letter-spacing: 0; }
.lightbox { width: min(95vw, 1100px); max-height: 95vh; padding: 14px; border: 1px solid #444; background: #0b0b0b; color: #fff; }
.lightbox::backdrop { background: #000e; }
.lightbox-close { display: block; margin: 0 0 12px auto; padding: 5px 9px; border: 1px solid #555; background: transparent; color: #fff; cursor: pointer; }
.lightbox img { display: block; max-width: 100%; max-height: calc(95vh - 70px); margin: auto; object-fit: contain; }
@media (max-width: 1100px) {
    .header-inner { flex-wrap: wrap; min-height: 72px; gap: 14px 16px; padding: 16px 0; }
    .site-logo { order: 1; }
    .site-header .language-switch { order: 2; margin-left: auto; }
    .site-nav { order: 3; flex: 0 0 100%; display: flex; flex-wrap: wrap; align-items: stretch; gap: 8px; }
    .site-nav a { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 14px; border: 1px solid #51433b; border-radius: 4px; background: linear-gradient(135deg, #1c1511, #0c0b0a); color: #e1d3c9; font-size: 13px; letter-spacing: .02em; text-align: center; }
    .site-nav a::after { display: none; }
    .site-nav a:hover { border-color: #bd9983; background: #2a1f18; }
    .site-nav a[aria-current='page'] { border-color: #e0c3af; background: linear-gradient(115deg, #b99b85, #efdbcb); box-shadow: 0 2px 16px #b7906b20; color: #20140e; }
    .site-nav a:focus-visible { outline: 2px solid #e0c3af; outline-offset: 3px; }
}
@media (max-width: 900px) {
    .hero-split { grid-template-columns: 1fr; }
    .hero-image { max-width: 600px; }
}
@media (max-width: 650px) {
    .header-inner, .footer-inner, .page-shell { width: min(100% - 32px, 1280px); }
    .site-logo { width: 186px; }
    .page-hero { padding-top: 55px; }
    .image-grid, .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
    .image-grid .image-card:first-child { grid-column: span 2; }
    .gallery-grid .image-card:nth-child(n) { transform: none; }
    .quiet-panel, .details-grid { grid-template-columns: 1fr; }
    .detail-card { min-height: 0; }
    .detail-card .number { margin-bottom: 26px; }
    .contact-policy { margin-top: 26px; padding-top: 22px; }
    .contact-photo { width: 100%; }
    .footer-inner { flex-wrap: wrap; }
}
@media (max-width: 480px) {
    .site-logo { width: 150px; }
}
@media (max-width: 360px) {
    .header-inner { gap: 6px; }
    .site-logo { width: 120px; }
}
@media (prefers-reduced-motion: reduce) {
    .site-logo::after { animation: none; background: none; }
    .image-card img, .site-nav a::after { transition: none; }
}
.gallery-hero{padding-bottom:clamp(38px,5vw,68px)}
.gallery-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:.12em .3em;max-width:none}
.gallery-total{color:var(--warm);white-space:nowrap}
.gallery-breakdown{display:block;margin-top:7px;color:#c9a99a;font-variant-numeric:tabular-nums}
.gallery-social-intro{margin:30px 0 12px;color:var(--muted);font-size:14px}
.gallery-socials{display:flex;flex-wrap:wrap;gap:9px}
.gallery-socials a{display:inline-flex;align-items:center;gap:18px;padding:11px 15px;border:1px solid #514642;color:#e5d9d3;font-size:13px;text-decoration:none;transition:background .2s,border-color .2s}
.gallery-socials a:hover,.gallery-socials a:focus-visible{background:#251d1a;border-color:#b49a8c}
.gallery-media-card{padding:0;background:none;border:0;text-align:left;cursor:pointer;font:inherit}
.gallery-media-preview{position:relative;display:block}
.gallery-play-icon{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:clamp(54px,5.5vw,76px);aspect-ratio:1;border:2px solid #fff;background:#000b;border-radius:50%;box-shadow:0 3px 24px #000b;transform:translate(-50%,-50%);transition:background .2s,transform .2s}
.gallery-play-icon::after{content:'';width:0;height:0;margin-left:5px;border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:17px solid #fff}
.gallery-media-card:hover .gallery-play-icon,.gallery-media-card:focus-visible .gallery-play-icon{background:#000e;transform:translate(-50%,-50%) scale(1.08)}
.gallery-media-card:focus-visible{outline:2px solid var(--warm);outline-offset:4px}
.gallery-media-card .image-card-caption span:last-child{color:#c5a898}
.gallery-load-more{display:block;margin:68px auto 0;padding:13px 26px;border:1px solid #69584f;background:#100e0d;color:#eee;cursor:pointer;font:inherit}
.gallery-load-more[hidden]{display:none}
.gallery-viewer{width:min(96vw,1100px);max-height:96vh}
.gallery-viewer-content{display:flex;align-items:center;justify-content:center}
.gallery-viewer-content img,.gallery-viewer-content video{display:block;max-width:100%;max-height:calc(96vh - 76px);margin:auto;object-fit:contain}
@media(prefers-reduced-motion:reduce){.gallery-play-icon{transition:none}}
/* Shop showcase */
.shop-showcase{padding-bottom:100px}
.shop-intro{padding:clamp(66px,8vw,120px) 0 52px}
.shop-intro h1{max-width:1100px;font-size:clamp(52px,8vw,112px)}
.shop-intro .lede{max-width:760px}
.shop-price-note{max-width:670px;margin:24px 0 0;padding-left:18px;border-left:1px solid var(--warm);color:#a99d98;font-size:14px;line-height:1.65}
.shop-categories{display:flex;flex-wrap:wrap;gap:8px;padding:22px 0;margin-bottom:38px;border-top:1px solid #3a302d;border-bottom:1px solid #3a302d}
.shop-categories button{padding:11px 17px;border:1px solid #554640;background:transparent;color:#bcb2ad;cursor:pointer;font-size:13px;transition:background .2s,color .2s}
.shop-categories button:hover,.shop-categories button:focus-visible{color:#fff;border-color:#a78b7d}
.shop-categories button[aria-pressed="true"]{border-color:#d6bfb2;background:#d6bfb2;color:#160e0b}
.shop-products{display:grid;gap:48px}
.shop-product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(30px,5vw,84px);align-items:center;padding:0 0 48px;border-bottom:1px solid #302925}
.shop-product[hidden]{display:none}
.shop-product:nth-child(even) .shop-product-media{order:2}
.shop-product-media{min-width:0}
.shop-main-preview{position:relative;display:block;width:100%;padding:0;border:0;background:#0d0b0b;cursor:zoom-in}
.shop-main-preview img{display:block;width:100%;height:min(68vw,680px);max-height:680px;min-height:340px;object-fit:contain;background:#0d0b0b}
.shop-main-preview:focus-visible,.shop-thumb:focus-visible{outline:2px solid var(--warm);outline-offset:3px}
.shop-main-expand{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:35px;height:35px;border:1px solid #fff8;background:#0009;color:#fff;font-size:20px}
.shop-main-play{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:76px;height:76px;border:2px solid #fff;border-radius:50%;background:#000a;box-shadow:0 5px 22px #0009;color:#fff;font-size:27px;padding-left:5px;transform:translate(-50%,-50%)}
.shop-main-play.is-hidden{display:none}
.shop-media-counts{display:flex;flex-wrap:wrap;gap:10px 20px;margin:14px 0 0;color:#c9b6aa;font-size:13px;line-height:1.5}
.shop-media-counts>span{display:inline-flex;align-items:center;gap:7px}
.shop-media-counts svg{flex:none;color:#b99a88}
.shop-media-counts strong{color:#f2f0ee;font-weight:700;font-variant-numeric:tabular-nums}
.shop-thumbnails{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:12px 1px 5px;scrollbar-color:#746257 #111}
.shop-thumb{position:relative;flex:0 0 clamp(64px,8vw,96px);width:clamp(64px,8vw,96px);height:clamp(64px,8vw,96px);padding:0;border:1px solid #443a35;background:#111;cursor:pointer;opacity:.65}
.shop-thumb.active,.shop-thumb:hover{border-color:#e0c3b2;opacity:1}
.shop-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.shop-thumb span{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#000b;color:#fff;transform:translate(-50%,-50%)}
.shop-product-copy{min-width:0}
.shop-product-meta{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px;color:#bf9f8f;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.shop-product-copy h2{max-width:600px;margin:0 0 14px;font-size:clamp(34px,4.6vw,70px);overflow-wrap:anywhere}
.shop-commission-label{display:inline-block;margin:0 0 24px;padding:7px 10px;border:1px solid #765f52;color:#d8b8a8;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.shop-product-description{max-width:580px;margin:0 0 30px;color:#c7bfbb;font-size:clamp(15px,1.4vw,18px);line-height:1.7;white-space:normal}
.shop-prices{padding:21px 0;border-top:1px solid #3b302c;border-bottom:1px solid #3b302c}
.shop-prices>p{margin:0 0 18px;color:#bda595;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.shop-prices dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.shop-prices dl div{min-width:0}.shop-prices dt{margin-bottom:6px;color:#8b807a;font-size:11px;letter-spacing:.12em}.shop-prices dd{margin:0;color:#eee;font-size:clamp(14px,1.4vw,19px);white-space:nowrap}
.shop-contact-link{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;min-width:210px;margin-top:28px;padding:14px 18px;border:1px solid #d8c5b9;background:#d8c5b9;color:#17100d;text-decoration:none;font-size:14px;transition:background .2s}
.shop-contact-link:hover{background:#f6e8df}
.shop-empty{padding:clamp(60px,8vw,130px) 20px;border:1px solid #392f2b;color:#b5aaa5;text-align:center;font-size:clamp(16px,2vw,23px)}
.shop-empty.is-hidden{display:none}
.shop-viewer{width:min(96vw,1280px);max-height:96vh;padding:0;background:#090909}
.shop-viewer-header,.shop-viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px;color:#ddd;font-size:13px}
.shop-viewer-header{border-bottom:1px solid #39302c}.shop-viewer-controls{border-top:1px solid #39302c}
.shop-viewer-header button,.shop-viewer-controls button{padding:7px 10px;border:1px solid #594b43;background:transparent;color:#eee;cursor:pointer}
.shop-viewer-controls button:disabled{opacity:.4;cursor:default}
.shop-viewer-media{display:grid;place-items:center;min-height:150px;padding:9px}
.shop-viewer-media img,.shop-viewer-media video{display:block;max-width:100%;max-height:calc(96vh - 120px);object-fit:contain}
@media(max-width:900px){.shop-product{grid-template-columns:1fr;gap:24px}.shop-product:nth-child(even) .shop-product-media{order:0}.shop-main-preview img{height:min(80vw,620px)}}
@media(max-width:650px){
    .shop-showcase{padding-bottom:60px}
    .shop-intro{padding:62px 0 36px}
    .shop-categories{gap:6px;margin-bottom:27px}
    .shop-categories button{padding:9px 12px;font-size:12px}
    .shop-products{gap:34px}
    .shop-product{padding-bottom:34px}
    .shop-main-preview img{height:min(90vw,510px);min-height:260px}
    .shop-product-copy h2{font-size:clamp(34px,9vw,54px)}
    .shop-prices{padding:18px;border:1px solid #80675a;background:#15100e}
    .shop-prices>p{margin-bottom:10px;color:#dec3b2}
    .shop-prices dl{grid-template-columns:1fr;gap:0}
    .shop-prices dl div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid #49382f}
    .shop-prices dl div:last-child{padding-bottom:0;border-bottom:0}
    .shop-prices dt{margin:0;color:#d0b7a7;font-size:12px}
    .shop-prices dd{color:#fff;font-size:clamp(22px,6.4vw,30px);font-weight:700;line-height:1.2;letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap}
    .shop-main-play{width:62px;height:62px;font-size:22px}
}

/* Crawlable gallery pagination, with room for the staggered last image row. */
.gallery-pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:8px; margin:64px auto 0; }
.gallery-pagination a, .pagination-current { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:10px 14px; border:1px solid #514642; color:#e5d9d3; text-decoration:none; font-variant-numeric:tabular-nums; }
.gallery-pagination a:hover { border-color:#c9a99a; background:#251d1a; }
.gallery-pagination a:focus-visible { outline:2px solid #c9a99a; outline-offset:3px; }
.pagination-current { background:#e0c7b5; border-color:#e0c7b5; color:#21150f; }
.pagination-gap { color:#8e827a; padding:0 3px; }
@media (max-width:600px) { .gallery-pagination { margin-top:28px; gap:6px; } .gallery-pagination a, .pagination-current { padding:9px 11px; } }

.legal-links { display:flex; flex-wrap:wrap; gap:10px 24px; letter-spacing:0; font-size:13px; line-height:1.5; }
.legal-links a { color:#b6a89e; text-decoration:none; }
.legal-links a:hover, .legal-links a[aria-current="page"] { color:#ead4c3; text-decoration:underline; }
.legal-links a:focus-visible { outline:2px solid #c9a99a; outline-offset:4px; }
.legal-copy { max-width:780px; padding-bottom:clamp(44px,7vw,86px); }
.legal-copy p { margin:0 0 24px; color:var(--muted); font-size:clamp(16px,1.5vw,18px); line-height:1.8; overflow-wrap:anywhere; }
.legal-copy p:first-child { color:#e7dfd9; font-size:clamp(18px,1.7vw,21px); }
.legal-copy .button { margin-top:8px; }

.brand-credit { display:inline-flex; flex-wrap:wrap; align-items:baseline; gap:5px 8px; line-height:1.6; letter-spacing:.08em; }
.brand-credit .brand-author { color:#a49a94; letter-spacing:0; }
.brand-credit .brand-country { color:#c9b8aa; letter-spacing:0; white-space:nowrap; }

.gallery-filters { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 28px; }
.gallery-filters a { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:46px; padding:10px 16px; border:1px solid #514642; color:#d4c5bc; background:#100e0d; text-decoration:none; font-size:14px; line-height:1.4; }
.gallery-filters svg { flex:none; }
.gallery-filters a:hover { border-color:#b49a8c; background:#251d1a; }
.gallery-filters a[aria-current="page"] { background:#e0c7b5; border-color:#e0c7b5; color:#21150f; }
.gallery-filter-count { border-radius:20px; padding:2px 7px; background:#ffffff0d; font-size:12px; font-variant-numeric:tabular-nums; }
.gallery-filters a[aria-current="page"] .gallery-filter-count { background:#21150f14; }
.gallery-filters a:focus-visible { outline:2px solid #c9a99a; outline-offset:3px; }
@media (max-width:450px) { .gallery-filters { gap:6px; } .gallery-filters a { flex:1; padding:10px 8px; gap:6px; } }
