/* Passive Fishing — seriously unserious. Lodge-wall edition. */
:root{
  --ink:#0b1822;
  --ink-2:#13293a;
  --lake:#2e6f8e;
  --lake-deep:#174a63;
  --lake-soft:#9cc3d5;
  --sunset:#e8863a;
  --sunset-deep:#c96a22;
  --paper:#f4eddd;
  --paper-2:#ece1ca;
  --text:#2a2a24;
  --text-soft:#5d5c52;
  --tape:rgba(232,200,120,.55);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Source Serif 4',Georgia,serif;
  background:var(--paper);
  background-image:radial-gradient(rgba(140,110,60,.055) 1px,transparent 1px);
  background-size:9px 9px;
  color:var(--text);
  line-height:1.65;
  font-size:17px;
}
h1,h2,h3,.wordmark{font-family:'Fraunces',Georgia,serif;font-weight:700;line-height:1.15}
.hand{font-family:'Caveat',cursive;font-weight:600}
a{color:var(--lake)}
img{max-width:100%;display:block}
.wrap{max-width:1060px;margin:0 auto;padding:0 16px}

/* header */
header{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:50;border-bottom:3px solid var(--sunset)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;max-width:1060px;margin:0 auto}
.wordmark{color:var(--paper);text-decoration:none;font-size:1.25rem;letter-spacing:.04em;white-space:nowrap}
.wordmark .fish{color:var(--sunset)}
nav.links{display:flex;gap:4px;flex-wrap:wrap}
nav.links a{color:var(--lake-soft);text-decoration:none;font-family:'Fraunces',serif;font-size:.95rem;padding:6px 10px;border-radius:6px}
nav.links a:hover,nav.links a.here{color:var(--paper);background:var(--ink-2)}

/* hero — lake at dusk, layered */
.hero{
  position:relative;color:var(--paper);text-align:center;padding:64px 16px 120px;overflow:hidden;
  background:
    radial-gradient(ellipse 90% 55% at 50% 108%, rgba(232,134,58,.35), transparent 60%),
    radial-gradient(ellipse 60% 40% at 50% 115%, rgba(232,134,58,.5), transparent 55%),
    linear-gradient(180deg, #081219 0%, var(--ink) 34%, var(--ink-2) 62%, var(--lake-deep) 100%);
}
.hero img.logo{width:min(430px,80vw);margin:0 auto 6px;filter:drop-shadow(0 6px 24px rgba(0,0,0,.45))}
.hero h1{font-size:clamp(1.7rem,4.6vw,2.7rem);margin:10px auto 14px;max-width:720px}
.hero p.sub{color:var(--lake-soft);max-width:580px;margin:0 auto 30px;font-size:1.07rem}
.hero .cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;z-index:2}
.hero .hand-note{color:#f2cf9a;font-size:1.35rem;transform:rotate(-2deg);display:inline-block;margin-bottom:4px}
.hero .waveband{position:absolute;left:0;right:0;bottom:-2px;width:100%;height:90px;z-index:1}

.btn{display:inline-block;font-family:'Fraunces',serif;font-weight:700;text-decoration:none;padding:12px 22px;border-radius:999px;font-size:1rem}
.btn-sunset{background:var(--sunset);color:#fff;box-shadow:0 4px 16px rgba(232,134,58,.35)}
.btn-sunset:hover{background:var(--sunset-deep)}
.btn-ghost{color:var(--paper);border:2px solid var(--lake)}
.btn-ghost:hover{background:rgba(46,111,142,.25)}

/* sections */
section{padding:60px 0}
section.alt{background:var(--paper-2)}
section.dark{background:var(--ink);color:var(--paper)}
section.dark h2{color:var(--paper)}
section.dark .lede{color:var(--lake-soft)}
.kicker{font-family:'Fraunces',serif;color:var(--sunset-deep);text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:700;margin-bottom:8px}
section.dark .kicker{color:var(--sunset)}
h2{font-size:clamp(1.5rem,3.6vw,2.15rem);margin-bottom:14px;color:var(--ink)}
.lede{font-size:1.1rem;color:var(--text-soft);max-width:660px}

/* polaroids & lodge wall */
.polaroid{
  background:#fcfaf4;padding:12px 12px 44px;box-shadow:0 8px 24px rgba(31,26,12,.25);
  position:relative;display:inline-block;max-width:100%;
}
.polaroid img{display:block}
.polaroid .pcap{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-family:'Caveat',cursive;font-size:1.25rem;color:#3c382f}
.polaroid::before{
  content:"";position:absolute;top:-12px;left:50%;transform:translateX(-50%) rotate(-3deg);
  width:96px;height:26px;background:var(--tape);border-left:1px dashed rgba(120,90,30,.25);border-right:1px dashed rgba(120,90,30,.25);
}
.tilt-l{transform:rotate(-2.4deg)}
.tilt-r{transform:rotate(2deg)}
.tilt-l:hover,.tilt-r:hover{transform:rotate(0);transition:transform .25s ease}
.wall{display:flex;gap:34px;flex-wrap:wrap;align-items:flex-start;justify-content:center;margin-top:36px}
.wall .polaroid{flex:1 1 260px;max-width:360px}

/* split */
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
@media(max-width:760px){.split{grid-template-columns:1fr}}

/* rules */
.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:28px}
.rule{background:#fff;border:1px solid #ddd3bf;border-radius:4px;padding:20px;box-shadow:2px 3px 0 rgba(31,26,12,.12)}
.rule .num{font-family:'Fraunces',serif;font-size:1.6rem;color:var(--sunset);font-weight:900}
.rule h3{font-size:1.05rem;margin:6px 0 6px;color:var(--ink)}
.rule p{font-size:.95rem;color:var(--text-soft)}

/* product grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:26px;margin-top:30px}
.card{
  background:#fcfaf4;border:1px solid #e0d6c0;overflow:visible;text-decoration:none;color:var(--text);
  transition:transform .18s ease,box-shadow .18s ease;display:flex;flex-direction:column;
  box-shadow:0 6px 18px rgba(31,26,12,.14);position:relative;padding:10px 10px 0;
}
.card:nth-child(odd){transform:rotate(-.8deg)}
.card:nth-child(even){transform:rotate(.7deg)}
.card:hover{transform:rotate(0) translateY(-4px);box-shadow:0 14px 30px rgba(31,26,12,.22);z-index:2}
.card .ph{aspect-ratio:1/1;background:#fff;display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid #eee5d2}
.card .ph img{max-height:100%;object-fit:contain}
.card .meta{padding:12px 6px 14px;text-align:center}
.card .meta h3{font-size:1rem;color:var(--ink);margin-bottom:2px}
.card .meta .price{color:var(--sunset-deep);font-family:'Caveat',cursive;font-size:1.3rem;font-weight:700}

/* stamp badge */
.stamp{
  display:inline-block;font-family:'Fraunces',serif;font-weight:900;text-transform:uppercase;
  color:var(--sunset-deep);border:3px double var(--sunset-deep);border-radius:8px;
  padding:4px 12px;letter-spacing:.1em;font-size:.72rem;transform:rotate(-4deg);opacity:.85;
}

/* story prose */
.prose{max-width:690px}
.prose p{margin-bottom:1.1em}
.prose h2{margin-top:1.6em}
.prose blockquote{border-left:4px solid var(--sunset);padding:6px 0 6px 18px;margin:1.4em 0;font-style:italic;color:var(--ink);font-size:1.12rem;background:rgba(232,134,58,.06)}
.chapter-tag{display:inline-block;background:var(--ink);color:var(--lake-soft);font-family:'Fraunces',serif;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:10px}

/* brief app */
.brief-search{display:flex;gap:10px;margin:26px 0 8px;max-width:560px}
.brief-search input{
  flex:1;font:inherit;padding:13px 16px;border:2px solid var(--ink);border-radius:10px;background:#fff;
}
.brief-search input:focus{outline:3px solid rgba(232,134,58,.4)}
.lake-list{list-style:none;max-width:560px;margin-top:10px}
.lake-list li{margin-bottom:8px}
.lake-list button{
  width:100%;text-align:left;font:inherit;background:#fff;border:1px solid #d8cdb4;border-radius:10px;
  padding:12px 16px;cursor:pointer;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;
}
.lake-list button:hover{border-color:var(--sunset);box-shadow:0 4px 12px rgba(31,26,12,.12)}
.lake-list .lname{font-family:'Fraunces',serif;font-weight:700;color:var(--ink)}
.lake-list .lmeta{color:var(--text-soft);font-size:.9rem}
.brief-out{max-width:720px;margin-top:34px}
.brief-out h2{font-size:1.35rem;color:var(--ink);margin:1.5em 0 .4em;border-bottom:2px solid var(--sunset);display:inline-block;padding-bottom:2px}
.brief-out p{margin-bottom:.9em}
.brief-out ul{padding-left:22px;margin-bottom:.9em}
.loading{font-family:'Caveat',cursive;font-size:1.5rem;color:var(--sunset-deep)}
.spin{display:inline-block;animation:bob 1.2s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-7px) rotate(6deg)}}

/* scorecard */
.score{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}
@media(max-width:640px){.score{grid-template-columns:1fr}}
.score .col{border-radius:4px;padding:18px 20px;box-shadow:2px 3px 0 rgba(31,26,12,.12)}
.score .hits{background:#e9f2e5;border:1px solid #c6dcbc}
.score .misses{background:#f7e9e2;border:1px solid #e4c8b8}
.score h3{font-size:1rem;margin-bottom:10px}
.score ul{padding-left:18px;font-size:.95rem}
.score li{margin-bottom:6px}
.stat-row{display:flex;gap:16px;flex-wrap:wrap;margin:22px 0}
.stat{background:var(--ink);color:var(--paper);border-radius:4px;padding:16px 22px;min-width:140px;transform:rotate(-1deg);box-shadow:3px 4px 0 rgba(232,134,58,.6)}
.stat:nth-child(2){transform:rotate(1.2deg)}
.stat .n{font-family:'Fraunces',serif;font-size:1.7rem;color:var(--sunset)}
.stat .l{font-size:.78rem;color:var(--lake-soft);text-transform:uppercase;letter-spacing:.08em}

/* footer */
footer{background:var(--ink);color:var(--lake-soft);padding:46px 16px;margin-top:40px;border-top:3px solid var(--sunset);position:relative;overflow:hidden}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;position:relative;z-index:1}
footer .motto{font-family:'Fraunces',serif;color:var(--paper)}
footer a{color:var(--lake-soft)}
footer .fine{font-size:.8rem;margin-top:6px}
footer .ghost-fish{position:absolute;right:-30px;bottom:-40px;width:280px;opacity:.07;transform:rotate(-8deg)}
