/*
Theme Name: Pat's Bait & Tackle Coastal Comics
Theme URI: https://www.patsfishingstore.com/
Author: Pat's Fishing Store
Description: Colorful coastal fishing-themed responsive WordPress theme.
Version: 1.3.6
Requires at least: 6.0
Text Domain: pats-coastal
*/
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Nunito:wght@400;600;700;800;900&display=swap');
:root{--navy:#092c49;--blue:#0866aa;--aqua:#06b6c6;--cream:#fff8e8;--orange:#ffb93b;--coral:#f15d37}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--navy);font-family:Nunito,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,.nav a,.btn{font-family:'Barlow Condensed',sans-serif}h1{font-size:clamp(3.8rem,8vw,7.8rem);line-height:.92;margin:20px 0;text-transform:uppercase;letter-spacing:-2px}h2{font-size:clamp(2.6rem,5vw,4.7rem);line-height:1;margin:0 0 20px;text-transform:uppercase}h3{font-size:2rem;margin:10px 0}p{line-height:1.7}.wrap{width:min(1180px,92%);margin:auto}.topbar{background:var(--navy);color:white;font-size:13px;text-align:center;padding:9px}.site-header{position:sticky;top:0;z-index:50;background:#fffaf0eF;backdrop-filter:blur(15px);box-shadow:0 3px 16px #002c4c1b}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-family:'Barlow Condensed';font-weight:900;font-size:31px;line-height:.83;text-transform:uppercase;color:#e53e31;text-shadow:2px 2px #092c49}.brand small{display:block;color:#092c49;font-size:18px;letter-spacing:2px;margin-top:5px}.navlinks{display:flex;align-items:center;gap:25px}.navlinks a{font-weight:800;text-transform:uppercase;font-size:17px}.navlinks a:hover{color:var(--coral)}.btn{display:inline-block;background:var(--orange);border:3px solid var(--navy);box-shadow:5px 5px 0 var(--navy);border-radius:9px;padding:13px 25px;font-size:20px;font-weight:900;text-transform:uppercase;transition:.2s}.btn:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--navy)}.btn.blue{background:var(--aqua)}.hero{background:linear-gradient(90deg,rgba(0,47,79,.94),rgba(0,62,98,.65) 43%,rgba(0,35,63,.05)),url('assets/hero-art.png') center/cover;min-height:670px;color:white;display:flex;align-items:center;position:relative}.hero .copy{max-width:650px;padding:90px 0}.eyebrow{display:inline-block;background:var(--orange);color:var(--navy);font-weight:900;padding:8px 15px;border-radius:5px;transform:rotate(-2deg);text-transform:uppercase}.hero p{font-size:20px;max-width:510px}.hero .btn{margin:18px 12px 0 0}.hero .btn.blue{background:white}.wave{height:16px;background:repeating-linear-gradient(90deg,var(--orange) 0 45px,var(--coral) 45px 90px,var(--aqua) 90px 135px)}section{padding:95px 0}.center{text-align:center}.lead{font-size:19px;max-width:720px;margin:0 auto 38px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.tile{background:white;border:3px solid var(--navy);border-radius:18px;overflow:hidden;box-shadow:7px 7px 0 var(--navy);transition:.25s}.tile:hover{transform:translateY(-7px)}.tile .art{min-height:175px;display:grid;place-items:center;font-size:95px;background:linear-gradient(145deg,#a9f4e8,#58bde7)}.tile:nth-child(2) .art{background:linear-gradient(145deg,#fce79d,#ffb957)}.tile:nth-child(3) .art{background:linear-gradient(145deg,#b8e2ff,#82d8cb)}.tile .inner{padding:25px}.tile p{margin-bottom:0}.blue-section{background:#0876b6;color:white}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}.photo{border:8px solid white;border-radius:16px;box-shadow:12px 12px 0 var(--navy);overflow:hidden;transform:rotate(-2deg)}.photo img{width:100%;height:410px;object-fit:cover;filter:saturate(1.2) contrast(1.09)}.map-preview{background:#fff1ce}.map-preview .photo img{height:600px;object-fit:contain;background:#007dbd}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.chip{background:#fff;border:2px solid var(--navy);padding:7px 14px;border-radius:50px;font-weight:900;color:var(--navy)}.story-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px}.story-gallery img{width:100%;height:265px;object-fit:cover;border:5px solid var(--navy);border-radius:15px;filter:saturate(1.15) contrast(1.08)}.story-gallery img:nth-child(2){transform:rotate(3deg)}.hours{background:var(--navy);color:white}.hours .split{align-items:start}.hours-list{background:white;color:var(--navy);border-radius:15px;padding:25px;border:4px solid var(--orange)}.hours-list div{display:flex;justify-content:space-between;border-bottom:1px dashed #9ab4bd;padding:9px 0;gap:12px}.hours-list div:last-child{border:0}.site-footer{background:#061e32;color:white;padding:40px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.menu-toggle{display:none;background:var(--orange);border:2px solid var(--navy);border-radius:8px;padding:9px 13px;font-size:23px}.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}.wp-content{padding:70px 0;min-height:50vh}.wp-content h1{font-size:4rem}@media(max-width:800px){.menu-toggle{display:block}.navlinks{display:none;position:absolute;left:0;right:0;top:78px;background:white;padding:25px;flex-direction:column;box-shadow:0 15px 20px #0002}.navlinks.open{display:flex}.hero{min-height:580px;background-position:60% center}.hero .copy{padding:80px 0}.hero p{font-size:17px}.grid,.split{grid-template-columns:1fr}.split{gap:35px}section{padding:65px 0}.photo img{height:300px}.map-preview .photo img{height:500px}.story-gallery img{height:185px}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* Illustrated gear catalog */
.gear-section{background:#fff0cf}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.brand-card{border:3px solid var(--navy);border-radius:17px;overflow:hidden;background:white;box-shadow:6px 6px 0 var(--navy);transition:transform .2s}.brand-card:hover{transform:translateY(-5px)}.brand-cartoon{height:150px;display:grid;place-items:center;font-size:85px;background:radial-gradient(circle at 70% 25%,#fff6a5,#70d9df 70%,#3c91ce);text-shadow:4px 5px 0 #082f4a33;filter:saturate(1.25)}.brand-card:nth-child(2n) .brand-cartoon{background:radial-gradient(circle at 70% 25%,#ffeb99,#ffad69 75%)}.brand-info{padding:18px}.brand-info h3{font-size:29px;margin:0 0 6px}.brand-info strong{font-size:13px;text-transform:uppercase;color:#0866aa}.brand-info p{font-size:14px;margin:9px 0 0}.stock-note{font-size:13px;max-width:760px;margin:35px auto 25px}.cartoon-art{position:relative;text-shadow:4px 5px #092c4940}.art-label{position:absolute;top:12px;right:12px;background:#ffca4b;border:2px solid #092c49;border-radius:9px;padding:5px 10px;font:bold 17px 'Barlow Condensed',sans-serif;text-shadow:none}@media(max-width:900px){.brand-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.brand-grid{grid-template-columns:1fr 1fr;gap:12px}.brand-cartoon{height:110px;font-size:65px}.brand-info{padding:12px}.brand-info h3{font-size:24px}.brand-info p{font-size:12px}}

/* Inventory ribbons */
.bait-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.bait-item .art,.brand-cartoon{position:relative;overflow:hidden}.availability{position:absolute;top:12px;left:10px;z-index:2;padding:7px 11px;border:2px solid #fff;border-radius:7px;color:#fff;font:900 16px 'Barlow Condensed',sans-serif;letter-spacing:.06em;text-shadow:none;box-shadow:0 3px 10px #0005;transform:rotate(-4deg)}.availability.available{background:#087a39}.availability.unavailable{background:#c52832}.brand-cartoon .availability{font-size:13px;top:8px;left:8px}@media(max-width:900px){.bait-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.bait-grid{grid-template-columns:1fr}.availability{font-size:15px}}

.product-illustration{display:block;width:100%;height:100%;object-fit:cover;filter:drop-shadow(0 4px 2px #1235)}.bait-item .art{padding:0!important}.brand-cartoon{font-size:initial!important}.availability{z-index:5}

.official-logo{width:124px;height:auto;max-height:110px;object-fit:contain}.site-header .nav{min-height:105px}.brand{display:block;flex-shrink:0}.product-illustration{object-fit:contain!important;padding:12px}.bait-item .art{min-height:195px}.brand-cartoon{height:170px}@media(max-width:800px){.official-logo{width:88px}.site-header .nav{min-height:85px}.navlinks{top:85px}}

/* A gentle single-fish jump above the hero water; no scripting required. */
.hero{overflow:hidden;isolation:isolate}
.hero .wrap{position:relative;z-index:2}
.jumping-fish{position:absolute;z-index:1;width:clamp(100px,15vw,190px);height:auto;right:18%;bottom:17%;pointer-events:none;transform-origin:50% 85%;animation:pats-fish-jump 7s ease-in-out infinite;filter:drop-shadow(0 6px 4px rgba(0,38,60,.28))}
.jumping-fish img{width:100%;height:auto;display:block}
@keyframes pats-fish-jump{0%,12%,49%,100%{transform:translate(0,80px) rotate(-35deg) scale(.85);opacity:0}17%{opacity:1}27%{transform:translate(-30px,-45px) rotate(-13deg) scale(1);opacity:1}34%{transform:translate(-54px,-115px) rotate(10deg) scale(1)}41%{transform:translate(-83px,-34px) rotate(52deg) scale(.94);opacity:1}48%{transform:translate(-98px,78px) rotate(75deg) scale(.85);opacity:0}}
@media(max-width:800px){.jumping-fish{right:5%;bottom:15%;width:110px;opacity:.85}}
@media(prefers-reduced-motion:reduce){.jumping-fish{animation:none;transform:translateY(-30px) rotate(-12deg);opacity:1}}

/* v1.3.3: highly visible, independent jumping fish above the header illustration */
.hero{overflow:hidden;isolation:isolate}
.hero .jumping-fish{display:block!important;visibility:visible!important;position:absolute;z-index:5;right:13%;bottom:20%;width:clamp(125px,17vw,235px);height:auto;pointer-events:none;opacity:1;transform-origin:center;animation:pats-fish-jump-visible 5.5s linear infinite;will-change:transform,opacity}
.hero .jumping-fish img{display:block;width:100%;height:auto;filter:drop-shadow(0 7px 3px rgba(0,25,40,.35))}
@keyframes pats-fish-jump-visible{0%,8%{transform:translate(45px,125px) rotate(-45deg) scale(.8);opacity:0}13%{opacity:1}26%{transform:translate(10px,-35px) rotate(-25deg) scale(1);opacity:1}38%{transform:translate(-40px,-145px) rotate(-4deg) scale(1.12);opacity:1}49%{transform:translate(-90px,-75px) rotate(32deg) scale(1.02);opacity:1}60%{transform:translate(-125px,135px) rotate(65deg) scale(.85);opacity:0}100%{transform:translate(-125px,135px) rotate(65deg) scale(.85);opacity:0}}
@media(max-width:800px){.hero .jumping-fish{right:4%;bottom:22%;width:130px}}
@media(prefers-reduced-motion:reduce){.hero .jumping-fish{animation:none;opacity:1;transform:translateY(-35px)}}

/* v1.3.5 — modern, accessible section transitions */
.pats-scroll-progress{position:fixed;left:0;top:0;height:4px;width:100%;background:linear-gradient(90deg,#ffbd42,#f15d37,#06b6c6);transform:scaleX(0);transform-origin:left center;z-index:9999;pointer-events:none}
.pats-section{position:relative;isolation:isolate}
.pats-section-divider::before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px;background:repeating-linear-gradient(110deg,rgba(255,255,255,.24) 0 28px,rgba(0,58,90,.12) 28px 56px);pointer-events:none}
.reveal{opacity:0;transform:translate3d(0,38px,0);filter:blur(5px);transition:opacity .78s cubic-bezier(.2,.7,.2,1),transform .78s cubic-bezier(.2,.7,.2,1),filter .78s ease;transition-delay:var(--stagger,0ms)}
.reveal.visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
.pats-section .photo img,.pats-section .story-gallery img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.pats-section .photo:hover img,.pats-section .story-gallery img:hover{transform:scale(1.035)}
.pats-section .tile,.pats-section .brand-card{transition:transform .32s cubic-bezier(.2,.7,.2,1),box-shadow .32s ease}
.pats-section .tile:hover,.pats-section .brand-card:hover{transform:translateY(-6px);box-shadow:9px 12px 0 var(--navy)}
@media(prefers-reduced-motion:reduce){.reveal,.reveal.visible{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}.pats-section .photo img,.pats-section .story-gallery img,.pats-section .tile,.pats-section .brand-card{transition:none!important}.pats-scroll-progress{display:none}}
