:root{--em:#0B3D2E;--em-d:#082B20;--ink:#14171A;--gold:#B8975A;--ivory:#F7F4EC;--stone:#D9D3C5;--slate:#4A5056;--garnet:#8C2F39;--ui:'Inter',Helvetica,Arial,sans-serif;--serif:'Playfair Display',Georgia,serif;--read:'Source Serif 4',Georgia,serif}
html{scroll-behavior:smooth}
body{background:var(--ivory);color:var(--slate);font-family:var(--read);-webkit-font-smoothing:antialiased}
body,.elementor-widget-text-editor{font-family:var(--read)}
a{text-decoration:none}
::selection{background:var(--gold);color:var(--ink)}
.mdl-pattern{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M24 0L48 24L24 48L0 24Z' fill='none' stroke='%23B8975A' stroke-opacity='.16'/%3E%3C/svg%3E");background-size:48px 48px}

/* Typography helpers */
body .mdl-h1 .elementor-heading-title{font-family:var(--serif);font-weight:700;font-size:clamp(34px,5vw,62px);line-height:1.08;letter-spacing:-.01em}
body .mdl-h2 .elementor-heading-title{font-family:var(--serif);font-weight:700;font-size:clamp(28px,3.4vw,42px);line-height:1.12;letter-spacing:-.005em}
body .mdl-h3 .elementor-heading-title{font-family:var(--serif);font-weight:700;font-size:clamp(20px,2vw,26px);line-height:1.2}
.mdl-kicker,.mdl-kicker .elementor-heading-title{font-family:var(--ui)!important;font-size:12px!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--em);line-height:1.4!important}
.mdl-on-dark .mdl-kicker,.mdl-kicker--gold,.mdl-kicker--gold .elementor-heading-title{color:var(--gold)!important}
.mdl-lead-text,.mdl-lead-text p{font-size:clamp(17px,1.5vw,20px);line-height:1.65;max-width:60ch}
.mdl-on-dark .mdl-lead-text,.mdl-on-dark p,.mdl-on-dark li{color:#E6E1D3}
.mdl-text,.mdl-text p{font-size:18px;line-height:1.7;max-width:68ch}
.mdl-rule:after{content:"";display:block;width:48px;height:1px;background:var(--gold);margin-top:18px}
.mdl-center .mdl-rule:after{margin-left:auto;margin-right:auto}
.mdl-narrow{max-width:760px}

/* Buttons */
.mdl-btn .elementor-button.elementor-button,.mdl-submit{display:inline-block;font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1.2;padding:16px 28px;border-radius:2px;background:var(--em);color:var(--ivory);border:0;border-bottom:2px solid transparent;transition:border-color .25s,background .25s,color .25s;cursor:pointer}
.mdl-btn .elementor-button.elementor-button:hover,.mdl-submit:hover{border-bottom-color:var(--gold);background:var(--em-d);color:var(--ivory)}
.mdl-btn--gold .elementor-button.elementor-button{background:var(--gold);color:var(--ink)}
.mdl-btn--gold .elementor-button.elementor-button:hover{background:#c9a96d;color:var(--ink);border-bottom-color:var(--ink)}
.mdl-btn--ghost .elementor-button.elementor-button{background:transparent;color:var(--ivory);border:1px solid var(--gold);border-bottom-width:1px}
.mdl-btn--ghost .elementor-button.elementor-button:hover{background:rgba(184,151,90,.14);color:var(--ivory);border-color:var(--gold)}
.mdl-btn--line .elementor-button.elementor-button{background:transparent;color:var(--em);border:1px solid var(--em);border-bottom-width:1px}
.mdl-btn--line .elementor-button.elementor-button:hover{background:var(--em);color:var(--ivory)}
.mdl-arrow a{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--em);border-bottom:1px solid var(--gold);padding-bottom:3px}
.mdl-on-dark .mdl-arrow a{color:var(--gold)}

/* Header */
.ehf-header,#masthead.ehf-header{position:sticky;top:0;z-index:100;background:var(--ivory)}
.admin-bar .ehf-header{top:32px}
.mdl-topbar{background:var(--ink)}
.mdl-topbar .elementor-widget-text-editor,.mdl-topbar .elementor-widget-text-editor p{font-family:var(--ui);font-size:12px;letter-spacing:.06em;color:#CFC9B8;margin:0}
.mdl-lang{list-style:none;margin:0;padding:0;display:flex;gap:14px}
.mdl-lang a{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#CFC9B8}
.mdl-lang .current-lang a,.mdl-lang a:hover{color:var(--gold)}
.mdl-brand{display:flex;align-items:center;gap:14px;color:var(--ink)}
.mdl-brand img{width:54px;height:54px;display:block}
.mdl-brand__txt{display:flex;flex-direction:column;line-height:1}
.mdl-brand__top{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:var(--em);padding-bottom:5px}
.mdl-brand__main{font-family:var(--serif);font-size:30px;font-weight:700;color:var(--ink)}
.mdl-navbar{background:var(--em)}
.mdl-nav{position:relative}
.mdl-nav__t{display:none}
.mdl-nav__burger{display:none}
.mdl-nav__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 30px}
.mdl-nav__list a{display:block;font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ivory);padding:16px 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.mdl-nav__list a:hover,.mdl-nav__list .current-menu-item a{color:var(--gold);border-bottom-color:var(--gold)}
@media(max-width:900px){
.mdl-topbar .elementor-widget-text-editor{display:none}
.mdl-nav__burger{display:flex;align-items:center;justify-content:space-between;height:48px;cursor:pointer;color:var(--ivory);font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.mdl-nav__burger:before{content:"Menu"}
.mdl-nav__burger span,.mdl-nav__burger span:before,.mdl-nav__burger span:after{display:block;width:22px;height:2px;background:var(--ivory);position:relative}
.mdl-nav__burger span:before,.mdl-nav__burger span:after{content:"";position:absolute;left:0}
.mdl-nav__burger span:before{top:-7px}.mdl-nav__burger span:after{top:7px}
.mdl-nav__list{display:none;flex-direction:column;gap:0;padding-bottom:12px}
.mdl-nav__t:checked~.mdl-nav__list{display:flex}
.mdl-nav__list a{padding:13px 0;border-bottom:1px solid rgba(247,244,236,.12)}
.mdl-brand img{width:44px;height:44px}.mdl-brand__main{font-size:24px}
.mdl-masthead .mdl-btn{display:none}
}

/* Hero and bands */
.mdl-hero{position:relative;overflow:hidden}
.mdl-hero-mark img{width:min(300px,60vw);height:auto;display:block}
.mdl-on-dark{color:#E6E1D3}
.mdl-on-dark .elementor-heading-title{color:var(--ivory)}
.mdl-panel{background:#fff;border:1px solid var(--stone);border-top:3px solid var(--stone);transition:border-color .25s,transform .25s;height:100%}
.mdl-panel:hover{border-top-color:var(--gold)}
.mdl-panel .elementor-heading-title{color:var(--ink)}
.mdl-panel--em{background:var(--em);border-color:var(--em);border-top-color:var(--gold)}
.mdl-panel--em .elementor-heading-title,.mdl-panel--em p{color:var(--ivory)}
.mdl-panel--em .mdl-arrow a{color:var(--gold)}
.mdl-list{list-style:none;margin:0;padding:0}
.mdl-list li{padding:18px 0;border-bottom:1px solid rgba(184,151,90,.35);font-family:var(--serif);font-size:20px;color:var(--ivory)}
.mdl-list li:first-child{border-top:1px solid rgba(184,151,90,.35)}
.mdl-list small{display:block;font-family:var(--read);font-size:15px;color:#CFC9B8;margin-top:4px}
.mdl-tag{display:inline-block;font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--gold);color:var(--gold);padding:5px 10px}

/* Cards and grids */
.mdl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 30px}
.mdl-card{background:transparent}
.mdl-card__img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--em)}
.mdl-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.mdl-card:hover .mdl-card__img img{transform:scale(1.03)}
.mdl-card__ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--em),var(--em-d));background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M24 0L48 24L24 48L0 24Z' fill='none' stroke='%23B8975A' stroke-opacity='.25'/%3E%3C/svg%3E"),linear-gradient(135deg,var(--em),var(--em-d))}
.mdl-card__body{padding-top:16px;border-top:3px solid transparent;margin-top:-3px;transition:border-color .25s}
.mdl-card:hover .mdl-card__body{border-top-color:var(--gold)}
.mdl-card .mdl-kicker{display:block;margin-bottom:8px}
.mdl-card__title{font-family:var(--serif);font-size:23px;line-height:1.2;margin:0 0 10px;font-weight:700}
.mdl-card__title a{color:var(--ink)}
.mdl-card__title a:hover{color:var(--em)}
.mdl-card__ex{font-size:16px;line-height:1.6;margin:0 0 10px;color:var(--slate)}
.mdl-card__date{font-family:var(--ui);font-size:12px;letter-spacing:.06em;color:#6b7076}
.mdl-lead{display:grid;grid-template-columns:1.35fr 1fr;gap:48px}
.mdl-lead__main .mdl-card__title{font-size:clamp(26px,3vw,36px)}
.mdl-lead__side{display:flex;flex-direction:column;gap:22px}
.mdl-card--compact{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:start;padding-bottom:22px;border-bottom:1px solid var(--stone)}
.mdl-card--compact .mdl-card__img{aspect-ratio:1/1}
.mdl-card--compact .mdl-card__body{padding-top:0;border:0;margin:0}
.mdl-card--compact .mdl-card__title{font-size:19px}
.mdl-empty{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--slate);padding:36px 0;border-top:1px solid var(--stone);border-bottom:1px solid var(--stone);text-align:center}
.mdl-filters{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0 0 36px;padding-bottom:14px;border-bottom:1px solid var(--stone)}
.mdl-filters a,.mdl-pager a{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);padding-bottom:6px;border-bottom:2px solid transparent}
.mdl-filters a:hover,.mdl-filters a.is-active{color:var(--em);border-bottom-color:var(--gold)}
.mdl-pager{display:flex;gap:10px;margin-top:44px;justify-content:center}
.mdl-pager a{padding:8px 14px;border:1px solid var(--stone)}
.mdl-pager a.is-active,.mdl-pager a:hover{background:var(--em);color:var(--ivory);border-color:var(--em)}
@media(max-width:900px){.mdl-grid{grid-template-columns:1fr 1fr}.mdl-lead{grid-template-columns:1fr;gap:32px}}
@media(max-width:600px){.mdl-grid{grid-template-columns:1fr}.mdl-card--compact{grid-template-columns:96px 1fr}}

/* Forms */
.mdl-form{max-width:680px}
.mdl-field{margin:0 0 20px}
.mdl-field label{display:block;font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:8px}
.mdl-field input,.mdl-field textarea{width:100%;font-family:var(--read);font-size:17px;color:var(--ink);background:#fff;border:1px solid var(--stone);border-radius:2px;padding:14px 16px;transition:border-color .2s,box-shadow .2s}
.mdl-field input:focus,.mdl-field textarea:focus{outline:0;border-color:var(--em);box-shadow:0 0 0 3px rgba(11,61,46,.14)}
.mdl-hp{position:absolute!important;left:-9999px;height:0;overflow:hidden}
.mdl-notice{font-family:var(--ui);font-size:14px;padding:14px 18px;margin:0 0 22px;border-left:3px solid var(--em);background:#fff;color:var(--ink)}
.mdl-notice--err{border-left-color:var(--garnet)}
.mdl-form--newsletter{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;max-width:640px}
.mdl-form--newsletter .mdl-field{flex:1 1 260px;margin:0}
.mdl-form--newsletter p{margin:0}
.mdl-on-dark .mdl-field label{color:var(--ivory)}
.mdl-on-dark .mdl-submit{background:var(--gold);color:var(--ink)}
.mdl-on-dark .mdl-submit:hover{background:#c9a96d;color:var(--ink);border-bottom-color:var(--ink)}

/* Footer */
.mdl-footer{background:var(--ink);color:#CFC9B8}
.mdl-footer .mdl-brand__main{color:var(--ivory)}.mdl-footer .mdl-brand__top{color:var(--gold)}
.mdl-footer h4,.mdl-footer .mdl-fh{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 16px}
.mdl-footer ul{list-style:none;margin:0;padding:0}
.mdl-footer li{margin:0 0 10px}
.mdl-footer a{color:#CFC9B8;font-size:16px;transition:color .2s}
.mdl-footer a:hover{color:var(--gold)}
.mdl-footer p{font-size:16px;line-height:1.65;color:#CFC9B8;margin:16px 0 0;max-width:36ch}
.mdl-footer-bar{border-top:1px solid rgba(184,151,90,.3)}
.mdl-footer-bar p,.mdl-footer-bar .elementor-widget-text-editor{font-family:var(--ui);font-size:12px;letter-spacing:.06em;color:#9b9686;margin:0;max-width:none}

/* Single articles and archives (Hello Elementor templates) */
.single-post .site-main,.archive .site-main,.blog .site-main,.search .site-main{max-width:760px;margin:0 auto;padding:64px 24px 88px}
.archive .site-main,.blog .site-main,.search .site-main{max-width:1100px}
.single-post .page-header .entry-title,.archive .page-header .entry-title{font-family:var(--serif);font-weight:700;font-size:clamp(32px,4.4vw,52px);line-height:1.1;color:var(--ink);margin:0 0 24px}
.single-post .page-content{font-size:19px;line-height:1.75;color:#2a2f33}
.single-post .page-content>p:first-of-type:first-letter{font-family:var(--serif);font-weight:700;font-size:4.2em;line-height:.85;float:left;padding:8px 12px 0 0;color:var(--em)}
.single-post .page-content h2,.single-post .page-content h3{font-family:var(--serif);color:var(--ink);line-height:1.2;margin:2em 0 .6em}
.single-post .page-content blockquote{margin:2em 0;padding:0 0 0 26px;border-left:3px solid var(--gold);font-family:var(--serif);font-style:italic;font-size:26px;line-height:1.4;color:var(--em)}
.single-post .page-content img{max-width:100%;height:auto}
.single-post .page-content a{color:var(--em);border-bottom:1px solid var(--gold)}
.site-main .post-tags,.site-main .post-navigation{font-family:var(--ui);font-size:13px}
.archive .site-main article,.blog .site-main article{padding:28px 0;border-bottom:1px solid var(--stone)}
.archive .site-main .entry-title a,.blog .site-main .entry-title a{font-family:var(--serif);font-weight:700;color:var(--ink)}
.page-header .entry-title:after{content:"";display:block;width:48px;height:1px;background:var(--gold);margin-top:18px}

/* Additions */
.mdl-toplinks{display:flex;gap:22px}
.mdl-toplinks a{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#CFC9B8}
.mdl-toplinks a:hover{color:var(--gold)}
.mdl-hero-home{overflow:visible}
.mdl-hero-mark img{box-shadow:0 30px 60px -20px rgba(0,0,0,.55);transform:rotate(-3deg)}
.mdl-media-panel{border:1px solid rgba(184,151,90,.4);background:rgba(247,244,236,.03);transition:border-color .25s}
.mdl-media-panel:hover{border-color:var(--gold)}
.mdl-formats{display:flex;flex-direction:column}
.mdl-formats div{display:flex;flex-direction:column;gap:4px;padding:20px 0;border-bottom:1px solid var(--stone)}
.mdl-formats div:first-child{border-top:1px solid var(--stone)}
.mdl-formats strong{font-family:var(--serif);font-size:24px;color:var(--ink)}
.mdl-formats span{font-size:16px;color:var(--slate)}
.mdl-center .elementor-widget-text-editor,.mdl-center .elementor-widget-text-editor p{margin-left:auto;margin-right:auto}
.mdl-steps{counter-reset:s;list-style:none;margin:0;padding:0}
.mdl-steps li{padding:20px 0 20px 0;border-bottom:1px solid var(--stone);font-size:18px;line-height:1.6}
.mdl-steps li:first-child{border-top:1px solid var(--stone)}
.mdl-steps strong{display:block;font-family:var(--serif);font-size:22px;color:var(--ink);margin-bottom:4px}
.mdl-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mdl-tier{background:#fff;border:1px solid var(--stone);border-top:3px solid var(--stone);padding:30px 28px}
.mdl-tier--em{background:var(--em);border-color:var(--em);border-top-color:var(--gold)}
.mdl-tier h3{font-family:var(--serif);font-size:26px;margin:0 0 12px;color:var(--ink)}
.mdl-tier p,.mdl-tier li{font-size:16px;line-height:1.6;color:var(--slate)}
.mdl-tier ul{margin:14px 0 0;padding-left:18px}
.mdl-tier--em h3{color:var(--ivory)}.mdl-tier--em p,.mdl-tier--em li{color:#E6E1D3}
@media(max-width:900px){.mdl-tiers{grid-template-columns:1fr}.mdl-hero-mark img{transform:none}}
