
:root{--bg:#0d1114;--panel:#151d23;--text:#f4f7f8;--muted:#a5b0b7;--line:#2a353d;--accent:#e7aa33;--cream:#f4efe7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(13,17,20,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}.navbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:900;font-size:1.15rem}.brand small{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:20px;font-weight:700;font-size:.92rem}.nav-links a{color:#dce2e6}.nav-links a:hover,.nav-links a.active{color:white}.nav-cta{background:var(--accent);padding:10px 14px;border-radius:999px;color:white!important}.menu-btn{display:none;background:none;border:1px solid var(--line);color:white;padding:9px 11px;border-radius:10px}.hero{padding:100px 0 88px;background:radial-gradient(circle at 78% 28%,rgba(231,170,51,.18),transparent 26%),linear-gradient(180deg,#11181c,#0d1114)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center}.kicker{display:inline-flex;gap:9px;align-items:center;color:#f3c56b;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.16em}.kicker:before{content:"";width:34px;height:2px;background:#f0b84f}h1{font-size:clamp(3.4rem,8vw,6.5rem);line-height:.93;letter-spacing:-.05em;margin:18px 0 24px}.hero p,.page-hero p{color:#c5ced4;font-size:1.15rem;max-width:760px}.hero-card{padding:28px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.02));min-height:420px;display:grid;place-items:center}.hero-card .mark{font-size:5rem;font-weight:950;letter-spacing:-.08em;color:#fff}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:12px;font-weight:850;border:1px solid var(--line)}.btn.primary{background:var(--accent);border-color:var(--accent)}.btn.ghost{background:rgba(255,255,255,.04)}.section{padding:84px 0}.section.light{background:var(--cream);color:#1b1f22}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.section-head h2{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1;letter-spacing:-.04em;margin:0}.section-head p{max-width:570px;color:var(--muted);margin:0}.light .section-head p{color:#69737a}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px;min-height:280px;display:flex;flex-direction:column}.light .card{background:white;border-color:#ded8d0}.card h3{font-size:1.5rem;margin:10px 0}.card p{color:var(--muted)}.light .card p{color:#657077}.card a{margin-top:auto;color:#d89a24;font-weight:850}.light .card a{color:var(--accent)}.icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:rgba(231,170,51,.13);color:#f5c66a;font-weight:950}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature{min-height:320px;border:1px solid var(--line);border-radius:18px;background:var(--panel);padding:32px}.feature h3{font-size:2rem;margin-top:0}.feature p{color:var(--muted)}.band{background:var(--accent);padding:54px 0}.band .container{display:flex;justify-content:space-between;align-items:center;gap:30px}.band h2{font-size:clamp(1.8rem,4vw,3rem);margin:0}.band p{color:#fff2cf;margin:6px 0 0}.page-hero{padding:78px 0 56px;background:linear-gradient(180deg,#11181d,#0d1114)}.page-hero h1{font-size:clamp(2.8rem,6vw,5rem);margin-bottom:16px}.content-grid{display:grid;grid-template-columns:1fr .8fr;gap:36px;align-items:start}.prose h2{font-size:2rem;margin-top:0}.prose p,.prose li{color:#c3ccd1}.light .prose p,.light .prose li{color:#59636a}.quote-box{border:1px solid var(--line);background:var(--panel);border-radius:20px;padding:26px;position:sticky;top:98px}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.gallery-item{grid-column:span 6;min-height:260px;border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;align-items:end;background:radial-gradient(circle at 80% 20%,rgba(231,170,51,.18),transparent 28%),linear-gradient(145deg,#151d23,#10161a)}.gallery-item b{display:block;font-size:1.2rem}.gallery-item span{color:#c4ccd1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group.full{grid-column:1/-1}label{font-size:.82rem;font-weight:850}input,textarea,select{width:100%;border:1px solid var(--line);background:#0f1519;color:white;border-radius:11px;padding:12px 13px;font:inherit}textarea{min-height:150px}.note{font-size:.82rem;color:var(--muted)}footer{padding:46px 0 30px;border-top:1px solid var(--line);background:#0b0f12}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.footer-links{display:flex;flex-direction:column;gap:8px}footer p,footer a{color:var(--muted);font-size:.92rem}.copyright{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);color:#7e8a93;font-size:.83rem}
@media(max-width:900px){.nav-links{display:none;position:absolute;top:76px;left:20px;right:20px;flex-direction:column;align-items:stretch;background:#11181d;border:1px solid var(--line);border-radius:16px;padding:15px}.nav-links.open{display:flex}.menu-btn{display:block}.hero-grid,.content-grid,.feature-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.section-head,.band .container{flex-direction:column;align-items:flex-start}.quote-box{position:static}.footer-grid{grid-template-columns:1fr}}
@media(max-width:650px){.gallery-item{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:auto}.container{width:min(100% - 28px,1180px)}}

.brand{display:flex;align-items:center;gap:12px}
.brand img{width:54px;height:54px;object-fit:contain}
.brand .brand-text{line-height:1.1}
.hero-card{background:radial-gradient(circle at 50% 40%,rgba(231,170,51,.08),transparent 36%),linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015))}
.hero-card .hero-logo{width:min(92%,520px);max-height:440px;object-fit:contain;filter:drop-shadow(0 16px 30px rgba(0,0,0,.3))}
.light .kicker{color:#b67a11!important}

/* v3 real-work gallery + hero refinements */
.hero-grid{grid-template-columns:1fr 1fr;gap:72px}
.hero-card{min-height:500px;border-color:rgba(231,170,51,.22);background:radial-gradient(circle at 50% 45%,rgba(231,170,51,.10),transparent 38%),transparent}
.hero-card .hero-logo{width:min(100%,610px);max-height:500px}
.portfolio-strip{padding:74px 0;background:#0b1013}
.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.portfolio-card{position:relative;overflow:hidden;border-radius:18px;border:1px solid var(--line);background:#11181d;min-height:300px}
.portfolio-card.wide{grid-column:span 7}.portfolio-card.medium{grid-column:span 5}.portfolio-card.half{grid-column:span 6}
.portfolio-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .35s ease}
.portfolio-card:hover img{transform:scale(1.025)}
.portfolio-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(4,7,9,.88))}
.portfolio-caption{position:absolute;left:20px;right:20px;bottom:18px;z-index:2}
.portfolio-caption b{display:block;font-size:1.15rem}.portfolio-caption span{color:#ccd4d9;font-size:.87rem}
.embroidery-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.embroidery-shot{border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#10161a}
.embroidery-shot img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.embroidery-shot .cap{padding:14px 15px;color:#dce3e7;font-weight:750}
@media(max-width:900px){.portfolio-card,.portfolio-card.wide,.portfolio-card.medium,.portfolio-card.half{grid-column:1/-1}.embroidery-showcase{grid-template-columns:1fr 1fr}.hero-grid{grid-template-columns:1fr}}
@media(max-width:620px){.embroidery-showcase{grid-template-columns:1fr}}


/* v3.1 — compact embroidery portfolio cards */
.embroidery-showcase{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:34px auto 0;
  max-width:1180px;
}
.embroidery-shot{
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#10161a;
}
.embroidery-shot img{
  display:block;
  width:100%;
  height:260px;
  aspect-ratio:auto;
  object-fit:cover;
}
.embroidery-shot .cap{
  padding:12px 14px;
  color:#dce3e7;
  font-weight:750;
}
@media(max-width:900px){
  .embroidery-showcase{grid-template-columns:1fr 1fr;}
}
@media(max-width:620px){
  .embroidery-showcase{grid-template-columns:1fr;}
  .embroidery-shot img{height:auto;aspect-ratio:4/3;}
}

/* v3.3 social links */
.social-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.social-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:10px;border:1px solid var(--line);background:#11181d;color:#fff!important;font-weight:800}
.social-btn:hover{border-color:#e7aa33;transform:translateY(-1px)}
.social-btn .social-dot{width:9px;height:9px;border-radius:50%;background:#e7aa33;display:inline-block}
.header-social{display:flex;gap:8px;align-items:center}
.header-social a{font-size:.82rem;padding:8px 10px;border:1px solid var(--line);border-radius:999px;color:#dce2e6}
.header-social a:hover{color:#fff;border-color:#e7aa33}
@media(max-width:1050px){.header-social{display:none}}


/* v3.3.1 - keep the homepage services section dark */
.section.light {
    background: #14191c;
    color: #f5f2ea;
}

.section.light .section-head p {
    color: #aeb6b9;
}

.section.light .card {
    background: #1b2226;
    border-color: #30383c;
    color: #f5f2ea;
}

.section.light .card h3 {
    color: #ffffff;
}

.section.light .card p {
    color: #aeb6b9;
}

.section.light .card a {
    color: #e7aa33;
}

.section.light .card .icon {
    background: rgba(231, 170, 51, 0.12);
    color: #e7aa33;
}

/* v3.3.2 — compact social icons in header */
.header-social{display:flex;gap:9px;align-items:center}
.header-social a.social-icon{
  width:34px;height:34px;padding:0;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);border-radius:50%;
  color:#f5f2ea;background:#11181d;
  text-decoration:none;transition:.2s ease;
}
.header-social a.social-icon:hover{
  color:#e7aa33;border-color:#e7aa33;
  transform:translateY(-1px);
}
.header-social svg{width:17px;height:17px;display:block;fill:currentColor}
.header-social .etsy-icon{
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;font-weight:700;line-height:1;
}

/* v3.3.3 — header sizing refinements */

/* Make the Miracle Lane Farm header brand more prominent */
.brand img {
    width: 48px;
    height: 48px;
}
.brand strong {
    font-size: 1.05rem;
}
.brand small {
    font-size: .68rem;
}

/* Visually balance Facebook and Etsy marks */
.header-social a.social-icon {
    width: 34px;
    height: 34px;
}
.header-social a.social-icon svg {
    width: 20px;
    height: 20px;
}
.header-social .etsy-icon {
    font-size: 21px;
}


/* v3.4 quote-form behavior only */
#quoteSubmit:disabled{opacity:.65;cursor:wait}
input[type=file]{padding:10px}
#formStatus{min-height:1.3em;margin-top:8px}


/* v3.4.1 quote page right-hand panel */
.next-steps{display:flex;flex-direction:column;gap:15px;margin-top:6px}
.next-step{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}
.step-number{
  width:30px;height:30px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(231,170,51,.12);
  color:#e7aa33;
  border:1px solid rgba(231,170,51,.28);
  font-weight:900;font-size:.86rem
}
.next-step strong{display:block;color:#fff;margin-bottom:3px}
.next-step span{display:block;color:var(--muted);font-size:.86rem;line-height:1.45}
.quote-divider{height:1px;background:var(--line);margin:22px 0}
.contact-email{display:inline-block;color:#e7aa33;font-weight:800;word-break:break-word}
.contact-email:hover{text-decoration:underline}
@media(max-width:900px){
  .quote-box{margin-top:12px}
}

/* v3.4.2 placement selector */
.garment-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.placement-section{border:1px solid var(--line);background:#10171b;border-radius:14px;padding:16px}
.placement-section:last-child{grid-column:1/-1}
.placement-heading{font-size:.92rem;font-weight:900;color:#fff;margin-bottom:11px}
.placement-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.placement-choice{display:flex;gap:8px;align-items:center;min-height:40px;border:1px solid #303b42;background:#151e23;border-radius:10px;padding:9px 10px;cursor:pointer;font-size:.84rem}
.placement-choice:hover{border-color:#e7aa33}
.placement-choice input{width:auto;margin:0;accent-color:#e7aa33}
.hat-note{margin-top:11px;color:#c2cbd0;font-size:.78rem;line-height:1.45}
.hat-note strong{color:#e7aa33}
@media(max-width:700px){.garment-options{grid-template-columns:1fr}.placement-section:last-child{grid-column:auto}.placement-grid{grid-template-columns:1fr}}


/* v3.4.3 dynamic quote form */
.item-type-grid{max-width:520px}
.placement-choice[hidden],.placement-section[hidden],#threeDOptions[hidden],#garmentTypeWrap[hidden],#apparelPlacementWrap[hidden]{display:none!important}
.three-d-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:700px){.three-d-grid{grid-template-columns:1fr}}

/* v3.4.4 DTF gang sheet call-to-action */
.gang-sheet-cta{
  padding:24px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--panel);
  margin:0 0 18px;
}
.gang-sheet-cta h3{margin-top:0}
.gang-sheet-cta p{margin-bottom:18px}

/* v3.4.6 wide header logo */
.site-header .header-logo-brand{
  display:flex;
  align-items:center;
}
.site-header .header-logo-brand img{
  width:205px;
  height:auto;
  max-height:64px;
  object-fit:contain;
}

/* v3.4.7 larger DTF quote-box copy */
.quote-box h3 {
    font-size: 1.45rem;
    margin-bottom: 14px;
}
.quote-box .note {
    font-size: 1.05rem;
    line-height: 1.65;
}
.quote-box .note strong {
    font-size: 1.08rem;
}

/* v3.4.8 stack DTF action boxes in the right column */
.dtf-action-column {
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-self: start;
}
.dtf-action-column .gang-sheet-cta,
.dtf-action-column .quote-box {
  margin: 0;
  width: 100%;
}

/* v3.5.0 quote service switcher */
.service-switch-wrap{margin-bottom:4px}
.service-switch{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:8px;
}
.service-choice{
  min-height:48px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#151e23;
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  padding:10px 14px;
  transition:border-color .15s ease, background .15s ease, transform .15s ease;
}
.service-choice:hover{border-color:#e7aa33}
.service-choice.active{
  border-color:#e7aa33;
  background:#252116;
  box-shadow:0 0 0 1px #e7aa33 inset;
}
.service-switch-note{
  margin:9px 0 0;
  color:var(--muted);
  font-size:.82rem;
}
@media(max-width:640px){
  .service-switch{grid-template-columns:1fr}
}

/* v3.5.1 service-specific visibility fix */
#dtfOptions[hidden],
#threeDOptions[hidden],
#garmentTypeWrap[hidden],
#apparelPlacementWrap[hidden] {
  display: none !important;
}

/* v3.5.2 gang sheet helper modal */
.gangsheet-modal[hidden]{display:none!important}
.gangsheet-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  padding:20px;
}
.gangsheet-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(3px);
}
.gangsheet-modal-card{
  position:relative;
  z-index:1;
  width:min(560px,100%);
  background:#121a1f;
  border:1px solid var(--line);
  border-radius:18px;
  padding:28px;
  box-shadow:0 24px 70px rgba(0,0,0,.5);
}
.gangsheet-modal-card h2{margin:8px 0 10px;font-size:1.75rem}
.gangsheet-modal-card p{color:var(--muted);line-height:1.6}
.gangsheet-modal-close{
  position:absolute;
  top:10px;
  right:12px;
  width:36px;
  height:36px;
  border:1px solid var(--line);
  border-radius:50%;
  background:#0d1418;
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.gangsheet-modal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.gangsheet-modal-actions .btn{margin:0}
body.modal-open{overflow:hidden}

.gallery-filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.gallery-filter{border:1px solid var(--line);background:#151e23;color:#fff;border-radius:999px;padding:10px 16px;font:inherit;font-weight:800;cursor:pointer}
.gallery-filter:hover{border-color:#e7aa33}.gallery-filter.active{background:#e7aa33;color:#17120a;border-color:#e7aa33}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portfolio-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#12191e}.portfolio-card[hidden]{display:none!important}.portfolio-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.portfolio-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px}.portfolio-caption span{font-weight:800}.portfolio-caption small{color:var(--muted);white-space:nowrap}
@media(max-width:900px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.portfolio-grid{grid-template-columns:1fr}.gallery-filter{flex:1 1 45%}}

/* v3.5.7 mobile/responsive cleanup */
@media (max-width: 820px){
  .container{width:min(100% - 28px,1180px)}
  .page-hero{padding:46px 0 30px}
  .page-hero h1{font-size:clamp(2rem,9vw,3.2rem)}
  .page-hero p{font-size:1rem}
  .section{padding:44px 0}

  .navbar{min-height:72px}
  .brand img{height:52px;width:auto}
  .brand-text{font-size:1rem}
  .brand-text small{font-size:.68rem}
  .menu-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px}

  .content-grid,.footer-grid{grid-template-columns:1fr!important}
  .quote-box{position:static!important}

  /* Quote form */
  .quote-form,.form-grid{grid-template-columns:1fr!important}
  .form-group,.form-group.full{grid-column:1/-1!important}
  .service-switch{grid-template-columns:1fr!important}
  .service-choice{min-height:52px;font-size:1rem}
  .placement-grid,.item-type-grid,.placement-options{grid-template-columns:1fr!important}
  .placement-choice,.item-type-choice{min-height:46px}
  input,select,textarea,button{font-size:16px}
  textarea{min-height:130px}
  .gangsheet-modal-card{padding:24px 18px}
  .gangsheet-modal-actions{flex-direction:column}
  .gangsheet-modal-actions .btn{width:100%;text-align:center}

  /* Service-page showcase cards */
  .embroidery-showcase,.showcase-grid,.service-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  /* Gallery */
  .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-filter-bar{gap:8px}
  .gallery-filter{flex:1 1 calc(50% - 8px);min-height:44px}

  /* Gang Sheet Builder: controls stay usable while editor can scroll horizontally */
  .gang-builder-layout,.builder-layout{grid-template-columns:1fr!important}
  .builder-sidebar,.gang-sidebar{position:static!important;width:auto!important}
  .editor-wrap,.sheet-stage-wrap,.canvas-wrap{
    overflow:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .builder-controls button,.builder-controls input,.builder-controls select{
    min-height:44px;
  }
}

@media (max-width: 560px){
  .container{width:min(100% - 20px,1180px)}
  .brand-text{display:none}
  .brand img{height:58px}
  .page-hero{padding:38px 0 26px}
  .section{padding:36px 0}

  .embroidery-showcase,.showcase-grid,.service-gallery,
  .portfolio-grid{grid-template-columns:1fr!important}

  .portfolio-caption{align-items:flex-start;flex-direction:column;gap:4px}
  .gallery-filter{flex:1 1 100%}

  .btn,.nav-cta{min-height:46px}
  .quote-form{padding:0}
  .placement-section{padding:12px}
  .service-switch-note{font-size:.9rem}
}

/* Touch devices: avoid hover-only interaction assumptions */
@media (hover:none){
  .gallery-filter:hover,.service-choice:hover{transform:none}
}

@media(max-width:820px){.mobile-editor-note{display:block!important;margin-top:16px}}

/* v3.5.8 Equipment page */
.equipment-list{display:grid;gap:32px}
.equipment-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:34px;align-items:center;background:#121a1f;border:1px solid var(--line);border-radius:20px;padding:22px;overflow:hidden}
.equipment-card-reverse .equipment-image{order:2}.equipment-card-reverse .equipment-copy{order:1}
.equipment-image{border-radius:14px;overflow:hidden;background:#0d1418;min-height:360px}
.equipment-image img{display:block;width:100%;height:100%;min-height:360px;max-height:560px;object-fit:cover}
.equipment-copy{padding:12px 10px}.equipment-copy h2{font-size:clamp(2rem,4vw,3rem);margin:8px 0 14px}.equipment-copy h3{margin-top:22px}.equipment-copy p,.equipment-copy li{line-height:1.65}.equipment-copy .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.equipment-cta-section{padding-top:0}.equipment-cta{max-width:none;text-align:center;padding:30px}.equipment-cta .note{max-width:720px;margin-left:auto;margin-right:auto}
@media(max-width:900px){.equipment-card{grid-template-columns:1fr}.equipment-card-reverse .equipment-image,.equipment-card-reverse .equipment-copy{order:initial}.equipment-image,.equipment-image img{min-height:280px}.equipment-image img{max-height:500px}}
@media(max-width:560px){.equipment-card{padding:12px;gap:18px}.equipment-copy{padding:8px}.equipment-image,.equipment-image img{min-height:220px}.equipment-copy .actions{flex-direction:column}.equipment-copy .actions .btn{width:100%;text-align:center}}


/* v3.5.9 About page */
.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:50px;align-items:center}.about-hero .actions,.about-work-grid .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.about-proof{background:#121a1f;border:1px solid var(--line);border-radius:20px;padding:30px;display:flex;flex-direction:column;gap:10px}.about-proof .proof-mark{color:var(--gold);font-weight:900;font-size:1rem;letter-spacing:.18em}.about-proof strong{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05}.about-proof span{line-height:1.6;color:var(--muted)}.about-story-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:52px;align-items:start}.about-values{display:grid;grid-template-columns:1fr 1fr;gap:14px}.about-values>div{background:#fff;border:1px solid #dfe3e6;border-radius:16px;padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.06)}.about-values strong,.about-values span{display:block}.about-values strong{font-size:1.1rem;margin-bottom:7px;color:#151b1f}.about-values span{color:#59636a;line-height:1.5}.section-heading{max-width:800px;margin-bottom:28px}.about-services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.about-services a{display:flex;flex-direction:column;gap:10px;padding:26px;border:1px solid var(--line);border-radius:18px;background:#121a1f;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.about-services a:hover{transform:translateY(-3px);border-color:var(--gold)}.about-services strong{font-size:1.35rem;color:#fff}.about-services span{color:var(--muted);line-height:1.6}.about-work-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:48px;align-items:center}.about-work-image{border-radius:20px;overflow:hidden;background:#111}.about-work-image img{display:block;width:100%;height:420px;object-fit:cover}.about-final{max-width:none;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px}.about-final h2{margin:6px 0 8px}.about-final p{margin:0}.about-final .btn{flex:0 0 auto}@media(max-width:900px){.about-hero-grid,.about-story-grid,.about-work-grid{grid-template-columns:1fr}.about-services{grid-template-columns:1fr}.about-work-image img{height:auto;max-height:500px}.about-final{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.about-values{grid-template-columns:1fr}.about-hero .actions,.about-work-grid .actions{flex-direction:column}.about-hero .actions .btn,.about-work-grid .actions .btn{width:100%;text-align:center}.about-proof{padding:22px}}

/* About page polish - v3.6.0 */
.about-hero h1{font-size:clamp(2.8rem,5.35vw,4.55rem);max-width:760px}
.about-photo-strip{padding:0 0 6px;background:#0d1114}
.about-photo-strip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;transform:translateY(28px);position:relative;z-index:2}
.about-photo-strip-grid>div{position:relative;height:190px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#121a1f;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.about-photo-strip-grid img{width:100%;height:100%;display:block;object-fit:cover}
.about-photo-strip-grid>div:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(8,12,15,.88))}
.about-photo-strip-grid span{position:absolute;left:18px;bottom:14px;z-index:2;color:#fff;font-weight:850;letter-spacing:.02em}
.about-story-grid .prose p{color:#c7d0d6!important}
.section.light:has(.about-story-grid){background:#12181c;color:#f5f7f8;padding-top:112px}
.about-values>div{background:#151d22;border:1px solid #2c3941;box-shadow:none;position:relative;overflow:hidden}
.about-values>div:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.about-values strong{color:#fff}.about-values span{color:#b9c4ca}
@media(max-width:900px){.about-photo-strip-grid{grid-template-columns:1fr 1fr}.about-photo-strip-grid>div:last-child{grid-column:1/-1}.about-photo-strip-grid>div{height:210px}}
@media(max-width:560px){.about-photo-strip-grid{grid-template-columns:1fr;transform:translateY(18px)}.about-photo-strip-grid>div:last-child{grid-column:auto}.about-photo-strip-grid>div{height:190px}.section.light:has(.about-story-grid){padding-top:88px}}


/* v3.6.2 Brooksville weather + map */
.local-brooksville-section{padding-top:32px}
.local-intro{max-width:760px;margin-bottom:22px}
.local-intro h2{margin:.35rem 0 .6rem}
.local-info-grid{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:18px;
  align-items:stretch;
}
.brooksville-weather,.brooksville-map-card{
  border:1px solid var(--line);
  background:#11191e;
  border-radius:18px;
  padding:20px;
  min-width:0;
}
.local-card-heading{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:16px;
}
.local-card-heading small{
  color:#e7aa33;
  font-weight:900;
  letter-spacing:.08em;
}
.local-card-heading h3{margin:2px 0 0}
.local-card-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid rgba(231,170,51,.45);
  color:#e7aa33;
  background:rgba(231,170,51,.07);
  font-size:1.2rem;
  flex:0 0 auto;
}
.weather-main{
  display:flex;
  align-items:center;
  gap:20px;
  min-height:120px;
}
.weather-temp{
  font-size:clamp(3rem,7vw,5rem);
  line-height:1;
  font-weight:900;
  letter-spacing:-.05em;
  color:#fff;
}
.weather-condition{
  font-size:1.1rem;
  font-weight:900;
  color:#fff;
}
.weather-details{
  margin-top:6px;
  color:var(--muted);
  line-height:1.5;
}
.weather-updated,.map-note{
  color:var(--muted);
  font-size:.78rem;
  margin-top:12px;
}
.brooksville-map{
  overflow:hidden;
  border-radius:13px;
  border:1px solid var(--line);
  background:#0b1013;
}
.brooksville-map iframe{
  display:block;
  width:100%;
  height:280px;
  border:0;
}
@media(max-width:800px){
  .local-info-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .weather-main{align-items:flex-start;flex-direction:column;gap:12px}
  .brooksville-map iframe{height:240px}
}


/* v3.6.3 Etsy review ticker */
.review-ticker-section{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#0d1418;
  padding:14px 0 16px;
  overflow:hidden;
}
.review-ticker-heading{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:0 18px 10px;
  font-size:.82rem;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.review-ticker-heading span,.review-stars{color:#e7aa33;letter-spacing:.08em}
.review-ticker-window{overflow:hidden}
.review-ticker-track{
  display:flex;
  width:max-content;
  animation:mlf-review-scroll 80s linear infinite;
}
.review-ticker-window:hover .review-ticker-track,
.review-ticker-window:focus-within .review-ticker-track{animation-play-state:paused}
.review-ticker-set{display:flex;gap:14px;padding-right:14px}
.review-ticker-card{
  width:clamp(280px,32vw,430px);
  flex:0 0 auto;
  padding:15px 18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#121c21;
}
.review-ticker-card blockquote{
  margin:7px 0 8px;
  color:#f3f5f6;
  font-size:.93rem;
  line-height:1.45;
}
.review-by{color:var(--muted);font-size:.78rem}
@keyframes mlf-review-scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .review-ticker-track{animation:none}
  .review-ticker-window{overflow-x:auto}
}
@media(max-width:600px){
  .review-ticker-window{overflow-x:auto;scroll-snap-type:x proximity;padding:0 12px}
  .review-ticker-track{animation:none}
  .review-ticker-card{width:82vw;scroll-snap-align:start}
}

/* v3.6.4 service badges */
.service-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;color:#f0ae25;border:1px solid rgba(240,174,37,.48);background:radial-gradient(circle at 35% 25%,rgba(240,174,37,.16),transparent 55%),#11191e;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 8px 24px rgba(0,0,0,.18);transition:.22s ease}
.service-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.service-card:hover .service-icon,.card:hover .service-icon{transform:translateY(-3px);border-color:#f0ae25;box-shadow:0 10px 28px rgba(0,0,0,.28),0 0 18px rgba(240,174,37,.12)}
@media(max-width:600px){.service-icon{width:58px;height:58px;border-radius:16px}.service-icon svg{width:32px;height:32px}}

/* v3.6.5 fix: keep Etsy social icon distinct from service icon */
.etsy-letter{font-weight:800;font-size:1rem;line-height:1}

/* v3.6.6 quote intake refinements */
.contact-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.quote-contact-list{display:flex;flex-direction:column;gap:6px}
.contact-phone{color:#e7aa33;font-weight:800;text-decoration:none}
.contact-phone:hover{text-decoration:underline}
#formStatus strong{color:#fff;font-size:1rem}
@media(max-width:620px){.contact-method-grid{grid-template-columns:1fr}}


/* v3.7.0 Merch storefront preview */
.merch-hero p{max-width:760px}
.merch-status-banner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#11191e;
  margin-bottom:24px;
}
.merch-status-banner h2{margin:8px 0 6px}
.merch-status-banner p{margin:0;color:var(--muted)}
.merch-status-pill{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(231,170,51,.5);
  background:rgba(231,170,51,.08);
  color:#e7aa33;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.08em;
}
.merch-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.merch-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#11191e;
}
.merch-placeholder{
  aspect-ratio:4/3;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 30% 20%,rgba(231,170,51,.15),transparent 45%),
    linear-gradient(145deg,#172229,#0f1519);
  border-bottom:1px solid var(--line);
}
.merch-placeholder span{
  width:92px;
  height:92px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(231,170,51,.5);
  color:#e7aa33;
  font-weight:900;
  letter-spacing:.08em;
}
.merch-card-body{padding:18px}
.merch-card-body h3{margin:0 0 8px}
.merch-card-body p{color:var(--muted);min-height:48px}
.merch-meta{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:.82rem;
  color:var(--muted);
  margin:12px 0 16px;
}
.merch-card button[disabled]{
  opacity:.6;
  cursor:not-allowed;
}
.merch-bottom-cta{padding-top:0}
.merch-quote-box{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.merch-quote-box h2{margin:.35rem 0 .5rem}
.merch-quote-box p{margin:0;color:var(--muted);max-width:720px}
@media(max-width:900px){
  .merch-grid{grid-template-columns:1fr 1fr}
  .merch-status-banner,.merch-quote-box{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .merch-grid{grid-template-columns:1fr}
}


/* v3.7.1 header spacing / quote button fix */
.nav-links{
  gap:14px;
}

.nav-links > a:not(.nav-cta){
  white-space:nowrap;
}

.nav-cta{
  white-space:nowrap !important;
  flex:0 0 auto;
  padding-left:16px;
  padding-right:16px;
}

.header-social{
  flex:0 0 auto;
}

@media (max-width:1180px) and (min-width:821px){
  .nav-links{
    gap:10px;
    font-size:.94rem;
  }

  .nav-cta{
    padding-left:13px;
    padding-right:13px;
  }

  .site-header .header-logo-brand img{
    width:190px;
  }
}


/* v3.7.2 gallery polish + lightbox */
.portfolio-card{
  cursor:zoom-in;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.portfolio-card:focus-visible{
  outline:2px solid #e7aa33;
  outline-offset:3px;
}
@media (hover:hover) and (pointer:fine){
  .portfolio-card:hover{
    transform:translateY(-4px);
    border-color:rgba(231,170,51,.55);
    box-shadow:0 14px 34px rgba(0,0,0,.24);
  }
  .portfolio-card:hover img{transform:scale(1.025)}
}
.portfolio-card img{transition:transform .25s ease}

.gallery-lightbox[hidden]{display:none!important}
.gallery-lightbox{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:24px;
}
.gallery-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,8,10,.9);
  backdrop-filter:blur(5px);
}
.gallery-lightbox-dialog{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  width:min(1120px,100%);
  max-height:92vh;
}
.gallery-lightbox-dialog figure{
  margin:0;
  min-width:0;
  max-height:92vh;
  display:flex;
  flex-direction:column;
}
.gallery-lightbox-dialog figure img{
  display:block;
  max-width:100%;
  max-height:78vh;
  margin:auto;
  object-fit:contain;
  border-radius:16px;
  box-shadow:0 24px 70px rgba(0,0,0,.45);
}
.gallery-lightbox-dialog figcaption{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  margin-top:12px;
  color:#fff;
}
.gallery-lightbox-dialog figcaption span{color:#b6c0c6;font-size:.88rem}
.gallery-lightbox-close,
.gallery-lightbox-nav{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(13,20,24,.86);
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(4px);
}
.gallery-lightbox-close{
  position:absolute;
  right:54px;
  top:-4px;
  z-index:2;
  width:44px;
  height:44px;
  border-radius:50%;
  font-size:1.8rem;
  line-height:1;
}
.gallery-lightbox-nav{
  width:46px;
  height:64px;
  border-radius:12px;
  font-size:2rem;
}
.gallery-lightbox-nav:hover,.gallery-lightbox-close:hover{border-color:#e7aa33;color:#e7aa33}
.gallery-lightbox-open{overflow:hidden}

@media(max-width:700px){
  .gallery-lightbox{padding:12px}
  .gallery-lightbox-dialog{
    grid-template-columns:40px minmax(0,1fr) 40px;
  }
  .gallery-lightbox-nav{width:36px;height:52px}
  .gallery-lightbox-close{right:38px;top:4px}
  .gallery-lightbox-dialog figcaption{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
    padding:0 4px;
  }
}

.local-footer-note{margin-top:18px;color:var(--muted);font-size:.82rem}

.merch-product-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-bottom:1px solid var(--line)}
.merch-price{color:#e7aa33;font-weight:900;font-size:1.15rem;margin-top:-2px}

.merch-status{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:10px;font-weight:900;margin-top:8px}
.merch-status.available,.merch-status.made-to-order{border-color:#c98d18;color:#f1b52f}
.merch-status.sold-out{opacity:.65}

.mlf-preview-banner{
  position:sticky;
  top:0;
  z-index:20000;
  display:flex;
  justify-content:center;
  gap:10px;
  align-items:center;
  padding:10px 14px;
  background:#e7aa33;
  color:#111;
  font-size:.86rem;
  box-shadow:0 2px 12px rgba(0,0,0,.25);
}
.mlf-preview-banner strong{font-weight:900}
.mlf-preview-banner span{opacity:.82}
@media(max-width:600px){
  .mlf-preview-banner{align-items:flex-start;flex-direction:column;gap:2px}
}

.mlf-cart-button{border:1px solid #334149;background:#11191e;color:#f5f7f8;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}
.mlf-cart-button span{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:5px;border-radius:99px;background:#e7aa33;color:#111;font-size:.72rem}
.mlf-cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:30000;display:none;justify-content:flex-end}
.mlf-cart-overlay.open{display:flex}.mlf-cart-drawer{width:min(440px,100%);height:100%;background:#10181d;border-left:1px solid #2b3940;padding:20px;overflow:auto}
.mlf-cart-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2b3940;padding-bottom:14px}.mlf-cart-head h2{margin:0}
.mlf-cart-head button{font-size:2rem;background:none;border:0;color:#fff;cursor:pointer}.mlf-cart-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid #2b3940}
.mlf-cart-item img{width:78px;height:78px;object-fit:cover;border-radius:10px}.mlf-cart-copy{flex:1;display:grid;gap:5px}.mlf-cart-copy small{color:#9fb0ba}
.mlf-qty{display:flex;align-items:center;gap:8px;margin-top:6px}.mlf-qty button{border:1px solid #334149;background:#172127;color:#fff;border-radius:7px;padding:4px 9px;cursor:pointer}
.mlf-qty .mlf-remove{margin-left:auto;color:#ffb1b1}.mlf-cart-foot{padding-top:18px}.mlf-cart-total{display:flex;justify-content:space-between;font-size:1.15rem;margin-bottom:12px}
.mlf-cart-note{color:#9fb0ba;font-size:.86rem}.mlf-cart-empty{padding:40px 0;text-align:center;color:#9fb0ba}

.mlf-buy-box{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #2b3940}
.mlf-option{display:grid;gap:5px}.mlf-option span,.mlf-product-qty>span{font-size:.78rem;font-weight:800;color:#b8c5cc}
.mlf-option select{width:100%;background:#10181d;color:#f5f7f8;border:1px solid #334149;border-radius:9px;padding:9px 10px}
.mlf-product-qty{display:flex;justify-content:space-between;align-items:center}.mlf-product-qty>div{display:flex;align-items:center}
.mlf-product-qty button{width:34px;height:34px;background:#172127;color:#fff;border:1px solid #334149;cursor:pointer}
.mlf-product-qty button:first-child{border-radius:8px 0 0 8px}.mlf-product-qty button:last-child{border-radius:0 8px 8px 0}
.mlf-product-qty input{width:46px;height:34px;text-align:center;background:#10181d;color:#fff;border:1px solid #334149;border-left:0;border-right:0}

.checkout-page{min-height:100vh;background:#0c1114;color:#f5f7f8;padding:40px 20px}.checkout-shell{max-width:1100px;margin:auto}
.checkout-back{color:#b8c5cc;text-decoration:none}.checkout-page h1{font-size:clamp(2.6rem,7vw,5rem);margin:.15em 0}.checkout-intro{color:#b8c5cc}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.checkout-card{background:#11191e;border:1px solid #2b3940;border-radius:18px;padding:24px}
.checkout-card form{display:grid;gap:14px}.checkout-card label{display:grid;gap:6px;font-weight:800;font-size:.85rem}
.checkout-card input,.checkout-card select,.checkout-card textarea{background:#0c1317;color:#fff;border:1px solid #334149;border-radius:9px;padding:11px}
.checkout-card textarea{min-height:110px}.checkout-item{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #2b3940}
.checkout-item small{display:block;color:#9fb0ba;margin-top:4px}.checkout-total{display:flex;justify-content:space-between;font-size:1.2rem;padding-top:18px}
.checkout-note,.checkout-status{color:#9fb0ba;font-size:.88rem}.checkout-success{grid-column:1/-1;text-align:center}
@media(max-width:760px){.checkout-grid{grid-template-columns:1fr}}

.payment-result-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#0c1114}
.payment-result-card{width:min(720px,100%);background:#11191e;border:1px solid #2b3940;border-radius:20px;padding:36px;color:#f5f7f8;text-align:center}
.payment-result-card h1{font-size:clamp(2.4rem,7vw,4.5rem);margin:.2em 0}.payment-result-card p{color:#b8c5cc;font-size:1.05rem;line-height:1.7}

.checkout-cancelled{margin:18px 0;padding:14px 16px;border:1px solid rgba(239,173,36,.45);background:rgba(239,173,36,.08);border-radius:12px;color:#f0c66e}

.shipping-fields{display:grid;gap:12px;padding:16px;border:1px solid #2b3940;border-radius:12px;background:#0c1317}.shipping-fields h3{margin:0 0 2px}.shipping-row{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:10px}@media(max-width:680px){.shipping-row{grid-template-columns:1fr}}

.active-nav{
  color:#f1b52f !important;
  border-color:#c98d18 !important;
  background:rgba(231,170,51,.08) !important;
}
.checkout-money{display:grid;gap:10px;padding-top:18px}
.checkout-money>div{display:flex;justify-content:space-between;gap:18px}
.checkout-grand-total{margin-top:2px;padding-top:12px;border-top:1px solid #2b3940;font-size:1.2rem;font-weight:800}
.shipping-fields[hidden]{display:none !important}

.checkout-actions{display:grid;gap:10px;margin-top:14px}
.checkout-alt-note{font-size:.86rem;opacity:.8;margin:.55rem 0 0}
.admin-manual-payment{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.admin-manual-payment select{min-width:140px}

.admin-gang-files{margin:12px 0;padding:12px;border:1px solid rgba(127,127,127,.25);border-radius:10px}
.admin-gang-files h4{margin:0 0 10px}
.admin-gang-file{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 0}

.checkout-complete-card{
  padding:18px;
  border:1px solid var(--border, #2a353b);
  border-radius:14px;
  background:rgba(255,255,255,.03);
  font-size:1rem;
  line-height:1.5;
}
.checkout-redirect-note{
  display:inline-block;
  margin-top:6px;
  opacity:.78;
  font-size:.9rem;
}

.alternate-payment-panel{
  margin-top:12px;
  padding:14px;
  border:1px solid var(--border, #2a353b);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
.alternate-payment-panel select{
  width:100%;
  margin-top:8px;
}
.checkout-alt-detail{
  margin:.65rem 0 0;
  font-size:.82rem;
  opacity:.72;
  line-height:1.45;
}


/* Merch variants / size pricing */
.admin-variant-box{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#0c1317}
.admin-variant-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.admin-variant-list{display:grid;gap:10px}
.admin-variant-row{display:grid;grid-template-columns:64px minmax(120px,.45fr) minmax(220px,1fr) auto;gap:10px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0a1115}
.admin-thumb.small{width:64px;height:54px}
.admin-field.grow{min-width:0}
.admin-upload-line.stacked{align-self:end}
.admin-size-price-list{display:grid;gap:8px}
.admin-size-price-row{display:grid;grid-template-columns:minmax(120px,.5fr) minmax(120px,.5fr) auto;gap:10px;align-items:end}
@media(max-width:850px){.admin-variant-row,.admin-size-price-row{grid-template-columns:1fr}.admin-variant-head{align-items:flex-start;flex-direction:column}.admin-thumb.small{width:92px;height:72px}}

.merch-image-stage{width:100%;overflow:hidden;background:#0b1115}
.merch-image-stage .merch-product-image{display:block;width:100%;height:auto}
.merch-thumbs{display:flex;gap:7px;padding:9px 10px 0;overflow-x:auto}
.merch-thumb{width:50px;height:50px;padding:2px;border:1px solid var(--line);border-radius:8px;background:#0c1317;cursor:pointer;flex:0 0 auto}
.merch-thumb.active{border-color:#e7aa33;box-shadow:0 0 0 1px #e7aa33 inset}
.merch-thumb img{width:100%;height:100%;object-fit:cover;border-radius:5px}
.mlf-selected-price{display:flex;justify-content:space-between;align-items:center;margin:10px 0 4px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#0c1317}
.mlf-selected-price span{font-size:.82rem;color:var(--muted);font-weight:800}
.mlf-selected-price strong{color:#e7aa33}

/* v4.4.20 — equal-height merch cards */
.merch-grid{
  align-items:stretch;
}
.merch-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.merch-card-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
}
.merch-card-body > .merch-meta{
  margin-top:auto;
}
.merch-card-body > .product-options,
.merch-card-body > .merch-options,
.merch-card-body > .merch-variant-controls{
  margin-top:auto;
}
.merch-card .merch-cart-controls,
.merch-card .cart-controls,
.merch-card .merch-buy,
.merch-card .add-cart-wrap{
  margin-top:auto;
}

/* v4.4.21 merch multi-image upload */
.admin-variant-head{
  gap:12px;
  flex-wrap:wrap;
}
.admin-variant-head .admin-actions.compact{
  margin-left:auto;
}

/* v4.4.22 — merch hover zoom */
.merch-image-stage{
  position:relative;
  overflow:hidden;
  cursor:zoom-in;
}
.merch-image-stage .merch-product-image{
  transform-origin:50% 50%;
  transition:transform .18s ease;
  will-change:transform,transform-origin;
}
@media (hover:hover) and (pointer:fine){
  .merch-image-stage:hover .merch-product-image{
    transform:scale(1.85);
  }
}
@media (hover:none), (pointer:coarse){
  .merch-image-stage{
    cursor:default;
  }
}

/* v4.4.23 — clearer merch upload feedback */
.admin-btn.is-uploading{
  opacity:.75;
  cursor:wait;
}
.admin-btn.is-uploaded{
  border-color:#52c77a !important;
  color:#8ee6a9 !important;
}
.admin-status-success{
  color:#8ee6a9 !important;
  font-weight:800;
}

/* v4.4.24 — inline merch upload status */
.admin-upload-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.admin-upload-row-status{
  margin-top:6px;
  min-height:18px;
  font-size:.78rem;
  font-weight:800;
  color:var(--muted);
}
.admin-upload-row-status.uploading{color:#e7aa33}
.admin-upload-row-status.success{color:#8ee6a9}
.admin-upload-row-status.error{color:#ff8f8f}

/* v4.4.26 structured merch sizes */
.admin-size-checks{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.admin-size-check{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:rgba(255,255,255,.025);font-weight:700}
.admin-size-check input{width:auto}

/* v4.4.28 — floating Merch save button */
.admin-floating-save[hidden]{display:none!important}
.admin-floating-save{
  position:fixed;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  z-index:999;
  min-width:130px;
  padding:14px 18px;
  border:1px solid rgba(231,170,51,.7);
  border-radius:12px;
  background:#e7aa33;
  color:#0b1115;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}
.admin-floating-save:hover{filter:brightness(1.05)}
.admin-floating-save:disabled{opacity:.72;cursor:wait}
@media(max-width:900px){
  .admin-floating-save{
    right:12px;
    bottom:12px;
    top:auto;
    transform:none;
    min-width:auto;
  }
}

/* v4.4.29 — aligned merch card content */
.merch-card-body h3{
  min-height:4.8em;
}
.merch-card-body > p{
  height:12.5em;
  min-height:12.5em;
  max-height:12.5em;
  overflow-y:auto;
  padding-right:8px;
  margin-bottom:10px;
  scrollbar-width:thin;
}
.merch-card-body > p::-webkit-scrollbar{
  width:7px;
}
.merch-card-body > p::-webkit-scrollbar-thumb{
  background:#3a474e;
  border-radius:999px;
}
.merch-card-body > p::-webkit-scrollbar-track{
  background:transparent;
}
.merch-meta{
  min-height:3.6em;
}
.merch-status{
  margin-top:auto;
}

/* Bring the floating Admin save button closer to the editor instead of the viewport edge. */
@media(min-width:1200px){
  .admin-floating-save{
    right:8vw;
  }
}

@media(max-width:620px){
  .merch-card-body h3{
    min-height:0;
  }
  .merch-card-body > p{
    height:auto;
    min-height:0;
    max-height:none;
    overflow:visible;
    padding-right:0;
  }
  .merch-meta{
    min-height:0;
  }
}

/* v4.4.30 — merch product image lightbox */
.merch-image-stage{
  cursor:zoom-in;
}
.merch-image-stage:focus-visible{
  outline:2px solid #e7aa33;
  outline-offset:-2px;
}
.merch-lightbox[hidden]{display:none!important}
.merch-lightbox{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:24px;
}
.merch-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,8,10,.92);
  backdrop-filter:blur(5px);
}
.merch-lightbox-dialog{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:56px minmax(0,1fr) 56px;
  align-items:center;
  width:min(1180px,100%);
  max-height:92vh;
}
.merch-lightbox-dialog figure{
  margin:0;
  min-width:0;
  max-height:92vh;
  display:flex;
  flex-direction:column;
}
.merch-lightbox-dialog figure img{
  display:block;
  max-width:100%;
  max-height:82vh;
  margin:auto;
  object-fit:contain;
  border-radius:14px;
  background:#0b1115;
  box-shadow:0 24px 70px rgba(0,0,0,.45);
}
.merch-lightbox-dialog figcaption{
  margin-top:10px;
  text-align:center;
  color:#f5f7f8;
  font-weight:800;
}
.merch-lightbox-close,
.merch-lightbox-nav{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(13,20,24,.9);
  color:#fff;
  cursor:pointer;
}
.merch-lightbox-close{
  position:absolute;
  right:54px;
  top:-4px;
  z-index:2;
  width:44px;
  height:44px;
  border-radius:50%;
  font-size:1.8rem;
  line-height:1;
}
.merch-lightbox-nav{
  width:46px;
  height:64px;
  border-radius:12px;
  font-size:2rem;
}
.merch-lightbox-nav:hover,
.merch-lightbox-close:hover{
  border-color:#e7aa33;
  color:#e7aa33;
}
.merch-lightbox-open{overflow:hidden}

@media(max-width:700px){
  .merch-lightbox{padding:12px}
  .merch-lightbox-dialog{grid-template-columns:40px minmax(0,1fr) 40px}
  .merch-lightbox-nav{width:36px;height:52px}
  .merch-lightbox-close{right:38px;top:4px}
  .merch-lightbox-dialog figure img{max-height:76vh}
}

body.mlf-theme-active{position:relative;isolation:isolate;background:#0c1114}
body.mlf-theme-active::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background-image:var(--mlf-theme-image);background-size:cover;background-position:var(--mlf-theme-position,center center);background-repeat:no-repeat;opacity:var(--mlf-theme-opacity,.18)}
body.mlf-theme-active::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:rgba(8,13,16,var(--mlf-theme-overlay,.72))}
.theme-admin-box input[type="range"]{width:100%;accent-color:#e7aa33}

/* v4.4.32 — continuous seasonal background blend
   Keep the seasonal artwork visually continuous behind the site instead of
   exposing it only through gaps between opaque sections. */
body.mlf-theme-active{
  background:#0c1114;
}
body.mlf-theme-active::before{
  opacity:var(--mlf-theme-opacity,.18);
}
body.mlf-theme-active::after{
  /* The global overlay is intentionally lighter now; each major section
     supplies its own translucent dark surface so the image remains visible
     continuously while text stays readable. */
  background:rgba(8,13,16,calc(var(--mlf-theme-overlay,.72) * .45));
}

/* Major page surfaces become translucent only while a theme is enabled. */
body.mlf-theme-active main > section,
body.mlf-theme-active .hero,
body.mlf-theme-active .page-hero,
body.mlf-theme-active .portfolio-strip,
body.mlf-theme-active .review-ticker-section,
body.mlf-theme-active .local-brooksville-section,
body.mlf-theme-active .merch-bottom-cta{
  background-color:rgba(13,17,20,.82) !important;
  background-image:none !important;
}

/* Preserve light sections as light, but let just a whisper of the theme through. */
body.mlf-theme-active main > section.light,
body.mlf-theme-active .section.light{
  background-color:rgba(244,239,231,.94) !important;
}

/* Header/footer stay readable but participate in the same blended theme. */
body.mlf-theme-active .site-header{
  background:rgba(13,17,20,.88) !important;
}
body.mlf-theme-active footer{
  background:rgba(11,15,18,.88) !important;
}

/* Accent bands remain branded instead of becoming muddy. */
body.mlf-theme-active .band{
  background:rgba(231,170,51,.94) !important;
}

/* Keep product/service/cards opaque enough for easy reading. */
body.mlf-theme-active .card,
body.mlf-theme-active .feature,
body.mlf-theme-active .quote-box,
body.mlf-theme-active .merch-card,
body.mlf-theme-active .review-ticker-card,
body.mlf-theme-active .brooksville-weather,
body.mlf-theme-active .brooksville-map-card{
  backdrop-filter:blur(1px);
}

/* v4.4.33 — themed mode uses dark translucent sections everywhere */
body.mlf-theme-active main > section,
body.mlf-theme-active .section,
body.mlf-theme-active .section.light,
body.mlf-theme-active .hero,
body.mlf-theme-active .page-hero,
body.mlf-theme-active .portfolio-strip,
body.mlf-theme-active .review-ticker-section,
body.mlf-theme-active .local-brooksville-section,
body.mlf-theme-active .merch-bottom-cta{
  background-color:rgba(13,17,20,.82) !important;
  background-image:none !important;
  color:var(--text) !important;
}

body.mlf-theme-active .section.light .section-head p,
body.mlf-theme-active .section.light .prose p,
body.mlf-theme-active .section.light .prose li,
body.mlf-theme-active .section.light p,
body.mlf-theme-active .section.light li{
  color:var(--muted) !important;
}

body.mlf-theme-active .section.light .card,
body.mlf-theme-active .section.light .feature,
body.mlf-theme-active .section.light .quote-box{
  background:rgba(21,29,35,.94) !important;
  border-color:var(--line) !important;
  color:var(--text) !important;
}

body.mlf-theme-active .section.light .card p,
body.mlf-theme-active .section.light .feature p{
  color:var(--muted) !important;
}

body.mlf-theme-active .section.light .kicker{
  color:#f3c56b !important;
}

body.mlf-theme-active .section.light .card a,
body.mlf-theme-active .section.light a{
  color:#e7aa33;
}

/* v4.4.34 — seasonal CTA band blend */
body.mlf-theme-active .band{
  background:rgba(13,17,20,.86) !important;
  color:var(--text) !important;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
}

body.mlf-theme-active .band p{
  color:var(--muted) !important;
}

body.mlf-theme-active .band .btn,
body.mlf-theme-active .band a.btn{
  background:var(--accent) !important;
  border-color:var(--accent) !important;
  color:#0b1115 !important;
}

body.mlf-theme-active .band .btn.ghost,
body.mlf-theme-active .band a.btn.ghost{
  background:rgba(255,255,255,.05) !important;
  border-color:var(--line) !important;
  color:var(--text) !important;
}

/* v4.4.35 — match storefront seasonal brightness to Admin preview.
   v4.4.32 added an extra page-wide dimmer; Admin preview did not have it.
   Remove that extra dimmer so the saved Image Visibility/Dark Overlay
   settings render the same on the public site as they do in Admin. */
body.mlf-theme-active::after{
  background:rgba(8,13,16,var(--mlf-theme-overlay,.72)) !important;
}

/* Let the theme show through major storefront sections at the same perceived
   strength as the Admin preview while retaining enough contrast for content. */
body.mlf-theme-active main > section,
body.mlf-theme-active .section,
body.mlf-theme-active .section.light,
body.mlf-theme-active .hero,
body.mlf-theme-active .page-hero,
body.mlf-theme-active .portfolio-strip,
body.mlf-theme-active .review-ticker-section,
body.mlf-theme-active .local-brooksville-section,
body.mlf-theme-active .merch-bottom-cta{
  background-color:rgba(13,17,20,.62) !important;
}
body.mlf-theme-active .site-header,
body.mlf-theme-active footer,
body.mlf-theme-active .band{
  background-color:rgba(13,17,20,.70) !important;
}

/* v4.4.48 — keep wide accent sections inside the site's visual frame */
.review-ticker-section,
.band{
  width:min(1440px, calc(100% - 32px));
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

/* Give the ticker and CTA the same finished "panel" edge as the rest of the site. */
.review-ticker-section{
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
}

.band{
  border-radius:18px;
  overflow:hidden;
}

/* Seasonal mode: retain the constrained frame while allowing the theme to show around it. */
body.mlf-theme-active .review-ticker-section,
body.mlf-theme-active .band{
  width:min(1440px, calc(100% - 32px));
  margin-left:auto;
  margin-right:auto;
}

/* On smaller screens use nearly the full viewport. */
@media(max-width:760px){
  .review-ticker-section,
  .band,
  body.mlf-theme-active .review-ticker-section,
  body.mlf-theme-active .band{
    width:calc(100% - 16px);
    border-radius:14px;
  }
}

/* v4.4.49 — transparent homepage logo badge when seasonal theme is enabled */
body.mlf-theme-active .hero-card{
  background:transparent !important;
  border-color:rgba(231,170,51,.22) !important;
  box-shadow:none !important;
}


/* v4.4.51 — homepage hero logo is permanently transparent */
.hero-card{
  background:transparent !important;
}
.hero-card .hero-logo{
  background:transparent !important;
}

/* v4.4.53 — homepage hero badge/card permanently transparent */
.hero .hero-card{
  background:transparent !important;
  box-shadow:none !important;
}

/* Keep only a subtle frame around the logo, no filled badge background. */
.hero .hero-card{
  border-color:rgba(231,170,51,.18) !important;
}

/* v4.4.54 — true floating homepage logo */
.hero .hero-card,
body.mlf-theme-active .hero .hero-card{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

/* v4.4.55 — expanded merch product-detail experience */
.merch-detail-trigger{cursor:pointer}
.merch-view-details{
  width:calc(100% - 32px); margin:0 16px 10px; padding:11px 14px;
  border:1px solid rgba(231,170,51,.55); border-radius:10px;
  background:transparent; color:var(--gold,#f0ad2c); font-weight:800; cursor:pointer;
}
.merch-view-details:hover{background:rgba(231,170,51,.08)}
body.merch-modal-open{overflow:hidden}
.merch-detail-modal{position:fixed;inset:0;z-index:5000;display:none}
.merch-detail-modal.open{display:block}
.merch-detail-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(7px)}
.merch-detail-panel{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(1180px,calc(100% - 40px));max-height:calc(100vh - 40px);overflow:auto;
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:30px;
  padding:28px;border:1px solid rgba(231,170,51,.28);border-radius:20px;
  background:#10191e;box-shadow:0 28px 90px rgba(0,0,0,.55)
}
.merch-detail-close{
  position:absolute;right:14px;top:12px;width:42px;height:42px;border-radius:50%;
  border:1px solid #34434b;background:#111b20;color:#fff;font-size:28px;cursor:pointer;z-index:2
}
.merch-detail-main{
  display:block;width:100%;padding:0;border:1px solid #2a3940;border-radius:16px;
  overflow:hidden;background:#0b1216;cursor:zoom-in
}
.merch-detail-main img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain}
.merch-detail-thumbs{display:flex;gap:10px;overflow-x:auto;padding:12px 2px 4px}
.merch-detail-thumb{
  flex:0 0 76px;width:76px;height:76px;padding:3px;border:2px solid #34434b;border-radius:10px;
  background:#0b1216;cursor:pointer
}
.merch-detail-thumb.active{border-color:#f0ad2c}
.merch-detail-thumb img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.merch-detail-info{padding:14px 8px 4px}
.merch-detail-info h2{font-size:clamp(28px,3vw,44px);line-height:1.05;margin:12px 0 10px}
.merch-detail-price{font-size:30px;font-weight:900;color:#f0ad2c;margin-bottom:6px}
.merch-detail-availability{font-weight:800;color:#d9e1e5;margin-bottom:18px}
.merch-detail-description{color:#bdcbd2;line-height:1.65;max-height:210px;overflow:auto;padding-right:8px;margin-bottom:22px}
.merch-detail-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.merch-detail-options label,.merch-detail-buyrow label{font-weight:800;font-size:13px}
.merch-detail-options select{
  width:100%;margin-top:7px;padding:13px;border-radius:10px;border:1px solid #34434b;
  background:#0d171c;color:#fff;font:inherit
}
.merch-detail-pricebox{
  display:flex;justify-content:space-between;align-items:center;padding:15px 16px;margin:15px 0;
  border:1px solid #2c3a41;border-radius:12px;background:#0d171c
}
.merch-detail-pricebox strong{color:#f0ad2c;font-size:22px}
.merch-detail-buyrow{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:end}
.merch-detail-qty{display:grid;grid-template-columns:38px 1fr 38px;margin-top:7px}
.merch-detail-qty button,.merch-detail-qty input{
  height:46px;border:1px solid #34434b;background:#0d171c;color:#fff;text-align:center;font-weight:800
}
.merch-detail-qty button:first-child{border-radius:10px 0 0 10px}
.merch-detail-qty button:last-child{border-radius:0 10px 10px 0}
.merch-detail-add{height:46px;width:100%;font-weight:900}
.merch-detail-note{font-size:12px;color:#82939c;margin-top:12px}
@media(max-width:820px){
  .merch-detail-panel{grid-template-columns:1fr;gap:14px;padding:18px;width:calc(100% - 18px);max-height:calc(100vh - 18px)}
  .merch-detail-info{padding:4px}
  .merch-detail-options{grid-template-columns:1fr}
}

/* v4.4.56 — restore aligned merch cards + ensure View Details is visible */
.merch-grid{
  align-items:stretch !important;
}
.merch-product-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}
.merch-product-card .merch-product-description,
.merch-product-card .product-description,
.merch-product-card .merch-description{
  height:190px !important;
  min-height:190px !important;
  max-height:190px !important;
  overflow-y:auto !important;
  padding-right:8px;
}
.merch-product-card .merch-product-title,
.merch-product-card h3{
  min-height:104px;
}
.merch-product-card .merch-view-details{
  display:block !important;
  flex:0 0 auto;
  margin:10px 16px 12px !important;
}
\n\n/* v4.4.57 — deterministic merch alignment + rendered View Details */\n@media(min-width:621px){\n  .merch-card{\n    display:flex !important;\n    flex-direction:column !important;\n    height:100% !important;\n  }\n  .merch-card-body{\n    display:flex !important;\n    flex-direction:column !important;\n    flex:0 0 auto !important;\n    padding:18px !important;\n  }\n  .merch-card-body > h3{\n    height:104px !important;\n    min-height:104px !important;\n    max-height:104px !important;\n    overflow-y:auto;\n    margin:0 0 8px !important;\n  }\n  .merch-card-body > .merch-price{\n    height:28px !important;\n    min-height:28px !important;\n    margin:0 0 10px !important;\n  }\n  .merch-card-body > p{\n    height:190px !important;\n    min-height:190px !important;\n    max-height:190px !important;\n    overflow-y:auto !important;\n    margin:0 0 10px !important;\n    padding-right:8px;\n  }\n  .merch-card-body > .merch-meta{\n    height:58px !important;\n    min-height:58px !important;\n    max-height:58px !important;\n    overflow-y:auto;\n    margin:0 0 10px !important;\n  }\n  .merch-card-body > .merch-status{\n    height:44px !important;\n    min-height:44px !important;\n    margin:0 !important;\n    flex:0 0 44px !important;\n  }\n  .merch-card-body > .merch-view-details{\n    display:block !important;\n    width:100% !important;\n    height:44px !important;\n    min-height:44px !important;\n    margin:10px 0 0 !important;\n    flex:0 0 44px !important;\n  }\n  .merch-card > .mlf-buy-box{\n    margin-top:0 !important;\n  }\n}\n@media(max-width:620px){\n  .merch-card-body > .merch-view-details{\n    display:block !important;\n    width:100% !important;\n    margin:10px 0 0 !important;\n  }\n}\n
/* v4.4.62 — saved seasonal theme library */
.theme-admin-box #themeImageLibrary{min-width:100%}
.theme-admin-box .admin-upload-line{flex-wrap:wrap}


/* v4.4.70 — home Gang Sheet Builder spotlight */
.gang-builder-spotlight{padding-top:10px}
.gang-builder-promo{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:42px;align-items:center;padding:38px;border:1px solid rgba(231,170,51,.38);border-radius:24px;background:linear-gradient(135deg,rgba(14,23,28,.96),rgba(23,30,34,.9));box-shadow:0 24px 70px rgba(0,0,0,.24);overflow:hidden}
.gang-builder-promo h2{font-size:clamp(2rem,4vw,3.35rem);margin:8px 0 14px;line-height:1.02}
.gang-builder-promo p{color:var(--muted);font-size:1.04rem;line-height:1.65;max-width:760px}
.gang-builder-points{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0 4px}
.gang-builder-points span{padding:7px 11px;border:1px solid rgba(231,170,51,.3);border-radius:999px;background:rgba(231,170,51,.07);color:#e9eef0;font-size:.78rem;font-weight:800}
.gang-builder-promo-visual{position:relative;min-height:330px;display:flex;align-items:center;justify-content:center}
.gang-roll{position:relative;width:min(290px,88%);height:310px;border:2px solid #6d7880;border-radius:8px;background-color:#e9eef0;background-image:linear-gradient(45deg,#d3d9dc 25%,transparent 25%),linear-gradient(-45deg,#d3d9dc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d3d9dc 75%),linear-gradient(-45deg,transparent 75%,#d3d9dc 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0;box-shadow:0 18px 45px rgba(0,0,0,.38);transform:rotate(2deg)}
.gang-roll:before{content:"23.5 IN WIDE";position:absolute;left:50%;top:-17px;transform:translateX(-50%);padding:5px 10px;border-radius:999px;background:#e7aa33;color:#17120a;font-size:.65rem;font-weight:950;white-space:nowrap}
.gang-roll-label{position:absolute;inset:auto 0 9px;text-align:center;color:#445158;font-size:.62rem;font-weight:950;letter-spacing:.12em}
.gang-art{position:absolute;display:flex;align-items:center;justify-content:center;border:2px solid #172127;background:#172127;color:#e7aa33;border-radius:8px;font-size:.68rem;font-weight:950;box-shadow:0 5px 12px rgba(0,0,0,.18)}
.gang-art.a1{left:20px;top:28px;width:105px;height:72px}.gang-art.a2{right:20px;top:28px;width:120px;height:105px}.gang-art.a3{left:20px;top:112px;width:105px;height:105px}.gang-art.a4{right:20px;top:145px;width:120px;height:72px}.gang-art.a5{left:55px;right:55px;top:230px;height:55px}
.gang-builder-price{position:absolute;right:0;bottom:5px;display:grid;gap:2px;padding:12px 15px;border:1px solid rgba(231,170,51,.45);border-radius:12px;background:#11191e;box-shadow:0 12px 28px rgba(0,0,0,.4)}
.gang-builder-price small{color:#e7aa33;font-size:.6rem;font-weight:900;letter-spacing:.08em}.gang-builder-price strong{font-size:.88rem}
@media(max-width:900px){.gang-builder-promo{grid-template-columns:1fr;padding:26px}.gang-builder-promo-visual{min-height:300px}.gang-builder-price{right:5%}}
@media(max-width:520px){.gang-builder-promo{padding:21px 17px}.gang-builder-promo-visual{min-height:275px}.gang-roll{height:265px}.gang-art.a5{top:215px}.gang-builder-price{display:none}}

/* v4.4.72 — homepage gang-sheet jump link */
.home-gang-jump{display:inline-flex;align-items:center;gap:11px;margin:18px 0 2px;padding:10px 15px;border:1px solid rgba(231,170,51,.62);border-radius:999px;background:rgba(14,20,24,.86);color:#f5c760;text-decoration:none;box-shadow:0 8px 26px rgba(0,0,0,.22);transition:.18s ease;backdrop-filter:blur(8px)}
.home-gang-jump span{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#d8dde0}.home-gang-jump strong{font-size:.86rem;font-weight:900}.home-gang-jump:hover{transform:translateY(-1px);border-color:#f5c760;background:rgba(231,170,51,.12)}
#gangSheetSpotlight{scroll-margin-top:88px}
@media(max-width:560px){.home-gang-jump{width:100%;justify-content:center;flex-wrap:wrap;border-radius:14px;text-align:center}.home-gang-jump span{width:100%}}

/* v4.4.73 — seasonal background cleanup
   The Admin Image Visibility / Dark Overlay controls are the only page-wide
   theme dimming controls. Remove the extra fixed gray wash from the major
   page sections so the seasonal artwork remains continuous edge-to-edge.
   Individual cards/panels keep their own dark surfaces for readability. */
body.mlf-theme-active main > section,
body.mlf-theme-active .section,
body.mlf-theme-active .section.light,
body.mlf-theme-active .hero,
body.mlf-theme-active .page-hero,
body.mlf-theme-active .portfolio-strip,
body.mlf-theme-active .review-ticker-section,
body.mlf-theme-active .local-brooksville-section,
body.mlf-theme-active .merch-bottom-cta{
  background-color:transparent !important;
  background-image:none !important;
}

/* Keep the header/footer/navigation readable without creating a page-wide
   gray layer. These are intentional UI surfaces, not theme dimmers. */
body.mlf-theme-active .site-header,
body.mlf-theme-active footer{
  background-color:rgba(13,17,20,.78) !important;
}

/* CTA/ticker frames stay framed, but no longer paint an opaque/translucent
   strip behind the seasonal image. */
body.mlf-theme-active .band,
body.mlf-theme-active .review-ticker-section{
  background-color:transparent !important;
}


/* v4.4.74 — Lithophane section */
.lithophane-section{padding:72px 0;border-top:1px solid rgba(244,180,52,.25);background:linear-gradient(180deg,rgba(8,14,17,.18),rgba(8,14,17,.62))}
.lithophane-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}
.lithophane-heading h2{font-size:clamp(2rem,4vw,3.2rem);margin:5px 0 10px}
.lithophane-heading p{max-width:760px;margin:0;color:var(--muted,#b7c0c5);font-size:1.05rem;line-height:1.7}
.lithophane-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}
.lithophane-type-card{display:flex;gap:18px;align-items:flex-start;padding:22px;border:1px solid rgba(244,180,52,.22);border-radius:16px;background:rgba(15,26,31,.82);box-shadow:0 18px 44px rgba(0,0,0,.18)}
.lithophane-type-card h3{margin:0 0 7px;font-size:1.25rem}
.lithophane-type-card p{margin:0;color:var(--muted,#b7c0c5);line-height:1.6}
.lithophane-type-icon{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:14px;background:rgba(244,180,52,.12);border:1px solid rgba(244,180,52,.35);color:#f4b434;font-size:1.75rem}
.lithophane-submit-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:22px;align-items:start;scroll-margin-top:110px}
.lithophane-info-card,.lithophane-form{position:relative;padding:26px;border-radius:18px;border:1px solid rgba(244,180,52,.22);background:rgba(12,22,27,.9);box-shadow:0 22px 55px rgba(0,0,0,.24)}
.lithophane-info-card h3,.lithophane-form h3{margin:5px 0 12px;font-size:1.55rem}
.lithophane-tips{margin:18px 0;padding-left:20px;color:var(--muted,#c2c9cc)}
.lithophane-tips li{margin:0 0 13px;line-height:1.55}
.lithophane-tips strong{color:#fff}
.lithophane-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.lithophane-form-grid .full{grid-column:1/-1}
.lithophane-form input,.lithophane-form select,.lithophane-form textarea{width:100%}
.lithophane-form textarea{min-height:118px}
#lithStatus{min-height:1.35em;margin-top:9px}
#lithStatus strong{color:#fff}
@media(max-width:820px){.lithophane-heading{align-items:flex-start;flex-direction:column}.lithophane-types,.lithophane-submit-grid{grid-template-columns:1fr}.lithophane-form-grid{grid-template-columns:1fr}.lithophane-form-grid .full{grid-column:auto}}

/* v4.4.75 lithophane showcase */
.lithophane-showcase{margin:10px 0 34px;padding:24px;border:1px solid rgba(244,180,52,.22);border-radius:18px;background:rgba(12,22,27,.72)}
.lithophane-showcase-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}
.lithophane-showcase-heading h3{margin:5px 0 0;font-size:1.75rem}
.lithophane-showcase-heading p{margin:0;max-width:520px;color:var(--muted,#b7c0c5);text-align:right}
.lithophane-gallery{margin-top:0}
.lithophane-gallery .embroidery-shot img{aspect-ratio:4/3;object-fit:cover}
@media(max-width:760px){.lithophane-showcase-heading{align-items:flex-start;flex-direction:column}.lithophane-showcase-heading p{text-align:left}}


/* v4.4.77 — temporary Stripe/card-payment switch */
.checkout-card-payments-notice{margin:4px 0 16px;padding:15px 17px;border:1px solid rgba(244,180,52,.48);border-radius:12px;background:rgba(244,180,52,.09);line-height:1.5}
.checkout-card-payments-notice strong{display:block;color:#f4b434;margin-bottom:5px;font-size:1.02rem}
.checkout-card-payments-notice span{display:block;color:var(--muted,#c5cbce)}
.checkout-card-payments-notice b{color:#fff}
