:root{
  --ink:#07182d;--muted:#687788;--cream:#fbf8f2;--cream2:#f4eee4;
  --gold:#b7832b;--gold2:#e6c574;--line:#e6dccd;--blue:#145bd7;
  --sans:Inter,Arial,sans-serif;--serif:Georgia,"Times New Roman",serif;
}
.fotoninja-photo-mirror *{box-sizing:border-box}.fotoninja-photo-mirror html{scroll-behavior:smooth}.fotoninja-photo-mirror{margin:0;background:#fffdf9;color:var(--ink);font-family:var(--sans)}
.fotoninja-photo-mirror a{text-decoration:none;color:inherit}.fotoninja-photo-mirror .container{width:min(1320px,calc(100% - 40px));margin:auto}.fotoninja-photo-mirror .section{padding:25px 0}
.fotoninja-photo-mirror img{display:block;max-width:100%}
.fotoninja-photo-mirror .header{position:sticky;top:0;z-index:100;background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.fotoninja-photo-mirror .nav{position:relative;display:flex;align-items:center;gap:18px;min-height:88px}
.fotoninja-photo-mirror .brand img{width:150px;height:auto}.fotoninja-photo-mirror .brand-note{margin-right:auto;padding-left:12px;border-left:1px solid var(--line);font-size:.68rem;line-height:1.2;font-weight:800;color:#617083}
.fotoninja-photo-mirror .nav-links{display:flex;gap:18px;align-items:center;font-size:.87rem;font-weight:800}.fotoninja-photo-mirror .nav-links a{white-space:nowrap}
.fotoninja-photo-mirror .btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:900;border:1px solid transparent}
.fotoninja-photo-mirror .btn-dark{background:var(--ink);color:#fff}.fotoninja-photo-mirror .btn-gold{background:linear-gradient(90deg,#edd18a,#dab25c);color:#17120a}.fotoninja-photo-mirror .btn-outline{border-color:#cda85e;background:#fffdf9}
.fotoninja-photo-mirror .menu-btn{display:none;border:0;background:#c92e66;color:white;font-size:1.5rem;padding:13px 17px;border-radius:10px}

.fotoninja-photo-mirror .hero{display:grid;grid-template-columns:1.02fr .98fr;gap:34px;align-items:center;padding:34px 0 25px}
.fotoninja-photo-mirror .eyebrow{font-size:.78rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#9b6b16}
.fotoninja-photo-mirror h1,.fotoninja-photo-mirror h2{font-family:var(--serif);font-weight:500;line-height:1.02;margin:10px 0 18px}
.fotoninja-photo-mirror h1{font-size:clamp(3rem,5.7vw,5.7rem)}.fotoninja-photo-mirror h2{font-size:clamp(2.15rem,3.8vw,3.8rem)}
.fotoninja-photo-mirror .lead,.fotoninja-photo-mirror .section-head p{color:var(--muted);font-size:1.04rem;line-height:1.7}
.fotoninja-photo-mirror .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.fotoninja-photo-mirror .hero-media{position:relative;min-height:650px;border-radius:32px;overflow:hidden;background:#eee8dc}
.fotoninja-photo-mirror .hero-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.fotoninja-photo-mirror .pill{position:absolute;left:22px;bottom:22px;background:#fff;padding:12px 18px;border-radius:999px;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.fotoninja-photo-mirror .price-strip{margin-top:20px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:end}
.fotoninja-photo-mirror .price-strip strong{font-size:2.15rem}.fotoninja-photo-mirror .muted{color:var(--muted)}

.fotoninja-photo-mirror .trust{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff}
.fotoninja-photo-mirror .trust div{padding:20px;text-align:center;border-right:1px solid var(--line)}.fotoninja-photo-mirror .trust div:last-child{border-right:0}.fotoninja-photo-mirror .trust strong{display:block;font-family:var(--serif);font-size:1.55rem}
.fotoninja-photo-mirror .section-head{display:grid;grid-template-columns:1fr .9fr;gap:30px;align-items:end;margin-bottom:24px}
.fotoninja-photo-mirror .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.fotoninja-photo-mirror .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.fotoninja-photo-mirror .card{border:1px solid var(--line);border-radius:22px;background:#fff;padding:24px}.fotoninja-photo-mirror .card h3{margin:0 0 10px;font-size:1.02rem}.fotoninja-photo-mirror .card p{margin:0;color:var(--muted);line-height:1.6}
.fotoninja-photo-mirror .step-num{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ink);color:white;font-weight:900;margin-bottom:14px}

.fotoninja-photo-mirror .showcase{display:grid;grid-template-columns:44% 56%;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#fff}
.fotoninja-photo-mirror .showcase-media{min-height:590px;background:#eee8dc}.fotoninja-photo-mirror .showcase-media img{width:100%;height:100%;object-fit:cover}.fotoninja-photo-mirror .showcase-copy{padding:34px}
.fotoninja-photo-mirror .checks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.fotoninja-photo-mirror .checks span:before{content:"✓";color:#098b56;font-weight:900;margin-right:8px}
.fotoninja-photo-mirror .info-band{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.fotoninja-photo-mirror .info-band .card strong{display:block;font-family:var(--serif);font-size:1.6rem;margin-bottom:6px}

.fotoninja-photo-mirror .dark{background:var(--ink);color:#fff}.fotoninja-photo-mirror .dark .section-head p{color:#b9c7d4}.fotoninja-photo-mirror .dark .card{background:#0c2542;border-color:#29425d}.fotoninja-photo-mirror .dark .card p{color:#c7d2dc}
.fotoninja-photo-mirror .split{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}.fotoninja-photo-mirror .split-media{border-radius:24px;overflow:hidden;min-height:470px;background:#eee8dc}.fotoninja-photo-mirror .split-media img{width:100%;height:100%;object-fit:cover}.fotoninja-photo-mirror .split-copy{padding:26px;border:1px solid var(--line);border-radius:24px;background:#fff}
.fotoninja-photo-mirror .split-copy p{color:var(--muted);line-height:1.7}.fotoninja-photo-mirror .text-link{font-weight:900;color:#8b611b}

.fotoninja-photo-mirror .gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}
.fotoninja-photo-mirror .gallery figure{margin:0;border-radius:20px;overflow:hidden;background:#eee8dc;min-height:260px}
.fotoninja-photo-mirror .gallery img{width:100%;height:100%;object-fit:cover}
.fotoninja-photo-mirror .g1{grid-column:span 7}.fotoninja-photo-mirror .g2{grid-column:span 5}.fotoninja-photo-mirror .g3,.fotoninja-photo-mirror .g4,.fotoninja-photo-mirror .g5{grid-column:span 4}.fotoninja-photo-mirror .g6{grid-column:span 8}.fotoninja-photo-mirror .g7{grid-column:span 4}

.fotoninja-photo-mirror .compare{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.fotoninja-photo-mirror .compare th,.fotoninja-photo-mirror .compare td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}.fotoninja-photo-mirror .compare tr:last-child td{border-bottom:0}.fotoninja-photo-mirror .compare th{background:var(--cream2)}
.fotoninja-photo-mirror .logo-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;align-items:center}.fotoninja-photo-mirror .logo-box{height:82px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;padding:15px}.fotoninja-photo-mirror .logo-box img{max-width:100%;max-height:46px;object-fit:contain}

.fotoninja-photo-mirror .faq{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fotoninja-photo-mirror .faq details{border:1px solid var(--line);border-radius:16px;background:#fff;padding:18px}.fotoninja-photo-mirror .faq summary{font-weight:900;cursor:pointer}.fotoninja-photo-mirror .faq p{color:var(--muted);line-height:1.6}
.fotoninja-photo-mirror .contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px}.fotoninja-photo-mirror .contact-box{border:1px solid var(--line);border-radius:24px;padding:26px;background:#fff}
.fotoninja-photo-mirror .contact-box input,.fotoninja-photo-mirror .contact-box select,.fotoninja-photo-mirror .contact-box textarea{width:100%;padding:12px;border:1px solid #ccd1d6;border-radius:10px;margin:6px 0 10px;font:inherit}.fotoninja-photo-mirror .contact-box textarea{min-height:90px}
.fotoninja-photo-mirror .mobile-bar{display:none}

@media(max-width:980px){
  .fotoninja-photo-mirror .nav-links{display:none}.fotoninja-photo-mirror .menu-btn{display:block}
  .fotoninja-photo-mirror .nav-links.open{display:flex;position:absolute;top:calc(100% + 8px);right:0;left:auto;width:min(310px,calc(100vw - 34px));flex-direction:column;align-items:stretch;gap:6px;padding:10px;background:#fffdf9;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 55px rgba(7,24,45,.22)}
  .fotoninja-photo-mirror .nav-links.open a{padding:11px 13px;background:#fffdf9;border-radius:11px}
  .fotoninja-photo-mirror .hero,.fotoninja-photo-mirror .section-head,.fotoninja-photo-mirror .showcase,.fotoninja-photo-mirror .split,.fotoninja-photo-mirror .contact{grid-template-columns:1fr}
  .fotoninja-photo-mirror .hero-media{min-height:560px}.fotoninja-photo-mirror .grid4{grid-template-columns:repeat(2,1fr)}.fotoninja-photo-mirror .logo-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:680px){
  .fotoninja-photo-mirror .container{width:min(100% - 28px,1320px)}.fotoninja-photo-mirror .brand img{width:145px}.fotoninja-photo-mirror .brand-note{font-size:.58rem;padding-left:8px}
  .fotoninja-photo-mirror .hero{padding-top:20px}.fotoninja-photo-mirror .hero h1{font-size:3.45rem}.fotoninja-photo-mirror .hero-media{min-height:460px}
  .fotoninja-photo-mirror .trust,.fotoninja-photo-mirror .grid3,.fotoninja-photo-mirror .grid4,.fotoninja-photo-mirror .checks,.fotoninja-photo-mirror .faq,.fotoninja-photo-mirror .info-band{grid-template-columns:1fr}.fotoninja-photo-mirror .trust div{border-right:0;border-bottom:1px solid var(--line)}
  .fotoninja-photo-mirror .gallery{grid-template-columns:1fr}.fotoninja-photo-mirror .gallery figure{grid-column:auto!important;min-height:360px}
  .fotoninja-photo-mirror .mobile-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr 1.35fr;left:10px;right:10px;bottom:10px;z-index:999;background:var(--ink);padding:6px;border-radius:20px;box-shadow:0 12px 32px rgba(0,0,0,.25)}
  .fotoninja-photo-mirror .mobile-bar a{color:#fff;text-align:center;padding:14px 6px;font-weight:900}.fotoninja-photo-mirror .mobile-bar a:last-child{background:#dfbd70;color:#17120a;border-radius:15px}
  .fotoninja-photo-mirror{padding-bottom:82px}.fotoninja-photo-mirror .price-strip{align-items:flex-start;flex-direction:column}
}
.fotoninja-photo-mirror .wpforms-card{padding:26px!important}
.fotoninja-photo-mirror .wpforms-container{margin:0!important}
.fotoninja-photo-mirror .wpforms-container .wpforms-field{padding:6px 0!important}
.fotoninja-photo-mirror .wpforms-container .wpforms-field-label{margin-bottom:6px!important;font-size:.88rem!important}
.fotoninja-photo-mirror .wpforms-container input,
.fotoninja-photo-mirror .wpforms-container select,
.fotoninja-photo-mirror .wpforms-container textarea{
  border-radius:10px!important;
}
.fotoninja-photo-mirror .wpforms-container input,
.fotoninja-photo-mirror .wpforms-container select{
  min-height:44px!important;height:44px!important;padding:9px 12px!important
}
.fotoninja-photo-mirror .wpforms-container textarea{min-height:100px!important}
.fotoninja-photo-mirror .wpforms-container .wpforms-submit-container{padding-top:10px!important}
.fotoninja-photo-mirror .wpforms-container button[type="submit"]{
  border-radius:999px!important;
  background:linear-gradient(90deg,#edd18a,#dab25c)!important;
  color:#17120a!important;
  font-weight:900!important;
  border:0!important;
  padding:12px 20px!important;
}

/* ===== TYPOGRAPHY + SPACING FIX v1.0.1 ===== */

/* More compact headings across the page */
.fotoninja-photo-mirror h1{
  font-size:clamp(2.75rem,4.8vw,4.75rem) !important;
  line-height:1.02 !important;
  margin-bottom:14px !important;
}

.fotoninja-photo-mirror h2{
  font-size:clamp(1.95rem,3vw,3rem) !important;
  line-height:1.04 !important;
  margin-bottom:14px !important;
}

.fotoninja-photo-mirror .section-head{
  gap:22px !important;
  margin-bottom:18px !important;
}

.fotoninja-photo-mirror .section-head p{
  font-size:.98rem !important;
  line-height:1.58 !important;
}

/* Keep sections visually tighter */
.fotoninja-photo-mirror .section{
  padding-top:25px !important;
  padding-bottom:25px !important;
}

.fotoninja-photo-mirror .hero{
  gap:28px !important;
  padding-top:28px !important;
  padding-bottom:25px !important;
}

.fotoninja-photo-mirror .hero .lead{
  font-size:1rem !important;
  line-height:1.58 !important;
}

.fotoninja-photo-mirror .card{
  padding:20px !important;
}

.fotoninja-photo-mirror .showcase-copy,
.fotoninja-photo-mirror .split-copy{
  padding:26px !important;
}

/* Wedding timing block */
.fotoninja-photo-mirror .wedding-timing{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:18px 0 20px;
}

.fotoninja-photo-mirror .wedding-timing>div{
  padding:14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--cream);
}

.fotoninja-photo-mirror .wedding-timing strong{
  display:block;
  margin-bottom:5px;
  font-size:.9rem;
}

.fotoninja-photo-mirror .wedding-timing span{
  display:block;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.45;
}

/* Reduce unnecessary height in wedding split */
.fotoninja-photo-mirror #weddings .split{
  align-items:start !important;
}
.fotoninja-photo-mirror #weddings .split-media{
  min-height:0 !important;
  height:auto !important;
}
.fotoninja-photo-mirror #weddings .split-media img{
  height:auto !important;
  aspect-ratio:4 / 5 !important;
  object-fit:cover !important;
}

@media(max-width:980px){
  .fotoninja-photo-mirror h1{
    font-size:clamp(2.6rem,8vw,4rem) !important;
  }
  .fotoninja-photo-mirror h2{
    font-size:clamp(1.9rem,5.5vw,2.65rem) !important;
  }
}

@media(max-width:680px){
  .fotoninja-photo-mirror h1{
    font-size:2.75rem !important;
  }
  .fotoninja-photo-mirror h2{
    font-size:2rem !important;
  }
  .fotoninja-photo-mirror .wedding-timing{
    grid-template-columns:1fr !important;
  }
}

/* ===== SALES MESSAGE REWORK v1.1.0 ===== */
.fotoninja-photo-mirror .benefit-bullets{display:grid;gap:9px;margin:18px 0 4px}.fotoninja-photo-mirror .benefit-bullets span{font-size:.92rem;font-weight:800}.fotoninja-photo-mirror .benefit-bullets span:before{content:"✓";display:inline-block;margin-right:9px;color:#098b56;font-weight:900}
.fotoninja-photo-mirror .benefit-showcase .showcase-copy h3{font-family:var(--serif);font-size:1.75rem;line-height:1.1;margin:0 0 14px}.fotoninja-photo-mirror .results-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.fotoninja-photo-mirror .result-card,.fotoninja-photo-mirror .process-card{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.fotoninja-photo-mirror .result-card>span,.fotoninja-photo-mirror .process-card>span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:var(--ink);color:#fff;font-size:.75rem;font-weight:900}.fotoninja-photo-mirror .result-card h3,.fotoninja-photo-mirror .process-card h3{font-size:1rem;line-height:1.25;margin:14px 0 8px}.fotoninja-photo-mirror .result-card p,.fotoninja-photo-mirror .process-card p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.fotoninja-photo-mirror .center-cta{display:flex;justify-content:center;margin-top:18px}
.fotoninja-photo-mirror .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.fotoninja-photo-mirror .included-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.fotoninja-photo-mirror .price-card{margin-top:14px;padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:var(--cream);display:grid;grid-template-columns:.8fr 1.2fr auto;gap:20px;align-items:center}.fotoninja-photo-mirror .price-card span,.fotoninja-photo-mirror .price-card small{display:block;color:var(--muted)}.fotoninja-photo-mirror .price-card strong{display:block;font-family:var(--serif);font-size:1.7rem;margin:4px 0}.fotoninja-photo-mirror .price-card p{margin:0;color:var(--muted);line-height:1.55}.fotoninja-photo-mirror .compact-wedding .split-media{min-height:390px}.fotoninja-photo-mirror .final-cta{background:var(--ink);color:#fff}.fotoninja-photo-mirror .final-cta-inner{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}.fotoninja-photo-mirror .final-cta h2{margin-bottom:10px!important}.fotoninja-photo-mirror .final-cta p{margin:0;color:#c5d0da;line-height:1.6;max-width:820px}
@media(max-width:1100px){.fotoninja-photo-mirror .results-grid{grid-template-columns:repeat(2,1fr)}.fotoninja-photo-mirror .included-grid{grid-template-columns:repeat(2,1fr)}.fotoninja-photo-mirror .price-card{grid-template-columns:1fr 1fr}.fotoninja-photo-mirror .price-card .btn{grid-column:1/-1;justify-self:start}}
@media(max-width:760px){.fotoninja-photo-mirror .results-grid,.fotoninja-photo-mirror .process-grid,.fotoninja-photo-mirror .included-grid{grid-template-columns:1fr}.fotoninja-photo-mirror .price-card,.fotoninja-photo-mirror .final-cta-inner{grid-template-columns:1fr}.fotoninja-photo-mirror .hero h1{font-size:2.55rem!important}.fotoninja-photo-mirror .benefit-showcase .showcase-media{min-height:430px}.fotoninja-photo-mirror .benefit-showcase .showcase-copy h3{font-size:1.45rem}}


/* ===== VISUAL FIXES v1.1.2 ===== */
.fotoninja-photo-mirror h1{font-size:clamp(2.65rem,4vw,3.75rem)!important;line-height:1.04!important}
.fotoninja-photo-mirror h2{font-size:clamp(1.8rem,2.5vw,2.55rem)!important;line-height:1.08!important}
.fotoninja-photo-mirror .dark .split-copy{color:var(--ink)!important}
.fotoninja-photo-mirror .dark .split-copy h3{color:var(--ink)!important}
.fotoninja-photo-mirror .dark .split-copy p{color:var(--muted)!important}
.fotoninja-photo-mirror .dark .split-copy strong{color:var(--ink)!important}
.fotoninja-photo-mirror .benefit-showcase{align-items:stretch}
.fotoninja-photo-mirror .benefit-showcase .showcase-media{min-height:0!important;height:440px}
.fotoninja-photo-mirror .benefit-showcase .showcase-copy{display:flex;flex-direction:column;justify-content:center;min-height:0!important}
.fotoninja-photo-mirror .benefit-showcase .showcase-copy .hero-actions{margin-top:14px}
.fotoninja-photo-mirror .wedding-timing{grid-template-columns:repeat(3,1fr)!important;margin:14px 0 18px!important}
.fotoninja-photo-mirror .wedding-timing>div{background:#fffdf9!important}
@media(max-width:980px){
.fotoninja-photo-mirror h1{font-size:clamp(2.35rem,6.5vw,3.25rem)!important}
.fotoninja-photo-mirror h2{font-size:clamp(1.75rem,4.5vw,2.25rem)!important}
.fotoninja-photo-mirror .benefit-showcase .showcase-media{height:auto!important;min-height:0!important}
.fotoninja-photo-mirror .benefit-showcase .showcase-media img{height:auto!important;aspect-ratio:4/3;object-fit:cover}
.fotoninja-photo-mirror .wedding-timing{grid-template-columns:1fr!important}
}
@media(max-width:680px){
.fotoninja-photo-mirror h1,.fotoninja-photo-mirror .hero h1{font-size:2.15rem!important;line-height:1.07!important}
.fotoninja-photo-mirror h2{font-size:1.72rem!important;line-height:1.1!important}
}


/* ===== v1.1.3 white-on-white text fix ===== */

/* Secondary / outline buttons on light backgrounds */
.fotoninja-photo-mirror .btn-outline,
.fotoninja-photo-mirror a.btn-outline,
.fotoninja-photo-mirror .hero-actions .btn-outline{
  color:var(--ink)!important;
  background:#fffdf9!important;
  border-color:#d6a33a!important;
  text-shadow:none!important;
}
.fotoninja-photo-mirror .btn-outline:hover,
.fotoninja-photo-mirror a.btn-outline:hover{
  color:#fff!important;
  background:var(--ink)!important;
  border-color:var(--ink)!important;
}

/* Trust / stats strip must always have visible text */
.fotoninja-photo-mirror .proof,
.fotoninja-photo-mirror .stats{
  color:var(--ink)!important;
}
.fotoninja-photo-mirror .stat strong{
  color:var(--ink)!important;
}
.fotoninja-photo-mirror .stat span{
  color:var(--muted)!important;
}

/* Prevent inherited white text inside white/light cards */
.fotoninja-photo-mirror .card,
.fotoninja-photo-mirror .split-copy,
.fotoninja-photo-mirror .feature-card,
.fotoninja-photo-mirror .included-card,
.fotoninja-photo-mirror .faq details{
  color:var(--ink);
}
.fotoninja-photo-mirror .card p,
.fotoninja-photo-mirror .split-copy p,
.fotoninja-photo-mirror .feature-card p,
.fotoninja-photo-mirror .included-card p,
.fotoninja-photo-mirror .faq details p{
  color:var(--muted);
}

/* Explicitly protect all light-background contact/hero links */
.fotoninja-photo-mirror .hero .text-link,
.fotoninja-photo-mirror .hero a:not(.btn),
.fotoninja-photo-mirror .contact-links a{
  color:var(--ink)!important;
}


/* ===== v1.1.4 visibility + wider text layout + transport note ===== */

/* Stats block: explicit dark text on light background */
.fotoninja-photo-mirror .trust{
  color:var(--ink)!important;
  background:#fffdf9!important;
}
.fotoninja-photo-mirror .trust > div{
  color:var(--ink)!important;
}
.fotoninja-photo-mirror .trust strong{
  color:var(--ink)!important;
}
.fotoninja-photo-mirror .trust span{
  color:var(--muted)!important;
}

/* Use more of the available width in section introductions */
.fotoninja-photo-mirror .section-head{
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;
  gap:42px!important;
  align-items:center!important;
  width:100%!important;
}
.fotoninja-photo-mirror .section-head > div,
.fotoninja-photo-mirror .section-head > p{
  width:100%!important;
  max-width:none!important;
}
.fotoninja-photo-mirror .section-head p{
  margin:0!important;
}

/* Let text cards use their whole columns rather than looking left-heavy */
.fotoninja-photo-mirror .split-copy,
.fotoninja-photo-mirror .showcase-copy{
  width:100%!important;
  max-width:none!important;
}
.fotoninja-photo-mirror .split-copy h3,
.fotoninja-photo-mirror .split-copy p,
.fotoninja-photo-mirror .showcase-copy h3,
.fotoninja-photo-mirror .showcase-copy p{
  max-width:none!important;
}

/* Corporate dark section: white title on navy, readable paragraph */
.fotoninja-photo-mirror .dark .section-head h2{
  color:#fff!important;
}
.fotoninja-photo-mirror .dark .section-head p{
  color:#c5d2df!important;
}
.fotoninja-photo-mirror .dark .split-copy{
  background:#fffdf9!important;
  color:var(--ink)!important;
}
.fotoninja-photo-mirror .dark .split-copy h3{
  color:var(--ink)!important;
}
.fotoninja-photo-mirror .dark .split-copy p{
  color:var(--muted)!important;
}
.fotoninja-photo-mirror .dark .split-copy strong{
  color:var(--ink)!important;
}

/* Transport pricing note */
.fotoninja-photo-mirror .transport-note{
  margin:8px 0 0!important;
  color:var(--muted)!important;
  font-size:.9rem!important;
  line-height:1.45!important;
}

@media(max-width:980px){
  .fotoninja-photo-mirror .section-head{
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
  }
}


/* ===== v1.1.6 compact header + compact contact form ===== */

/* Match logo size more closely to the other FotoNinja pages */
.fotoninja-photo-mirror .brand img{
  width:122px!important;
  max-height:54px!important;
  object-fit:contain!important;
}
.fotoninja-photo-mirror .nav{
  min-height:76px!important;
}
.fotoninja-photo-mirror .brand-note{
  font-size:.66rem!important;
}

/* Compact contact section */
.fotoninja-photo-mirror .contact-grid{
  grid-template-columns:.72fr 1.08fr!important;
  gap:28px!important;
  align-items:start!important;
}
.fotoninja-photo-mirror .contact-copy{
  padding-top:4px!important;
  max-width:440px!important;
}
.fotoninja-photo-mirror .contact-copy h2{
  font-size:clamp(2rem,2.8vw,2.75rem)!important;
  line-height:1.08!important;
  margin-bottom:12px!important;
}
.fotoninja-photo-mirror .contact-copy p{
  font-size:1rem!important;
  line-height:1.6!important;
  margin-bottom:18px!important;
}
.fotoninja-photo-mirror .contact-links{
  gap:5px!important;
  margin-top:10px!important;
}
.fotoninja-photo-mirror .form-card{
  padding:18px 20px!important;
  border-radius:20px!important;
}
.fotoninja-photo-mirror .form-card .wpforms-container{
  margin:0!important;
}
.fotoninja-photo-mirror .form-card .wpforms-field{
  padding:6px 0!important;
}
.fotoninja-photo-mirror .form-card .wpforms-field-label{
  margin-bottom:4px!important;
  font-size:.95rem!important;
}
.fotoninja-photo-mirror .form-card input[type="text"],
.fotoninja-photo-mirror .form-card input[type="email"],
.fotoninja-photo-mirror .form-card input[type="tel"],
.fotoninja-photo-mirror .form-card input[type="date"],
.fotoninja-photo-mirror .form-card input[type="number"],
.fotoninja-photo-mirror .form-card select{
  min-height:44px!important;
  height:44px!important;
  padding:8px 12px!important;
}
.fotoninja-photo-mirror .form-card textarea{
  min-height:110px!important;
  height:110px!important;
  padding:10px 12px!important;
}
.fotoninja-photo-mirror .form-card .wpforms-submit-container{
  padding-top:10px!important;
}
.fotoninja-photo-mirror .form-card button[type="submit"]{
  min-height:44px!important;
  padding:10px 20px!important;
}

/* Reduce empty beige area around contact block */
.fotoninja-photo-mirror .contact{
  padding-top:30px!important;
  padding-bottom:30px!important;
}

@media(max-width:980px){
  .fotoninja-photo-mirror .contact-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .fotoninja-photo-mirror .contact-copy{
    max-width:none!important;
  }
}
@media(max-width:680px){
  .fotoninja-photo-mirror .brand img{
    width:104px!important;
    max-height:46px!important;
  }
  .fotoninja-photo-mirror .nav{
    min-height:66px!important;
  }
  .fotoninja-photo-mirror .form-card{
    padding:14px!important;
  }
}


/* ===== v1.1.7 contact layout + remove comparison section ===== */
.fotoninja-photo-mirror .compact-contact{
  grid-template-columns:minmax(280px,.62fr) minmax(0,1.18fr)!important;
  gap:32px!important;
  align-items:start!important;
  padding-top:24px!important;
  padding-bottom:24px!important;
}
.fotoninja-photo-mirror .compact-contact .contact-copy{
  background:#f5efe5!important;
  border:1px solid var(--line)!important;
  border-radius:22px!important;
  padding:24px!important;
  max-width:none!important;
}
.fotoninja-photo-mirror .compact-contact .contact-copy h2{
  font-size:clamp(1.9rem,2.6vw,2.55rem)!important;
  line-height:1.08!important;
  margin:8px 0 12px!important;
}
.fotoninja-photo-mirror .compact-contact .contact-copy p{
  margin:0 0 16px!important;
  color:var(--muted)!important;
  font-size:.98rem!important;
  line-height:1.55!important;
}
.fotoninja-photo-mirror .compact-contact .contact-links{
  display:grid!important;
  gap:5px!important;
  margin:0!important;
}
.fotoninja-photo-mirror .compact-contact .contact-links a,
.fotoninja-photo-mirror .compact-contact .contact-links span{
  color:var(--ink)!important;
  font-size:.94rem!important;
  line-height:1.35!important;
}
.fotoninja-photo-mirror .compact-contact .contact-links a:first-child{
  font-weight:900!important;
}

.fotoninja-photo-mirror .compact-contact .wpforms-card{
  padding:16px 18px!important;
  border-radius:20px!important;
}
.fotoninja-photo-mirror .compact-contact .wpforms-container{
  margin:0!important;
}
.fotoninja-photo-mirror .compact-contact .wpforms-field{
  padding:4px 0!important;
}
.fotoninja-photo-mirror .compact-contact .wpforms-field-label{
  margin-bottom:3px!important;
  font-size:.9rem!important;
  line-height:1.2!important;
}
.fotoninja-photo-mirror .compact-contact input[type="text"],
.fotoninja-photo-mirror .compact-contact input[type="email"],
.fotoninja-photo-mirror .compact-contact input[type="tel"],
.fotoninja-photo-mirror .compact-contact input[type="date"],
.fotoninja-photo-mirror .compact-contact input[type="number"],
.fotoninja-photo-mirror .compact-contact select{
  height:40px!important;
  min-height:40px!important;
  padding:7px 10px!important;
}
.fotoninja-photo-mirror .compact-contact textarea{
  height:92px!important;
  min-height:92px!important;
  padding:8px 10px!important;
}
.fotoninja-photo-mirror .compact-contact .wpforms-submit-container{
  padding-top:8px!important;
  margin-top:0!important;
}
.fotoninja-photo-mirror .compact-contact button[type="submit"]{
  min-height:40px!important;
  padding:9px 18px!important;
}

@media(max-width:980px){
  .fotoninja-photo-mirror .compact-contact{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
}


/* ===== v1.1.8 Contact section matched to Weddings page ===== */
.fotoninja-photo-mirror .wedding-style-contact{
  background:linear-gradient(180deg,#f7f4ee,#efe7d8)!important;
  padding-top:34px!important;
  padding-bottom:34px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-grid{
  display:grid!important;
  grid-template-columns:.8fr 1.2fr!important;
  gap:28px!important;
  align-items:start!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-info{
  background:var(--ink)!important;
  color:#fff!important;
  border-radius:28px!important;
  padding:34px!important;
  max-width:none!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-info .eyebrow{
  color:#f0d8a1!important;
  margin-bottom:10px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-info h2{
  color:#fff!important;
  font-size:clamp(2.1rem,3vw,3rem)!important;
  line-height:1.08!important;
  margin:8px 0 10px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-info p{
  color:#bdc9d7!important;
  font-size:1rem!important;
  line-height:1.6!important;
  margin:0 0 16px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-row{
  padding:14px 0!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-row small{
  display:block!important;
  color:#8fa5ba!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-size:.72rem!important;
  margin-bottom:2px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-row a,
.fotoninja-photo-mirror .wedding-style-contact .contact-row span{
  color:#fff!important;
  font-size:1rem!important;
  line-height:1.35!important;
}

.fotoninja-photo-mirror .wedding-style-contact .form-card{
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:28px!important;
  padding:24px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .form-card h3{
  color:var(--ink)!important;
  font-family:var(--serif)!important;
  font-weight:500!important;
  font-size:clamp(1.9rem,2.6vw,2.55rem)!important;
  line-height:1.08!important;
  margin:0 0 6px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .form-card > p{
  color:var(--muted)!important;
  margin:0 0 16px!important;
  font-size:.98rem!important;
  line-height:1.55!important;
}

/* Compact WPForms like Weddings */
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container{
  margin:0!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-container{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  column-gap:28px!important;
  row-gap:0!important;
}

/* First 4 normal fields in two columns; longer fields span both columns */
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field{
  padding:6px 0!important;
  width:100%!important;
  float:none!important;
  clear:none!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field:nth-child(n+5),
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-textarea,
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-select,
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-radio,
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-checkbox,
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-html{
  grid-column:1 / -1!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-label{
  margin-bottom:6px!important;
  font-size:.88rem!important;
  line-height:1.25!important;
  color:var(--ink)!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container input[type="text"],
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container input[type="email"],
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container input[type="tel"],
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container input[type="number"],
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container input[type="date"],
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container select{
  width:100%!important;
  max-width:none!important;
  min-height:42px!important;
  height:42px!important;
  padding:9px 12px!important;
  font-size:.92rem!important;
  border-radius:10px!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container textarea{
  width:100%!important;
  max-width:none!important;
  min-height:92px!important;
  height:92px!important;
  padding:9px 12px!important;
  font-size:.92rem!important;
  border-radius:10px!important;
  resize:vertical!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-description{
  margin-top:4px!important;
  font-size:.76rem!important;
  line-height:1.35!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-submit-container{
  padding-top:10px!important;
  margin-top:0!important;
}

.fotoninja-photo-mirror .wedding-style-contact .wpforms-container button[type="submit"]{
  min-height:42px!important;
  padding:10px 20px!important;
  border-radius:999px!important;
}

@media(max-width:980px){
  .fotoninja-photo-mirror .wedding-style-contact .contact-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:680px){
  .fotoninja-photo-mirror .wedding-style-contact{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
  .fotoninja-photo-mirror .wedding-style-contact .contact-info,
  .fotoninja-photo-mirror .wedding-style-contact .form-card{
    padding:20px!important;
    border-radius:22px!important;
  }
  .fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field-container{
    grid-template-columns:1fr!important;
  }
  .fotoninja-photo-mirror .wedding-style-contact .wpforms-container .wpforms-field{
    grid-column:1!important;
  }
}


/* ===== v1.1.9 critical contact width fix ===== */
/* Old .contact rule was turning the SECTION itself into a 2-column grid.
   This made the whole contact container occupy only the first column. */
.fotoninja-photo-mirror section.wedding-style-contact.contact{
  display:block!important;
  grid-template-columns:none!important;
  gap:0!important;
  width:100%!important;
}

.fotoninja-photo-mirror section.wedding-style-contact.contact > .container.contact-grid{
  width:min(1320px,calc(100% - 40px))!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  display:grid!important;
  grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr)!important;
  gap:28px!important;
  align-items:start!important;
}

.fotoninja-photo-mirror .wedding-style-contact .contact-info{
  width:100%!important;
  min-width:0!important;
}

.fotoninja-photo-mirror .wedding-style-contact .form-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}

/* Keep the form visually identical to Weddings on desktop */
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container{
  width:100%!important;
  max-width:none!important;
}
.fotoninja-photo-mirror .wedding-style-contact .wpforms-container form{
  width:100%!important;
}

/* WPForms sometimes puts inline width on individual fields */
.fotoninja-photo-mirror .wedding-style-contact .wpforms-field-medium,
.fotoninja-photo-mirror .wedding-style-contact .wpforms-field-large{
  max-width:none!important;
}

/* Do not let the heading become a narrow vertical stack */
.fotoninja-photo-mirror .wedding-style-contact .form-card h3{
  max-width:none!important;
}

@media(max-width:980px){
  .fotoninja-photo-mirror section.wedding-style-contact.contact > .container.contact-grid{
    grid-template-columns:1fr!important;
    width:min(100% - 32px, 760px)!important;
  }
}

@media(max-width:680px){
  .fotoninja-photo-mirror section.wedding-style-contact.contact > .container.contact-grid{
    width:calc(100% - 24px)!important;
  }
}


/* v1.2.1 — highlight the 4-hour package like Sharzh Pavilion */
.fotoninja-photo-mirror .price-strip > div,
.fotoninja-photo-mirror .price-card > div{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}
.fotoninja-photo-mirror .price-strip .price-4h,
.fotoninja-photo-mirror .price-card .price-4h{
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  padding:12px 17px!important;
  border:1px solid #d7b06a!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#fff7e8,#f5e2bb)!important;
  color:#8b5c12!important;
  -webkit-text-fill-color:#8b5c12!important;
  box-shadow:0 12px 28px rgba(180,125,34,.13)!important;
  font-weight:900!important;
}
@media(max-width:640px){
  .fotoninja-photo-mirror .price-strip > div,
  .fotoninja-photo-mirror .price-card > div{
    gap:10px;
  }
  .fotoninja-photo-mirror .price-strip .price-4h,
  .fotoninja-photo-mirror .price-card .price-4h{
    padding:11px 14px!important;
  }
}


/* v1.2.2 — 4h package price size */
.fotoninja-photo-mirror .price-strip .price-4h,
.fotoninja-photo-mirror .price-card .price-4h{
  font-size:1.75rem!important;
}
