/*
Theme Name: Teron Photo Child
Template: teronphoto-theme
Version: 2.0
*/

:root{
  --bg:#141110; --bg2:#1c1815; --card:#221d19;
  --cream:#f0e9dc; --cream-dim:#cfc6b6; --muted:#948a7b;
  --bronze:#d09a5a; --bronze-deep:#a9713a;
  --hair:rgba(240,233,220,.14);
  --serif:'Fraunces',Georgia,serif;
  --sans:'Karla',system-ui,sans-serif;
}
*{box-sizing:border-box}
body{
  background:var(--bg);color:var(--cream);font-family:var(--sans);line-height:1.65;
  margin:0;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--bronze);text-decoration:none;border-bottom:1px solid rgba(208,154,90,.35);transition:color .25s,border-color .25s}
a:hover{color:#e8b878;border-bottom-color:#e8b878}
::selection{background:var(--bronze);color:#171310}

/* ---------- site chrome ---------- */
.tp-nav{
  position:sticky;top:0;z-index:90;display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:16px clamp(20px,4vw,56px);
  background:rgba(20,17,16,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--hair);
}
.tp-brand{font-family:var(--serif);font-size:1.05rem;color:var(--cream);border:0}
.tp-brand em{font-style:italic;color:var(--bronze)}
.tp-nav ul{display:flex;gap:32px;list-style:none;margin:0;padding:0}
.tp-nav ul a{
  font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--cream-dim);border:0;font-weight:500;
}
.tp-nav ul a:hover{color:var(--bronze)}
.tp-book{
  font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;
  border:1px solid var(--bronze);color:var(--bronze);padding:10px 24px;border-radius:100px;
}
.tp-book:hover{background:var(--bronze);color:#171310}
@media(max-width:880px){.tp-nav ul{display:none}}

/* ---------- page shell ---------- */
.tp-main{padding:clamp(40px,6vw,80px) clamp(20px,4vw,56px) clamp(60px,8vw,110px)}
.tp-page{max-width:980px;margin:0 auto}
.tp-hero{position:relative;border-radius:14px;overflow:hidden;margin-bottom:clamp(40px,6vw,64px);box-shadow:0 40px 90px rgba(0,0,0,.5)}
.tp-hero img{width:100%;height:clamp(280px,42vw,520px);object-fit:cover}
.tp-hero-in{
  position:absolute;inset:auto 0 0 0;padding:clamp(24px,4vw,52px);
  background:linear-gradient(180deg,transparent,rgba(12,10,9,.92));
}
.tp-hero-in h1{
  font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,4.4vw,3.2rem);
  line-height:1.08;margin:0 0 14px;color:var(--cream);
}
.tp-hero-in h1 em{font-style:italic;color:var(--bronze)}
.tp-lead{margin:0;max-width:62ch;color:var(--cream-dim);font-weight:300;font-size:1.02rem}
.tp-page h2{
  font-family:var(--serif);font-weight:300;font-size:clamp(1.4rem,3vw,2.1rem);
  margin:clamp(40px,6vw,64px) 0 6px;color:var(--cream);
}
.tp-page h2::after{content:'';display:block;width:56px;height:1px;background:var(--bronze);margin-top:16px}
.tp-price{
  display:flex;justify-content:space-between;align-items:baseline;gap:clamp(18px,4vw,48px);
  padding:26px 0;border-bottom:1px solid var(--hair);
}
.tp-price:first-of-type{border-top:1px solid var(--hair)}
.tp-name{font-family:var(--serif);font-size:1.2rem;display:block;margin-bottom:6px;color:var(--cream)}
.tp-desc{color:var(--muted);font-size:.94rem;font-weight:300;max-width:56ch;display:block;margin:0}
.tp-amount{font-family:var(--serif);font-size:1.15rem;color:var(--bronze);white-space:nowrap}
.tp-note{
  margin-top:clamp(36px,5vw,56px);padding:24px 26px;border-left:2px solid var(--bronze);
  background:rgba(208,154,90,.06);border-radius:0 10px 10px 0;color:var(--muted);font-size:.9rem;font-weight:300;
}
.tp-contact{margin-top:clamp(40px,6vw,64px);text-align:center;border-top:1px solid var(--hair);padding-top:clamp(36px,5vw,56px)}
.tp-contact p{color:var(--cream-dim);margin:0 0 18px;font-weight:300}
.tp-mail{
  display:inline-block;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  background:var(--bronze);color:#171310;padding:18px 44px;border-radius:100px;border:0;
  box-shadow:0 14px 40px rgba(208,154,90,.3);
}
.tp-mail:hover{color:#171310;transform:translateY(-2px);box-shadow:0 20px 52px rgba(208,154,90,.45)}
.tp-tel{display:block;margin-top:22px;font-family:var(--serif);font-size:1.25rem;color:var(--bronze);border:0}
.tp-sig{margin-top:22px;font-size:.86rem;color:var(--muted)}
.tp-badge{margin-top:14px;font-size:.86rem;color:var(--muted);display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}
.tp-badge img{height:30px;width:auto}
.tp-foot{border-top:1px solid var(--hair);padding:30px clamp(20px,4vw,56px);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.72rem;letter-spacing:.14em;color:var(--muted)}
.tp-foot .f-name{font-family:var(--serif);font-size:1rem;color:var(--cream);letter-spacing:0}
.tp-foot a{border:0;color:var(--muted)}
.tp-foot a:hover{color:var(--bronze)}
@media(max-width:620px){
  .tp-price{flex-direction:column;gap:8px;align-items:flex-start}
}
