/* =========================================================
   Мария Иванова — ръчна керамика
   Ателие в Стария Пловдив
   ========================================================= */

/* ---------- ТОКЕНИ ---------- */
:root{
  --paper:#F4EDE3;
  --paper-2:#EFE6D9;
  --bone:#FBF7F1;
  --ink:#191410;
  --ink-soft:#3B322B;
  --mute:#7E7166;
  --clay:#AE5533;
  --clay-soft:#C97A56;
  --glaze:#6C8AA2;
  --sand:#D9C9B3;
  --line:rgba(25,20,16,.14);
  --dark:#1A1411;
  --dark-2:#221A15;
  --viber:#7360F2;

  --font-serif:"Cormorant Garamond", "Iowan Old Style", Georgia, serif;
  --font-sans:"Manrope", -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-script:"Pumpkin", "Marck Script", "Segoe Script", cursive;

  --pad:clamp(20px, 5vw, 68px);
  --sec:clamp(84px, 11vw, 172px);
  --ease:cubic-bezier(.16,1,.3,1);

  /* органични форми, изрязани като с четка */
  --m1:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20preserveAspectRatio='none'><path%20d='M98.2%2050.0C98.06%2052.78%2097.59%2055.6%2096.88%2058.27C96.17%2060.93%2095.16%2063.57%2093.93%2065.99C92.7%2068.41%2091.19%2070.74%2089.5%2072.81C87.81%2074.87%2085.86%2076.77%2083.81%2078.37C81.76%2079.97%2079.47%2081.32%2077.2%2082.42C74.93%2083.52%2072.51%2084.3%2070.18%2084.96C67.86%2085.61%2065.5%2085.98%2063.23%2086.35C60.96%2086.73%2058.77%2086.93%2056.56%2087.22C54.36%2087.52%2052.25%2087.8%2050.0%2088.13C47.75%2088.46%2045.51%2088.89%2043.09%2089.21C40.66%2089.52%2038.1%2089.94%2035.44%2090.0C32.78%2090.07%2029.9%2090.09%2027.13%2089.61C24.37%2089.13%2021.42%2088.37%2018.85%2087.12C16.28%2085.88%2013.72%2084.16%2011.7%2082.14C9.67%2080.12%207.93%2077.58%206.7%2075.0C5.47%2072.41%204.73%2069.44%204.33%2066.62C3.94%2063.8%204.07%2060.83%204.31%2058.06C4.56%2055.29%205.21%2052.58%205.81%2050.0C6.42%2047.42%207.21%2044.99%207.96%2042.59C8.7%2040.18%209.46%2037.88%2010.3%2035.55C11.14%2033.23%2011.95%2030.9%2012.99%2028.63C14.04%2026.37%2015.15%2024.05%2016.57%2021.95C17.98%2019.85%2019.62%2017.76%2021.49%2016.03C23.37%2014.3%2025.55%2012.73%2027.81%2011.57C30.08%2010.4%2032.61%209.56%2035.09%209.03C37.56%208.49%2040.17%208.35%2042.66%208.34C45.14%208.34%2047.61%208.66%2050.0%208.99C52.39%209.32%2054.69%209.82%2057.0%2010.31C59.31%2010.8%2061.55%2011.31%2063.86%2011.91C66.18%2012.5%2068.51%2013.08%2070.86%2013.87C73.22%2014.66%2075.66%2015.5%2077.99%2016.64C80.32%2017.79%2082.72%2019.12%2084.85%2020.75C86.99%2022.39%2089.08%2024.31%2090.8%2026.44C92.53%2028.57%2094.06%2031.02%2095.2%2033.55C96.35%2036.07%2097.19%2038.85%2097.69%2041.59C98.19%2044.33%2098.33%2047.22%2098.2%2050.0Z'%20fill='%23fff'/></svg>");
  --m2:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20preserveAspectRatio='none'><path%20d='M95.05%2050.0C94.9%2052.63%2094.63%2055.2%2094.3%2057.81C93.97%2060.42%2093.63%2063.04%2093.09%2065.68C92.54%2068.33%2091.96%2071.06%2091.02%2073.68C90.08%2076.3%2088.96%2079.02%2087.44%2081.41C85.92%2083.8%2084.05%2086.17%2081.91%2088.02C79.76%2089.88%2077.19%2091.49%2074.57%2092.56C71.95%2093.64%2069.0%2094.25%2066.19%2094.48C63.39%2094.72%2060.45%2094.41%2057.75%2093.96C55.05%2093.51%2052.44%2092.62%2050.0%2091.8C47.56%2090.98%2045.33%2089.94%2043.12%2089.04C40.91%2088.15%2038.87%2087.26%2036.74%2086.42C34.61%2085.59%2032.53%2084.88%2030.34%2084.05C28.16%2083.22%2025.88%2082.47%2023.62%2081.44C21.35%2080.41%2018.97%2079.32%2016.76%2077.89C14.55%2076.47%2012.29%2074.81%2010.36%2072.89C8.43%2070.96%206.6%2068.72%205.16%2066.32C3.71%2063.93%202.52%2061.24%201.7%2058.52C0.88%2055.8%200.39%2052.87%200.23%2050.0C0.08%2047.13%200.27%2044.16%200.76%2041.32C1.25%2038.48%202.07%2035.61%203.17%2032.96C4.27%2030.3%205.7%2027.7%207.36%2025.38C9.02%2023.06%2011.0%2020.89%2013.12%2019.06C15.25%2017.23%2017.67%2015.64%2020.12%2014.39C22.56%2013.13%2025.21%2012.21%2027.78%2011.52C30.35%2010.83%2033.0%2010.49%2035.53%2010.23C38.05%209.97%2040.53%209.99%2042.94%209.96C45.35%209.94%2047.65%2010.03%2050.0%2010.08C52.35%2010.12%2054.62%2010.14%2057.01%2010.23C59.4%2010.33%2061.83%2010.35%2064.33%2010.62C66.83%2010.89%2069.47%2011.19%2072.01%2011.87C74.56%2012.55%2077.23%2013.44%2079.61%2014.72C81.99%2016.0%2084.35%2017.64%2086.29%2019.55C88.23%2021.46%2089.95%2023.78%2091.26%2026.18C92.57%2028.57%2093.5%2031.29%2094.15%2033.93C94.81%2036.57%2095.05%2039.35%2095.2%2042.03C95.35%2044.71%2095.2%2047.37%2095.05%2050.0Z'%20fill='%23fff'/></svg>");
  --m3:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20preserveAspectRatio='none'><path%20d='M89.79%2050.0C89.22%2052.33%2088.6%2054.51%2087.96%2056.69C87.33%2058.88%2086.72%2060.98%2085.98%2063.1C85.24%2065.21%2084.49%2067.31%2083.54%2069.37C82.59%2071.42%2081.54%2073.48%2080.28%2075.41C79.02%2077.34%2077.58%2079.23%2075.97%2080.95C74.37%2082.68%2072.56%2084.3%2070.64%2085.75C68.72%2087.2%2066.62%2088.51%2064.43%2089.65C62.24%2090.79%2059.91%2091.79%2057.51%2092.58C55.1%2093.37%2052.57%2094.02%2050.0%2094.38C47.43%2094.75%2044.74%2094.93%2042.11%2094.77C39.47%2094.61%2036.74%2094.19%2034.2%2093.42C31.65%2092.65%2029.1%2091.53%2026.82%2090.14C24.55%2088.75%2022.4%2086.99%2020.56%2085.09C18.71%2083.19%2017.11%2080.97%2015.74%2078.75C14.37%2076.52%2013.3%2074.11%2012.35%2071.74C11.41%2069.37%2010.71%2066.94%2010.08%2064.53C9.44%2062.13%208.96%2059.73%208.57%2057.31C8.18%2054.88%207.86%2052.45%207.75%2050.0C7.64%2047.55%207.61%2045.03%207.9%2042.58C8.2%2040.12%208.68%2037.6%209.51%2035.26C10.34%2032.93%2011.48%2030.6%2012.89%2028.57C14.29%2026.54%2016.06%2024.67%2017.93%2023.09C19.79%2021.51%2021.96%2020.22%2024.07%2019.1C26.18%2017.98%2028.44%2017.19%2030.59%2016.38C32.75%2015.58%2034.88%2015.0%2037.0%2014.29C39.13%2013.58%2041.16%2012.91%2043.33%2012.15C45.49%2011.39%2047.64%2010.51%2050.0%209.74C52.36%208.97%2054.85%208.07%2057.49%207.53C60.13%206.99%2063.01%206.48%2065.83%206.51C68.65%206.54%2071.69%206.86%2074.41%207.73C77.13%208.59%2079.88%209.96%2082.14%2011.7C84.39%2013.44%2086.43%2015.75%2087.94%2018.17C89.45%2020.58%2090.52%2023.45%2091.22%2026.2C91.92%2028.95%2092.1%2031.92%2092.12%2034.67C92.15%2037.42%2091.75%2040.15%2091.36%2042.71C90.97%2045.26%2090.35%2047.67%2089.79%2050.0Z'%20fill='%23fff'/></svg>");
  --m4:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20preserveAspectRatio='none'><path%20d='M92.15%2050.0C91.96%2052.45%2091.61%2054.88%2091.09%2057.25C90.57%2059.61%2089.91%2061.97%2089.04%2064.21C88.16%2066.45%2087.11%2068.67%2085.84%2070.69C84.58%2072.72%2083.08%2074.67%2081.43%2076.38C79.79%2078.08%2077.9%2079.62%2075.97%2080.95C74.04%2082.28%2071.93%2083.37%2069.84%2084.36C67.74%2085.35%2065.58%2086.11%2063.42%2086.87C61.26%2087.64%2059.11%2088.28%2056.87%2088.96C54.63%2089.63%2052.4%2090.31%2050.0%2090.91C47.6%2091.51%2045.12%2092.18%2042.49%2092.57C39.87%2092.96%2037.05%2093.35%2034.25%2093.26C31.46%2093.18%2028.45%2092.88%2025.72%2092.06C22.99%2091.23%2020.17%2089.98%2017.86%2088.3C15.55%2086.63%2013.41%2084.41%2011.84%2082.02C10.28%2079.63%209.15%2076.75%208.48%2073.97C7.81%2071.2%207.71%2068.15%207.83%2065.35C7.94%2062.55%208.58%2059.76%209.17%2057.2C9.76%2054.64%2010.66%2052.27%2011.38%2050.0C12.11%2047.73%2012.88%2045.68%2013.53%2043.57C14.17%2041.46%2014.69%2039.46%2015.27%2037.36C15.84%2035.25%2016.28%2033.11%2016.97%2030.93C17.65%2028.75%2018.34%2026.46%2019.36%2024.29C20.39%2022.13%2021.6%2019.9%2023.1%2017.94C24.61%2015.99%2026.41%2014.11%2028.39%2012.58C30.37%2011.04%2032.65%209.73%2034.98%208.72C37.3%207.71%2039.83%207.01%2042.34%206.53C44.84%206.06%2047.44%205.87%2050.0%205.85C52.56%205.82%2055.15%206.03%2057.69%206.4C60.23%206.78%2062.78%207.33%2065.25%208.09C67.72%208.86%2070.2%209.81%2072.51%2011.01C74.82%2012.21%2077.1%2013.64%2079.13%2015.29C81.15%2016.94%2083.05%2018.87%2084.65%2020.93C86.25%2022.99%2087.62%2025.3%2088.71%2027.65C89.8%2030.0%2090.61%2032.52%2091.19%2035.01C91.78%2037.49%2092.09%2040.05%2092.25%2042.55C92.41%2045.05%2092.35%2047.55%2092.15%2050.0Z'%20fill='%23fff'/></svg>");
  --m5:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20preserveAspectRatio='none'><path%20d='M96.58%2050.0C96.34%2052.68%2095.81%2055.41%2094.97%2057.93C94.13%2060.45%2092.94%2062.92%2091.53%2065.12C90.13%2067.31%2088.38%2069.34%2086.56%2071.11C84.75%2072.88%2082.66%2074.37%2080.65%2075.72C78.64%2077.06%2076.51%2078.12%2074.49%2079.19C72.48%2080.26%2070.5%2081.13%2068.56%2082.14C66.62%2083.16%2064.79%2084.15%2062.83%2085.26C60.88%2086.37%2058.98%2087.62%2056.84%2088.81C54.7%2090.0%2052.46%2091.36%2050.0%2092.4C47.54%2093.44%2044.82%2094.52%2042.06%2095.05C39.29%2095.58%2036.25%2095.89%2033.4%2095.6C30.56%2095.31%2027.58%2094.54%2025.0%2093.3C22.42%2092.07%2019.95%2090.24%2017.95%2088.2C15.95%2086.16%2014.28%2083.59%2012.98%2081.06C11.68%2078.53%2010.82%2075.7%2010.13%2073.02C9.43%2070.34%209.12%2067.6%208.82%2064.99C8.52%2062.38%208.42%2059.85%208.31%2057.35C8.2%2054.85%208.12%2052.45%208.14%2050.0C8.15%2047.55%208.15%2045.12%208.39%2042.66C8.64%2040.21%208.94%2037.7%209.59%2035.29C10.24%2032.88%2011.1%2030.43%2012.28%2028.22C13.45%2026.01%2014.96%2023.86%2016.66%2022.02C18.35%2020.18%2020.38%2018.54%2022.45%2017.17C24.52%2015.79%2026.83%2014.71%2029.08%2013.77C31.34%2012.83%2033.69%2012.16%2036.0%2011.53C38.31%2010.91%2040.62%2010.44%2042.95%2010.01C45.28%209.58%2047.6%209.2%2050.0%208.94C52.4%208.67%2054.84%208.43%2057.33%208.41C59.83%208.4%2062.42%208.48%2064.97%208.87C67.52%209.26%2070.16%209.86%2072.64%2010.78C75.12%2011.71%2077.61%2012.93%2079.86%2014.42C82.1%2015.91%2084.24%2017.72%2086.1%2019.71C87.97%2021.69%2089.64%2023.96%2091.04%2026.31C92.43%2028.66%2093.6%2031.22%2094.49%2033.81C95.38%2036.39%2096.02%2039.12%2096.37%2041.82C96.72%2044.52%2096.81%2047.32%2096.58%2050.0Z'%20fill='%23fff'/></svg>");
}

.about__main,.about__inset,.step figure,.workshop__media,.work__media,.lightbox__fig{
  overflow:hidden;   /* при анимацията изображението е леко увеличено */
  -webkit-mask-size:100% 100%; mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-position:center; mask-position:center;
}
.shaped{-webkit-mask-image:var(--m1); mask-image:var(--m1);
  -webkit-mask-size:100% 100%; mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-position:center; mask-position:center;}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-sans);
  font-weight:300;
  font-size:clamp(15px,1.02vw,17px);
  line-height:1.72;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.is-locked{overflow:hidden}
img,video,svg{max-width:100%; display:block}
a{color:inherit; text-decoration:none; -webkit-tap-highlight-color:transparent}
button{-webkit-tap-highlight-color:transparent}
button{font:inherit; color:inherit; background:none; border:0; cursor:pointer}
ul,ol{margin:0; padding:0; list-style:none}
h1,h2,h3{margin:0; font-weight:400}
p{margin:0 0 1.05em}
::selection{background:var(--clay); color:var(--bone)}

.wrap{width:min(1320px, 100% - var(--pad)*2); margin-inline:auto}
section[id]{scroll-margin-top:84px}
.skip{position:fixed; left:-999px; top:0; z-index:999; background:var(--ink); color:var(--bone); padding:12px 18px}
.skip:focus{left:12px; top:12px}

/* ---------- ЗЪРНО ---------- */
.grain{
  position:fixed; inset:-120%; z-index:900; pointer-events:none; opacity:.36;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='260' height='260' filter='url(%23n)' opacity='.5'/></svg>");
  mix-blend-mode:multiply;
  animation:grain 7s steps(6) infinite;
}
@keyframes grain{
  0%{transform:translate(0,0)}20%{transform:translate(-6%,3%)}40%{transform:translate(4%,-5%)}
  60%{transform:translate(-3%,6%)}80%{transform:translate(5%,2%)}100%{transform:translate(0,0)}
}

/* ---------- ПРЕЛОУДЪР ---------- */
.loader{
  position:fixed; inset:0; z-index:1000; background:var(--paper);
  display:grid; place-items:center;
  transition:opacity .8s var(--ease), visibility .8s;
  animation:loaderFail .7s var(--ease) 5s forwards;
}
@keyframes loaderFail{to{opacity:0; visibility:hidden; pointer-events:none}}
.loader__inner{text-align:center; padding:0 24px}
.loader__name{
  display:block; font-family:var(--font-script); font-size:clamp(2.6rem,7vw,4.6rem);
  color:var(--ink); line-height:1.1;
  opacity:0; transform:translateY(16px); animation:lIn .9s var(--ease) .1s forwards;
}
.loader__line{display:block; width:min(220px,52vw); height:1px; background:var(--line); margin:22px auto 16px; overflow:hidden}
.loader__line i{display:block; height:100%; width:0; background:var(--clay); animation:lBar 1.35s var(--ease) .25s forwards}
.loader__hint{
  display:block; font-size:.72rem; letter-spacing:.3em; text-transform:uppercase; color:var(--mute);
  opacity:0; animation:lIn .9s var(--ease) .45s forwards;
}
@keyframes lIn{to{opacity:1; transform:none}}
@keyframes lBar{to{width:100%}}
.loader.is-done{opacity:0; visibility:hidden}

/* ---------- НАВИГАЦИЯ ---------- */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:830;
  display:flex; align-items:center; gap:clamp(16px,3vw,48px);
  padding:clamp(16px,2.2vw,28px) var(--pad);
  transition:background .5s var(--ease), padding .5s var(--ease), box-shadow .5s var(--ease);
}
.nav::after{
  content:""; position:absolute; inset:0; z-index:-1; opacity:0;
  background:rgba(244,237,227,.86); -webkit-backdrop-filter:blur(14px) saturate(1.1); backdrop-filter:blur(14px) saturate(1.1);
  border-bottom:1px solid var(--line);
  transition:opacity .5s var(--ease);
}
.nav.is-stuck::after{opacity:1}
.nav.is-menu::after{opacity:0}
.nav:not(.is-stuck):not(.is-menu) .nav__name{color:var(--bone)}
.nav:not(.is-stuck):not(.is-menu) .nav__mark{color:var(--clay-soft)}
.nav:not(.is-stuck):not(.is-menu) .nav__links a{color:rgba(251,247,241,.82)}
.nav:not(.is-stuck):not(.is-menu) .nav__links a:hover{color:var(--bone)}
.nav:not(.is-stuck):not(.is-menu) .burger i{background:var(--bone)}
.nav.is-menu .nav__name{color:var(--bone)}
.nav.is-menu .nav__mark{color:var(--clay-soft)}
.nav.is-stuck{padding-block:clamp(10px,1.4vw,16px)}
.nav__brand{display:flex; align-items:center; gap:12px; margin-right:auto}
.nav__mark{width:34px; height:34px; color:var(--clay); flex:none; transition:transform .8s var(--ease)}
.nav__brand:hover .nav__mark{transform:rotate(180deg)}
.nav__name{font-family:var(--font-script); font-size:1.62rem; line-height:1; padding-top:4px}
.nav__links{display:flex; gap:clamp(18px,2.4vw,38px)}
.nav__links a{position:relative; font-size:.82rem; letter-spacing:.13em; text-transform:uppercase; color:var(--ink-soft); display:block; transition:color .4s var(--ease)}
.nav__links a:hover{color:var(--ink)}
.nav__links a::after{
  content:""; position:absolute; left:0; bottom:-3px; width:100%; height:1px; background:var(--clay);
  transform:scaleX(0); transform-origin:right; transition:transform .5s var(--ease);
}
.nav__links a:hover::after{transform:scaleX(1); transform-origin:left}
@media (max-width:960px){ .nav__links{display:none} }

/* ---------- БУТОНИ ---------- */
.btn{
  --bg:var(--ink); --fg:var(--bone);
  position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:15px 28px; border-radius:100px; overflow:hidden;
  font-size:.79rem; letter-spacing:.14em; text-transform:uppercase; font-weight:500;
  background:var(--bg); color:var(--fg); isolation:isolate;
  transition:transform .5s var(--ease), color .45s var(--ease), box-shadow .5s var(--ease);
  will-change:transform;
}
.btn::before{
  content:""; position:absolute; inset:0; z-index:-1; background:var(--clay);
  transform:translateY(101%); transition:transform .55s var(--ease);
}
.btn:hover::before{transform:translateY(0)}
.btn:hover{box-shadow:0 14px 34px -18px rgba(25,20,16,.6)}
.btn .ico{width:17px; height:17px; flex:none}
.btn--solid{--bg:var(--ink); --fg:var(--bone)}
.btn--ghost{--bg:transparent; --fg:var(--ink); border:1px solid var(--line)}
.btn--light{--bg:var(--bone); --fg:var(--ink)}
.btn--light:hover{--fg:var(--bone)}
.btn--outline{--bg:transparent; --fg:var(--bone); border:1px solid rgba(251,247,241,.45)}
.btn--ghost:hover{--fg:var(--bone)}
.btn--viber{--bg:var(--viber); --fg:#fff}
.btn--viber::before{background:#5b48d8}
.btn--big{padding:19px 34px; font-size:.82rem}
.btn--wide{width:100%}
.nav__cta{padding:12px 22px}
@media (max-width:600px){ .nav__cta span{display:none} .nav__cta{padding:12px 14px} }

.round{
  width:52px; height:52px; border:1px solid rgba(251,247,241,.28); border-radius:50%;
  display:grid; place-items:center; color:var(--bone);
  transition:background .45s var(--ease), color .45s var(--ease), transform .45s var(--ease);
}
.round svg{width:20px; height:20px}
.round:hover{background:var(--bone); color:var(--ink); transform:scale(1.06)}

/* ---------- БУРГЕР + МЕНЮ ---------- */
.burger{display:none; width:44px; height:44px; position:relative; z-index:820}
.burger i{position:absolute; left:11px; width:22px; height:1px; background:var(--ink); transition:transform .5s var(--ease), background .3s}
.burger i:nth-child(1){top:19px}
.burger i:nth-child(2){top:25px}
.burger.is-open i{background:var(--bone)}
.burger.is-open i:nth-child(1){transform:translateY(3px) rotate(45deg)}
.burger.is-open i:nth-child(2){transform:translateY(-3px) rotate(-45deg)}
@media (max-width:960px){ .burger{display:block} }

.menu{
  position:fixed; inset:0; z-index:810; background:var(--dark); color:var(--bone);
  display:flex; flex-direction:column; justify-content:center; gap:40px;
  padding:110px var(--pad) 44px;
  clip-path:circle(0% at calc(100% - 46px) 42px);
  transition:clip-path .85s var(--ease);
  visibility:hidden;
}
.menu.is-open{clip-path:circle(150% at calc(100% - 46px) 42px); visibility:visible}
.menu__links{display:flex; flex-direction:column; gap:8px}
.menu__links a{
  font-family:var(--font-serif); font-size:clamp(2.1rem,9vw,3.2rem); line-height:1.3;
  display:flex; align-items:baseline; gap:16px; opacity:0; transform:translateY(22px);
  transition:opacity .6s var(--ease), transform .6s var(--ease), color .3s;
}
.menu.is-open .menu__links a{opacity:1; transform:none}
.menu__links a em{font-family:var(--font-sans); font-style:normal; font-size:.68rem; letter-spacing:.2em; color:var(--clay-soft)}
.menu__links a:hover{color:var(--clay-soft)}
.menu__foot{border-top:1px solid rgba(251,247,241,.14); padding-top:24px}
.menu__foot p{font-size:.85rem; color:rgba(251,247,241,.6); margin:16px 0 0}

/* ---------- ТИПОГРАФИЯ ---------- */
.h2{
  font-family:var(--font-serif); font-weight:300;
  font-size:clamp(2.15rem,4.6vw,4.15rem); line-height:1.09; letter-spacing:-.018em;
  max-width:16ch; margin-bottom:clamp(22px,2.6vw,36px);
}
.sechead .h2{margin-bottom:0}
.h2--wide{max-width:22ch}
.h2--light{color:var(--bone)}
.label{
  display:flex; align-items:center; gap:12px; margin:0 0 26px;
  font-size:.72rem; letter-spacing:.24em; text-transform:uppercase; color:var(--mute); font-weight:500;
}
.label em{font-style:normal; color:var(--clay); letter-spacing:.1em}
.label--light{color:rgba(251,247,241,.6)}
.label--light em{color:var(--clay-soft)}
.prose{max-width:56ch; color:var(--ink-soft)}
.prose strong{font-weight:500; color:var(--ink)}
.prose--light{color:rgba(251,247,241,.74)}
.signature{font-family:var(--font-script); font-size:2.6rem; color:var(--clay); margin:6px 0 0}
.kicker{display:flex; align-items:center; gap:14px; font-size:.72rem; letter-spacing:.26em; text-transform:uppercase; color:var(--mute); margin:0 0 26px}
.kicker i{width:44px; height:1px; background:var(--line)}

/* ---------- ХИРО ---------- */
.hero{
  position:relative; min-height:100vh; min-height:100svh; display:flex; align-items:center;
  overflow:hidden; isolation:isolate; color:var(--bone);
  padding:clamp(110px,16vh,180px) 0 clamp(150px,20vh,230px);
}
.hero__bg{position:absolute; inset:0; z-index:0}
.hero__video{width:100%; height:100%; object-fit:cover; filter:saturate(.92) contrast(1.04)}
.hero__veil{
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(19,14,11,.66) 0%, rgba(19,14,11,.24) 34%, rgba(19,14,11,.34) 64%, rgba(19,14,11,.78) 100%),
    linear-gradient(96deg, rgba(19,14,11,.66) 0%, rgba(19,14,11,.30) 46%, rgba(19,14,11,0) 76%);
}
.hero__inner{
  position:relative; z-index:2;
  width:min(1320px, 100% - var(--pad)*2); margin-inline:auto;
}
.hero__title{margin:0 0 28px}
.hero__script{
  display:block; font-family:var(--font-script); font-weight:400;
  font-size:clamp(3.4rem,9vw,8.2rem); line-height:.96; letter-spacing:-.01em;
  color:var(--bone); margin-bottom:.06em; text-shadow:0 16px 50px rgba(0,0,0,.42);
}
.hero__serif{
  display:block; font-family:var(--font-serif); font-style:italic; font-weight:300;
  font-size:clamp(1.15rem,2.1vw,1.95rem); line-height:1.42; color:rgba(251,247,241,.9); max-width:22ch;
  text-shadow:0 6px 26px rgba(0,0,0,.45);
}
.hero__lead{max-width:44ch; color:rgba(251,247,241,.82); margin-bottom:34px; text-shadow:0 4px 20px rgba(0,0,0,.4)}
.hero__actions{display:flex; flex-wrap:wrap; gap:14px; margin-bottom:44px}
.hero__facts{
  display:flex; flex-wrap:wrap; gap:clamp(20px,4vw,60px); margin:0;
  padding-top:26px; border-top:1px solid rgba(251,247,241,.26); max-width:820px;
}
.hero__facts dt{font-size:.68rem; letter-spacing:.22em; text-transform:uppercase; color:rgba(251,247,241,.58); margin-bottom:4px}
.hero__facts dd{margin:0; font-family:var(--font-serif); font-size:1.22rem; color:var(--bone)}

/* бежова подложка с ръб като нарисуван с четка */
.hero__brush{
  position:absolute; left:-2%; bottom:-1px; width:104%; max-width:none;
  height:clamp(92px,13vw,180px);
  z-index:3; pointer-events:none;
}
.hero__brush .b-back{fill:var(--paper); opacity:.42}
.hero__brush .b-front{fill:var(--paper)}


/* ---------- ЛЕНТА С УСЛОВИЯ ---------- */
.terms{
  border-bottom:1px solid var(--line); background:var(--paper);
  padding:clamp(18px,2.6vw,30px) var(--pad);
}
.terms__in{
  display:grid; grid-template-columns:repeat(3,1fr);
  width:min(1320px,100%); margin-inline:auto;
}
.terms__in p{
  margin:0; padding:2px clamp(14px,2.2vw,34px); text-align:center;
  font-family:var(--font-serif); font-style:italic; font-weight:300;
  font-size:clamp(1rem,1.28vw,1.22rem); line-height:1.45; color:var(--ink-soft);
}
.terms__in p + p{border-left:1px solid var(--line)}
.terms__in b{font-weight:500; font-style:normal; color:var(--ink); white-space:nowrap}
@media (max-width:760px){
  .terms__in{grid-template-columns:1fr; gap:12px}
  .terms__in p{padding:0; font-size:1.02rem}
  .terms__in p + p{border-left:0; border-top:1px solid var(--line); padding-top:12px}
}

/* ---------- ЗА МЕН ---------- */
.about{padding:var(--sec) 0}
.about__grid{display:grid; grid-template-columns:.92fr 1fr; gap:clamp(34px,6vw,96px); align-items:center}
.about__media{position:relative; padding-bottom:74px}
.about__main{margin:0; -webkit-mask-image:var(--m1); mask-image:var(--m1); filter:drop-shadow(0 30px 44px rgba(25,20,16,.24))}
.about__main img{width:100%; height:100%; object-fit:cover; aspect-ratio:3/4.1}
.about__inset{
  position:absolute; right:-10px; bottom:0; width:50%; margin:0;
  -webkit-mask-image:var(--m3); mask-image:var(--m3); filter:drop-shadow(0 20px 32px rgba(25,20,16,.28));
}
.about__inset img{width:100%; height:auto; aspect-ratio:4/3; object-fit:cover}
.stats{display:grid; grid-template-columns:repeat(2,1fr); gap:26px 20px; margin:46px 0 0; padding-top:34px; border-top:1px solid var(--line)}
.stats dt{font-family:var(--font-serif); font-size:clamp(2rem,3.4vw,2.9rem); line-height:1; color:var(--clay); font-weight:300}
.stats dd{margin:6px 0 0; font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--mute)}

/* ---------- ПРОЦЕСЪТ ---------- */
.process{padding:0 0 var(--sec); position:relative}
.sechead{margin-bottom:clamp(40px,6vw,74px)}
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(16px,2.4vw,34px)}
.step{position:relative}
.step:nth-child(even){margin-top:46px}
.step__num{
  display:block; font-family:var(--font-serif); font-size:.95rem; letter-spacing:.2em; color:var(--clay); margin-bottom:14px;
}
.step figure{margin:0 0 20px; -webkit-mask-image:var(--m2); mask-image:var(--m2)}
.step:nth-child(2) figure{-webkit-mask-image:var(--m4); mask-image:var(--m4)}
.step:nth-child(3) figure{-webkit-mask-image:var(--m5); mask-image:var(--m5)}
.step:nth-child(4) figure{-webkit-mask-image:var(--m3); mask-image:var(--m3)}
.step img{width:100%; height:auto; aspect-ratio:3/4; object-fit:cover; transition:transform 1.4s var(--ease)}
.step:hover img{transform:scale(1.05)}
.step h3{font-family:var(--font-serif); font-size:1.55rem; font-weight:400; margin-bottom:8px}
.step p{font-size:.94rem; color:var(--mute); max-width:34ch; margin:0}

/* ---------- ГАЛЕРИЯ ---------- */
.gallery{position:relative; background:var(--paper-2); padding:var(--sec) 0}
.gallery::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(80% 46% at 50% 0%, rgba(174,85,51,.07), rgba(244,237,227,0) 70%);
  pointer-events:none;
}
.gallery__head{position:relative; text-align:center; display:grid; justify-items:center; margin-bottom:clamp(46px,6vw,86px)}
.gallery__head .label{justify-content:center}
.gallery__note{max-width:60ch; margin:4px auto 0; color:var(--mute); font-size:.96rem}

.works{
  position:relative; display:grid; grid-template-columns:repeat(3,1fr);
  gap:clamp(38px,4.4vw,76px) clamp(24px,3vw,52px);
}
.work:nth-child(3n+2){margin-top:clamp(24px,5vw,70px)}
.work__btn{display:block; width:100%; padding:0; text-align:left; color:inherit}
.work__media{
  margin:0 0 22px; position:relative;
  -webkit-mask-image:var(--m1); mask-image:var(--m1);
  -webkit-mask-size:100% 100%; mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  filter:drop-shadow(0 26px 38px rgba(25,20,16,.20));
}
.work:nth-child(6n+2) .work__media{-webkit-mask-image:var(--m2); mask-image:var(--m2)}
.work:nth-child(6n+3) .work__media{-webkit-mask-image:var(--m3); mask-image:var(--m3)}
.work:nth-child(6n+4) .work__media{-webkit-mask-image:var(--m4); mask-image:var(--m4)}
.work:nth-child(6n+5) .work__media{-webkit-mask-image:var(--m5); mask-image:var(--m5)}
.work:nth-child(6n+6) .work__media{-webkit-mask-image:var(--m2); mask-image:var(--m2)}
.work__media img{
  width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; background:var(--sand);
  transition:transform 1.5s var(--ease);
}
.work__btn:hover .work__media img{transform:scale(1.045)}
.work__title{display:block; font-family:var(--font-serif); font-size:clamp(1.35rem,1.9vw,1.7rem); line-height:1.2}
.work__spec{display:block; color:var(--mute); font-size:.92rem; line-height:1.6; margin:8px 0 14px; max-width:36ch}
.work__price{
  display:inline-flex; align-items:baseline; gap:9px;
  font-family:var(--font-serif); font-size:1.45rem; color:var(--clay);
  border-bottom:1px solid transparent; transition:border-color .45s var(--ease);
}
.work__price em{font-family:var(--font-sans); font-style:normal; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--mute)}
.work__btn:hover .work__price{border-color:var(--clay)}

.gallery__foot{
  position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:20px;
  margin-top:clamp(52px,6vw,90px); padding-top:clamp(34px,4vw,52px); border-top:1px solid var(--line);
}
.gallery__foot p{margin:0; font-family:var(--font-serif); font-size:1.3rem; font-style:italic; color:var(--ink-soft)}

/* ---------- РАБОТИЛНИЦА ---------- */
.workshop{padding:var(--sec) 0}
.workshop__grid{display:grid; grid-template-columns:1fr .86fr; gap:clamp(34px,6vw,92px); align-items:center}
.workshop__media{margin:0; -webkit-mask-image:var(--m4); mask-image:var(--m4); filter:drop-shadow(0 30px 44px rgba(25,20,16,.24))}
.workshop__media img{width:100%; height:auto; aspect-ratio:3/4; object-fit:cover}
.price-tag{display:flex; align-items:baseline; gap:10px; margin:30px 0 30px; color:var(--mute); font-size:.8rem; letter-spacing:.16em; text-transform:uppercase}
.price-tag span{font-family:var(--font-serif); font-size:clamp(2.4rem,4vw,3.4rem); color:var(--clay); letter-spacing:normal; text-transform:none}

/* ---------- КОНТАКТИ ---------- */
.contact{background:var(--dark-2); color:var(--bone); padding:var(--sec) 0}
.contact__grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(38px,6vw,90px)}
.contact__intro .btn{margin-top:34px}
.link-call{display:block; margin-top:18px; font-size:.86rem; color:rgba(251,247,241,.55); text-decoration:underline; text-underline-offset:4px}
.link-call:hover{color:var(--bone)}
.contact__cards{display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:rgba(251,247,241,.14); border:1px solid rgba(251,247,241,.14)}
.ccard{background:var(--dark-2); padding:clamp(22px,2.6vw,34px)}
.ccard h3{font-size:.7rem; letter-spacing:.24em; text-transform:uppercase; color:var(--clay-soft); margin-bottom:16px; font-weight:500}
.ccard address{font-style:normal; line-height:1.9; color:rgba(251,247,241,.82)}
.ccard p{color:rgba(251,247,241,.82); margin-bottom:.5em}
.ccard .muted{color:rgba(251,247,241,.45); font-size:.86rem}
.ulink{display:inline-block; margin-top:10px; color:rgba(251,247,241,.82); border-bottom:1px solid rgba(251,247,241,.28); padding-bottom:2px; transition:color .35s, border-color .35s}
.ccard .ulink{display:block; width:fit-content}
.ulink:hover{color:var(--clay-soft); border-color:var(--clay-soft)}
.socials{display:grid; gap:9px}
.socials a{position:relative; color:rgba(251,247,241,.82); transition:color .35s, padding-left .35s}
.socials a::before{content:"→"; position:absolute; left:-20px; opacity:0; transition:opacity .35s, left .35s; color:var(--clay-soft)}
.socials a:hover{color:var(--bone); padding-left:6px}
.socials a:hover::before{opacity:1; left:-16px}

/* ---------- ФУТЪР ---------- */
.foot{background:var(--dark-2); color:var(--bone); padding:0 0 clamp(38px,5vw,62px)}
.foot__in{border-top:1px solid rgba(251,247,241,.14); padding-top:clamp(34px,4vw,54px); text-align:center}
.foot__script{font-family:var(--font-script); font-size:clamp(2.6rem,7vw,5rem); margin:0 0 10px; line-height:1}
.foot__meta{font-size:.74rem; letter-spacing:.24em; text-transform:uppercase; color:rgba(251,247,241,.5); margin:0 0 6px}
.foot__credit{font-size:.78rem; color:rgba(251,247,241,.32); margin:0 0 14px}
.foot__by{
  margin:0; padding-top:14px; border-top:1px solid rgba(251,247,241,.1);
  display:inline-block; font-size:.78rem; letter-spacing:.08em; color:rgba(251,247,241,.42);
}
.foot__by a{
  color:rgba(251,247,241,.78); border-bottom:1px solid rgba(251,247,241,.28);
  padding-bottom:2px; transition:color .35s var(--ease), border-color .35s var(--ease);
}
.foot__by a:hover{color:var(--clay-soft); border-color:var(--clay-soft)}
@media (max-width:900px){ .foot__by{font-size:.84rem} .foot__by a{display:inline-block; padding:6px 0} }

/* ---------- ЛАЙТБОКС ---------- */
.lightbox{
  position:fixed; inset:0; z-index:940; background:rgba(18,13,11,.9); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
  display:grid; place-items:center; padding:clamp(16px,4vw,54px);
  opacity:0; visibility:hidden; transition:opacity .55s var(--ease), visibility .55s;
}
.lightbox.is-open{opacity:1; visibility:visible}
.lightbox__in{
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1fr); gap:clamp(20px,4vw,58px); align-items:center;
  width:min(1080px,100%); transform:translateY(18px) scale(.98); transition:transform .7s var(--ease);
}
.lightbox.is-open .lightbox__in{transform:none}
.lightbox__fig{margin:0; -webkit-mask-image:var(--m5); mask-image:var(--m5)}
.lightbox__fig img{width:100%; height:auto; max-height:74vh; object-fit:cover; aspect-ratio:4/5}
.lightbox__info{color:var(--bone)}
.lightbox__idx{font-size:.7rem; letter-spacing:.24em; text-transform:uppercase; color:var(--clay-soft); margin-bottom:14px}
.lightbox__info h3{font-family:var(--font-serif); font-size:clamp(1.9rem,3.6vw,3rem); font-weight:300; line-height:1.05; margin-bottom:16px}
.lightbox__spec{color:rgba(251,247,241,.62); max-width:38ch}
.lightbox__price{font-family:var(--font-serif); font-size:2rem; color:var(--bone); margin:6px 0 26px}
.lightbox__close{position:absolute; top:clamp(14px,2.4vw,30px); right:clamp(14px,2.4vw,30px); width:48px; height:48px; border:1px solid rgba(251,247,241,.28); border-radius:50%; color:var(--bone); display:grid; place-items:center; transition:background .4s, color .4s}
.lightbox__close:hover{background:var(--bone); color:var(--ink)}
.lightbox__nav{
  position:absolute; top:50%; transform:translateY(-50%); width:54px; height:54px; border-radius:50%;
  border:1px solid rgba(251,247,241,.24); color:var(--bone); font-size:1.7rem; line-height:0;
  display:grid; place-items:center; transition:background .4s, color .4s;
}
.lightbox__nav:hover{background:var(--bone); color:var(--ink)}
.lightbox__nav--prev{left:clamp(10px,2vw,26px)}
.lightbox__nav--next{right:clamp(10px,2vw,26px)}

/* ---------- АНИМАЦИИ ПРИ СКРОЛ ---------- */
[data-reveal]{opacity:0; transform:translateY(30px); transition:opacity 1s var(--ease), transform 1.1s var(--ease)}
[data-reveal].is-in{opacity:1; transform:none}
[data-reveal="scale"]{transform:scale(.965); filter:blur(6px); transition:opacity 1.2s var(--ease), transform 1.3s var(--ease), filter 1.2s var(--ease)}
[data-reveal="scale"].is-in{transform:none; filter:none}
/* завесата се прилага върху вътрешния елемент, за да не убива IntersectionObserver */
[data-reveal="media"]{opacity:1; transform:none}
[data-reveal="media"] img{
  clip-path:inset(0 0 100% 0);
  transition:clip-path 1.3s var(--ease), transform 1.8s var(--ease);
}
[data-reveal="media"] img,
[data-reveal="media"] video{transform:scale(1.12); transition:transform 1.9s var(--ease)}
[data-reveal="media"].is-in img{clip-path:inset(0 0 0% 0)}
[data-reveal="media"].is-in img,
[data-reveal="media"].is-in video{transform:none}
.word{
  display:inline-block; overflow:hidden; vertical-align:top;
  padding-bottom:.18em; margin-bottom:-.18em;   /* въздух за опашките на ц, д, щ, у */
}
.word i{display:inline-block; font-style:inherit; transform:translateY(120%); transition:transform 1s var(--ease)}
[data-split].is-in .word i{transform:none}

/* ---------- РЕСПОНСИВ ---------- */
@media (max-width:1080px){
  .about__grid,.workshop__grid,.contact__grid{grid-template-columns:1fr}
  .about__media{max-width:520px}
  .workshop__media{order:-1; max-width:520px}
  .steps{grid-template-columns:repeat(2,1fr); gap:30px 20px}
  .works{grid-template-columns:repeat(2,1fr)}
  .step:nth-child(even){margin-top:0}
  .lightbox__in{grid-template-columns:1fr; max-width:520px; text-align:center}
  .lightbox__fig img{max-height:48vh}
  .lightbox__spec{margin-inline:auto}
}
@media (max-width:680px){
  .hero{min-height:100vh; min-height:100svh; padding:104px 0 clamp(108px,20vh,160px)}
  .hero__veil{
    background:
      linear-gradient(180deg, rgba(19,14,11,.74) 0%, rgba(19,14,11,.44) 34%, rgba(19,14,11,.52) 66%, rgba(19,14,11,.84) 100%);
  }
  .hero__script{font-size:clamp(2.9rem,13.5vw,4.6rem)}
  .hero__serif{font-size:1.06rem}
  .hero__title{margin-bottom:22px}
  .hero__lead{font-size:.95rem; margin-bottom:26px}
  .hero__facts{display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; padding-top:20px}
  .hero__facts>div:last-child{grid-column:1 / -1}
  .hero__facts dd{font-size:1.08rem}
  .hero__actions{gap:10px; margin-bottom:28px}
  .hero__actions .btn{flex:1 1 100%}
  .about__inset{width:52%; right:-10px; border-width:6px}
  .stats{gap:22px 14px}
  .steps{grid-template-columns:1fr; max-width:420px}
  .works{grid-template-columns:1fr; max-width:440px; margin-inline:auto}
  .work:nth-child(3n+2){margin-top:0}
  .gallery__foot{flex-direction:column; text-align:center}
  .contact__cards{grid-template-columns:1fr}
  .lightbox__nav{width:46px; height:46px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important}
  [data-reveal],[data-reveal="media"]{opacity:1 !important; transform:none !important; clip-path:none !important; filter:none !important}
  .word i{transform:none !important}
  .grain{animation:none}
}

/* ---------- МОБИЛНИ ПОПРАВКИ ---------- */
@media (max-width:900px){
  /* зони за докосване минимум 44 px */
  .link-call{
    display:inline-flex; align-items:center; min-height:44px;
    padding:10px 2px; font-size:.95rem;
  }
  .ccard .ulink{
    display:flex; align-items:center; min-height:44px;
    padding:8px 0; margin-top:0; font-size:.98rem;
  }
  .socials{gap:0}
  .socials a{
    display:flex; align-items:center; min-height:44px; font-size:1rem;
  }
  .socials a::before{left:-18px}
  .socials a:hover::before{left:-14px}
  .nav__brand{padding:6px 0}
  .nav__cta{min-height:44px}
  .burger{width:48px; height:48px}
  .burger i{left:13px}
  .work__btn{padding-bottom:6px}
  .lightbox__close,.lightbox__nav{width:48px; height:48px}

  /* дребните надписи стават четими */
  .label{font-size:.84rem; letter-spacing:.2em}
  .kicker{font-size:.8rem; letter-spacing:.18em}
  .hero__facts dt{font-size:.8rem}
  .ccard h3{font-size:.84rem; letter-spacing:.2em}
  .work__price em{font-size:.82rem}
  .step__num{font-size:1rem}
  .foot__meta{font-size:.82rem}
  .stats dd{font-size:.84rem}
  .gallery__note,.prose{font-size:1rem}
  .work__spec{font-size:.96rem}

  /* нищо да не наднича извън екрана */
  .about__inset{right:0}
  .about__media{padding-bottom:64px}
}

@media (max-width:420px){
  .hero__actions .btn{padding:16px 22px}
  .btn{font-size:.76rem; letter-spacing:.12em}
  .work__title{font-size:1.4rem}
}
