/* Shared rules for all service pages (co-writing, sync-licensing, artist-development, music-marketing) */

/* Full-bleed hero — background-position set per page */
.page-hero{position:absolute;top:0;left:0;right:0;height:100vh;height:100svh;background-size:cover;z-index:0;}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(7,9,15,0.78) 0%,rgba(7,9,15,0.3) 35%,rgba(7,9,15,0.78) 68%,rgba(7,9,15,1) 100%);}
.nav-over-hero{border-bottom-color:transparent;}

/* Section label */
.section-label{font-size:11px;letter-spacing:0.32em;color:var(--ink-low);margin-bottom:32px;display:flex;align-items:center;gap:18px;text-transform:uppercase;}
.section-label::after{content:'';flex:1;height:1px;background:var(--rule);}

/* Hero */
.cw-hero,.sl-hero,.mm-hero{padding:calc(55vh) 0 64px;}
.cw-hero-text,.sl-hero-text,.mm-hero-text{min-width:0;}
.cw-kicker,.sl-kicker,.mm-kicker{font-size:11px;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-low);margin-bottom:20px;}
.cw-headline,.sl-headline,.mm-headline{font-style:italic;font-weight:300;font-size:clamp(22px,4.2vw,36px);letter-spacing:var(--ls-tightest);line-height:var(--lh-tight);color:var(--ink);text-wrap:balance;margin-bottom:20px;}
.cw-sub,.sl-sub,.mm-sub{font-style:italic;font-weight:300;font-size:15px;color:var(--ink-low);line-height:1.65;margin-bottom:32px;}
.sl-sub,.mm-sub{max-width:520px;}

/* CTA button */
@keyframes ctaShimmer{0%,100%{opacity:0.82;border-color:rgba(157,111,212,0.35);}50%{opacity:1;border-color:rgba(157,111,212,0.62);}}
.cw-cta,.sl-cta,.mm-cta{display:inline-block;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--ink-hi);text-decoration:none;padding:11px 24px;border:1px solid rgba(157,111,212,0.4);border-radius:1px;transition:border-color 0.4s,color 0.4s,background 0.4s;animation:ctaShimmer 8.5s ease-in-out infinite;}
.cw-cta:hover,.sl-cta:hover,.mm-cta:hover{color:var(--purple);border-color:var(--purple);background:rgba(157,111,212,0.06);}

/* Sections */
.cw-section,.sl-section,.mm-section{padding:64px 0;border-top:1px solid var(--rule);}

/* Content row lists */
.cw-format-list,.sl-card-list,.mm-card-list{display:grid;gap:0;margin-top:8px;}
.cw-format-row,.sl-card-row,.mm-card-row{display:grid;gap:24px;padding:24px 0;border-bottom:1px solid var(--rule);align-items:start;}
.cw-format-row:first-child,.sl-card-row:first-child,.mm-card-row:first-child{border-top:1px solid var(--rule);}
.cw-format-row{grid-template-columns:110px 1fr;}
.sl-card-row,.mm-card-row{grid-template-columns:130px 1fr;}
.cw-format-kicker,.sl-card-kicker,.mm-card-kicker{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-low);padding-top:3px;}
.cw-format-title,.sl-card-title,.mm-card-title{font-style:italic;font-weight:300;font-size:clamp(17px,2.4vw,20px);line-height:1.2;color:var(--ink);margin-bottom:8px;text-wrap:balance;}
.cw-format-copy,.sl-card-copy,.mm-card-copy{font-weight:300;font-size:15px;color:var(--ink-low);line-height:1.75;text-wrap:pretty;}

/* Process body */
.cw-process-body,.sl-process-body,.mm-process-body{font-weight:400;font-size:17px;color:var(--ink-med);line-height:1.85;max-width:580px;}
.cw-process-body p,.sl-process-body p,.mm-process-body p{margin-bottom:20px;text-wrap:pretty;}
.cw-process-body p:last-child,.sl-process-body p:last-child,.mm-process-body p:last-child{margin-bottom:0;}
.cw-process-body a,.sl-process-body a,.mm-process-body a{color:var(--purple);text-decoration:none;border-bottom:1px solid rgba(157,111,212,0.3);transition:border-color 0.3s;}
.cw-process-body a:visited,.sl-process-body a:visited,.mm-process-body a:visited{color:var(--purple);}
.cw-process-body a:hover,.sl-process-body a:hover,.mm-process-body a:hover{border-bottom-color:var(--purple);}
.cw-journal-link:visited,.sl-journal-link:visited,.mm-journal-link:visited{color:var(--ink-med);}
.cw-process-body em,.sl-process-body em,.mm-process-body em{font-style:italic;color:var(--ink);}

/* Who it's for */
.cw-for-list,.sl-for-list,.mm-for-list{display:grid;gap:0;max-width:560px;}
.cw-for-item,.sl-for-item,.mm-for-item{padding:16px 0;border-bottom:1px solid var(--rule);font-size:17px;font-weight:300;color:var(--ink-med);line-height:1.65;}
.cw-for-item:first-child,.sl-for-item:first-child,.mm-for-item:first-child{border-top:1px solid var(--rule);}

/* Journal links */
.cw-journal-list,.sl-journal-list,.mm-journal-list{display:grid;gap:0;}
.cw-journal-item,.sl-journal-item,.mm-journal-item{border-bottom:1px solid var(--rule);}
.cw-journal-item:first-child,.sl-journal-item:first-child,.mm-journal-item:first-child{border-top:1px solid var(--rule);}
.cw-journal-link,.sl-journal-link,.mm-journal-link{display:block;padding:20px 0;text-decoration:none;transition:transform 0.4s cubic-bezier(0.16,1,0.3,1);}
.cw-journal-link:hover,.sl-journal-link:hover,.mm-journal-link:hover{transform:translateX(6px);}
.cw-journal-label,.sl-journal-label,.mm-journal-label{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-low);margin-bottom:6px;}
.cw-journal-title,.sl-journal-title,.mm-journal-title{font-style:italic;font-weight:300;font-size:clamp(17px,2.4vw,20px);line-height:1.25;letter-spacing:-0.01em;color:var(--ink-med);transition:color 0.5s,text-shadow 0.5s;}
.cw-journal-link:hover .cw-journal-title,.sl-journal-link:hover .sl-journal-title,.mm-journal-link:hover .mm-journal-title{color:var(--purple);text-shadow:0 0 30px rgba(157,111,212,0.4);}

/* Contact form */
.contact-intro{font-style:italic;font-weight:300;font-size:13px;letter-spacing:0.02em;color:var(--ink-faint);line-height:1.7;margin-bottom:48px;max-width:440px;}
.contact-form-el{max-width:440px;}
.contact-fields{display:block;}
.contact-field{display:block;margin-bottom:40px;}
.contact-label{display:block;font-size:10px;letter-spacing:0.28em;text-transform:uppercase;color:var(--ink-low);margin-bottom:12px;}
.contact-optional{font-style:italic;letter-spacing:0;text-transform:none;font-size:9px;opacity:0.55;margin-left:6px;color:var(--ink-dim);}
.contact-input,.contact-textarea{display:block;width:100%;-webkit-appearance:none;appearance:none;background:transparent;border:none;border-bottom:1px solid rgba(232,233,239,0.14);border-radius:0;color:var(--ink-med);font-size:15px;font-family:inherit;font-weight:300;letter-spacing:-0.01em;padding:10px 0;outline:none;transition:border-color 0.35s,color 0.35s,box-shadow 0.35s;box-sizing:border-box;}
.contact-input:focus,.contact-textarea:focus{border-bottom-color:rgba(157,111,212,0.55);box-shadow:0 1px 0 0 rgba(157,111,212,0.18);color:var(--ink);}
.contact-input::placeholder,.contact-textarea::placeholder{color:rgba(232,233,239,0.28);font-style:italic;}
.contact-textarea{resize:none;line-height:1.7;}
.contact-actions{margin-top:32px;}
.contact-submit{-webkit-appearance:none;appearance:none;background:transparent;border:1px solid rgba(157,111,212,0.4);border-radius:1px;color:var(--ink-hi);cursor:pointer;display:inline-block;font-family:inherit;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;padding:14px 32px;transition:border-color 0.4s,color 0.4s,background 0.4s;animation:ctaShimmer 8.5s ease-in-out infinite;}
.contact-submit:hover{color:var(--purple);border-color:var(--purple);background:rgba(157,111,212,0.06);}
.contact-submit:disabled{opacity:0.45;cursor:default;animation:none;}
.contact-escape{font-style:italic;font-weight:300;font-size:13px;color:var(--ink-dim);margin-top:18px;letter-spacing:0.01em;}
.contact-escape a{color:var(--ink-low);text-decoration:none;border-bottom:1px solid rgba(232,233,239,0.15);transition:color 0.3s,border-color 0.3s;}
.contact-escape a:hover{color:var(--ink-med);border-bottom-color:rgba(232,233,239,0.35);}
.contact-privacy{font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-low);opacity:0.7;margin-top:14px;}
.contact-status{font-style:italic;font-weight:300;font-size:17px;letter-spacing:-0.01em;color:var(--ink-med);margin-top:8px;line-height:1.6;}
.contact-status:empty{display:none;}

/* Mid-page CTAs */
.cw-for-cta,.sl-for-cta{font-weight:400;font-size:17px;color:var(--ink-med);line-height:1.85;margin-top:28px;text-wrap:pretty;}
.cw-for-cta a,.sl-for-cta a{color:var(--purple);text-decoration:none;border-bottom:1px solid rgba(157,111,212,0.3);transition:border-color 0.3s;}
.cw-for-cta a:hover,.sl-for-cta a:hover{border-bottom-color:var(--purple);}

.about-extract{padding-bottom:60px;}
.cw-service-desc,.sl-service-desc{font-size:13px;font-weight:300;color:var(--ink-faint);line-height:1.6;margin-top:5px;font-style:italic;}

/* Responsive */
@media(max-width:520px){
  .wrap{padding:0 22px;}
  .cw-hero,.sl-hero,.mm-hero{padding:290px 0 44px;}
  .cw-format-row,.sl-card-row,.mm-card-row{grid-template-columns:1fr;gap:6px;}
  .cw-section,.sl-section,.mm-section{padding:48px 0;}
}
@media(max-height:500px){
  .cw-hero,.sl-hero,.mm-hero{padding:72px 0 32px;}
  .page-hero{height:100vh;}
}
