/* PetroFlux — minimal CSS: animations only */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Source+Sans+3:wght@300;400;500;600&display=swap');

/* Scroll fade-up */
.fade-up { opacity:0; transform:translateY(30px); transition:opacity .55s ease,transform .55s ease; }
.fade-up.visible { opacity:1; transform:translateY(0); }

/* Cookie slide-up */
.pf-cookie { transform:translateY(100%); transition:transform .4s cubic-bezier(.4,0,.2,1); }
.pf-cookie.visible { transform:translateY(0); }

/* Popup animation (hidden/visible toggled via Tailwind 'hidden' class) */
@keyframes popIn { from{opacity:0;transform:scale(.85) translateY(14px)} to{opacity:1;transform:scale(1) translateY(0)} }
.pf-popup { animation:popIn .36s cubic-bezier(.34,1.56,.64,1) both; }

/* popup overlay: flex when NOT hidden */
.pf-popup-overlay:not(.hidden) { display:flex; align-items:center; justify-content:center; }

/* Service card top accent */
.service-card::before { content:''; position:absolute; top:0;left:0;width:100%;height:3px;background:#C97A1E;transform:scaleX(0);transform-origin:left;transition:transform .28s ease; }
.service-card:hover::before { transform:scaleX(1); }

/* Google Maps iframe */
.pf-map { width:100%; height:360px; border:0; display:block; }

/* Form invalid highlight */
.border-red-400 { border-color:#f87171 !important; }
