/* =========================================================
   LOVE CATERING — Editorial Magazine (PL)
   Vibe: editorial x brutalist typography x organic warmth
   ========================================================= */

:root{
  --ink:#131816;
  --ink-2:#1F2A22;
  --paper:#F7F4EE;
  --paper-2:#F1EBDD;
  --paper-3:#EBE4D3;
  --sage:#5C7C63;
  --sage-dark:#3E5B46;
  --sage-light:#A8BEA9;
  --clay:#C9825C;
  --clay-soft:#F3D9C6;
  --line:#E1DBCB;
  --muted:#7A7266;
  --white:#FFFFFF;

  --serif:'Fraunces','Cormorant Garamond',Georgia,serif;
  --sans:'Inter','Segoe UI',system-ui,-apple-system,sans-serif;
  --mono:'JetBrains Mono','IBM Plex Mono',ui-monospace,monospace;

  --edge:24px;
  --wide:1440px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--paper)}
body{
  font-family:var(--sans);
  background:var(--paper);
  color:var(--ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  position:relative;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none;transition:opacity .2s,color .2s}
button{border:0;background:none;cursor:pointer;font-family:inherit;color:inherit}
input,select,textarea{font-family:inherit;color:inherit}
ul{list-style:none}

/* Paper grain overlay */
body::before{
  content:"";
  position:fixed;inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.08  0 0 0 0 0.08  0 0 0 0 0.08  0 0 0 0.18 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  opacity:.35;mix-blend-mode:multiply;
  pointer-events:none;z-index:1000;
}

/* ==== Typography ==== */
h1,h2,h3,h4,h5{
  font-family:var(--serif);font-weight:500;letter-spacing:-.02em;line-height:1;
  font-variation-settings:'SOFT' 40,'WONK' 0,'opsz' 144;
}
h1{font-size:clamp(56px,10vw,180px)}
h2{font-size:clamp(40px,6vw,88px)}
h3{font-size:clamp(24px,2.4vw,36px);letter-spacing:-.01em}
h4{font-size:18px;font-weight:600;font-family:var(--sans);text-transform:uppercase;letter-spacing:.15em}
em{font-style:italic;color:var(--sage);font-family:var(--serif)}
p{max-width:60ch}

.mono{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}

/* ==== Utility ==== */
.wrap{max-width:var(--wide);margin:0 auto;padding:0 var(--edge);position:relative}
.divider{height:1px;background:var(--ink);opacity:.15;margin:0}

/* ==== Progress bar ==== */
.progress{
  position:fixed;top:0;left:0;height:3px;width:0%;
  background:var(--sage);z-index:200;transition:width .1s linear;
}

/* ==== Top ticker ==== */
.ticker{
  background:var(--ink);color:#F5EFE0;
  padding:10px 0;overflow:hidden;
  font-family:var(--mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;
  border-bottom:1px solid #2b3630;
}
.ticker__track{
  display:flex;gap:56px;white-space:nowrap;
  animation:tick 45s linear infinite;
  will-change:transform;
}
.ticker__item{display:inline-flex;align-items:center;gap:14px;opacity:.85}
.ticker__item::after{content:"◆";color:var(--clay);opacity:.6}
@keyframes tick{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* ==== Ad disclosure ==== */
.ad-bar{
  background:#000;color:#fff;text-align:center;
  padding:6px 12px;font-family:var(--mono);
  font-size:10px;letter-spacing:.5em;text-transform:uppercase;font-weight:600;
}

/* ==== Header ==== */
.header{
  position:sticky;top:0;z-index:60;
  background:rgba(247,244,238,.92);
  backdrop-filter:saturate(1.4) blur(14px);
  -webkit-backdrop-filter:saturate(1.4) blur(14px);
  border-bottom:1px solid var(--line);
}
.header__inner{
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;padding:18px 0;gap:24px;
}
.header__left{display:flex;align-items:center;gap:24px}
.header__right{display:flex;align-items:center;gap:20px;justify-content:flex-end}
.logo{display:inline-flex;align-items:baseline;gap:2px;color:var(--ink)}
.logo__letter{
  font-family:var(--serif);font-style:italic;
  font-size:36px;line-height:.8;font-weight:500;
  color:var(--sage);
}
.logo__name{
  font-family:var(--mono);font-size:11px;
  letter-spacing:.3em;text-transform:uppercase;font-weight:600;
  margin-left:6px;
}
.nav{display:flex;gap:28px}
.nav a{
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;font-weight:500;color:var(--ink);
  position:relative;padding:6px 0;
}
.nav a::before{
  content:attr(data-num);
  color:var(--clay);margin-right:8px;font-size:9px;opacity:.7;
}
.nav a:hover{color:var(--sage)}

.header__phone{
  font-family:var(--mono);font-size:12px;letter-spacing:.1em;font-weight:600;
  padding:8px 14px;border:1px solid var(--ink);border-radius:999px;
  transition:background .2s,color .2s;
}
.header__phone:hover{background:var(--ink);color:var(--paper)}

.burger{display:none;padding:8px}
.burger span{display:block;width:26px;height:2px;background:var(--ink);margin:5px 0;transition:.3s}

/* ==== Buttons ==== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  font-family:var(--sans);font-weight:600;font-size:14px;letter-spacing:.02em;
  padding:16px 28px;border-radius:999px;line-height:1;cursor:pointer;
  transition:background .25s,color .25s,transform .25s,box-shadow .25s;
  border:1px solid transparent;
}
.btn svg{width:16px;height:16px}
.btn--ink{background:var(--ink);color:var(--paper)}
.btn--ink:hover{background:var(--sage);color:#fff;transform:translateY(-2px)}
.btn--sage{background:var(--sage);color:#fff;box-shadow:0 10px 24px rgba(92,124,99,.3)}
.btn--sage:hover{background:var(--sage-dark);transform:translateY(-2px);box-shadow:0 14px 30px rgba(92,124,99,.4)}
.btn--clay{background:var(--clay);color:#fff}
.btn--clay:hover{background:#b26e4c;transform:translateY(-2px)}
.btn--outline{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn--outline:hover{background:var(--ink);color:var(--paper)}
.btn--outline-light{background:transparent;color:var(--paper);border-color:var(--paper)}
.btn--outline-light:hover{background:var(--paper);color:var(--ink)}
.btn--ghost{background:transparent;padding-left:6px;padding-right:6px}
.btn--ghost:hover{color:var(--sage)}
.btn--lg{padding:20px 36px;font-size:15px}
.btn--block{width:100%}

/* ==== FAB (floating order) ==== */
.fab{
  position:fixed;bottom:28px;right:28px;z-index:80;
  display:inline-flex;align-items:center;gap:10px;
  background:var(--ink);color:var(--paper);
  padding:16px 22px;border-radius:999px;
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  box-shadow:0 20px 40px rgba(19,24,22,.35);
  transform:translateY(140px);opacity:0;
  transition:transform .4s cubic-bezier(.2,.8,.2,1),opacity .4s;
}
.fab.is-visible{transform:translateY(0);opacity:1}
.fab:hover{background:var(--sage);color:#fff;transform:translateY(-4px)}
.fab .dot{width:6px;height:6px;border-radius:50%;background:var(--clay);animation:blink 1.6s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}

/* ==== Rotating stamp ==== */
.stamp{
  position:absolute;width:150px;height:150px;
  animation:rotate 22s linear infinite;
  pointer-events:none;
}
.stamp__inner{
  width:100%;height:100%;position:relative;
}
.stamp__inner::before{
  content:"";position:absolute;inset:20px;border-radius:50%;
  background:var(--ink);
}
.stamp__center{
  position:absolute;inset:0;display:grid;place-items:center;
  color:var(--clay);
}
.stamp text{
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;
  text-transform:uppercase;fill:var(--paper);font-weight:600;
}
@keyframes rotate{to{transform:rotate(360deg)}}

/* ==================================================================
   HERO
================================================================== */
.hero{
  padding:60px 0 0;
  position:relative;overflow:hidden;
  border-bottom:1px solid var(--line);
}
.hero__top{
  display:flex;justify-content:space-between;align-items:baseline;
  margin-bottom:44px;flex-wrap:wrap;gap:16px;
}
.hero__issue{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}
.hero__issue span{color:var(--ink);font-weight:600}
.hero__meta{display:flex;gap:32px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.hero__meta strong{color:var(--ink)}

.hero__grid{
  display:grid;grid-template-columns:minmax(0,1fr) 380px;
  gap:60px;align-items:end;position:relative;
}
.hero__title{position:relative;z-index:2}
.hero__title h1{
  font-weight:400;line-height:.92;
  font-size:clamp(56px,10.5vw,168px);
  letter-spacing:-.03em;
}
.hero__title h1 em{
  color:var(--sage);font-style:italic;
  display:inline-block;
}
.hero__title h1 .line{display:block}
.hero__title h1 .line--inset{padding-left:12%}
.hero__title h1 .badge{
  display:inline-block;background:var(--clay);color:#fff;
  font-family:var(--mono);font-size:14px;letter-spacing:.2em;
  text-transform:uppercase;font-weight:600;padding:6px 14px;border-radius:6px;
  vertical-align:middle;margin:0 8px;transform:translateY(-14px);
}

.hero__aside{position:relative}
.hero__img{
  aspect-ratio:3/4;border-radius:8px;overflow:hidden;
  border:1px solid var(--line);position:relative;
  box-shadow:0 30px 60px rgba(19,24,22,.15);
}
.hero__img img{width:100%;height:100%;object-fit:cover}
.hero__img-tag{
  position:absolute;top:16px;left:16px;
  background:var(--paper);color:var(--ink);
  padding:6px 12px;border-radius:999px;
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
}
.hero__stamp{top:-40px;right:-40px}

.hero__bottom{
  display:grid;grid-template-columns:2fr 1fr;
  gap:48px;padding:60px 0 80px;align-items:end;
  border-top:1px solid var(--line);margin-top:40px;
}
.hero__lead{
  font-family:var(--serif);font-size:clamp(19px,1.8vw,26px);
  line-height:1.4;color:var(--ink);font-weight:400;
  max-width:640px;
}
.hero__lead::first-letter{
  font-family:var(--serif);font-style:italic;
  font-size:2.2em;line-height:.8;color:var(--sage);
  float:left;margin:6px 8px 0 0;font-weight:500;
}
.hero__actions{display:flex;flex-direction:column;gap:16px;align-items:stretch}
.hero__actions .btn{width:100%}
.hero__actions .subline{
  font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--muted);text-align:center;
}

/* ==== Marquee ==== */
.marquee{
  background:var(--ink);color:var(--paper);padding:26px 0;overflow:hidden;
  border-top:1px solid #2b3630;border-bottom:1px solid #2b3630;
}
.marquee__track{display:flex;gap:64px;white-space:nowrap;animation:tick 40s linear infinite}
.marquee__item{
  display:inline-flex;align-items:center;gap:24px;
  font-family:var(--serif);font-style:italic;font-size:36px;font-weight:400;
}
.marquee__item svg{color:var(--clay);flex-shrink:0}

/* ==================================================================
   CHAPTER MARKER
================================================================== */
.chapter{
  padding:36px 0 24px;border-top:1px solid var(--line);
  display:grid;grid-template-columns:200px 1fr auto;
  gap:32px;align-items:center;
}
.chapter__num{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--clay);font-weight:600}
.chapter__name{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink);font-weight:600}
.chapter__hint{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}

.section{padding:80px 0 120px;position:relative}
.section--ink{background:var(--ink);color:var(--paper)}
.section--ink h1,.section--ink h2,.section--ink h3{color:var(--paper)}
.section--ink em{color:var(--clay)}
.section--ink .chapter{border-color:#2b3630}
.section--ink .chapter__name{color:var(--paper)}
.section--paper2{background:var(--paper-2)}

/* ==================================================================
   NUMBERS (marquee-style stats)
================================================================== */
.stats{
  padding:64px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  background:var(--paper);
}
.stats__row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.stat{padding:0 20px;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat__num{
  font-family:var(--serif);font-size:clamp(50px,6vw,88px);
  line-height:.9;font-weight:400;margin-bottom:14px;letter-spacing:-.02em;
}
.stat__num em{color:var(--sage);font-style:italic}
.stat__lbl{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}

/* ==================================================================
   FEATURES — asymmetric grid
================================================================== */
.section--why h2{font-size:clamp(48px,7vw,120px);max-width:14ch}
.section--why h2 em{color:var(--sage)}
.why-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:0;margin-top:60px;
  border-top:1px solid var(--line);
}
.why-item{
  padding:40px 32px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);
  position:relative;
  transition:background .3s;
}
.why-item:nth-child(2n){border-right:0}
.why-item:hover{background:var(--paper-2)}
.why-item__num{
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;color:var(--clay);
  margin-bottom:16px;font-weight:600;
}
.why-item__title{font-family:var(--serif);font-size:32px;font-weight:400;margin-bottom:12px;letter-spacing:-.01em;line-height:1.05}
.why-item__title em{color:var(--sage);font-style:italic}
.why-item__text{color:var(--muted);max-width:44ch;font-size:15px;line-height:1.6}
.why-item__ico{
  position:absolute;top:36px;right:32px;color:var(--sage);opacity:.9;
}

/* Big editorial number cell */
.why-item--big{
  grid-column:span 2;
  padding:48px 32px;
  background:var(--ink);color:var(--paper);
  display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center;
  border-right:0;
}
.why-item--big .why-item__num{color:var(--clay)}
.why-item--big .why-item__title{font-size:clamp(60px,8vw,120px);color:var(--paper);line-height:.9}
.why-item--big .why-item__title em{color:var(--clay)}
.why-item--big .why-item__text{color:#c8c1af}

/* ==================================================================
   GOALS — alternating full-width panels
================================================================== */
.goal-panel{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-bottom:1px solid var(--line);
  min-height:520px;
}
.goal-panel:nth-child(even) .goal-panel__body{order:2}
.goal-panel__img{
  position:relative;overflow:hidden;background:var(--paper-2);
}
.goal-panel__img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 1.2s ease;
}
.goal-panel:hover .goal-panel__img img{transform:scale(1.05)}
.goal-panel__num{
  position:absolute;top:24px;left:24px;
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--paper);background:rgba(19,24,22,.65);
  padding:8px 14px;border-radius:999px;backdrop-filter:blur(6px);
}
.goal-panel__body{
  padding:64px 56px;display:flex;flex-direction:column;justify-content:center;gap:20px;
  background:var(--paper);
}
.goal-panel:nth-child(2) .goal-panel__body{background:var(--paper-2)}
.goal-panel:nth-child(3) .goal-panel__body{background:var(--paper)}
.goal-panel__cat{
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--clay);font-weight:600;
}
.goal-panel h3{
  font-family:var(--serif);font-size:clamp(40px,5vw,72px);
  font-weight:400;line-height:1;letter-spacing:-.02em;
}
.goal-panel h3 em{color:var(--sage);font-style:italic}
.goal-panel__text{max-width:44ch;color:var(--muted);font-size:16px;line-height:1.6}
.goal-panel__meta{
  display:flex;gap:32px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--muted);margin-top:8px;
  padding-top:20px;border-top:1px solid var(--line);
}
.goal-panel__meta strong{color:var(--ink);display:block;font-family:var(--serif);font-size:20px;letter-spacing:normal;text-transform:none;font-weight:500;margin-bottom:2px}
.goal-panel__link{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--sans);font-weight:600;color:var(--ink);
  padding:14px 22px;border:1px solid var(--ink);border-radius:999px;
  align-self:flex-start;margin-top:12px;transition:all .25s;
}
.goal-panel__link:hover{background:var(--ink);color:var(--paper)}
.goal-panel__link svg{transition:transform .3s}
.goal-panel__link:hover svg{transform:translateX(6px)}

/* ==================================================================
   PROCESS — horizontal scroll
================================================================== */
.section--process{padding-bottom:60px}
.process-scroll{
  overflow-x:auto;scroll-snap-type:x mandatory;
  padding:0 var(--edge) 40px;margin:60px calc(-1 * var(--edge)) 0;
  scrollbar-width:none;
}
.process-scroll::-webkit-scrollbar{display:none}
.process-track{
  display:grid;grid-auto-flow:column;grid-auto-columns:480px;gap:24px;
}
.process-card{
  background:var(--paper);border:1px solid var(--line);border-radius:12px;
  padding:40px;scroll-snap-align:start;
  display:flex;flex-direction:column;gap:20px;position:relative;
  min-height:460px;
  transition:transform .3s,box-shadow .3s;
}
.process-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(19,24,22,.1)}
.process-card__step{
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--clay);font-weight:600;
}
.process-card__num{
  font-family:var(--serif);font-size:180px;font-weight:400;
  line-height:.85;color:var(--sage);font-style:italic;
  letter-spacing:-.05em;margin:auto 0;
}
.process-card h3{font-size:28px;letter-spacing:-.01em;margin-bottom:6px}
.process-card p{color:var(--muted);font-size:15px}
.process-card__meta{
  padding:14px 18px;border:1px dashed var(--line);border-radius:8px;
  font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--sage);font-weight:600;
  display:flex;align-items:center;gap:10px;
}
.process-card:nth-child(2) .process-card__num{color:var(--clay)}
.process-card:nth-child(3) .process-card__num{color:var(--sage-dark)}
.process-card:nth-child(4){background:var(--ink);color:var(--paper)}
.process-card:nth-child(4) h3{color:var(--paper)}
.process-card:nth-child(4) p{color:#c8c1af}
.process-card:nth-child(4) .process-card__num{color:var(--clay)}
.process-card:nth-child(4) .process-card__meta{color:var(--clay);border-color:#2b3630}

.process-nav{
  display:flex;justify-content:space-between;align-items:center;
  margin-top:8px;gap:24px;
}
.process-nav__hint{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.process-nav__btns{display:flex;gap:10px}
.process-nav__btns button{
  width:56px;height:56px;border-radius:50%;border:1px solid var(--ink);
  display:grid;place-items:center;transition:all .25s;
}
.process-nav__btns button:hover{background:var(--ink);color:var(--paper)}

/* ==================================================================
   PACKAGES — interactive tabs
================================================================== */
.pkg-head{
  display:flex;justify-content:space-between;align-items:flex-end;
  flex-wrap:wrap;gap:24px;margin-bottom:56px;
}
.pkg-head h2{max-width:14ch}
.pkg-head p{max-width:40ch;color:var(--muted)}

.pkg-tabs{
  display:flex;gap:0;
  border:1px solid var(--ink);border-radius:999px;padding:6px;
  align-self:flex-start;background:var(--paper);
}
.pkg-tab{
  padding:12px 22px;border-radius:999px;
  font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:600;
  transition:all .25s;color:var(--ink);
}
.pkg-tab.is-active{background:var(--ink);color:var(--paper)}

.pkg-stage{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border:1px solid var(--ink);border-radius:20px;overflow:hidden;
  background:var(--paper);
  min-height:560px;
}
.pkg-visual{
  position:relative;overflow:hidden;background:var(--paper-2);
}
.pkg-visual__img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;transition:opacity .5s;
}
.pkg-visual__img.is-active{opacity:1}
.pkg-visual__meta{
  position:absolute;top:24px;left:24px;
  background:rgba(19,24,22,.85);color:var(--paper);
  padding:10px 16px;border-radius:8px;backdrop-filter:blur(8px);
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  display:flex;gap:20px;
}
.pkg-visual__meta strong{color:#fff;display:block;font-family:var(--serif);font-size:18px;letter-spacing:normal;text-transform:none;font-weight:500}

.pkg-content{
  padding:56px 48px;display:flex;flex-direction:column;
}
.pkg-panel{display:none;flex-direction:column;gap:20px;height:100%}
.pkg-panel.is-active{display:flex}
.pkg-panel__top{display:flex;justify-content:space-between;align-items:flex-start}
.pkg-panel__cat{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--clay);font-weight:600}
.pkg-panel__badge{
  padding:6px 12px;background:var(--sage);color:#fff;
  border-radius:6px;font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
}
.pkg-panel h3{
  font-family:var(--serif);font-size:clamp(44px,5.5vw,76px);
  font-weight:400;line-height:.95;letter-spacing:-.02em;margin:8px 0;
}
.pkg-panel h3 em{color:var(--sage);font-style:italic}
.pkg-panel__desc{color:var(--muted);font-size:16px;max-width:44ch}
.pkg-panel__price{
  display:flex;align-items:baseline;gap:8px;
  padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.pkg-panel__price .value{font-family:var(--serif);font-size:56px;font-weight:400;letter-spacing:-.02em;line-height:1}
.pkg-panel__price small{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.pkg-panel__list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pkg-panel__list li{
  display:flex;gap:10px;align-items:flex-start;
  font-size:14px;color:var(--ink);
}
.pkg-panel__list li::before{
  content:"";flex:0 0 18px;height:18px;margin-top:1px;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C7C63' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") no-repeat center/contain;
}
.pkg-panel__cta{margin-top:auto;display:flex;gap:12px;flex-wrap:wrap}

/* ==================================================================
   PULL QUOTE
================================================================== */
.pullquote{
  padding:120px 0;background:var(--ink);color:var(--paper);position:relative;overflow:hidden;
}
.pullquote::before{
  content:"“";position:absolute;top:-40px;left:6%;
  font-family:var(--serif);font-size:400px;line-height:1;color:var(--clay);opacity:.6;
}
.pullquote__inner{position:relative;z-index:1;max-width:1000px;margin:0 auto;padding:0 var(--edge);text-align:center}
.pullquote__text{
  font-family:var(--serif);font-size:clamp(28px,3.5vw,48px);
  font-weight:400;line-height:1.2;letter-spacing:-.01em;margin-bottom:32px;
}
.pullquote__text em{color:var(--clay);font-style:italic}
.pullquote__by{
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#c8c1af;
}

/* ==================================================================
   REVIEWS — dual marquee wall
================================================================== */
.section--reviews{padding-bottom:100px;overflow:hidden}
.reviews-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:56px;flex-wrap:wrap}
.reviews-head h2{max-width:14ch}
.reviews-head .meta{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-align:right}
.reviews-head .meta strong{color:var(--ink);display:block;font-family:var(--serif);font-size:36px;letter-spacing:-.02em;text-transform:none;font-weight:400;margin-bottom:4px}

.reviews-marquee{
  display:flex;flex-direction:column;gap:24px;
  margin:0 calc(-1 * var(--edge));
}
.reviews-row{overflow:hidden;padding:8px 0}
.reviews-row__track{
  display:flex;gap:24px;width:max-content;
  animation:tick 50s linear infinite;
}
.reviews-row--reverse .reviews-row__track{animation-name:tick-rev;animation-duration:60s}
@keyframes tick-rev{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}
.reviews-row:hover .reviews-row__track{animation-play-state:paused}

.review{
  width:400px;flex-shrink:0;
  background:var(--paper);border:1px solid var(--line);border-radius:16px;
  padding:28px;display:flex;flex-direction:column;gap:16px;
}
.review--dark{background:var(--ink);color:var(--paper);border-color:transparent}
.review--dark .review__text{color:#e6e0d0}
.review--dark .review__name{color:#fff}
.review--dark .review__loc{color:#c8c1af}
.review__stars{color:var(--clay);letter-spacing:2px;font-size:14px}
.review__text{color:var(--ink);font-size:15px;line-height:1.6;font-family:var(--serif);font-weight:400;font-style:italic;white-space:normal}
.review__foot{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.review--dark .review__foot{border-color:#2b3630}
.review__avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}
.review__name{font-family:var(--sans);font-weight:600;font-size:14px}
.review__loc{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}

/* ==================================================================
   FAQ
================================================================== */
.section--faq{padding-bottom:120px}
.faq-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:start}
.faq-side{position:sticky;top:120px}
.faq-side h2{margin-bottom:24px;max-width:12ch}
.faq-side p{color:var(--muted);margin-bottom:28px}
.faq{border-top:1px solid var(--ink)}
.faq__item{border-bottom:1px solid var(--ink)}
.faq__q{
  width:100%;padding:28px 0;text-align:left;
  display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;
  font-family:var(--serif);font-size:clamp(20px,2vw,28px);font-weight:400;letter-spacing:-.01em;
  color:var(--ink);
  transition:padding .3s;
}
.faq__q-num{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--clay);font-weight:600}
.faq__q-ico{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--ink);
  display:grid;place-items:center;transition:all .3s;
}
.faq__q-ico svg{transition:transform .3s}
.faq__item.is-open .faq__q-ico{background:var(--ink);color:var(--paper)}
.faq__item.is-open .faq__q-ico svg{transform:rotate(45deg)}
.faq__a{
  max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;
  padding:0 64px 0 44px;color:var(--muted);
}
.faq__a p{font-family:var(--sans);font-size:15px;line-height:1.7}
.faq__item.is-open .faq__a{max-height:400px;padding:0 64px 28px 44px}

/* ==================================================================
   FORM — split full
================================================================== */
.form-block{
  display:grid;grid-template-columns:1fr 1fr;
  min-height:100vh;border-top:1px solid var(--line);
}
.form-block__left{
  background:var(--ink);color:var(--paper);padding:80px 56px;
  display:flex;flex-direction:column;justify-content:space-between;gap:40px;
  position:relative;overflow:hidden;
}
.form-block__left::before{
  content:"";position:absolute;bottom:-200px;right:-200px;width:600px;height:600px;
  background:radial-gradient(circle,var(--sage) 0%,transparent 70%);
  opacity:.35;pointer-events:none;
}
.form-block__top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}
.form-block__top .mono{color:#c8c1af}
.form-block h2{
  font-family:var(--serif);font-size:clamp(56px,7vw,120px);
  font-weight:400;line-height:.9;letter-spacing:-.03em;
  position:relative;z-index:1;color:var(--paper);
}
.form-block h2 em{color:var(--clay);font-style:italic}
.form-block__contacts{position:relative;z-index:1;display:flex;flex-direction:column;gap:16px}
.form-block__contact{
  display:flex;align-items:center;gap:16px;padding:16px 0;border-top:1px solid #2b3630;
}
.form-block__contact:last-child{border-bottom:1px solid #2b3630}
.form-block__contact .ico{
  width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.05);
  color:var(--clay);display:grid;place-items:center;flex-shrink:0;
}
.form-block__contact small{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#c8c1af}
.form-block__contact strong{font-family:var(--serif);font-size:20px;color:#fff;font-weight:500;display:block;margin-top:2px}

.form-block__right{
  padding:80px 56px;background:var(--paper);
  display:flex;flex-direction:column;justify-content:center;
}
.form-block__right .mono{color:var(--muted);margin-bottom:16px}
.form-block__right h3{
  font-family:var(--serif);font-size:44px;font-weight:400;
  letter-spacing:-.02em;margin-bottom:12px;
}
.form-block__right h3 em{color:var(--sage);font-style:italic}
.form-block__right .intro{color:var(--muted);margin-bottom:36px;max-width:36ch}

.form{display:flex;flex-direction:column;gap:20px}
.form__row{display:flex;flex-direction:column;gap:6px}
.form__grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form label{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);font-weight:600}
.form input,.form select{
  padding:16px 0;border:0;border-bottom:1px solid var(--ink);
  background:transparent;font-size:16px;color:var(--ink);
  font-family:var(--serif);font-weight:400;
  transition:border-color .2s;
}
.form input::placeholder{color:#c8c1af}
.form input:focus,.form select:focus{outline:none;border-color:var(--sage)}
.form input:user-invalid,
.form select:user-invalid{
  border-color:#C45C4A;
}
.form__check input:user-invalid{
  outline:2px solid #C45C4A;
  outline-offset:2px;
}
.form select{appearance:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23131816' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right center/16px}
.form__check{display:flex;gap:12px;font-size:12px;color:var(--muted);line-height:1.5;margin-top:8px}
.form__check input{width:auto;padding:0;margin-top:3px;flex-shrink:0}
.form__note{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-top:12px}

/* ==================================================================
   FOOTER — colophon
================================================================== */
.footer{
  background:var(--paper);border-top:1px solid var(--ink);
  padding:80px 0 32px;color:var(--ink);position:relative;
}
.footer__top{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:48px;margin-bottom:80px}
.footer__brand h4{color:var(--ink);margin-bottom:16px;font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:600}
.footer__brand p{color:var(--muted);font-size:13px;line-height:1.7;max-width:36ch}
.footer h4{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:600;color:var(--ink);margin-bottom:20px}
.footer__col ul{display:flex;flex-direction:column;gap:12px}
.footer__col a{color:var(--ink);font-size:14px;font-family:var(--sans)}
.footer__col a:hover{color:var(--sage)}
.footer__science li{margin-bottom:20px}
.footer__science a{display:block;font-size:12px;line-height:1.5;color:var(--muted)}
.footer__science a strong{color:var(--ink);display:block;margin-bottom:3px;font-family:var(--sans);font-size:12px;font-weight:600}
.footer__science a:hover strong{color:var(--sage)}

.footer__giant{
  font-family:var(--serif);font-style:italic;
  font-size:clamp(120px,22vw,340px);
  line-height:.85;color:var(--ink);letter-spacing:-.05em;
  margin:40px 0 20px;
  overflow:hidden;
}
.footer__giant em{color:var(--sage);font-style:italic}

.footer__bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:32px;border-top:1px solid var(--line);
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
  flex-wrap:wrap;gap:16px;
}
.footer__socials{display:flex;gap:10px}
.footer__socials a{
  width:36px;height:36px;border-radius:50%;border:1px solid var(--ink);
  display:grid;place-items:center;color:var(--ink);
}
.footer__socials a:hover{background:var(--ink);color:var(--paper)}

/* ==================================================================
   COOKIE BANNER
================================================================== */
.cookie{
  position:fixed;bottom:24px;left:24px;right:24px;
  background:var(--ink);color:var(--paper);border-radius:16px;
  padding:22px 26px;z-index:90;max-width:920px;margin:0 auto;
  display:flex;gap:22px;align-items:center;
  box-shadow:0 30px 60px rgba(19,24,22,.35);
  transform:translateY(140%);opacity:0;pointer-events:none;
  transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .5s;
}
.cookie.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.cookie__ico{
  width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.06);
  color:var(--clay);display:grid;place-items:center;flex-shrink:0;
}
.cookie__text{font-size:13px;color:#e6e0d0;flex:1;line-height:1.5}
.cookie__text strong{display:block;color:#fff;font-family:var(--serif);font-size:17px;font-weight:500;margin-bottom:2px}
.cookie__text a{color:var(--clay);text-decoration:underline}
.cookie__actions{display:flex;gap:10px;flex-shrink:0}
.cookie .btn{padding:10px 20px;font-size:12px}
.cookie .btn--outline-light{border-color:#4b5951;color:#e6e0d0}

/* ==================================================================
   LEGAL PAGES
================================================================== */
.legal{padding:80px 0 100px;max-width:800px;margin:0 auto}
.legal .back{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  margin-bottom:32px;color:var(--ink);
}
.legal .back:hover{color:var(--sage)}
.legal h1{font-size:clamp(48px,6vw,88px);margin:8px 0 24px;font-weight:400}
.legal h1 em{color:var(--sage);font-style:italic}
.legal .lead-date{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.legal h2{font-size:28px;margin:40px 0 14px;font-weight:500}
.legal p,.legal li{color:var(--ink);font-size:15px;line-height:1.75}
.legal ul{padding-left:20px;list-style:disc}

/* ==================================================================
   THANK YOU
================================================================== */
.thankyou{
  min-height:82vh;display:grid;place-items:center;text-align:center;padding:100px 24px;position:relative;overflow:hidden;
}
.thankyou__inner{max-width:760px;position:relative;z-index:1}
.thankyou .mono{color:var(--clay);margin-bottom:20px;display:inline-block}
.thankyou h1{font-size:clamp(56px,9vw,140px);font-weight:400;line-height:.9;margin-bottom:20px}
.thankyou h1 em{color:var(--sage);font-style:italic}
.thankyou__lead{font-family:var(--serif);font-size:22px;color:var(--ink);max-width:600px;margin:0 auto 36px;line-height:1.4}
.thankyou__btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.thankyou__stamp{position:absolute;top:20%;right:10%}

/* ==================================================================
   REVEAL
================================================================== */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}

/* ==================================================================
   RESPONSIVE
================================================================== */
@media (max-width: 1100px){
  .hero__aside{max-width:400px;margin:0 auto}
  .hero__stamp{display:none}
  .hero__bottom{grid-template-columns:1fr;padding:40px 0 60px}
  .why-grid{grid-template-columns:1fr}
  .why-item{border-right:0!important}
  .why-item--big{grid-column:auto;grid-template-columns:1fr;gap:20px}
  .goal-panel{grid-template-columns:1fr;min-height:auto}
  .goal-panel:nth-child(even) .goal-panel__body{order:0}
  .goal-panel__img{height:320px}
  .goal-panel__body{padding:48px 32px}
  .pkg-stage{grid-template-columns:1fr}
  .pkg-visual{height:280px}
  .pkg-visual__img{position:relative}
  .pkg-content{padding:40px 32px}
  .pkg-panel__list{grid-template-columns:1fr}
  .form-block{grid-template-columns:1fr;min-height:auto}
  .form-block__left{padding:56px 32px}
  .form-block__right{padding:56px 32px}
  .faq-layout{grid-template-columns:1fr;gap:40px}
  .faq-side{position:static}
  .footer__top{grid-template-columns:1fr 1fr;gap:32px}
  .stats__row{grid-template-columns:1fr 1fr;gap:0}
  .stat{padding:20px;border-bottom:1px solid var(--line)}
  .stat:nth-child(2){border-right:0}
  .stat:nth-child(3),.stat:nth-child(4){border-bottom:0}
  .nav{display:none}
  .burger{display:block}
  .header__phone{display:none}
  .header__inner{grid-template-columns:1fr auto}
  .header__right{gap:12px}
}
@media (max-width: 640px){
  .hero__title h1 .line--inset{padding-left:0}
  .marquee__item{font-size:24px}
  .pullquote::before{font-size:280px}
  .process-track{grid-auto-columns:82vw}
  .process-card{padding:32px;min-height:auto}
  .footer__top{grid-template-columns:1fr}
  .form-block__grid-2, .form__grid-2{grid-template-columns:1fr}
  .fab{bottom:20px;right:20px;padding:14px 18px;font-size:10px}
  .cookie{flex-direction:column;align-items:stretch;padding:20px}
  .cookie__actions{justify-content:flex-end}
  .review{width:300px;padding:22px}
  .pkg-tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .chapter{grid-template-columns:1fr;gap:8px}
  .stat__num{font-size:56px}
  .thankyou__stamp{display:none}
}

/* ==================================================================
   UX REBUILD — clear, calm and conversion-focused
   ================================================================== */
:root{
  --ink:#203027;
  --paper:#F8F6F0;
  --paper-2:#EEF3ED;
  --line:#DDE4DA;
  --muted:#68736B;
  --sage:#52745B;
  --sage-dark:#36503D;
  --clay:#C97852;
  --wide:1200px;
  --edge:24px;
}

body::before,.progress,.ticker,.stats,.pullquote,.section--reviews{display:none!important}
body{background:var(--paper);color:var(--ink)}
h1,h2,h3{font-family:var(--serif);font-variation-settings:normal}
h2{font-size:clamp(36px,4.8vw,64px);line-height:1.05}

.wrap{max-width:var(--wide)}
.ad-bar{padding:5px 12px;letter-spacing:.24em;background:#18231D}

/* Header */
.header{background:rgba(248,246,240,.94);border-color:var(--line)}
.header__inner{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 0;
}
.header__left{flex:0 0 auto}
.header__right{flex:0 0 auto}
.logo__letter{
  width:38px;height:38px;border-radius:11px;
  display:grid;place-items:center;
  background:var(--sage);color:#fff;
  font-size:26px;line-height:1;
}
.logo__name{font-family:var(--sans);font-size:14px;line-height:1;letter-spacing:.12em}
.nav{gap:24px}
.nav a{font-family:var(--sans);font-size:13px;letter-spacing:0;text-transform:none;font-weight:600}
.nav a::before{display:none}
.header__phone{border:0;padding:0;font-family:var(--sans);font-size:13px;letter-spacing:0}
.header__cta{padding:13px 20px;font-size:13px}

/* Hero */
.hero{
  padding:72px 0 80px;
  border:0;
  background:linear-gradient(180deg,#F8F6F0 0%,#F1F5EF 100%);
}
.hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.9fr);
  gap:64px;
  align-items:center;
}
.hero__content{max-width:640px}
.hero__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:22px;
  padding:8px 13px;
  border-radius:999px;
  background:#E6EEE5;
  color:var(--sage-dark);
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
}
.hero__eyebrow::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--clay);
}
.hero h1{
  font-size:clamp(42px,5.4vw,68px);
  line-height:1.05;
  letter-spacing:-.035em;
  font-weight:500;
  margin:0 0 20px;
}
.hero h1 em{
  color:var(--sage);
  font-style:italic;
}
.hero__lead{
  font-family:var(--sans);
  font-size:18px;
  line-height:1.7;
  color:#4D5B53;
  max-width:540px;
  margin:0 0 28px;
}
.hero__lead::first-letter{all:unset}
.hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:28px;
}
.hero__actions .btn{width:auto}
.hero__points{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 18px;
  margin:0;
  padding:0;
  list-style:none;
}
.hero__points li{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:14px;
  font-weight:600;
  color:var(--ink);
}
.hero__points li::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--clay);
  flex:0 0 auto;
}
.hero__media{position:relative}
.hero__img{
  position:relative;
  aspect-ratio:4/5;
  border-radius:28px;
  overflow:hidden;
  border:0;
  box-shadow:0 24px 60px rgba(32,48,39,.16);
}
.hero__img img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero__img::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
  pointer-events:none;
}
.hero__stamp,
.hero__img-tag,
.hero__title .badge,
.hero__bottom,
.hero__aside{display:none!important}
.hero__note{
  position:absolute;
  left:20px;
  right:20px;
  bottom:20px;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:16px 18px;
  border-radius:16px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(8px);
  box-shadow:0 12px 30px rgba(32,48,39,.12);
}
.hero__note strong{
  font-size:14px;
  color:var(--ink);
}
.hero__note span{
  font-size:13px;
  color:var(--muted);
  line-height:1.4;
}

/* Static benefit strip */
.marquee{
  display:block;background:#fff;color:var(--ink);
  padding:26px 0;border:1px solid var(--line);border-left:0;border-right:0;
}
.marquee__track{
  max-width:1200px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
  transform:none!important;animation:none!important;white-space:normal;
}
.marquee__item{
  display:flex;justify-content:center;gap:10px;
  font-family:var(--sans);font-style:normal;font-size:14px;font-weight:600;
  text-align:center;
}
.marquee__item:nth-child(n+5){display:none}
.marquee__item em{font-family:var(--sans);font-style:normal;color:inherit}
.marquee__item svg{color:var(--clay);width:9px}

/* Section rhythm */
.section{padding:96px 0}
.chapter{
  display:block;padding:0;border:0;margin-bottom:18px;
}
.chapter__num,.chapter__hint{display:none}
.chapter__name{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--sans);font-size:12px;letter-spacing:.12em;
  color:var(--sage);font-weight:700;
}
.chapter__name::before{content:"";width:24px;height:2px;background:var(--clay)}

/* Why cards */
.section--why h2{font-size:clamp(36px,4.8vw,64px);max-width:760px}
.why-grid{
  grid-template-columns:repeat(3,1fr);
  gap:18px;margin-top:48px;border:0;
}
.why-item,.why-item:nth-child(2n){
  padding:28px;border:1px solid var(--line)!important;border-radius:18px;
  background:#fff;min-height:240px;
}
.why-item:hover{background:#fff;transform:translateY(-4px);box-shadow:0 18px 45px rgba(32,48,39,.08)}
.why-item__num{font-family:var(--sans);font-size:11px;letter-spacing:.08em}
.why-item__title{font-size:26px;line-height:1.12;padding-right:38px}
.why-item__text{font-size:14px;line-height:1.7}
.why-item--big{
  grid-column:span 2!important;
  grid-template-columns:1fr;gap:8px;
  background:var(--sage)!important;color:#fff;
}
.why-item--big .why-item__title{font-size:34px;color:#fff}
.why-item--big .why-item__title em{color:#F5D7C7}
.why-item--big .why-item__text{color:#E8F0E8;max-width:62ch}

/* Goals */
#goals{padding:96px 24px;background:var(--paper-2)}
#goals>.wrap{padding:0}
#goals>.wrap .section{padding:0 0 42px}
.goal-panel{
  max-width:1200px;margin:0 auto 24px;
  min-height:430px;border:1px solid var(--line);
  border-radius:22px;overflow:hidden;background:#fff;
  box-shadow:0 10px 32px rgba(32,48,39,.05);
}
.goal-panel__body,.goal-panel:nth-child(2) .goal-panel__body,.goal-panel:nth-child(3) .goal-panel__body{
  background:#fff;padding:48px;
}
.goal-panel__img{min-height:430px}
.goal-panel h3{font-size:clamp(34px,4vw,52px)}
.goal-panel__meta{display:none}
.goal-panel__link{margin-top:6px;background:var(--sage);border-color:var(--sage);color:#fff}
.goal-panel__link:hover{background:var(--sage-dark);border-color:var(--sage-dark)}

/* Process: normal four-card grid, no hidden horizontal interaction */
.section--process{padding:96px 0;background:var(--paper)}
.process-scroll{overflow:visible;margin:46px 0 0;padding:0}
.process-track{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
}
.process-card{
  min-height:360px;padding:28px;border-radius:18px;box-shadow:none;
}
.process-card__num{
  font-size:72px;margin:18px 0;color:#B9CABA!important;
}
.process-card__meta{margin-top:auto}
.process-card:nth-child(4){background:var(--sage)}
.process-nav{display:none}

/* Packages */
#packages{background:#fff}
.pkg-head{align-items:flex-start}
.pkg-head h2{max-width:760px}
.pkg-tabs{border-color:var(--line);background:var(--paper)}
.pkg-tab{font-family:var(--sans);font-size:13px;letter-spacing:0;text-transform:none}
.pkg-tab.is-active{background:var(--sage)}
.pkg-stage{border-color:var(--line);border-radius:24px;box-shadow:0 16px 50px rgba(32,48,39,.08)}
.pkg-content{padding:48px}
.pkg-panel h3{font-size:clamp(40px,4.8vw,62px)}
.pkg-panel__cat{font-family:var(--sans);letter-spacing:.08em}
.pkg-panel__price .value{font-size:48px}

/* FAQ */
.section--faq{background:var(--paper-2)}
.faq-layout{gap:72px}
.faq-side h2{max-width:500px}
.faq{border-top-color:var(--line)}
.faq__item{border-bottom-color:var(--line)}
.faq__q{font-family:var(--sans);font-size:18px;font-weight:600}
.faq__q-ico{border-color:var(--line);background:#fff}

/* Form */
.form-block{min-height:auto;grid-template-columns:.9fr 1.1fr}
.form-block__left{padding:72px 7vw;background:var(--sage)}
.form-block__left::before{display:none}
.form-block h2{font-size:clamp(46px,5.5vw,78px);line-height:1}
.form-block__right{padding:72px 7vw}
.form-block__right h3{font-size:38px}
.form input,.form select{
  padding:14px 16px;border:1px solid var(--line);border-radius:10px;
  background:#fff;font-family:var(--sans);font-size:15px;
}
.form select{background:#fff}

/* Footer */
.footer{padding:72px 0 28px;background:#18231D;color:#E9EFEA;border:0}
.footer h4,.footer__brand h4{color:#fff}
.footer__brand p,.footer__science a{color:#AEBBB2}
.footer__col a,.footer__science a strong{color:#E9EFEA}
.footer__giant{display:none}
.footer__bottom{border-color:#334139;color:#AEBBB2}
.footer__socials a{border-color:#718078;color:#fff}
.footer__socials a:hover{background:#fff;color:var(--ink)}

/* Floating CTA and cookie */
.fab{background:var(--clay);font-family:var(--sans);font-size:12px;letter-spacing:0;text-transform:none}
.fab:hover{background:#B66543}
.cookie{background:#fff;color:var(--ink);border:1px solid var(--line)}
.cookie__text{color:var(--muted)}
.cookie__text strong{color:var(--ink)}
.cookie__ico{background:var(--paper-2);color:var(--sage)}
.cookie .btn--outline-light{border-color:var(--line);color:var(--ink)}
.cookie .btn--outline-light:hover{background:var(--paper-2)}

@media (max-width:1050px){
  .header__cta{display:none}
  .hero__grid{grid-template-columns:1fr 360px;gap:40px}
  .why-grid{grid-template-columns:1fr 1fr}
  .process-track{grid-template-columns:1fr 1fr}
}

@media (max-width:820px){
  .hero{padding:48px 0 56px}
  .hero__grid{grid-template-columns:1fr;gap:36px}
  .hero__media{width:100%;max-width:560px}
  .hero__img{aspect-ratio:16/10}
  .why-grid{grid-template-columns:1fr}
  .why-item--big{grid-column:auto!important}
  .goal-panel{grid-template-columns:1fr}
  .goal-panel:nth-child(even) .goal-panel__body{order:initial}
  .goal-panel__img{height:280px;min-height:0}
  .process-track{grid-template-columns:1fr 1fr}
  .pkg-stage{grid-template-columns:1fr}
  .form-block{grid-template-columns:1fr}
  .footer__top{grid-template-columns:1fr 1fr}
}

@media (max-width:620px){
  :root{--edge:18px}
  .header__phone{display:none}
  .hero h1{font-size:40px}
  .hero__lead{font-size:16px}
  .hero__actions{flex-direction:column}
  .hero__actions .btn{width:100%}
  .hero__points{grid-template-columns:1fr}
  .marquee__track{grid-template-columns:1fr 1fr}
  .marquee__item{justify-content:flex-start;font-size:13px}
  .section,#goals,.section--process{padding-top:72px;padding-bottom:72px}
  #goals{padding-left:16px;padding-right:16px}
  .goal-panel__body{padding:30px!important}
  .process-track{grid-template-columns:1fr}
  .process-card{min-height:300px}
  .pkg-tabs{width:100%}
  .pkg-tab{flex:1;padding:11px 12px}
  .pkg-content{padding:30px 24px}
  .faq__q{grid-template-columns:auto 1fr auto;gap:12px;font-size:16px}
  .form-block__left,.form-block__right{padding:54px 24px}
  .footer__top{grid-template-columns:1fr}
  .fab{display:none}
}
