.kelrosa-page-slug-custom-formulation{
  --kr-page-accent:var(--kr-brand);
  --kr-page-soft:#f4f8ef;
}

/* Hero: real development photography with a compact project-start panel. */
.kelrosa-page-slug-custom-formulation .kr-formulation-hero{
  position:relative;
  padding:clamp(82px,7vw,116px) 0 clamp(88px,7.5vw,124px);
  overflow:hidden;
  background:linear-gradient(118deg,#f6faf2 0%,#fbfcf9 55%,#f5f1e9 100%);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero::before{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  right:-270px;
  top:-330px;
  border:1px solid rgba(36,77,50,.08);
  border-radius:50%;
  box-shadow:0 0 0 84px rgba(90,174,82,.035),0 0 0 168px rgba(90,174,82,.018);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(460px,.88fr);
  gap:clamp(64px,7vw,112px);
  align-items:center;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__copy{max-width:760px}
.kelrosa-page-slug-custom-formulation .kr-formulation-eyebrow{
  margin:0 0 15px;
  color:var(--kr-brand);
  font-size:var(--kr-type-label);
  font-weight:850;
  letter-spacing:.13em;
  line-height:1.4;
  text-transform:uppercase;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero h1{max-width:720px;margin:0 0 26px}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__lead{
  max-width:700px;
  margin:0;
  color:var(--kr-ink-2);
  font-size:var(--kr-type-body-lg);
  line-height:1.72;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:9px 18px;
  margin:25px 0 0;
  padding:0;
  list-style:none;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__meta li{
  position:relative;
  padding-left:15px;
  color:var(--kr-slate);
  font-size:13px;
  font-weight:720;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__meta li::before{
  content:"";
  position:absolute;
  left:0;
  top:.63em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--kr-brand);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__visual{
  position:relative;
  min-height:560px;
  border:1px solid rgba(36,77,50,.09);
  border-radius:38px;
  overflow:hidden;
  background:#e9eee4;
  box-shadow:var(--kr-shadow-lg);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__image{position:absolute;inset:0;margin:0}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__image img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(.98)}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__note{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  padding:24px 26px;
  border:1px solid rgba(255,255,255,.76);
  border-radius:22px;
  background:rgba(255,255,255,.95);
  box-shadow:0 20px 48px rgba(23,29,41,.14);
  backdrop-filter:blur(14px);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__note .kr-formulation-eyebrow{margin-bottom:8px}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__note h2{margin:0 0 18px;font-size:clamp(27px,2vw,34px);line-height:1.08}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__note-grid span{display:grid;gap:2px;padding-top:9px;border-top:1px solid var(--kr-line);color:var(--kr-muted);font-size:12px;line-height:1.45}
.kelrosa-page-slug-custom-formulation .kr-formulation-hero__note-grid strong{color:var(--kr-ink);font-size:13px}

/* Shared page-specific section head: no decorative line. */
.kelrosa-page-slug-custom-formulation .kr-formulation-section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.78fr);
  gap:clamp(54px,7vw,108px);
  align-items:end;
  margin-bottom:clamp(48px,5vw,72px);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-section-head h2{max-width:760px;margin:0}
.kelrosa-page-slug-custom-formulation .kr-formulation-section-head>p{
  max-width:590px;
  margin:0;
  color:var(--kr-slate);
  font-size:16.5px;
  line-height:1.7;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-section-head--compact{margin-bottom:44px}

/* Starting points: parallel choices, not a numbered sequence. */
.kelrosa-page-slug-custom-formulation .kr-formulation-start__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.kelrosa-page-slug-custom-formulation .kr-formulation-start__card{
  min-height:310px;
  padding:34px;
  border:1px solid rgba(36,77,50,.1);
  border-radius:26px;
  background:#fff;
  box-shadow:var(--kr-shadow-sm);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-start__card--soft{background:linear-gradient(145deg,#eff7e8,#fbfcf9)}
.kelrosa-page-slug-custom-formulation .kr-formulation-card-label{
  margin:0 0 28px;
  color:var(--kr-brand);
  font-size:10.5px;
  font-weight:850;
  letter-spacing:.12em;
  line-height:1.4;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-start__card h3{margin:0 0 14px;font-size:clamp(24px,1.8vw,29px);line-height:1.14}
.kelrosa-page-slug-custom-formulation .kr-formulation-start__card>p:not(.kr-formulation-card-label){margin:0;color:var(--kr-slate);font-size:15px;line-height:1.7}
.kelrosa-page-slug-custom-formulation .kr-formulation-chips{display:flex;flex-wrap:wrap;gap:7px;margin:25px 0 0;padding:0;list-style:none}
.kelrosa-page-slug-custom-formulation .kr-formulation-chips li{padding:7px 9px;border-radius:999px;background:var(--kr-aqua-2);color:var(--kr-ink-2);font-size:11px;font-weight:720}

/* Formula design split. */
.kelrosa-page-slug-custom-formulation .kr-formulation-design__layout{display:grid;grid-template-columns:minmax(380px,.86fr) minmax(0,1.14fr);gap:clamp(56px,7vw,100px);align-items:stretch}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card,
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual{
  margin:0;
  overflow:hidden;
  border:1px solid rgba(36,77,50,.1);
  border-radius:30px;
  background:#fff;
  box-shadow:var(--kr-shadow);
}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card{display:grid;grid-template-rows:minmax(360px,1fr) auto;min-height:610px}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card img{width:100%;height:100%;min-height:360px;object-fit:cover}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card figcaption,
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual figcaption{padding:28px 30px 31px;background:#fff}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card figcaption .kr-formulation-eyebrow,
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual figcaption .kr-formulation-eyebrow{margin-bottom:8px}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card figcaption h3,
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual figcaption h3{margin:0 0 10px;font-size:clamp(24px,1.8vw,29px);line-height:1.14}
.kelrosa-page-slug-custom-formulation .kr-formulation-photo-card figcaption p:not(.kr-formulation-eyebrow),
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual figcaption p:not(.kr-formulation-eyebrow){margin:0;color:var(--kr-slate);font-size:14.5px;line-height:1.65}
.kelrosa-page-slug-custom-formulation .kr-formulation-decision-list{display:grid;border-top:1px solid rgba(36,77,50,.12)}
.kelrosa-page-slug-custom-formulation .kr-formulation-decision-list article{padding:26px 0;border-bottom:1px solid rgba(36,77,50,.12)}
.kelrosa-page-slug-custom-formulation .kr-formulation-decision-list article>p{margin:0 0 8px;color:var(--kr-brand);font-size:10.5px;font-weight:850;letter-spacing:.12em}
.kelrosa-page-slug-custom-formulation .kr-formulation-decision-list h3{margin:0 0 8px;font-size:clamp(23px,1.65vw,28px);line-height:1.15}
.kelrosa-page-slug-custom-formulation .kr-formulation-decision-list span{display:block;max-width:680px;color:var(--kr-slate);font-size:15px;line-height:1.66}

/* Dosage-form fit uses compact raster cards rather than a second product catalog. */
.kelrosa-page-slug-custom-formulation .kr-formulation-formats__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.kelrosa-page-slug-custom-formulation .kr-formulation-format-card{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  min-height:150px;
  overflow:hidden;
  border:1px solid rgba(36,77,50,.1);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--kr-shadow-sm);
  color:inherit;
  text-decoration:none;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.kelrosa-page-slug-custom-formulation .kr-formulation-format-card:hover{transform:translateY(-3px);border-color:rgba(90,174,82,.36);box-shadow:var(--kr-shadow)}
.kelrosa-page-slug-custom-formulation .kr-formulation-format-card img{width:100%;height:100%;min-height:150px;object-fit:cover;background:var(--kr-aqua-2)}
.kelrosa-page-slug-custom-formulation .kr-formulation-format-card>span{display:grid;align-content:center;gap:7px;padding:20px}
.kelrosa-page-slug-custom-formulation .kr-formulation-format-card strong{color:var(--kr-ink);font-size:18px;line-height:1.18}
.kelrosa-page-slug-custom-formulation .kr-formulation-format-card small{color:var(--kr-slate);font-size:12.5px;line-height:1.55}
.kelrosa-page-slug-custom-formulation .kr-formulation-formats__action,
.kelrosa-page-slug-custom-formulation .kr-formulation-customize__action{margin-top:30px}
.kelrosa-page-slug-custom-formulation .kr-formulation-text-link{display:inline-flex;align-items:center;gap:8px;color:var(--kr-primary);font-size:14px;font-weight:800;text-decoration:none}
.kelrosa-page-slug-custom-formulation .kr-formulation-text-link:hover{text-decoration:underline;text-underline-offset:5px}

/* The only large numbers on the page belong to the true formulation sequence. */
.kelrosa-page-slug-custom-formulation .kr-formulation-process__layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);gap:clamp(60px,7vw,104px);align-items:stretch}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__steps{display:grid;border-top:1px solid rgba(36,77,50,.14)}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__steps article{display:grid;grid-template-columns:76px minmax(0,1fr);gap:22px;padding:23px 0;border-bottom:1px solid rgba(36,77,50,.14)}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__steps article>span{color:#86b66f;font-size:clamp(42px,3vw,52px);font-weight:720;line-height:.92;letter-spacing:-.055em}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__steps article p{margin:1px 0 7px;color:var(--kr-brand);font-size:10px;font-weight:850;letter-spacing:.12em}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__steps h3{margin:0 0 7px;font-size:clamp(22px,1.55vw,27px);line-height:1.15}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__steps article div div{max-width:650px;color:var(--kr-slate);font-size:14.5px;line-height:1.62}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual{display:grid;grid-template-rows:minmax(390px,1fr) auto;min-height:640px}
.kelrosa-page-slug-custom-formulation .kr-formulation-process__visual img{width:100%;height:100%;min-height:390px;object-fit:cover}

/* Customization is an information matrix rather than another numbered card set. */
.kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--kr-line);border-left:1px solid var(--kr-line)}
.kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid article{min-height:190px;padding:28px;border-right:1px solid var(--kr-line);border-bottom:1px solid var(--kr-line);background:#fff}
.kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid article>p{margin:0 0 11px;color:var(--kr-brand);font-size:10px;font-weight:850;letter-spacing:.12em}
.kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid h3{margin:0 0 9px;font-size:clamp(21px,1.45vw,25px);line-height:1.16}
.kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid span{display:block;color:var(--kr-slate);font-size:14px;line-height:1.62}

/* Dark scale-up checkpoint band. */
.kelrosa-page-slug-custom-formulation .kr-formulation-section-head--dark h2{color:#fff}
.kelrosa-page-slug-custom-formulation .kr-formulation-section-head--dark>p{color:#d0dacf}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale{padding-block:clamp(78px,6.4vw,104px)}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid article{min-height:290px;padding:30px;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:rgba(255,255,255,.065)}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid article>p{margin:0 0 25px;color:#b9da92;font-size:10px;font-weight:850;letter-spacing:.12em}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid h3{margin:0 0 12px;color:#fff;font-size:clamp(23px,1.65vw,28px);line-height:1.15}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid span{display:block;color:#cbd8cc;font-size:14.5px;line-height:1.65}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid ul{display:grid;gap:8px;margin:24px 0 0;padding:0;list-style:none}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid li{position:relative;padding-left:16px;color:#d5e0d5;font-size:12.5px}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid li::before{content:"";position:absolute;left:0;top:.63em;width:6px;height:6px;border-radius:50%;background:#8fc36b}
.kelrosa-page-slug-custom-formulation .kr-formulation-scale__footer{display:flex;justify-content:flex-end;margin-top:28px}

/* Shared FAQ/CTA components are reused; only page proportions are refined. */
.kelrosa-page-slug-custom-formulation .kr-section--faq .kr-faq{grid-template-columns:minmax(280px,.62fr) minmax(0,1.38fr);gap:clamp(54px,7vw,104px)}
.kelrosa-page-slug-custom-formulation .kr-section--faq .kr-faq__intro h2{max-width:470px}
.kelrosa-page-slug-custom-formulation .kr-cta-section .kr-callout{max-width:1240px;margin-inline:auto}

@media(max-width:1120px){
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__grid{grid-template-columns:minmax(0,1fr) minmax(400px,.82fr);gap:52px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-formats__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kelrosa-page-slug-custom-formulation .kr-formulation-process__layout{grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:52px}
}

@media(max-width:900px){
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero{padding:72px 0 88px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__grid,
  .kelrosa-page-slug-custom-formulation .kr-formulation-section-head,
  .kelrosa-page-slug-custom-formulation .kr-formulation-design__layout,
  .kelrosa-page-slug-custom-formulation .kr-formulation-process__layout,
  .kelrosa-page-slug-custom-formulation .kr-section--faq .kr-faq{grid-template-columns:1fr}
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__visual{width:min(100%,700px);min-height:540px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-section-head{gap:20px;align-items:start}
  .kelrosa-page-slug-custom-formulation .kr-formulation-section-head>p{max-width:760px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-start__grid{grid-template-columns:1fr}
  .kelrosa-page-slug-custom-formulation .kr-formulation-start__card{min-height:0}
  .kelrosa-page-slug-custom-formulation .kr-formulation-photo-card{min-height:540px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-process__visual{min-height:560px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid{grid-template-columns:1fr}
  .kelrosa-page-slug-custom-formulation .kr-formulation-scale__grid article{min-height:0}
  .kelrosa-page-slug-custom-formulation .kr-formulation-scale__footer{justify-content:flex-start}
}

@media(max-width:640px){
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__actions{display:grid}
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__visual{min-height:510px;border-radius:28px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__note{left:14px;right:14px;bottom:14px;padding:21px;border-radius:19px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-hero__note-grid{grid-template-columns:1fr 1fr;gap:8px 14px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-start__card{padding:28px;border-radius:22px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-formats__grid{grid-template-columns:1fr}
  .kelrosa-page-slug-custom-formulation .kr-formulation-format-card{grid-template-columns:112px minmax(0,1fr);min-height:132px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-format-card img{min-height:132px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-process__steps article{grid-template-columns:62px minmax(0,1fr);gap:15px;padding:21px 0}
  .kelrosa-page-slug-custom-formulation .kr-formulation-process__steps article>span{font-size:40px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid{grid-template-columns:1fr}
  .kelrosa-page-slug-custom-formulation .kr-formulation-customize__grid article{min-height:0;padding:25px}
  .kelrosa-page-slug-custom-formulation .kr-formulation-photo-card,
  .kelrosa-page-slug-custom-formulation .kr-formulation-process__visual{border-radius:24px}
}
