/*
Theme Name: The Parry Project
Description: A colourful, page-led personal website with a Web 1.0 spirit.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: the-parry-project
Tags: blog, photography, portfolio, custom-header, custom-logo, featured-images, threaded-comments, translation-ready
*/
:root{--night:#17142b;--ink:#211c39;--paper:#fff7dc;--pink:#ff59a8;--orange:#ff9a31;--yellow:#ffe33e;--lime:#b6ef55;--cyan:#52e4ee;--blue:#5269e8;--violet:#a879ff;--line:#242044;--mono:"Courier New",monospace;--sans:Verdana,Arial,sans-serif;--wrap:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:#272047;background-image:radial-gradient(circle at 12px 12px,#55477a 2px,transparent 2.5px);background-size:25px 25px;color:var(--ink);font:16px/1.6 var(--sans)}a{color:#3c36ae;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}a:hover{color:#d51d71;background:var(--yellow)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px dashed var(--pink);outline-offset:3px}img{max-width:100%;height:auto;display:block}.skip-link{position:absolute;left:-9999px;top:0;z-index:50;padding:.7rem;background:var(--yellow);color:var(--night)}.skip-link:focus{left:1rem}.site-shell{max-width:var(--wrap);margin:0 auto;background:var(--paper);border-left:5px ridge var(--cyan);border-right:5px ridge var(--pink);box-shadow:0 0 35px #090817aa;min-height:100vh}.site-header{background:var(--night);color:#fff;position:relative;border-bottom:7px ridge var(--orange)}.header-art{height:clamp(150px,24vw,310px);background:linear-gradient(135deg,#ff4d9a,#ff9a31 28%,#ffe33e 46%,#55dfaf 66%,#5965e9 84%,#a879ff);background-size:cover;background-position:center;display:flex;align-items:end;padding:1rem 2rem;position:relative;overflow:hidden}.header-art::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,#ffffff20 0 8px,transparent 8px 19px);mix-blend-mode:soft-light}.header-art::after{content:"";position:absolute;inset:auto 0 0;height:22px;background:repeating-linear-gradient(90deg,var(--pink) 0 22px,var(--orange) 22px 44px,var(--yellow) 44px 66px,var(--lime) 66px 88px,var(--cyan) 88px 110px,var(--blue) 110px 132px)}.header-art.has-image{background-image:var(--header-image)}.site-brand{position:relative;z-index:1;background:#17142bdf;border:3px outset var(--cyan);padding:.55rem 1rem;max-width:100%}.site-title{font:900 clamp(1.7rem,5vw,3.2rem)/1.05 var(--mono);letter-spacing:-.06em;margin:0;text-shadow:3px 3px 0 #cf2d8d,6px 6px 0 #276d9e}.site-title a{color:#fff;text-decoration:none}.site-description{font:.8rem var(--mono);color:var(--yellow);margin:.4rem 0 0}.site-banner{padding:.35rem 1rem;background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow),var(--lime),var(--cyan),var(--blue),var(--violet));color:var(--night);font:700 .73rem var(--mono);letter-spacing:.05em;text-align:center;text-transform:uppercase;border-bottom:3px ridge #fff}.header-inner{position:absolute;right:1rem;top:1rem;z-index:2}.custom-logo{max-width:240px;max-height:160px;object-fit:contain}.page-frame{display:grid;grid-template-columns:250px minmax(0,1fr);align-items:start;gap:1.25rem;padding:1.25rem}.sidebar{min-width:0}.page-nav{position:sticky;top:1rem;background:#d7f8f4;border:4px ridge var(--blue);box-shadow:5px 5px 0 var(--pink);padding:.7rem;margin-bottom:1rem}.nav-heading{font:bold .9rem var(--mono);margin:0 0 .5rem;padding:.4rem .5rem;background:var(--night);color:var(--yellow);text-transform:uppercase}.page-tree,.page-tree ul{list-style:none;padding:0;margin:0}.page-tree li{margin:.18rem 0}.page-tree a{display:block;padding:.36rem .48rem;background:#fff9e9;border:1px solid #9488c7;color:#292253;font-size:.88rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.page-tree>li>a{border-left:6px solid var(--pink)}.page-tree ul{padding:.18rem 0 .18rem .6rem;margin-left:.5rem;border-left:2px dotted var(--blue)}.page-tree ul a{background:#fff}.page-tree ul ul a{border-left:4px solid var(--orange);font-weight:400;font-size:.82rem}.page-tree a:hover,.page-tree .current_page_item>a,.page-tree .current_page_ancestor>a{background:var(--yellow);color:#271e63;border-color:var(--pink)}.page-tree .current_page_item>a::before{content:"★ ";color:#d51d71}.sidebar-extra{background:#ffe1f0;border:3px dashed #d51d71;padding:.6rem;margin-top:1rem}.main-content{min-width:0;padding:.8rem 1.3rem 2.5rem;background:#fffaf0;border:2px solid #d7c6a2;box-shadow:inset 0 0 0 4px #fff}.entry-header,.archive-header{border-bottom:3px double var(--violet);padding-bottom:.7rem;margin-bottom:1.4rem}.eyebrow,.meta,.kicker{font:700 .76rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#753989}h1,h2,h3{font-family:var(--mono);line-height:1.2}h1{font-size:clamp(1.8rem,4vw,2.8rem);color:#31245e;text-shadow:2px 2px 0 #ffbbce;margin:.2rem 0 .8rem}h2{color:#a6266b}h3{color:#314d9b}.intro{font-size:1.12rem;max-width:760px}.entry-content{font-size:1.03rem}.entry-content h2{background:linear-gradient(90deg,#ffd9ea,transparent);border-left:7px solid var(--pink);padding:.3rem .6rem}.entry-content h3{border-bottom:2px dotted var(--cyan);padding-bottom:.2rem}.entry-content blockquote{border-left:6px ridge var(--orange);margin:1.3rem 0;padding:.6rem 1rem;background:#fff1b7;color:#49314f;font:italic 1.12rem Georgia,serif}.entry-content figure{margin:1.5rem 0}.entry-content figcaption{font:.8rem var(--mono);background:#e6dcff;padding:.35rem}.entry-content img{border:4px ridge var(--cyan);box-shadow:4px 4px 0 var(--pink)}.entry-content pre,.entry-content code{font-family:var(--mono);background:#211c39;color:#e8ffad;padding:.15em .3em}.entry-content pre{padding:1rem;overflow:auto}.entry-content pre code{padding:0}.featured-image{margin:1rem 0 1.5rem}.featured-image img{max-height:600px;object-fit:cover}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.section-head{display:flex;align-items:end;justify-content:space-between;border-bottom:3px double var(--orange);margin:2rem 0 1rem}.card{background:#fff;border:3px ridge var(--violet);box-shadow:4px 4px 0 #f8b9d5;min-width:0}.card:nth-child(3n+2){border-color:var(--orange);box-shadow:4px 4px 0 #ffe179}.card:nth-child(3n){border-color:var(--cyan);box-shadow:4px 4px 0 #a4e9d2}.card-image{display:block;aspect-ratio:4/3;background:linear-gradient(135deg,#ffb5dc,#ffe78a 50%,#81e7da);overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.card:hover .card-image img{transform:scale(1.04)}.card-body{padding:.75rem}.card h3{font-size:1rem;margin:.2rem 0}.card h3 a{text-decoration:none}.card-excerpt{font-size:.85rem;margin:.4rem 0}.hero{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:center;background:#e5f9f3;border:4px ridge var(--lime);padding:1rem;margin-bottom:2rem}.hero-image img,.hero-image .placeholder{width:100%;height:100%;min-height:210px;max-height:360px;object-fit:cover;border:4px ridge var(--pink);background:linear-gradient(135deg,var(--orange),var(--pink),var(--violet),var(--cyan))}.placeholder{display:grid;place-items:center;padding:1rem;text-align:center;font:bold 1rem var(--mono);color:#fff;text-shadow:2px 2px var(--night)}.button,.wp-block-button__link{display:inline-block;background:var(--pink);color:var(--night);padding:.55rem .8rem;border:3px outset #ffc3df;font:bold .9rem var(--mono);text-decoration:none;box-shadow:3px 3px 0 var(--night)}.button:hover,.wp-block-button__link:hover{background:var(--yellow);color:var(--night)}.feature-band{margin:2rem 0;background:var(--night);color:#fff;border:4px ridge var(--violet);padding:1rem 1.3rem}.feature-band h2{color:var(--yellow)}.feature-band a{color:var(--cyan)}.pagination{margin:2rem 0}.pagination .nav-links{display:flex;gap:.4rem;flex-wrap:wrap}.page-numbers{display:inline-block;padding:.4rem .65rem;border:2px outset var(--cyan);background:#fff;text-decoration:none;font-weight:bold}.page-numbers.current{background:var(--night);color:var(--yellow)}.widget{margin:1rem 0}.widget-title{font:700 .9rem var(--mono);background:var(--night);color:var(--yellow);padding:.4rem}.site-footer{background:var(--night);color:#fff;border-top:8px ridge var(--pink);padding:1rem 1.5rem;text-align:center}.site-footer-inner{max-width:var(--wrap);margin:auto}.copyright{display:inline-block;background:#fff7dc;color:var(--night);border:3px ridge var(--yellow);padding:.5rem 1rem;font:bold .8rem var(--mono)}.footer-nav ul{display:flex;justify-content:center;gap:.6rem;flex-wrap:wrap;list-style:none;padding:0}.site-footer a{color:var(--cyan)}.search-form{display:flex;gap:.4rem}.search-field{min-width:0;padding:.55rem;border:2px inset var(--blue);font:inherit}.search-submit{padding:.55rem .75rem;background:var(--night);border:2px outset var(--cyan);color:#fff;font:inherit}.comments-area{margin-top:3rem;border-top:2px dotted var(--violet);padding-top:1rem}.comment-list{padding-left:1.3rem}.screen-reader-text{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}.alignwide{max-width:var(--wrap);margin-inline:auto}.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}.wp-block-image img,.wp-block-cover{border:4px ridge var(--cyan)}.wp-block-separator{border:0;border-top:3px dotted var(--pink)}
@media(max-width:850px){.site-shell{border:0}.page-frame{grid-template-columns:210px minmax(0,1fr);gap:.8rem;padding:.8rem}.main-content{padding:.8rem}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr}.header-inner{display:none}}
@media(max-width:620px){body{background-size:19px 19px}.header-art{height:180px;padding:.7rem}.site-brand{padding:.45rem .6rem}.site-description{font-size:.68rem}.site-banner{font-size:.63rem}.page-frame{display:flex;flex-direction:column;padding:.55rem}.sidebar{width:100%;order:0}.page-nav{position:static;padding:.45rem}.nav-heading{cursor:default}.page-tree{display:grid;grid-template-columns:1fr 1fr;gap:.15rem}.page-tree ul{grid-column:1/-1}.page-tree li{min-width:0}.page-tree a{font-size:.8rem;padding:.3rem}.sidebar-extra{display:none}.main-content{width:100%;order:1}.card-grid{grid-template-columns:1fr 1fr;gap:.65rem}.card-body{padding:.55rem}.card-excerpt{font-size:.8rem}.site-footer{padding:1rem .5rem}}
@media(max-width:390px){.card-grid{grid-template-columns:1fr}.page-tree{grid-template-columns:1fr}.page-tree ul{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
