/*
Theme Name: PTS Coastal
Theme URI: https://palmtreesandsaltwater.com/
Author: Palm Trees AND Saltwater
Description: Custom coastal theme for Palm Trees AND Saltwater, including editable homepage and music layouts.
Version: 1.3.31
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pts-coastal
*/


:root{
  --ink:#08324a;
  --teal:#19b8d4;
  --teal-dark:#075b78;
  --cream:#fbf8f2;
  --sand:#efe5d5;
  --white:#ffffff;
  --muted:#5f7481;
  --lagoon:#24c7df;
  --lagoon-light:#8ee7f2;
  --ocean:#0b79a3;
  --deep-blue:#06445f;
  --sky:#53bde8;
  --gold:#f2c36b;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;overflow-x:hidden}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
.site-header{position:absolute;top:0;left:0;right:0;z-index:20}
.header-inner{width:min(1180px,calc(100% - 42px));height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between}
.tree-mark img{width:80px;height:70px;object-fit:contain}
nav{display:flex;gap:30px}
nav a{color:#fff;font-size:.77rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.hero{position:relative;min-height:760px;height:94vh;background-image:url("assets/tahiti-hero.jpg");background-size:cover;background-position:center 42%;display:grid;place-items:center;color:white;overflow:hidden}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,26,31,.08),rgba(0,30,37,.12) 45%,rgba(0,25,31,.24));}
.hero-inner{position:relative;z-index:2;width:min(930px,calc(100% - 36px));text-align:center;padding-top:80px}
.hero-tree{width:170px;margin:0 auto 6px}
.hero-wordmark{width:min(720px,90vw);margin:0 auto 20px}
.kicker{margin:0 0 10px;font-family:"Bebas Neue",sans-serif;font-size:clamp(2.4rem,4vw,4.4rem);letter-spacing:.11em;text-shadow:0 2px 16px rgba(0,0,0,.28)}
.hero h1{position:absolute;left:-9999px}
.hero-copy{max-width:650px;margin:0 auto;color:#fff;font-size:1rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.6;text-shadow:0 2px 14px rgba(0,0,0,.33)}
.hero-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:52px;padding:0 24px;border-radius:5px;text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.12em;transition:.2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:rgba(6,70,78,.92);color:#fff;border:1px solid rgba(255,255,255,.35)}
.btn-light{border:2px solid rgba(255,255,255,.9);color:#fff;background:rgba(255,255,255,.04)}
.handwritten{position:absolute;right:-170px;bottom:-10px;font-family:"Allison", cursive;font-style:italic;font-size:1.7rem;line-height:1.05;transform:rotate(-6deg);text-shadow:0 2px 10px rgba(0,0,0,.25)}
.section{width:min(1180px,calc(100% - 44px));margin:auto;padding:100px 0}
.center-heading{text-align:center;max-width:850px;margin:auto}
.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase;margin:0 0 12px}
.center-heading h2,.music-copy h2,.story-copy h2,.radio-heading h2,.process h2{font-family:"Bebas Neue",sans-serif;font-weight:400;letter-spacing:.06em;line-height:.95;margin:0}
.center-heading h2{font-size:clamp(3rem,5vw,5.4rem)}
.center-heading p,.story-copy p,.radio-heading p,.music-copy p{color:var(--muted);line-height:1.7}
.store-coming{text-align:center;font-family:"Allison", cursive;font-size:clamp(2.8rem,5vw,5rem);margin-top:24px;transform:rotate(-3deg)}
.music-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.music-cover img{width:100%;box-shadow:0 25px 60px rgba(0,0,0,.15)}
.teal{color:var(--teal)}
.music-copy h2{font-size:clamp(4rem,7vw,7rem)}
.release-date{font-weight:800;letter-spacing:.1em;font-size:.8rem;color:var(--ink)!important}
.btn-teal{background:var(--teal);color:#fff;border-radius:999px;min-width:190px;margin-top:8px}
.statement{background:var(--teal-dark);color:white;padding:86px 24px}
.statement-inner{width:min(1000px,100%);margin:auto;text-align:center}
.statement p,.statement span{display:block;font-family:"Bebas Neue",sans-serif;font-size:clamp(3.3rem,6vw,6.5rem);line-height:.95;letter-spacing:.04em;margin:0}
.statement span{color:#e7c786}
.story{display:grid;grid-template-columns:1.1fr .9fr;gap:80px}
.story-copy h2{font-size:clamp(4rem,6vw,6rem)}
.story-wordmark{width:min(430px,85%);margin-top:28px}
.story-cards{background:#fff;border-top:5px solid var(--teal);box-shadow:0 20px 60px rgba(8,54,60,.09);padding:10px 34px}
.story-cards article{padding:28px 0;border-bottom:1px solid rgba(8,54,60,.12)}
.story-cards article:last-child{border-bottom:0}
.story-cards strong{font-family:"Bebas Neue",sans-serif;font-size:2.2rem;letter-spacing:.05em}
.story-cards p{color:var(--muted)}
.radio-heading{max-width:780px}
.radio-heading h2{font-size:clamp(4rem,6vw,6rem)}
.song-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.song-card{background:#fff;border:1px solid rgba(10,47,54,.1);padding:28px;min-height:250px}
.song-card>span{font-family:"Bebas Neue",sans-serif;font-size:1.8rem;color:var(--teal)}
.song-card h3{font-family:"Bebas Neue",sans-serif;font-size:2.1rem;line-height:1;margin:44px 0 10px}
.song-card p{color:var(--muted);line-height:1.6}
.process{background:var(--sand);padding:78px 24px}
.process-inner{width:min(800px,100%);margin:auto}
.process h2{font-size:clamp(3.4rem,5vw,5rem)}
.process p{color:#526568;line-height:1.75}
.follow{background:var(--teal-dark);color:white;padding:95px 24px;text-align:center}
.follow-inner{width:min(760px,100%);margin:auto}
.follow-tree{width:120px;margin:0 auto 8px}
.follow-wordmark{width:min(520px,85vw);margin:0 auto 22px}
.follow-copy{color:rgba(255,255,255,.75)}
.social-links{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:26px}
.social-links a{border:1px solid rgba(255,255,255,.25);padding:10px 15px;border-radius:999px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.disabled{opacity:.4;cursor:not-allowed}
footer{background:#082c30;color:white;padding:38px 24px 48px;text-align:center}
.footer-inner{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.footer-inner img{width:330px}
.footer-inner span{font-size:.65rem;letter-spacing:.18em;font-weight:800}
.copyright,.legal{color:rgba(255,255,255,.5);font-size:.68rem;margin:12px auto 0}
.legal{max-width:800px}
.reveal{opacity:0;transform:translateY(16px);transition:.7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .music-feature,.story{grid-template-columns:1fr;gap:50px}
  .footer-inner{grid-template-columns:1fr;text-align:center}
  .footer-inner img{margin:auto}
  .handwritten{display:none}
}
@media(max-width:650px){
  .header-inner{height:76px}
  .tree-mark img{width:62px;height:58px}
  nav{gap:14px}
  nav a{font-size:.62rem}
  nav a:nth-child(3){display:none}
  .hero{min-height:690px;background-position:center}
  .hero-inner{padding-top:74px}
  .hero-tree{width:110px}
  .hero-wordmark{width:92vw}
  .kicker{font-size:2.4rem}
  .hero-actions{flex-direction:column;align-items:center}
  .btn{width:min(320px,92vw)}
  .section{padding:72px 0}
  .product-grid,.song-grid{grid-template-columns:1fr}
  .product-art{height:220px}
}


/* clean tropical hero + Allison script */
.hero {
  background-image: url("assets/tahiti-hero.jpg");
  background-position: center center;
}

.handwritten,
.store-coming {
  font-family: "Allison", cursive;
  font-weight: 400;
}

.handwritten {
  font-size: 3rem;
  line-height: .85;
  letter-spacing: .01em;
}

.store-coming {
  margin-top: 46px;
  font-size: clamp(4rem, 7vw, 7rem);
  line-height: .8;
  color: var(--teal-dark);
}

.shop .center-heading {
  max-width: 760px;
}

.shop {
  padding-bottom: 88px;
}

@media(max-width:900px){
  .handwritten { display:none; }
}

@media(max-width:650px){
  .store-coming { font-size: 4.2rem; margin-top: 34px; }
}


/* creator + muse credit */
.process-inner strong {
  color: var(--ink);
  font-weight: 800;
}

.muse-line {
  margin-top: 24px;
  font-family: "Allison", cursive;
  font-size: clamp(3rem, 5vw, 4.8rem);
  line-height: .9;
  color: var(--teal-dark) !important;
}


/* Bora Bora palette refresh */
.statement {
  background: linear-gradient(135deg, #075b78 0%, #0b79a3 58%, #19b8d4 100%);
}

.statement span {
  color: #8ee7f2;
}

.process {
  background: linear-gradient(180deg, #f6efe5 0%, #fbf8f2 100%);
}

.follow {
  background:
    radial-gradient(circle at 50% 18%, rgba(36,199,223,.22), transparent 42%),
    linear-gradient(160deg, #075b78 0%, #0b79a3 100%);
}

footer {
  background: #06384e;
}

.btn-dark {
  background: rgba(7,91,120,.92);
}

.btn-teal {
  background: #0b79a3;
}

.btn-teal:hover {
  background: #19b8d4;
}

.eyebrow.teal,
.teal {
  color: #0b79a3;
}

.story-cards {
  border-top-color: #19b8d4;
}

.song-card > span {
  color: #0b79a3;
}

.store-coming {
  color: #075b78;
}

.muse-line {
  color: #0b79a3 !important;
}

.product-label small,
.story-copy p,
.radio-heading p,
.music-copy p,
.process p,
.song-card p,
.story-cards p {
  color: #617985;
}

.social-links a:hover {
  border-color: #8ee7f2;
  background: rgba(142,231,242,.08);
}

.hero-shade {
  background:
    linear-gradient(180deg, rgba(2,52,74,.04), rgba(2,66,91,.10) 45%, rgba(2,52,74,.18));
}

.handwritten {
  color: #ffffff;
}

footer .footer-inner span {
  color: rgba(255,255,255,.9);
}

/* Make the brand-statement area feel airy rather than heavy/dark */
.statement {
  padding: 82px 24px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

/* Light Bora-Bora treatment for the follow section */
.follow-copy {
  color: rgba(255,255,255,.84);
}

/* Refine footer spacing/contrast */
footer {
  border-top: 1px solid rgba(142,231,242,.15);
}

.copyright, .legal {
  color: rgba(255,255,255,.62);
}



/* Slightly larger hero logo lockup */
.hero-tree {
  width: 190px;
}

.hero-wordmark {
  width: min(790px, 94vw);
}

/* Allison should feel handwritten, never shouty */
.store-coming,
.handwritten,
.muse-line {
  text-transform: none;
  letter-spacing: 0;
}

/* Separate the soundtrack section from the goods/store area */
.music-feature {
  position: relative;
  width: 100%;
  max-width: none;
  padding: 110px max(22px, calc((100vw - 1180px)/2));
  background:
    radial-gradient(circle at 82% 18%, rgba(142,231,242,.28), transparent 32%),
    linear-gradient(135deg, #e9f8fb 0%, #d8f1f6 52%, #c7edf4 100%);
}

.music-feature::before,
.music-feature::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.music-feature::before {
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: rgba(8,50,74,.09);
}

.music-feature::after {
  right: 5%;
  bottom: 8%;
  width: 240px;
  height: 240px;
  border: 1px solid rgba(11,121,163,.12);
  border-radius: 50%;
}

/* Tighten and make lifestyle pillars more interesting */
.story-cards {
  padding: 8px 22px;
  border-top: 0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,253,254,.96));
  border: 1px solid rgba(11,121,163,.12);
  border-radius: 16px;
  box-shadow: 0 24px 60px rgba(7,91,120,.10);
  overflow: hidden;
}

.story-cards article {
  position: relative;
  padding: 24px 18px 24px 64px;
  border-bottom: 1px solid rgba(11,121,163,.10);
}

.story-cards article:last-child {
  border-bottom: 0;
}

.story-cards article::before {
  position: absolute;
  left: 18px;
  top: 25px;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(36,199,223,.12);
  color: #0b79a3;
  font-family: "Bebas Neue", sans-serif;
  font-size: 1rem;
}

.story-cards article:nth-child(1)::before { content: "01"; }
.story-cards article:nth-child(2)::before { content: "02"; }
.story-cards article:nth-child(3)::before { content: "03"; }

.story-cards strong {
  display: block;
  font-size: 2rem;
  color: #075b78;
  letter-spacing: .02em;
}

.story-cards p {
  margin: 6px 0 0;
  line-height: 1.5;
}

/* Keep muse line on one line on desktop */
.muse-line {
  white-space: nowrap;
  font-size: clamp(2.6rem, 4vw, 4.1rem);
}

/* Give the follow copy enough room to stay on one line */
.follow-inner {
  width: min(980px, 100%);
}

.follow-copy {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  white-space: nowrap;
}

/* Responsive fallback */
@media (max-width: 900px) {
  .hero-tree { width: 150px; }
  .hero-wordmark { width: min(700px, 94vw); }

  .music-feature {
    padding: 85px max(22px, calc((100vw - 1180px)/2));
  }

  .muse-line,
  .follow-copy {
    white-space: normal;
  }
}

@media (max-width: 650px) {
  .hero-tree { width: 120px; }
  .hero-wordmark { width: 95vw; }
}


/* soft palm-shadow background for Beach-Inspired Apparel & Goods only */
.shop {
  position: relative;
  background:
    linear-gradient(rgba(251,248,242,.82), rgba(251,248,242,.82)),
    url("assets/palm-shadow-goods-bg.jog") center center / cover no-repeat;
  border-top: 1px solid rgba(8,50,74,.06);
  border-bottom: 1px solid rgba(8,50,74,.08);
}

.shop .center-heading,
.shop .store-coming {
  position: relative;
  z-index: 1;
}

/* visibility fix: the previous cream overlay was hiding the palm shadows */
.shop {
  background-image: url("assets/palm-shadow-goods-bg.jpg") !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-color: #fbf8f2 !important;
}


/* make Beach-Inspired Goods background full bleed */
.shop {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: max(22px, calc((100vw - 1180px) / 2)) !important;
  padding-right: max(22px, calc((100vw - 1180px) / 2)) !important;
}

/* Keep the actual shop content aligned to the site's normal content width */
.shop .center-heading,
.shop .store-coming {
  width: min(1180px, 100%);
  margin-left: auto;
  margin-right: auto;
}

/* frond-style palm shadows matching the mockup */
.shop {
  background-image: url("assets/palm-shadow-goods-bg.jpg") !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* text-free palm frond background generated from scratch */
.shop {
  background-image: url("assets/palm-shadow-goods-bg.jpg?v=19") !important;
}


/* Latest integrated story image */
.story-photo {
  overflow: hidden;
  min-height: 100%;
  border-radius: 16px;
  box-shadow: 0 24px 60px rgba(7,91,120,.10);
  background: #dff5f8;
}

.story-photo img {
  width: 100%;
  height: 100%;
  min-height: 560px;
  object-fit: cover;
  object-position: center center;
}

/* Keep the original photo intact; no flip or transform. */
@media (max-width: 900px) {
  .story-photo img {
    min-height: 0;
    height: auto;
    object-fit: contain;
  }
}


/* v21 ,  Our Story section rebuilt to match the approved split mockup */
.story-split {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  width: 100%;
  min-height: 760px;
  background: #fbf8f2;
  border-top: 1px solid rgba(8,50,74,.08);
  border-bottom: 1px solid rgba(8,50,74,.08);
}

.story-panel {
  position: relative;
  display: flex;
  align-items: center;
  padding: 84px max(46px, calc((100vw - 1180px) / 2));
  padding-right: clamp(48px, 6vw, 94px);
  background:
    radial-gradient(circle at 0% 0%, rgba(142,231,242,.10), transparent 30%),
    #fbf8f2;
}

.story-panel-inner {
  width: min(560px, 100%);
  margin-left: auto;
}

.story-panel .eyebrow {
  color: #6b8c9c;
  margin-bottom: 18px;
}

.story-panel h2 {
  margin: 0;
  color: #08324a;
  font-family: "Bebas Neue", sans-serif;
  font-size: clamp(4.4rem, 6.8vw, 7.4rem);
  font-weight: 400;
  line-height: .88;
  letter-spacing: .025em;
}

.story-intro {
  margin: 24px 0 0;
  color: #55717e;
  font-size: 1.02rem;
  line-height: 1.75;
}

.story-pillars {
  margin-top: 34px;
}

.story-pillar {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  align-items: start;
  padding: 17px 0;
  border-top: 1px solid rgba(11,121,163,.10);
}

.story-pillar-num {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(36,199,223,.12);
  color: #0b79a3;
  font-family: "Bebas Neue", sans-serif;
  font-size: 1.05rem;
}

.story-pillar strong {
  display: block;
  color: #08324a;
  font-size: 1.06rem;
  font-weight: 800;
}

.story-pillar p {
  margin: 4px 0 0;
  color: #607986;
  line-height: 1.5;
  font-size: .94rem;
}

.story-panel .story-wordmark {
  width: min(360px, 78%);
  margin-top: 32px;
}

.story-photo {
  position: relative;
  min-height: 760px;
  overflow: hidden;
  border-radius: 0;
  box-shadow: none;
  background: #d7f2f5;
}

.story-photo img {
  width: 100%;
  height: 100%;
  min-height: 760px;
  object-fit: cover;
  object-position: center center;
  transform: none !important;
}

/* Remove legacy constrained story/card styling from affecting this version */
.story-split .story-photo,
.story-split .story-panel {
  max-width: none;
}

@media (max-width: 1000px) {
  .story-split {
    grid-template-columns: 1fr 1fr;
  }

  .story-panel {
    padding-left: 38px;
    padding-right: 38px;
  }
}

@media (max-width: 800px) {
  .story-split {
    grid-template-columns: 1fr;
  }

  .story-panel {
    padding: 70px 26px 60px;
  }

  .story-panel-inner {
    width: min(620px, 100%);
    margin: 0 auto;
  }

  .story-photo {
    min-height: 0;
  }

  .story-photo img {
    height: auto;
    min-height: 0;
    object-fit: contain;
  }
}


/* v22 ,  warmer sand/beige Our Story panel + latest story photo */
.story-split {
  background: #f2e7d5;
}

.story-panel {
  background:
    radial-gradient(circle at 0% 0%, rgba(142,231,242,.08), transparent 30%),
    #f2e7d5;
}

.story-photo {
  background: #d7f2f5;
}

.story-photo img {
  object-position: center center;
}


/* v23 ,  Our Story styling to match approved mockup */
.story-split {
  grid-template-columns: 1fr 1fr;
  background: #f3e6d2;
  min-height: 780px;
}

.story-panel {
  position: relative;
  padding: 84px clamp(52px, 6vw, 96px);
  padding-left: max(52px, calc((100vw - 1180px) / 2));
  background:
    linear-gradient(rgba(243,230,210,.88), rgba(243,230,210,.88)),
    url("assets/palm-shadow-goods-bg.jpg") center center / cover no-repeat;
}

.story-panel-inner {
  width: min(560px, 100%);
  margin-left: auto;
}

.story-panel .eyebrow {
  color: #67a8bf;
}

.story-panel h2 {
  font-size: clamp(4.8rem, 6.5vw, 7rem);
  line-height: .88;
}

.story-intro {
  color: #587381;
}

.story-pillars {
  margin-top: 28px;
}

.story-pillar {
  grid-template-columns: 72px 1fr;
  gap: 20px;
  padding: 14px 0;
  border-top: 1px solid rgba(11,121,163,.12);
}

.story-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(142,231,242,.30);
}

.story-icon img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.story-pillar strong {
  font-size: 1.1rem;
  color: #08324a;
}

.story-pillar p {
  font-size: .95rem;
  color: #5d7784;
}

.story-panel .story-wordmark {
  width: min(390px, 82%);
  margin-top: 28px;
}

.story-photo {
  min-height: 780px;
}

.story-photo img {
  min-height: 780px;
  object-fit: cover;
  object-position: center center;
}

@media (max-width: 900px) {
  .story-panel {
    padding-left: 36px;
    padding-right: 36px;
  }
}

@media (max-width: 800px) {
  .story-split {
    grid-template-columns: 1fr;
  }

  .story-panel {
    padding: 70px 26px 58px;
  }

  .story-photo,
  .story-photo img {
    min-height: 0;
  }

  .story-photo img {
    height: auto;
    object-fit: contain;
  }
}


/* v26 ,  Clean & Classic Creative Process with circular photo on right */
.creative-process {
  position: relative;
  overflow: hidden;
  padding: 92px 24px;
  background:
    radial-gradient(circle at 3% 40%, rgba(142,231,242,.10), transparent 27%),
    linear-gradient(180deg, #fbf8f2 0%, #f8f1e7 100%);
}

.creative-process::before {
  content: "";
  position: absolute;
  left: -145px;
  top: 40px;
  width: 410px;
  height: 650px;
  opacity: .10;
  background: url("assets/tree-black.png") center / contain no-repeat;
  filter: sepia(1) saturate(2) hue-rotate(135deg);
  transform: rotate(-9deg);
  pointer-events: none;
}

.creative-process-inner {
  position: relative;
  z-index: 1;
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: clamp(58px, 8vw, 110px);
  align-items: center;
}

.creative-copy {
  max-width: 760px;
}

.creative-copy .eyebrow {
  margin-bottom: 8px;
  color: #0b79a3;
}

.creative-copy h2 {
  margin: 0 0 24px;
  font-family: "Allison", cursive;
  font-size: clamp(5rem, 7vw, 7.3rem);
  font-weight: 400;
  line-height: .72;
  color: #075b78;
  letter-spacing: 0;
  text-transform: none;
}

.creative-copy p:not(.eyebrow):not(.muse-line) {
  max-width: 760px;
  color: #405c68;
  font-size: 1rem;
  line-height: 1.72;
}

.creative-copy strong {
  color: #08324a;
}

.creative-copy .muse-line {
  margin: 28px 0 0;
  white-space: nowrap;
  font-family: "Allison", cursive;
  font-size: clamp(2.9rem, 4.2vw, 4.35rem);
  font-weight: 400;
  line-height: .85;
  color: #075b78 !important;
  letter-spacing: 0;
  text-transform: none;
}

.creative-photo-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.creative-photo-ring {
  position: relative;
  width: min(390px, 31vw);
  aspect-ratio: 1;
  padding: 10px;
  border-radius: 50%;
  background: #fff;
  box-shadow:
    0 0 0 3px rgba(25,184,212,.26),
    0 0 0 10px rgba(25,184,212,.08),
    0 24px 55px rgba(7,91,120,.13);
}

.creative-photo-ring::before,
.creative-photo-ring::after {
  content: "";
  position: absolute;
  inset: -14px -10px -11px -16px;
  border: 3px solid rgba(25,184,212,.24);
  border-radius: 49% 52% 48% 53%;
  transform: rotate(-4deg);
  pointer-events: none;
}

.creative-photo-ring::after {
  inset: -7px -17px -16px -8px;
  border-width: 2px;
  opacity: .65;
  transform: rotate(5deg);
}

.creative-photo-ring img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  object-position: 50% 46%;
}

.creative-wave {
  position: relative;
  width: 170px;
  height: 44px;
  margin-top: 28px;
}

.creative-wave span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 28px;
  border-top: 5px solid rgba(25,184,212,.55);
  border-radius: 50%;
  transform: rotate(-4deg);
}

.creative-wave span:last-child {
  top: 12px;
  left: 18px;
  width: 88%;
  border-top-width: 4px;
  opacity: .75;
  transform: rotate(3deg);
}

@media (max-width: 900px) {
  .creative-process-inner {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .creative-copy {
    max-width: 760px;
    margin: 0 auto;
  }

  .creative-photo-ring {
    width: min(380px, 72vw);
  }

  .creative-copy .muse-line {
    white-space: normal;
  }
}

@media (max-width: 560px) {
  .creative-process {
    padding: 70px 22px;
  }

  .creative-copy h2 {
    font-size: 5rem;
  }

  .creative-photo-ring {
    width: min(330px, 82vw);
  }
}


/* v27 ,  simplified follow section: white tree mark only */
.follow-tree {
  width: 150px;
  margin: 0 auto 24px;
}

.follow-wordmark {
  display: none !important;
}

.follow-copy {
  margin-top: 0;
}

/* v28 ,  larger hero brand lockup */
.hero-tree { width: 225px; }
.hero-wordmark { width: min(900px, 96vw); margin-bottom: 18px; }

@media (max-width: 900px) {
  .hero-tree { width: 180px; }
  .hero-wordmark { width: min(790px, 95vw); }
}
@media (max-width: 650px) {
  .hero-tree { width: 145px; }
  .hero-wordmark { width: 96vw; }
}

/* v34 ,  Floating With You featured release */
.music-feature-alt {
  background: radial-gradient(circle at 16% 18%, rgba(142,231,242,.26), transparent 32%),
              linear-gradient(135deg,#f6fbfb 0%,#e5f6f8 52%,#d4f0f5 100%);
}
.music-feature-alt .music-cover { order:2; }
.music-feature-alt .music-copy { order:1; }
@media(max-width:900px){
  .music-feature-alt .music-cover,.music-feature-alt .music-copy{order:initial;}
}


/* v35 ,  scalable horizontal releases carousel */
.releases {
  overflow: hidden;
  padding: 100px 0 105px;
  background:
    radial-gradient(circle at 82% 10%, rgba(142,231,242,.22), transparent 30%),
    linear-gradient(135deg,#f6fbfb 0%,#e7f6f8 55%,#d8f1f5 100%);
}

.releases-heading {
  width: min(1180px, calc(100% - 44px));
  margin: 0 auto 42px;
}

.releases-heading h2 {
  margin: 0;
  font-family: "Bebas Neue", sans-serif;
  font-size: clamp(4rem,6vw,6rem);
  font-weight: 400;
  line-height: .95;
  letter-spacing: .05em;
}

.releases-heading > p:last-child {
  color: #617985;
  margin-bottom: 0;
}

.releases-shell {
  position: relative;
  width: min(1320px, 100%);
  margin: auto;
}

.release-track {
  display: flex;
  gap: 26px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  padding: 8px max(54px, calc((100vw - 1180px)/2)) 38px;
  overscroll-behavior-inline: contain;
}

.release-track::-webkit-scrollbar {
  display: none;
}

.release-card {
  flex: 0 0 min(1040px, calc(100vw - 150px));
  display: grid;
  grid-template-columns: minmax(300px,.9fr) minmax(360px,1.1fr);
  gap: clamp(42px,6vw,76px);
  align-items: center;
  min-height: 510px;
  padding: clamp(34px,4vw,54px);
  scroll-snap-align: center;
  border: 1px solid rgba(11,121,163,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.74);
  box-shadow: 0 24px 65px rgba(7,91,120,.10);
  backdrop-filter: blur(5px);
}

.release-cover img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  box-shadow: 0 22px 48px rgba(0,0,0,.14);
}

.release-info h3 {
  margin: 0 0 18px;
  font-family: "Bebas Neue",sans-serif;
  font-size: clamp(3.8rem,6vw,6.5rem);
  font-weight: 400;
  line-height: .88;
  letter-spacing: .035em;
  color: #08324a;
}

.release-info > p:not(.eyebrow):not(.release-date) {
  color: #617985;
  line-height: 1.7;
}

.release-arrow {
  position: absolute;
  z-index: 4;
  top: 50%;
  width: 48px;
  height: 48px;
  margin-top: -24px;
  border: 1px solid rgba(11,121,163,.22);
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  color: #075b78;
  font-size: 2.1rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(7,91,120,.12);
  transition: .2s ease;
}

.release-arrow:hover {
  transform: scale(1.06);
  background: #fff;
}

.release-prev { left: 12px; }
.release-next { right: 12px; }

.release-dots {
  display: flex;
  justify-content: center;
  gap: 9px;
  margin-top: 4px;
}

.release-dot {
  width: 9px;
  height: 9px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(7,91,120,.24);
  cursor: pointer;
  transition: .2s ease;
}

.release-dot.active {
  width: 26px;
  border-radius: 999px;
  background: #0b79a3;
}

@media(max-width:900px) {
  .release-card {
    flex-basis: calc(100vw - 76px);
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .release-cover {
    width: min(480px,100%);
    margin: auto;
  }
  .release-arrow {
    display: none;
  }
  .release-track {
    padding-left: 24px;
    padding-right: 24px;
  }
}

@media(max-width:650px) {
  .releases { padding: 76px 0 82px; }
  .release-card {
    flex-basis: calc(100vw - 42px);
    padding: 24px;
  }
  .release-track {
    gap: 14px;
    padding-left: 14px;
    padding-right: 14px;
  }
  .release-info h3 {
    font-size: 3.8rem;
  }
}


/* v36 ,  cleaner releases carousel */
.releases-clean {
  padding: 96px 0 82px;
  background:
    linear-gradient(rgba(251,248,242,.91), rgba(251,248,242,.91)),
    url("assets/palm-shadow-goods-bg.jpg") center center / cover no-repeat;
}

.releases-clean .releases-heading {
  text-align: center;
  margin-bottom: 44px;
}

.releases-clean .releases-heading h2 {
  color: #08324a;
}

.releases-clean .releases-heading > p:last-child {
  margin-top: 10px;
  color: #617985;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .8rem;
}

.releases-clean .release-track {
  gap: 34px;
  padding-top: 0;
  padding-bottom: 24px;
}

.releases-clean .release-card {
  flex: 0 0 min(980px, calc(100vw - 190px));
  min-height: 0;
  padding: 0;
  gap: clamp(42px,5vw,72px);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.releases-clean .release-cover {
  width: 100%;
}

.releases-clean .release-cover img {
  border-radius: 10px;
  box-shadow: 0 18px 46px rgba(7,91,120,.14);
}

.releases-clean .release-info {
  padding-right: 10px;
}

.releases-clean .release-info h3 {
  margin-bottom: 10px;
}

.releases-clean .release-date {
  margin: 0 0 22px;
  color: #0b79a3 !important;
  letter-spacing: .14em;
}

.releases-clean .release-info > p:not(.eyebrow):not(.release-date) {
  max-width: 560px;
  margin-bottom: 24px;
}

.releases-clean .release-arrow {
  background: rgba(255,255,255,.88);
  border-color: rgba(11,121,163,.16);
  box-shadow: 0 8px 24px rgba(7,91,120,.10);
}

.releases-clean .release-dots {
  margin-top: 10px;
}

.more-music {
  margin: 30px auto 0;
  text-align: center;
  color: #6d8793;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .28em;
}

@media(max-width:900px) {
  .releases-clean .release-card {
    flex-basis: calc(100vw - 64px);
    padding: 0 10px;
  }
}

@media(max-width:650px) {
  .releases-clean {
    padding: 72px 0 70px;
  }

  .releases-clean .release-card {
    flex-basis: calc(100vw - 34px);
  }
}


/* v37 ,  restore Bora-blue soundtrack background */
.releases-clean {
  background:
    radial-gradient(circle at 82% 18%, rgba(142,231,242,.28), transparent 32%),
    linear-gradient(135deg, #e9f8fb 0%, #d8f1f6 52%, #c7edf4 100%);
}


/* v38 ,  soundtrack teaser statuses instead of misleading track numbers */
.song-card > span {
  display: inline-block;
  width: auto;
  height: auto;
  padding: 7px 11px;
  margin-bottom: 14px;
  border-radius: 999px;
  background: rgba(11,121,163,.10);
  color: #0b79a3;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .13em;
  line-height: 1;
}


/* v39 ,  hide carousel arrows at the beginning/end */
.release-arrow[hidden] {
  display: none !important;
}


/* v44 ,  grouped Follow vs Listen links */
.follow-groups {
  width: min(900px, 100%);
  margin: 34px auto 0;
  display: grid;
  gap: 30px;
}

.follow-group + .follow-group {
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,.16);
}

.follow-label {
  margin: 0 0 14px;
  color: rgba(255,255,255,.68);
  font-size: .69rem;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.follow-group .social-links {
  margin-top: 0;
}

.social-links-listen a {
  background: rgba(255,255,255,.94);
  border-color: rgba(255,255,255,.94);
  color: #075b78;
}

.social-links-listen a:hover {
  background: #fff;
  border-color: #fff;
  color: #0b79a3;
}

.social-links-follow a {
  background: transparent;
  color: #fff;
}

@media(max-width:650px) {
  .follow-groups {
    gap: 24px;
  }

  .follow-group + .follow-group {
    padding-top: 24px;
  }
}

/* v46 live shop + unified button corners */
.store-launch{display:flex;justify-content:center;margin-top:42px}
.btn-shop{min-width:290px;min-height:56px;background:#0b79a3;color:#fff;box-shadow:0 12px 30px rgba(7,91,120,.14)}
.btn-shop:hover{background:#19b8d4;color:#fff}
.btn,.btn-shop,.social-links a,.follow-group .social-links a{border-radius:5px!important}
.release-arrow{border-radius:50%!important}


/* v49 ,  featured shop collections */
.collection-grid {
  width: min(1320px, calc(100% - 44px));
  margin: 54px auto 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

.collection-card {
  display: block;
  color: #08324a;
  text-decoration: none;
  transition: transform .2s ease;
}

.collection-card:hover {
  transform: translateY(-4px);
}

.collection-image {
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1.05;
  overflow: hidden;
  background: rgba(202,241,247,.62);
}

.collection-image img {
  width: 100%;
  height: 100%;
  padding: 16px;
  object-fit: contain;
  transition: transform .25s ease;
}

.collection-card:hover .collection-image img {
  transform: scale(1.025);
}

.collection-card h3 {
  margin: 16px 4px 0;
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.store-launch {
  margin-top: 38px;
}

@media (max-width: 1050px) {
  .collection-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .collection-grid {
    width: min(100% - 30px, 520px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .collection-card:last-child {
    grid-column: 1 / -1;
    width: calc(50% - 7px);
    justify-self: center;
  }

  .collection-card h3 {
    font-size: .76rem;
  }
}

/* v52 ,  normalize collection product presentation */
.collection-image {
  display: flex;
  align-items: center;
  justify-content: center;
}
.collection-image img {
  width: 100%;
  height: 100%;
  padding: 7px 10px;
  object-fit: contain;
  object-position: center center;
}

/* v56: temporary artwork treatment until official Mamacita cover is provided */
.release-art-placeholder { width:100%;aspect-ratio:1/1;display:grid;place-items:center;text-align:center;padding:24px;background:linear-gradient(145deg,#f6d9cc,#f9eee2);color:#075b78;font-family:Georgia,serif;font-size:clamp(26px,3vw,48px);font-style:italic;line-height:1.15;border-radius:10px; }

/* Music library and song stories */
.music-page{background:#f9f7f0;color:#163e42;min-height:100vh}.music-wrap{max-width:1120px;margin:auto;padding:112px 25px 90px}.music-kicker{color:#158b8b;letter-spacing:.2em;text-transform:uppercase;font-size:12px;font-weight:800}.music-wrap h1{font-size:clamp(40px,6vw,76px);line-height:1.05;margin:12px 0 18px}.music-lead{font-size:19px;line-height:1.65;max-width:720px;color:#466568}.music-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:28px;margin-top:45px}.music-tile{background:white;border-radius:8px;overflow:hidden;box-shadow:0 12px 35px #0d333314}.music-tile img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.music-tile-content{padding:22px}.music-tile h2{font-size:23px;margin:8px 0}.music-tile p{line-height:1.55}.music-tile a,.story-actions a{display:inline-block;padding:12px 18px;border-radius:5px;background:#127d80;color:white;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.04em}.music-tile a:hover,.story-actions a:hover{background:#07585b}.song-hero{display:grid;grid-template-columns:minmax(250px,440px) 1fr;gap:55px;align-items:center}.song-art{width:100%;border-radius:8px;box-shadow:0 25px 60px #092e2e30}.song-date{font-size:13px;font-weight:800;letter-spacing:.1em;color:#16898c}.story-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.story-actions .outline{background:transparent;color:#127d80;border:1px solid #127d80}.story-body{max-width:760px;margin:75px auto 0}.story-body h2{font-size:clamp(28px,4vw,42px);margin:45px 0 18px}.story-body p{font-size:18px;line-height:1.85;color:#37595d;margin:0 0 20px}.story-body details{border:1px solid #d1ded9;background:white;border-radius:8px;padding:20px;margin-top:24px}.story-body summary{font-weight:800;cursor:pointer}.story-body .note{font-size:14px;color:#668083}.music-footer{margin-top:75px;padding-top:25px;border-top:1px solid #cad9d4}.music-footer a{color:#127d80}.music-back{display:inline-block;margin-bottom:28px;color:#127d80;text-decoration:none;font-weight:700}.music-page .site-header{background:#0c3f43}.music-page .site-header a{color:white}@media(max-width:700px){.song-hero{grid-template-columns:1fr;gap:25px}.song-art{max-width:400px}.music-wrap{padding-top:100px}}

/* v62: Music-page navigation aligned with the homepage statement gradient. */
.music-page .site-header{background:linear-gradient(135deg,#075b78 0%,#0b79a3 58%,#19b8d4 100%)}
.song-lyrics{white-space:pre-wrap;font-size:16px;line-height:1.85;color:#284f55;background:#fff;border:1px solid #dce8e6;padding:30px 34px;border-radius:8px;overflow-wrap:anywhere}
.platform-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 38px}
.platform-link{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #d4e2e2;border-radius:6px;padding:16px 18px;color:#124b60;font-weight:800;transition:background .15s,border-color .15s}
.platform-link:hover{background:#e9f8fb;border-color:#19b8d4}
.platform-link svg{height:27px;width:27px;flex:none;color:#0b79a3}
.story-body p.platform-note{font-size:15px;line-height:1.65}
@media(max-width:520px){.platform-links{grid-template-columns:1fr}.song-lyrics{padding:20px 18px;font-size:15px}}

/* Song page copyright */
.song-copyright{font-size:.78rem;opacity:.78;margin:14px auto 0;max-width:760px;line-height:1.6}

/* Song page: privacy-conscious, click-to-play YouTube player */
.player-heading{margin-top:0!important}.story-body p.player-description{font-size:16px;margin-bottom:20px}.youtube-lite{position:relative;width:100%;aspect-ratio:16/9;background:#092f35;border-radius:8px;overflow:hidden;box-shadow:0 14px 34px #092e2e24}.youtube-lite-button{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#092f35;display:block}.youtube-lite-button img{width:100%;height:100%;object-fit:cover;filter:brightness(.65)}.youtube-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;background:#e62117;color:#fff;border-radius:13px;width:78px;height:55px;font-size:28px;padding-left:4px;box-shadow:0 5px 25px #0006}.youtube-lite-button:hover .youtube-play,.youtube-lite-button:focus-visible .youtube-play{background:#ff3228}.youtube-lite iframe{width:100%;height:100%;border:0;display:block}

/* v67: desktop two-column song stories and lyrics; stack on mobile */
.music-page .story-body{max-width:1180px;margin:58px auto 0}
.song-content-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(28px,4vw,65px);align-items:start}
.song-main-column,.song-lyrics-column{min-width:0}
.song-content-grid .song-main-column>h2:first-child,.song-content-grid .song-lyrics-column>h2:first-child{margin-top:0}
.song-lyrics-column{position:sticky;top:100px}
.song-lyrics-column .song-lyrics{font-size:15px;line-height:1.75;padding:24px}
@media(max-width:850px){.song-content-grid{grid-template-columns:1fr}.song-lyrics-column{position:static}.music-page .story-body{margin-top:45px}}

/* Song page social follow section */
.song-follow{margin:14px 0 32px;padding:24px;background:#f1f8f7;border:1px solid #d4e2e2;border-radius:8px}
.song-follow h2{margin:0 0 8px;font-size:clamp(1.3rem,2vw,1.7rem)}
.story-body .song-follow p{margin:0 0 18px;font-size:15px;line-height:1.6}
.song-social-links{display:flex;flex-wrap:wrap;gap:10px}
.song-social-links a{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #d4e2e2;border-radius:5px;padding:10px 12px;color:#124b60;font-size:14px;font-weight:750;text-decoration:none}
.song-social-links a:hover{background:#e2f5f6;border-color:#19b8d4}
.song-social-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#126b80;color:#fff;border-radius:5px;font-size:16px;font-weight:800}

/* Full-width follow card beneath the streaming platform grid */
.song-main-column .song-follow{width:100%;min-width:0;box-sizing:border-box}
.song-social-links{display:flex;flex-wrap:wrap;gap:10px}

/* v73: simple inline social icons without button borders or labels */
.song-social-links{display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.song-social-links a{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:0;padding:0;color:#126b80;text-decoration:none;box-shadow:none}
.song-social-links a:hover{background:transparent;border:0;color:#0a4657;opacity:.8}
.song-social-icon{width:34px;height:34px;font-size:23px;border-radius:6px}
.song-social-links a:focus-visible{outline:2px solid #126b80;outline-offset:5px}

/* Music library cover links and uppercase calls to action */
.music-grid .music-cover-link{display:block;padding:0;border-radius:0;background:transparent;line-height:0;letter-spacing:normal}
.music-grid .music-cover-link:hover{background:transparent}
.music-grid .music-cover-link img{transition:transform .2s ease}
.music-grid .music-cover-link:hover img{transform:scale(1.015)}
.music-tile-content a{text-transform:uppercase}

/* Consistent, readable footer on the music library and song pages */
.music-page > footer.music-footer { background:#06384e; color:#fff; text-align:center; padding:32px 20px; margin-top:0; border-top:1px solid rgba(142,231,242,.15); }
.music-page > footer.music-footer a { color:#fff; }
.music-page > footer.music-footer .song-copyright { color:rgba(255,255,255,.85); opacity:1; font-size:.82rem; }

/* v76: match homepage typography and improve action contrast */
.music-page .music-wrap h1,
.music-page .music-tile h2,
.music-page .song-main-column h2,
.music-page .song-lyrics-column h2 {font-family:"Bebas Neue",sans-serif; font-weight:400; text-transform:uppercase; letter-spacing:.045em;}
.music-page .music-wrap h1 {font-size:clamp(3.8rem,8vw,6.6rem);line-height:.96;}
.music-page .music-tile h2 {font-size:2rem;line-height:1.05;}
.music-page .song-main-column h2, .music-page .song-lyrics-column h2 {font-size:clamp(2rem,3.4vw,3rem);line-height:1.05;}
.music-page .song-follow h2 {font-family:"Bebas Neue",sans-serif;font-size:2rem;letter-spacing:.04em;}
.music-page .music-tile-content a, .music-page .story-actions a {text-transform:uppercase;letter-spacing:.09em;color:#fff;background:#096d79;}
.music-page .music-tile-content a:hover, .music-page .story-actions a:hover {background:#064650;color:#fff;}
.music-page .story-actions a.outline {background:transparent;color:#075c67;border:2px solid #075c67;}
.music-page .story-actions a.outline:hover {background:#075c67;color:#fff;}
.music-page .music-tile .music-cover-link,.music-page .music-tile .music-cover-link:hover {background:transparent;padding:0;}
.music-page .music-back {text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;}
.music-page .song-main-column > h2:first-of-type {font-family:"Allison",cursive;text-transform:none;letter-spacing:normal;font-size:clamp(3.3rem,5.2vw,5rem);line-height:1;}

/* v77: Match homepage typography on every music page. */
.music-page .player-heading,
.music-page .song-main-column > h2:first-of-type {font-family:"Bebas Neue",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.045em;font-size:clamp(2.4rem,4vw,3.6rem);line-height:1.03;}
.music-page .song-main-column > .music-kicker + h2 {font-family:"Allison",cursive;font-size:clamp(3.3rem,5vw,5rem);font-weight:400;text-transform:none;letter-spacing:normal;line-height:1.05;}
.music-page .song-main-column > h2:not(.player-heading),.music-page .song-lyrics-column > h2{font-family:"Bebas Neue",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.045em;}
.music-page .song-main-column > .music-kicker + h2 {font-family:"Allison",cursive;text-transform:none;letter-spacing:normal;}

/* v79: unified music page section headings */
.music-page .song-main-column > h2.behind-music-heading{font-family:"Allison",cursive!important;font-size:clamp(3.1rem,4.2vw,4.1rem)!important;font-weight:400!important;letter-spacing:normal!important;text-transform:none!important;line-height:1.08!important;margin:38px 0 14px!important;}
.music-page .song-main-column > h2.player-heading{font-family:"Bebas Neue",sans-serif!important;text-transform:uppercase!important;letter-spacing:.045em!important;}

/* Song catalog link below Follow Our Journey, without a card background */
.music-page .song-catalog-link{margin:8px 0 30px;padding:0;background:none;border:0;font-size:15px;line-height:1.6;color:#37595d}
.music-page .song-catalog-link a{color:#087a81;text-decoration:none;font-weight:700}
.music-page .song-catalog-link a:hover{text-decoration:underline;color:#064f55}

/* v86: align pre-save actions with music platform cards and give follow card room */
.music-page .song-presave{margin-top:38px;margin-bottom:0}
.music-page .song-presave h2{margin:0 0 16px}
.music-page .song-presave .platform-note{margin:0 0 22px}
.music-page .song-presave .platform-links{margin-bottom:0}
.music-page .song-presave .platform-link{text-transform:uppercase;letter-spacing:.055em}
.music-page .song-presave .presave-icon{display:inline-flex;align-items:center;justify-content:center;color:#087c9c;font-size:23px;width:24px;flex-shrink:0}
.music-page .song-main-column > .song-follow{margin-top:38px}

/* v87: Match homepage footer branding across all music pages */
.music-page > footer.music-branded-footer{background:#06384e;color:#fff;text-align:center;padding:38px 24px 42px;margin-top:0;border:0}
.music-branded-footer .footer-inner{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.music-branded-footer .footer-inner span{color:#fff;font-size:.65rem;letter-spacing:.18em;font-weight:800}
.music-branded-footer .music-footer-logo{display:block;background:none;padding:0;border:0}
.music-branded-footer .music-footer-logo img{display:block;width:min(330px,75vw);height:auto;margin:auto}
.music-branded-footer .song-copyright{margin:12px 0 0;color:rgba(255,255,255,.8);font-size:.78rem}
.music-branded-footer .legal{max-width:850px;margin:10px auto 0;color:rgba(255,255,255,.75);font-size:.76rem;line-height:1.5}
@media(max-width:760px){.music-branded-footer .footer-inner{grid-template-columns:1fr;gap:16px}.music-branded-footer .footer-inner span{font-size:.6rem}}

/* v88: center copyright beneath the footer wordmark on music pages */
.music-page > footer.music-branded-footer .song-copyright {
  display:block; width:100%; text-align:center; margin:14px auto 0;
}

/* Song-specific trademark note, kept out of the shared footer */
.song-trademark-note {font-size: .78rem; line-height: 1.6; opacity: .8; margin: 1.4rem 0 2rem; }

/* v90: Footer music link retains footer typography, with subtle hover */
footer .footer-music-link, .music-branded-footer .footer-music-link { color:inherit; font:inherit; font-weight:inherit; letter-spacing:inherit; text-decoration:none; transition:color .2s ease, text-decoration-color .2s ease; }
footer .footer-music-link:hover, footer .footer-music-link:focus-visible { color:#8ee7f2; text-decoration:underline; text-underline-offset:4px; }

/* v92: Subtle, readable song-specific legal footnote */
.music-page .song-trademark-note { font-size: 12px; line-height: 1.5; font-weight: 400; color: #71838a; opacity: 1; margin: 24px 0 28px; }


/* v93: tighter featured music layout on phones */
@media (max-width: 650px) {
  .releases-clean .release-card { gap: 13px; align-items: start; }
  .releases-clean .release-info { padding-right: 0; }
  .releases-clean .release-info > .eyebrow { margin-top: 0; margin-bottom: 12px; }
  .releases-clean .release-info > .release-story-link {
    display: block !important;
    width: fit-content;
    margin: 19px auto 0 !important;
    text-align: center;
  }
}
/* v93: subtle mobile-only scroll-to-top control */
.back-to-top {
  display: none;
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(22px, env(safe-area-inset-bottom));
  z-index: 1000;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(7, 69, 85, .18);
  border-radius: 50%;
  background: rgba(239, 252, 253, .82);
  color: #07556b;
  box-shadow: 0 5px 20px rgba(4, 43, 54, .14);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease, background .2s ease;
}
.back-to-top svg { width: 21px; height: 21px; stroke: currentColor; }
.back-to-top:hover, .back-to-top:focus-visible { background: rgba(255,255,255,.97); }
@media (max-width: 760px) {
  .back-to-top { display: flex; }
  .back-to-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) { .back-to-top { transition: none; } }

/* PTS WP fix: remove inherited 75px music-footer gap above shared footer. */
body.home > footer.music-branded-footer, body.home > footer.music-footer { margin-top: 0 !important; }

/* WordPress shared footer: flush with preceding section on every template. */
body footer.music-footer.music-branded-footer {
  margin: 0 !important;
  clear: both;
}
body footer.music-branded-footer .song-copyright {
  display: block;
  width: 100%;
  max-width: none;
  margin: 14px auto 0 !important;
  text-align: center !important;
}

/* Align song action button labels consistently, including on mobile. */
.music-page .story-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.25;
  min-height: 46px;
  box-sizing: border-box;
}

/* WordPress song platform cards: match original PTS release pages. */
.music-page .platform-links > a.platform-link {
  display:flex;align-items:center;gap:14px;min-height:62px;box-sizing:border-box;
  padding:15px 19px;background:#fff;border:1px solid #d4e2e2;border-radius:6px;
  color:#124b60;font-family:"DM Sans",sans-serif;font-size:15px;font-weight:800;
  line-height:1.25;text-decoration:none;box-shadow:none;
  transition:background-color .18s,border-color .18s,transform .18s;
}
.music-page .platform-links > a.platform-link:hover {background:#e9f8fb;border-color:#19b8d4;transform:translateY(-1px);}
.music-page .platform-links > a.platform-link:focus-visible {outline:3px solid #0b79a3;outline-offset:3px;}
.music-page .platform-brand {display:inline-flex;justify-content:center;align-items:center;flex:0 0 27px;
  height:27px;color:#0b79a3;font-size:24px;font-weight:900;line-height:1;}
.music-page .platform-brand-amazon {font-family:Arial,sans-serif;font-style:italic;font-size:26px;}
.music-page .platform-brand-youtube_music {font-size:21px;}
@media(max-width:520px){.music-page .platform-links{grid-template-columns:1fr;}}

/* Saltwater Journal editorial layout, v1.3.0 */
.pts-journal-wrap { max-width: 960px; }
.pts-journal-entry { width: 100%; }
.pts-journal-header { max-width: 900px; margin: 0 auto; }
.pts-journal-script { font-family: "Allison", cursive; color: #167c91; font-size: clamp(30px, 4vw, 42px); line-height: 1.2; margin: 0 0 20px; }
.music-page .pts-journal-wrap .pts-journal-entry h1 { font-family: "Bebas Neue", sans-serif; font-size: clamp(44px, 5.3vw, 68px); line-height: .99; letter-spacing: .012em; margin: 12px 0 24px; overflow-wrap: break-word; }
.pts-journal-intro { font-family: "DM Sans", sans-serif; font-size: 21px; font-weight: 600; line-height: 1.55; color: #355d61; margin: 0 0 28px; max-width: 760px; }
.pts-journal-hero { max-width: 900px; margin: 28px auto 36px; }
.pts-journal-cover { display: block; width: 100%; height: auto; border-radius: 5px; border: 0; }
.pts-journal-body { max-width: 720px; margin: 0 auto; font-family: "DM Sans", sans-serif; color: #204b50; font-size: 17px; line-height: 1.75; }
.pts-journal-body p { font-size: inherit; line-height: inherit; margin: 0 0 22px; }
.pts-journal-body h2 { font-family: "Bebas Neue", sans-serif; font-size: clamp(30px, 4vw, 43px); line-height: 1.12; margin: 52px 0 19px; color: #153f42; }
.pts-journal-body h3 { font-size: 24px; line-height: 1.3; margin: 35px 0 16px; }
.pts-journal-body ul, .pts-journal-body ol { margin: 0 0 24px; padding-left: 1.6em; }
.pts-journal-body li { margin-bottom: 9px; }
.pts-journal-body img { max-width: 100%; height: auto; border-radius: 5px; }
.pts-journal-body figure { margin: 30px 0 36px; }
.pts-journal-body a { color: #087c91; text-underline-offset: 3px; }
@media (max-width: 700px) {
  .pts-journal-wrap { padding-left: 21px; padding-right: 21px; }
  .pts-journal-body { font-size: 16px; line-height: 1.75; }
  .pts-journal-intro { font-size: 19px; }
  .pts-journal-hero { margin: 24px auto 32px; }
  .music-page .pts-journal-wrap .pts-journal-entry h1 { font-size: clamp(42px, 10vw, 56px); }
}

/* The Saltwater Journal index, v1.3.3: independent editorial cards. */
.pts-journal-index { background:#f9f7f0; color:#163e42; min-height:65vh; padding:clamp(100px,11vw,152px) 24px 110px; }
.pts-journal-index-inner { width:min(1120px,100%); margin:0 auto; }
.pts-journal-index-header { max-width:920px; margin:0 0 48px; }
.pts-journal-eyebrow,.pts-journal-card-meta { font-family:"DM Sans",sans-serif; font-size:12px; font-weight:800; letter-spacing:.16em; color:#078a94; text-transform:uppercase; }
.pts-journal-index-header h1 { font-family:"Bebas Neue",sans-serif; font-size:clamp(52px,7.4vw,94px); font-weight:400; letter-spacing:.018em; line-height:1; margin:15px 0 21px; color:#163e42; }
.pts-journal-deck { font-family:"DM Sans",sans-serif; font-size:clamp(17px,2vw,20px); line-height:1.65; color:#47676a; max-width:700px; margin:0; }
.pts-journal-articles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; align-items:stretch; }
.pts-journal-card { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid #e3e8e3; border-radius:10px; overflow:hidden; box-shadow:0 12px 35px rgba(7,54,61,.045); }
.pts-journal-card-image { display:block; width:100%; overflow:hidden; background:#dce9e6; }
.pts-journal-card-image img { display:block; width:100%; height:100%; aspect-ratio:16/10; object-fit:cover; transition:transform .35s ease; }
.pts-journal-card-image:hover img { transform:scale(1.035); }
.pts-journal-card-copy { padding:28px 30px 32px; display:flex; flex-direction:column; align-items:flex-start; flex:1; }
.pts-journal-card-meta { margin:0 0 13px; font-size:11px; }
.pts-journal-card h2 { font-family:"Bebas Neue",sans-serif; font-weight:400; font-size:clamp(29px,3.2vw,42px); line-height:1.07; letter-spacing:.012em; margin:0 0 15px; color:#153f42; }
.pts-journal-card h2 a { color:inherit; background:none; padding:0; border-radius:0; font:inherit; letter-spacing:inherit; text-transform:none; }
.pts-journal-card h2 a:hover { color:#087c91; }
.pts-journal-card-excerpt { font-family:"DM Sans",sans-serif; font-size:16px; line-height:1.7; color:#49676b; margin:0 0 25px; }
.pts-journal-card-cta { display:inline-flex; align-items:center; gap:10px; margin-top:auto; padding:0 0 5px; border-bottom:2px solid #0b8291; border-radius:0; background:transparent; color:#087584; font-family:"DM Sans",sans-serif; font-size:12px; font-weight:800; letter-spacing:.09em; text-decoration:none; }
.pts-journal-card-cta:hover { color:#064d59; border-color:#064d59; background:transparent; }
.pts-journal-card-cta span { font-size:19px; line-height:1; }
.pts-journal-card.pts-journal-featured { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.14fr) minmax(0,1fr); min-height:390px; }
.pts-journal-featured .pts-journal-card-image img { aspect-ratio:auto; height:100%; min-height:390px; }
.pts-journal-featured .pts-journal-card-copy { justify-content:center; padding:clamp(30px,5vw,64px); }
.pts-journal-featured h2 { font-size:clamp(38px,4.5vw,62px); margin-bottom:22px; }
.pts-journal-featured .pts-journal-card-excerpt { font-size:17px; }
.pts-journal-pagination { text-align:center; margin-top:45px; }
.pts-journal-pagination .page-numbers { display:inline-block; padding:9px 14px; color:#087584; font-weight:700; }
.pts-journal-pagination .current { color:#fff; background:#087584; border-radius:4px; }
.pts-journal-empty { font-size:17px; color:#49676b; padding:20px 0 65px; }
@media(max-width:760px) {
 .pts-journal-index { padding:104px 20px 75px; }
 .pts-journal-index-header { margin-bottom:32px; }
 .pts-journal-articles { grid-template-columns:1fr; gap:22px; }
 .pts-journal-card.pts-journal-featured { grid-column:auto; display:flex; min-height:0; }
 .pts-journal-featured .pts-journal-card-image img { height:auto; min-height:0; aspect-ratio:16/10; }
 .pts-journal-card-copy,.pts-journal-featured .pts-journal-card-copy { padding:25px 24px 28px; }
 .pts-journal-featured h2 { font-size:clamp(34px,9vw,47px); }
 .pts-journal-card-excerpt,.pts-journal-featured .pts-journal-card-excerpt { font-size:15px; }
}

/* Saltwater Journal v1.3.5: alternating full-width editorial stories.
   Preserve the v1.3.4 published-post queries in home.php and page-blog.php. */
.pts-journal-articles {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.pts-journal-articles > .pts-journal-card,
.pts-journal-articles > .pts-journal-card.pts-journal-featured {
  display: grid;
  grid-template-columns: minmax(0, 1.14fr) minmax(0, 1fr);
  width: 100%;
  min-height: 390px;
  align-items: stretch;
}
.pts-journal-articles > .pts-journal-card .pts-journal-card-image {
  grid-column: 1;
  grid-row: 1;
  height: 100%;
  min-height: 390px;
}
.pts-journal-articles > .pts-journal-card .pts-journal-card-image img {
  width: 100%;
  height: 100%;
  min-height: 390px;
  aspect-ratio: auto;
  object-fit: cover;
}
.pts-journal-articles > .pts-journal-card .pts-journal-card-copy {
  grid-column: 2;
  grid-row: 1;
  justify-content: center;
  padding: clamp(30px, 4.5vw, 62px);
}
.pts-journal-articles > .pts-journal-card h2 {
  font-size: clamp(38px, 4.2vw, 60px);
  margin-bottom: 22px;
}
.pts-journal-articles > .pts-journal-card .pts-journal-card-excerpt {
  font-size: 17px;
}
/* Every even story reverses the two columns. */
.pts-journal-articles > .pts-journal-card:nth-child(even) {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.14fr);
}
.pts-journal-articles > .pts-journal-card:nth-child(even) .pts-journal-card-image { grid-column: 2; }
.pts-journal-articles > .pts-journal-card:nth-child(even) .pts-journal-card-copy { grid-column: 1; }
@media (max-width: 760px) {
  .pts-journal-articles { gap: 22px; }
  .pts-journal-articles > .pts-journal-card,
  .pts-journal-articles > .pts-journal-card.pts-journal-featured,
  .pts-journal-articles > .pts-journal-card:nth-child(even) {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }
  .pts-journal-articles > .pts-journal-card .pts-journal-card-image {
    width: 100%;
    height: auto;
    min-height: 0;
  }
  .pts-journal-articles > .pts-journal-card .pts-journal-card-image img {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 16 / 10;
  }
  .pts-journal-articles > .pts-journal-card .pts-journal-card-copy {
    padding: 25px 24px 28px;
  }
  .pts-journal-articles > .pts-journal-card h2 {
    font-size: clamp(34px, 9vw, 47px);
  }
  .pts-journal-articles > .pts-journal-card .pts-journal-card-excerpt {
    font-size: 15px;
  }
}


/* v1.3.6: Editable WordPress header and footer menus. */
.pts-primary-nav { display:block; }
.pts-primary-nav .pts-nav-list { display:flex; align-items:center; gap:30px; padding:0; margin:0; list-style:none; }
.pts-primary-nav .pts-nav-list li { margin:0; padding:0; }
.pts-primary-nav .pts-nav-list a { display:block; color:#fff; font-size:.77rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; text-shadow:0 2px 12px rgba(0,0,0,.28); transition:opacity .2s; }
.pts-primary-nav .pts-nav-list a:hover,.pts-primary-nav .pts-nav-list a:focus-visible { opacity:.75; }
.pts-footer-nav { display:block; }
.pts-footer-nav .pts-footer-menu { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:0; padding:0; margin:0; list-style:none; }
.pts-footer-nav .pts-footer-menu li { display:flex; align-items:center; margin:0; padding:0; }
.pts-footer-nav .pts-footer-menu li+li::before { content:'•'; margin:0 .7em; color:#fff; }
.pts-footer-nav .pts-footer-menu a { color:#fff; font-size:.65rem; letter-spacing:.18em; font-weight:800; text-transform:uppercase; text-decoration:none; transition:color .2s; }
.pts-footer-nav .pts-footer-menu a:hover,.pts-footer-nav .pts-footer-menu a:focus-visible { color:#8ee7f2; }
@media(max-width:900px) { .pts-footer-nav .pts-footer-menu { justify-content:center; } }
@media(max-width:650px) {
 .pts-primary-nav .pts-nav-list { gap:14px; }
 .pts-primary-nav .pts-nav-list a { font-size:.62rem; }
 .pts-primary-nav .pts-nav-list li:nth-child(3) { display:none; }
 .pts-footer-nav .pts-footer-menu a { font-size:.6rem; }
}

/* Music Page editor content, displayed above the existing catalog. */
.pts-music-page-content{margin:0 auto 32px;max-width:900px}


/* v1.3.12: Standard WordPress pages, including Privacy Policy.
   Scoped to page.php only. Music, Journal, songs, homepage remain unchanged. */
.pts-standard-page{background:#f9f7f0;color:#24494e;min-height:65vh;padding:clamp(90px,11vw,130px) 24px 105px;font-family:"DM Sans",sans-serif}
.pts-standard-shell{max-width:820px;margin:0 auto}
.pts-standard-heading{padding-bottom:27px;margin-bottom:36px;border-bottom:1px solid #d9e1dc}
.pts-standard-eyebrow{font-family:"DM Sans",sans-serif!important;color:#11868e;font-size:12px!important;font-weight:700!important;letter-spacing:.19em;text-transform:uppercase;margin:0 0 13px!important}
.music-page .pts-standard-heading h1,.pts-standard-heading h1{font-family:"Bebas Neue",sans-serif;font-weight:400!important;font-size:clamp(46px,6.5vw,70px)!important;line-height:1.02!important;letter-spacing:.035em!important;color:#163e42;text-transform:uppercase;margin:0 0 14px!important}
.pts-standard-subtitle{font-family:"DM Sans",sans-serif;font-size:clamp(16px,2vw,19px);line-height:1.6;color:#597176;margin:0!important}
.pts-standard-content{max-width:100%;margin:0;font-family:"DM Sans",sans-serif;font-size:16px;font-weight:400;line-height:1.8;color:#34585c;overflow-wrap:break-word}
.pts-standard-content p{font-size:inherit;line-height:inherit;margin:0 0 20px}
.pts-standard-content h2,.pts-standard-content h2 strong,.pts-standard-content .wp-block-heading:is(h2){font-family:"DM Sans",sans-serif!important;font-size:clamp(22px,2.6vw,26px)!important;font-weight:650!important;line-height:1.35!important;letter-spacing:0!important;text-transform:none!important;color:#173f44!important;margin:46px 0 15px!important}
.pts-standard-content h3,.pts-standard-content h3 strong{font-family:"DM Sans",sans-serif!important;font-size:19px!important;font-weight:650!important;line-height:1.4!important;letter-spacing:0!important;text-transform:none!important;color:#24494e!important;margin:28px 0 12px!important}
.pts-standard-content h4{font-family:"DM Sans",sans-serif!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}
.pts-standard-content h2:not(:first-child){padding-top:27px;border-top:1px solid #e1e7e1}
.pts-standard-content ul,.pts-standard-content ol{margin:0 0 25px;padding-left:1.6em}
.pts-standard-content li{margin:0 0 8px;padding-left:3px;line-height:1.75}
.pts-standard-content a{color:#087f8d;text-decoration:underline;text-underline-offset:3px}
.pts-standard-content a:hover{color:#06545d}
.pts-standard-content strong{font-weight:700}
.pts-standard-content img{max-width:100%;height:auto}
.pts-standard-content .wp-block-group{max-width:100%}
.pts-standard-content .wp-block-separator{border:0;border-top:1px solid #d9e1dc;margin:32px 0}
@media(max-width:640px){.pts-standard-page{padding:92px 20px 65px}.pts-standard-heading{margin-bottom:27px}.pts-standard-content{font-size:15.5px}.pts-standard-content h2{margin-top:36px!important}}

/* Footer legal links */
.song-copyright .pts-legal-nav,.song-copyright .pts-legal-menu,.song-copyright .pts-legal-menu li { display:inline; }
.song-copyright .pts-legal-menu { list-style:none; margin:0; padding:0; }
.song-copyright .pts-legal-menu li + li::before { content:' | '; white-space:pre; opacity:.7; }
.song-copyright .pts-legal-menu a { color:inherit; font:inherit; text-decoration:underline; text-underline-offset:3px; }
.song-copyright .pts-legal-menu a:hover { color:#8ee7f2; }
.song-copyright .pts-legal-divider { padding:0 .45em; opacity:.75; }


/* v1.3.14: legal links alongside copyright, without invalid nav-inside-p markup */
body footer.music-branded-footer .pts-copyright-row {
  display:flex !important;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  column-gap:0;
  row-gap:4px;
  max-width:none;
  text-align:center;
  color:rgba(255,255,255,.85);
}
body footer.music-branded-footer .pts-copyright-row .pts-copyright-text { color:inherit; }
body footer.music-branded-footer .pts-copyright-row .pts-legal-nav {
  display:inline-flex !important;
  align-items:center;
  gap:0 !important; /* Override the global nav { gap:30px } rule */
  color:inherit;
  margin:0;
  padding:0;
}
body footer.music-branded-footer .pts-copyright-row .pts-legal-nav::before {
  content:'|';
  display:inline-block;
  margin:0 6px;
  color:rgba(255,255,255,.7);
}
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu {
  display:inline-flex !important;
  align-items:center;
  flex-wrap:wrap;
  gap:0;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu li {
  display:inline-flex !important;
  align-items:center;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu li::marker { content:''; }
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu li + li::before {
  content:'|';
  display:inline-block;
  margin:0 6px;
  color:rgba(255,255,255,.7);
}
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu a {
  color:#fff !important;
  font-family:'DM Sans',sans-serif !important;
  font-size:inherit !important;
  font-weight:400 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
}
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu a:hover,
body footer.music-branded-footer .pts-copyright-row .pts-legal-menu a:focus-visible {
  color:#8ee7f2 !important;
  text-decoration:underline !important;
  text-underline-offset:3px;
}

/* v1.3.17: Consistent streaming platform icons */
.platform-brand i { font-size:23px; line-height:1; font-style:normal; }
.platform-brand svg { width:24px; height:24px; display:block; }
.platform-brand-amazon i { font-size:23px; }

/* Story and Journal sharing */
.pts-share{margin:36px 0 34px;padding:24px 26px;border:1px solid #d5e5e8;border-radius:9px;background:#f0f7f7;color:#173f45}
.pts-share h2{font-family:'Bebas Neue',sans-serif;font-size:30px;line-height:1.1;font-weight:400;margin:0 0 6px;text-transform:uppercase}
.pts-share p{font-size:15px;margin:0 0 17px}
.pts-share-links{display:flex;gap:9px;flex-wrap:wrap}
.pts-share-links a,.pts-share-links button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #c9dce0;border-radius:6px;background:#fff;color:#0b5369;padding:11px 15px;font:600 14px 'DM Sans',sans-serif;text-decoration:none;cursor:pointer;min-height:44px;transition:background .15s,border-color .15s}
.pts-share-links a:hover,.pts-share-links button:hover{background:#e4f6fa;border-color:#1196af}
.pts-share-links a:focus-visible,.pts-share-links button:focus-visible{outline:3px solid #1196af;outline-offset:2px}
.pts-share-links [hidden]{display:none}
.pts-share-feedback{display:block;min-height:18px;margin-top:7px;font-size:13px;color:#0b6370}
@media(max-width:550px){.pts-share{padding:20px 16px}.pts-share-links a,.pts-share-links button{flex:1 1 125px}}

/* v1.3.22: Match Share This Story heading to Follow Our Journey. */
.song-main-column .pts-share h2 {
  font-family: "Bebas Neue", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: .04em;
}


/* Optional merchandise promotion on released music stories. */
.pts-song-merch{margin:34px 0 30px}
.pts-song-merch>h2{font-family:"Bebas Neue",sans-serif;font-size:clamp(1.75rem,3vw,2.35rem);letter-spacing:.025em;margin:0 0 7px;color:#173e42}
.pts-song-merch-intro{margin:0 0 17px!important;font-size:15px;line-height:1.6}
.pts-song-merch-card{display:grid;grid-template-columns:minmax(0,185px) minmax(0,1fr);gap:22px;align-items:center;padding:19px;border:1px solid #d4e2e2;border-radius:8px;background:#f1f8f7}
.pts-song-merch-image{display:block;overflow:hidden;border-radius:6px;background:#fff;aspect-ratio:1/1}
.pts-song-merch-image img{display:block;width:100%;height:100%;object-fit:cover}
.pts-song-merch-details h3{font-family:"DM Sans",sans-serif;font-size:18px;line-height:1.35;margin:0 0 9px;color:#173e42;font-weight:700}
.pts-song-merch-details p{font-size:14px;line-height:1.6;margin:0 0 17px}
.pts-song-merch-button{display:inline-block;background:#086d80;color:white!important;text-decoration:none!important;border-radius:5px;padding:12px 17px;font-size:12px;font-weight:800;letter-spacing:.06em}
.pts-song-merch-button:hover{background:#064d5b}
@media(max-width:540px){.pts-song-merch-card{grid-template-columns:1fr}.pts-song-merch-image{max-width:270px}}

/* v1.3.26: Lightweight sharing section, without a stacked card. */
.pts-share {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  margin: 24px 0 28px;
  box-shadow: none;
}
.song-main-column .song-follow + .pts-share { margin-top: 22px; }
@media (max-width: 550px) {
  .pts-share { padding: 0; }
}

/* v1.3.27: Follow and share are one card on song and Journal stories. */
.pts-follow-share-card {
  margin: 22px 0 30px;
  padding: 24px;
  background: #f1f8f7;
  border: 1px solid #d4e2e2;
  border-radius: 8px;
}
.pts-follow-share-card > .song-follow {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.pts-follow-share-card > .pts-share {
  margin: 23px 0 0;
  padding: 21px 0 0;
  background: transparent;
  border: 0;
  border-top: 1px solid #d4e2e2;
  border-radius: 0;
  box-shadow: none;
}
.pts-follow-share-card .song-follow h2,
.pts-follow-share-card .pts-share h2 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.pts-follow-share-card .pts-share-feedback:empty { display: none; }
@media(max-width:550px) {
  .pts-follow-share-card { padding: 20px 16px; }
  .pts-follow-share-card > .pts-share { padding: 20px 0 0; }
}


/* Optional connections between song stories and Saltwater Journal articles */
.pts-related-story{margin:2rem 0 2.25rem;padding:1.25rem 1.5rem;border-left:3px solid var(--teal,#19b8d4);background:rgba(25,184,212,.055);border-radius:0 8px 8px 0}
.pts-related-story h2{font-size:1.45rem;line-height:1.2;margin:0 0 .4rem}
.pts-related-story p{margin:.1rem 0 .65rem}
.pts-related-story a{display:block;font-weight:700;margin:.4rem 0;color:var(--teal-dark,#075b78);text-decoration:underline;text-underline-offset:3px}

/* v1.3.30: Reserve two title lines on music catalog cards without forcing short titles to wrap. */
.music-page .music-grid .music-tile h2 { min-height: 2.1em; }
