:root{--ink:#17100c;--ink2:#221811;--bronze:#b98a46;--bronze2:#d9b270;--green:#3f6b3a;--plum:#6d3a73;--cream:#f4ead6;--cream2:#e9dcc0;--muted:#b9ad97}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--cream);font-family:'Inter',system-ui,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:var(--bronze2)}
h1,h2,h3,.serif{font-family:'Cinzel','Cormorant Garamond',serif;font-weight:600;letter-spacing:.04em;line-height:1.15;margin:0}
.wrap{width:min(1120px,92%);margin:0 auto}
.top{position:sticky;top:0;z-index:60}.banner{background:linear-gradient(90deg,#2a1d12,#3b2a18 50%,#2a1d12);border-bottom:1px solid var(--bronze);color:var(--cream);text-align:center;font-size:.8rem;line-height:1.2;padding:.4rem 1rem;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.banner span:before{content:'\00b7';margin:0 .6rem;color:var(--bronze)}
.banner b{font-family:'Cinzel',serif;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze2)}
.banner .cone{margin-right:.4rem}
header.nav{background:rgba(23,16,12,.92);backdrop-filter:blur(8px);border-bottom:1px solid #3a2b1c}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:.6rem 0;gap:1rem}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--cream)}
.brand img{width:40px;height:40px;aspect-ratio:1/1;object-fit:contain;flex:none}.brand span{font-family:'Cinzel',serif;font-size:1.05rem;letter-spacing:.1em}
nav a{color:var(--cream);text-decoration:none;margin-left:1.4rem;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase}
nav a:hover{color:var(--bronze2)}
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 40%,rgba(109,58,115,.28),transparent 60%),radial-gradient(ellipse at 15% 90%,rgba(63,107,58,.28),transparent 55%),var(--ink2);padding:2.75rem 0 3rem}
.hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:2.5rem;align-items:center}
.eyebrow{color:var(--bronze2);text-transform:uppercase;letter-spacing:.3em;font-size:.78rem;margin-bottom:1rem}
.hero h1{font-size:clamp(2rem,4.4vw,3.3rem);margin-bottom:1rem}
.hero p{color:var(--cream2);max-width:34rem;font-size:1.05rem}
.badge{display:inline-block;border:1px solid var(--bronze);color:var(--bronze2);padding:.35rem .9rem;border-radius:999px;font-size:.8rem;margin:.8rem 0 1.2rem;background:rgba(185,138,70,.1)}
.btn{display:inline-block;background:linear-gradient(180deg,var(--bronze2),var(--bronze));color:#1b120a;text-decoration:none;padding:.8rem 1.6rem;border-radius:3px;font-family:'Cinzel',serif;letter-spacing:.12em;font-size:.85rem;font-weight:700;border:0;cursor:pointer}
.btn.ghost{background:transparent;color:var(--cream);border:1px solid var(--bronze);margin-left:.6rem}
.btn[disabled],.btn.soon{background:#3a2e22;color:var(--muted);cursor:not-allowed;border:1px dashed #6b5a40}
.logos{position:relative;display:flex;justify-content:center;max-width:380px;width:100%;margin-left:auto}
.logos .main{width:min(340px,100%);height:auto;aspect-ratio:1/1;object-fit:contain;filter:drop-shadow(0 20px 40px rgba(0,0,0,.6))}
.logos .second{position:absolute;width:34%;height:auto;aspect-ratio:1/1;object-fit:contain;right:0;bottom:-4%;filter:drop-shadow(0 12px 24px rgba(0,0,0,.6))}
section{padding:4.5rem 0}
.sec-title{text-align:center;margin-bottom:2.5rem}
.sec-title h2{font-size:clamp(1.7rem,3.5vw,2.4rem)}
.sec-title p{color:var(--muted);margin:.7rem auto 0;max-width:36rem}
.rule{width:90px;height:2px;background:linear-gradient(90deg,var(--green),var(--bronze),var(--plum));margin:1rem auto 0;border-radius:2px}
.filters{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:2rem}
.chip{background:transparent;color:var(--cream);border:1px solid #5b4630;padding:.45rem 1.1rem;border-radius:999px;cursor:pointer;font:inherit;font-size:.85rem;letter-spacing:.05em}
.chip.on,.chip:hover{background:var(--bronze);color:#1b120a;border-color:var(--bronze)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.6rem}
.card{background:var(--ink2);border:1px solid #3a2b1c;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}
.card:hover{transform:translateY(-3px);border-color:var(--bronze)}
.card .ph{aspect-ratio:1/1;background:#fff;overflow:hidden;display:block}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card .body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.45rem;flex:1}
.card .cat{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze2)}
.card h3{font-size:1.02rem}.card h3 a{color:var(--cream);text-decoration:none}
.card .desc{color:var(--muted);font-size:.86rem;flex:1}
.card .row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:.5rem}
.price{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--cream);font-weight:700}
.card .btn{padding:.55rem 1rem;font-size:.72rem}
.note{text-align:center;color:var(--muted);font-size:.8rem;margin-top:1.6rem}
.about{background:linear-gradient(180deg,var(--ink),var(--ink2))}
.about .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:center}
.about img{width:min(340px,70vw);height:auto;aspect-ratio:1/1;object-fit:contain;margin:auto;filter:drop-shadow(0 16px 30px rgba(0,0,0,.6))}
.about p{color:var(--cream2)}
.contact{text-align:center}
.contact .box{max-width:560px;margin:0 auto;border:1px solid #3a2b1c;background:var(--ink2);padding:2rem;border-radius:6px}
footer{border-top:1px solid #3a2b1c;padding:2rem 0;text-align:center;color:var(--muted);font-size:.82rem}
footer img{width:56px;height:56px;aspect-ratio:1/1;object-fit:contain;margin:0 auto .8rem}
.pd{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:3rem 0 5rem;align-items:start}
.pd .main{background:#fff;border-radius:6px;overflow:hidden}
.pd .thumbs{display:flex;gap:.6rem;margin-top:.8rem}.pd .thumbs img{width:76px;height:76px;object-fit:cover;border:1px solid #5b4630;border-radius:4px;cursor:pointer;background:#fff}
.pd h1{font-size:2rem;margin:.4rem 0 .8rem}.pd .price{font-size:2rem}
.pd p{color:var(--cream2)}
.crumbs{padding:1.5rem 0 0;font-size:.85rem;color:var(--muted)}
@media(max-width:820px){.hero .wrap,.about .wrap,.pd{grid-template-columns:1fr}.hero{padding:1.5rem 0 2rem}.hero .wrap{gap:1.4rem}.logos{order:-1;margin:0 auto;max-width:240px}.logos .main{width:100%}nav a{margin-left:.9rem;font-size:.78rem}.brand span{font-size:.9rem}.banner{font-size:.72rem;padding:.35rem .6rem}.banner b{letter-spacing:.08em}.banner span:before{margin:0 .4rem}section{padding:3rem 0}.grid{grid-template-columns:repeat(2,1fr);gap:1rem}.card .row{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.brand span{display:none}.grid{gap:.7rem}.card .body{padding:.8rem}}

.price-note{font-size:.78rem;font-style:italic;color:var(--muted);letter-spacing:.02em}.pd-price .price-note{font-size:.95rem}

/* Share Your Shot */
nav a .short{display:none}
.teaser{padding:3rem 0}.teaser-box{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;border:1px solid var(--bronze);border-radius:8px;padding:2rem 2.2rem;background:radial-gradient(ellipse at 90% 20%,rgba(63,107,58,.3),transparent 60%),radial-gradient(ellipse at 0% 100%,rgba(109,58,115,.25),transparent 55%),var(--ink2)}
.teaser h2{font-size:clamp(1.4rem,3vw,2rem);margin-bottom:.7rem}.teaser p{color:var(--cream2);max-width:38rem;margin:0 0 1.2rem}.teaser .eyebrow{margin-bottom:.6rem}
.teaser img{width:150px;height:auto;aspect-ratio:1/1;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(0,0,0,.6))}
.share-hero{padding:2.6rem 0 2.4rem;text-align:center;background:radial-gradient(ellipse at 80% 30%,rgba(109,58,115,.25),transparent 60%),radial-gradient(ellipse at 10% 90%,rgba(63,107,58,.28),transparent 55%),var(--ink2)}
.share-hero h1{font-size:clamp(2rem,4.4vw,3.1rem);margin-bottom:1rem}.share-hero p{color:var(--cream2);max-width:40rem;margin:0 auto;font-size:1.05rem}
.ideas{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1.3rem}.ideas span{border:1px solid var(--bronze);color:var(--bronze2);border-radius:999px;padding:.3rem .9rem;font-size:.82rem;background:rgba(185,138,70,.08)}
.share-form{max-width:720px;margin:0 auto;border:1px solid #3a2b1c;background:var(--ink2);border-radius:8px;padding:2rem}
.share-form h2{font-size:1.5rem;margin-bottom:.4rem}.share-form .sub{color:var(--muted);font-size:.9rem;margin:0 0 1.4rem}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}
.field label{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bronze2)}.field label i{font-style:normal;color:var(--muted);text-transform:none;letter-spacing:.02em}
.field input[type=text],.field input[type=email],.field textarea{background:#120c08;color:var(--cream);border:1px solid #5b4630;border-radius:4px;padding:.7rem .8rem;font:inherit;width:100%}
.field input:focus,.field textarea:focus{outline:2px solid var(--bronze);outline-offset:1px}
.field textarea{min-height:160px;resize:vertical}.field .hint{font-size:.78rem;color:var(--muted)}
.field input[type=file]{color:var(--cream2);font:inherit;font-size:.9rem;border:1px dashed #6b5a40;border-radius:4px;padding:.9rem;background:#120c08;width:100%}
.hp{position:absolute!important;left:-5000px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;gap:.7rem;align-items:flex-start;margin:.4rem 0 1.2rem;color:var(--cream2);font-size:.9rem}.consent input{margin-top:.3rem;accent-color:var(--bronze);width:18px;height:18px;flex:none}
.progress{height:10px;background:#120c08;border:1px solid #5b4630;border-radius:999px;overflow:hidden;margin:.5rem 0}.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--bronze),var(--plum));transition:width .15s}
.status{font-size:.9rem;min-height:1.3rem;margin:.4rem 0 1rem;color:var(--cream2)}.status.err{color:#f0a08a}.status.ok{color:#a9d6a0}
.thanks{text-align:center;padding:1rem 0}.thanks h2{margin-bottom:.8rem}.thanks p{color:var(--cream2)}
.wall{background:linear-gradient(180deg,var(--ink),var(--ink2))}
.wall-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.6rem}
.wcard{background:var(--ink2);border:1px solid #3a2b1c;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.wcard video{width:100%;aspect-ratio:16/9;background:#000;display:block}
.wcard .body{padding:1.1rem 1.2rem 1.3rem}.wcard h3{font-size:1.1rem;margin-bottom:.3rem}
.wcard .by{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze2);margin-bottom:.6rem}
.wcard .story{color:var(--cream2);font-size:.92rem;white-space:pre-wrap;margin:0}
.empty{max-width:560px;margin:0 auto;text-align:center;border:1px dashed #6b5a40;border-radius:8px;padding:2rem;color:var(--cream2)}
.adm{padding:2rem 0 4rem}.adm h1{font-size:1.8rem;margin-bottom:1rem}.adm-bar{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:1.4rem}
.acard{border:1px solid #3a2b1c;background:var(--ink2);border-radius:6px;padding:1.1rem;margin-bottom:1.2rem;display:grid;grid-template-columns:minmax(0,360px) 1fr;gap:1.2rem}
.acard video{width:100%;background:#000;border-radius:4px}.acard .meta{font-size:.85rem;color:var(--muted)}.acard .meta b{color:var(--cream)}
.acard .story{white-space:pre-wrap;color:var(--cream2);font-size:.92rem;margin:.6rem 0}
.pill{display:inline-block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.15rem .7rem;border:1px solid #6b5a40}.pill.approved{border-color:#6fa466;color:#a9d6a0}.pill.hidden{border-color:#a56;color:#e9a}.pill.pending{border-color:var(--bronze);color:var(--bronze2)}
.acts{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.acts .btn{padding:.5rem 1rem;font-size:.72rem}.btn.danger{background:#7a2e22;color:#fff}
.login{max-width:380px;margin:3rem auto}
@media(max-width:820px){nav a .long{display:none}nav a .short{display:inline}nav a{margin-left:.7rem}.frow,.acard,.teaser-box{grid-template-columns:1fr}.teaser img{display:none}.share-form{padding:1.2rem}}
