/* Blog, blog posts, Home Search and Contact pages. Desktop geometry matches
   taraolson.com measured at 1440px wide. */

/* black strip behind the header on pages without a banner (blog + posts) */
.hd-band{height:111px;background:#000}

/* ---------- Wix Blog widget (blog.html + post pages) ---------- */
.blog-sec{background:#fff}
.blog-wrap{width:940px;margin:0 auto;position:relative}
.blog-cats{display:flex;align-items:center;justify-content:space-between;height:40px}
.blog-cats a{font:14px/19.6px var(--f-body);color:#000}
.blog-cats a.on{color:var(--tan)}
.blog-cats .search{width:19px;height:19px;margin-right:16px;fill:#000;display:block}
.blog-list{padding:102px 0 36.5px}
.blog-head{height:142px;background:#fff;padding:40px 20px 0;margin:21px 0 20px}
.blog-head h1{font:36px/50.4px var(--f-head);color:#000}

.pl-card{position:relative;display:block;height:341px;border:1px solid #eeecec;margin-bottom:31.5px;color:#000}
.pl-card>img{position:absolute;left:-1px;top:-1px;width:454px;height:341px;object-fit:cover}
.pl-body{position:absolute;left:488px;top:-1px;width:414px;height:341px}
.pl-meta{position:absolute;left:0;top:28px;display:flex;gap:10px;align-items:flex-start}
.pl-meta img{width:32px;height:32px;border-radius:50%;object-fit:cover}
.pl-meta div{font:12px/normal var(--f-body)}
.pl-meta div span{display:block;height:18px}
.pl-meta div span:first-child{margin-top:-2px}
.pl-meta .dot{display:inline;margin:0 7px}
.pl-more{position:absolute;right:-8px;top:34px;width:19px;height:19px;fill:#000}
.pl-title{position:absolute;left:0;top:75px;width:414px;font:28px/normal var(--f-head);color:#000}
.pl-card:hover .pl-title{color:var(--grey)}
.pl-excerpt{position:absolute;left:0;top:119px;width:414px;font:16px/24px var(--f-body);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pl-foot{position:absolute;left:0;right:0;top:282px;border-top:1px solid #ccc;height:40px}
.stats{display:flex;align-items:center;font:12px/normal var(--f-body);color:#000}
.pl-foot .stats{position:absolute;left:0;top:15px;right:0}
.stats .v{width:59px}
.stats .like{margin-left:auto;display:flex;align-items:center;gap:4px;background:none;border:0;padding:0;cursor:pointer;font:12px var(--f-body);color:#000}
.stats .like span{color:#000}
.stats .like svg{width:19px;height:19px;fill:none;stroke:#e84a43;stroke-width:1.1}
.stats .like.liked svg{fill:#e84a43}

/* ---------- single post ---------- */
.post-sec{padding-top:40px}
.post-sec .blog-cats{height:61px;align-items:flex-start;padding-top:29px}
.post-card{border:1px solid rgba(232,230,230,.75);padding:60px 99px 61px;margin-top:40px}
.post-meta{position:relative;display:flex;align-items:center;height:32px;font:14px/21px var(--f-body)}
.post-meta img{width:32px;height:32px;border-radius:50%;object-fit:cover;margin-right:12px}
.post-meta .dot{margin:0 5px}
.post-meta .dot+span+.dot{margin:0 7px 0 8px}
.post-meta .pl-more{top:4px;right:-6px}
.post-title{font:40px/56px var(--f-head);color:#000;margin-top:18px}
.post-body{margin-top:47px}
.post-body img{width:740px;height:auto;display:block}
.post-body p{font:18px/27px var(--f-body);color:#000;margin-top:1px}
.post-actions{margin-top:20px;border-top:1px solid #ccc}
.post-share{display:flex;gap:30px;height:65px;align-items:center;border-bottom:1px solid #ccc;padding-top:2px}
.post-share a,.post-share button{display:block;width:19px;height:19px;background:none;border:0;padding:0;cursor:pointer;color:#000}
.post-share svg{width:19px;height:19px;fill:#000;display:block}
.post-actions .stats{height:40px;padding-top:4px}
.recent{padding:29px 0 0}
.recent-head{display:flex;justify-content:space-between;align-items:flex-start;height:46px}
.recent-head h2{font:18px/27px var(--f-body);color:#000}
.recent-head a{font:14px/21px var(--f-body);color:#000;margin-top:-1px}
.recent-grid{display:grid;grid-template-columns:repeat(3,291px);gap:34px;padding-bottom:1px}
.rp-card{display:block;height:314px;border:1px solid rgba(232,230,230,.75);color:#000;position:relative}
.rp-card img{width:289px;height:163px;object-fit:cover}
.rp-title{position:absolute;left:24px;right:24px;top:187px;font:18px/normal var(--f-head)}
.rp-card:hover .rp-title{color:var(--grey)}
.rp-card .stats{position:absolute;left:24px;right:24px;top:254px;border-top:1px solid rgba(0,0,0,.2);padding-top:15px}
.post-page-end{height:1px}

/* ---------- Home Search ---------- */
.banner-title.wide{top:262px}
.idx-sec{height:675px;background:#fff}
.idx-sec .wrap{height:100%}
.idx-frame{position:absolute;left:0;top:35px;width:980px;height:605px;padding:8px}
.idx-frame iframe{display:block;width:100%;height:100%;border:0}

/* ---------- Contact ---------- */
.ct-sec{height:686px;background:rgba(250,248,244,.92)}
.ct-sec .wrap{height:100%}
.ctp-row{position:absolute;left:0;display:flex;gap:20px}
.ctp-row .rt{width:310px;padding-top:2px;font:16px/1.4em var(--f-open);color:#000}
.ctp-row .u{text-decoration:underline}
.ctp-icon{flex:0 0 50px;width:50px;height:50px;background:#000;display:flex;align-items:center;justify-content:center}
.ctp-icon svg{width:31px;height:31px;fill:#fff}
.ct-sec .wform{position:absolute;left:509px;top:86px;width:470px}
/* Wix form look (same as the home-page contact form) */
.wform{display:flex;flex-wrap:wrap;column-gap:19px}
.wform label{display:block}
.wform label>span{display:block;height:14px;margin-bottom:12px;font:14px/14px var(--f-head);color:#000;padding-left:2px}
.wform .f-half{width:225px;margin-bottom:27px}
.wform .f-full{width:470px;margin-bottom:28px}
.wform input,.wform textarea{display:block;width:100%;height:52px;border:0;border-radius:0;background:rgba(0,0,0,.5);padding:3px 3px 3px 22px;font:14px var(--f-body);color:#fff;outline:0}
.wform textarea{height:126px;padding:10.5px 10px 3px 22px;resize:vertical;margin-left:-1px}
.wform .f-msg{margin-bottom:27px}
.wform button{width:470px;height:46px;background:#000;border:2px solid #000;color:#fff;font:15px var(--f-body);cursor:pointer;transition:border-color .4s,background-color .4s,color .4s}
.wform button:hover{background:transparent;color:#000}

/* ---------- small screens ---------- */
@media (max-width:1000px){
  .blog-list{padding-top:30px}
  .blog-wrap{width:auto;margin:0 16px}
  .blog-head{height:auto;padding:24px 0}
  .pl-card{height:auto}
  .pl-card>img{position:static;width:100%;height:auto;aspect-ratio:454/341}
  .pl-body{position:relative;left:auto;top:auto;width:auto;height:auto;padding:20px 16px 12px}
  .pl-meta,.pl-title,.pl-excerpt,.pl-foot{position:relative;left:auto;top:auto;width:auto}
  .pl-more{top:20px;right:16px}
  .pl-title{margin-top:16px;font-size:22px}
  .pl-excerpt{margin-top:10px}
  .pl-foot{margin-top:20px}
  .post-card{padding:30px 16px}
  .post-title{font-size:30px;line-height:1.3}
  .post-body{margin-top:24px}
  .post-body img{width:100%}
  .recent-grid{grid-template-columns:1fr}
  .rp-card img{width:100%}
  .idx-sec{height:auto;padding:20px 0}
  .idx-frame{position:relative;top:auto;width:100%;height:80vh;padding:0}
  .ct-sec{height:auto;padding:40px 0}
  .ctp-row,.ct-sec .wform{position:relative;top:auto!important;left:auto;margin-bottom:20px}
  .ctp-row .rt{width:auto}
  .ct-sec .wform{width:auto;margin-top:20px}
  .wform .f-half,.wform .f-full,.wform button{width:100%}
}
