@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');

:root{
  --ink:#17372f;
  --ink-2:#284a40;
  --cream:#f6f2eb;
  --paper:#fffdf9;
  --sage:#c6d2c7;
  --sage-2:#e7ece6;
  --clay:#ad755d;
  --stone:#d8d0c5;
  --muted:#61726b;
  --line:rgba(23,55,47,.14);
  --shadow:0 18px 55px rgba(26,45,38,.08);
  --serif:'Libre Caslon Display', Georgia, serif;
  --sans:'DM Sans', Arial, sans-serif;
}

html{scroll-behavior:smooth;background:var(--cream)}
body.premium-site{margin:0;background:var(--cream)!important;color:var(--ink)!important;font-family:var(--sans)!important;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.premium-site *{box-sizing:border-box}
body.premium-site p,body.premium-site li{font-family:var(--sans)!important;color:var(--muted);font-size:17px;line-height:1.8}
body.premium-site h1,body.premium-site h2,body.premium-site h3,body.premium-site h4,body.premium-site .elementor-heading-title{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.025em;color:var(--ink)!important}
body.premium-site a{transition:color .22s ease,opacity .22s ease,transform .22s ease,background .22s ease,border-color .22s ease}
body.premium-site img{display:block;filter:none!important;border-radius:0!important;box-shadow:none!important}
body.premium-site #wpadminbar,body.premium-site .skip-link,body.premium-site .ast-scroll-to-top-right{display:none!important}

/* Header: original logo, original colours, stable navigation */
body.premium-site .site-header,body.premium-site #masthead{position:sticky!important;z-index:1000!important;top:0;left:0;width:100%;background:rgba(255,253,249,.96)!important;border-bottom:1px solid var(--line)!important;box-shadow:none!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
body.premium-site .ast-primary-header-bar{background:transparent!important;border:0!important;min-height:88px!important}
body.premium-site .ast-builder-grid-row{max-width:1320px!important;margin:auto!important;padding:14px 32px!important;align-items:center!important}
body.premium-site header .custom-logo-link img{width:158px!important;max-width:158px!important;height:auto!important;filter:none!important;transform:none!important}
body.premium-site .main-header-menu>.menu-item>a,body.premium-site .main-header-menu>.menu-item>.menu-link{color:var(--ink)!important;font-family:var(--sans)!important;font-size:14px!important;font-weight:500!important;letter-spacing:.01em!important;padding:14px 16px!important}
body.premium-site .main-header-menu>.menu-item>a:hover,body.premium-site .main-header-menu>.menu-item>.menu-link:hover{color:var(--clay)!important;opacity:1!important}
body.premium-site .main-header-menu .sub-menu{background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:8px!important;box-shadow:0 16px 42px rgba(20,36,30,.12)!important;min-width:230px!important}
body.premium-site .main-header-menu .sub-menu a{color:var(--ink)!important;padding:10px 13px!important;border-radius:6px!important;font-size:14px!important}
body.premium-site .main-header-menu .sub-menu a:hover{background:var(--sage-2)!important}
body.premium-site .ast-header-button-1 .ast-custom-button,body.premium-site .ast-builder-button-wrap .ast-custom-button{background:var(--ink)!important;color:#fff!important;border:1px solid var(--ink)!important;border-radius:999px!important;padding:13px 22px!important;font-size:13px!important;font-weight:600!important;box-shadow:none!important}
body.premium-site .ast-header-button-1 .ast-custom-button:hover{transform:translateY(-1px);background:var(--ink-2)!important}
body.premium-site.premium-scrolled #masthead{background:rgba(255,253,249,.98)!important;border-bottom:1px solid var(--line)!important;animation:none!important}
body.premium-site.premium-scrolled .ast-primary-header-bar{min-height:78px!important}
body.premium-site.premium-scrolled header .custom-logo-link img{filter:none!important}
body.premium-site.premium-scrolled .main-header-menu>.menu-item>a,body.premium-site.premium-scrolled .main-header-menu>.menu-item>.menu-link{color:var(--ink)!important}

/* Hero: natural photography, no dark overlays, more compact */
body.premium-site main .elementor>.elementor-section:first-child,body.premium-site .entry-content>.elementor>.elementor-section:first-child{min-height:620px!important;display:flex!important;align-items:center!important;position:relative!important;overflow:hidden!important;background-color:transparent!important;background-position:center!important;background-size:cover!important}
body.premium-site main .elementor>.elementor-section:first-child:before,body.premium-site .entry-content>.elementor>.elementor-section:first-child:before,body.premium-site main .elementor>.elementor-section:first-child:after,body.premium-site .entry-content>.elementor>.elementor-section:first-child:after{content:none!important;display:none!important;background:none!important}
body.premium-site main .elementor>.elementor-section:first-child>.elementor-container,body.premium-site .entry-content>.elementor>.elementor-section:first-child>.elementor-container{position:relative!important;z-index:2!important;width:100%!important;max-width:1320px!important;padding:70px 32px!important;margin:auto!important;display:flex!important;justify-content:flex-start!important;align-items:center!important}
body.premium-site main .elementor>.elementor-section:first-child>.elementor-container>.elementor-column,body.premium-site .entry-content>.elementor>.elementor-section:first-child>.elementor-container>.elementor-column{max-width:590px!important;flex:0 0 590px!important;width:590px!important}
body.premium-site main .elementor>.elementor-section:first-child .elementor-widget-wrap,body.premium-site .entry-content>.elementor>.elementor-section:first-child .elementor-widget-wrap{background:rgba(255,253,249,.96)!important;padding:46px 48px 44px!important;align-content:center!important;border:1px solid rgba(23,55,47,.10)!important;box-shadow:0 16px 44px rgba(29,45,39,.08)!important}
body.premium-site main .elementor>.elementor-section:first-child h1,body.premium-site .entry-content>.elementor>.elementor-section:first-child h1{font-size:clamp(50px,6vw,82px)!important;line-height:.98!important;max-width:760px!important;color:var(--ink)!important;text-wrap:balance;margin:0 0 22px!important}
body.premium-site main .elementor>.elementor-section:first-child h2,body.premium-site main .elementor>.elementor-section:first-child h3,body.premium-site .entry-content>.elementor>.elementor-section:first-child h2,body.premium-site .entry-content>.elementor>.elementor-section:first-child h3{font-family:var(--sans)!important;color:var(--muted)!important;font-size:14px!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:500!important}
body.premium-site main .elementor>.elementor-section:first-child .elementor-button,body.premium-site .entry-content>.elementor>.elementor-section:first-child .elementor-button{background:var(--ink)!important;color:#fff!important;border:1px solid var(--ink)!important;border-radius:999px!important;padding:15px 24px!important;font-family:var(--sans)!important;font-size:14px!important;font-weight:600!important;margin-top:16px!important}
body.premium-site main .elementor>.elementor-section:first-child .elementor-button:hover{transform:translateY(-2px);background:var(--ink-2)!important;color:#fff!important}

/* Editorial rhythm */
body.premium-site .elementor-section{border:0!important}
body.premium-site .elementor-section:not(:first-child){padding-top:94px!important;padding-bottom:94px!important;background:transparent}
body.premium-site .elementor-section>.elementor-container{max-width:1240px!important;padding-left:28px!important;padding-right:28px!important}
body.premium-site .elementor-widget-heading h2{font-size:clamp(40px,4.8vw,68px)!important;line-height:1.04!important}
body.premium-site .elementor-widget-heading h3{font-size:clamp(28px,3.2vw,46px)!important;line-height:1.08!important}
body.premium-site .elementor-widget-heading h4{font-size:28px!important;line-height:1.15!important}
body.premium-site .elementor-divider-separator{border-color:var(--clay)!important;border-top-width:1px!important;width:64px!important}

/* Images: square corners and authentic colours */
body.premium-site .elementor-column .elementor-widget-image img,body.premium-site .elementor-widget-image img,body.premium-site .elementor-widget-image-box img{border-radius:0!important;box-shadow:none!important;filter:none!important;transition:none!important;object-fit:cover}
body.premium-site .elementor-column:hover>.elementor-widget-wrap>.elementor-widget-image img{transform:none!important;filter:none!important}
body.premium-site .elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:18px!important}
body.premium-site .elementor-widget-button .elementor-button{background:var(--ink)!important;color:#fff!important;border:1px solid var(--ink)!important;border-radius:999px!important;padding:15px 22px!important;font-family:var(--sans)!important;font-size:14px!important;font-weight:600!important}
body.premium-site .elementor-widget-button .elementor-button:hover{background:transparent!important;color:var(--ink)!important;transform:translateY(-2px)}

/* Section treatments: restrained, not card-heavy */
body.premium-site .elementor-section[style*="background-color"],body.premium-site .elementor-section.elementor-section-boxed{background-color:transparent!important}
body.premium-site .premium-panel{max-width:1280px!important;margin:26px auto!important;border-radius:0!important;background:var(--paper)!important;box-shadow:none!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;overflow:hidden!important}
body.premium-site .premium-panel.premium-dark{background:var(--ink)!important;color:white!important}
body.premium-site .premium-panel.premium-dark h2,body.premium-site .premium-panel.premium-dark h3,body.premium-site .premium-panel.premium-dark h4,body.premium-site .premium-panel.premium-dark p,body.premium-site .premium-panel.premium-dark li{color:#fff!important}
body.premium-site .premium-quote{background:var(--paper)!important;border-radius:0!important;max-width:1280px!important;margin:26px auto!important;padding:100px 72px!important;position:relative!important;overflow:hidden!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
body.premium-site .premium-quote:after{content:none!important}
body.premium-site .premium-quote blockquote,body.premium-site .premium-quote .elementor-testimonial-content{font-family:var(--serif)!important;color:var(--ink)!important;font-size:clamp(34px,4.2vw,60px)!important;line-height:1.08!important;max-width:950px;margin:auto}

/* Footer */
body.premium-site footer,body.premium-site #colophon{background:var(--ink)!important;color:rgba(255,255,255,.72)!important;border:0!important;margin-top:64px}
body.premium-site footer .ast-builder-grid-row{padding-top:62px!important;padding-bottom:62px!important}
body.premium-site footer a{color:#fff!important;font-size:14px!important}
body.premium-site footer img{filter:none!important}

/* No decorative overlays on content */
body.premium-site .premium-botanical{position:relative!important;overflow:visible!important}
body.premium-site .premium-botanical:before{content:none!important;display:none!important;background:none!important}

/* Reveal: subtle and reliable */
body.premium-site .premium-reveal{opacity:1!important;transform:none!important;transition:none!important}
body.premium-site .premium-reveal.is-visible{opacity:1!important;transform:none!important}

/* Forms */
body.premium-site input,body.premium-site textarea,body.premium-site select{background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:8px!important;padding:14px 16px!important;color:var(--ink)!important;font-family:var(--sans)!important;box-shadow:none!important}
body.premium-site input:focus,body.premium-site textarea:focus{border-color:var(--ink)!important;outline:none!important}
body.premium-site button[type=submit],body.premium-site input[type=submit]{background:var(--ink)!important;color:#fff!important;border-radius:999px!important;border:1px solid var(--ink)!important;padding:15px 24px!important;font-weight:600!important}

@media(max-width:921px){
  body.premium-site #masthead,body.premium-site.premium-scrolled #masthead{position:sticky!important;background:rgba(255,253,249,.98)!important}
  body.premium-site .ast-builder-grid-row{padding:12px 20px!important}
  body.premium-site header .custom-logo-link img{width:132px!important;max-width:132px!important;filter:none!important}
  body.premium-site .ast-mobile-menu-trigger-fill{background:var(--ink)!important;color:#fff!important;border-radius:50%!important;width:44px;height:44px}
  body.premium-site .ast-mobile-header-wrap .ast-mobile-header-content{background:var(--paper)!important;border-radius:0!important;border-top:1px solid var(--line)!important;padding:14px 20px 22px!important}
  body.premium-site .ast-mobile-header-content .menu-link{color:var(--ink)!important;padding:12px 4px!important}
  body.premium-site main .elementor>.elementor-section:first-child,body.premium-site .entry-content>.elementor>.elementor-section:first-child{min-height:560px!important;align-items:flex-end!important}
  body.premium-site main .elementor>.elementor-section:first-child>.elementor-container,body.premium-site .entry-content>.elementor>.elementor-section:first-child>.elementor-container{padding:36px 18px!important;align-items:flex-end!important}
  body.premium-site main .elementor>.elementor-section:first-child>.elementor-container>.elementor-column,body.premium-site .entry-content>.elementor>.elementor-section:first-child>.elementor-container>.elementor-column{max-width:100%!important;flex:0 0 100%!important;width:100%!important}
  body.premium-site main .elementor>.elementor-section:first-child .elementor-widget-wrap,body.premium-site .entry-content>.elementor>.elementor-section:first-child .elementor-widget-wrap{padding:30px 26px 28px!important}
  body.premium-site main .elementor>.elementor-section:first-child h1,body.premium-site .entry-content>.elementor>.elementor-section:first-child h1{font-size:clamp(44px,12vw,62px)!important;line-height:1!important}
  body.premium-site .elementor-section:not(:first-child){padding-top:66px!important;padding-bottom:66px!important}
  body.premium-site .elementor-section>.elementor-container{padding-left:10px!important;padding-right:10px!important}
  body.premium-site .elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:12px!important}
  body.premium-site .premium-panel,body.premium-site .premium-quote{border-radius:0!important;margin:14px 0!important}
  body.premium-site .premium-quote{padding:68px 26px!important}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
