/*
Theme Name: Julie Everton
Theme URI: https://julieeverton.com
Template: twentytwentyfive
Author: Art Fusion
Author URI: https://julieeverton.com
Description: Child theme of Twenty Twenty-Five for julieeverton.com. Consolidates the site's design system — Cormorant Garamond + DM Sans, cream/green palette — that previously lived as duplicated inline <style> blocks in the header/footer template parts and individual pages.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive-julie
*/

/* ==========================================================================
   Fonts are enqueued in functions.php (Cormorant Garamond + DM Sans).
   ========================================================================== */

/* --------------------------------------------------------------------------
   Global / base
   -------------------------------------------------------------------------- */
body,.wp-site-blocks,.entry-content,.wp-block-post-content,main{background-color:#f5f1e8!important}
html{background-color:#f5f1e8}
.wp-block-post-title{display:none!important}

.wp-block-post-content>*:first-child{margin-top:0!important}
.entry-content,.wp-block-post-content{padding-top:0!important;margin-top:0!important}
.wp-site-blocks>*{padding-top:0!important}
main.wp-block-group{margin-top:0!important;padding-top:0!important}
main.wp-block-group>.wp-block-group.alignfull{padding-top:0!important}
.wp-block-post-content>.wp-block-group.alignfull:first-child{padding-top:0!important}

/* --------------------------------------------------------------------------
   Header / navigation
   -------------------------------------------------------------------------- */
.je-header-wrap{background:#f5f1e8;border-bottom:none}
.je-header-inner{display:flex;align-items:center;justify-content:space-between;padding:.9rem 5%;max-width:1140px;margin:0 auto}
.je-site-logo{display:flex;align-items:center;gap:.55rem;text-decoration:none}
.je-logo-dot{width:20px;height:20px;border-radius:50%;background:#2d4a3e;flex-shrink:0}
.je-site-name{font-family:'DM Sans',sans-serif;font-size:.9rem;font-weight:500;color:#1c1c1c}
.je-main-nav{display:flex;align-items:center;gap:2rem;list-style:none;margin:0;padding:0}
.je-main-nav a{font-family:'DM Sans',sans-serif;font-size:.88rem;color:#1c1c1c;text-decoration:none;font-weight:400}
.je-main-nav a:hover{opacity:.6}
.je-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.je-hamburger span{display:block;width:22px;height:2px;background:#1c1c1c;transition:all .25s}
.je-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.je-hamburger.open span:nth-child(2){opacity:0}
.je-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.je-mobile-nav{display:none;flex-direction:column;background:#f5f1e8;padding:1.2rem 5%;border-top:1px solid #e8e3da}
.je-mobile-nav.open{display:flex}
.je-mobile-nav a{font-family:'DM Sans',sans-serif;font-size:1rem;color:#1c1c1c;text-decoration:none;padding:.6rem 0;border-bottom:1px solid #e8e3da}
.je-mobile-nav a:last-child{border-bottom:none}

/* Legacy block-nav / site-title overrides (kept for any core nav fallback) */
.wp-block-navigation a,.wp-block-navigation__container a{font-family:'DM Sans',sans-serif!important;font-size:.88rem!important;color:#1c1c1c!important;text-decoration:none!important}
.wp-block-site-title,.wp-block-site-title a{font-family:'DM Sans',sans-serif!important;color:#1c1c1c!important;font-weight:500!important;font-size:.95rem!important}
header.wp-block-template-part{background-color:#f5f1e8!important;padding:.8rem 5%!important}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */
.je-footer{background:#f5f1e8;border-top:1px solid #d9d3c8;margin-top:4rem}
.je-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1140px;margin:0 auto;padding:1.8rem 5%;font-family:'DM Sans',sans-serif;font-size:.8rem;color:#888}
.je-footer-name{color:#1c1c1c;font-weight:500}

/* --------------------------------------------------------------------------
   Home — hero
   -------------------------------------------------------------------------- */
.je-hero{padding:.8rem 5% 4rem!important}
.je-tagline{font-family:'DM Sans',sans-serif!important;font-size:.68rem!important;letter-spacing:.22em!important;color:#666!important;margin-bottom:.2rem!important;font-weight:400!important}
.je-name{font-family:'Cormorant Garamond',serif!important;font-size:clamp(4rem,13vw,11rem)!important;line-height:.88!important;font-weight:300!important;color:#1c1c1c!important;margin-top:.3rem!important;margin-bottom:4rem!important}
.je-name em{color:#2d4a3e!important;font-style:italic!important;font-weight:300!important}
.je-hero-cols{align-items:flex-start!important}
.je-intro{font-family:'DM Sans',sans-serif!important;font-size:1.05rem!important;line-height:1.65!important;color:#1c1c1c!important;margin-bottom:2.5rem!important;max-width:420px!important}

/* Buttons */
.je-btn-primary .wp-block-button__link{background-color:#2d4a3e!important;color:#f5f1e8!important;border-radius:3px!important;font-family:'DM Sans',sans-serif!important;font-size:.88rem!important;padding:.75rem 1.4rem!important;border:none!important}
.je-btn-secondary .wp-block-button__link{background-color:transparent!important;color:#1c1c1c!important;border:1.5px solid #1c1c1c!important;border-radius:3px!important;font-family:'DM Sans',sans-serif!important;font-size:.88rem!important;padding:.75rem 1.4rem!important}

/* Portrait (available for image-with-caption layouts) */
.je-portrait-wrap{position:relative;display:block;margin:0}
.je-portrait-small{max-width:320px;margin-left:auto;margin-top:3rem}
.je-portrait-img{width:100%;display:block;object-fit:cover}
.je-fig-label{position:absolute;bottom:2.8rem;left:.8rem;background:rgba(245,241,232,.88);font-family:'DM Sans',sans-serif;font-size:.58rem;letter-spacing:.18em;padding:.2rem .55rem;color:#1c1c1c}
.je-portrait-caption{font-family:'DM Sans',sans-serif;font-size:.72rem;color:#777;font-style:italic;margin-top:.6rem;display:block;line-height:1.5}

/* Home — info bar */
.je-info-bar{border-top:1px solid #d9d3c8!important;padding:1.8rem 5%!important;background-color:#f5f1e8!important;gap:2rem!important}
.je-info-item{flex:1!important;gap:.15rem!important}
.je-info-label{font-family:'DM Sans',sans-serif!important;font-size:.62rem!important;letter-spacing:.18em!important;color:#999!important;margin:0 0 .25rem!important}
.je-info-value{font-family:'DM Sans',sans-serif!important;font-size:.95rem!important;color:#1c1c1c!important;margin:0!important}

/* --------------------------------------------------------------------------
   Content pages (.je-page)
   -------------------------------------------------------------------------- */
.je-page{padding:3rem 5% 5rem!important}
.je-page-label{font-family:'DM Sans',sans-serif;font-size:.68rem;letter-spacing:.22em;color:#666;margin-bottom:.3rem!important;text-transform:uppercase}
.je-page-title{font-family:'Cormorant Garamond',serif!important;font-size:clamp(2.5rem,6vw,5rem)!important;line-height:1!important;font-weight:300!important;color:#1c1c1c!important;margin:0 0 3rem!important;max-width:680px}
.je-page-title em{color:#2d4a3e!important;font-style:italic!important}
.je-page-body p,.je-page-body li{font-family:'DM Sans',sans-serif!important;font-size:1rem!important;line-height:1.75!important;color:#1c1c1c!important;max-width:680px}
.je-section-label{font-family:'DM Sans',sans-serif!important;font-size:.72rem!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:#999!important;margin:2rem 0 .4rem!important;font-weight:400!important}
.je-divider{border:none!important;border-top:1px solid #d9d3c8!important;margin:2.5rem 0!important;max-width:680px}
.je-works-list{list-style:none;padding:0;margin:0;max-width:680px}
.je-works-list li{font-family:'DM Sans',sans-serif;font-size:.95rem;color:#1c1c1c;padding:1rem 0;border-bottom:1px solid #e8e3da}
.je-works-list li:last-child{border-bottom:none}
.je-works-list .venue{color:#888;font-size:.85rem;display:block;margin-top:.2rem}

/* --------------------------------------------------------------------------
   Testimonials (Teaching, Consultancy)
   -------------------------------------------------------------------------- */
.je-testimonials{max-width:680px;margin:0}
.je-testimonial{padding:1.6rem 0;border-bottom:1px solid #e8e3da}
.je-testimonial:last-child{border-bottom:none}
.je-testimonial blockquote{margin:0;border:none;padding:0}
.je-testimonial p{font-family:'Cormorant Garamond',serif!important;font-size:1.3rem!important;line-height:1.5!important;font-style:italic!important;color:#1c1c1c!important;max-width:680px}
.je-testimonial cite{display:block!important;font-family:'DM Sans',sans-serif!important;font-size:.78rem!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#2d4a3e!important;font-style:normal!important;margin-top:.7rem!important}
.je-subhead{font-family:'DM Sans',sans-serif!important;font-size:.72rem!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#bbb!important;margin:1.5rem 0 .2rem!important}

/* --------------------------------------------------------------------------
   WPForms — cap "medium" textareas to match medium inputs. WPForms only
   applies its 60% max-width to inputs/selects, leaving textareas full-width,
   so the Contact message box rendered far wider than the Name/Email fields.
   -------------------------------------------------------------------------- */
.wpforms-field-textarea textarea.wpforms-field-medium{max-width:60%}
@media (max-width:600px){
  .wpforms-field-textarea textarea.wpforms-field-medium{max-width:100%}
}

/* --------------------------------------------------------------------------
   Responsive — single breakpoint at 860px (merged from header + global)
   -------------------------------------------------------------------------- */
@media (max-width: 860px) {
  .je-main-nav { display: none; }
  .je-hamburger { display: flex; }
  .je-header-inner { padding: .8rem 4%; }
  .je-hero { padding: .8rem 4% 3rem !important; }
  .je-name { font-size: clamp(3.5rem, 10vw, 6rem) !important; margin-bottom: 2rem !important; }
  .je-hero-cols { flex-direction: row !important; gap: 1.5rem !important; }
  .je-hero-cols .wp-block-column:first-child { flex-basis: 58% !important; }
  .je-hero-cols .wp-block-column:last-child { flex-basis: 38% !important; }
  .je-portrait-small { max-width: 100% !important; margin-top: 2rem; }
  .je-info-bar { flex-wrap: wrap !important; gap: 1.2rem !important; padding: 1.4rem 4% !important; }
  .je-info-item { flex: 1 1 40% !important; }
}
