/*
Theme Name: What Remains V4.1
Theme URI: https://madebywhatremains.com
Author: What Remains
Description: A custom editorial block theme for What Remains. Minimal, image-led, and deliberately unlike a standard portfolio/blog theme.
Version: 4.1.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: what-remains-v4-1
*/

:root{
  --wr-black:#0b0b0b;
  --wr-black-2:#111111;
  --wr-ink:#f2f0ea;
  --wr-muted:#9e9b93;
  --wr-line:rgba(242,240,234,.15);
  --wr-rust:#b64935;
  --wr-pad:clamp(22px,4vw,70px);
  --wr-max:1600px;
}

html{scroll-behavior:smooth;background:var(--wr-black)}
body{margin:0;background:var(--wr-black);color:var(--wr-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:inherit;text-decoration:none}
a:hover{color:var(--wr-ink)}
::selection{background:var(--wr-rust);color:#fff}

/* Remove default WP visual language */
.wp-site-blocks{padding:0!important}
.wp-block-post-content{margin:0!important}
.wp-block-group,.wp-block-cover,.wp-block-columns{margin-top:0;margin-bottom:0}
.wp-element-button,.wp-block-button__link{border-radius:0!important}

.wr-site-header{position:fixed;inset:0 0 auto 0;z-index:100;padding:24px var(--wr-pad);display:flex;align-items:flex-start;justify-content:space-between;mix-blend-mode:normal;pointer-events:none}
.wr-site-header>*{pointer-events:auto}
.wr-logo{width:132px;height:auto;display:block}
.wr-nav{display:flex;gap:25px;align-items:center;font:500 12px/1 Inter,ui-sans-serif,sans-serif;letter-spacing:.02em}
.wr-nav a{color:var(--wr-muted);transition:color .2s ease}
.wr-nav a:hover{color:var(--wr-ink)}

.wr-page{min-height:100vh;overflow:hidden}
.wr-frame{width:min(var(--wr-max),100%);margin-inline:auto;padding-inline:var(--wr-pad)}

.wr-hero{min-height:100svh;display:grid;align-items:end;padding:150px var(--wr-pad) 7vh;position:relative}
.wr-hero-copy{max-width:1180px}
.wr-kicker{font:500 11px/1.2 "IBM Plex Mono",monospace;color:var(--wr-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 26px}
.wr-hero h1{font-family:"Inter Tight",Inter,ui-sans-serif,sans-serif;font-size:clamp(58px,9.2vw,154px);line-height:.88;letter-spacing:-.065em;font-weight:650;margin:0;max-width:12ch}
.wr-hero .wr-subline{font-size:clamp(15px,1.35vw,20px);color:var(--wr-muted);max-width:560px;margin:32px 0 0}
.wr-downmark{position:absolute;right:var(--wr-pad);bottom:7vh;font:400 11px/1 "IBM Plex Mono",monospace;color:var(--wr-muted);writing-mode:vertical-rl;letter-spacing:.08em}

.wr-project{min-height:100svh;position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);border-top:1px solid var(--wr-line)}
.wr-project-alt{grid-template-columns:minmax(320px,.65fr) minmax(0,1.35fr)}
.wr-project-alt .wr-project-media{order:2}
.wr-project-alt .wr-project-copy{order:1}
.wr-project-media{min-height:100svh;background:#171717;position:relative;overflow:hidden;margin:0!important}
.wr-project-media img,.wr-project-media video{width:100%!important;height:100%!important;min-height:100svh;object-fit:cover;display:block}
.wr-project-media .components-resizable-box__container{height:100%!important}
.wr-project-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(40px,6vw,92px) var(--wr-pad);background:var(--wr-black)}
.wr-project-index{font:400 10px/1 "IBM Plex Mono",monospace;color:var(--wr-rust);letter-spacing:.08em;margin-bottom:24px}
.wr-project h2{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(42px,5.6vw,88px);line-height:.92;letter-spacing:-.055em;font-weight:620;margin:0 0 22px}
.wr-project p{color:var(--wr-muted);max-width:430px;margin:0 0 28px;font-size:clamp(16px,1.4vw,19px)}
.wr-text-link{display:inline-flex;gap:12px;align-items:center;width:max-content;font-weight:600;font-size:14px;margin:0}
.wr-text-link a{border-bottom:1px solid currentColor;padding-bottom:4px}
.wr-text-link a::after{content:" ↗";font-family:Inter,sans-serif;font-weight:400}

.wr-manifesto{min-height:76svh;padding:12vh var(--wr-pad);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;border-top:1px solid var(--wr-line)}
.wr-manifesto h2{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(46px,6.8vw,108px);line-height:.92;letter-spacing:-.06em;font-weight:620;margin:0}
.wr-manifesto p{font-size:clamp(18px,1.8vw,27px);line-height:1.35;color:var(--wr-muted);max-width:560px;margin:0}

.wr-footer{padding:70px var(--wr-pad) 34px;border-top:1px solid var(--wr-line)}
.wr-footer-top{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px}
.wr-footer-title{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(34px,5vw,72px);line-height:.95;letter-spacing:-.05em;font-weight:600;margin:0}
.wr-footer-meta{font:400 10px/1.6 "IBM Plex Mono",monospace;color:var(--wr-muted);text-align:right;text-transform:uppercase;letter-spacing:.06em}
.wr-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:70px;color:#666;font:400 10px/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.06em}

/* Project pages */
.wr-game-hero{min-height:100svh;padding:145px var(--wr-pad) 7vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.75fr);gap:6vw;align-items:end}
.wr-game-title{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(64px,10vw,156px);line-height:.84;letter-spacing:-.07em;font-weight:650;margin:0;max-width:9ch}
.wr-game-lede{font-size:clamp(18px,1.8vw,26px);line-height:1.35;color:var(--wr-muted);max-width:530px;margin:28px 0 0}
.wr-game-meta{align-self:end;border-top:1px solid var(--wr-line);padding-top:18px;gap:20px!important;margin:0!important;font:400 10px/1.5 "IBM Plex Mono",monospace;color:var(--wr-muted);text-transform:uppercase;letter-spacing:.05em}
.wr-game-meta .wp-block-column{margin:0!important}
.wr-game-meta p{margin:0}
.wr-game-meta strong{color:var(--wr-ink);font-weight:500;text-transform:none;font-family:Inter,sans-serif;font-size:13px;letter-spacing:0}
.wr-game-media{height:min(76vw,820px);min-height:520px;background:#171717;position:relative;margin:0 var(--wr-pad)!important;overflow:hidden}
.wr-game-media img{width:100%!important;height:100%!important;object-fit:cover;display:block}

.wr-game-section{padding:12vh var(--wr-pad);border-top:1px solid var(--wr-line)}
.wr-game-section.wr-split{display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}
.wr-game-section h2{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(40px,5vw,78px);line-height:.95;letter-spacing:-.05em;font-weight:620;margin:0}
.wr-game-section .wr-big-copy{font-size:clamp(22px,2.2vw,34px);line-height:1.3;margin:0;max-width:760px}
.wr-game-section .wr-body{color:var(--wr-muted);max-width:630px;font-size:18px}

.wr-process{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;border-top:1px solid var(--wr-line);border-bottom:1px solid var(--wr-line);margin:0!important}
.wr-process-item{padding:45px 30px 55px;border-right:1px solid var(--wr-line);min-height:260px}
.wr-process-item:last-child{border-right:0}
.wr-process-num{font:400 10px/1 "IBM Plex Mono",monospace;color:var(--wr-rust);margin-bottom:60px}
.wr-process-item h3{font-family:"Inter Tight",Inter,sans-serif;font-size:32px;line-height:1;letter-spacing:-.04em;margin:0 0 16px}
.wr-process-item p{font-size:15px;color:var(--wr-muted);margin:0;max-width:220px}

.wr-gallery{display:grid!important;grid-template-columns:1.35fr .65fr;gap:10px!important;padding:10px;background:#0f0f0f}
.wr-gallery > figure{background:#171717;min-height:420px;position:relative;margin:0!important;overflow:hidden}
.wr-gallery > figure img{width:100%!important;height:100%!important;min-height:420px;object-fit:cover;display:block}
.wr-gallery > figure:nth-child(3){grid-column:1/-1;min-height:600px}
.wr-gallery > figure:nth-child(3) img{min-height:600px}

/* Tina has a deliberately quieter rhythm */
.wr-tina .wr-game-hero{min-height:88svh;grid-template-columns:1fr .58fr}
.wr-tina .wr-game-title{max-width:7ch}
.wr-tina .wr-game-media{height:min(63vw,700px);margin-left:14vw;margin-right:0}
.wr-tina .wr-game-section{padding-top:16vh;padding-bottom:16vh}
.wr-tina .wr-quiet-line{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(38px,5.8vw,92px);line-height:1;letter-spacing:-.055em;font-weight:560;max-width:880px;margin:0}

@media (max-width:900px){
  .wr-site-header{padding-top:18px}.wr-logo{width:108px}.wr-nav{gap:15px;font-size:11px}
  .wr-hero{padding-top:135px}.wr-hero h1{font-size:clamp(54px,16vw,110px);max-width:9ch}
  .wr-project,.wr-project-alt{grid-template-columns:1fr;min-height:0}
  .wr-project-alt .wr-project-media,.wr-project-alt .wr-project-copy{order:initial}
  .wr-project-media{min-height:62svh}.wr-project-media img{min-height:62svh}.wr-project-copy{min-height:52svh;padding-top:70px;padding-bottom:70px}
  .wr-manifesto{grid-template-columns:1fr;gap:55px;min-height:70svh}
  .wr-game-hero,.wr-tina .wr-game-hero{grid-template-columns:1fr;gap:60px;padding-top:150px;min-height:90svh}
  .wr-game-meta{grid-template-columns:repeat(3,1fr)}
  .wr-game-section.wr-split{grid-template-columns:1fr;gap:60px}
  .wr-process{grid-template-columns:1fr 1fr}.wr-process-item:nth-child(2){border-right:0}.wr-process-item:nth-child(-n+2){border-bottom:1px solid var(--wr-line)}
  .wr-gallery{grid-template-columns:1fr!important}.wr-gallery > figure:nth-child(3){grid-column:auto;min-height:420px}.wr-gallery > figure:nth-child(3) img{min-height:420px}
  .wr-tina .wr-game-media{margin-left:var(--wr-pad)}
}

@media (max-width:600px){
  .wr-site-header{background:linear-gradient(to bottom,rgba(11,11,11,.92),rgba(11,11,11,0));padding-bottom:45px}
  .wr-nav a:nth-child(2){display:none}
  .wr-hero{min-height:90svh;padding-bottom:50px}.wr-downmark{display:none}
  .wr-hero h1{letter-spacing:-.055em}
  .wr-project-media{min-height:52svh}.wr-project-copy{min-height:auto;padding-top:52px;padding-bottom:70px}
  .wr-manifesto{padding-top:100px;padding-bottom:100px}
  .wr-footer-top{grid-template-columns:1fr}.wr-footer-meta{text-align:left}
  .wr-footer-bottom{flex-direction:column}
  .wr-game-meta{grid-template-columns:1fr;border-top:1px solid var(--wr-line);gap:14px}
  .wr-game-media{min-height:340px;height:56svh;margin-left:0!important;margin-right:0!important}
  .wr-process{grid-template-columns:1fr}.wr-process-item{border-right:0;border-bottom:1px solid var(--wr-line);min-height:220px}.wr-process-item:last-child{border-bottom:0}
}


/* V4.1: Native Gutenberg blocks without changing the visual system */
.wr-page > .wp-block-group,.wr-page > .wp-block-columns,.wr-page > .wp-block-image{margin-block-start:0;margin-block-end:0}
.wr-project-copy > *,.wr-hero-copy > *{max-width:none}
.wr-project-copy > p:not(.wr-project-index):not(.wr-text-link){color:var(--wr-muted);max-width:430px;margin:0 0 28px;font-size:clamp(16px,1.4vw,19px)}
.wr-project-copy > .wp-block-heading{margin:0 0 22px}
.wr-process-item > *{margin-left:0;margin-right:0}
.wr-process-item .wp-block-heading{margin:0 0 16px}
.wr-process-item > p:last-child{font-size:15px;color:var(--wr-muted);margin:0;max-width:220px}
.wr-site-header.wp-block-group{margin:0!important}
.wr-site-header .wp-block-image{margin:0!important}
.wr-site-header .wp-block-navigation{margin:0!important}
.wr-site-header .wp-block-navigation-item__content{color:var(--wr-muted)}
.wr-site-header .wp-block-navigation-item__content:hover{color:var(--wr-ink)}
.wr-footer p{margin-top:0;margin-bottom:0}
.wr-footer-bottom.wp-block-group{margin-top:70px!important}
.editor-styles-wrapper .wr-project-media img,.editor-styles-wrapper .wr-game-media img,.editor-styles-wrapper .wr-gallery img{cursor:pointer}
