/*
Theme Name: Karrah's Journey
Version: 1.1.0
Requires PHP: 8.1
Text Domain: karrahs-journey
*/
:root{--ink:#293936;--muted:#5e6c67;--teal:#176b65;--pink:#a74468;--cream:#fffdf9;--line:#dedfd5;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.75}a{color:var(--teal);text-underline-offset:5px}a:hover{color:var(--pink)}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}button,.button,input[type=submit]{cursor:pointer;background:var(--teal);color:white;border:1px solid var(--teal);border-radius:6px;padding:13px 24px;display:inline-block;text-decoration:none;font-weight:600;line-height:1.5}button:hover,.button:hover,input[type=submit]:hover{background:#10534f;color:white}.button.secondary{background:transparent;color:var(--teal)}:focus-visible{outline:3px solid var(--pink);outline-offset:4px}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.04em}h1{font-size:clamp(46px,6vw,86px);margin:20px 0 28px}h2{font-size:clamp(34px,4vw,52px);margin:12px 0 24px}h3{font-size:28px;margin:12px 0}p{margin:0 0 22px}.wrap{max-width:1240px;margin:auto;padding:0 40px}.narrow{max-width:800px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--teal)}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:var(--serif);font-size:29px;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand span{color:var(--pink)}nav{display:flex;gap:30px;align-items:center}nav a{font-size:13px;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;color:var(--ink)}nav a[aria-current=page]{color:var(--pink);text-decoration:underline}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center;padding-top:74px;padding-bottom:78px}.hero h1 em{color:var(--pink);font-weight:400}.hero p{max-width:470px;color:var(--muted);font-size:18px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.photo{position:relative;min-height:480px;border-radius:48% 48% 8px 8px;background:linear-gradient(150deg,#e3ede6,#c8e0d9 50%,#f3dbdf);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border:9px solid #fff;box-shadow:0 15px 40px #233d3210;text-align:center;padding:28px}.photo:before,.photo:after{content:'';position:absolute;width:320px;height:320px;border:1px solid #ffffffaa;border-radius:50%;transform:rotate(-25deg);right:-110px;bottom:-30px}.photo:after{right:-70px;bottom:-80px}.photo-mark{font-family:var(--serif);font-size:120px;font-style:italic;color:#36746c66;line-height:1.1}.photo small{font-size:11px;letter-spacing:.16em;text-transform:uppercase;z-index:1}.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-caption{margin-top:15px;text-align:center;font-family:var(--serif);font-style:italic;color:var(--pink);font-size:19px}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px;text-align:center;font-family:var(--serif);font-size:22px;letter-spacing:.02em;background:#f5f5ed}.ribbon span{color:var(--pink);padding:0 28px}.section{padding-top:85px;padding-bottom:85px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.section-head h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card a{text-decoration:none}.card-image{aspect-ratio:1.45;background:#e3eeea;border-radius:7px;overflow:hidden;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:42px;color:#417b70}.card-image img{width:100%;height:100%;object-fit:cover}.card .meta{margin-top:20px}.meta{font-size:12px;letter-spacing:.06em;color:var(--muted)}.card p{font-size:15px;color:var(--muted)}.text-link{font-size:14px;font-weight:600}.empty{padding:45px;border:1px solid var(--line);border-radius:8px;background:white;max-width:780px}.about-band{background:#f5e9e8}.about-grid{display:grid;grid-template-columns:.8fr 1fr;gap:85px;align-items:center}.about-grid .photo{min-height:370px;border-radius:8px;transform:rotate(-2deg)}.placeholder-note{font-size:13px;border-left:2px solid var(--pink);padding-left:15px;color:var(--muted)}.join{text-align:center;background:#eaf2ec;border-radius:10px;padding:65px 30px}.join p{max-width:590px;margin:0 auto 26px}.site-footer{border-top:1px solid var(--line);padding:48px 0 24px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:32px;padding-top:24px;font-size:12px;color:var(--muted)}.footer-bottom a{margin-right:18px}.page-intro{padding:65px 0 35px}.page-intro h1{font-size:60px}.content h2{font-size:36px;margin-top:45px}.content h3{font-size:27px}.content li{margin-bottom:10px}.content img{border-radius:8px}.content:after{content:'';display:table;clear:both}.post-header{text-align:center;padding:70px 0 40px}.post-header h1{font-size:clamp(40px,5vw,68px)}.post-image{margin:10px auto 45px;max-height:660px;object-fit:cover;width:100%;border-radius:10px}.comments-area{margin-top:65px;border-top:1px solid var(--line);padding-top:25px}.comment-list{list-style:none;padding:0}.comment-list .children{list-style:none}.comment-body{padding:25px;background:white;border:1px solid var(--line);border-radius:8px;margin:16px 0}.comment-meta{font-size:13px}.comment-author{font-weight:700}.comment-author img{display:none}.comment-metadata{font-size:12px}label{display:block;font-size:14px;font-weight:600;margin:16px 0 6px}input:not([type=submit]):not([type=checkbox]):not([type=hidden]),textarea,select{width:100%;padding:12px;border:1px solid #9baaa4;background:white;border-radius:5px;color:var(--ink)}input[type=checkbox]{margin-right:10px}textarea{min-height:150px}input[type=file]{font-size:14px}fieldset{border:0;padding:0;margin:0}.notice{background:#edf3ef;padding:18px 22px;border-left:3px solid var(--teal);margin-bottom:25px}.notice.error{background:#f9e6ec;border-color:var(--pink)}.dashboard{max-width:1000px}.dashboard h1{font-size:48px}.dashboard h2{font-size:32px}.dashboard-card{padding:28px;border:1px solid var(--line);border-radius:8px;background:white;margin:25px 0}.dashboard-row{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.dashboard .actions button{font-size:14px}.dashboard small{color:var(--muted)}.dashboard .wp-editor-wrap{margin-top:8px}.dashboard .wp-editor-area{border-radius:0}.dashboard details summary{cursor:pointer;color:var(--teal);padding:12px 0}.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:20px;top:20px;z-index:999;background:white;padding:15px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pagination{padding-top:35px}.page-numbers{padding:8px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:850px){.wrap{padding-left:25px;padding-right:25px}.header-inner{flex-direction:column;padding-top:22px;padding-bottom:22px;gap:12px}nav{gap:22px}.hero{gap:30px;padding-top:45px}.hero h1{font-size:56px}.photo{min-height:400px}.about-grid{gap:40px}.cards{gap:18px}.footer-top{align-items:start;flex-direction:column}}@media(max-width:740px){body{font-size:16px}.wrap{padding-left:22px;padding-right:22px}.brand{font-size:28px}nav{gap:21px}nav a{font-size:11px}.hero{grid-template-columns:1fr;gap:35px;padding-top:42px;padding-bottom:42px}.hero h1{font-size:55px}.hero p{font-size:16px}.photo{min-height:360px;max-width:400px;width:100%;margin:auto}.ribbon{font-size:17px}.ribbon span{padding:0 10px}.section{padding-top:55px;padding-bottom:55px}.section-head{align-items:start;flex-direction:column}.cards,.about-grid{grid-template-columns:1fr;gap:35px}.card-image{aspect-ratio:1.65}.about-grid .photo{min-height:310px}.footer-bottom{flex-direction:column}.footer-top nav{flex-wrap:wrap}.page-intro h1{font-size:47px}.dashboard-card{padding:20px}.dashboard-row{align-items:start;flex-direction:column}.actions .button,.actions button{flex-grow:1;text-align:center}.join{padding:45px 22px}.post-header{padding-top:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand img{width:250px;height:auto}.site-header{background:#fff}.site-footer .brand img{width:230px}@media(max-width:740px){.brand img{width:230px}}
.photo:has(img):before,.photo:has(img):after{display:none}

.kj-carousel{margin:25px 0 42px;padding:12px;border:3px solid var(--teal);border-radius:18px;background:#f5e9e8;box-shadow:8px 8px 0 #a7446826}.kj-slides{background:var(--cream);border:3px solid var(--pink);border-radius:10px;overflow:hidden}.kj-slide[hidden]{display:none}.kj-slide img{width:100%;height:540px;object-fit:contain;margin:0!important;border-radius:0!important}.kj-carousel-controls{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding-top:12px}.kj-carousel-controls button{font-size:14px;padding:9px 15px;min-height:44px}.kj-count{font-size:14px;color:var(--ink);font-variant-numeric:tabular-nums}@media(max-width:740px){.kj-slide img{height:420px}.kj-carousel{padding:8px}.kj-carousel-controls{gap:8px}}

.micro-feed{max-width:760px;margin:0 auto}.micro-post{padding:30px;margin:0 0 26px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--pink);border-radius:12px}.micro-meta{display:flex;gap:8px 20px;justify-content:space-between;flex-wrap:wrap;margin-bottom:20px;font-size:14px}.micro-meta a{color:var(--muted);font-size:12px}.micro-post h2{font-size:32px}.micro-post h2 a{text-decoration:none}.micro-photo{max-height:650px;width:100%;object-fit:contain;border-radius:8px;margin:20px 0}.micro-post .content{overflow-wrap:anywhere}.micro-post .content p:last-child{margin-bottom:20px}@media(max-width:740px){.micro-post{padding:20px}.micro-post h2{font-size:28px}}