@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');

:root{
  --lp-ink:#302a2b;
  --lp-muted:#766f6e;
  --lp-paper:#fffdfb;
  --lp-cream:#fbf5ef;
  --lp-blush:#f7e4dc;
  --lp-line:#eadbd4;
  --lp-coral:#dd7469;
  --lp-coral-dark:#c85d54;
  --lp-shadow:0 24px 70px rgba(106,70,58,.12);
  --lp-radius:26px;
}

/* Public premium landing pages */
body.yl-premium-landing{
  margin:0;
  color:var(--lp-ink);
  background:linear-gradient(180deg,#fffaf6 0%,#fff 42%,#fffaf7 100%);
  font-family:'DM Sans',Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
body.yl-premium-landing *{box-sizing:border-box}
.lp-container{width:min(1160px,calc(100% - 42px));margin-inline:auto}
.lp-serif,.lp-title,.lp-section-title,.lp-logo{font-family:'Playfair Display',Georgia,serif}
.lp-header{position:sticky;top:0;z-index:50;background:rgba(255,252,249,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,219,212,.72)}
.lp-nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.lp-logo{font-size:22px;font-weight:600;color:var(--lp-ink);text-decoration:none;white-space:nowrap}
.lp-nav-links{display:flex;align-items:center;gap:30px}
.lp-nav-links a{font-size:13px;color:var(--lp-ink);text-decoration:none}
.lp-nav-links a:hover{color:var(--lp-coral-dark)}
.lp-nav-cta,.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;text-decoration:none;cursor:pointer;transition:.2s ease;font-family:inherit;font-weight:700}
.lp-nav-cta{padding:12px 20px;border-radius:999px;background:var(--lp-coral);color:#fff;font-size:12px}
.lp-btn{min-height:48px;padding:0 22px;border-radius:999px;font-size:14px}
.lp-btn-primary{background:var(--lp-coral);color:#fff;box-shadow:0 12px 30px rgba(221,116,105,.24)}
.lp-btn-primary:hover,.lp-nav-cta:hover{background:var(--lp-coral-dark);transform:translateY(-1px)}
.lp-btn-secondary{border:1px solid #dcbcb4;background:rgba(255,255,255,.72);color:var(--lp-ink)}
.lp-menu-toggle{display:none;border:0;background:none;font-size:25px;color:var(--lp-ink);cursor:pointer}

.lp-hero{position:relative;overflow:hidden;background:linear-gradient(90deg,#fffaf6 0%,#fff9f5 48%,#f8e8df 100%)}
.lp-hero-grid{min-height:610px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:28px}
.lp-hero-copy{position:relative;z-index:2;padding:70px 0 120px}
.lp-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;color:var(--lp-coral-dark);font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.lp-title{max-width:680px;margin:0;font-size:clamp(48px,5.8vw,78px);line-height:1.02;letter-spacing:-.045em;font-weight:500}
.lp-lead{max-width:620px;margin:22px 0 0;color:#5f5959;font-size:16px;line-height:1.75}
.lp-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.lp-hero-media{height:100%;min-height:610px;position:relative}
.lp-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff9f5 0%,rgba(255,249,245,.25) 35%,transparent 65%)}
.lp-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.lp-safe-note{display:flex;align-items:center;gap:8px;margin-top:18px;color:#9a8c88;font-size:12px}

.lp-form-wrap{position:relative;z-index:5;margin-top:-88px}
.lp-form-card{background:rgba(255,253,251,.96);border:1px solid rgba(234,219,212,.94);border-radius:30px;padding:28px 32px 24px;box-shadow:var(--lp-shadow);backdrop-filter:blur(16px)}
.lp-form-head{text-align:center;margin-bottom:20px}
.lp-form-head h2{font-family:'Playfair Display',Georgia,serif;font-size:30px;font-weight:500;margin:0 0 7px}
.lp-form-head p{margin:0;color:var(--lp-muted);font-size:13px}
.lp-inline-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lp-inline-form>.full,.lp-inline-form .lp-field.full{grid-column:1/-1}
.lp-field{position:relative}
.lp-field label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lp-field input,.lp-field select,.lp-field textarea{
  width:100%;min-height:46px;border:1px solid #e8d9d3;border-radius:12px;background:#fff;padding:11px 14px;color:var(--lp-ink);font:500 13px/1.35 'DM Sans',sans-serif;outline:none;transition:.2s ease
}
.lp-field textarea{min-height:88px;resize:vertical}
.lp-field input::placeholder,.lp-field textarea::placeholder{color:#a69c99;font-weight:400}
.lp-field input:focus,.lp-field select:focus,.lp-field textarea:focus{border-color:var(--lp-coral);box-shadow:0 0 0 4px rgba(221,116,105,.11)}
.lp-field.checkbox{display:flex;align-items:flex-start;gap:9px;padding:8px 3px;font-size:12px;color:var(--lp-muted)}
.lp-field.checkbox input{width:18px;min-height:18px;margin:0}
.lp-form-actions{display:flex;justify-content:center;margin-top:16px}
.lp-form-actions .lp-btn{min-width:280px}
.lp-form-note{text-align:center;margin:10px 0 0;color:#aaa09d;font-size:10px}
.lp-form-error{grid-column:1/-1;color:#9c3d36;font-size:12px;text-align:center;margin:0}

.lp-section{padding:76px 0}
.lp-section.soft{background:#fffaf7}
.lp-section-head{text-align:center;max-width:740px;margin:0 auto 34px}
.lp-section-title{font-size:clamp(34px,4vw,48px);line-height:1.12;margin:0;font-weight:500;letter-spacing:-.025em}
.lp-section-subtitle{color:var(--lp-muted);line-height:1.7;margin:12px auto 0}
.lp-section-rule{width:38px;height:2px;background:var(--lp-coral);border-radius:9px;margin:16px auto 0}
.lp-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.lp-card{border:1px solid var(--lp-line);background:rgba(255,255,255,.82);border-radius:20px;box-shadow:0 14px 40px rgba(87,54,45,.055)}
.lp-benefit{padding:25px 22px;min-height:210px}
.lp-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--lp-blush);font-size:22px;margin-bottom:18px}
.lp-benefit h3,.lp-step h3{font-family:'Playfair Display',Georgia,serif;font-size:20px;margin:0 0 9px;font-weight:500}
.lp-benefit p,.lp-step p{margin:0;color:var(--lp-muted);font-size:13px;line-height:1.7}

.lp-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lp-step{overflow:hidden;position:relative}
.lp-step img{width:100%;height:220px;object-fit:cover;display:block}
.lp-step-body{padding:22px}
.lp-step-number{position:absolute;top:194px;right:18px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--lp-coral);color:#fff;font-weight:800;border:5px solid #fff}

.lp-story-grid{display:grid;grid-template-columns:.86fr 1.14fr;overflow:hidden;align-items:stretch}
.lp-story-grid img{width:100%;height:100%;min-height:430px;object-fit:cover}
.lp-story-copy{padding:50px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#fffaf7,#fff)}
.lp-story-copy h2{font-family:'Playfair Display',Georgia,serif;font-size:42px;line-height:1.12;font-weight:500;margin:0 0 18px}
.lp-story-copy p{color:#635c5a;line-height:1.78;margin:0 0 13px}
.lp-story-copy .yl-rich-content p{margin-bottom:13px}
.lp-signature{font-family:'Playfair Display',Georgia,serif;font-style:italic;color:var(--lp-coral);font-size:24px;margin-top:12px}

.lp-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.lp-testimonial{padding:25px;display:flex;flex-direction:column;gap:16px}
.lp-stars{color:var(--lp-coral);letter-spacing:3px;font-size:13px}
.lp-quote{font-family:'Playfair Display',Georgia,serif;font-size:18px;line-height:1.55;margin:0}
.lp-author{margin-top:auto;color:var(--lp-muted);font-size:12px}
.lp-author strong{display:block;color:var(--lp-ink);font-size:13px}

.lp-media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.lp-media-grid figure{margin:0;overflow:hidden;border-radius:20px}
.lp-media-grid img{width:100%;height:360px;object-fit:cover}
.lp-media-grid iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:20px}
.lp-faq{display:grid;gap:9px;max-width:900px;margin-inline:auto}
.lp-faq details{border:1px solid var(--lp-line);background:#fff;border-radius:14px;padding:0 18px}
.lp-faq summary{cursor:pointer;list-style:none;padding:16px 34px 16px 0;font-weight:600;position:relative;font-size:14px}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::after{content:'+';position:absolute;right:0;top:12px;font-size:23px;font-weight:400}
.lp-faq details[open] summary::after{content:'−'}
.lp-faq details p{color:var(--lp-muted);line-height:1.7;margin:0;padding:0 0 17px;font-size:13px}

.lp-checkout{max-width:760px;margin-inline:auto;padding:32px}
.lp-checkout form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.lp-checkout .full{grid-column:1/-1}
.lp-price{font-family:'Playfair Display',Georgia,serif;font-size:32px;margin:8px 0}

.lp-final-cta{position:relative;overflow:hidden;border-radius:28px;min-height:250px;display:flex;align-items:center;background:#ecd8cf}
.lp-final-cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lp-final-cta::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,246,240,.98) 0%,rgba(255,246,240,.9) 45%,rgba(255,246,240,.12) 82%)}
.lp-final-copy{position:relative;z-index:2;padding:44px;max-width:680px}
.lp-final-copy h2{font-family:'Playfair Display',Georgia,serif;font-size:38px;line-height:1.15;font-weight:500;margin:0 0 10px}
.lp-final-copy p{color:#655e5b;max-width:560px;line-height:1.7;margin:0 0 20px}
.lp-footer{padding:32px 0 40px;border-top:1px solid var(--lp-line)}
.lp-footer-grid{display:flex;justify-content:space-between;align-items:center;gap:24px}
.lp-footer-links{display:flex;flex-wrap:wrap;gap:20px}
.lp-footer a{color:var(--lp-muted);font-size:12px;text-decoration:none}
.lp-footer small{display:block;color:#aca29f;margin-top:8px;font-size:10px}
.lp-success{padding:28px;text-align:center;border-radius:20px;background:#f4fbf4;border:1px solid #d9ebd9}
.lp-success h3{font-family:'Playfair Display',Georgia,serif;font-size:29px;margin:0 0 8px}
.public-success-banner{position:fixed;top:92px;left:50%;transform:translateX(-50%);z-index:100;background:#315845;color:#fff;padding:12px 18px;border-radius:999px;box-shadow:0 12px 30px rgba(0,0,0,.18)}

/* Standalone public form */
body.public-shell.premium-form-shell{display:grid;place-items:center;padding:28px;background:radial-gradient(circle at top right,#f6d8c9 0,transparent 34%),linear-gradient(135deg,#fffaf6,#f9e9e1)}
.premium-form-shell .public-card{width:min(720px,100%);margin:0;background:rgba(255,253,251,.96);border:1px solid var(--lp-line);border-radius:30px;padding:38px;box-shadow:var(--lp-shadow)}
.premium-form-shell .public-card h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(36px,6vw,56px);line-height:1.08;margin:7px 0 13px}
.premium-form-shell .public-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.premium-form-shell .public-form label{font-size:0}
.premium-form-shell .public-form label.full{grid-column:1/-1}
.premium-form-shell .public-form input,.premium-form-shell .public-form select,.premium-form-shell .public-form textarea{font-size:13px;padding:11px 13px;border-radius:12px;border-color:#e6d7d0;min-height:45px;background:#fff}
.premium-form-shell .public-form textarea{min-height:100px}
.premium-form-shell .public-form .btn{grid-column:1/-1;justify-self:center;min-width:260px;border-radius:999px;background:var(--lp-coral);border-color:var(--lp-coral);color:#fff}

/* Centered page and form editors */
body .centered-builder-modal{align-items:center;justify-content:center;padding:24px}
body .centered-builder-modal .os-modal-card{height:auto;max-height:calc(100vh - 48px);width:min(1050px,100%);border-radius:26px;box-shadow:0 30px 90px rgba(23,17,15,.28)}
.lp-editor-section{padding:17px;border:1px solid #e7ddd8;border-radius:17px;background:#fffaf7;margin-bottom:14px}
.lp-editor-section>h3{margin:0 0 14px;font-size:16px}
.lp-editor-help{font-size:12px;color:#7d7471;margin:-6px 0 14px}
.lp-image-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.lp-image-preset{border:1px solid #e4d7d0;border-radius:13px;overflow:hidden;background:#fff;padding:0;cursor:pointer;text-align:left}
.lp-image-preset img{display:block;width:100%;height:95px;object-fit:cover}
.lp-image-preset span{display:block;padding:8px;font-size:11px;font-weight:700}
.lp-editor-preview{border-radius:20px;overflow:hidden;border:1px solid #e6d9d3;background:#fff}
.lp-editor-preview .mini-hero{min-height:170px;padding:24px;background:linear-gradient(110deg,#fff8f4 0%,#f5ddd3 100%);display:grid;grid-template-columns:1.15fr .85fr;gap:12px;align-items:center}
.lp-editor-preview h3{font-family:'Playfair Display',Georgia,serif;font-size:26px;line-height:1.05;margin:7px 0}
.lp-editor-preview p{font-size:11px;color:#756c69}
.lp-editor-preview img{width:100%;height:150px;object-fit:cover;border-radius:13px}
.lp-editor-preview .mini-form{margin:-18px 14px 16px;background:#fff;border:1px solid #eaded8;border-radius:13px;padding:12px;position:relative;box-shadow:0 12px 25px rgba(90,55,43,.09);display:grid;grid-template-columns:1fr 1fr;gap:7px}
.lp-editor-preview .mini-form span{height:23px;border:1px solid #eaded8;border-radius:6px;background:#fff}
.lp-editor-preview .mini-form b{grid-column:1/-1;height:25px;border-radius:999px;background:var(--lp-coral);width:48%;justify-self:center}
.form-field-placeholder{margin-top:8px}
.form-field-placeholder input{font-size:12px}

@media(max-width:980px){
  .lp-benefit-grid{grid-template-columns:repeat(2,1fr)}
  .lp-step-grid{grid-template-columns:1fr}
  .lp-step{display:grid;grid-template-columns:240px 1fr}
  .lp-step img{height:100%;min-height:230px}
  .lp-step-number{top:18px;right:18px}
  .lp-story-copy{padding:38px}
  .lp-testimonial-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .lp-container{width:min(100% - 28px,1160px)}
  .lp-nav{height:68px}.lp-nav-links{display:none;position:absolute;left:14px;right:14px;top:70px;background:#fff;border:1px solid var(--lp-line);border-radius:18px;padding:16px;box-shadow:var(--lp-shadow);flex-direction:column;align-items:stretch;gap:0}.lp-nav-links.open{display:flex}.lp-nav-links a{padding:12px}.lp-nav-cta{display:none}.lp-menu-toggle{display:block}
  .lp-hero-grid{display:block;min-height:0}.lp-hero-copy{padding:54px 0 22px}.lp-title{font-size:clamp(42px,12vw,62px)}.lp-lead{font-size:14px}.lp-hero-media{min-height:430px;height:430px;margin-inline:-14px}.lp-hero-media::after{background:linear-gradient(180deg,#fff9f5 0%,transparent 30%)}
  .lp-form-wrap{margin-top:-32px}.lp-form-card{padding:24px 17px;border-radius:23px}.lp-form-head h2{font-size:26px}.lp-inline-form{grid-template-columns:1fr}.lp-form-actions .lp-btn{width:100%;min-width:0}
  .lp-section{padding:58px 0}.lp-section-title{font-size:36px}.lp-benefit-grid{grid-template-columns:1fr 1fr;gap:10px}.lp-benefit{min-height:0;padding:18px 15px}.lp-benefit h3{font-size:17px}.lp-benefit p{font-size:11px}.lp-icon{width:40px;height:40px;font-size:18px;margin-bottom:12px}
  .lp-step{display:block}.lp-step img{height:230px;min-height:0}.lp-step-number{top:208px}.lp-story-grid{grid-template-columns:1fr}.lp-story-grid img{min-height:330px}.lp-story-copy{padding:28px 22px}.lp-story-copy h2{font-size:34px}.lp-media-grid{grid-template-columns:1fr}.lp-media-grid img{height:300px}
  .lp-checkout form{grid-template-columns:1fr}.lp-final-cta{min-height:370px;align-items:flex-end}.lp-final-cta::after{background:linear-gradient(180deg,rgba(255,246,240,.15) 0%,rgba(255,246,240,.96) 67%)}.lp-final-copy{padding:26px 22px}.lp-final-copy h2{font-size:32px}.lp-footer-grid{align-items:flex-start;flex-direction:column}
  .premium-form-shell .public-card{padding:26px 18px}.premium-form-shell .public-form{grid-template-columns:1fr}.premium-form-shell .public-form .btn{width:100%;min-width:0}
  body .centered-builder-modal{padding:0;align-items:stretch}.centered-builder-modal .os-modal-card{max-height:100vh!important;height:100vh!important;border-radius:0!important}.lp-image-presets{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){.lp-benefit-grid{grid-template-columns:1fr}.lp-hero-media{height:360px;min-height:360px}.lp-hero-actions{display:grid}.lp-btn{width:100%}}
