
/* Adeli v5.47 — premium typography and Safari Planning tab refinement */
:root{
  --adeli-forest:#173f35;
  --adeli-cta:#b88a3b;
  --adeli-ink:#25312e;
  --adeli-muted:#5f6a66;
  --adeli-line:#dfe4df;
}

/* Typography system */
body{
  font-family:"DM Sans", sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.72;
  color:var(--adeli-ink);
}
h1,h2,h3,h4,h5,h6,
.entry-title,
.wp-block-heading{
  font-family:"Playfair Display", serif;
  color:var(--adeli-forest);
  font-weight:500;
  line-height:1.18;
  letter-spacing:-.012em;
}
h1{font-size:clamp(2rem,3.4vw,2.85rem);}
h2{font-size:clamp(1.65rem,2.7vw,2.25rem);}
h3{font-size:clamp(1.35rem,2.1vw,1.75rem);}
h4{font-size:1.3rem;}
h5{font-size:1.12rem;}
h6{font-size:1rem;}
p,li{color:var(--adeli-ink);}
small,.entry-meta,.breadcrumb,.breadcrumbs,.card-meta,.meta{
  color:var(--adeli-muted);
}
a{transition:color .18s ease, background-color .18s ease, border-color .18s ease;}
button,.button,.wp-element-button,input[type="submit"]{
  font-family:"Playfair Display",serif;
  font-weight:600;
  letter-spacing:.005em;
}

/* Compact content rhythm */
.entry-content > * + *,
.site-content .entry-content > * + *{margin-top:1.15rem;}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6{margin-top:1.65em;margin-bottom:.55em;}
.section,
.site-section,
.home-section{margin-block:clamp(28px,4vw,56px);}

/* Archive/product card titles */
.woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.product-card-title,
.archive .entry-title,
.search .entry-title{
  font-family:"Playfair Display",serif;
  font-size:clamp(1rem,1.25vw,1.18rem);
  line-height:1.25;
  font-weight:500;
}

/* Safari Planning — compact single-line tabs */
.adeli-safari-planning-tabs,
.safari-planning-tabs,
.homepage-tabs-nav{
  display:flex;
  flex-wrap:nowrap;
  gap:0;
  overflow-x:auto;
  scrollbar-width:none;
  background:var(--adeli-forest);
  border-radius:10px;
  padding:0;
}
.adeli-safari-planning-tabs::-webkit-scrollbar,
.safari-planning-tabs::-webkit-scrollbar,
.homepage-tabs-nav::-webkit-scrollbar{display:none;}

.adeli-safari-planning-tabs > *,
.safari-planning-tabs > *,
.homepage-tabs-nav > *{
  flex:1 1 0;
  min-width:max-content;
}

.adeli-safari-planning-tabs a,
.safari-planning-tabs a,
.homepage-tabs-nav a,
.adeli-safari-planning-tabs button,
.safari-planning-tabs button,
.homepage-tabs-nav button{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:10px 14px;
  border:0;
  border-right:1px solid rgba(255,255,255,.16);
  border-radius:0;
  background:var(--adeli-forest);
  color:#fff;
  font-family:"DM Sans",sans-serif;
  font-size:.9rem;
  font-weight:700;
  line-height:1.1;
  white-space:nowrap;
  text-decoration:none;
}

.adeli-safari-planning-tabs a:last-child,
.safari-planning-tabs a:last-child,
.homepage-tabs-nav a:last-child,
.adeli-safari-planning-tabs button:last-child,
.safari-planning-tabs button:last-child,
.homepage-tabs-nav button:last-child{
  border-right:0;
}

.adeli-safari-planning-tabs a:hover,
.adeli-safari-planning-tabs a:focus,
.adeli-safari-planning-tabs a.active,
.safari-planning-tabs a:hover,
.safari-planning-tabs a:focus,
.safari-planning-tabs a.active,
.homepage-tabs-nav a:hover,
.homepage-tabs-nav a:focus,
.homepage-tabs-nav a.active,
.adeli-safari-planning-tabs button:hover,
.adeli-safari-planning-tabs button:focus,
.adeli-safari-planning-tabs button.active,
.safari-planning-tabs button:hover,
.safari-planning-tabs button:focus,
.safari-planning-tabs button.active,
.homepage-tabs-nav button:hover,
.homepage-tabs-nav button:focus,
.homepage-tabs-nav button.active{
  background:var(--adeli-cta);
  color:#fff;
}

/* Common tab-panel CTA styling */
.adeli-safari-planning-tabs + .tab-content a,
.safari-planning-tabs + .tab-content a,
.homepage-tabs-nav + .tab-content a,
.safari-planning .tab-panel a.button,
.safari-planning .tab-panel a.wp-element-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:9px 18px;
  background:var(--adeli-cta);
  color:#fff;
  border-radius:999px;
  font-family:"Playfair Display",serif;
  font-weight:600;
  text-decoration:none;
}

/* Hero restraint */
.hero-title,
.page-hero h1,
.site-hero h1{
  font-size:clamp(2rem,3.5vw,3rem);
  line-height:1.08;
  font-weight:500;
}

/* Mobile */
@media (max-width: 767px){
  body{font-size:16px;line-height:1.68;}
  h1{font-size:2rem;}
  h2{font-size:1.65rem;}
  h3{font-size:1.35rem;}
  .section,.site-section,.home-section{margin-block:24px;}
  .adeli-safari-planning-tabs,
  .safari-planning-tabs,
  .homepage-tabs-nav{
    justify-content:flex-start;
  }
  .adeli-safari-planning-tabs > *,
  .safari-planning-tabs > *,
  .homepage-tabs-nav > *{
    flex:0 0 auto;
  }
  .adeli-safari-planning-tabs a,
  .safari-planning-tabs a,
  .homepage-tabs-nav a,
  .adeli-safari-planning-tabs button,
  .safari-planning-tabs button,
  .homepage-tabs-nav button{
    min-height:46px;
    padding:9px 13px;
    font-size:.86rem;
  }
}
