/* Link Tekstil — daylight palette and readable shared public interface. */
:root {
  color-scheme: light;
  --color-primary: #24282c;
  --color-on-primary: #fff;
  --color-primary-container: #101214;
  --color-on-primary-container: #fff;
  --color-secondary: #24282c;
  --color-tertiary: #356447;
  --color-surface: #ffffff;
  --color-surface-dim: #f1f3f4;
  --color-surface-container-lowest: #fff;
  --color-surface-container-low: #f5f6f7;
  --color-surface-container: #fff;
  --color-surface-container-high: #e8ebed;
  --color-surface-container-highest: #d9dee2;
  --color-surface-bright: #fff;
  --color-on-surface: #202428;
  --color-on-surface-variant: #555e66;
  --color-outline: #606971;
  --color-outline-variant: #dce1e5;
  --color-background: #ffffff;
  --color-on-background: #202428;
  --text-xs: .875rem;
  --text-sm: 1rem;
  --text-base: 1.0625rem;
  --text-lg: 1.1875rem;
  --text-xl: 1.3125rem;
  /* Existing journal tokens use the same reading palette. */
  --dark: #ffffff;
  --dark-2: #f5f6f7;
  --dark-3: #f1f3f4;
  --dark-4: #e8ebed;
  --dark-5: #dce1e5;
  --cream: #202428;
  --cream-dim: #555e66;
  --copper: #24282c;
  --copper-light: #30373d;
  --copper-dark: #101214;
  --muted: #606971;
  --muted-light: #606971;
  --site-gutter: clamp(1.25rem, 4vw, 4.5rem);
}
html { scroll-padding-top: 110px; }
html.light-site { color-scheme: light; }
.light-site body { background: var(--color-surface); color: var(--color-on-surface); font-size: 17px; line-height: 1.65; padding-bottom: 0; }
* { box-sizing: border-box; }
::selection { background: #dce5e9; color: #202428; }
:focus-visible { outline: 2px solid #24282c; outline-offset: 5px; }
input, textarea { caret-color: #24282c; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #f5f6f7; }
::-webkit-scrollbar-thumb { background: #9aa5ae; border: 2px solid #f5f6f7; border-radius: 8px; }
[hidden] { display: none !important; }
a { text-underline-offset: .22em; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
main { padding-top: 88px; }
main :is(h1,h2,h3) { line-height: 1.15; letter-spacing: -.025em; text-wrap: balance; overflow-wrap: break-word; }
main h1 { font-size: clamp(2.6rem, 5.4vw, 5rem); }
main h2 { font-size: clamp(2rem, 3.3vw, 3.4rem); }
main h3 { font-size: clamp(1.3rem, 2vw, 1.75rem); }
main p { line-height: 1.75; }
main .font-label { letter-spacing: .06em; }
main :is(.text-xs, .text-sm) { line-height: 1.65; }
main a.font-label { font-size: .9rem; min-height: 44px; align-content: center; }
main :is(.grid,.flex) > * { min-width: 0; }
main > section { padding-left: var(--site-gutter); padding-right: var(--site-gutter); }
main > section:not(.page-hero) { padding-top: clamp(3.5rem, 7vw, 6rem); padding-bottom: clamp(3.5rem, 7vw, 6rem); }
main [class*="max-w-[1920px]"] { max-width: 1440px; }
main :is(.py-28,.py-32,.py-36,.py-40) { scroll-margin-top: 100px; }
.light-site .text-white { color: var(--color-on-surface); }
.light-site [class*="text-white/"] { color: var(--color-on-surface-variant); }
.light-site .bg-primary { background: var(--color-primary); color: #fff; }
.light-site .bg-primary:hover { background: var(--color-primary-container); color: #fff; }
.light-site :is(.buyer-card,.trust-route,.collection-preview-card,.collection-panel,.collection-board,.signal-card,.experience-panel,.support-strip,.hero-panel) {
  background: #fff; border-color: var(--color-outline-variant); backdrop-filter: none;
}
.light-site .trust-route:hover { background: #f5f6f7 !important; }
.light-site .buyer-card:hover { border-color: #aeb8bf !important; }
.proof-strip { background: #f5f6f7; border-color: #dce1e5; }
.proof-item { border-color: #dce1e5; }
.proof-item p { font-size: 1rem; }
.light-site .collection-preview-card > div:last-child { display: flex; flex-direction: column; height: auto; }
.light-site .collection-preview-card a { margin-top: auto; }
.light-site .logo-card-shell { background: #fff; box-shadow: none; border-color: #dce1e5; min-height: 170px; }
.light-site .logo-card-shell::before { display: none; }
.light-site .logo-card-shell:hover { box-shadow: none; transform: none; background: #f5f6f7; }
.logo-card-shell .brand-name { font-family: 'Manrope', sans-serif; font-size: clamp(1.1rem,2vw,1.7rem); line-height: 1.2; font-weight: 700; color: #202428; }
.light-site .logo-card-shell > span { color: #555e66; font-size: 14px; }
.light-site .cert-logo-square { background: #fff; border: 0; max-width: 145px; padding: 12px; }
.compliance-program { display: flex; gap: 2rem; }
.compliance-program h3 { margin-bottom: .5rem; }
.compliance-program p { margin: .75rem 0; }
.compliance-program a { display: inline-block; color: #24282c; text-decoration: underline; padding: 12px 0; }
.program-label { color: #24282c; font-size: 14px; }
/* Image-backed headings remain bright; dark photographic veils are removed. */
.light-site .hero-overlay { background: linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.9) 45%,rgba(255,255,255,.12)); }
.light-site .hero-overlay::before, .light-site .hero-overlay::after { display: none; }
.page-hero { height: auto; min-height: 400px; padding-top: 90px; padding-bottom: 75px; align-items: center; }
.page-hero > .relative { padding-top: 0; padding-bottom: 0; }
.page-hero > [class*="absolute"]:not(.hero-overlay):not([style*="background-image"]) { background: rgba(255,255,255,.9); }
.page-hero > div.absolute:has(picture) { background: none; }
.page-hero > div.absolute:has(picture) img { opacity: 1; }
.page-hero > div.absolute:has(picture) > div { background: rgba(255,255,255,.9) !important; }
.page-hero p { max-width: 62ch; }
.home-hero { position: relative; display: grid; grid-template-columns: 1.1fr 1fr; gap: 4vw; min-height: 690px; padding-top: 64px; padding-bottom: 64px; overflow: visible; }
.home-hero-photo { grid-column: 2; grid-row: 1; width: 100%; height: 100%; min-height: 550px; background-size: cover; background-position: center; }
.home-hero-copy { grid-column: 1; grid-row: 1; align-self: center; padding: 20px 0; }
.home-hero h1 { font-size: clamp(2.75rem,4.1vw,4.3rem); line-height: 1.12; margin-bottom: 28px; font-weight: 400; }
.home-hero h1 em { color: #24282c; }
.home-hero p { max-width: 43ch; font-size: 19px; margin-bottom: 32px; }
.home-hero-copy .flex { flex-wrap: wrap; }
.home-hero a { padding: 16px 22px; text-align: center; letter-spacing: .025em; text-transform: none; font-size: 15px; }
.home-hero-copy + * { min-width: 0; }
.company-showroom { min-height: 380px; max-height: 550px; }
.denim-product { height: 500px; object-fit: contain; background: #eef0f2; }
/* Navigation: one shared, keyboard-accessible component on every public page. */
#main-nav { position: fixed; inset: 0 0 auto; z-index: 50; background: #fff; border-bottom: 1px solid #e1e5e8; font-family: 'Manrope', sans-serif; }
.site-nav-inner { max-width: 1600px; min-height: 88px; margin: auto; padding: 0 var(--site-gutter); display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.site-logo { position: relative; display: inline-flex; flex-shrink: 0; align-items: center; }
.site-logo img { width: 240px; height: auto; filter: brightness(.16); object-fit: contain; }
.desktop-links, .nav-actions { display: flex; align-items: center; gap: 30px; }
.desktop-links a, .nav-dropdown-trigger { color: #30373d; font-size: 15px; font-weight: 500; letter-spacing: 0; text-transform: none; text-decoration: none; }
.desktop-links > a, .nav-dropdown-trigger { padding: 18px 0; min-height: 48px; }
.nav-dropdown-trigger { display: flex; align-items: center; gap: 8px; font-family: inherit; }
.nav-dropdown-trigger:hover, .nav-dropdown:hover .nav-dropdown-trigger { color: #24282c; }
.nav-dropdown-menu { background: #fff; border: 1px solid #e1e5e8; padding: 8px; min-width: 255px; box-shadow: 0 12px 24px rgba(24,32,40,.08); visibility: hidden; backdrop-filter: none; }
.nav-dropdown-menu a { padding: 12px 14px; min-height: 44px; color: #30373d; font-size: 15px; text-transform: none; letter-spacing: 0; }
.nav-dropdown-menu a:hover { background: #f5f6f7; color: #24282c; }
.nav-dropdown.is-open .nav-dropdown-menu { opacity: 1; pointer-events: auto; visibility: visible; }
.nav-actions { gap: 20px; }
.language-switch { display: flex; border: 1px solid #e1e5e8; }
.language-switch .lang-btn { width: 40px; min-height: 40px; padding: 8px; font-size: 13px; border: 0; background: transparent; color: #555e66; }
.language-switch .lang-btn.active { background: #e8edf0; color: #202428; font-weight: 700; }
.nav-contact { background: #24282c; color: #fff; font-size: 14px; padding: 12px 20px; text-decoration: none; white-space: nowrap; }
.nav-contact:hover { background: #101214; }
#menu-toggle { display: none; }
#menu-toggle, #menu-close { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; color: #202428; background: transparent; border: 0; }
#mobile-menu { position: fixed; inset: 0; z-index: 70; background: #ffffff; overflow-y: auto; padding: 20px 24px 40px; color: #202428; }
.mobile-menu-top { display: flex; justify-content: space-between; align-items: center; font-size: 15px; font-weight: 700; }
#menu-close { display: inline-flex; }
.mobile-menu-links { display: flex; flex-direction: column; margin-top: 26px; }
.mobile-menu-links a { padding: 16px 0; font-size: 18px; border-bottom: 1px solid #dce1e5; text-decoration: none; color: #202428; }
.mobile-menu-links a:hover { color: #24282c; }
.skip-link { position: fixed; left: 20px; top: -100px; z-index: 100; background: #24282c; color: white; padding: 12px 20px; }
.skip-link:focus { top: 12px; }
.site-footer { background: #f1f3f4; color: #30373d; border-top: 1px solid #dce1e5; padding: 60px var(--site-gutter) 24px; }
.footer-grid { max-width: 1440px; margin: auto; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 60px; }
.footer-grid p { margin-top: 24px; max-width: 40ch; font-size: 16px; line-height: 1.8; color: #555e66; }
.footer-grid h2 { font-family: 'Manrope',sans-serif; font-size: 16px; font-weight: 600; margin-bottom: 14px; }
.footer-grid > div > a:not(.site-logo) { display: block; padding: 8px 0; font-size: 15px; color: #555e66; text-decoration: none; }
.footer-grid a:hover { color: #24282c; text-decoration: underline; }
.footer-bottom { max-width: 1440px; display: flex; justify-content: space-between; gap: 20px; margin: 40px auto 0; padding-top: 22px; border-top: 1px solid #dce1e5; color: #606971; font-size: 14px; }
/* Locations: labels branch away from the actual points instead of colliding. */
.location-map { grid-column: span 3; position: relative; display: grid; grid-template-rows: 1fr auto; overflow: hidden; min-height: 560px; background: #f1f3f4; }
.map-viewport { position: relative; width: 100%; aspect-ratio: 45 / 28; align-self: center; }
.map-viewport > img { width: 100%; height: 100%; display: block; opacity: .65; }
.map-pin { position: absolute; width: 10px; height: 10px; background: #24282c; border-radius: 50%; z-index: 2; }
.map-pin span { position: absolute; bottom: 26px; left: 50%; transform: translateX(-50%); padding: 9px 14px; background: #fff; color: #30373d; font-size: 16px; font-weight: 600; border: 1px solid #aeb8bf; }
.map-pin::after { content: ''; position: absolute; width: 1px; height: 26px; bottom: 8px; left: 4px; background: #24282c; }
.pin-madrid { left: 40.61%; top: 30.46%; }.pin-istanbul { left: 64.62%; top: 29.75%; }
.pin-adana { left: 69.26%; top: 34.53%; }.pin-bitlis { left: 74.22%; top: 33%; }
.pin-adana span { bottom: auto; top: 72px; left: -30px; }.pin-adana::after { bottom: auto; top: 9px; height: 64px; }
.pin-bitlis span { left: 46px; bottom: -56px; }.pin-bitlis::after { top: 8px; bottom: auto; transform: rotate(-40deg); transform-origin: top; height: 45px; }
.map-key { position: relative; margin: 28px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 22px; background: #ffffff; border: 1px solid #dce1e5; font-size: 15px; }
.map-key b { font-weight: 400; color: #555e66; }
[data-page=contact] main > section:nth-child(2) .lg\:col-span-2 p { font-size: 15px; text-transform: none; letter-spacing: 0; }
[data-page=contact] form { scroll-margin-top: 120px; }
[data-page=contact] form label { font-size: 15px; text-transform: none; letter-spacing: 0; color: #30373d; }
[data-page=contact] :is(input,select,textarea) { border: 1px solid #aeb8bf; background: #fff; padding: 13px 14px; font-size: 17px; border-radius: 0; min-height: 50px; }
[data-page=contact] select { appearance: auto; background-image: none; }
[data-page=contact] :is(input,textarea)::placeholder { color: #606971; opacity: 1; }
[data-page=contact] textarea { resize: vertical; min-height: 160px; }
button:disabled { cursor: wait; opacity: .7; }
.form-error { color: #9a2d25; font-size: 16px; }
/* Current collection: image choices stay usable with touch and keyboard. */
#collections-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px 28px; }
.collection-product { background: #fff; border: 1px solid #dce1e5; padding: 0; overflow: hidden; }
.product-image { width: 100%; aspect-ratio: 4/5; object-fit: cover; display: block; background: #f1f3f4; }
.product-thumbnails { display: flex; gap: 8px; padding: 12px 16px; }
.product-thumbnails button { width: 54px; height: 64px; padding: 2px; background: #fff; border: 1px solid #dce1e5; }
.product-thumbnails button[aria-pressed=true] { border: 2px solid #24282c; }
.product-thumbnails img { height: 100%; width: 100%; object-fit: cover; }
.product-info { padding: 12px 22px 24px; }
.product-info h3 { font-size: 25px; margin-bottom: 12px; }
.product-info p { font-size: 16px; color: #555e66; margin-bottom: 18px; }
.product-info a { display: inline-flex; min-height: 44px; align-items: center; color: #24282c; font-size: 15px; font-weight: 600; text-decoration: underline; }
.collection-status { padding: 28px; background: #f5f6f7; grid-column: 1/-1; }
.light-site .hero-preview-tile { background: #f1f3f4; }
.light-site .board-chip { background: #f1f3f4; color: #555e66; font-size: 14px; }
[data-page=collections] .page-hero { min-height: auto; }
[data-page=collections] .page-hero > div[style*="background-image"], [data-page=collections] .page-hero > .hero-overlay { display: none; }
[data-page=collections] .page-hero h1 { font-size: clamp(2.5rem,4vw,4.2rem); }
[data-page=collections] .collection-panel { padding: 20px; }
[data-page=collections] .page-hero .pt-36 { padding-top: 0; }
/* Journal retains its reading layout. */
.light-site .blog-nav { background: #ffffff; }
.light-site .blog-nav a { color: #30373d; }
.light-site .blog-hero { padding-top: 145px; }
.light-site .article-body { color: #30373d; font-size: 20px; }
.light-site .article-body p { line-height: 1.85; }
.light-site [data-page=blog] section[style] p { color: #555e66 !important; }
.light-site [data-page=blog] .site-logo img { max-width: 240px; }
#cursor-glow { display: none; }
@media (max-width: 1100px) {
  .desktop-links, .nav-actions { gap: 18px; }
  .site-logo img { width: 205px; }
  .site-nav-inner { gap: 18px; }
  .home-hero { gap: 28px; }
  #collections-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 900px) {
  .desktop-links, .nav-contact { display: none; }
  #menu-toggle { display: inline-flex; }
  .site-nav-inner { min-height: 76px; }
  main { padding-top: 76px; }
  .home-hero { min-height: auto; grid-template-columns: 1fr; padding-top: 42px; gap: 28px; }
  .home-hero-copy { grid-row: 1; grid-column: 1; padding: 0; }
  .home-hero-photo { grid-row: 2; grid-column: 1; min-height: 360px; background-position: center 45%; }
  .home-hero h1 { max-width: 17ch; font-size: clamp(2.75rem,7vw,4rem); }
  .location-map { grid-column: auto; min-height: 500px; }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; gap: 25px; }
  main .md\:grid-cols-5 { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .site-logo img { width: 174px; }
  .site-nav-inner { padding-inline: 18px; gap: 12px; }
  .nav-actions { gap: 10px; }
  .language-switch .lang-btn { width: 34px; }
  .page-hero { min-height: 330px; padding-top: 50px; padding-bottom: 48px; }
  .page-hero > .relative { padding-inline: 0; }
  .home-hero-photo { min-height: 300px; }
  .home-hero h1 { font-size: 2.75rem; }
  .home-hero a { width: 100%; }
  .home-hero-copy .flex { width: 100%; }
  main .md\:grid-cols-5 { grid-template-columns: 1fr; }
  main :is(.p-12,.p-10) { padding: 24px; }
  main :is(.gap-24,.gap-16) { gap: 32px; }
  main :is(.pr-12,.pr-8,.pl-8) { padding-left: 0; padding-right: 0; }
  .proof-item { border-left: 0; border-top: 1px solid #dce1e5; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 20px; }
  .footer-grid > div:first-child { grid-column: 1/-1; }
  .footer-bottom { flex-direction: column; gap: 6px; }
  #collections-grid { grid-template-columns: 1fr; }
  .compliance-program { flex-direction: column; gap: 16px; }
  .location-map { min-height: 450px; }
  .map-pin span { font-size: 14px; padding: 6px 8px; }
  .pin-bitlis span { left: 20px; bottom: -56px; }.pin-bitlis::after { top: 5px; bottom: auto; transform: rotate(-25deg); transform-origin: top; }
  .pin-adana span { top: 72px; }
  .map-key { margin: 16px; padding: 16px; gap: 10px; font-size: 14px; }
  .denim-product { height: 420px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
/* Legacy photographic gradients are veils on a light page, never dark sections. */
.light-site main [class*="bg-[linear-gradient"] { background: rgba(255,255,255,.92); }
.light-site main [class*="bg-black/"] { background: #f5f6f7; }
.light-site main > section:not(.home-hero) > .absolute[style*="background:transparent"] { background: linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.86) 55%,rgba(255,255,255,.25)) !important; }
#main-nav a[aria-current=page] { color: #24282c; text-decoration: underline; text-decoration-thickness: 2px; }
#main-nav .nav-contact[aria-current=page] { color: #fff; }

.light-site .border-outline-variant { border-color: var(--color-outline-variant); }

/* Preserve the original multicolor emblem above the dark wordmark. */
.site-logo img.logo-emblem { position: absolute; inset: 0; width: 100%; height: 100%; filter: none; clip-path: inset(0 89.3% 0 0); pointer-events: none; }
.site-footer .site-logo img:not(.logo-emblem) { width: 270px; }
/* A compact identity gallery, with full logos and no descriptive paragraphs. */
[data-page="certifications"] main { background: #fff; }
.certification-heading { max-width: 1280px; margin: 0 auto; padding: 72px 0 44px; border-bottom: 1px solid #dce1e5; }
.certification-heading h1 { font-family: 'Manrope', sans-serif; font-size: clamp(2.4rem, 4.6vw, 4.5rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.12; margin: 0; }
[data-page="certifications"] main > .certification-showcase { padding-top: 0; padding-bottom: 80px; }
.certification-grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.certification-item { margin: 0; padding: 44px 24px 38px; display: flex; flex-direction: column; align-items: center; gap: 26px; border-bottom: 1px solid #dce1e5; }
.certification-logo { width: 100%; height: 170px; display: flex; align-items: center; justify-content: center; }
.certification-logo img { display: block; max-width: 240px; width: 100%; height: 100%; object-fit: contain; filter: none; opacity: 1; }
.certification-logo img.logo-seal { max-width: 160px; }
.certification-logo img.logo-oeko { max-width: 145px; }
.certification-logo img.logo-sedex { max-width: 230px; height: 105px; }
.certification-logo img.logo-slcp { max-width: 280px; height: 110px; }
.certification-item figcaption { font-family: 'Manrope', sans-serif; font-weight: 600; font-size: 19px; line-height: 1.4; letter-spacing: -.015em; color: #202428; text-align: center; }
@media (max-width: 900px) {
 .certification-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .certification-heading { padding-top: 50px; padding-bottom: 32px; }
}
@media (max-width: 600px) {
 .certification-item { padding: 28px 10px; gap: 18px; }
 .certification-logo { height: 115px; }
 .certification-logo img { max-width: 130px; }
 .certification-logo img.logo-seal { max-width: 105px; }
 .certification-logo img.logo-oeko { max-width: 90px; }
 .certification-logo img.logo-sedex { max-width: 125px; height: 75px; }
 .certification-logo img.logo-slcp { max-width: 145px; height: 80px; }
 .certification-item figcaption { font-size: 15px; }
 .site-footer .site-logo img:not(.logo-emblem) { width: 240px; }
 [data-page="certifications"] main > .certification-showcase { padding-bottom: 48px; }
}
