
.booking-main{background:linear-gradient(180deg,#06030e 0%,#0b0518 100%);}
.booking-hero{position:relative;overflow:hidden;text-align:center;padding:92px 24px 76px;border-bottom:1px solid rgba(170,61,240,.18);background:radial-gradient(circle at 50% 20%,rgba(117,27,198,.32),transparent 42%),linear-gradient(180deg,#090314,#0a0416);}
.booking-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.5rem,7vw,6.4rem);line-height:1;margin:18px 0 20px;letter-spacing:-.04em;}
.booking-hero h1 span{color:#ae43f0;}
.booking-lead{max-width:790px;margin:auto;color:#d8cce2;font-size:1.12rem;}
.booking-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.3;pointer-events:none}.glow-one{width:320px;height:320px;background:#8d24e8;left:-120px;top:20px}.glow-two{width:350px;height:350px;background:#5e17b4;right:-120px;bottom:-150px}
.booking-layout{width:min(var(--max),calc(100% - 42px));margin:0 auto;padding:70px 0 34px;display:grid;grid-template-columns:1.35fr .65fr;gap:26px}
.feature-panel,.mini-panel,.request-form,.request-copy{border:1px solid #7024a8;border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(177,66,245,.14),transparent 28%),linear-gradient(145deg,rgba(28,9,53,.9),rgba(8,4,17,.94));box-shadow:0 20px 55px rgba(0,0,0,.26)}
.feature-panel{padding:38px}.feature-panel h2,.request-copy h2,.request-section h2,.payment-section h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,3rem);line-height:1.08;margin:10px 0 22px}.feature-panel p{color:#d1c5db;margin-bottom:17px}.notice,.age-box{margin-top:25px;padding:17px 18px;border-left:4px solid #c54fff;border-radius:10px;background:rgba(164,50,231,.11);color:#f2e8f8}
.mini-panel{position:relative;padding:34px}.mini-panel h3{font-family:Georgia,"Times New Roman",serif;font-size:1.7rem;margin:10px 0 12px}.mini-panel>p:not(.section-kicker){color:#cdbfd8}.topic-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.topic-pills span{padding:7px 11px;border:1px solid rgba(194,80,255,.4);border-radius:999px;color:#e7d9ef;background:rgba(116,31,183,.13);font-size:.86rem}
.reading-section{padding:54px 24px 90px}.section-subtitle{max-width:720px;margin:12px auto 0;color:#bfb1cb}.price-grid{width:min(var(--max),calc(100% - 10px));margin:35px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.price-card{position:relative;padding:28px 24px;border:1px solid #7828b5;border-radius:20px;background:linear-gradient(145deg,rgba(25,8,48,.94),rgba(7,3,15,.96));text-align:center;box-shadow:0 18px 42px rgba(0,0,0,.24)}.price-card.featured{border-color:#ca52ff;box-shadow:0 0 25px rgba(172,51,240,.15),0 18px 42px rgba(0,0,0,.24)}.popular{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);padding:5px 11px;border-radius:999px;background:#8e2bd0;color:white;font-size:.67rem;font-weight:800;letter-spacing:.12em}.price-icon{display:block;color:#d26eff;font-size:2rem;text-shadow:0 0 18px #a83be6}.price-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;margin:8px 0}.price{color:#d168ff;font-size:2rem;font-weight:900;margin:8px 0 12px}.price-card p{color:#c5b8cf;font-size:.94rem}
.request-section{width:min(var(--max),calc(100% - 42px));margin:0 auto 90px;display:grid;grid-template-columns:.78fr 1.22fr;gap:26px}.request-copy{padding:38px;align-self:start}.request-copy>p:not(.section-kicker){color:#cbbfd5}.request-form{padding:32px;display:grid;gap:18px}.request-form label{display:grid;gap:8px;color:#eee5f5;font-weight:700}.request-form input,.request-form select,.request-form textarea{width:100%;border:1px solid #63308c;border-radius:12px;background:#090511;color:white;padding:14px 15px;font:inherit;outline:none}.request-form textarea{resize:vertical}.request-form input:focus,.request-form select:focus,.request-form textarea:focus{border-color:#c550ff;box-shadow:0 0 0 3px rgba(190,65,255,.12)}.check-row{grid-template-columns:auto 1fr!important;align-items:start;font-weight:400!important;color:#cfc2d9!important}.check-row input{width:18px;height:18px;margin-top:3px;accent-color:#a73ee4}.submit-button{min-height:58px;border:1px solid #e05cff;border-radius:15px;background:linear-gradient(180deg,#7624c9,#521192);color:white;font-weight:800;font-size:1.02rem;cursor:pointer;box-shadow:0 0 16px rgba(208,74,255,.45)}.form-note{font-size:.86rem;color:#a99ab5;text-align:center}.form-status{min-height:0;color:#e7d7ef;font-size:.9rem;text-align:center}
.payment-section{padding:10px 24px 90px}.payment-grid{width:min(1050px,100%);margin:32px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.payment-card{min-height:170px;padding:26px;border:1px solid #7727af;border-radius:18px;background:linear-gradient(145deg,rgba(25,8,48,.92),rgba(8,4,17,.95));display:flex;flex-direction:column;justify-content:center;text-align:center;text-decoration:none;transition:.2s ease}.payment-card:hover{transform:translateY(-2px);border-color:#cb55ff;box-shadow:0 0 22px rgba(177,58,241,.16)}.payment-card strong{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem}.payment-card span{color:#d575ff;margin:6px 0;word-break:break-word}.payment-card small{color:#aa9ab7}.email-contact{text-align:center;margin:30px auto 0;color:#c7bacf}.email-contact a{color:#d46fff;font-weight:700}
@media(max-width:1000px){.price-grid{grid-template-columns:repeat(2,1fr)}.booking-layout,.request-section{grid-template-columns:1fr}.payment-grid{grid-template-columns:1fr}}
@media(max-width:600px){.booking-hero{padding:70px 16px 58px}.booking-layout,.request-section{width:min(100% - 28px,var(--max))}.feature-panel,.mini-panel,.request-copy,.request-form{padding:25px}.reading-section,.payment-section{padding-left:14px;padding-right:14px}.price-grid{grid-template-columns:1fr}.payment-grid{grid-template-columns:1fr}}

.booking-hero-actions{
  margin-top:28px;
  display:flex;
  justify-content:center;
}
.reading-section{
  position:relative;
  background:
    radial-gradient(circle at 50% 0,rgba(116,28,197,.15),transparent 38%),
    linear-gradient(180deg,#0a0416,#080412);
  border-bottom:1px solid rgba(167,62,236,.13);
}

.submit-button:disabled{
  opacity:.68;
  cursor:wait;
  transform:none;
}
.form-status{
  padding:0;
  border-radius:12px;
  line-height:1.55;
}
.form-status.success,
.form-status.error,
.form-status.sending{
  padding:15px 16px;
}
.form-status.success{
  color:#f5eaff;
  background:rgba(65,170,112,.12);
  border:1px solid rgba(103,232,157,.35);
}
.form-status.error{
  color:#ffe8ed;
  background:rgba(190,55,86,.12);
  border:1px solid rgba(255,100,135,.35);
}
.form-status.error a{
  color:#df86ff;
  font-weight:800;
}
.form-status.sending{
  color:#e8d8f1;
  background:rgba(145,60,205,.10);
  border:1px solid rgba(185,83,247,.28);
}
