/* =========================================================
   Sofra & Şef · editorial dark theme, system fonts only
   ========================================================= */

:root{
  --bg-0:#12100D;
  --bg-1:#181410;
  --bg-2:#201A14;
  --bg-3:#2A221B;
  --line:#3A3026;
  --line-soft:#2A221B;
  --ink:#ECE2CE;
  --ink-muted:#B7A993;
  --ink-dim:#8A7D68;
  --copper:#C67A3E;
  --copper-soft:#8D5A2E;
  --copper-rgb: 198,122,62;
  --ember:#8B2E1F;
  --leaf:#6B7A3A;
  --cream:#F2E8D3;
  --paper:#E6D9BE;
  --signal:#C77C5B;
  --focus:#E7A06A;

  --serif: Georgia, "Iowan Old Style", "Hoefler Text", "Palatino Linotype", "Times New Roman", serif;
  --sans:  -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --mono:  ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;

  --radius: 2px;
  --max: 1240px;
  --gutter: clamp(16px, 3vw, 32px);
  --header-h: 72px;

  --ease-smooth: cubic-bezier(.2,.7,.2,1);
  --ease-warm:   cubic-bezier(.33, 1.2, .3, 1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto;max-width:100%}
html,body{margin:0;padding:0}
body{
  background:var(--bg-0);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:clip;
  max-width:100%;
  position:relative;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    repeating-linear-gradient(0deg, rgba(198,122,62,.020) 0 1px, transparent 1px 3px),
    repeating-linear-gradient(90deg, rgba(198,122,62,.015) 0 1px, transparent 1px 3px);
  opacity:.6;
  mix-blend-mode:overlay;
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(1200px 700px at 82% -10%, rgba(198,122,62,.12), transparent 60%),
    radial-gradient(900px 600px at -10% 110%, rgba(139,46,31,.10), transparent 55%);
}

main, header, footer{position:relative;z-index:2}

img,svg,video{max-width:100%;display:block;height:auto}

a{color:var(--copper);text-decoration:none;border-bottom:1px solid rgba(198,122,62,.35);transition:color 180ms var(--ease-smooth), border-color 180ms var(--ease-smooth)}
a:hover{color:var(--cream);border-color:var(--cream)}

:focus{outline:none}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}

h1,h2,h3,h4{font-family:var(--serif);font-weight:500;letter-spacing:-.01em;color:var(--cream);margin:0}
h1{font-size:clamp(2.4rem, 6vw, 4.8rem);line-height:1.02;letter-spacing:-.02em}
h2{font-size:clamp(1.8rem, 3.4vw, 2.6rem);line-height:1.1}
h3{font-size:clamp(1.2rem, 1.8vw, 1.45rem);line-height:1.25}
h4{font-size:1.02rem;font-family:var(--sans);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--copper)}

p{margin:.6em 0}
ul,ol{padding-left:1.1em}
li{margin:.35em 0}

section[id], [id]{scroll-margin-top:calc(var(--header-h) + 16px)}

.container{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}

/* ---------- Skip link ---------- */
.skip{position:absolute;left:-9999px;top:0;background:var(--copper);color:#1a120a;padding:10px 14px;font-weight:600;z-index:100;border:none}
.skip:focus,.skip:focus-visible{left:12px;top:12px;outline-offset:2px}

/* ---------- HEADER ---------- */
.masthead{
  position:sticky;top:0;z-index:30;
  border-bottom:1px solid var(--line-soft);
  isolation:isolate;
}
.masthead::before{
  content:"";
  position:absolute;inset:0;
  background:rgba(18,16,13,.82);
  backdrop-filter:saturate(140%) blur(10px);
  -webkit-backdrop-filter:saturate(140%) blur(10px);
  z-index:-1;
  pointer-events:none;
}
.mast-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding-block:16px;
}
.wordmark{
  display:inline-flex;align-items:baseline;gap:10px;
  font-family:var(--serif);font-size:1.35rem;letter-spacing:.02em;
  color:var(--cream);border-bottom:none;
}
.wordmark:hover{color:var(--cream)}
.wordmark b{font-weight:500;font-style:italic}
.wordmark span.dot{width:6px;height:6px;background:var(--copper);border-radius:50%;display:inline-block;margin:0 2px 2px}
.wordmark small{font-family:var(--sans);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);padding-left:10px;border-left:1px solid var(--line)}

nav.primary ul{display:flex;gap:28px;list-style:none;padding:0;margin:0}
nav.primary a{
  color:var(--ink-muted);border:none;font-size:.92rem;
  letter-spacing:.02em;padding:6px 0;position:relative;
}
nav.primary a::after{
  content:"";position:absolute;left:50%;right:50%;bottom:-2px;height:1px;background:var(--copper);
  transition:left 300ms var(--ease-smooth), right 300ms var(--ease-smooth);
}
nav.primary a:hover,
nav.primary a.is-active,
nav.primary a[aria-current="page"]{color:var(--cream)}
nav.primary a:hover::after,
nav.primary a.is-active::after,
nav.primary a[aria-current="page"]::after{left:0;right:0}

.burger{
  display:none;background:none;
  border:1px solid var(--line);color:var(--ink);
  font-family:var(--sans);cursor:pointer;
  width:42px;height:42px;padding:0;
  position:relative;
}
.burger .bar{
  position:absolute;left:50%;top:50%;
  width:18px;height:1.5px;background:var(--ink);
  margin-left:-9px;
  transition:transform 260ms var(--ease-smooth), opacity 200ms var(--ease-smooth), background-color 200ms var(--ease-smooth);
}
.burger .bar:nth-child(1){transform:translateY(-5px)}
.burger .bar:nth-child(2){transform:translateY(0)}
.burger .bar:nth-child(3){transform:translateY(5px)}
.burger[aria-expanded="true"] .bar{background:var(--copper)}
.burger[aria-expanded="true"] .bar:nth-child(1){transform:translateY(0) rotate(45deg)}
.burger[aria-expanded="true"] .bar:nth-child(2){opacity:0;transform:scaleX(0)}
.burger[aria-expanded="true"] .bar:nth-child(3){transform:translateY(0) rotate(-45deg)}
.burger[aria-expanded="true"]{border-color:var(--copper);background:rgba(198,122,62,.08)}

@media (max-width: 900px){
  .burger{display:block;position:relative;z-index:45}
  .wordmark{position:relative;z-index:45}
  nav.primary{
    position:fixed;top:var(--header-h);left:0;right:0;bottom:0;
    background:var(--bg-1);
    border-top:1px solid var(--line-soft);
    box-shadow:0 18px 48px rgba(0,0,0,.5);
    opacity:0;transform:translateY(-6px);
    pointer-events:none;
    transition:opacity 260ms var(--ease-smooth), transform 260ms var(--ease-smooth);
    z-index:40;
    overflow-y:auto;overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  nav.primary::-webkit-scrollbar{display:none;width:0;height:0}
  nav.primary.open{opacity:1;transform:none;pointer-events:auto}
  nav.primary ul{
    flex-direction:column;
    gap:0;padding:24px clamp(20px,5vw,28px);
    justify-content:flex-start;align-items:stretch;
  }
  nav.primary li{border-bottom:1px solid var(--line-soft)}
  nav.primary li:last-child{border-bottom:none}
  nav.primary a{display:block;padding:16px 0;font-size:1.02rem;min-height:52px}
  nav.primary a::after{display:none}
  body.nav-open{overflow:hidden}
}

/* ---------- HERO ---------- */
.hero{
  padding:clamp(56px,9vw,120px) 0 clamp(40px,7vw,96px);
  border-bottom:1px solid var(--line-soft);
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.hero-grid{
  display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr);
  gap:clamp(24px,5vw,80px);
  align-items:end;
}
.hero-eyebrow{
  display:flex;align-items:center;gap:14px;
  font-family:var(--sans);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--ink-dim);margin-bottom:28px;flex-wrap:wrap;
}
.hero-eyebrow .num{
  font-family:var(--serif);font-style:italic;font-size:1.1rem;letter-spacing:0;color:var(--copper);
}
.hero-eyebrow .rule{flex:1;min-width:40px;height:1px;background:var(--line)}

.hero h1 em{font-style:italic;color:var(--copper);font-weight:400}
.hero .lede{
  font-family:var(--serif);font-size:clamp(1.05rem,1.3vw,1.22rem);
  color:var(--ink-muted);max-width:48ch;margin-top:26px;line-height:1.55;font-style:italic;
}
.hero-cta{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}

.hero-visual{
  position:relative;
  aspect-ratio: 4/5;
  min-height:320px;
  border:1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(198,122,62,.06), transparent 40%),
    linear-gradient(180deg, var(--bg-2), var(--bg-1));
  overflow:hidden;
  isolation:isolate;
  margin:0;
}
.hero-visual img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 40%;
  opacity:.82;
  z-index:0;
}
.hero-visual::before{
  content:"";
  position:absolute;inset:16px;
  border:1px solid rgba(198,122,62,.35);
  pointer-events:none;
  z-index:2;
}
.hero-visual::after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(18,16,13,.12) 0%, rgba(18,16,13,.48) 100%),
    radial-gradient(ellipse at 50% 35%, transparent 50%, rgba(0,0,0,.42) 100%);
  pointer-events:none;
  z-index:1;
}
.hero-visual .tag,
.hero-visual .meta{
  position:absolute;left:22px;right:22px;
  font-family:var(--sans);font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--copper);
  display:flex;justify-content:space-between;gap:10px;
  z-index:3;
  pointer-events:none;
}
.hero-visual .tag{top:22px}
.hero-visual .meta{bottom:22px;font-family:var(--mono);font-size:.72rem;color:var(--ink-dim);text-transform:none;letter-spacing:.05em}

@media (max-width: 820px){
  .hero-grid{grid-template-columns:minmax(0,1fr)}
  .hero-visual{aspect-ratio:3/4;max-width:420px;margin-inline:auto}
}

/* ---------- BUTTONS ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--sans);font-weight:500;font-size:.92rem;letter-spacing:.04em;
  min-height:48px;padding:0 22px;
  border:1px solid var(--copper);background:transparent;color:var(--cream);
  cursor:pointer;text-decoration:none;border-radius:0;
  line-height:1;
  -webkit-tap-highlight-color:transparent;
  transition:background-color 200ms var(--ease-smooth), color 200ms var(--ease-smooth), transform 200ms var(--ease-smooth), box-shadow 200ms var(--ease-smooth);
}
.btn:focus{outline:none}
.btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(231,160,106,.45)}
.btn:hover{background:var(--copper);color:#1a120a;transform:translateY(-1px);box-shadow:0 0 0 4px rgba(198,122,62,.22)}
.btn.primary{background:var(--copper);color:#1a120a;border-color:var(--copper)}
.btn.primary:hover{background:#d88a4d;border-color:#d88a4d}
.btn.ghost{border-color:var(--line);color:var(--ink-muted)}
.btn.ghost:hover{border-color:var(--copper);color:var(--cream);background:transparent}
.btn .arrow{transition:transform 200ms var(--ease-smooth)}
.btn:hover .arrow{transform:translateX(3px)}

/* ---------- SECTIONS ---------- */
section{padding:clamp(56px,8vw,104px) 0;border-bottom:1px solid var(--line-soft)}
.section-head{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:baseline;
  margin-bottom:clamp(24px,4vw,56px);padding-bottom:18px;border-bottom:1px solid var(--line-soft);
}
.section-head .num{
  font-family:var(--serif);font-style:italic;color:var(--copper);font-size:2rem;line-height:1;
}
.section-head .eyebrow{
  display:block;font-family:var(--sans);font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:10px;
}

/* ---------- KAPSAM (service scope) ---------- */
.scope-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;
  background:var(--line-soft);border:1px solid var(--line-soft);
}
.scope-card{
  background:var(--bg-1);padding:30px 26px;position:relative;min-width:0;
  transition:background-color 320ms var(--ease-smooth);
}
.scope-card:hover{background:var(--bg-2)}
.scope-card .idx{
  font-family:var(--mono);font-size:.72rem;color:var(--copper);letter-spacing:.12em;margin-bottom:10px;
}
.scope-card h3{margin-bottom:10px}
.scope-card p{color:var(--ink-muted);font-size:.95rem;margin:0}
.scope-card::after{
  content:"";position:absolute;right:0;bottom:0;width:20px;height:20px;
  border-right:1px solid var(--copper);border-bottom:1px solid var(--copper);opacity:0;transition:opacity 320ms var(--ease-smooth);
}
.scope-card:hover::after{opacity:1}

/* ---------- LOGIC LIST ---------- */
.logic{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,56px)}
.logic .note{
  font-family:var(--serif);font-style:italic;color:var(--ink-muted);font-size:1.05rem;
  border-left:1px solid var(--copper);padding:6px 0 6px 20px;
}
.logic dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:22px;row-gap:14px}
.logic dt{font-family:var(--mono);color:var(--copper);font-size:.82rem;letter-spacing:.08em;white-space:nowrap}
.logic dd{margin:0;color:var(--ink-muted)}
@media (max-width:720px){.logic{grid-template-columns:minmax(0,1fr)}}

/* ---------- STYLE CARDS ---------- */
.styles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.style-card{
  border:1px solid var(--line);padding:28px 24px;background:linear-gradient(180deg,var(--bg-2),var(--bg-1));
  position:relative;min-width:0;
  transition:transform 320ms var(--ease-smooth), border-color 320ms var(--ease-smooth);
}
.style-card:hover{transform:translateY(-3px);border-color:var(--copper-soft)}
.style-card .tag{
  font-family:var(--mono);color:var(--copper);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px;
}
.style-card h3{margin-bottom:8px}
.style-card p{color:var(--ink-muted);font-size:.95rem}
.style-card ul{color:var(--ink-muted);font-size:.9rem;margin:10px 0 0;padding-left:18px}

/* ---------- PROCESS ---------- */
.process{counter-reset:step}
.process-list{
  list-style:none;padding:0;margin:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;
  border:1px solid var(--line-soft);
}
.process-list li{
  padding:28px 22px;border-right:1px solid var(--line-soft);position:relative;background:var(--bg-1);
  counter-increment:step;min-width:0;
}
.process-list li:last-child{border-right:none}
.process-list li::before{
  content:"0" counter(step);
  display:block;font-family:var(--serif);font-style:italic;color:var(--copper);font-size:1.5rem;margin-bottom:10px;
}
.process-list h3{font-size:1.1rem;margin-bottom:6px}
.process-list p{color:var(--ink-muted);font-size:.92rem;margin:0}
@media (max-width: 960px){
  .process-list{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .process-list li{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
}
@media (max-width: 560px){
  .process-list{grid-template-columns:minmax(0,1fr)}
  .process-list li{border-right:none}
}

/* ---------- PRICE ---------- */
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.price-card{
  border:1px solid var(--line);background:var(--bg-1);padding:26px 22px;
  position:relative;min-width:0;
  transition:border-color 320ms var(--ease-smooth), transform 320ms var(--ease-smooth);
}
.price-card:hover{border-color:var(--copper);transform:translateY(-2px)}
.price-card .eyebrow{font-family:var(--mono);color:var(--copper);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.price-card .amt{font-family:var(--serif);font-size:1.6rem;color:var(--cream);margin:10px 0 6px;line-height:1.15;overflow-wrap:anywhere}
.price-card .amt .cur{color:var(--copper);font-style:italic;font-size:1.1rem;margin-left:4px}
.price-card p{color:var(--ink-muted);font-size:.9rem;margin:0}
.price-disclaimer{
  margin-top:22px;font-size:.82rem;color:var(--ink-dim);font-family:var(--sans);
  border-top:1px solid var(--line-soft);padding-top:16px;
}

/* ---------- CALCULATOR ---------- */
.calc{
  border:1px solid var(--line);background:linear-gradient(180deg,var(--bg-2),var(--bg-1));
  padding:clamp(22px,3vw,36px);margin-top:28px;
}
.calc-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,3vw,36px);align-items:start}
.calc-field label{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:var(--copper);text-transform:uppercase;margin-bottom:10px}
.calc-slider{-webkit-appearance:none;appearance:none;width:100%;height:2px;background:var(--line);outline:none;margin:22px 0 10px}
.calc-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:var(--copper);border-radius:50%;cursor:pointer;border:3px solid var(--bg-0);box-shadow:0 0 0 1px var(--copper)}
.calc-slider::-moz-range-thumb{width:20px;height:20px;background:var(--copper);border-radius:50%;cursor:pointer;border:3px solid var(--bg-0)}
.calc-person{font-family:var(--serif);font-size:2.4rem;color:var(--cream);line-height:1}
.calc-person small{font-family:var(--sans);font-size:.82rem;color:var(--ink-dim);letter-spacing:.08em;text-transform:uppercase;margin-left:8px}
.calc-level{display:flex;gap:10px;flex-wrap:wrap;position:relative}
.calc-level input{
  position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;
  outline:none !important;border:0;margin:0;
}
.calc-level label{
  flex:1;min-width:90px;text-align:center;padding:12px 10px;border:1px solid var(--line);cursor:pointer;
  font-size:.88rem;color:var(--ink-muted);
  transition:background-color 200ms var(--ease-smooth), color 200ms var(--ease-smooth), border-color 200ms var(--ease-smooth), box-shadow 200ms var(--ease-smooth);
  letter-spacing:.04em;min-height:46px;display:flex;align-items:center;justify-content:center;
  -webkit-tap-highlight-color:transparent;
}
.calc-level input:checked + label,.calc-level label:hover{border-color:var(--copper);color:var(--cream);background:rgba(198,122,62,.08)}
.calc-level input:focus-visible + label{border-color:var(--copper);box-shadow:0 0 0 2px rgba(231,160,106,.45)}
.calc-output{
  margin-top:26px;padding-top:22px;border-top:1px solid var(--line-soft);
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center;
}
.calc-output .range{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2rem);color:var(--copper);overflow-wrap:anywhere}
.calc-output .range .sep{color:var(--ink-dim);font-style:italic;margin:0 10px}
.calc-output p{color:var(--ink-muted);font-size:.88rem;margin:0}
@media (max-width:720px){
  .calc-row,.calc-output{grid-template-columns:minmax(0,1fr)}
}

/* ---------- FAQ ---------- */
.faq{border-top:1px solid var(--line-soft)}
.faq details{
  border-bottom:1px solid var(--line-soft);padding:0;
}
.faq summary{
  list-style:none;cursor:pointer;padding:22px 0;
  display:flex;align-items:baseline;justify-content:space-between;gap:18px;
  font-family:var(--serif);font-size:1.12rem;color:var(--cream);
  transition:color 200ms var(--ease-smooth);
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";font-family:var(--serif);font-size:1.6rem;color:var(--copper);
  transition:transform 200ms var(--ease-smooth);flex-shrink:0;line-height:1;
}
.faq details[open] summary::after{content:"–";transform:rotate(180deg)}
.faq summary::after{transform:rotate(0deg);transition:transform 280ms var(--ease-smooth), color 200ms}
.faq summary:hover{color:var(--copper)}
.faq .a{
  overflow:hidden;
  height:0;
  color:var(--ink-muted);
  overflow-wrap:anywhere;word-break:break-word;
  transition:height 420ms var(--ease-smooth);
  will-change:height;
}
.faq details[open] .a{height:auto}
.faq .a-inner{
  padding:0 0 24px;
  opacity:0;
  transform:translateY(-4px);
  transition:opacity 280ms var(--ease-smooth) 80ms,
             transform 320ms var(--ease-smooth) 80ms;
}
.faq details[open] .a-inner{opacity:1;transform:none}

/* ---------- CTA BAND ---------- */
.cta-band{
  background:linear-gradient(180deg,var(--bg-2),var(--bg-1));
  border:1px solid var(--line);padding:clamp(30px,5vw,60px);
  display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:30px;align-items:center;
  position:relative;overflow:hidden;
}
.cta-band::before{
  content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;
  border:1px solid rgba(198,122,62,.2);border-radius:50%;pointer-events:none;
}
.cta-band h2{max-width:18ch}
.cta-band p{color:var(--ink-muted);margin:12px 0 0;max-width:54ch}
.cta-band .right{display:flex;justify-content:flex-end}
@media (max-width:720px){
  .cta-band{grid-template-columns:minmax(0,1fr)}
  .cta-band .right{justify-content:flex-start}
}

/* ---------- FOOTER ---------- */
footer.site-foot{
  background:var(--bg-1);border-top:1px solid var(--line);padding:56px 0 28px;margin-top:0;
}
.foot-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:36px}
@media (max-width:860px){.foot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (max-width:520px){.foot-grid{grid-template-columns:minmax(0,1fr)}}
.foot-grid h4{color:var(--copper);margin-bottom:14px;font-size:.72rem}
.foot-grid ul{list-style:none;padding:0;margin:0}
.foot-grid li{margin:6px 0}
.foot-grid a:not(.btn){color:var(--ink-muted);border:none;font-size:.92rem}
.foot-grid a:not(.btn):hover{color:var(--cream)}
.foot-grid .cookie-pref{
  background:none;border:none;padding:0;margin:0;
  color:var(--ink-muted);font-size:.92rem;font-family:var(--sans);
  cursor:pointer;text-align:left;
  transition:color 180ms var(--ease-smooth);
}
.foot-grid .cookie-pref:hover{color:var(--cream)}
.foot-brand p{color:var(--ink-dim);font-size:.9rem;max-width:44ch}
.foot-legal{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:44px;padding-top:22px;border-top:1px solid var(--line-soft);
  color:var(--ink-dim);font-size:.82rem;
}

/* ---------- PAGE HEAD ---------- */
.page-head{
  padding:clamp(40px,7vw,96px) 0 clamp(30px,5vw,64px);
  border-bottom:1px solid var(--line-soft);
}
.crumbs{
  font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;color:var(--ink-dim);
  margin-bottom:18px;
}
.crumbs a{color:var(--ink-dim);border:none}
.crumbs a:hover{color:var(--copper)}
.crumbs span.sep{color:var(--copper);margin:0 8px}

.prose{max-width:72ch;margin:0 auto;padding:clamp(40px,5vw,72px) 0}
.prose h2{margin-top:2.4em}
.prose h3{margin-top:1.8em}
.prose p,.prose li{color:var(--ink-muted)}

/* ---------- CONTACT CHANNELS ---------- */
.channel-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:1px;
  background:var(--line-soft);
  border:1px solid var(--line-soft);
}
.channel-card{
  background:var(--bg-1);
  padding:30px 26px;
  display:flex;flex-direction:column;gap:10px;
  min-width:0;
  position:relative;
  transition:background-color 320ms var(--ease-smooth);
}
.channel-card:hover{background:var(--bg-2)}
.channel-card .ico{
  width:42px;height:42px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--copper-soft);
  color:var(--copper);
  border-radius:50%;
  margin-bottom:6px;
  transition:transform 320ms var(--ease-warm), border-color 320ms, background-color 320ms;
}
.channel-card:hover .ico{transform:rotate(8deg) scale(1.06);border-color:var(--copper);background:rgba(198,122,62,.08)}
.channel-card .ico svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.channel-card .lbl{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--copper)}
.channel-card .val{
  font-family:var(--serif);font-size:1.12rem;color:var(--cream);
  overflow-wrap:anywhere;word-break:break-word;line-height:1.35;
}
.channel-card .val a{
  color:var(--cream);border:none;
  background-image:linear-gradient(var(--copper),var(--copper));
  background-position:0 100%;background-size:0% 1px;background-repeat:no-repeat;
  transition:background-size 280ms var(--ease-smooth);
}
.channel-card .val a:hover{background-size:100% 1px}
.channel-card .note{font-size:.84rem;color:var(--ink-dim);margin:0}
.channel-card::after{
  content:"";position:absolute;right:0;bottom:0;width:18px;height:18px;
  border-right:1px solid var(--copper);border-bottom:1px solid var(--copper);
  opacity:0;transition:opacity 320ms var(--ease-smooth);
}
.channel-card:hover::after{opacity:1}

/* ---------- FORM SECTION (standalone) ---------- */
.form-section{position:relative;isolation:isolate}
.form-section::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 60% 50% at 80% 20%, rgba(198,122,62,.06), transparent 60%);
  z-index:-1;
}
.form-grid{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(24px,5vw,64px);
  align-items:start;
}
@media (max-width:900px){.form-grid{grid-template-columns:minmax(0,1fr);gap:32px}}

.form-tips{
  border:1px solid var(--line);
  background:linear-gradient(180deg,var(--bg-2),var(--bg-1));
  padding:28px 26px;
  position:sticky;top:calc(var(--header-h) + 24px);
  min-width:0;
}
@media (max-width:900px){.form-tips{position:static;top:auto}}
.form-tips .eyebrow{
  font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);
  display:block;margin-bottom:10px;
}
.form-tips h3{font-size:1.12rem;margin-bottom:18px}
.form-tips dl{margin:0;display:grid;gap:14px}
.form-tips dt{
  font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);
  display:flex;align-items:center;gap:8px;
}
.form-tips dt::before{
  content:"";width:6px;height:6px;border-radius:50%;background:var(--copper);
  box-shadow:0 0 0 2px rgba(198,122,62,.18);
  flex-shrink:0;
}
.form-tips dd{margin:4px 0 0;color:var(--ink-muted);font-size:.92rem;line-height:1.5}
.form-tips .foot-note{
  margin-top:22px;padding-top:18px;border-top:1px solid var(--line-soft);
  color:var(--ink-dim);font-size:.84rem;
}

.form-card{
  border:1px solid var(--line);
  background:var(--bg-1);
  padding:clamp(24px,4vw,40px);
  min-width:0;
  position:relative;
  isolation:isolate;
}
.form-card::before{
  content:"";position:absolute;top:0;left:0;width:80px;height:1px;
  background:linear-gradient(90deg,var(--copper),transparent);
  pointer-events:none;
}
.form-card::after{
  content:"";position:absolute;top:0;left:0;width:1px;height:80px;
  background:linear-gradient(180deg,var(--copper),transparent);
  pointer-events:none;
}

/* ---------- FORM ---------- */
form.lead{display:grid;gap:14px}
form.lead .field{display:grid;gap:6px}
form.lead label{font-family:var(--mono);font-size:.72rem;color:var(--copper);letter-spacing:.14em;text-transform:uppercase}
form.lead input, form.lead textarea{
  font-family:var(--sans);font-size:1rem;
  background:var(--bg-1);border:1px solid var(--line);color:var(--cream);
  padding:12px 14px;border-radius:0;outline:none;
  min-height:48px;width:100%;
  transition:border-color 180ms var(--ease-smooth), background-color 180ms var(--ease-smooth), box-shadow 180ms var(--ease-smooth);
}
form.lead input::placeholder, form.lead textarea::placeholder{
  color:var(--ink-dim);opacity:.8;font-style:italic;
}
form.lead input:focus, form.lead textarea:focus,
form.lead input:focus-visible, form.lead textarea:focus-visible{
  outline:none;
  border-color:var(--copper);background:var(--bg-2);
  box-shadow:0 0 0 1px var(--copper);
}
form.lead textarea{min-height:140px;resize:vertical}
form.lead .hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
form.lead .check{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:var(--ink-muted);font-family:var(--sans);cursor:pointer;-webkit-tap-highlight-color:transparent}
form.lead .check input[type="checkbox"]{
  margin-top:3px;flex:0 0 18px;width:18px;height:18px;
  -webkit-tap-highlight-color:transparent;
  outline:none !important;
  border:none;
  cursor:pointer;
  accent-color:var(--copper);
  box-shadow:none;
  border-radius:3px;
  transition:box-shadow 180ms var(--ease-smooth);
}
form.lead .check input[type="checkbox"]:focus,
form.lead .check input[type="checkbox"]:active{outline:none !important;box-shadow:none}
form.lead .check input[type="checkbox"]:focus-visible{
  outline:none !important;
  box-shadow:0 0 0 2px rgba(231,160,106,.55);
}
form.lead .check a{color:var(--copper)}
form.lead .actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
form.lead .hint{color:var(--ink-dim);font-size:.82rem;font-family:var(--sans)}
form.lead .form-msg{
  max-height:0;opacity:0;overflow:hidden;transform:translateY(-4px);
  padding:0 14px;color:var(--cream);font-size:.92rem;
  background:var(--bg-2);border-left:3px solid var(--line);
  transition:max-height 280ms var(--ease-smooth), opacity 220ms, transform 220ms, padding 220ms;
}
form.lead .form-msg:not(:empty){
  max-height:10em;opacity:1;transform:none;padding:12px 14px;
}
form.lead .form-msg.ok{border-left-color:var(--leaf)}
form.lead .form-msg.err{border-left-color:var(--ember);color:var(--paper)}

/* ---------- COOKIE BANNER ---------- */
.cookie{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:100;
  background:var(--bg-2);border:1px solid var(--line);
  padding:20px;display:none;
  box-shadow:0 30px 60px rgba(0,0,0,.5);
  max-width:720px;margin:0 auto;
}
.cookie.show{display:block;animation:slideUp .4s ease both}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.cookie h3{font-family:var(--serif);font-size:1.15rem;margin-bottom:6px}
.cookie p{color:var(--ink-muted);font-size:.92rem;margin:0 0 14px}
.cookie .row{display:flex;gap:10px;flex-wrap:wrap}
/* Accept and Reject equal weight: both solid filled, different tones. */
.cookie .btn{min-height:46px;padding:0 18px;font-size:.88rem;flex:1 1 auto;min-width:130px}
.cookie .btn.accept{background:var(--copper);color:#1a120a;border-color:var(--copper)}
.cookie .btn.accept:hover{background:#d88a4d;border-color:#d88a4d}
.cookie .btn.reject{background:var(--bg-3);color:var(--cream);border-color:var(--cream)}
.cookie .btn.reject:hover{background:var(--cream);color:var(--bg-0);border-color:var(--cream)}
.cookie .btn.settings{background:transparent;color:var(--ink-muted);border-color:var(--line);flex:0 1 auto}
.cookie .btn.settings:hover{color:var(--cream);border-color:var(--copper);background:transparent}

.cookie-modal{
  position:fixed;inset:0;z-index:101;background:rgba(0,0,0,.6);
  display:none;align-items:center;justify-content:center;padding:16px;
}
.cookie-modal.show{display:flex}
.cookie-modal[hidden],.cookie[hidden]{display:none !important}
.cookie-modal .panel{
  background:var(--bg-1);border:1px solid var(--line);max-width:520px;width:100%;
  padding:28px;position:relative;
}
.cookie-modal .modal-close{
  position:absolute;top:10px;right:10px;
  width:36px;height:36px;
  background:none;border:1px solid transparent;
  color:var(--ink-muted);cursor:pointer;
  font-family:var(--serif);font-size:1.6rem;line-height:1;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  transition:color 180ms var(--ease-smooth), border-color 180ms, background-color 180ms;
}
.cookie-modal .modal-close:hover,
.cookie-modal .modal-close:focus-visible{color:var(--cream);border-color:var(--copper);background:rgba(198,122,62,.08)}
.cookie-modal h3{font-family:var(--serif);font-size:1.4rem;margin-bottom:10px;padding-right:36px}
.cookie-modal .opt{
  display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:14px 0;border-top:1px solid var(--line-soft);
}
.cookie-modal .opt:first-of-type{border-top:0}
.cookie-modal .opt > div{flex:1;min-width:0}
.cookie-modal .opt h4{color:var(--copper);margin-bottom:4px;font-size:.76rem}
.cookie-modal .opt p{color:var(--ink-muted);font-size:.85rem;margin:0;max-width:40ch;overflow-wrap:anywhere}
.switch{position:relative;display:inline-block;flex-shrink:0;width:48px;height:26px;-webkit-tap-highlight-color:transparent}
.switch input{
  position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2;
  -webkit-tap-highlight-color:transparent;
  outline:none !important;
  border:0;
}
.switch input:focus,
.switch input:active{outline:none !important}
.switch .slider{
  position:absolute;inset:0;background:var(--line);cursor:pointer;
  transition:background-color 200ms var(--ease-smooth), box-shadow 200ms var(--ease-smooth);
  border-radius:26px;
}
.switch .slider::before{
  content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;
  background:var(--ink);border-radius:50%;transition:transform 260ms var(--ease-warm), background-color 200ms;
}
.switch input:checked ~ .slider{background:var(--copper)}
.switch input:checked ~ .slider::before{transform:translateX(22px);background:var(--bg-0)}
.switch input:disabled ~ .slider{opacity:.5;cursor:not-allowed}
.switch input:focus-visible ~ .slider{box-shadow:0 0 0 2px rgba(231,160,106,.55)}
.cookie-modal .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.cookie-modal .actions .btn{flex:1 1 140px;min-width:130px}
.cookie-modal .actions .btn.accept-all{background:var(--copper);color:#1a120a;border-color:var(--copper)}
.cookie-modal .actions .btn.accept-all:hover{background:#d88a4d;border-color:#d88a4d}
.cookie-modal .actions .btn.reject-all{background:var(--bg-3);color:var(--cream);border-color:var(--cream)}
.cookie-modal .actions .btn.reject-all:hover{background:var(--cream);color:var(--bg-0)}

/* ---------- SITEMAP ---------- */
.sitemap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.sitemap-card{border:1px solid var(--line);padding:22px;background:var(--bg-1);min-width:0;
  transition:transform 320ms var(--ease-smooth), border-color 320ms var(--ease-smooth);
}
.sitemap-card:hover{transform:translateY(-3px);border-color:var(--copper-soft)}
.sitemap-card h3{margin-bottom:10px}
.sitemap-card ul{list-style:none;padding:0;margin:0}
.sitemap-card li{margin:6px 0}
.sitemap-card a:not(.btn){color:var(--ink-muted);border:none;min-height:44px;display:inline-flex;align-items:center;padding:4px 0}
.sitemap-card a:not(.btn):hover{color:var(--copper)}
.sitemap-card .cookie-pref{background:none;border:none;padding:4px 0;margin:0;color:var(--ink-muted);font-family:var(--sans);font-size:1rem;cursor:pointer;min-height:44px;text-align:left}
.sitemap-card .cookie-pref:hover{color:var(--copper)}

/* ---------- 404 ---------- */
.page-404{
  min-height:70vh;display:flex;align-items:center;justify-content:center;text-align:center;
  padding:80px 0;
}
.page-404 .code{font-family:var(--serif);font-style:italic;color:var(--copper);font-size:clamp(5rem,14vw,10rem);line-height:.9}
.page-404 h1{margin:20px 0 12px}
.page-404 p{color:var(--ink-muted);max-width:50ch;margin:0 auto 26px}

/* ---------- REVEAL ANIMATIONS ---------- */
.reveal{opacity:0;transform:translateY(16px);transition:opacity 640ms var(--ease-smooth), transform 640ms var(--ease-smooth)}
.reveal.is-in{opacity:1;transform:none}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .reveal{opacity:1 !important;transform:none !important}
}

/* ---------- UTILITIES ---------- */
.muted{color:var(--ink-muted)}
.small{font-size:.88rem}
.tight{margin:0}
.mt-24{margin-top:24px}
.mt-40{margin-top:40px}
.divider{height:1px;background:var(--line-soft);margin:clamp(20px,4vw,44px) 0}
.lede-sans{color:var(--ink-muted);font-size:1.05rem;max-width:64ch}

/* ---------- MOBILE BREAKPOINT TIER ---------- */
@media (max-width: 620px){
  .masthead .container{padding-inline:1.25rem}
  .hero{padding:clamp(44px,8vw,80px) 0 clamp(30px,6vw,60px)}
  .hero-cta{flex-direction:column;align-items:stretch}
  .hero-cta .btn{width:100%}
  .cta-band{padding:26px 22px}
  .calc{padding:22px}
  .price-card,.style-card,.scope-card{padding:22px 18px}
}

@media (max-width: 480px){
  :root{--gutter:clamp(14px,4vw,20px)}
  h1{font-size:clamp(2rem,8vw,2.8rem)}
  h2{font-size:clamp(1.5rem,5vw,2rem)}
  .section-head{grid-template-columns:minmax(0,1fr);gap:8px}
  .section-head .num{font-size:1.5rem}
  .cookie{left:10px;right:10px;bottom:10px;padding:18px}
  .cookie .row{flex-direction:column;gap:8px}
  .cookie .btn{width:100%;flex:none}
  .cookie-modal .panel{padding:22px}
  .cookie-modal .actions{flex-direction:column}
  .cookie-modal .actions .btn{width:100%;flex:none}
}

@media (max-width: 380px){
  .masthead .container{padding-inline:1rem}
  .hero h1{font-size:1.9rem}
  .btn{padding:0 16px;font-size:.86rem}
  .price-card .amt{font-size:1.35rem}
}

/* =========================================================
   THEMATIC FX: mum, buhar, bakır, kıvılcım
   Hover-only effects gated on JS-side; CSS-only stays passive
   ========================================================= */

/* ---------- HEADER: scroll-progress ribbon (bakır akış) ---------- */
.scroll-bar{
  position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:linear-gradient(90deg,
    rgba(198,122,62,.0) 0%,
    rgba(198,122,62,.85) 35%,
    rgba(242,196,140,1) 50%,
    rgba(198,122,62,.85) 65%,
    rgba(198,122,62,.0) 100%);
  background-size:200% 100%;
  background-position:50% 50%;
  transform-origin:0 50%;
  transform:scaleX(var(--rs-scroll, 0));
  pointer-events:none;
  z-index:2;
  opacity:.85;
}
.masthead.is-scrolling .scroll-bar{
  animation:rs-bar-flow 4.5s linear infinite;
}
@keyframes rs-bar-flow{
  from{background-position:50% 50%}
  to{background-position:-150% 50%}
}

/* ---------- BRAND-MARK: pulsing copper aura ---------- */
.wordmark .dot{position:relative}
.wordmark .dot::before{
  content:"";position:absolute;inset:-6px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(198,122,62,.55) 0%, rgba(198,122,62,0) 70%);
  animation:rs-mark-pulse 3.6s ease-in-out infinite;
  pointer-events:none;
}
@keyframes rs-mark-pulse{
  0%,100%{transform:scale(.85);opacity:.45}
  50%{transform:scale(1.4);opacity:.85}
}
.wordmark:hover .dot::before{animation-duration:1.6s}
.masthead.is-scrolling .wordmark .dot::before{animation-duration:1.4s}

/* ---------- HEADER COMPACT (is-scrolled) ---------- */
.masthead.is-scrolled::before{background:rgba(18,16,13,.94)}
.masthead.is-scrolled{box-shadow:0 8px 32px rgba(0,0,0,.4)}
.masthead.is-scrolled .mast-inner{padding-block:11px}

/* ---------- H1 EM: bakır shimmer flow ---------- */
.hero h1 em{
  position:relative;
  color:var(--copper);
  background:linear-gradient(110deg,
    var(--copper) 0%,
    #f4d29a 30%,
    var(--copper) 50%,
    #c67a3e 70%,
    var(--copper) 100%);
  background-size:240% 100%;
  background-position:0% 50%;
  -webkit-background-clip:text;
  background-clip:text;
  animation:rs-em-shimmer 8s linear infinite;
}
@supports (-webkit-text-fill-color: transparent){
  .hero h1 em{-webkit-text-fill-color:transparent}
}
@keyframes rs-em-shimmer{
  from{background-position:0% 50%}
  to{background-position:-240% 50%}
}

/* ---------- HERO VISUAL: rotating ring + steam + embers ---------- */
.hero-visual{transform-style:preserve-3d}
.hero-visual img{
  transform:scale(1.04);
  transition:transform 1400ms var(--ease-smooth), filter 800ms var(--ease-smooth);
}
.hero-visual:hover img{transform:scale(1.07);filter:saturate(1.05) brightness(1.04)}

/* Slow-spinning copper plate ring behind the photo */
.hero-visual .plate-ring{
  position:absolute;
  width:78%;aspect-ratio:1;
  left:50%;top:54%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(198,122,62,.32);
  pointer-events:none;
  z-index:2;
  animation:rs-plate-spin 38s linear infinite;
}
.hero-visual .plate-ring::before,
.hero-visual .plate-ring::after{
  content:"";position:absolute;inset:0;
  border-radius:50%;
  border:1px dashed rgba(242,196,140,.22);
}
.hero-visual .plate-ring::before{inset:-12px}
.hero-visual .plate-ring::after{inset:14px;border-style:dotted;border-color:rgba(198,122,62,.18)}
@keyframes rs-plate-spin{
  from{transform:translate(-50%,-50%) rotate(0)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}

/* Candle aura: warm pulsing glow in upper-right */
.hero-visual .candle{
  position:absolute;
  top:-40px;right:-40px;
  width:240px;height:240px;
  background:radial-gradient(circle,
    rgba(255,180,90,.45) 0%,
    rgba(198,122,62,.18) 30%,
    transparent 70%);
  filter:blur(8px);
  pointer-events:none;
  z-index:3;
  animation:rs-candle 4.8s ease-in-out infinite;
  mix-blend-mode:screen;
}
@keyframes rs-candle{
  0%,100%{opacity:.55;transform:scale(.95) translate(0,0)}
  35%{opacity:.85;transform:scale(1.08) translate(-3px,-2px)}
  70%{opacity:.6;transform:scale(1) translate(2px,1px)}
}

/* Steam wisps from plate */
.hero-visual .steam{
  position:absolute;
  left:50%;bottom:48%;
  transform:translateX(-50%);
  width:120px;height:140px;
  pointer-events:none;
  z-index:4;
  opacity:0;
}
.hero-visual:hover .steam,
.hero-visual.is-warm .steam{opacity:1;transition:opacity 500ms}
.hero-visual .steam span{
  position:absolute;
  bottom:0;
  width:14px;height:14px;
  background:radial-gradient(circle, rgba(255,235,205,.55), rgba(255,235,205,0) 70%);
  border-radius:50%;
  filter:blur(4px);
  animation:rs-steam 3.4s ease-in infinite;
}
.hero-visual .steam span:nth-child(1){left:30%;animation-delay:0s}
.hero-visual .steam span:nth-child(2){left:50%;animation-delay:.7s;width:18px;height:18px}
.hero-visual .steam span:nth-child(3){left:70%;animation-delay:1.4s}
.hero-visual .steam span:nth-child(4){left:42%;animation-delay:2.1s;width:12px;height:12px}
.hero-visual .steam span:nth-child(5){left:60%;animation-delay:2.8s;width:16px;height:16px}
@keyframes rs-steam{
  0%{transform:translateY(0) translateX(0) scale(.5);opacity:0}
  20%{opacity:.85}
  100%{transform:translateY(-130px) translateX(calc(var(--sx,8px) * 1)) scale(2.4);opacity:0}
}

/* Drifting copper embers in hero box */
.hero-embers{
  position:absolute;inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:5;
}
.hero-embers span{
  position:absolute;
  bottom:-10px;
  width:3px;height:3px;
  background:radial-gradient(circle, #ffd28a 0%, #c67a3e 50%, transparent 80%);
  border-radius:50%;
  box-shadow:0 0 6px rgba(255,210,140,.7);
  opacity:0;
  animation:rs-ember 7s linear infinite;
}
@keyframes rs-ember{
  0%{transform:translate(0,0) scale(.6);opacity:0}
  10%{opacity:1}
  85%{opacity:.7}
  100%{transform:translate(var(--ex,40px), -110%) scale(1.1);opacity:0}
}

/* ---------- DECORATIVE BAND with thematic image ---------- */
.decor-band{
  border-bottom:1px solid var(--line-soft);
  padding:clamp(60px,8vw,110px) 0;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(198,122,62,.06), transparent 60%),
    linear-gradient(180deg, var(--bg-0), var(--bg-1) 50%, var(--bg-0));
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.decor-band::before{
  content:"";position:absolute;left:0;right:0;top:50%;height:1px;
  background:linear-gradient(90deg, transparent, var(--line) 20%, var(--copper) 50%, var(--line) 80%, transparent);
  opacity:.35;
  z-index:0;
}
.decor-frame{
  width:min(560px, 88vw);
  margin:0 auto;
  aspect-ratio:540/380;
  position:relative;
  overflow:hidden;
  background:linear-gradient(140deg, var(--bg-3), var(--bg-1));
  z-index:1;
  isolation:isolate;
}
.decor-frame img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  opacity:.78;
  filter:saturate(.95) contrast(1.04);
  transform:scale(1.04);
  transition:transform 1600ms var(--ease-smooth), filter 800ms;
  z-index:0;
}
.decor-frame:hover img{transform:scale(1.09);filter:saturate(1.08) contrast(1.06)}
.decor-frame::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 30% 30%, rgba(255,180,90,.18), transparent 50%),
    linear-gradient(180deg, transparent 40%, rgba(18,16,13,.65) 100%);
  pointer-events:none;
  z-index:1;
}
.decor-frame .ring{
  position:absolute;inset:14px;
  border:1px dashed rgba(198,122,62,.55);
  pointer-events:none;
  z-index:2;
}
.decor-frame .ring::before,
.decor-frame .ring::after{
  content:"";position:absolute;width:18px;height:18px;
  border:1px solid var(--copper);
}
.decor-frame .ring::before{top:-1px;left:-1px;border-right:none;border-bottom:none}
.decor-frame .ring::after{bottom:-1px;right:-1px;border-left:none;border-top:none}
.decor-frame .caption{
  position:absolute;left:0;right:0;bottom:18px;
  text-align:center;font-family:var(--mono);font-size:.7rem;
  color:var(--cream);letter-spacing:.24em;text-transform:uppercase;
  z-index:3;
  text-shadow:0 1px 4px rgba(0,0,0,.7);
}
.decor-frame .num{
  position:absolute;top:18px;right:18px;
  font-family:var(--serif);font-style:italic;
  color:var(--copper);font-size:1rem;
  z-index:3;
  text-shadow:0 1px 4px rgba(0,0,0,.7);
}

/* ---------- MAGNETIC primary CTA ---------- */
.btn.is-magnetic{
  will-change:transform;
}
.btn.primary{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.btn.primary::before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(120deg, #d88a4d 0%, #f4c48c 50%, #d88a4d 100%);
  background-size:200% 100%;
  background-position:0% 50%;
  opacity:0;
  transition:opacity 380ms var(--ease-smooth), background-position 800ms;
  pointer-events:none;
  z-index:-1;
}
.btn.primary:hover::before,
.btn.primary:focus-visible::before{opacity:1;background-position:100% 50%}
.btn.primary::after{
  content:"";
  position:absolute;
  top:0;bottom:0;left:-60%;width:32%;
  background:linear-gradient(110deg, transparent, rgba(255,235,205,.55) 50%, transparent);
  transform:skewX(-18deg);
  transition:left 820ms var(--ease-smooth);
  pointer-events:none;
  mix-blend-mode:overlay;
  z-index:1;
}
.btn.primary:hover::after,
.btn.primary:focus-visible::after{left:120%}

/* ---------- 3D TILT cards ---------- */
[data-tilt]{
  --rx:0deg; --ry:0deg;
  transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry));
  transform-style:preserve-3d;
  will-change:transform;
}
.price-card[data-tilt],
.scope-card[data-tilt],
.style-card[data-tilt]{
  transition:background-color 320ms var(--ease-smooth),
             border-color 320ms var(--ease-smooth),
             transform 480ms var(--ease-smooth),
             box-shadow 480ms var(--ease-smooth);
}
.price-card[data-tilt].is-tilting,
.scope-card[data-tilt].is-tilting,
.style-card[data-tilt].is-tilting{
  transition:background-color 320ms var(--ease-smooth),
             border-color 320ms var(--ease-smooth),
             box-shadow 320ms var(--ease-smooth);
}
.price-card[data-tilt] .amt,
.price-card[data-tilt] .eyebrow,
.scope-card[data-tilt] h3,
.scope-card[data-tilt] .idx,
.style-card[data-tilt] .tag,
.style-card[data-tilt] h3{
  transform:translateZ(18px);
}
.price-card[data-tilt]:hover,
.scope-card[data-tilt]:hover,
.style-card[data-tilt]:hover{
  box-shadow:
    0 18px 50px rgba(0,0,0,.45),
    0 0 0 1px rgba(198,122,62,.35),
    inset 0 1px 0 rgba(255,210,140,.05);
}

/* ---------- CURSOR CANDLE AURA ---------- */
.cursor-candle{
  position:fixed;
  top:0;left:0;
  width:560px;height:560px;
  margin:-280px 0 0 -280px;
  background:radial-gradient(circle,
    rgba(255,200,120,.13) 0%,
    rgba(198,122,62,.07) 25%,
    transparent 55%);
  border-radius:50%;
  z-index:3;
  mix-blend-mode:screen;
  opacity:0;
  pointer-events:none;
  transition:opacity 320ms var(--ease-smooth);
  will-change:transform, opacity;
}
.cursor-candle.is-on{opacity:1}
.cursor-candle.is-hot{
  width:380px;height:380px;
  margin:-190px 0 0 -190px;
  background:radial-gradient(circle,
    rgba(255,210,140,.22) 0%,
    rgba(198,122,62,.12) 30%,
    transparent 60%);
}

/* ---------- SPARK BURST on click ---------- */
.spark{
  position:fixed;
  width:5px;height:5px;
  border-radius:50%;
  background:radial-gradient(circle, #fff5e0 0%, #f4c48c 30%, #c67a3e 60%, transparent 80%);
  box-shadow:0 0 8px rgba(244,196,140,.85);
  pointer-events:none;
  z-index:9999;
  animation:rs-spark 900ms cubic-bezier(.2,.7,.2,1) forwards;
  will-change:transform, opacity;
}
@keyframes rs-spark{
  0%{opacity:1;transform:translate3d(0,0,0) scale(1)}
  100%{opacity:0;transform:translate3d(var(--dx,0), var(--dy,0), 0) scale(.2)}
}

/* ---------- STAGE CURTAIN reveal (per-session) ---------- */
.stage-curtain{
  position:fixed;inset:0;z-index:9000;
  pointer-events:none;
  display:grid;grid-template-columns:1fr 1fr;
  background:transparent;
}
.stage-curtain::before,
.stage-curtain::after{
  content:"";
  background:
    linear-gradient(180deg, #14100D 0%, #1F1810 40%, #2A1E12 60%, #1F1810 100%),
    repeating-linear-gradient(90deg, rgba(0,0,0,0) 0 22px, rgba(255,210,140,.025) 22px 23px);
  background-blend-mode:overlay;
  box-shadow:inset 0 0 80px rgba(0,0,0,.85);
}
.stage-curtain.is-up::before{animation:rs-curtain-left 1400ms cubic-bezier(.65,.02,.15,.99) forwards}
.stage-curtain.is-up::after {animation:rs-curtain-right 1400ms cubic-bezier(.65,.02,.15,.99) 80ms forwards}
@keyframes rs-curtain-left {to{transform:translateX(-105%)}}
@keyframes rs-curtain-right{to{transform:translateX(105%)}}
.stage-curtain .seam{
  position:absolute;top:0;bottom:0;left:50%;width:4px;margin-left:-2px;
  background:linear-gradient(180deg,
    #c67a3e 0%, #f4c48c 30%, #fff5e0 50%, #f4c48c 70%, #c67a3e 100%);
  box-shadow:0 0 28px rgba(244,196,140,.95);
  z-index:1;
  animation:rs-seam 1400ms cubic-bezier(.65,.02,.15,.99) forwards;
}
@keyframes rs-seam{
  0%{opacity:0;transform:scaleY(.4)}
  18%{opacity:1;transform:scaleY(1)}
  60%{opacity:1}
  100%{opacity:0}
}

/* ---------- REDUCED MOTION KILL-SWITCH ---------- */
@media (prefers-reduced-motion: reduce){
  .cursor-candle,
  .spark,
  .stage-curtain,
  .hero-embers,
  .hero-visual .candle,
  .hero-visual .steam,
  .hero-visual .plate-ring,
  .scroll-bar{display:none !important}
  .hero h1 em{
    -webkit-text-fill-color:var(--copper) !important;
    background:none !important;
    color:var(--copper) !important;
  }
  [data-tilt]{transform:none !important}
}

/* ---------- MOBILE refinement of FX ---------- */
@media (max-width: 720px){
  .hero-visual .candle{width:160px;height:160px;top:-20px;right:-20px}
  .hero-visual .plate-ring{width:88%}
  .decor-frame{aspect-ratio:4/3}
  .decor-frame .caption{font-size:.62rem;letter-spacing:.18em;bottom:14px}
}
@media (max-width: 480px){
  .cursor-candle{display:none}
  .hero-embers span:nth-child(n+5){display:none}
}
