/* fotokniga-podrobno-guide.css — FAITHFUL from preview (3).html */
/* 2026-09-08.04: .fk-page tokens; wrap=1440; site harden only */

/* =========================================================
   ФОТОКНИГА — DETAIL PAGE
   Только контент страницы.
   Меню и подвал намеренно отсутствуют.
   Максимальная ширина сайта: 1440px.
   ========================================================= */

.fk-page{
  --fk-white:#ffffff;

  --fk-bg:#ffffff;
  --fk-soft:#f8f6fa;
  --fk-soft-2:#f3eff7;
  --fk-warm:#fbf8f3;

  --fk-text:#211a25;
  --fk-heading:#291630;
  --fk-muted:#5d5562;
  --fk-muted-2:#756d79;

  --fk-purple:#57287e;
  --fk-purple-hover:#431e62;
  --fk-purple-dark:#321940;
  --fk-purple-deep:#25132f;

  --fk-border:#ded7e2;
  --fk-border-strong:#c9bbd1;

  --fk-green:#315f49;
  --fk-green-soft:#e3efe8;

  --fk-gold:#a67b43;
  --fk-gold-soft:#f4eadc;

  --fk-shadow:
    0 18px 48px rgba(47,28,56,.08);

  --fk-shadow-big:
    0 28px 70px rgba(47,28,56,.14);

  --fk-radius-xl:30px;
  --fk-radius-lg:23px;
  --fk-radius-md:17px;
  --fk-radius-sm:13px;

  --fk-wrap:1440px;

  color:var(--fk-text);
  background:var(--fk-bg);

  font-family:
    Manrope,
    Nunito,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;

  -webkit-font-smoothing:antialiased;
}


.fk-page *,
.fk-page *::before,
.fk-page *::after{
  box-sizing:border-box;
}


.fk-page img{
  max-width:100%;
}


.fk-page a{
  color:inherit;
}


.fk-wrap{
  width:min(
    var(--fk-wrap),
    calc(100% - 64px)
  );

  margin-inline:auto;
}


.fk-section{
  padding:84px 0;
}


.fk-section--soft{
  background:var(--fk-soft);
}


.fk-section--purple{
  background:
    radial-gradient(
      780px 380px at 100% 0%,
      rgba(108,64,145,.09),
      transparent 66%
    ),
    var(--fk-soft-2);
}


.fk-section--warm{
  background:
    radial-gradient(
      700px 360px at 0 100%,
      rgba(174,129,79,.07),
      transparent 65%
    ),
    var(--fk-warm);
}


/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.fk-kicker{
  display:block;

  margin:0 0 10px;

  color:#6b4a79;

  font-size:14px;
  line-height:1.3;
  font-weight:800;
}


.fk-h2{
  max-width:900px;

  margin:0 0 16px;

  color:var(--fk-heading);

  font-size:clamp(32px,3.3vw,48px);
  line-height:1.08;
  letter-spacing:-.045em;
}


.fk-lead{
  max-width:820px;

  margin:0;

  color:var(--fk-muted);

  font-size:17px;
  line-height:1.7;
}


.fk-note{
  margin:20px 0 0;

  color:#4f4753;

  font-size:15px;
  line-height:1.62;
}


.fk-text-link{
  color:var(--fk-purple);

  font-size:15px;
  font-weight:800;

  text-decoration:none;
}


.fk-text-link:hover{
  text-decoration:underline;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.fk-actions{
  display:flex;
  flex-wrap:wrap;

  gap:12px;

  margin-top:29px;
}


.fk-btn{
  min-height:52px;
  padding:0 23px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border:1.5px solid transparent;
  border-radius:14px;

  font-size:16px;
  line-height:1.2;
  font-weight:800;

  text-decoration:none;

  transition:
    transform .18s ease,
    background .18s ease,
    border-color .18s ease;
}


.fk-btn:hover{
  transform:translateY(-1px);
  text-decoration:none;
}


.fk-btn--primary{
  color:#fff;
  background:var(--fk-purple);

  box-shadow:
    0 12px 27px rgba(87,40,126,.18);
}


.fk-btn--primary:hover{
  color:#fff;
  background:var(--fk-purple-hover);
}


.fk-btn--secondary{
  color:#432151;
  background:#fff;

  border-color:#b8a6c1;
}


.fk-btn--secondary:hover{
  background:#f2edf5;
}


/* =========================================================
   BREADCRUMBS
   ========================================================= */

.fk-breadcrumbs{
  display:flex;
  flex-wrap:wrap;

  gap:8px;

  margin:0 0 29px;

  color:#716a74;

  font-size:14px;
}


.fk-breadcrumbs a{
  color:#514a55;

  text-decoration:none;
}


.fk-breadcrumbs a:hover{
  color:var(--fk-purple);
}


/* =========================================================
   HERO
   ========================================================= */

.fk-hero{
  padding:48px 0 66px;

  background:
    radial-gradient(
      880px 450px at 100% -8%,
      rgba(112,67,150,.13),
      transparent 65%
    ),
    linear-gradient(
      180deg,
      #faf8fb 0%,
      #ffffff 100%
    );
}


.fk-hero__grid{
  display:grid;

  grid-template-columns:
    minmax(0,1.04fr)
    minmax(430px,.96fr);

  gap:64px;
  align-items:center;
}


.fk-hero__label{
  display:block;

  margin:0 0 12px;

  color:#684775;

  font-size:14px;
  font-weight:800;
}


.fk-hero h1{
  max-width:890px;

  margin:0;

  color:var(--fk-heading);

  font-size:clamp(40px,4.6vw,64px);
  line-height:1.035;
  letter-spacing:-.055em;
}


.fk-hero__lead{
  max-width:790px;

  margin:23px 0 0;

  color:#4f4752;

  font-size:18px;
  line-height:1.65;
}


.fk-hero__hint{
  max-width:720px;

  margin:21px 0 0;
  padding:16px 18px;

  border:1px solid #ddcfe4;
  border-radius:14px;

  background:#f0eaf4;

  color:#403344;

  font-size:15px;
  line-height:1.58;
}


.fk-hero__hint strong{
  color:#312039;
}


.fk-hero__micro{
  margin:14px 0 0;

  color:#685f6c;

  font-size:13px;
  line-height:1.5;
}


.fk-hero__photo{
  position:relative;

  margin:0;

  overflow:hidden;

  border-radius:29px;

  background:#eee9ef;

  box-shadow:var(--fk-shadow-big);
}


.fk-hero__photo img{
  display:block;

  width:100%;
  height:560px;

  object-fit:cover;
}


.fk-hero__photo figcaption{
  position:absolute;
  left:16px;
  bottom:16px;

  padding:9px 12px;

  border-radius:10px;

  background:#291c2e;
  color:#fff;

  font-size:13px;
  font-weight:800;
}


/* =========================================================
   TRUST STRIP
   ========================================================= */

.fk-trust{
  border-top:1px solid var(--fk-border);
  border-bottom:1px solid var(--fk-border);

  background:#fff;
}


.fk-trust__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}


.fk-trust__item{
  min-height:82px;

  display:flex;
  align-items:center;

  padding:18px 24px;

  border-right:1px solid var(--fk-border);

  color:#443c47;

  font-size:14px;
  line-height:1.45;
  font-weight:750;
}


.fk-trust__item:last-child{
  border-right:0;
}


.fk-trust__check{
  width:23px;
  height:23px;

  display:grid;
  place-items:center;

  flex:0 0 23px;

  margin-right:11px;

  border-radius:50%;

  color:var(--fk-green);
  background:var(--fk-green-soft);

  font-size:11px;
  font-weight:900;
}


/* =========================================================
   SHORT PAGE NAV
   ========================================================= */

.fk-nav{
  border-bottom:1px solid var(--fk-border);

  background:#fff;
}


.fk-nav__inner{
  min-height:60px;

  display:flex;
  align-items:center;

  gap:29px;

  overflow-x:auto;
  scrollbar-width:none;
}


.fk-nav__inner::-webkit-scrollbar{
  display:none;
}


.fk-nav a{
  flex:0 0 auto;

  padding:18px 0;

  color:#493f4c;

  font-size:14px;
  font-weight:800;

  text-decoration:none;
}


.fk-nav a:hover{
  color:var(--fk-purple);
}


/* =========================================================
   CHOICE
   ========================================================= */

.fk-choice{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:20px;

  margin-top:36px;
}


.fk-choice-card{
  overflow:hidden;

  border:1px solid var(--fk-border);
  border-radius:24px;

  background:#fff;

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease;
}


.fk-choice-card:hover{
  transform:translateY(-2px);

  border-color:#c5b6cd;

  box-shadow:var(--fk-shadow);
}


.fk-choice-card__media{
  height:290px;

  overflow:hidden;

  background:#eee9ef;
}


.fk-choice-card__media img{
  display:block;

  width:100%;
  height:100%;

  object-fit:cover;
}


.fk-choice-card__body{
  padding:28px;
}


.fk-choice-card__tag{
  display:inline-flex;

  margin-bottom:12px;
  padding:7px 10px;

  border:1px solid #d3c6da;
  border-radius:999px;

  color:#50355a;
  background:#f2edf5;

  font-size:12px;
  font-weight:850;
}


.fk-choice-card h3{
  margin:0 0 10px;

  color:#321b3b;

  font-size:24px;
  line-height:1.2;
}


.fk-choice-card p{
  margin:0;

  color:var(--fk-muted);

  font-size:16px;
  line-height:1.65;
}


.fk-choice-card .fk-actions{
  margin-top:21px;
}


/* =========================================================
   VISUAL FOR CHILD BOOK
   Пока нет подтверждённого реального фото.
   Это НЕ фотография продукта — только UI-декор.
   ========================================================= */

.fk-story-visual{
  position:relative;

  width:100%;
  height:100%;

  overflow:hidden;

  background:
    radial-gradient(
      circle at 28% 28%,
      rgba(255,230,151,.85) 0 4%,
      transparent 5%
    ),
    radial-gradient(
      circle at 72% 20%,
      rgba(255,255,255,.75) 0 3%,
      transparent 4%
    ),
    radial-gradient(
      circle at 80% 70%,
      rgba(223,190,255,.75) 0 4%,
      transparent 5%
    ),
    linear-gradient(
      135deg,
      #8e65aa,
      #5d3976 55%,
      #342046
    );
}


.fk-story-visual::before,
.fk-story-visual::after{
  content:"";

  position:absolute;
  top:58px;

  width:34%;
  height:180px;

  border-radius:8px 8px 18px 8px;

  background:#fff;

  box-shadow:
    0 18px 30px rgba(38,20,48,.18);
}


.fk-story-visual::before{
  left:15%;

  transform:
    rotate(-5deg)
    skewY(1deg);
}


.fk-story-visual::after{
  right:15%;

  transform:
    rotate(5deg)
    skewY(-1deg);
}


.fk-story-visual__star{
  position:absolute;
  z-index:2;

  left:50%;
  top:105px;

  width:66px;
  height:66px;

  transform:translateX(-50%);

  border-radius:50%;

  background:
    radial-gradient(
      circle at 50% 40%,
      #ffe99a,
      #c69a44
    );

  box-shadow:
    0 10px 22px rgba(59,34,68,.20);
}


/* =========================================================
   USE CASES / CHIPS
   ========================================================= */

.fk-use-cases{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:13px;

  margin-top:32px;
}


.fk-use{
  padding:19px;

  border:1px solid var(--fk-border);
  border-radius:17px;

  background:#fff;
}


.fk-use strong{
  display:block;

  margin-bottom:5px;

  color:#35223d;

  font-size:15px;
}


.fk-use span{
  color:var(--fk-muted);

  font-size:13px;
  line-height:1.5;
}


/* =========================================================
   BIG HELP CARD
   ========================================================= */

.fk-help{
  display:grid;

  grid-template-columns:1fr auto;

  gap:30px;
  align-items:center;

  margin-top:30px;
  padding:26px 28px;

  border:1px solid #d9cce0;
  border-radius:20px;

  background:#f2edf5;
}


.fk-help h3{
  margin:0 0 7px;

  color:#38253f;

  font-size:20px;
}


.fk-help p{
  margin:0;

  color:#5a515e;

  font-size:15px;
  line-height:1.6;
}


/* =========================================================
   STEPS
   ========================================================= */

.fk-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:14px;

  margin-top:33px;
}


.fk-step{
  padding:23px;

  border:1px solid var(--fk-border);
  border-radius:18px;

  background:#fff;
}


.fk-step__n{
  display:block;

  margin-bottom:17px;

  color:#765783;

  font-size:12px;
  font-weight:900;
}


.fk-step h3{
  margin:0 0 7px;

  color:#322039;

  font-size:17px;
}


.fk-step p{
  margin:0;

  color:var(--fk-muted);

  font-size:14px;
  line-height:1.58;
}


/* =========================================================
   DARK APPROVAL
   ========================================================= */

.fk-approval{
  padding:82px 0;

  color:#fff;

  background:
    radial-gradient(
      700px 380px at 100% 0%,
      rgba(194,144,220,.20),
      transparent 65%
    ),
    #321940;
}


.fk-approval .fk-kicker{
  color:#decfe7;
}


.fk-approval .fk-h2{
  color:#fff;
}


.fk-approval .fk-lead{
  color:#eee6f0;
}


.fk-approval p{
  color:#eee6f0;
}


.fk-approval strong{
  color:#fff;
}


.fk-approval__grid{
  display:grid;

  grid-template-columns:
    minmax(0,.9fr)
    minmax(420px,1.1fr);

  gap:58px;
  align-items:center;
}


.fk-approval__points{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:10px;

  margin-top:26px;
}


.fk-approval__point{
  padding:15px;

  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;

  background:rgba(255,255,255,.08);

  color:#f4eef6;

  font-size:14px;
  line-height:1.5;
}


.fk-approval__point strong{
  display:block;

  margin-bottom:3px;
}


.fk-layout-visual{
  min-height:410px;

  display:grid;
  grid-template-columns:1fr 1fr;

  gap:4px;

  padding:24px;

  border:1px solid rgba(255,255,255,.18);
  border-radius:24px;

  background:rgba(255,255,255,.08);
}


.fk-layout-page{
  position:relative;

  overflow:hidden;

  border-radius:7px;

  background:#fff;
}


.fk-layout-page::before{
  content:"";

  position:absolute;
  left:12%;
  right:12%;
  top:12%;

  height:54%;

  border-radius:5px;

  background:
    linear-gradient(
      135deg,
      #ccb8d6,
      #85669a
    );
}


.fk-layout-page::after{
  content:"";

  position:absolute;
  left:12%;
  right:26%;
  bottom:17%;

  height:7px;

  border-radius:6px;

  background:#d9d2dc;

  box-shadow:
    0 15px 0 #eee9f0,
    0 30px 0 #eee9f0;
}


/* =========================================================
   CHILD BOOK
   ========================================================= */

.fk-child-intro{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(390px,.78fr);

  gap:58px;
  align-items:center;
}


.fk-child-visual{
  min-height:460px;

  overflow:hidden;

  border-radius:26px;

  background:
    radial-gradient(
      circle at 25% 25%,
      rgba(255,234,157,.85) 0 5%,
      transparent 6%
    ),
    radial-gradient(
      circle at 72% 22%,
      rgba(255,255,255,.7) 0 3%,
      transparent 4%
    ),
    radial-gradient(
      circle at 78% 77%,
      rgba(207,171,235,.75) 0 5%,
      transparent 6%
    ),
    linear-gradient(
      145deg,
      #9971b1,
      #694487 48%,
      #3a2450
    );

  box-shadow:var(--fk-shadow);
}


.fk-child-visual__book{
  position:relative;

  width:68%;
  height:58%;

  margin:86px auto 0;

  border-radius:9px;

  background:#fff;

  transform:rotate(-4deg);

  box-shadow:
    0 22px 38px rgba(35,19,44,.24);
}


.fk-child-visual__book::before{
  content:"";

  position:absolute;

  inset:12% 12% 34%;

  border-radius:7px;

  background:
    radial-gradient(
      circle at 50% 40%,
      #ffe9a3 0 13%,
      transparent 14%
    ),
    linear-gradient(
      140deg,
      #7fa4c9,
      #8b669c 55%,
      #d8a36f
    );
}


.fk-child-visual__book::after{
  content:"Персональная история";

  position:absolute;

  left:12%;
  right:12%;
  bottom:16%;

  color:#3b2842;

  text-align:center;

  font-size:16px;
  font-weight:850;
}


/* =========================================================
   TWO VARIANTS
   ========================================================= */

.fk-variants{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:18px;

  margin-top:34px;
}


.fk-variant{
  padding:28px;

  border:1px solid var(--fk-border);
  border-radius:22px;

  background:#fff;
}


.fk-variant__tag{
  display:inline-flex;

  margin-bottom:12px;
  padding:7px 10px;

  border-radius:999px;

  background:#f1ebf4;
  color:#52365c;

  font-size:12px;
  font-weight:850;
}


.fk-variant h3{
  margin:0 0 10px;

  color:#321b3b;

  font-size:22px;
}


.fk-variant p{
  margin:0;

  color:var(--fk-muted);

  font-size:15px;
  line-height:1.65;
}


/* =========================================================
   STYLE CHIPS
   ========================================================= */

.fk-styles{
  display:flex;
  flex-wrap:wrap;

  gap:9px;

  margin-top:25px;
}


.fk-style{
  padding:9px 12px;

  border:1px solid #cdbfd4;
  border-radius:999px;

  background:#fff;
  color:#493a50;

  font-size:14px;
  font-weight:750;
}


/* =========================================================
   PHOTO REQUIREMENTS
   ========================================================= */

.fk-photo-guide{
  display:grid;

  grid-template-columns:
    minmax(0,.95fr)
    minmax(380px,.75fr);

  gap:55px;
  align-items:center;
}


.fk-photo-list{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:11px;

  margin-top:25px;
}


.fk-photo-item{
  padding:16px;

  border:1px solid var(--fk-border);
  border-radius:15px;

  background:#fff;
}


.fk-photo-item strong{
  display:block;

  margin-bottom:4px;

  color:#35243d;

  font-size:15px;
}


.fk-photo-item span{
  color:var(--fk-muted);

  font-size:13px;
  line-height:1.45;
}


/* =========================================================
   DETAILS / FEARS
   ========================================================= */

.fk-details{
  max-width:980px;

  margin-top:31px;

  border-top:1px solid var(--fk-border);
}


.fk-details details{
  border-bottom:1px solid var(--fk-border);
}


.fk-details summary{
  position:relative;

  padding:22px 48px 22px 0;

  cursor:pointer;
  list-style:none;

  color:#322039;

  font-size:17px;
  line-height:1.4;
  font-weight:800;
}


.fk-details summary::-webkit-details-marker{
  display:none;
}


.fk-details summary::after{
  content:"+";

  position:absolute;
  right:4px;
  top:50%;

  transform:translateY(-50%);

  color:#755d82;

  font-size:28px;
}


.fk-details details[open] summary::after{
  content:"−";
}


.fk-details__body{
  max-width:880px;

  padding:0 0 23px;

  color:#59515d;

  font-size:15px;
  line-height:1.7;
}


/* =========================================================
   MEANINGS
   ========================================================= */

.fk-meanings{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:13px;

  margin-top:31px;
}


.fk-meaning{
  padding:20px;

  border:1px solid var(--fk-border);
  border-radius:17px;

  background:#fff;
}


.fk-meaning strong{
  display:block;

  margin-bottom:5px;

  color:#35243d;

  font-size:15px;
}


.fk-meaning span{
  color:var(--fk-muted);

  font-size:13px;
  line-height:1.5;
}


/* =========================================================
   FORMAT
   ========================================================= */

.fk-format{
  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:15px;

  margin-top:32px;
}


.fk-format__item{
  padding:24px;

  border:1px solid var(--fk-border);
  border-radius:19px;

  background:#fff;
}


.fk-format__icon{
  width:42px;
  height:42px;

  display:grid;
  place-items:center;

  margin-bottom:15px;

  border-radius:13px;

  background:#f1ebf4;
  color:#5a3670;

  font-size:13px;
  font-weight:900;
}


.fk-format__item h3{
  margin:0 0 7px;

  color:#33203b;

  font-size:17px;
}


.fk-format__item p{
  margin:0;

  color:var(--fk-muted);

  font-size:14px;
  line-height:1.58;
}


/* =========================================================
   INCLUDED
   ========================================================= */

.fk-included{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:13px;

  margin-top:32px;
}


.fk-included__item{
  padding:21px;

  border:1px solid var(--fk-border);
  border-radius:17px;

  background:#fff;
}


.fk-included__n{
  display:block;

  margin-bottom:12px;

  color:#775884;

  font-size:12px;
  font-weight:900;
}


.fk-included__item h3{
  margin:0 0 7px;

  color:#322039;

  font-size:16px;
}


.fk-included__item p{
  margin:0;

  color:var(--fk-muted);

  font-size:13px;
  line-height:1.55;
}


/* =========================================================
   ORDER
   ========================================================= */

.fk-order{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:13px;

  margin-top:32px;
}


.fk-order__item{
  padding:22px;

  border:1px solid var(--fk-border);
  border-radius:18px;

  background:#fff;
}


.fk-order__step{
  display:block;

  margin-bottom:16px;

  color:#765983;

  font-size:12px;
  font-weight:900;
}


.fk-order__item h3{
  margin:0 0 7px;

  color:#322039;

  font-size:17px;
}


.fk-order__item p{
  margin:0;

  color:var(--fk-muted);

  font-size:14px;
  line-height:1.57;
}


/* =========================================================
   START SIMPLE
   ========================================================= */

.fk-simple{
  display:grid;

  grid-template-columns:1fr auto;

  gap:35px;
  align-items:center;

  padding:35px;

  border:1px solid #d8cbe0;
  border-radius:24px;

  background:
    radial-gradient(
      450px 220px at 100% 0%,
      rgba(107,62,142,.10),
      transparent 65%
    ),
    #f2edf5;
}


.fk-simple h2{
  margin:0 0 10px;

  color:#34203d;

  font-size:clamp(27px,2.7vw,38px);
  line-height:1.12;
  letter-spacing:-.035em;
}


.fk-simple p{
  max-width:780px;

  margin:0;

  color:#554b59;

  font-size:16px;
  line-height:1.65;
}


/* =========================================================
   GIFT
   ========================================================= */

.fk-gift{
  display:grid;

  grid-template-columns:
    minmax(0,.95fr)
    minmax(390px,.75fr);

  gap:55px;
  align-items:center;
}


.fk-gift-visual{
  position:relative;

  min-height:420px;

  overflow:hidden;

  border-radius:25px;

  background:
    linear-gradient(
      145deg,
      #ece2d7,
      #c7a98d 48%,
      #80628d
    );

  box-shadow:var(--fk-shadow);
}


.fk-gift-visual::before{
  content:"";

  position:absolute;

  left:50%;
  top:55px;

  width:220px;
  height:270px;

  transform:translateX(-50%) rotate(-4deg);

  border-radius:8px;

  background:#fff;

  box-shadow:
    0 18px 35px rgba(53,33,51,.20);
}


.fk-gift-visual::after{
  content:"Ваша история";

  position:absolute;

  left:50%;
  top:166px;

  width:150px;

  transform:translateX(-50%) rotate(-4deg);

  color:#4c3456;

  text-align:center;

  font-size:20px;
  font-weight:900;
}


/* =========================================================
   INFO CARDS
   ========================================================= */

.fk-info{
  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:16px;

  margin-top:31px;
}


.fk-info__card{
  padding:28px;

  border:1px solid var(--fk-border);
  border-radius:21px;

  background:#fff;
}


.fk-info__card h3{
  margin:0 0 9px;

  color:#322039;

  font-size:21px;
}


.fk-info__card p{
  margin:0;

  color:var(--fk-muted);

  font-size:15px;
  line-height:1.64;
}


/* =========================================================
   TRUST
   ========================================================= */

.fk-risks{
  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:13px;

  margin-top:31px;
}


.fk-risk{
  padding:21px;

  border:1px solid var(--fk-border);
  border-radius:17px;

  background:#fff;
}


.fk-risk__check{
  width:25px;
  height:25px;

  display:grid;
  place-items:center;

  margin-bottom:13px;

  border-radius:50%;

  background:var(--fk-green-soft);
  color:var(--fk-green);

  font-size:11px;
  font-weight:900;
}


.fk-risk h3{
  margin:0 0 7px;

  color:#33203b;

  font-size:16px;
}


.fk-risk p{
  margin:0;

  color:var(--fk-muted);

  font-size:13px;
  line-height:1.55;
}


/* =========================================================
   FAQ
   ========================================================= */

.fk-faq{
  max-width:980px;

  margin-top:30px;

  border-top:1px solid var(--fk-border);
}


.fk-faq details{
  border-bottom:1px solid var(--fk-border);
}


.fk-faq summary{
  position:relative;

  padding:22px 50px 22px 0;

  cursor:pointer;
  list-style:none;

  color:#322039;

  font-size:17px;
  line-height:1.4;
  font-weight:800;
}


.fk-faq summary::-webkit-details-marker{
  display:none;
}


.fk-faq summary::after{
  content:"+";

  position:absolute;

  right:5px;
  top:50%;

  transform:translateY(-50%);

  color:#755d82;

  font-size:28px;
  font-weight:400;
}


.fk-faq details[open] summary::after{
  content:"−";
}


.fk-faq__answer{
  max-width:860px;

  padding:0 0 22px;

  color:#59515d;

  font-size:16px;
  line-height:1.68;
}


/* =========================================================
   FINAL CTA
   ========================================================= */

.fk-final{
  padding:76px 0 86px;
}


.fk-final__box{
  padding:56px;

  overflow:hidden;

  border-radius:30px;

  background:
    radial-gradient(
      520px 270px at 95% 0%,
      rgba(194,146,218,.20),
      transparent 65%
    ),
    #321940;

  box-shadow:
    0 22px 60px rgba(42,19,51,.16);
}


.fk-final__box .fk-kicker{
  color:#decfe7;
}


.fk-final__box h2{
  max-width:800px;

  margin:0;

  color:#fff;

  font-size:clamp(34px,4vw,50px);
  line-height:1.07;
  letter-spacing:-.045em;
}


.fk-final__box p{
  max-width:760px;

  margin:15px 0 0;

  color:#f0e9f2;

  font-size:16px;
  line-height:1.65;
}


.fk-final__box strong{
  color:#fff;
}


.fk-final__box .fk-btn--primary{
  color:#321940;
  background:#fff;

  box-shadow:none;
}


.fk-final__box .fk-btn--secondary{
  color:#fff;

  background:#513260;

  border-color:#a58caf;
}


.fk-final__micro{
  color:#dacdde !important;

  font-size:13px !important;
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

.fk-page a:focus-visible,
.fk-page summary:focus-visible{
  outline:3px solid rgba(87,40,126,.28);
  outline-offset:4px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1100px){

  .fk-wrap{
    width:calc(100% - 40px);
  }


  .fk-hero__grid,
  .fk-approval__grid,
  .fk-child-intro,
  .fk-photo-guide,
  .fk-gift{
    grid-template-columns:1fr;
  }


  .fk-hero__photo img{
    height:500px;
  }


  .fk-choice{
    grid-template-columns:1fr 1fr;
  }


  .fk-trust__grid{
    grid-template-columns:1fr 1fr;
  }


  .fk-trust__item:nth-child(2){
    border-right:0;
  }


  .fk-trust__item:nth-child(-n+2){
    border-bottom:1px solid var(--fk-border);
  }


  .fk-use-cases,
  .fk-meanings,
  .fk-included,
  .fk-order{
    grid-template-columns:1fr 1fr;
  }


  .fk-steps{
    grid-template-columns:1fr 1fr;
  }


  .fk-info,
  .fk-risks,
  .fk-format{
    grid-template-columns:1fr 1fr;
  }

}


/* =========================================================
   MOBILE / SMALL TABLET
   ========================================================= */

@media(max-width:760px){

  .fk-wrap{
    width:calc(100% - 32px);
  }


  .fk-section{
    padding:54px 0;
  }


  .fk-hero{
    padding:28px 0 48px;
  }


  .fk-breadcrumbs{
    margin-bottom:22px;

    font-size:13px;
  }


  .fk-hero h1{
    font-size:36px;
    line-height:1.06;
  }


  .fk-hero__lead{
    font-size:16px;
  }


  .fk-hero__photo img{
    height:400px;
  }


  .fk-choice,
  .fk-use-cases,
  .fk-steps,
  .fk-variants,
  .fk-format,
  .fk-included,
  .fk-order,
  .fk-info,
  .fk-risks,
  .fk-meanings{
    grid-template-columns:1fr;
  }


  .fk-approval{
    padding:56px 0;
  }


  .fk-approval__points{
    grid-template-columns:1fr;
  }


  .fk-layout-visual{
    min-height:330px;
  }


  .fk-photo-list{
    grid-template-columns:1fr;
  }


  .fk-help,
  .fk-simple{
    grid-template-columns:1fr;
  }


  .fk-simple{
    padding:27px;
  }


  .fk-trust__grid{
    grid-template-columns:1fr;
  }


  .fk-trust__item{
    min-height:62px;

    border-right:0;
    border-bottom:1px solid var(--fk-border);
  }


  .fk-trust__item:last-child{
    border-bottom:0;
  }


  .fk-final{
    padding:50px 0 60px;
  }


  .fk-final__box{
    padding:35px 24px;
  }

}


/* =========================================================
   360px+
   ========================================================= */

@media(max-width:480px){

  .fk-wrap{
    width:calc(100% - 32px);
  }


  .fk-section{
    padding:46px 0;
  }


  .fk-h2{
    font-size:29px;
    line-height:1.12;
  }


  .fk-lead{
    font-size:16px;
  }


  .fk-hero h1{
    font-size:33px;
  }


  .fk-hero__photo{
    border-radius:21px;
  }


  .fk-hero__photo img{
    height:350px;
  }


  .fk-actions{
    flex-direction:column;
  }


  .fk-btn{
    width:100%;
    min-height:52px;
  }


  .fk-choice-card__media{
    height:230px;
  }


  .fk-choice-card__body{
    padding:22px;
  }


  .fk-child-visual{
    min-height:350px;
  }


  .fk-child-visual__book{
    margin-top:68px;
  }


  .fk-gift-visual{
    min-height:340px;
  }


  .fk-final__box h2{
    font-size:30px;
  }

}

/* site collisions / images — do not change sketch grids */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 110px;
}
main.fk-page {
  overflow-x: clip;
  width: 100%;
  max-width: 100%;
}
/* Аккуратный зазор под fixed-шапкой: offset сайта + компактный hero */
main.fk-page .fk-hero {
  padding-top: 20px;
}
main.fk-page .fk-btn[data-zp-contacts-open] {
  cursor: pointer;
}
/* Убрать дизайнерские заглушки поверх реальных фото 06/07 */
main.fk-page .fk-photo-guide .fk-story-visual,
main.fk-page .fk-gift-visual {
  background: transparent !important;
  box-shadow: none;
}
main.fk-page .fk-story-visual::before,
main.fk-page .fk-story-visual::after,
main.fk-page .fk-gift-visual::before,
main.fk-page .fk-gift-visual::after {
  content: none !important;
  display: none !important;
}
main.fk-page .fk-photo-guide .fk-story-visual img,
main.fk-page .fk-gift-visual img {
  position: relative;
  z-index: 1;
}
/* .fk-page a inherits text color and beats .fk-btn--primary */
main.fk-page a.fk-btn--primary,
main.fk-page .fk-btn--primary {
  color: #fff !important;
}
main.fk-page a.fk-btn--primary:hover,
main.fk-page .fk-btn--primary:hover {
  color: #fff !important;
}
main.fk-page .fk-final__box a.fk-btn--primary,
main.fk-page .fk-final__box .fk-btn--primary {
  color: #321940 !important;
}
main.fk-page .fk-final__box a.fk-btn--secondary,
main.fk-page .fk-final__box .fk-btn--secondary {
  color: #fff !important;
}
main.fk-page .fk-hero__photo img,
main.fk-page .fk-choice-card__media img,
main.fk-page .fk-layout-visual img,
main.fk-page .fk-child-visual img,
main.fk-page .fk-photo-guide .fk-story-visual img,
main.fk-page .fk-gift-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  border-radius: inherit;
}
main.fk-page .fk-choice-card__media,
main.fk-page .fk-layout-visual,
main.fk-page .fk-child-visual,
main.fk-page .fk-gift-visual {
  overflow: hidden;
}
/* Реальное фото макета — на весь блок (не в ячейке 1fr 1fr от заглушек) */
main.fk-page .fk-layout-visual {
  display: block;
  position: relative;
  padding: 0;
  min-height: 410px;
  height: 410px;
  border: none;
  background: transparent;
}
main.fk-page .fk-layout-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  border-radius: 24px;
}
main.fk-page .fk-layout-visual .fk-layout-page {
  display: none !important;
}
main.fk-page .fk-child-visual__book {
  display: none !important;
}
main.fk-page .fk-story-visual__star {
  display: none !important;
}
