/**
Theme Name: Wiselogix
Author: Wiselogix Technologies
Author URI: https://wiselogix.com/
Description: Wiselogix Child Theme is a fast, lightweight, and SEO optimized WordPress child theme designed for business websites, startups, and digital agencies. Fully responsive, secure, and easy to customize for high-performance web development.
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: wiselogix
Template: astra
Tags: wordpress child theme, seo optimized, responsive design, fast loading, business website, customizable theme

*/
/* ___________________ Write Your Custom Styles below or in 'assets/css/custom.css' */


h1,h2,h3,h4,h5,h6 { font-family: 'Playfair Display',      sans-serif !important; font-weight:bold; }
body{font-family: 'Poppins',sans-serif !important;}
/* =========================================================
   Suzanne's Rain – Blog post ("Suzanne's Word")
   Paste in: Elementor > Site Settings > Custom CSS
   (or Appearance > Customize > Additional CSS)
   All classes start with "bp_" so they never clash with the
   other page CSS files (sr_ = contact page, lyrics_ = lyrics page).
   ========================================================= */

/* ---------- VARIABLES ---------- */
.bp_scope{
  --bp-ink:#12091f; --bp-ink2:#1a0f2e; --bp-ink3:#2a1450;
  --bp-bone:#f6f3ee; --bp-bone2:#ece6f5;
  --bp-vio:#a78bfa; --bp-vio2:#c4b5fd; --bp-deep:#6d28d9;
  --bp-text:#efe9fb; --bp-mut:#b6abd0;
  --bp-dk:#1c1224; --bp-dkm:#6b6275;
  --bp-pad:clamp(20px,5vw,72px);
  --gap:0px; --row-gap:0px; --column-gap:0px;      /* we control spacing ourselves */
}
.bp_scope p{margin:0}
.bp_scope .elementor-widget{margin:0}

/* ---------- SHARED: eyebrow ---------- */
.bp_eyebrow .elementor-heading-title{
  display:inline-flex !important; align-items:center; gap:14px;
  font-size:12px !important; font-weight:600 !important;
  letter-spacing:.3em; text-transform:uppercase; line-height:1.4 !important;
  color:var(--bp-vio) !important;
}
.bp_eyebrow .elementor-heading-title::before{content:"";width:42px;height:1px;background:currentColor}

/* ---------- SHARED: buttons (Elementor button widget) ---------- */
.bp_btn .elementor-button{
  display:inline-flex; align-items:center; border-radius:999px; padding:14px 28px;
  font-weight:600; font-size:14px; letter-spacing:.04em;
  border:1px solid transparent; white-space:nowrap;
  transition:transform .3s,background .3s,color .3s,border-color .3s;
}
.bp_btn .elementor-button-text::after{content:"→";margin-left:10px;display:inline-block;transition:transform .3s}
.bp_btn .elementor-button:hover .elementor-button-text::after{transform:translateX(4px)}
.bp_btn_gold .elementor-button{background:var(--bp-deep) !important; color:#fff !important}
.bp_btn_gold .elementor-button:hover{background:#7c3aed !important; transform:translateY(-2px)}
.bp_btn_w .elementor-button{background:transparent !important; color:#fff !important; border-color:rgba(255,255,255,.35)}
.bp_btn_w .elementor-button:hover{border-color:var(--bp-vio); color:var(--bp-vio) !important}

/* =========================================================
   POST HERO
   ========================================================= */
.bp_phero{
  position:relative; overflow:hidden; isolation:isolate;
  padding:190px var(--bp-pad) clamp(60px,8vw,110px) !important;
  background-image:
    radial-gradient(900px 500px at 85% 30%,rgba(109,40,217,.35),transparent 60%),
    linear-gradient(180deg,var(--bp-ink2),var(--bp-ink)) !important;
}
.bp_phero > .e-con-inner,
.bp_phero.e-con-full{
  display:grid !important;
  grid-template-columns:7fr 5fr;
  gap:clamp(30px,6vw,90px);
  align-items:center;
}
.bp_phero .elementor-widget:not(.bp_rain){position:relative; z-index:1}
.bp_rain{position:absolute !important; inset:0; width:100% !important; height:100%; z-index:0; pointer-events:none}
.bp_rain .elementor-widget-container,.bp_rain canvas{width:100%; height:100%; display:block}
.bp_phero_text{width:auto !important; min-width:0}

.bp_crumbs{margin-bottom:22px !important}
.bp_crumbs p{font-size:13px; color:var(--bp-mut)}
.bp_crumbs a{color:inherit; text-decoration:none} .bp_crumbs a:hover{color:#fff}

.bp_tags{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:20px}
.bp_tag{
  border:1px solid var(--bp-vio); color:var(--bp-vio); padding:5px 16px; border-radius:999px;
  font-size:11.5px; font-weight:700; letter-spacing:.2em; text-transform:uppercase;
}

.bp_h1{margin-bottom:26px !important}
.bp_h1 .elementor-heading-title{
  font-weight:600 !important;
  font-size:clamp(46px,7.4vw,112px) !important; line-height:1.05 !important;
  letter-spacing:-.015em; color:#fff !important;
}
.bp_h1 em{display:block; font-style:italic; color:var(--bp-vio); font-size:.62em; margin-top:.15em}

.bp_meta{display:flex; flex-wrap:wrap; gap:8px 26px; font-size:13.5px; color:var(--bp-mut); line-height:1.75}
.bp_meta b{color:#fff; font-weight:600}

/* hero image: arch frame */
.bp_pimg{position:relative; max-width:460px; width:100%; justify-self:end}
.bp_pimg figure{margin:0}
.bp_pimg img{
  display:block; width:100%; aspect-ratio:4/5; object-fit:cover; object-position:35% 30%;
  border-radius:999px 999px 24px 24px; background:var(--bp-ink3);
  box-shadow:0 40px 90px rgba(0,0,0,.55); filter:contrast(1.04);
}
.bp_pimg::before{
  content:""; position:absolute; inset:-14px -14px 14px 14px; z-index:-1;
  border:1px solid rgba(167,139,250,.55); border-radius:999px 999px 24px 24px;
}
.bp_pimg .widget-image-caption{
  font-size:12px; color:var(--bp-mut); margin-top:14px; text-align:right; }

/* =========================================================
   ARTICLE + SIDEBAR
   ========================================================= */
.bp_body{
  padding-left:var(--bp-pad) !important; padding-right:var(--bp-pad) !important;
  color:var(--bp-dk);
}
.bp_layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:clamp(40px,6vw,90px);
  align-items:start;
  width:100%; max-width:1120px; margin:0 auto;
}

/* article */
.bp_post{
  font-size:clamp(21px,1.9vw,25px); line-height:1.62;
  color:#2a2132; max-width:700px; min-width:0;
}
.bp_post p{margin:0 0 1.35em; font-size:inherit; line-height:inherit; color:inherit; }
.bp_post p.bp_lead{
  font-size:1.28em; font-style:italic; line-height:1.4; color:var(--bp-dk);
  border-bottom:1px solid rgba(28,18,36,.15); padding-bottom:1.1em; margin-bottom:1.5em;
}
.bp_post a{
  color:var(--bp-deep); text-decoration:underline; text-decoration-thickness:1px;
  text-underline-offset:4px; text-decoration-color:rgba(109,40,217,.45);
  transition:text-decoration-color .25s,color .25s;
}
.bp_post a:hover{color:#4c1d95; text-decoration-color:currentColor}
.bp_post h2{font-size:1.5em; font-style:italic; font-weight:600; line-height:1.1; margin:1.6em 0 .5em; color:var(--bp-dk)}
.bp_post blockquote{
  margin:1.8em 0; padding:.2em 0 .2em 1.1em; border:0; border-left:3px solid var(--bp-deep);
  font-size:1.45em; font-style:italic; line-height:1.3; color:var(--bp-dk); background:none;
}
.bp_post p.bp_sign{
  font-size:14px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--bp-dkm); border-top:1px solid rgba(28,18,36,.15); padding-top:1.4em; margin-top:2em; margin-bottom:0;
}
.bp_post .bp_sign b{color:var(--bp-deep)}

/* sidebar */
.bp_side{position:sticky; top:110px; align-self:start; width:auto !important; gap:22px !important; --gap:22px; --row-gap:22px}
.bp_scard{
  background:#fff; border:1px solid rgba(28,18,36,.1); border-radius:22px;
  padding:26px 24px; box-shadow:0 14px 40px rgba(28,18,36,.08);
}
.bp_scard h2{font-size:26px; font-style:italic; font-weight:600; line-height:1.1; margin:0 0 6px; color:var(--bp-dk)}
.bp_scard .bp_sub{font-size:13px; color:var(--bp-dkm); margin-bottom:16px}
.bp_rec{list-style:none; margin:0; padding:0}
.bp_rec li{border-top:1px solid rgba(28,18,36,.12); margin:0}
.bp_rec a{display:block; padding:14px 4px; text-decoration:none; transition:padding .3s,background .3s}
.bp_rec a:hover{padding-left:12px; background:linear-gradient(90deg,rgba(109,40,217,.1),transparent)}
.bp_rec b{display:block; font-size:21px; line-height:1.15; color:var(--bp-dk)}
.bp_rec span{font-size:12.5px; color:var(--bp-dkm)}
.bp_share{display:flex; gap:10px; flex-wrap:wrap; margin-top:12px}
.bp_share button,.bp_share a{
  flex:1 1 auto; text-align:center; text-decoration:none;
  border:1px solid rgba(28,18,36,.25); background:none; color:var(--bp-dk);
  border-radius:999px; padding:9px 16px; font-size:13px; font-weight:600;
  cursor:pointer; transition:all .25s;
}
.bp_share button:hover,.bp_share a:hover{background:var(--bp-deep); border-color:var(--bp-deep); color:#fff}

/* author box */
.bp_author{
  display:grid !important; grid-template-columns:auto 1fr auto; gap:26px; align-items:center;
  width:100%; max-width:1120px; margin:70px auto 0;
  background:var(--bp-ink2); color:var(--bp-text);
  border-radius:28px !important; padding:30px 36px !important;
}
.bp_author_img{width:96px}
.bp_author_img img{width:96px; height:96px; border-radius:50%; object-fit:cover; border:2px solid var(--bp-vio); display:block}
.bp_author_txt{width:auto !important; min-width:0}
.bp_author_small p{font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--bp-vio); font-weight:700}
.bp_author_name .elementor-heading-title{
  font-size:30px !important; font-style:italic; font-weight:600 !important;
  line-height:1.05 !important; color:var(--bp-text) !important; margin:2px 0 4px;
}
.bp_author_bio p{font-size:14.5px; line-height:1.7; color:var(--bp-mut); max-width:520px}

/* previous / next */
.bp_pn_wrap{width:100%; max-width:1120px; margin:40px auto 0}
.bp_pn{display:grid; grid-template-columns:1fr 1fr; gap:20px}
.bp_pn a{
  display:block; border:1px solid rgba(28,18,36,.18); border-radius:22px; padding:24px 28px;
  text-decoration:none; transition:border-color .3s,transform .3s,background .3s;
}
.bp_pn a:hover{border-color:var(--bp-deep); transform:translateY(-4px); background:#fff}
.bp_pn small{font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:var(--bp-deep); font-weight:700}
.bp_pn b{display:block; font-size:clamp(24px,2.6vw,34px); font-style:italic; font-weight:600; line-height:1.1; margin-top:6px; color:var(--bp-dk)}
.bp_pn a:last-child{text-align:right}

/* =========================================================
   KEEP READING
   ========================================================= */
.bp_more{padding-left:var(--bp-pad) !important; padding-right:var(--bp-pad) !important}
.bp_more_head{
  display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap;
  gap:24px !important; --gap:24px; --row-gap:24px; --column-gap:24px; margin-bottom:40px;
  width:100%;
}
.bp_more_title{width:auto !important}
.bp_h2{margin-top:14px !important}
.bp_h2 .elementor-heading-title{
  font-weight:600 !important;
  font-size:clamp(36px,5vw,68px) !important; line-height:1.05 !important; color:#fff !important;
}
.bp_h2 em{font-style:italic; color:var(--bp-vio)}
.bp_mgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px}
.bp_mc{
  display:flex; flex-direction:column; min-height:240px; padding:30px 28px;
  border:1px solid rgba(255,255,255,.12); border-radius:24px; text-decoration:none;
  background:linear-gradient(160deg,var(--bp-ink3),var(--bp-ink2));
  transition:transform .4s,border-color .4s;
}
.bp_mc:hover{transform:translateY(-8px); border-color:var(--bp-vio)}
.bp_mc small{font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:var(--bp-vio); font-weight:700}
.bp_mc h3{font-size:clamp(26px,2.6vw,34px); font-style:italic; font-weight:600; line-height:1.05; margin:10px 0; color:#fff}
.bp_mc p{font-size:14px; line-height:1.7; color:var(--bp-mut); margin-bottom:auto}
.bp_mc span{margin-top:18px; font-size:13px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--bp-vio)}

/* =========================================================
   MAILING LIST  (Contact Form 7 newsletter form)
   ========================================================= */
.bp_mail{padding-left:var(--bp-pad) !important; padding-right:var(--bp-pad) !important; text-align:center}
.bp_mail_frame{
  position:relative; align-items:center; text-align:center;
  background:var(--bp-bone) !important; color:var(--bp-dk);
  border:1px solid var(--bp-deep) !important; border-radius:36px !important;
  padding:clamp(40px,6vw,80px) clamp(22px,5vw,60px) !important;
}
.bp_mail_frame::after{
  content:""; position:absolute; inset:10px; border:1px solid rgba(109,40,217,.3);
  border-radius:28px; pointer-events:none;
}
.bp_mail .bp_eyebrow .elementor-heading-title{color:var(--bp-deep) !important}
.bp_mail_title{margin:16px 0 16px !important}
.bp_mail_title .elementor-heading-title{
  font-weight:600 !important;
  font-size:clamp(38px,5.4vw,76px) !important; line-height:1.05 !important; color:var(--bp-dk) !important;
}
.bp_mail_title em{font-style:italic; color:var(--bp-deep)}
.bp_mail_text{max-width:480px; margin:0 auto 30px !important}
.bp_mail_text p{color:var(--bp-dkm); line-height:1.75}
.bp_mform_wrap{width:100%; max-width:560px; margin:0 auto}

.bp_mform_wrap .wpcf7 form{margin:0}
.bp_mform_wrap .wpcf7-form-control-wrap{display:block; flex:1; min-width:0}
.bp_mform{
  display:flex; gap:10px; background:#fff; border-radius:999px; padding:8px;
  border:1px solid rgba(28,18,36,.15); text-align:left;
}
.bp_mform:focus-within{border-color:var(--bp-deep); box-shadow:0 0 0 3px rgba(109,40,217,.2)}
.bp_mform br,.bp_mform p:empty{display:none}
.bp_mform p{margin:0; display:contents}
.bp_mform input[type="email"]{
  width:100%; border:0 !important; background:none !important; box-shadow:none !important;
  padding:0 20px; height:100%; min-height:46px; font-size:15px; color:var(--bp-dk);
}
.bp_mform input[type="email"]:focus{outline:none}
.bp_msubmit{
  display:inline-flex; align-items:center; justify-content:center; white-space:nowrap;
  padding:14px 28px; border:0; border-radius:999px; background:var(--bp-deep); color:#fff;
  font-weight:600; font-size:14px; letter-spacing:.04em;
  cursor:pointer; transition:background .3s;
}
.bp_msubmit:hover{background:#4c1d95}
.bp_mform_wrap .wpcf7 form.submitting .bp_msubmit{opacity:.6; cursor:wait; pointer-events:none}
.bp_mform_wrap .wpcf7-spinner{display:none}
.bp_sr_only{position:absolute !important; left:-9999px; width:1px; height:1px; overflow:hidden}
.bp_mform_wrap .wpcf7-not-valid-tip{display:block; font-size:12.5px; color:#c0173f; margin:8px 0 0 20px; text-align:left}
.bp_mform_wrap .wpcf7 form .wpcf7-response-output{
  margin:16px 0 0; padding:12px 16px; border:0; border-radius:12px; font-size:14px; line-height:1.5; text-align:center;
}
.bp_mform_wrap .wpcf7 form.sent .wpcf7-response-output{background:#ede7fb; color:#3b1578; font-weight:600}
.bp_mform_wrap .wpcf7 form.invalid .wpcf7-response-output,
.bp_mform_wrap .wpcf7 form.failed .wpcf7-response-output,
.bp_mform_wrap .wpcf7 form.aborted .wpcf7-response-output,
.bp_mform_wrap .wpcf7 form.spam .wpcf7-response-output{background:#fde7ec; color:#8b1031}

/* =========================================================
   SCRIPT WIDGET (reading progress bar)
   ========================================================= */
.bp_js{padding:0 !important; min-height:0 !important; height:0; margin:0 !important}
.bp_progress{
  position:fixed; top:0; left:0; width:100%; height:3px; z-index:9999;
  transform:scaleX(0); transform-origin:left; pointer-events:none;
  background:linear-gradient(90deg,#6d28d9,#c4b5fd);
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1000px){
  .bp_phero > .e-con-inner,.bp_phero.e-con-full{grid-template-columns:1fr}
  .bp_phero{padding-top:170px !important}
  .bp_pimg{justify-self:start; max-width:340px; order:-1}
  .bp_pimg .widget-image-caption{text-align:left}

  .bp_layout{grid-template-columns:1fr}
  .bp_side{position:static}

  .bp_author{grid-template-columns:auto 1fr}
  .bp_author > .elementor-widget-button{grid-column:1 / -1; justify-self:start}
  .bp_mgrid{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  .bp_pn,.bp_mgrid{grid-template-columns:1fr}
  .bp_pn a:last-child{text-align:left}
  .bp_author{padding:24px 22px !important}
  .bp_mform{flex-direction:column; border-radius:26px; padding:12px}
  .bp_mform input[type="email"]{padding:12px 16px}
  .bp_msubmit{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .bp_scope *,.bp_scope *::before,.bp_scope *::after{transition:none !important; animation:none !important}
}
/* =========================================================
   Suzanne's Rain – Contact Us page
   Paste in: Elementor > Site Settings > Custom CSS
   (ya Appearance > Customize > Additional CSS)
   Sab classes "sr_" se shuru hoti hain taake baqi site se na takrayein.
   ========================================================= */

/* ---------- VARIABLES ---------- */
.sr_scope{
  --sr-ink:#12091f; --sr-bone:#f6f3ee;
  --sr-vio:#a78bfa; --sr-vio2:#c4b5fd; --sr-deep:#6d28d9;
  --sr-text:#efe9fb; --sr-mut:#b6abd0;
  --sr-dk:#1c1224; --sr-dkm:#6b6275;
  --sr-pad:clamp(20px,5vw,72px);
  color:var(--sr-text);
  /* Elementor ka default gap hata do, spacing hum khud dete hain */
  --gap:0px; --row-gap:0px; --column-gap:0px;
}
.sr_scope p{margin:0}
.sr_scope .elementor-widget{margin:0}

/* ---------- SHARED: eyebrow ---------- */
.sr_eyebrow .elementor-heading-title{
  display:inline-flex !important; align-items:center; gap:14px;
  font-size:12px !important; font-weight:600 !important;
  letter-spacing:.3em; text-transform:uppercase; line-height:1.4 !important;
  color:var(--sr-vio) !important;
}
.sr_eyebrow .elementor-heading-title::before{content:"";width:42px;height:1px;background:currentColor}

/* ---------- SHARED: buttons ---------- */
.sr_btn .elementor-button{
  display:inline-flex; align-items:center; gap:10px;
  padding:15px 30px; border-radius:999px;
  font-weight:600; font-size:14px; letter-spacing:.04em;
  border:1px solid transparent; transition:transform .3s,background .3s,color .3s,border-color .3s;
}
.sr_btn .elementor-button-text::after{content:"→";margin-left:10px;display:inline-block;transition:transform .3s}
.sr_btn .elementor-button:hover .elementor-button-text::after{transform:translateX(4px)}
.sr_btn_white .elementor-button{background:#fff !important;color:#2a1450 !important}
.sr_btn_white .elementor-button:hover{transform:translateY(-2px)}
.sr_btn_line .elementor-button{background:transparent !important;color:#fff !important;border-color:rgba(255,255,255,.35)}
.sr_btn_line .elementor-button:hover{border-color:var(--sr-vio);color:var(--sr-vio) !important}

/* =========================================================
   HERO
   ========================================================= */
.sr_hero{
  position:relative; overflow:hidden; isolation:isolate;
  min-height:62vh;
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:170px var(--sr-pad) 60px !important;
  background-position:50% 30% !important;
}
.sr_hero::after{                       /* dark + purple overlay */
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    linear-gradient(180deg,rgba(18,9,31,.6),rgba(18,9,31,.55) 40%,#12091f 98%),
    linear-gradient(95deg,rgba(18,9,31,.85),rgba(76,29,149,.25) 70%);
}
.sr_hero .elementor-widget:not(.sr_rain){position:relative; z-index:2}

.sr_rain{position:absolute !important; inset:0; width:100% !important; height:100%; z-index:1; pointer-events:none}
.sr_rain .elementor-widget-container,
.sr_rain canvas{width:100%; height:100%; display:block}

.sr_crumbs{margin-bottom:18px !important}
.sr_crumbs p{font-size:13px; color:var(--sr-mut)}
.sr_crumbs a{color:inherit} .sr_crumbs a:hover{color:#fff}

.sr_h1{margin:18px 0 20px !important}
.sr_h1 .elementor-heading-title{
  font-weight:600 !important;
  font-size:clamp(60px,12vw,170px) !important; line-height:1.02 !important;
  letter-spacing:-.02em; color:#fff !important;
}
.sr_h1 em{font-style:italic; color:var(--sr-vio)}
.sr_hero_text{max-width:520px}
.sr_hero_text p{font-size:18px; line-height:1.75; color:#e6defa}

/* =========================================================
   CONTACT SECTION  (left text | right form card)
   ========================================================= */
.sr_contact > .e-con-inner,
.sr_contact.e-con-full{
  display:grid !important;
  grid-template-columns:5fr 6fr;
  gap:clamp(40px,7vw,110px);
  align-items:start;
}
.sr_contact{padding-left:var(--sr-pad) !important; padding-right:var(--sr-pad) !important}
.sr_lead,.sr_card{width:auto !important; min-width:0}

/* ----- left side ----- */
.sr_h2{margin:18px 0 24px !important}
.sr_h2 .elementor-heading-title{
  font-weight:600 !important;
  font-size:clamp(40px,5.2vw,76px) !important; line-height:1.02 !important; color:#fff !important;
}
.sr_h2 em{font-style:italic; color:var(--sr-vio)}
.sr_lead_text{max-width:460px; margin-bottom:34px !important}
.sr_lead_text p{color:#d8cdf2; line-height:1.75}

.sr_topics{list-style:none; margin:0 0 38px; padding:0; border-top:1px solid rgba(255,255,255,.14)}
.sr_topics li{
  display:flex; justify-content:space-between; gap:16px; align-items:baseline;
  padding:16px 4px; border-bottom:1px solid rgba(255,255,255,.14);
  transition:padding .35s,background .35s;
}
.sr_topics li:hover{padding-left:16px; background:linear-gradient(90deg,rgba(167,139,250,.12),transparent)}
.sr_topics b{font-size:28px; font-weight:600; line-height:1.1; color:#fff}
.sr_topics span{font-size:13px; color:var(--sr-mut); text-align:right}

.sr_find small{display:block; font-size:12px; letter-spacing:.3em; text-transform:uppercase; color:var(--sr-vio); font-weight:600; margin-bottom:14px}
.sr_find_links{display:flex; flex-wrap:wrap; gap:10px}
.sr_find_links a{
  border:1px solid rgba(255,255,255,.25); border-radius:999px; padding:8px 18px;
  font-size:13.5px; font-weight:600; color:#fff; text-decoration:none; transition:all .25s;
}
.sr_find_links a:hover{background:var(--sr-vio); border-color:var(--sr-vio); color:#1a0f2e}

/* ----- right side: card ----- */
.sr_card{
  position:relative;
  background:var(--sr-bone) !important; color:var(--sr-dk);
  border-radius:32px !important;
  padding:clamp(28px,4vw,56px) !important;
  box-shadow:0 40px 90px rgba(0,0,0,.45);
}
.sr_card::after{                        /* inner thin border */
  content:""; position:absolute; inset:10px; border:1px solid rgba(109,40,217,.3);
  border-radius:24px; pointer-events:none;
}
.sr_card_title{margin-bottom:6px !important}
.sr_card_title .elementor-heading-title{
  font-style:italic; font-weight:600 !important;
  font-size:clamp(32px,3.4vw,46px) !important; line-height:1.02 !important; color:var(--sr-dk) !important;
}
.sr_card_sub{margin-bottom:28px !important}
.sr_card_sub p{color:var(--sr-dkm); font-size:14.5px}
.sr_fine{margin-top:14px !important}
.sr_fine p{font-size:12.5px; color:var(--sr-dkm); text-align:center}

/* =========================================================
   CONTACT FORM 7
   ========================================================= */
.sr_card .wpcf7 form{margin:0}
.sr_form{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.sr_form .sr_full{grid-column:1 / -1}
.sr_form br,.sr_form p:empty{display:none}
.sr_form p{margin:0}

.sr_field label{
  display:block; font-size:12px; font-weight:600; letter-spacing:.14em;
  text-transform:uppercase; color:var(--sr-deep); margin:0 0 6px;
}
.sr_card .wpcf7-form-control-wrap{display:block; width:100%}
.sr_card .sr_field input[type="text"],
.sr_card .sr_field input[type="email"],
.sr_card .sr_field select,
.sr_card .sr_field textarea{
  width:100%; background:#fff; color:var(--sr-dk);
  border:1px solid rgba(28,18,36,.18); border-radius:14px;
  padding:13px 16px; font-size:15px; line-height:1.4;
  box-shadow:none; transition:border-color .25s,box-shadow .25s;
}
.sr_card .sr_field textarea{min-height:160px; height:160px; resize:vertical; line-height:1.6}
.sr_card .sr_field input:focus,
.sr_card .sr_field select:focus,
.sr_card .sr_field textarea:focus{
  outline:none; border-color:var(--sr-deep); box-shadow:0 0 0 3px rgba(109,40,217,.2);
}
/* validation */
.sr_card .wpcf7-not-valid{border-color:#c0173f !important; box-shadow:0 0 0 3px rgba(192,23,63,.12) !important}
.sr_card .wpcf7-not-valid-tip{display:block; font-size:12.5px; color:#c0173f; margin-top:5px}

/* submit */
.sr_submit{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  width:100%; margin-top:6px; padding:15px 30px;
  background:var(--sr-deep); color:#fff; border:1px solid transparent; border-radius:999px;
  font-weight:600; font-size:14px; letter-spacing:.04em;
  cursor:pointer; transition:transform .3s,background .3s;
}
.sr_submit::after{content:"→"; transition:transform .3s}
.sr_submit:hover{background:#4c1d95; transform:translateY(-2px)}
.sr_submit:hover::after{transform:translateX(4px)}
.wpcf7 form.submitting .sr_submit{opacity:.6; cursor:wait; pointer-events:none}
.sr_card .wpcf7-spinner{display:none}

/* response messages (success / error) */
.sr_card .wpcf7 form .wpcf7-response-output{
  margin:18px 0 0; padding:14px 18px; border:0; border-radius:12px;
  font-size:14px; line-height:1.5; text-align:center;
}
.sr_card .wpcf7 form.sent .wpcf7-response-output{
  background:#ede7fb; color:#3b1578; font-weight:600;
}
.sr_card .wpcf7 form.invalid .wpcf7-response-output,
.sr_card .wpcf7 form.unaccepted .wpcf7-response-output,
.sr_card .wpcf7 form.failed .wpcf7-response-output,
.sr_card .wpcf7 form.aborted .wpcf7-response-output,
.sr_card .wpcf7 form.spam .wpcf7-response-output{
  background:#fde7ec; color:#8b1031;
}

/* =========================================================
   STRIP
   ========================================================= */
.sr_strip{
  background-image:linear-gradient(90deg,#3b1578,#6d28d9 50%,#3b1578) !important;
  text-align:center; align-items:center;
  padding-left:var(--sr-pad) !important; padding-right:var(--sr-pad) !important;
}
.sr_strip_title{margin-bottom:12px !important}
.sr_strip_title .elementor-heading-title{
  font-weight:600 !important;
  font-size:clamp(34px,4.6vw,64px) !important; line-height:1.05 !important; color:#fff !important;
}
.sr_strip_title em{font-style:italic; color:var(--sr-vio2)}
.sr_strip_text{max-width:480px; margin:0 auto 26px !important}
.sr_strip_text p{color:#e6defa; line-height:1.75}
.sr_strip_btns{justify-content:center; align-items:center; gap:12px !important; --gap:12px; --row-gap:12px; --column-gap:12px}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1000px){
  .sr_contact > .e-con-inner,
  .sr_contact.e-con-full{grid-template-columns:1fr}
}
@media (max-width:620px){
  .sr_form{grid-template-columns:1fr}
  .sr_topics span{display:none}
  .sr_hero{padding-top:130px !important}
}
@media (prefers-reduced-motion:reduce){
  .sr_scope *,.sr_scope *::before,.sr_scope *::after{transition:none !important; animation:none !important}
}
/* =========================================================
   Suzanne's Lyrics – Masonry cards
   Paste in: Elementor > Site Settings > Custom CSS
   (ya Appearance > Customize > Additional CSS)
   ========================================================= */

.lyrics_masonry{
  --lyr-purple:#b83fb5;
  --lyr-ink:#2a1233;
  --lyr-cream:#FCF0E4;
  --lyr-gap:28px;
}

/* ---------- MASONRY (CSS columns) ---------- */
.lyrics_masonry > .e-con-inner,
.lyrics_masonry.e-con-full{
  display:block !important;
  column-count:2;
  column-gap:var(--lyr-gap);
  width:100%;
  max-width:1200px;
  margin:0 auto;
}
/* optional: force 3 cards per column on desktop (End, Eagle, Millie | Grip, Strong, Dream)
@media (min-width:768px){
  .lyrics_masonry .lyrics_col:nth-child(3){ break-after:column; }
}
*/

/* ---------- CARD ---------- */
.lyrics_masonry .lyrics_col{
  display:flex !important;
  width:100% !important;
  margin:0 0 var(--lyr-gap) !important;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  overflow:hidden;
  border-radius:18px !important;
  background:var(--lyr-cream);
  box-shadow:0 14px 34px rgba(60,20,70,.18);
  transition:transform .3s ease, box-shadow .3s ease;
}
.lyrics_masonry .lyrics_col:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 44px rgba(60,20,70,.26);
}
.lyrics_masonry .lyrics_col > .e-con{ border-radius:0 !important; }

/* ---------- TYPOGRAPHY ---------- */
.lyrics_masonry .elementor-image-box-wrapper{ text-align:left; }
.lyrics_masonry .elementor-image-box-title{
  font-weight:400;
  font-size:30px;
  line-height:1.1;
  color:var(--lyr-ink);
  margin:0 0 16px;
  padding-left:14px;
  border-left:4px solid var(--lyr-purple);
}
.lyrics_masonry .small_head{
  display:block;
  margin-top:6px;
  font-size:15px;
  font-weight:700;
  line-height:1.3;
}
.lyrics_masonry .elementor-image-box-description{
  font-size:15px;
  line-height:1.55;
  color:var(--lyr-ink);
}

/* ---------- CARD 1 + 4: image strip left, text right ---------- */
.lyrics_masonry .card-raven > .e-con:first-child,
.lyrics_masonry .card-hand  > .e-con:first-child{
  flex:0 0 36%;
  min-height:100%;
}
.lyrics_masonry .card-raven > .e-con:last-child,
.lyrics_masonry .card-hand  > .e-con:last-child{
  flex:1 1 auto;
  padding:26px 20px 22px 22px !important;
}

/* ---------- CARD: The Eagle (light, eagle top-right) ---------- */
.lyrics_masonry .card-eagle .elementor-image-box-description{ max-width:78%; }
.lyrics_masonry .card-eagle .e-con .e-con{
  gap:16px;
  margin-top:18px;
  flex-wrap:nowrap;
}
.lyrics_masonry .card-eagle .e-con .e-con .elementor-widget-image{ flex:1 1 0; }
.lyrics_masonry .card-eagle .e-con .e-con img{
  width:100%;
  height:130px;
  object-fit:cover;
  border-radius:6px;
  box-shadow:0 4px 12px rgba(0,0,0,.25);
}

/* ---------- CARD: Millie (light, coneflower right) ---------- */
.lyrics_masonry .card-millie .elementor-image-box-description{ max-width:80%; }
/* agar Millie ke andar images row hai to chhupa do (screenshot mein nahi hai) */
.lyrics_masonry .card-millie .e-con .e-con{ display:none !important; }

/* ---------- CARD: Strong and Foolish Heart (dark, guitar right) ---------- */
.lyrics_masonry .card-strong{ background:#1a0824; }
.lyrics_masonry .card-strong .elementor-image-box-title,
.lyrics_masonry .card-strong .small_head,
.lyrics_masonry .card-strong .elementor-image-box-description{ color:#fff; }
.lyrics_masonry .card-strong .elementor-image-box-description{
  max-width:62%;
  font-size:13.5px;
  line-height:1.45;
}

/* ---------- CARD: I Wish I Didn't Dream (sunset gradient) ---------- */
.lyrics_masonry .card-dream{ position:relative; }
.lyrics_masonry .card-dream::after{            /* simple mountain silhouette */
  content:"";
  position:absolute; right:0; bottom:0;
  width:55%; height:45%;
  background:
    linear-gradient(160deg,transparent 49%,rgba(120,80,150,.45) 50%) 0 100%/60% 70% no-repeat,
    linear-gradient(200deg,transparent 49%,rgba(90,50,120,.5) 50%) 100% 100%/70% 55% no-repeat;
  pointer-events:none;
}

/* ---------- TABLET / MOBILE ---------- */
@media (max-width:767px){
  .lyrics_masonry > .e-con-inner,
  .lyrics_masonry.e-con-full{ column-count:1; }

  .lyrics_masonry .elementor-image-box-title{ font-size:26px; }
  .lyrics_masonry .card-eagle .elementor-image-box-description,
  .lyrics_masonry .card-millie .elementor-image-box-description,
  .lyrics_masonry .card-strong .elementor-image-box-description{ max-width:100%; }

  .lyrics_masonry .card-raven,
  .lyrics_masonry .card-hand{ flex-direction:column !important; }
  .lyrics_masonry .card-raven > .e-con:first-child,
  .lyrics_masonry .card-hand  > .e-con:first-child{
    flex:none; width:100% !important; min-height:190px;
  }
}
.sticky_col {
    position: sticky !important;
    top: 60px !important;
    height: fit-content !important;
}
.sr_card {
	height: fit-content !important;
}
 