/* ============================================================
   Alex Adores — self-contained production stylesheet
   Owns the full presentation layer (parent Soledad theme CSS gone).
   Loaded LAST so it wins the cascade.
   ============================================================ */

:root{
  --aa-ink:#2b2622;
  --aa-muted:#857b72;
  --aa-line:#ece6df;
  --aa-bg:#fbf8f4;
  --aa-card:#ffffff;
  --aa-accent:#b8556a;     /* dusty rose */
  --aa-accent-dark:#8c474b;
  --aa-gold:#caa66a;
  --aa-serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --aa-display:'Playfair Display',Georgia,serif;
  --aa-sans:'Jost','Helvetica Neue',Arial,sans-serif;
  --aa-maxw:1140px;
  --aa-read:760px;
}

/* ---------- reset of theme chrome we are replacing ---------- */
html,body{margin:0;padding:0;background:var(--aa-bg)!important;color:var(--aa-ink)!important;
  font-family:var(--aa-sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:clip;}
*{box-sizing:border-box;}
img{max-width:100%;height:auto;}
a{color:var(--aa-accent);text-decoration:none;}
a:hover{color:var(--aa-accent-dark);}

/* Kill the broken Soledad navigation chrome & post-footer widgets.
   These overlay clicks / render as raw unstyled text. */
#sidebar-nav,
#close-sidebar-nav,
.penci-top-bar,
header#header > nav#navigation,            /* original broken nav */
.penci-megamenu,
.penci-content-megamenu,
#menu-mainmenu,
#menu-mainmenu-1,
.penci-mega-menu .sub-menu,
#PopularPost,
.instafooter,
#apif-main-wrapper,
.widget-title-insta,
.fd-form-popup,
[id^="fd-form-popup"],
.button-menu-mobile,
.go-to-top-parent{
  display:none!important;
}
/* duplicate social-only footer (whole dark band) — standalone so :has cannot
   poison the list above on engines that treat it non-forgivingly */
#footer-section:has(.footer-socials-section){display:none!important;}
/* fallback for any engine without :has — the social footer's inner section is
   already hidden, but also collapse the empty band via min-height reset */
#footer-section:has(.footer-socials-section) *{display:none!important;}

/* Some pages wrap the real nav <ul> directly under #navigation; ensure
   any leftover penci dropdown panel can never capture pointer events. */
.penci-megamenu,.penci-content-megamenu{pointer-events:none!important;visibility:hidden!important;}

/* ============================================================
   HEADER (our clean injected #aa-header)
   ============================================================ */
#aa-header{
  position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);
  backdrop-filter:saturate(140%) blur(6px);
  border-bottom:1px solid var(--aa-line);
  box-shadow:0 1px 18px rgba(43,38,34,.05);
}
.aa-header-inner{
  max-width:var(--aa-maxw);margin:0 auto;padding:14px 22px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.aa-logo{display:flex;align-items:center;flex:0 0 auto;}
.aa-logo img{height:46px;width:auto;display:block;}
.aa-nav{flex:1 1 auto;}
.aa-nav ul{
  list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;
  align-items:center;justify-content:center;gap:4px 26px;
}
.aa-nav li{position:static;margin:0;}
.aa-nav a{
  position:static;display:inline-block;pointer-events:auto;
  font-family:var(--aa-sans);font-weight:500;font-size:14px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--aa-ink);padding:8px 2px;
  border-bottom:2px solid transparent;transition:.2s;
}
.aa-nav a:hover,.aa-nav a.current{color:var(--aa-accent);border-bottom-color:var(--aa-accent);}
.aa-social{display:flex;align-items:center;gap:13px;flex:0 0 auto;}
.aa-social a{color:var(--aa-muted);font-size:16px;line-height:1;transition:.2s;}
.aa-social a:hover{color:var(--aa-accent);transform:translateY(-1px);}
.aa-burger{
  display:none;background:none;border:0;cursor:pointer;font-size:24px;
  color:var(--aa-ink);padding:8px;line-height:1;
}

/* ============================================================
   LAYOUT CONTAINERS — neutralise the floated theme grid
   ============================================================ */
.wrapper-boxed{max-width:none!important;margin:0!important;background:transparent!important;box-shadow:none!important;}
.container{max-width:var(--aa-maxw);margin:0 auto;padding:0 22px;width:100%;}
#main-content,#content,#main,.penci-wrapper,.theiaStickySidebar,.theiaPostSlider,
.container-content,.container-single{
  float:none!important;width:auto!important;max-width:100%!important;
  margin-left:auto!important;margin-right:auto!important;
  left:auto!important;right:auto!important;position:static!important;
}
.penci_sidebar,#sidebar,.penci-sidebar{display:none!important;}

/* ============================================================
   POST FEED — card grid (home / category / author)
   ============================================================ */
ul.penci-grid,.penci_masonry,.penci-blog-wrapper,.archive-grid{
  list-style:none;margin:32px auto 12px!important;padding:0!important;float:none!important;
  width:100%!important;max-width:var(--aa-maxw)!important;display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:34px 30px;
}
/* each card */
.grid-style,.grid-mixed,ul.penci-grid > li,.penci-grid-item{
  float:none!important;width:auto!important;max-width:100%!important;margin:0!important;
  display:flex!important;flex-direction:column;background:var(--aa-card);
  border:1px solid var(--aa-line);border-radius:14px;overflow:hidden;
  box-shadow:0 6px 22px rgba(43,38,34,.05);transition:transform .25s,box-shadow .25s;
}
.grid-style:hover,.grid-mixed:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(43,38,34,.12);}
.grid-style article.item,.grid-mixed article.item{display:flex;flex-direction:column;height:100%;}

/* card thumbnail — one image only, fixed aspect, centered */
.grid-style .thumbnail,.grid-mixed .thumbnail{display:block;margin:0;width:100%;}
.grid-style .thumbnail.thumb-right{display:none!important;}   /* dedupe twin thumbnail */
.grid-mixed .thumbnail.thumb-right{display:none!important;}
.grid-style .thumbnail a,.grid-mixed .thumbnail a{display:block;}
.grid-style .thumbnail img,.grid-mixed .thumbnail img{
  width:100%!important;height:220px!important;object-fit:cover;display:block;border-radius:0!important;
}
.grid-style .mixed-detail,.grid-mixed .mixed-detail,
.grid-style .grid-header-box,.grid-mixed .grid-header-box{padding:0 22px;}
.grid-style .mixed-detail{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1 1 auto;}

/* category pill */
.cat,.grid-header-box .cat{display:inline-block;margin:0 0 10px;}
a.penci-cat-name,.mega-cat-name,.cat > a.penci-cat-name{
  display:inline-block;font-family:var(--aa-sans);font-size:11px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:#fff!important;
  background:var(--aa-accent);padding:5px 12px;border-radius:30px;line-height:1;
}
a.penci-cat-name:after{display:none!important;}
a.penci-cat-name:hover{background:var(--aa-accent-dark);color:#fff!important;}

.grid-title,h2.grid-title{font-family:var(--aa-display);font-weight:700;font-size:1.45rem;
  line-height:1.25;margin:6px 0 12px;}
.grid-title a{color:var(--aa-ink);}
.grid-title a:hover{color:var(--aa-accent);}
.grid-post-box-meta{font-size:13px;color:var(--aa-muted);margin:0 0 12px;letter-spacing:.02em;}
.grid-post-box-meta a{color:var(--aa-muted);}
.grid-post-box-meta a:hover{color:var(--aa-accent);}
.item-content{font-family:var(--aa-serif);font-size:1.12rem;line-height:1.55;color:#5c534b;margin:0 0 16px;flex:1 1 auto;}
.penci-readmore-btn{margin-top:auto;}
.penci-btn-readmore{
  display:inline-block;font-family:var(--aa-sans);font-size:12px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--aa-accent);border:1.5px solid var(--aa-accent);
  padding:9px 18px;border-radius:30px;transition:.2s;
}
.penci-btn-readmore:hover{background:var(--aa-accent);color:#fff;}
.penci-btn-readmore i{margin-left:6px;}
/* hide noisy per-card share row in the feed */
.penci-post-box-meta.center-inner,.grid-style .penci-post-share-box{display:none!important;}

/* ============================================================
   ARCHIVE / PAGE TITLE
   ============================================================ */
.single-header,.header-standard{text-align:center;max-width:var(--aa-read);margin:40px auto 6px;padding:0 22px;}
.post-title,.single-post-title,h1.post-title{
  font-family:var(--aa-display);font-weight:800;font-size:clamp(2rem,5vw,3.1rem);
  line-height:1.12;color:var(--aa-ink);margin:14px 0 10px;
}
.penci-single-cat,.penci-standard-cat{margin-bottom:6px;}
.post-box-meta-single{font-size:13px;color:var(--aa-muted);letter-spacing:.05em;text-transform:uppercase;}
.post-box-meta-single span{margin:0 8px;}

/* intro paragraph that leads a category/archive feed */
.aa-archive-intro{max-width:var(--aa-read);margin:0 auto 6px;padding:0 22px;text-align:center;
  font-family:var(--aa-serif);font-size:1.3rem;line-height:1.55;color:#5c534b;}

/* ============================================================
   SINGLE POST / PAGE — readable centered column
   ============================================================ */
.container-single,.container-single-fullwidth{max-width:var(--aa-read)!important;margin:0 auto!important;padding:0 22px!important;}
.container-single article{background:transparent;border:0;box-shadow:none;}
.post-entry,.inner-post-entry,.entry-content,.page-content{
  font-family:var(--aa-serif);font-size:1.28rem;line-height:1.72;color:#3c352f;
}
.post-entry p,.inner-post-entry p{margin:0 0 1.3em;}
.post-entry h2,.inner-post-entry h2{font-family:var(--aa-display);font-weight:700;font-size:2rem;margin:1.6em 0 .5em;color:var(--aa-ink);}
.post-entry h3,.inner-post-entry h3{font-family:var(--aa-display);font-weight:700;font-size:1.5rem;margin:1.4em 0 .4em;color:var(--aa-ink);}
.post-entry ul,.inner-post-entry ul{margin:0 0 1.3em 1.1em;}
.post-entry li{margin:0 0 .5em;}
.post-entry blockquote{border-left:4px solid var(--aa-accent);margin:1.6em 0;padding:.4em 0 .4em 1.2em;
  font-style:italic;color:#5c534b;}
/* content images — centered, full-width, sharp */
.post-entry img,.inner-post-entry img{
  display:block;margin:1.6em auto;max-width:100%;height:auto;border-radius:6px;
}
.post-entry img.alignnone,.inner-post-entry img.alignnone{display:inline-block;margin:6px;vertical-align:top;border-radius:6px;}
.aligncenter{display:block;margin-left:auto;margin-right:auto;}
.wp-caption{max-width:100%!important;margin:1.4em auto;}
.wp-caption-text{font-family:var(--aa-sans);font-size:.85rem;color:var(--aa-muted);text-align:center;margin-top:.4em;}

/* featured image at top of single post */
.penci-featured-img,.single-featured,.post-thumbnail{text-align:center;margin:0 auto 24px;}
.penci-featured-img img,.single-featured img,.post-thumbnail img{display:block;margin:0 auto;border-radius:8px;}

/* post footer share / tags / comments — calm them down */
.tags-share-box,.post-pagination,#comments,#respond,.author-box,.item-related{
  max-width:var(--aa-read);margin:28px auto;padding:0 22px;
}
.post-share .list-posts-share a,.tags-share-box a{color:var(--aa-muted);}
.post-share .list-posts-share a:hover{color:var(--aa-accent);}
.dt-share{margin-left:5px;font-size:13px;}

/* related posts */
.item-related{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;}
.item-related h3{font-family:var(--aa-display);font-size:1.05rem;}

/* ============================================================
   ABOUT / CONTACT / SHOP — generic page content
   ============================================================ */
.page-template-default .container-single,.page .container-single{max-width:var(--aa-read)!important;}
.aa-page-block{max-width:var(--aa-read);margin:0 auto;padding:0 22px;}

/* contact form */
.wpcf7 input,.wpcf7 textarea,input[type=text],input[type=email],textarea{
  width:100%;font-family:var(--aa-sans);font-size:1rem;padding:12px 14px;
  border:1px solid var(--aa-line);border-radius:8px;background:#fff;margin-bottom:14px;
}
.wpcf7 input[type=submit],button[type=submit],input[type=submit]{
  width:auto;background:var(--aa-accent);color:#fff;border:0;padding:12px 30px;
  border-radius:30px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;
}
.wpcf7 input[type=submit]:hover{background:var(--aa-accent-dark);}

/* ============================================================
   FOOTER
   ============================================================ */
#footer-section{background:#2b2622;color:#e9e2da;margin-top:60px;padding:46px 0 38px;}
#footer-section .container{text-align:center;}
.aa-footer-logo{margin:0 auto 18px;}
.aa-footer-logo img{height:42px;width:auto;filter:brightness(0) invert(1);opacity:.95;}
.aa-footer-nav{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;
  padding:0;margin:0 auto 22px;max-width:760px;}
.aa-footer-nav a{color:#cbbfb4;font-size:13px;letter-spacing:.08em;text-transform:uppercase;}
.aa-footer-nav a:hover{color:#fff;}
.aa-footer-social{display:flex;justify-content:center;gap:16px;margin:0 0 20px;}
.aa-footer-social a{color:#cbbfb4;font-size:17px;}
.aa-footer-social a:hover{color:var(--aa-gold);}
#footer-copyright,#footer-copyright p{color:#9c9088!important;font-size:13px;margin:0;}
#footer-copyright a{color:var(--aa-gold);}
.footer-logo-copyright{border:0;}

/* ============================================================
   RESPONSIVE / MOBILE
   ============================================================ */
@media (max-width:900px){
  .aa-nav{
    position:absolute;left:0;right:0;top:100%;background:#fff;
    border-bottom:1px solid var(--aa-line);box-shadow:0 12px 24px rgba(43,38,34,.12);
    max-height:0;overflow:hidden;transition:max-height .3s ease;
  }
  #aa-header.aa-open .aa-nav{max-height:520px;}
  .aa-nav ul{flex-direction:column;align-items:stretch;gap:0;padding:6px 0;}
  .aa-nav li{border-bottom:1px solid var(--aa-line);}
  .aa-nav li:last-child{border-bottom:0;}
  .aa-nav a{display:block;padding:14px 24px;min-height:44px;border-bottom:0;}
  .aa-burger{display:block;}
  .aa-social{display:none;}
  .aa-header-inner{position:relative;}
  ul.penci-grid,.penci_masonry,.penci-blog-wrapper,.archive-grid{grid-template-columns:1fr;gap:26px;}
}
@media (max-width:480px){
  html,body{font-size:16px;}
  .aa-logo img{height:38px;}
  .grid-style .thumbnail img,.grid-mixed .thumbnail img{height:200px!important;}
}
