/* ==========================================================================
   KIMONO MOTION LAB LP用スタイル
   ========================================================================== */

.lp-page {
	margin: 0;
	background-color: #fcfcfc;
	color: #271816;
	font-family: "Work Sans", "Noto Sans JP", sans-serif;
	-webkit-font-smoothing: antialiased;
}

.lp-page img { max-width: 100%; height: auto; display: block; }
.lp-page a { text-decoration: none; }
.lp-page button { font-family: inherit; cursor: pointer; border: none; }

.lp-page form { display: block; margin: 0; padding: 0; }
.lp-page input,
.lp-page select,
.lp-page textarea,
.lp-page button { display: block; font-family: inherit; font-size: inherit; margin: 0; box-sizing: border-box; }
.lp-page * { box-sizing: border-box; }

/* variables */
body.lp-page {
	--lp-primary: #9a000d;
	--lp-primary-container: #be2221;
	--lp-on-primary: #ffffff;
	--lp-gold: #bfa679;
	--lp-wine: #805562;
	--lp-wine-dark: #5b403d;
	--lp-surface: #fff8f7;
	--lp-surface-tint: #fff0ee;
	--lp-surface-tint2: #ffe9e6;
	--lp-on-surface: #271816;
	--lp-radius-sm: 0.125rem;
	--lp-radius-lg: 0.25rem;
	--lp-radius-xl: 0.5rem;
	--lp-radius-full: 0.75rem;
	--lp-space-xs: 4px;
	--lp-space-sm: 12px;
	--lp-space-base: 8px;
	--lp-space-md: 24px;
	--lp-space-lg: 48px;
	--lp-space-xl: 80px;
	--lp-margin-mobile: 16px;
	--lp-margin-desktop: 64px;
}

/* eyebrow / heading */
.lp-eyebrow { display: block; margin-bottom: var(--lp-space-base); font-family: "Work Sans", sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: var(--lp-primary-container); text-align: center; }
.lp-eyebrow--gold { color: var(--lp-gold); }
.lp-section__head { text-align: center; margin-bottom: var(--lp-space-lg); }
.lp-section__head--left { text-align: left; }
.lp-section__head--left .lp-eyebrow { text-align: left; }
.lp-section__title { font-family: "Manrope", "Work Sans", sans-serif; font-size: 28px; font-weight: 600; line-height: 1.3; letter-spacing: -0.01em; color: var(--lp-wine); margin: 0; }
.lp-section__title--white { color: #ffffff; }
.lp-section__lead { margin-top: var(--lp-space-sm); color: var(--lp-wine); font-size: 16px; line-height: 1.6; }
@media (min-width: 768px) { .lp-section__title { font-size: 32px; line-height: 40px; } }

/* layout */
.lp-section { padding: var(--lp-space-xl) var(--lp-margin-mobile); }
.lp-section--tint { background-color: var(--lp-surface-tint); }
.lp-section--tint2 { background-color: var(--lp-surface-tint2); }
.lp-section--dark { background-color: var(--lp-wine-dark); color: #ffffff; }
.lp-section__inner { max-width: 1280px; margin: 0 auto; }
.lp-section__inner--narrow { max-width: 860px; }
@media (min-width: 768px) { .lp-section { padding-left: var(--lp-margin-desktop); padding-right: var(--lp-margin-desktop); } }

.lp-grid { display: grid; gap: var(--lp-space-md); }
.lp-grid--3col { grid-template-columns: 1fr; }
.lp-grid--2col { grid-template-columns: 1fr; }
.lp-grid--5col { grid-template-columns: 1fr; }
.lp-grid--narrow { max-width: 1000px; margin: 0 auto; }
@media (min-width: 768px) { .lp-grid--3col { grid-template-columns: repeat(3, 1fr); } .lp-grid--2col { grid-template-columns: repeat(2, 1fr); max-width: 600px; } }
@media (min-width: 1024px) { .lp-grid--5col { grid-template-columns: repeat(5, 1fr); } }

/* buttons */
.lp-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--lp-space-base); border-radius: var(--lp-radius-xl); font-size: 14px; font-weight: 600; letter-spacing: 0.03em; transition: opacity 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease; white-space: nowrap; }
.lp-btn:active { transform: scale(0.97); }
.lp-btn--small { padding: var(--lp-space-sm) var(--lp-space-md); }
.lp-btn--large { padding: 16px 32px; font-size: 16px; }
.lp-btn--primary, body.lp-page .lp-btn--primary, .lp-page button.lp-btn--primary { background-color: #be2221; color: #ffffff; box-shadow: 0 8px 20px rgba(154,0,13,0.25); }
.lp-btn--primary:hover { opacity: 0.92; }
.lp-btn--white { background-color: #ffffff; color: var(--lp-primary-container); box-shadow: 0 8px 20px rgba(128,85,98,0.2); }
.lp-btn--white:hover { background-color: #ffe9e6; }
.lp-btn--outline { background-color: transparent; color: #ffffff; border: 1px solid rgba(255,255,255,0.5); }
.lp-btn--outline:hover { background-color: rgba(255,255,255,0.1); }

/* icons */
.lp-icon { display: inline-block; width: 22px; height: 22px; background-color: currentColor; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; vertical-align: middle; }
.lp-icon--download { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 20h14v-2H5v2zM12 2v12.17l3.59-3.58L17 12l-5 5-5-5 1.41-1.41L11 14.17V2h1z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 20h14v-2H5v2zM12 2v12.17l3.59-3.58L17 12l-5 5-5-5 1.41-1.41L11 14.17V2h1z'/></svg>"); }
.lp-icon--mail { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5-8-5V6l8 5 8-5z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5-8-5V6l8 5 8-5z'/></svg>"); }
.lp-icon--phone { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A18 18 0 0 1 2 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1 11.4 11.4 0 0 0 .57 3.6 1 1 0 0 1-.25 1z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A18 18 0 0 1 2 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1 11.4 11.4 0 0 0 .57 3.6 1 1 0 0 1-.25 1z'/></svg>"); }
.lp-icon--warning { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/></svg>"); }
.lp-icon--walk { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='13' cy='4' r='2'/><path d='M9.8 8.9 7 23h2.1l1.8-8 2.1 2v6h2.1v-7.5l-2.1-2 .6-3C14.8 11.5 16.8 13 19 13v-2c-1.9 0-3.5-1-4.3-2.5l-1-1.6c-.4-.6-1-1-1.7-1-.3 0-.6.1-.9.2L5 8.3V13h2V9.6z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='13' cy='4' r='2'/><path d='M9.8 8.9 7 23h2.1l1.8-8 2.1 2v6h2.1v-7.5l-2.1-2 .6-3C14.8 11.5 16.8 13 19 13v-2c-1.9 0-3.5-1-4.3-2.5l-1-1.6c-.4-.6-1-1-1.7-1-.3 0-.6.1-.9.2L5 8.3V13h2V9.6z'/></svg>"); }
.lp-icon--serve { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M11 9H9V2H7v7H5V2H3v7c0 2.1 1.7 3.8 3.8 4l-.8 9h2l-.8-9c2.1-.2 3.8-1.9 3.8-4V2h-2v7zm5-7v9.1c0 1.6 1 3 2.5 3.6V22h2v-7.3c1.5-.6 2.5-2 2.5-3.6V2h-2v6h-1V2h-2v6h-1V2h-1z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M11 9H9V2H7v7H5V2H3v7c0 2.1 1.7 3.8 3.8 4l-.8 9h2l-.8-9c2.1-.2 3.8-1.9 3.8-4V2h-2v7zm5-7v9.1c0 1.6 1 3 2.5 3.6V22h2v-7.3c1.5-.6 2.5-2 2.5-3.6V2h-2v6h-1V2h-2v6h-1V2h-1z'/></svg>"); }
.lp-icon--guide { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2 2 7v2h20V7L12 2zM4 10v9h2v-9H4zm14 0v9h2v-9h-2zM9 10v9h2v-9H9zm5 0v9h2v-9h-2zM2 21h20v2H2z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2 2 7v2h20V7L12 2zM4 10v9h2v-9H4zm14 0v9h2v-9h-2zM9 10v9h2v-9H9zm5 0v9h2v-9h-2zM2 21h20v2H2z'/></svg>"); }
.lp-icon--fatigue { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.6 6.6 17 3l-3.6 3.6L17 10zM2 21l8.5-8.5 3 3L5 24zM12.4 9.9 9.9 12.4l1.4 1.4 2.5-2.5z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.6 6.6 17 3l-3.6 3.6L17 10zM2 21l8.5-8.5 3 3L5 24zM12.4 9.9 9.9 12.4l1.4 1.4 2.5-2.5z'/></svg>"); }
.lp-icon--school { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 3 1 9l11 6 9-4.9V17h2V9L12 3zM5 13.2V18l7 4 7-4v-4.8l-7 3.8-7-3.8z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 3 1 9l11 6 9-4.9V17h2V9L12 3zM5 13.2V18l7 4 7-4v-4.8l-7 3.8-7-3.8z'/></svg>"); }
.lp-icon--sparkle { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2 9.5 9.5 2 12l7.5 2.5L12 22l2.5-7.5L22 12l-7.5-2.5z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2 9.5 9.5 2 12l7.5 2.5L12 22l2.5-7.5L22 12l-7.5-2.5z'/></svg>"); }
.lp-icon--speed { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2C6.5 2 2 6.5 2 12c0 2.2.7 4.2 1.9 5.9L4 19l1.4-.8C7 19.4 9.4 20 12 20c5.5 0 10-4.5 10-10S17.5 2 12 2zm1 11h-2V7h2v6zm3.5-3.5-3 3-1.4-1.4 3-3z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2C6.5 2 2 6.5 2 12c0 2.2.7 4.2 1.9 5.9L4 19l1.4-.8C7 19.4 9.4 20 12 20c5.5 0 10-4.5 10-10S17.5 2 12 2zm1 11h-2V7h2v6zm3.5-3.5-3 3-1.4-1.4 3-3z'/></svg>"); }
.lp-icon--check { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>"); }
.lp-icon--celebrate { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M2 22 5 11l11-9 1 1-9 11zm9.5-9.5L17 7l1 1-5.5 5.5zM19 2l1 3 3 1-3 1-1 3-1-3-3-1 3-1z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M2 22 5 11l11-9 1 1-9 11zm9.5-9.5L17 7l1 1-5.5 5.5zM19 2l1 3 3 1-3 1-1 3-1-3-3-1 3-1z'/></svg>"); }
.lp-icon--shield { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2 4 5v6c0 5 3.4 9.4 8 11 4.6-1.6 8-6 8-11V5z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2 4 5v6c0 5 3.4 9.4 8 11 4.6-1.6 8-6 8-11V5z'/></svg>"); }
.lp-icon--bolt { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M13 2 3 14h7l-1 8 10-12h-7z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M13 2 3 14h7l-1 8 10-12h-7z'/></svg>"); }
.lp-icon--groups { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='8' cy='8' r='3'/><circle cx='17' cy='8' r='3'/><path d='M2 20c0-3.3 2.7-6 6-6s6 2.7 6 6v1H2zM13.5 14.2c2.4.5 4.5 2.5 4.5 5.8v1h4v-1c0-3-2.6-5.4-5.7-5.8a6 6 0 0 1-2.8 0z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='8' cy='8' r='3'/><circle cx='17' cy='8' r='3'/><path d='M2 20c0-3.3 2.7-6 6-6s6 2.7 6 6v1H2zM13.5 14.2c2.4.5 4.5 2.5 4.5 5.8v1h4v-1c0-3-2.6-5.4-5.7-5.8a6 6 0 0 1-2.8 0z'/></svg>"); }
.lp-icon--diamond { -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 2h12l4 6-10 14L2 8z'/></svg>"); mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 2h12l4 6-10 14L2 8z'/></svg>"); }

/* Nav */
.lp-nav { position: sticky; top: 0; z-index: 50; background-color: #ffffff; border-bottom: 1px solid rgba(191,166,121,0.2); height: 72px; }
.lp-nav__inner { max-width: 1440px; margin: 0 auto; height: 100%; display: flex; align-items: center; justify-content: space-between; padding: 0 var(--lp-margin-mobile); }
.lp-nav__logo img { height: 48px; width: auto; }
.lp-nav__links { display: none; gap: var(--lp-space-lg); }
.lp-nav__links a { color: var(--lp-wine); font-size: 14px; font-weight: 600; letter-spacing: 0.05em; }
.lp-nav__links a:hover { color: var(--lp-primary-container); }
@media (min-width: 1024px) { .lp-nav__links { display: flex; } }
@media (min-width: 768px) { .lp-nav__inner { padding: 0 var(--lp-margin-desktop); } }

/* Hero */
.lp-hero { position: relative; overflow: hidden; background-color: var(--lp-surface); background-image: radial-gradient(rgba(190,34,33,0.06) 0.5px, transparent 0.5px); background-size: 24px 24px; padding: var(--lp-space-xl) var(--lp-margin-mobile); text-align: center; border-bottom: 1px solid rgba(191,166,121,0.1); }
.lp-hero__inner { max-width: 860px; margin: 0 auto; }
.lp-hero__logo { margin-bottom: var(--lp-space-lg); }
.lp-hero__logo img { max-width: 640px; margin: 0 auto; }
.lp-hero__title { font-family: "Manrope", sans-serif; font-weight: 700; font-size: 28px; line-height: 1.4; letter-spacing: 0.05em; color: var(--lp-wine); margin: 0 0 var(--lp-space-md); }
.lp-hero__lead { font-size: 16px; line-height: 1.7; color: var(--lp-wine-dark); max-width: 560px; margin: 0 auto var(--lp-space-md); }
@media (min-width: 768px) { .lp-hero { padding-top: 120px; padding-bottom: 120px; } .lp-hero__title { font-size: 40px; } .lp-hero__lead { font-size: 18px; } }

/* Issue cards */
.lp-card { background-color: #ffffff; border: 1px solid rgba(191,166,121,0.2); border-radius: var(--lp-radius-xl); padding: var(--lp-space-md); box-shadow: 0 1px 2px rgba(0,0,0,0.04); }
.lp-card__head { display: flex; align-items: center; gap: var(--lp-space-sm); margin-bottom: var(--lp-space-sm); color: var(--lp-primary-container); }
.lp-card__title { font-size: 18px; font-weight: 700; color: var(--lp-on-surface); margin: 0; }
.lp-card__text { font-size: 14px; line-height: 1.7; color: var(--lp-wine); margin: 0; }

/* Solution */
.lp-solution { display: grid; gap: var(--lp-space-md); align-items: center; }
.lp-solution__lead { font-size: 16px; color: var(--lp-wine); margin: var(--lp-space-sm) 0 var(--lp-space-md); }
.lp-solution__points { display: flex; flex-direction: column; gap: var(--lp-space-sm); }
.lp-point { display: flex; align-items: flex-start; gap: var(--lp-space-sm); background-color: #ffffff; border: 1px solid rgba(191,166,121,0.15); border-radius: var(--lp-radius-lg); padding: var(--lp-space-sm); }
.lp-point .lp-icon { color: var(--lp-primary-container); flex-shrink: 0; margin-top: 2px; }
.lp-point__title { font-size: 18px; font-weight: 700; color: var(--lp-wine); margin: 0 0 4px; }
.lp-point__text { font-size: 15px; line-height: 1.6; color: var(--lp-wine); margin: 0; }
.lp-solution__media img { border-radius: var(--lp-radius-xl); box-shadow: 0 20px 40px rgba(0,0,0,0.15); width: 100%; aspect-ratio: 16/9; object-fit: cover; }
@media (min-width: 1024px) { .lp-solution { grid-template-columns: 5fr 7fr; } }

/* Value */
.lp-value__row2 { margin-top: var(--lp-space-md); }
.lp-value-card { text-align: center; background-color: #ffffff; border-radius: var(--lp-radius-xl); padding: var(--lp-space-md); box-shadow: 0 1px 2px rgba(0,0,0,0.04); border-top: 4px solid var(--lp-gold); }
.lp-value-card--red { border-top-color: var(--lp-primary-container); }
.lp-value-card .lp-icon { width: 36px; height: 36px; color: var(--lp-wine); margin: 0 auto var(--lp-space-base); }
.lp-value-card__title { font-size: 18px; font-weight: 700; color: var(--lp-wine); margin: 0 0 4px; }
.lp-value-card__text { font-size: 15px; line-height: 1.6; color: var(--lp-wine); margin: 0; }

/* Program */
.lp-program { margin-bottom: var(--lp-space-xl); }
.lp-program-item { border-left: 2px solid var(--lp-gold); padding-left: var(--lp-space-md); }
.lp-program-item__title { font-weight: 700; margin: 0 0 var(--lp-space-base); color: #ffffff; }
.lp-program-item__text { font-size: 18px; opacity: 0.85; margin: 0; line-height: 1.7; }
.lp-program-banner { background-color: rgba(255,255,255,0.08); border-radius: var(--lp-radius-xl); padding: var(--lp-space-md); }
.lp-program-banner__title { font-family: "Manrope", sans-serif; font-size: 20px; font-weight: 600; margin: 0 0 var(--lp-space-base); }
.lp-program-banner__text { margin: 0; opacity: 0.9; line-height: 1.8; }

/* Steps */
.lp-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--lp-space-md); }
.lp-steps__item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: var(--lp-space-sm); position: relative; }
.lp-steps__num { flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; background-color: var(--lp-primary-container); color: #ffffff; display: flex; align-items: center; justify-content: center; font-weight: 700; }
.lp-steps__title { font-size: 25px; font-weight: 700; color: var(--lp-wine); margin: 0 0 6px; text-align: center; }
.lp-steps__text { font-size: 20px; color: var(--lp-wine); margin: 0; line-height: 1.6; text-align: center; }

/* CTA */
.lp-cta { background-color: var(--lp-primary-container); color: #ffffff; padding: var(--lp-space-xl) var(--lp-margin-mobile); text-align: center; }
.lp-cta__inner { max-width: 860px; margin: 0 auto; }
.lp-cta__title { font-family: "Manrope", sans-serif; font-weight: 700; font-size: 26px; letter-spacing: 0.04em; margin: 0 0 var(--lp-space-md); }
.lp-cta__lead { font-size: 16px; opacity: 0.92; margin: 0 0 var(--lp-space-md); }
.lp-cta__buttons { display: flex; flex-direction: column; gap: var(--lp-space-sm); justify-content: center; align-items: center; margin-bottom: var(--lp-space-lg); }
@media (min-width: 640px) { .lp-cta__buttons { flex-direction: row; } }
.lp-cta__company { border-top: 1px solid rgba(255,255,255,0.2); padding-top: var(--lp-space-md); text-align: left; display: flex; flex-direction: column; gap: var(--lp-space-sm); }
.lp-cta__company-name { font-weight: 700; font-size: 16px; margin: 0 0 4px; }
.lp-cta__company-line { font-size: 13px; opacity: 0.85; margin: 0; }
@media (min-width: 768px) { .lp-cta__company { flex-direction: row; justify-content: space-between; } .lp-cta__title { font-size: 36px; } }

/* Download Form */
.lp-form { background-color: #ffffff; border: 1px solid rgba(191,166,121,0.2); border-radius: var(--lp-radius-xl); padding: var(--lp-space-lg) var(--lp-space-md); box-shadow: 0 4px 16px rgba(71,0,21,0.06); }
.lp-form__fields { display: flex; flex-direction: column; gap: var(--lp-space-md); width: 100%; }
.lp-form__field { display: flex; flex-direction: column; gap: 8px; width: 100%; }
.lp-page label.lp-form__field { display: flex; width: 100%; }
.lp-form__label { font-size: 14px; font-weight: 600; color: var(--lp-wine); display: flex; align-items: center; gap: 8px; }
.lp-form__required { background-color: var(--lp-primary-container); color: #ffffff; font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: var(--lp-radius-full); letter-spacing: 0.05em; }
.lp-form__input { display: block; width: 100%; min-height: 48px; padding: 0 16px; border: 1px solid rgba(128,85,98,0.25); border-radius: var(--lp-radius-lg); font-size: 15px; font-family: inherit; color: var(--lp-on-surface); background-color: #ffffff; }
.lp-form__input:focus { outline: none; border-color: var(--lp-gold); border-width: 1.5px; }
.lp-form__submit { width: 100%; margin-top: 8px; }

/* Footer */
.lp-footer { background-color: #ffffff; border-top: 1px solid rgba(191,166,121,0.2); }
.lp-footer__inner { max-width: 1440px; margin: 0 auto; padding: var(--lp-space-lg) var(--lp-margin-mobile); display: flex; flex-direction: column; gap: var(--lp-space-md); align-items: center; text-align: center; }
.lp-footer__brand { display: flex; flex-direction: column; gap: 4px; align-items: center; }
.lp-footer__logo { font-family: "Manrope", sans-serif; font-weight: 700; color: var(--lp-wine); font-size: 18px; }
.lp-footer__copy { font-size: 12px; color: var(--lp-wine); }
.lp-footer__links { display: flex; gap: var(--lp-space-md); flex-wrap: wrap; justify-content: center; }
.lp-footer__links a { font-size: 12px; color: var(--lp-wine); }
.lp-footer__links a:hover { color: var(--lp-primary-container); }
@media (min-width: 768px) { .lp-footer__inner { flex-direction: row; justify-content: space-between; padding-left: var(--lp-margin-desktop); padding-right: var(--lp-margin-desktop); text-align: left; } .lp-footer__brand { align-items: flex-start; } }