/* Push #20.5.13.6 — structural rebuild for the Home page from CEO/About through footer.
   IMPORTANT: the approved Welcome-to-Dju2smooth hero is intentionally excluded.
   Goal: one full-width, stable, premium black/gold experience that remains editable. */

body.home-art-active{
  --p205136-gold:#d4af37;
  --p205136-gold2:#f2cf69;
  --p205136-cream:#f6ecd1;
  --p205136-ink:#050505;
  --p205136-panel:#0c0c0d;
  --p205136-panel2:#131316;
  --p205136-line:rgba(212,175,55,.28);
  --p205136-gutter:clamp(20px,4vw,72px);
}

/* Never target .home-art-hero in this file. Everything below begins at #about. */
body.home-art-active main > section:not(.home-art-hero),
body.home-art-active footer.footer{
  position:relative;
  width:100%;
  max-width:none;
  margin:0;
  box-sizing:border-box;
}

body.home-art-active main > section:not(.home-art-hero){
  padding:clamp(58px,7vw,108px) 0;
  border-top:1px solid var(--p205136-line);
  color:var(--p205136-cream);
  background:
    radial-gradient(circle at 8% 18%, rgba(212,175,55,.10), transparent 28%),
    radial-gradient(circle at 92% 80%, rgba(114,74,16,.13), transparent 30%),
    linear-gradient(180deg,#070708 0%,#0c0c0e 52%,#070708 100%);
}
body.home-art-active main > section:not(.home-art-hero):nth-of-type(even){
  background:
    radial-gradient(circle at 88% 14%, rgba(212,175,55,.09), transparent 26%),
    linear-gradient(180deg,#0b0b0d 0%,#101013 52%,#09090a 100%);
}
body.home-art-active main > section:not(.home-art-hero)::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent 0%,rgba(212,175,55,.22) 14%,var(--p205136-gold) 50%,rgba(212,175,55,.22) 86%,transparent 100%);
  pointer-events:none;
}

/* True page-width containers. Content uses a safe responsive gutter, not old narrow max-widths. */
body.home-art-active main > section:not(.home-art-hero) > .wrap,
body.home-art-active #about .wrap,
body.home-art-active #music .wrap,
body.home-art-active #videos .wrap,
body.home-art-active #merch .wrap,
body.home-art-active #elsewhere .wrap,
body.home-art-active #services .wrap,
body.home-art-active #weddings .wrap,
body.home-art-active #trustStrip .wrap,
body.home-art-active #booking .wrap,
body.home-art-active footer.footer > .wrap{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  box-sizing:border-box;
  padding-left:var(--p205136-gutter);
  padding-right:var(--p205136-gutter);
}

/* Shared full-width headings */
body.home-art-active #about .about-text,
body.home-art-active #music .section-head,
body.home-art-active #videos .section-head,
body.home-art-active #merch .section-head,
body.home-art-active #elsewhere .section-head,
body.home-art-active #services .section-head,
body.home-art-active #weddings .section-head,
body.home-art-active #booking .booking-info{
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
body.home-art-active .section-head,
body.home-art-active #about .about-text,
body.home-art-active #booking .booking-info{
  padding:clamp(22px,3vw,42px);
  border:1px solid rgba(212,175,55,.22);
  border-radius:clamp(16px,2vw,28px);
  background:linear-gradient(135deg,rgba(18,18,20,.96),rgba(5,5,6,.92));
  box-shadow:0 20px 54px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.025);
}
body.home-art-active .section-head h2,
body.home-art-active #about h2,
body.home-art-active #booking h2{
  color:var(--p205136-gold2);
  text-wrap:balance;
  max-width:none;
}
body.home-art-active .section-head p,
body.home-art-active #about p,
body.home-art-active #booking p{
  max-width:none;
}

/* ================= CEO / ABOUT: stable stacked stage, no old two-column trap ================= */
body.home-art-active #about{
  padding-top:clamp(44px,6vw,88px);
}
body.home-art-active #about .about{
  display:block !important;
  width:100%;
  max-width:none;
  padding:0;
  margin:0;
}
body.home-art-active #about .about-media{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}
body.home-art-active #about .portrait-figure{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  overflow:visible;
  border-top:1px solid rgba(212,175,55,.32);
  border-bottom:1px solid rgba(212,175,55,.32);
  background:
    radial-gradient(circle at 50% 45%,rgba(212,175,55,.13),transparent 34%),
    linear-gradient(90deg,#050505 0%,#0d0d0f 50%,#050505 100%);
  box-shadow:0 22px 72px rgba(0,0,0,.45);
}
body.home-art-active #aboutPhoto{
  display:block;
  width:100%;
  max-width:none;
  height:clamp(500px,72vw,920px);
  min-height:0;
  margin:0;
  padding:clamp(14px,2vw,30px);
  box-sizing:border-box;
  object-fit:contain;
  object-position:center center;
  aspect-ratio:auto;
  background:transparent;
}
body.home-art-active #about .portrait-caption{
  display:block;
  width:100%;
  max-width:none;
  margin:0 !important;
  padding:16px var(--p205136-gutter) 18px;
  box-sizing:border-box;
  text-align:center;
  color:var(--p205136-gold2) !important;
  background:linear-gradient(90deg,rgba(0,0,0,.96),rgba(19,15,6,.98),rgba(0,0,0,.96));
  border-top:1px solid rgba(212,175,55,.24);
}
body.home-art-active #about .about-text{
  margin:clamp(28px,4vw,52px) var(--p205136-gutter) 0;
  width:calc(100% - (var(--p205136-gutter) * 2));
}
body.home-art-active #about .about-stats{
  width:100%;
  max-width:none;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(12px,2vw,28px);
}
body.home-art-active #about .about-stats > div{
  min-width:0;
  padding:clamp(16px,2.2vw,28px);
  border:1px solid rgba(212,175,55,.24);
  border-radius:16px;
  background:rgba(255,255,255,.025);
}

/* ================= HOME MUSIC / VIDEO / MERCH: broad shelves ================= */
body.home-art-active #music .album-grid,
body.home-art-active #videos .video-grid,
body.home-art-active #merch .video-grid,
body.home-art-active #elsewhere .link-grid{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  box-sizing:border-box;
}
body.home-art-active #music .album-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
  gap:clamp(18px,2.4vw,34px);
}
body.home-art-active #videos .video-grid,
body.home-art-active #merch .video-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));
  gap:clamp(18px,2.4vw,34px);
}
body.home-art-active #music .album-card,
body.home-art-active #videos .video-card,
body.home-art-active #merch .merch-card,
body.home-art-active #merch .video-card{
  max-width:none;
  border-color:rgba(212,175,55,.24);
  box-shadow:0 18px 44px rgba(0,0,0,.28);
}

/* ================= DJ SERVICES: one clean, stable full-width sequence ================= */
body.home-art-active #services .services-stack{
  display:block !important;
  width:100%;
  max-width:none;
}
body.home-art-active #services .section-head{
  margin-bottom:clamp(24px,3vw,42px);
}
body.home-art-active #services #packagesTable{
  width:100%;
  max-width:none;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(212,175,55,.28);
  border-radius:20px;
  background:rgba(8,8,9,.96);
  box-shadow:0 24px 54px rgba(0,0,0,.34);
}
body.home-art-active #services .pricing-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(130px,max-content) !important;
  align-items:center;
  gap:clamp(18px,3vw,52px);
  width:100%;
  max-width:none;
  min-height:64px;
  padding:15px clamp(18px,3vw,44px);
  box-sizing:border-box;
}
body.home-art-active #services .pricing-row > *{
  min-width:0;
  position:static !important;
}
body.home-art-active #services .pricing-event{
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:left;
}
body.home-art-active #services .pricing-price,
body.home-art-active #services .pricing-row > :last-child{
  justify-self:end;
  text-align:right;
  white-space:nowrap;
}
body.home-art-active #services .services-media-stack{
  display:block;
  width:100%;
  max-width:none;
  margin:clamp(34px,5vw,70px) 0 0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(212,175,55,.3);
  border-radius:clamp(18px,2vw,30px);
  background:#050505;
  box-shadow:0 28px 70px rgba(0,0,0,.42);
}
body.home-art-active #services .services-media-stack img{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
  object-fit:contain;
  object-position:center;
  aspect-ratio:auto;
}
body.home-art-active #services .services-media-stack figcaption{
  width:100%;
  box-sizing:border-box;
  padding:clamp(20px,3vw,38px);
  background:linear-gradient(180deg,#111114,#09090a);
}
body.home-art-active #services .services-list{
  width:100%;
  max-width:none;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));
  gap:14px;
  margin:clamp(28px,4vw,48px) 0 0;
  padding:0;
}
body.home-art-active #services .services-list li{
  min-width:0;
  padding:18px 20px;
  border:1px solid rgba(212,175,55,.18);
  border-radius:14px;
  background:rgba(255,255,255,.025);
}
body.home-art-active #services .pricing-footnote{
  width:100%;
  max-width:none;
  margin:clamp(28px,4vw,52px) 0 0;
  padding:clamp(18px,2.6vw,30px) var(--p205136-gutter);
  box-sizing:border-box;
  border-top:1px solid rgba(212,175,55,.42);
  border-bottom:1px solid rgba(212,175,55,.42);
  background:linear-gradient(90deg,rgba(212,175,55,.08),rgba(25,18,4,.75),rgba(212,175,55,.08));
  color:var(--p205136-cream);
  text-align:center;
  font-weight:700;
}

/* ================= WEDDINGS: full-width image + responsive package cards ================= */
body.home-art-active #weddings .wrap{
  width:100%;
  max-width:none;
}
body.home-art-active #weddingsFeaturedImageWrap{
  display:block;
  width:100%;
  max-width:none;
  margin:clamp(28px,4vw,52px) 0 0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(212,175,55,.3);
  border-radius:clamp(18px,2vw,30px);
  background:#050505;
  box-shadow:0 28px 70px rgba(0,0,0,.42);
}
body.home-art-active #weddingsFeaturedImage{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
  object-fit:contain;
  object-position:center;
  aspect-ratio:auto;
}
body.home-art-active #weddings #tierGrid{
  display:grid;
  width:100%;
  max-width:none;
  grid-template-columns:repeat(auto-fit,minmax(min(290px,100%),1fr));
  gap:clamp(18px,2.6vw,36px);
  margin-top:clamp(28px,4vw,52px);
}
body.home-art-active #weddings .tier-card{
  min-width:0;
  max-width:none;
  border:1px solid rgba(212,175,55,.25);
  border-radius:20px;
  background:linear-gradient(155deg,rgba(21,21,24,.98),rgba(8,8,9,.98));
  box-shadow:0 18px 46px rgba(0,0,0,.3);
}
body.home-art-active #weddings .addon-note{
  width:100%;
  max-width:none;
  box-sizing:border-box;
  margin-left:0;
  margin-right:0;
}

/* ================= TRUST STRIP ================= */
body.home-art-active #trustStrip .trust-grid{
  width:100%;
  max-width:none;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}

/* ================= BOOKING / CONTACT: stacked, full width, no half-page squeeze ================= */
body.home-art-active #booking .booking{
  display:block !important;
  width:100%;
  max-width:none;
}
body.home-art-active #booking .booking-info{
  width:100%;
  max-width:none;
  margin:0 0 clamp(28px,4vw,52px);
}
body.home-art-active #booking .contact-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
  gap:14px;
  width:100%;
}
body.home-art-active #booking .form-card{
  width:100%;
  max-width:none;
  margin:0;
  box-sizing:border-box;
  padding:clamp(22px,4vw,52px);
  border:1px solid rgba(212,175,55,.3);
  border-radius:clamp(18px,2vw,28px);
  background:linear-gradient(150deg,rgba(17,17,20,.98),rgba(6,6,7,.98));
  box-shadow:0 28px 72px rgba(0,0,0,.4);
}
body.home-art-active #booking .form-row{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(14px,2vw,26px);
}
body.home-art-active #booking input,
body.home-art-active #booking select,
body.home-art-active #booking textarea{
  width:100%;
  box-sizing:border-box;
}

/* ================= FOOTER: full-width ending that visually belongs to the hero ================= */
body.home-art-active footer.footer{
  padding:clamp(42px,5vw,72px) 0 24px;
  border-top:1px solid rgba(212,175,55,.42);
  background:
    radial-gradient(circle at 50% 0%,rgba(212,175,55,.12),transparent 35%),
    linear-gradient(180deg,#080809,#030303);
}
body.home-art-active footer.footer .footer-inner,
body.home-art-active footer.footer .footer-bottom{
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
body.home-art-active footer.footer .footer-inner{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
  gap:clamp(30px,5vw,80px);
}
body.home-art-active footer.footer .footer-cols{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(20px,3vw,50px);
}

/* While Design Mode is active, keep the editor usable and do not let animated reveal
   transforms become another apparent layout layer. */
body.home-art-active.p203-design-on #about [data-reveal],
body.home-art-active.p203-design-on #music [data-reveal],
body.home-art-active.p203-design-on #videos [data-reveal],
body.home-art-active.p203-design-on #merch [data-reveal],
body.home-art-active.p203-design-on #elsewhere [data-reveal],
body.home-art-active.p203-design-on #services [data-reveal],
body.home-art-active.p203-design-on #weddings [data-reveal],
body.home-art-active.p203-design-on #trustStrip [data-reveal],
body.home-art-active.p203-design-on #booking [data-reveal],
body.home-art-active.p203-design-on footer [data-reveal]{
  transform:none;
  opacity:1;
}

@media(max-width:900px){
  body.home-art-active{--p205136-gutter:clamp(16px,4vw,28px)}
  body.home-art-active main > section:not(.home-art-hero){padding:48px 0}
  body.home-art-active #aboutPhoto{height:auto;max-height:none;padding:10px}
  body.home-art-active #about .about-stats{grid-template-columns:1fr}
  body.home-art-active #services .pricing-row{grid-template-columns:minmax(0,1fr) max-content !important;gap:12px;padding:14px 16px}
  body.home-art-active #booking .form-row{grid-template-columns:1fr}
  body.home-art-active footer.footer .footer-inner{grid-template-columns:1fr}
}

@media(max-width:560px){
  body.home-art-active #services .pricing-row{grid-template-columns:1fr !important;align-items:start}
  body.home-art-active #services .pricing-price,
  body.home-art-active #services .pricing-row > :last-child{justify-self:start;text-align:left}
  body.home-art-active footer.footer .footer-cols{grid-template-columns:1fr}
}

/* Explicit edge-to-edge media bands requested for the lower Home page. These fill
   the whole section width while text keeps a readable gutter. */
body.home-art-active #services .services-media-stack,
body.home-art-active #services .pricing-footnote,
body.home-art-active #weddingsFeaturedImageWrap{
  width:calc(100% + (var(--p205136-gutter) * 2));
  max-width:none;
  margin-left:calc(0px - var(--p205136-gutter));
  margin-right:calc(0px - var(--p205136-gutter));
  border-left:0;
  border-right:0;
  border-radius:0;
}
body.home-art-active #services .pricing-footnote{
  padding-left:var(--p205136-gutter);
  padding-right:var(--p205136-gutter);
}
body.home-art-active #booking .booking{
  padding-left:0;
  padding-right:0;
}
body.home-art-active #booking .booking-info,
body.home-art-active #booking .form-card{
  border-left:0;
  border-right:0;
  border-radius:0;
  padding-left:var(--p205136-gutter);
  padding-right:var(--p205136-gutter);
}
/* Push #20.5.14.2 — service names and Book / Checkout actions are both real checkout links. */
body.home-art-active #services .pricing-event-link{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
body.home-art-active #services .pricing-event-link:hover,
body.home-art-active #services .pricing-event-link:focus-visible{
  color:#f3d36a;
  text-decoration:underline;
  text-underline-offset:4px;
}
body.home-art-active #services .pricing-checkout-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:8px 15px;
  border:1px solid #d4af37;
  border-radius:999px;
  color:#111;
  background:#d4af37;
  font-weight:900;
  text-decoration:none;
}
body.home-art-active #services .pricing-checkout-link:hover,
body.home-art-active #services .pricing-checkout-link:focus-visible{
  filter:brightness(1.08);
  transform:translateY(-1px);
}

/* Push #20.5.16.1 — sponsor-facing exact RANE equipment showcase. */
body.home-art-active #aboutRaneGear{
  display:block;width:100%;max-width:none;height:auto;margin:0;padding:clamp(12px,1.6vw,24px);
  box-sizing:border-box;object-fit:contain;background:#050505;border-top:1px solid rgba(212,175,55,.24);
}
body.home-art-active #about .portrait-caption{
  position:relative!important;z-index:2;margin:0!important;padding:24px var(--p205136-gutter) 26px!important;
  clear:both;transform:none!important;
}
