@font-face{font-family:"Typewriter";src:url(../fonts/SimplonMono-Regular-WebXL.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Typewriter";src:url(../fonts/SimplonMono-Medium-WebXL.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Paris";src:url(../fonts/NewParisHeadline-Bold-WebXL.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"ParisText";src:url(../fonts/NewParisText-Book-WebXL.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"ParisText";src:url(../fonts/NewParisText-BookItalic-WebXL.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}

:root{--build:"v2";--wall:#2a1c18;--paper-l:#f4ead7;--paper-d:#e6d6b8;--ink-l:#2b2320;--rose:#c2186b;--brass:#b08a4a}
.parlour{background:var(--wall);color:var(--paper-l);position:relative;overflow:hidden}
.parlour::before{content:"";position:fixed;inset:0;background:url(../img/peanutpie/letters/room.jpg) center/cover;filter:blur(6px) brightness(.32) saturate(.8);transform:scale(1.06);z-index:0}
.parlour > *{position:relative;z-index:1}
.paper{background:var(--paper-l);color:var(--ink-l);box-shadow:0 30px 50px -28px rgba(0,0,0,.8),0 2px 0 rgba(0,0,0,.08);position:relative}
.paper::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 30% 20%,rgba(255,255,255,.35),rgba(0,0,0,0) 60%),radial-gradient(100% 100% at 100% 100%,rgba(120,80,30,.14),rgba(0,0,0,0) 55%)}

/*1*/
.pp-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,70px);align-items:center;padding:clamp(40px,6vw,90px) var(--g) clamp(30px,4vw,60px);max-width:1440px;margin:0 auto}
.frame{padding:clamp(12px,1.6vw,22px);background:linear-gradient(135deg,#6b4b22,#caa35a 30%,#7c5825 55%,#d9b56c 80%,#6b4b22);box-shadow:0 30px 60px -30px #000,inset 0 0 0 2px rgba(0,0,0,.35)}
.frame .kb{height:auto;aspect-ratio:3/2;min-height:0;box-shadow:inset 0 0 0 3px #1c130a}
.frame .kb::after{background:radial-gradient(ellipse at center,rgba(0,0,0,0) 55%,rgba(0,0,0,.5) 100%)}
.frame .kb .slide img{filter:sepia(.18) saturate(.9)}
.titlecard{text-align:center}
.titlecard .presents{font:500 13px/1 "Typewriter",monospace;letter-spacing:.3em;text-transform:uppercase;color:var(--brass)}
.titlecard .bill{margin:0 auto;max-width:620px;transform:rotate(-1.5deg);box-shadow:0 30px 50px -24px #000;border:1px solid rgba(0,0,0,.25)}
.titlecard .bill img{width:100%;height:auto}
.titlecard .when{margin-top:26px;font:400 italic 20px/1.4 "ParisText",Georgia,serif;color:#e9d9bd}

/*2*/
.telegram{max-width:760px;margin:clamp(20px,4vw,50px) auto;padding:28px clamp(18px,3vw,40px) 30px;background:#efe2b8;transform:rotate(-1.2deg)}
.telegram .tg-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--ink-l);padding-bottom:10px;margin-bottom:18px;font:700 clamp(22px,2.4vw,32px)/1 "Paris",Georgia,serif;letter-spacing:.06em}
.telegram .tg-head span{font:500 12px/1 "Typewriter",monospace;letter-spacing:.14em}
.telegram .strip{display:inline;background:#fbf5de;padding:3px 6px;font:500 clamp(14px,1.35vw,17px)/2.1 "Typewriter",monospace;letter-spacing:.06em;text-transform:uppercase;box-decoration-break:clone;-webkit-box-decoration-break:clone;box-shadow:0 1px 0 rgba(0,0,0,.12)}

/*3*/
.desk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(24px,4vw,70px);align-items:start;padding:clamp(30px,5vw,80px) var(--g);max-width:1340px;margin:0 auto}
.note{padding:clamp(28px,3vw,44px);transform:rotate(1.4deg);background:repeating-linear-gradient(transparent 0 33px,rgba(70,90,140,.22) 33px 34px),var(--paper-l);background-position:0 18px}
.note p{font:400 italic clamp(20px,1.8vw,25px)/34px "Sunrise",Georgia,serif}
.note .from{margin-top:18px;text-align:right;font-size:17px}
.typed{padding:clamp(28px,3.4vw,52px)}
.typed p{font:400 15.5px/1.75 "Typewriter",monospace}
.typed p + p{margin-top:1.2em}
.typed .re{font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.poster-pin{margin-top:34px;transform:rotate(-2deg);box-shadow:0 30px 50px -24px #000;border:8px solid #f4ead7}

/*4*/
.programme{max-width:1180px;margin:clamp(20px,4vw,50px) auto;padding:clamp(28px,4vw,60px) clamp(18px,4vw,60px)}
.programme h2{text-align:center;font:700 clamp(40px,5vw,72px)/1 "Paris",Georgia,serif;letter-spacing:.02em}
.programme .rule{height:0;border-top:3px double var(--ink-l);margin:14px auto 30px;max-width:420px}
.players{display:grid;grid-template-columns:repeat(5,1fr);gap:28px 18px}
.snap{text-align:center}
.snap .pic{background:#fff;padding:8px 8px 24px;box-shadow:0 10px 20px -12px rgba(0,0,0,.6);transform:rotate(var(--r,0deg))}
.snap .pic img{width:100%;aspect-ratio:1/1;object-fit:cover;filter:grayscale(1) sepia(.25) contrast(1.05)}
.snap .pic .none{aspect-ratio:1/1;background:#d9ccb3;display:flex;align-items:center;justify-content:center;font:700 38px/1 "Paris",Georgia,serif;color:#a8977a}
.snap h3{margin-top:12px;font:700 19px/1.1 "Paris",Georgia,serif}
.snap p{font:400 italic 15px/1.3 "ParisText",Georgia,serif;color:#5a4a40;margin-top:3px}
.crewlist{margin-top:40px;border-top:1px solid rgba(43,35,32,.3);padding-top:22px;display:flex;justify-content:center;gap:10px 40px;flex-wrap:wrap;font:400 15px/1.6 "Typewriter",monospace}
.crewlist b{font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-right:8px}
.crewlist a{text-decoration-color:var(--rose)}

/*5*/
.clippings{max-width:1300px;margin:0 auto;padding:clamp(30px,5vw,80px) var(--g);display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.clip{background:#ece3cf;color:#1d1916;padding:18px 18px 20px;transform:rotate(var(--r,0deg));clip-path:polygon(0 2%,6% 0,15% 2%,27% 0,40% 1.5%,55% 0,70% 2%,84% 0,100% 1.5%,99% 30%,100% 62%,98.5% 100%,85% 98%,70% 100%,52% 98.5%,35% 100%,20% 98%,5% 100%,0 97%,1.5% 64%,0 33%)}
.clip small{display:block;font:700 11px/1 "Paris",Georgia,serif;letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid #1d1916;padding-bottom:7px;margin-bottom:10px}
.clip p{font:400 italic 19px/1.3 "ParisText",Georgia,serif}
.sect-title{text-align:center;font:500 13px/1 "Typewriter",monospace;letter-spacing:.3em;text-transform:uppercase;color:var(--brass);padding-top:clamp(30px,5vw,70px)}

/*8*/
.tv-wrap{min-width:0}
.titlecard .presents{margin-bottom:18px;font-weight:500}
.tv{display:grid;grid-template-columns:minmax(0,1fr) clamp(70px,11vw,130px);gap:clamp(12px,2vw,24px);padding:clamp(16px,2.4vw,30px);border-radius:26px;background:repeating-linear-gradient(92deg,rgba(0,0,0,.06) 0 3px,rgba(255,255,255,.03) 3px 9px),linear-gradient(160deg,#8a5a34,#5b3719 55%,#3f2610);box-shadow:inset 0 2px 0 rgba(255,255,255,.18),inset 0 -6px 14px rgba(0,0,0,.4),0 40px 60px -30px #000}
.tv-screen{position:relative;aspect-ratio:16/9;border-radius:22px/30px;overflow:hidden;background:#0c0b0a;box-shadow:0 0 0 clamp(6px,1vw,12px) #1b120a,0 0 0 calc(clamp(6px,1vw,12px) + 3px) #b08a4a,inset 0 0 40px rgba(0,0,0,.9)}
.tv-screen::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at 50% 45%,rgba(255,255,255,.07),rgba(0,0,0,0) 60%,rgba(0,0,0,.35) 100%)}
.tv-screen iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tv-panel{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:6px 0}
.grille{width:100%;flex:1;margin-bottom:18px;border-radius:8px;background:repeating-linear-gradient(0deg,#2a1a0c 0 3px,#8a6a3a 3px 5px);box-shadow:inset 0 0 10px rgba(0,0,0,.6)}
.knob{width:clamp(34px,5vw,56px);aspect-ratio:1;border-radius:50%;margin-top:12px;background:radial-gradient(circle at 35% 30%,#f0d9a0,#b08a4a 45%,#5a3d18 100%);box-shadow:0 4px 8px rgba(0,0,0,.6)}
.tv-legs{display:flex;justify-content:space-between;padding:0 12%}
.tv-legs span{width:14px;height:34px;background:linear-gradient(90deg,#3f2610,#6b4523);transform:skewX(-8deg)}
.tv-legs span + span{transform:skewX(8deg)}

/*6*/
.cards{max-width:1200px;margin:0 auto;padding:24px var(--g) clamp(40px,6vw,90px);display:flex;flex-wrap:wrap;gap:16px;justify-content:center}
.cards a{display:block;background:var(--paper-l);color:var(--ink-l);text-decoration:none;padding:16px 22px;min-width:220px;text-align:center;box-shadow:0 12px 20px -14px #000;border:1px solid rgba(0,0,0,.08);transition:transform .2s}
.cards a:hover{transform:translateY(-4px) rotate(-1deg)}
.cards a b{display:block;font:700 18px/1.1 "Paris",Georgia,serif}
.cards a span{display:block;font:400 italic 14px/1.3 "ParisText",Georgia,serif;color:#6a5a4e;margin-top:4px}
.back{display:block;text-align:center;padding:22px var(--g) 40px;font:500 14px/1.4 "Typewriter",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}
.back a{color:var(--paper-l)}
.parlour .credit{font-size:12px}

/*7*/
@media (max-width:900px){
  .pp-hero,.desk{grid-template-columns:1fr}
  .titlecard{order:-1}
  .players{grid-template-columns:repeat(3,1fr)}
  .clippings{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .tv{grid-template-columns:1fr;border-radius:18px}
  .tv-panel{flex-direction:row;padding:0;gap:14px}
  .grille{height:26px;flex:1;margin:0}
  .knob{margin:0}
  .players{grid-template-columns:repeat(2,1fr)}
  .clippings{grid-template-columns:1fr}
  .telegram{transform:rotate(-.6deg)}
  .note{transform:rotate(.6deg)}
  .cards a{min-width:0;width:100%}
}
