/* Сайт Анастасии — обычный CSS (перенесён из проекта) */
:root{--font-sans:'Golos Text',sans-serif;--font-display:'Cormorant Garamond',Georgia,serif}
*,*::before,*::after{box-sizing:border-box}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
img{display:block;max-width:100%;height:auto}
.i{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
[hidden]{display:none!important}
/* кнопки */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-size:14px;font-weight:500;height:36px;padding:0 16px;border-radius:6px;transition:color .2s,background .2s}
.btn-petal{border-radius:9999px;background:var(--primary);color:var(--primary-foreground);padding:0 28px}
.btn-petal:hover{background:color-mix(in oklab,var(--primary) 90%,transparent)}
.btn-editorial{border-radius:0;border-bottom:1px solid var(--foreground);padding:0}
.btn-editorial:hover{color:var(--primary)}
.btn-ghost:hover{background:var(--accent)}
.btn-icon{width:36px;padding:0}
.nav-right{display:flex;align-items:center;gap:8px}
.mt-3{margin-top:12px}
.rot-up{transform:rotate(-90deg)}
.friendly .i{width:14px;height:14px}.format .i{width:17px;height:17px}
.faq-trigger[aria-expanded=true] .i-plus,.faq-trigger[aria-expanded=false] .i-minus{display:none}
.mobile-menu[aria-expanded=true] .i-menu,.mobile-menu[aria-expanded=false] .i-x{display:none}
/* стили страницы */

:root {
  --background: oklch(0.982 0.009 90);
  --foreground: oklch(0.265 0.04 352);
  --card: oklch(0.982 0.009 90);
  --card-foreground: var(--foreground);
  --popover: var(--background);
  --popover-foreground: var(--foreground);
  --primary: oklch(0.49 0.12 356);
  --primary-foreground: oklch(0.985 0.009 90);
  --secondary: oklch(0.89 0.065 357);
  --secondary-foreground: var(--foreground);
  --muted: oklch(0.949 0.03 358);
  --muted-foreground: oklch(0.46 0.035 352);
  --accent: oklch(0.87 0.043 149);
  --accent-foreground: var(--foreground);
  --destructive: oklch(0.56 0.18 25);
  --destructive-foreground: var(--background);
  --border: oklch(0.79 0.045 356);
  --input: var(--border);
  --ring: var(--primary);
  --radius: 0.5rem;
  --blush: oklch(0.924 0.044 358);
  --pink-paper: oklch(0.956 0.029 356);
  --sage: oklch(0.86 0.046 151);
  --butter: oklch(0.925 0.097 96);
  --hero-wash: oklch(0.92 0.042 358 / 22%);
  --shadow-editorial: 0 8px 24px oklch(0.265 0.04 352 / 7%);
}

  * { border-color: var(--border); }
  html { scroll-behavior: smooth; scroll-padding-top: 30px; }
  body { margin: 0; background: var(--background); color: var(--foreground); font-family: var(--font-sans); font-size: 14px; line-height: 1.65; }
  h1,h2,h3,p { margin: 0; }
  h1,h2,h3 { font-weight: 500; }
  ::selection { background: var(--sage); color: var(--foreground); }
  a,button { -webkit-tap-highlight-color: transparent; }
.site-frame { margin: 0 auto; max-width: 1600px; padding: 0 42px; }
.nav { min-height: 103px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.wordmark { font-size:23px; font-weight:600; line-height:1.03; }
.wordmark span { display:block; }
.nav-links { display:flex; gap:27px; font-size:14px; }
.nav-links a { transition:color .2s; }
.nav-links a:hover { color:var(--primary); }
.nav-cta { font-size:12px; height:39px; }
.hero { position:relative; min-height:620px; overflow:hidden; background:var(--blush); }
.hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero::after { content:''; position:absolute; inset:0; background:var(--hero-wash); pointer-events:none; }
.hero-content { position:relative; z-index:1; width:58%; padding:80px 64px 72px; }
.eyebrow { font-size:10px; text-transform:uppercase; font-weight:500; letter-spacing:0; display:flex; align-items:center; gap:10px; }
.eyebrow::before { content:''; width:21px; height:1px; background:currentColor; }
.hero h1 { font-size:76px; line-height:.99; margin:25px 0 24px; font-family:var(--font-display); }
.hero h1 em { color:var(--primary); font-weight:500; }
.hero-intro { font-size:15px; max-width:310px; line-height:1.7; }
.hero-action { height:45px; margin-top:29px; }
.handwritten { font-family:var(--font-display); font-style:italic; font-size:24px; }
.hero-note { position:absolute; right:24px; bottom:26px; z-index:2; background:var(--butter); color:var(--foreground); padding:15px 21px; transform:rotate(-7deg); font-family:var(--font-display); font-size:20px; box-shadow:var(--shadow-editorial); }
.flower { width:87px; height:87px; flex:none; color:var(--primary); }
.hero-flower { position:absolute; left:47%; bottom:62px; z-index:2; transform:rotate(12deg); }
.ribbon { display:flex; align-items:center; justify-content:space-around; gap:24px; height:43px; overflow:hidden; background:var(--sage); border-block:1px solid var(--foreground); white-space:nowrap; font-size:10px; text-transform:uppercase; }
.ribbon b { font-size:22px; font-weight:400; }
.section-label { font-size:10px; text-transform:uppercase; margin-bottom:26px; }
.display-title { font-family:var(--font-display); font-size:53px; line-height:1.07; }
.display-title em { font-weight:500; color:var(--primary); }
.about { text-align:center; padding:76px 40px 69px; background:var(--pink-paper); }
.about-title { max-width:780px; margin:0 auto; font-size:47px; line-height:1.13; font-family:var(--font-display); }
.about-title em { background:var(--sage); padding:0 8px; font-weight:500; }
.about-text { max-width:665px; margin:28px auto 0; font-size:14px; line-height:1.8; }
.friendly { display:inline-flex; align-items:center; gap:10px; font-size:12px; border:1px solid var(--border); border-radius:50%; padding:13px 28px; margin-top:24px; transform:rotate(-3deg); }
.help { background:var(--blush); padding:66px 64px 70px; }
.section-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:36px; }
.section-heading .handwritten { max-width:180px; transform:rotate(-7deg); }
.help-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.help-item { min-height:156px; border:1px solid var(--border); background:var(--pink-paper); padding:22px 20px; border-radius:4px; display:flex; flex-direction:column; gap:23px; }
.help-number { font-family:var(--font-display); font-style:italic; font-size:21px; color:var(--primary); }
.help-item p { font-size:15px; line-height:1.6; }
.help-item:last-child { background:var(--butter); }
.approach { padding:78px 64px; display:grid; grid-template-columns:1fr 1fr; gap:75px; align-items:center; }
.portrait-wrap { position:relative; max-width:390px; width:100%; margin:auto; }
.portrait { width:100%; height:440px; object-fit:cover; }
.portrait-caption { position:absolute; left:-23px; bottom:30px; background:var(--sage); padding:9px 24px; transform:rotate(-6deg); }
.approach-copy p { margin-top:23px; font-size:14px; }
.approach-copy .flower { width:62px; height:62px; margin-top:30px; }
.sessions { background:var(--pink-paper); border-block:1px solid var(--border); padding:67px 64px; }
.sessions-top { display:flex; justify-content:space-between; align-items:end; gap:25px; margin-bottom:34px; }
.format { font-size:12px; display:flex; align-items:center; gap:9px; }
.price-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.price-item { border:1px solid var(--border); border-radius:4px; padding:32px; }
.price-item:first-child { background:var(--blush); }
.price-name { font-size:14px; }
.price { font-family:var(--font-display); font-size:62px; line-height:1.1; margin:18px 0 10px; }
.price span { font-family:var(--font-sans); font-size:11px; }
.price-description { font-size:15px; max-width:340px; }
.price-item .hero-action { margin-top:25px; }
.education { padding:70px 64px; display:grid; grid-template-columns:1fr 1fr; gap:65px; }
.education-note { font-size:15px; color:var(--muted-foreground); margin-top:25px; }
.education-list { border-top:1px solid var(--border); }
.education-row { border-bottom:1px solid var(--border); padding:22px 0; display:flex; gap:22px; }
.education-row .help-number { min-width:24px; }
.education-row h3 { font-family:var(--font-display); font-size:25px; }
.education-row p { font-size:12px; margin-top:7px; color:var(--muted-foreground); }
.faq { background:var(--blush); padding:65px 64px 70px; display:grid; grid-template-columns:0.85fr 1.15fr; gap:65px; }
.faq-intro .handwritten { margin-top:24px; }
.faq-list { border-top:1px solid var(--border); }
.faq-item { border-bottom:1px solid var(--border); }
.faq-trigger { display:flex; justify-content:space-between; width:100%; align-items:center; padding:20px 0; text-align:left; white-space:normal; height:auto; font-size:16px; font-weight:400; }
.faq-answer { padding:0 28px 22px 0; font-size:15px; line-height:1.8; }
.contacts { text-align:center; padding:75px 40px 65px; background:repeating-linear-gradient(90deg,var(--pink-paper) 0,var(--pink-paper) 25px,var(--blush) 25px,var(--blush) 50px); }
.contacts .display-title { font-size:65px; }
.contacts p { max-width:440px; margin:22px auto 0; font-size:13px; }
.contact-links { display:flex; justify-content:center; gap:22px; margin-top:28px; }
.contact-links a { min-width:145px; height:43px; }
.contact-pending { font-size:10px; color:var(--muted-foreground); margin-top:20px; }
.footer { display:flex; justify-content:space-between; align-items:center; padding:27px 0; font-size:10px; }
.footer .wordmark { font-size:17px; }
.mobile-menu { display:none; }
@media(min-width:1450px) { .hero-content { padding-top:110px; } .hero { min-height:700px; } }
@media(max-width:1050px) {
  .site-frame { padding:0 24px; }
  .nav-links { gap:16px; }
  .hero-content { padding:65px 40px; width:62%; }
  .hero h1 { font-size:65px; }
  .hero { min-height:575px; }
  .help,.sessions,.education,.faq { padding:55px 40px; }
  .help-grid { grid-template-columns:repeat(2,1fr); }
  .approach { padding:60px 40px; gap:40px; }
  .education,.faq { gap:35px; }
}
@media(max-width:700px) {
  .site-frame { padding:0 14px; }
  .nav { min-height:85px; gap:12px; flex-wrap:wrap; }
  .wordmark { font-size:19px; }
  .nav-links { display:none; }
  .nav-cta { font-size:10px; height:35px; padding-inline:15px; }
  .mobile-menu { display:inline-flex; }
  .mobile-links { width:100%; display:flex; flex-wrap:wrap; gap:18px; padding-bottom:20px; font-size:14px; }
  .hero { min-height:720px; }
  .hero-photo { top:auto; bottom:0; height:360px; object-position:center 30%; }
  .hero::after { background:none; }
  .hero-content { padding:35px 24px; width:100%; }
  .hero h1 { font-size:48px; max-width:330px; margin:18px 0; }
  .hero-intro { max-width:255px; font-size:13px; }
  .hero-action { margin-top:21px; }
  .hero-flower { left:19px; bottom:80px; width:65px; height:65px; }
  .hero-note { right:15px; bottom:22px; font-size:18px; }
  .ribbon { justify-content:flex-start; padding-inline:20px; gap:22px; }
  .about { padding:49px 23px; }
  .about-title { font-size:34px; }
  .about-text { font-size:13px; }
  .friendly { font-size:10px; padding:11px 19px; }
  .help,.sessions,.education,.faq { padding:44px 24px; }
  .display-title { font-size:41px; }
  .section-heading { gap:10px; }
  .section-heading .handwritten { font-size:19px; max-width:95px; }
  .help-grid { gap:10px; }
  .help-item { padding:17px 13px; gap:17px; min-height:175px; }
  .help-item p { font-size:13px; }
  .approach { grid-template-columns:1fr; padding:48px 24px; gap:38px; }
  .portrait { height:350px; }
  .portrait-caption { left:-12px; }
  .approach-copy p { font-size:13px; }
  .sessions-top { align-items:start; flex-direction:column; }
  .price-grid { grid-template-columns:1fr; gap:13px; }
  .price-item { padding:26px; }
  .price { font-size:55px; }
  .education,.faq { grid-template-columns:1fr; gap:30px; }
  .contacts { padding:48px 22px; }
  .contacts .display-title { font-size:49px; }
  .contact-links { gap:10px; flex-wrap:wrap; }
  .contact-links a { min-width:123px; }
  .footer { gap:20px; align-items:start; }
  .footer p { max-width:180px; text-align:right; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none !important; animation:none !important; } }

.price i{font-style:normal}
.price .m-br{display:none}
@media(max-width:700px){
  .price .sl{display:none}
  .price .m-br{display:block}
  .hero{min-height:0}
  .hero-photo,.hero-note,.hero-flower{display:none}
  .hero-content{padding:35px 24px 48px}
}

.mobile-photo{display:none}
@media(max-width:700px){
  .ribbon{display:none}
  .mobile-photo{display:block;position:relative}
  .mobile-photo img{width:100%;height:420px;object-fit:cover;object-position:center 30%}
  .mobile-photo-note{position:absolute;right:15px;bottom:22px;background:var(--butter);color:var(--foreground);padding:15px 21px;transform:rotate(-7deg);font-family:var(--font-display);font-size:18px;box-shadow:var(--shadow-editorial)}
}

.nav-icons{display:flex;gap:8px}
.nav-icons .btn{width:38px;height:38px}
.nav-icons .i{width:18px;height:18px}
@media(max-width:700px){
  .nav-right{gap:6px}
  .nav-icons{gap:6px}
  .nav-icons .btn{width:34px;height:34px}
}