/* Heidelbergfoodie – Premium Onepage 1.1.2 / CSS scoped to .hdf-site */
:root{
  --hdf-ink:#16241c;--hdf-ink-2:#22352a;--hdf-forest:#14221b;
  --hdf-acid:#bce547;--hdf-acid-dark:#a8cc37;--hdf-paper:#faf9f4;
  --hdf-cream:#f1f0e8;--hdf-line:#d9ddd1;--hdf-muted:#58675c;
  --hdf-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif;
  --hdf-display:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;
}
html{scroll-behavior:smooth}
body.hdf-landing-active{margin:0!important;padding:0!important;background:var(--hdf-paper)!important;overflow-x:clip;color:var(--hdf-ink)!important}
.hdf-site,.hdf-site *,.hdf-site *::before,.hdf-site *::after{box-sizing:border-box}
.hdf-site{font-family:var(--hdf-sans);font-size:16px;line-height:1.55;color:var(--hdf-ink);background:var(--hdf-paper);-webkit-font-smoothing:antialiased;overflow:clip}
.hdf-site :is(h1,h2,h3,h4,p,figure){margin:0;padding:0;border:0;text-transform:none;text-shadow:none;letter-spacing:normal;color:inherit}
.hdf-site img{display:block;max-width:100%;height:auto;box-shadow:none}
.hdf-site a{color:inherit;text-decoration:none;transition:color .2s ease,background-color .2s ease,transform .2s ease}
.hdf-site button{font-family:inherit}
.hdf-site :is(a,button,summary):focus-visible{outline:3px solid #6a9c12;outline-offset:5px}
.hdf-site [id]{scroll-margin-top:115px}
.hdf-shell{width:min(100% - 88px,1340px);margin:0 auto}
.hdf-skip{position:absolute;top:-80px;left:15px;z-index:99999;background:#fff;color:#111;padding:14px 20px;border:2px solid #111}
.hdf-skip:focus{top:15px}
/* Top: single-line desktop notice + horizontal mobile marquee */
.hdf-notice{height:37px;display:flex;align-items:center;justify-content:center;background:var(--hdf-ink);color:#fff;font-size:12px;font-weight:520;letter-spacing:.015em;overflow:hidden;white-space:nowrap}
.hdf-notice__sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hdf-notice__desktop{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:0 20px;line-height:1}
.hdf-notice__desktop strong{font-weight:800}
.hdf-notice__dot{height:7px;width:7px;border-radius:50%;background:var(--hdf-acid);display:inline-block;margin-right:9px;flex:none}
.hdf-notice__mobile{display:none}
/* Sticky on desktop AND mobile. Only the notice scrolls off-screen. */
.hdf-header{position:sticky;top:0;z-index:990;background:rgba(250,249,244,.97);border-bottom:1px solid rgba(22,36,28,.09);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:background-color .3s ease,box-shadow .3s ease,border-color .3s ease}
.hdf-header.is-scrolled{background:rgba(250,249,244,.985);border-color:rgba(22,36,28,.13);box-shadow:0 11px 40px rgba(19,36,25,.13)}
.hdf-header.is-scrolled .hdf-header__inner{height:74px}
.hdf-header.is-scrolled .hdf-brand img{height:48px;width:47px}
.hdf-header.is-scrolled .hdf-login{min-height:40px}
.hdf-header__inner{height:95px;display:flex;align-items:center;gap:32px;justify-content:space-between;transition:height .32s cubic-bezier(.22,1,.36,1)}
.hdf-brand{display:flex;align-items:center;gap:11px;flex:0 0 auto;min-width:0}
.hdf-brand img{height:60px;width:58px;object-fit:contain;transition:width .32s ease,height .32s ease}
.hdf-brand__copy{display:flex;flex-direction:column;gap:0;line-height:1}
.hdf-brand__copy strong{font-size:15px;line-height:1.2;letter-spacing:-.045em;font-weight:900;white-space:nowrap}
.hdf-brand__copy strong span{font-weight:550}
.hdf-brand__copy small{font-size:9px;letter-spacing:.3em;font-weight:700;margin-top:4px}
.hdf-nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.4vw,36px);margin-left:auto}
.hdf-nav>a{font-size:13px;font-weight:650;white-space:nowrap;position:relative}
.hdf-nav>a:not(.hdf-nav__auth)::after{position:absolute;bottom:-7px;left:0;width:0;height:2px;background:var(--hdf-ink);content:"";transition:width .22s}
 .hdf-nav>a:hover::after,.hdf-nav>a[aria-current="location"]::after{width:100%}
.hdf-nav>a[aria-current="location"]{color:#658a19}
.hdf-nav__auth{display:none}
.hdf-header__actions{display:flex;align-items:center;gap:12px}
.hdf-login{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:43px;border:1.5px solid var(--hdf-ink)!important;border-radius:100px;padding:0 20px;font-size:13px;font-weight:800;white-space:nowrap;background:var(--hdf-ink);color:#fff!important}
.hdf-login:hover{color:var(--hdf-ink)!important;background:var(--hdf-acid)!important;border-color:var(--hdf-acid)!important}
.hdf-login{transition:min-height .3s ease,background-color .2s ease,color .2s ease}
.hdf-login__icon{font-size:18px;line-height:1}
.hdf-menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:6px;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--hdf-ink);background:transparent;cursor:pointer}
.hdf-menu-toggle span{width:17px;height:2px;background:var(--hdf-ink);transition:transform .2s}
.hdf-header.is-open .hdf-menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
.hdf-header.is-open .hdf-menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
/* Shared headings */
.hdf-kicker{font-size:11px!important;font-weight:850!important;letter-spacing:.18em!important;text-transform:uppercase!important;line-height:1.5!important}
.hdf-kicker span{color:#719923}
.hdf-section{padding:120px 0}
.hdf-section-heading{margin-bottom:54px}
.hdf-section-heading--split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.55fr);align-items:end;gap:48px}
.hdf-section-heading--split>p{padding-bottom:10px;max-width:385px;justify-self:end;color:var(--hdf-muted);font-size:15px;line-height:1.85}
.hdf-site h2{font-size:clamp(43px,5.25vw,77px);font-weight:660;line-height:1.07;letter-spacing:-.07em;margin-top:23px}
.hdf-site h2 em,.hdf-hero h1 em{font-family:var(--hdf-display);font-weight:450;font-style:italic;letter-spacing:-.065em}
.hdf-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:58px;border-radius:100px;padding:0 25px!important;border:1.5px solid transparent!important;font-size:13px!important;font-weight:850!important;line-height:1.15!important;white-space:nowrap;letter-spacing:.005em!important}
.hdf-button span:last-child{font-size:22px;line-height:1;font-weight:400}
.hdf-button:hover{transform:translateY(-3px)}
.hdf-button--primary{background:var(--hdf-acid)!important;color:var(--hdf-ink)!important}
.hdf-button--primary:hover{background:#d2f572!important}
.hdf-button--outline{background:transparent!important;border-color:var(--hdf-ink)!important;color:var(--hdf-ink)!important}
.hdf-button--outline:hover{background:var(--hdf-ink)!important;color:#fff!important}
.hdf-button--dark{background:var(--hdf-ink)!important;color:#fff!important}
.hdf-button--dark:hover{background:#37563c!important}
/* Hero */
.hdf-hero{background:var(--hdf-paper);position:relative;padding-top:35px}
.hdf-hero__layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:25px;align-items:center;min-height:675px}
.hdf-hero__copy{padding:40px 0 45px;z-index:2;position:relative}
.hdf-eyebrow{display:flex;align-items:center;gap:13px;color:var(--hdf-ink-2);letter-spacing:.16em;font-size:10.5px;font-weight:800}
.hdf-eyebrow__star{font-size:20px;color:#789926;line-height:1}
.hdf-hero h1{max-width:750px;margin-top:24px;font-size:clamp(54px,5.8vw,94px);font-weight:780;line-height:1.04;letter-spacing:-.079em}
.hdf-hero h1 em{white-space:nowrap;font-weight:400}
.hdf-hero__lead{max-width:535px;margin-top:25px!important;font-size:16px!important;line-height:1.85!important;color:#4b5d50!important}
.hdf-hero__lead strong{font-weight:800;color:var(--hdf-ink)}
.hdf-hero__buttons{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:34px}
.hdf-hero__under{display:flex;align-items:center;gap:12px;margin-top:29px;color:#657469}
.hdf-hero__under-symbol{color:#82aa30;font-size:25px}
.hdf-hero__under p{font-size:12px!important;line-height:1.45!important;font-weight:580}
.hdf-hero__visual{height:650px;position:relative;isolation:isolate}
.hdf-hero__visual::before{content:"";position:absolute;z-index:-1;width:89%;aspect-ratio:1/1;background:#e7efcf;border-radius:47% 50% 48% 53%;left:5%;top:4%;transform:rotate(-11deg)}
.hdf-hero__picture{overflow:hidden;position:absolute;background:#e6e6dc}
.hdf-hero__picture img{width:100%;height:100%!important;object-fit:cover;transition:transform .6s ease}
.hdf-hero__picture:hover img{transform:scale(1.045)}
.hdf-hero__picture--main{width:79%;height:83%;right:4%;top:4%;border-radius:43% 44% 12% 37%;transform:rotate(2.4deg);box-shadow:0 22px 60px rgba(27,46,25,.16)}
.hdf-hero__picture--main img{transform:scale(1.07) rotate(-2.4deg)}
.hdf-hero__picture--main:hover img{transform:scale(1.1) rotate(-2.4deg)}
.hdf-hero__picture--secondary{width:39%;height:37%;left:0;bottom:1%;border:8px solid var(--hdf-paper);border-radius:55% 12% 48% 48%;transform:rotate(-5deg);box-shadow:0 10px 32px rgba(27,46,25,.13)}
.hdf-hero__seal{position:absolute;top:54%;right:-2%;z-index:2;width:150px;height:150px;border-radius:50%;background:var(--hdf-acid);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(12deg);box-shadow:0 15px 35px rgba(17,31,22,.2);color:var(--hdf-ink)}
.hdf-hero__seal>span{font-size:9px;font-weight:850;letter-spacing:.19em}
.hdf-hero__seal>strong{font-size:65px;font-weight:900;letter-spacing:-.11em;line-height:1.04;display:flex;align-items:flex-start}
.hdf-hero__seal>strong span{font-size:32px;margin-top:9px;margin-left:2px}
.hdf-hero__seal>small{font-size:9px;font-weight:850;letter-spacing:.2em}
.hdf-hero__visual-note{position:absolute;right:6%;bottom:1%;font-size:9px;font-weight:850;letter-spacing:.23em;white-space:nowrap}
.hdf-hero__bottom{border-top:1px solid var(--hdf-line);height:69px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.15em;font-weight:850}
.hdf-hero__bottom a{display:flex;align-items:center;gap:14px}
.hdf-hero__bottom a span{font-size:18px}
/* Benefits */
.hdf-benefits{background:#fff}
.hdf-benefits__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.hdf-benefit{min-height:420px;padding:31px 31px 35px;display:flex;flex-direction:column;border-radius:20px;transition:transform .25s ease;overflow:hidden;position:relative}
.hdf-benefit:hover{transform:translateY(-6px)}
.hdf-benefit--dark{background:#1b2a21;color:#fff}
.hdf-benefit--green{background:var(--hdf-acid);color:var(--hdf-ink)}
.hdf-benefit--light{background:var(--hdf-cream);color:var(--hdf-ink)}
.hdf-benefit__top{display:flex;align-items:center;justify-content:space-between}
.hdf-benefit__index{font-size:9px;letter-spacing:.15em;font-weight:850}
.hdf-benefit__symbol{display:inline-flex;font-size:28px;font-weight:500}
.hdf-benefit__large{font-size:clamp(90px,11vw,172px);font-weight:850;line-height:1;letter-spacing:-.095em;margin-top:33px;margin-bottom:auto}
.hdf-benefit__large small{font-size:60px;letter-spacing:-.06em}
.hdf-benefit__large--date{font-size:clamp(63px,6.8vw,105px);margin-top:63px;letter-spacing:-.095em;white-space:nowrap}
.hdf-benefit__large--date span{font-size:.5em}
.hdf-benefit h3{font-size:23px;font-weight:850;letter-spacing:-.045em;line-height:1.2;margin-top:30px;margin-bottom:11px}
.hdf-benefit p{font-size:13px!important;line-height:1.7!important;opacity:.85;max-width:345px}
.hdf-benefits__fineprint{max-width:940px;margin-top:20px!important;color:#7e897f!important;font-size:11px!important;line-height:1.65!important}
/* Interstitial editorial section */
.hdf-editorial{background:var(--hdf-forest);color:#f9f9f0;padding:0}
.hdf-editorial__layout{min-height:625px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(40px,8vw,140px);align-items:center}
.hdf-editorial__image{height:540px;position:relative;overflow:hidden;border-radius:260px 260px 22px 22px;align-self:end;margin-top:48px}
.hdf-editorial__image img{width:100%;height:100%!important;object-fit:cover}
.hdf-editorial__image:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(0deg,rgba(9,18,12,.65),transparent);pointer-events:none}
.hdf-editorial__image>span{position:absolute;left:0;bottom:28px;width:100%;text-align:center;color:#fff;font-size:11px;letter-spacing:.22em;font-weight:850;z-index:1}
.hdf-editorial__copy{padding:70px 0;position:relative}
.hdf-editorial__asterisk{font-size:70px;color:var(--hdf-acid);line-height:1;position:absolute;top:7px;right:23px}
.hdf-editorial .hdf-kicker{color:#d2e2c9!important}
.hdf-editorial .hdf-kicker span{color:var(--hdf-acid)}
.hdf-editorial h2{color:#fff;font-size:clamp(53px,5.6vw,85px);margin-top:24px}
.hdf-editorial h2 em{color:var(--hdf-acid)}
.hdf-editorial__copy>p:not(.hdf-kicker){max-width:460px;margin-top:27px!important;color:#d1d9cf!important;font-size:15px!important;line-height:1.85!important}
.hdf-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;border-bottom:1px solid currentColor;padding:0 0 11px;font-size:13px;font-weight:850;margin-top:34px}
.hdf-text-link span{font-size:24px;line-height:1}
.hdf-text-link:hover{gap:44px}
/* Partner filter container. Styling avoids changing CAF interactive internals. */
.hdf-partners{background:var(--hdf-paper)}
.hdf-partners__heading{margin-bottom:30px}
.hdf-partners__intro{display:flex;align-items:center;gap:14px;padding:22px 25px;background:#eaf1d9;border-radius:14px 14px 0 0;border:1px solid #dce5c9}
.hdf-partners__intro>div{display:flex;flex-direction:column;gap:2px}
.hdf-partners__intro strong{font-size:14px;font-weight:850}
.hdf-partners__intro div span{color:#627360;font-size:12px}
.hdf-live-dot{width:10px;height:10px;border-radius:50%;background:#8cae2b;box-shadow:0 0 0 5px rgba(140,174,43,.13);flex:none}
.hdf-partners__directory{padding:26px;border:1px solid #dce5c9;border-top:0;background:#fff;border-radius:0 0 16px 16px;min-height:300px;max-width:100%;overflow:visible}
.hdf-partners__empty{text-align:center;padding:110px 20px}
.hdf-partners__empty strong{font-size:20px;font-weight:800}
.hdf-partners__empty p{font-size:13px!important;color:#637162;margin-top:9px!important}
.hdf-partners__empty .hdf-partners__admin{color:#aa3838!important;margin-top:18px!important}
.hdf-partners__outro{padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.hdf-partners__outro>span{font-size:11px;letter-spacing:.19em;font-weight:850}
.hdf-partners__outro a{font-size:12px;font-weight:800;white-space:nowrap}
.hdf-partners__outro a span{font-size:19px;margin-left:15px}
.hdf-site #hdf-partner-directory .caf-post-layout-container{max-width:100%;font-family:var(--hdf-sans)!important}
.hdf-site #hdf-partner-directory :is(.caf-multiple-taxonomy-filter-modern,.caf-filter-layout){max-width:100%}
.hdf-site #hdf-partner-directory .caf-post-layout-container a{text-decoration:none}
.hdf-site #hdf-partner-directory .caf-post-layout-container :is(.caf-post-title,h3,h2){font-family:var(--hdf-sans);letter-spacing:-.03em}
.hdf-site #hdf-partner-directory .caf-post-layout-container :is(.caf-post-title a,.caf-post-title){font-weight:790}
.hdf-site #hdf-partner-directory .caf-post-layout-container :is(.caf_select_multi_default,.caf_select_multi_default_label_2){border-radius:8px}
/* Steps */
.hdf-steps{background:#f1f1e9}
.hdf-section-heading--center{text-align:center;display:flex;flex-direction:column;align-items:center}
.hdf-section-heading--center h2{margin-top:21px}
.hdf-section-heading--center>p:last-child{margin-top:24px!important;max-width:575px;font-size:15px!important;color:#68756a;line-height:1.75!important}
.hdf-steps__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.hdf-step{background:#fff;border-radius:18px;min-height:307px;padding:25px 29px 30px;position:relative;border:1px solid #e4e9df;transition:transform .2s}
.hdf-step:hover{transform:translateY(-5px)}
.hdf-step__num{font-size:11px;font-weight:850;letter-spacing:.15em;color:#879182}
.hdf-step__icon{width:73px;height:73px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#e4efcb;font-size:34px;margin-top:25px;font-weight:500}
.hdf-step h3{font-size:23px;letter-spacing:-.06em;font-weight:850;margin-top:26px}
.hdf-step p{font-size:13px!important;line-height:1.8!important;color:#657164!important;margin-top:10px!important}
.hdf-steps__cta{display:flex;align-items:center;justify-content:center;gap:21px;margin-top:37px}
.hdf-steps__cta p{font-size:13px!important;color:#58675c!important}
/* About founder */
.hdf-about{background:#dce8d5;overflow:hidden}
.hdf-about__layout{display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:100px;min-height:485px}
.hdf-about__copy{padding:85px 0}
.hdf-about__copy h2{margin-top:18px}
.hdf-about__copy>p:not(.hdf-kicker){margin-top:24px!important;max-width:500px;font-size:15px!important;line-height:1.85!important;color:#526254!important}
.hdf-about__media{align-self:end;position:relative;display:flex;justify-content:center;align-items:end;height:450px;isolation:isolate}
.hdf-about__media:before{content:"";position:absolute;width:90%;height:90%;bottom:-19%;border-radius:50%;background:var(--hdf-acid);z-index:-1}
.hdf-about__media img{height:96%;width:78%;object-fit:cover;object-position:center top;border-radius:240px 240px 0 0;filter:saturate(.92)}
.hdf-about__badge{position:absolute;right:0;bottom:50px;border-radius:100px;background:var(--hdf-forest);color:#fff;font-size:10px;letter-spacing:.13em;font-weight:850;padding:17px 21px;transform:rotate(-9deg)}
.hdf-about__badge span{color:var(--hdf-acid);font-size:15px}
/* FAQ accordion */
.hdf-faq{background:#fff}
.hdf-faq__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.hdf-faq__column{display:flex;flex-direction:column;gap:10px}
.hdf-faq__item{border:1px solid #e0e5dc;border-radius:14px;overflow:hidden;background:#fff;transition:background .2s}
.hdf-faq__item[open]{background:#f3f6ea;border-color:#dce9c8}
.hdf-faq__item summary{cursor:pointer;list-style:none;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:17px;color:var(--hdf-ink);font-size:14px;line-height:1.45;font-weight:750}
.hdf-faq__item summary::-webkit-details-marker{display:none}
.hdf-faq__plus{border:1.5px solid var(--hdf-ink);border-radius:100px;width:24px;height:24px;flex:0 0 24px;position:relative}
.hdf-faq__plus:before,.hdf-faq__plus:after{content:"";position:absolute;background:var(--hdf-ink);width:9px;height:1.5px;left:6px;top:10px;transition:transform .2s}
.hdf-faq__plus:after{transform:rotate(90deg)}
.hdf-faq__item[open] .hdf-faq__plus:after{transform:rotate(0)}
.hdf-faq__answer{padding:0 22px 21px}
.hdf-faq__answer p{font-size:13px!important;line-height:1.8!important;color:#556756!important}
/* Closing CTA */
.hdf-contact{background:var(--hdf-acid);padding:82px 0}
.hdf-contact__layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}
.hdf-contact .hdf-kicker span{color:#44611b}
.hdf-contact h2{font-size:clamp(55px,6vw,91px);line-height:1.02;margin-top:16px}
.hdf-contact__layout>div:first-child>p:last-child{max-width:420px;margin-top:22px!important;font-size:14px!important;line-height:1.7!important}
.hdf-contact__actions{display:flex;flex-direction:column;align-items:flex-end;padding-bottom:15px}
.hdf-contact__mail{font-size:clamp(20px,2.5vw,32px);font-weight:780;letter-spacing:-.055em;display:inline-flex;gap:25px;align-items:center;border-bottom:1.5px solid var(--hdf-ink);padding-bottom:10px}
.hdf-contact__mail>span{font-size:29px;font-weight:400}
.hdf-contact__mail:hover{transform:translateY(-3px)}
.hdf-contact__actions>span{font-size:12px;margin-top:18px;color:#475c2a}
/* Footer */
.hdf-footer{background:var(--hdf-forest);color:#f5f7f1;padding:75px 0 24px}
.hdf-footer__top{display:grid;grid-template-columns:minmax(225px,1.55fr) repeat(3,minmax(140px,1fr));gap:55px}
.hdf-footer__brand img{width:91px;height:91px;object-fit:contain;background:#fff;border-radius:50%;padding:5px}
.hdf-footer__brand p{margin-top:20px!important;font-size:13px!important;line-height:1.8!important;color:#c4d2c2!important;max-width:275px}
.hdf-footer__column{display:flex;flex-direction:column;align-items:start;gap:13px}
.hdf-footer__column h3{font-size:12px;font-weight:900;margin-bottom:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--hdf-acid)}
.hdf-footer__column a{font-size:13px;color:#d4e0d1;line-height:1.4}
.hdf-footer__column a:hover,.hdf-footer__bottom a:hover{color:var(--hdf-acid)}
.hdf-footer__divider{margin:75px 0 23px;border-top:1px solid #3b4b3e}
.hdf-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:24px}
.hdf-footer__bottom p{color:#a1b39f;font-size:11px!important;letter-spacing:.02em}
.hdf-footer__bottom nav{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.hdf-footer__bottom nav a{color:#c4d2c2;font-size:11px}
.hdf-footer__toplink{width:33px;height:33px;border:1px solid #79907b;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:21px;flex:none}
/* Responsive */
@media(max-width:1180px){
 .hdf-shell{width:min(100% - 58px,1340px)}
 .hdf-nav{gap:16px}
 .hdf-nav>a{font-size:12px}
 .hdf-brand__copy strong{font-size:13px}
 .hdf-hero h1{font-size:clamp(54px,6.35vw,80px)}
 .hdf-hero__visual{height:570px}
 .hdf-hero__layout{min-height:590px;gap:0}
 .hdf-button{padding:0 20px!important}
 .hdf-benefit{min-height:388px}
 .hdf-benefit__large--date{font-size:75px}
 .hdf-about__layout{gap:45px}
}
@media(max-width:980px){
  .hdf-nav{position:absolute;left:0;right:0;top:100%;background:var(--hdf-paper);border-bottom:1px solid #dce1d4;display:flex;flex-direction:column;gap:0;align-items:stretch;padding:12px max(29px,calc((100vw - 850px)/2)) 24px;box-shadow:0 22px 30px rgba(17,30,21,.08);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-13px) scale(.985);transform-origin:top center;max-height:calc(100dvh - 88px);overflow-y:auto;transition:opacity .3s ease,transform .38s cubic-bezier(.22,1,.36,1),visibility .3s ease}
 .hdf-header.is-open .hdf-nav{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
 .hdf-nav>a{opacity:0;transform:translateY(-7px);transition:opacity .25s ease,transform .3s ease,color .2s ease}
 .hdf-header.is-open .hdf-nav>a{opacity:1;transform:translateY(0)}
 .hdf-header.is-open .hdf-nav>a:nth-child(1){transition-delay:.035s}
 .hdf-header.is-open .hdf-nav>a:nth-child(2){transition-delay:.065s}
 .hdf-header.is-open .hdf-nav>a:nth-child(3){transition-delay:.095s}
 .hdf-header.is-open .hdf-nav>a:nth-child(4){transition-delay:.125s}
 .hdf-header.is-open .hdf-nav>a:nth-child(5){transition-delay:.155s}
 .hdf-header.is-open .hdf-nav>a:nth-child(6){transition-delay:.185s}
 .hdf-nav>a{font-size:17px;border-bottom:1px solid #e4e8df;padding:13px 4px}
 .hdf-nav>a[aria-current="location"]{color:#648d1f}
 .hdf-nav>a::after{display:none}
 .hdf-nav__auth{display:block}
 .hdf-menu-toggle{display:flex}
 .hdf-header__inner{height:82px}
 .hdf-header.is-scrolled .hdf-header__inner{height:72px}
 .hdf-hero__layout{grid-template-columns:1fr .85fr}
 .hdf-hero h1{font-size:clamp(48px,6vw,68px)}
 .hdf-hero__visual{height:500px}
 .hdf-hero__seal{width:130px;height:130px;right:-3%}
 .hdf-hero__seal>strong{font-size:55px}
 .hdf-button{min-height:52px}
 .hdf-section{padding:96px 0}
 .hdf-section-heading--split{grid-template-columns:1fr 1fr}
 .hdf-benefit{padding:24px;min-height:360px}
 .hdf-benefit__large{font-size:clamp(76px,11vw,119px)}
 .hdf-benefit__large--date{font-size:clamp(62px,7vw,80px)}
 .hdf-benefit h3{font-size:20px}
 .hdf-editorial__layout{min-height:540px}
 .hdf-editorial__image{height:485px}
 .hdf-about__media{height:385px}
 .hdf-footer__top{gap:29px}
}
@media(max-width:760px){
 .hdf-shell{width:min(100% - 36px,620px)}
 .hdf-notice{height:36px;font-size:11px;letter-spacing:.05em}
 .hdf-notice__desktop{display:none}
 .hdf-notice__mobile{display:block;width:100%;overflow:hidden}
 .hdf-notice__ticker{display:flex;gap:45px;width:max-content;animation:hdf-ticker 28s linear infinite;white-space:nowrap;align-items:center}
 .hdf-notice__ticker span{font-weight:790;letter-spacing:.10em;white-space:nowrap}
 @keyframes hdf-ticker{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 22.5px))}}
 .hdf-header__inner{height:73px}
 .hdf-brand img{width:45px;height:48px}
 .hdf-brand__copy strong{font-size:12px}
 .hdf-brand__copy small{font-size:8px}
 .hdf-login{min-height:38px;padding:0 14px;gap:5px;font-size:12px}
 .hdf-menu-toggle{width:39px;height:39px}
 .hdf-hero{padding-top:0}
 .hdf-hero__layout{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0}
 .hdf-hero__copy{padding:52px 0 22px}
 .hdf-eyebrow{font-size:9px;gap:10px}
 .hdf-hero h1{font-size:clamp(47px,10vw,73px);line-height:1.04;max-width:none;letter-spacing:-.072em;margin-top:19px}
 .hdf-hero__lead{margin-top:23px!important;font-size:14px!important;line-height:1.8!important;max-width:100%}
 .hdf-hero__buttons{margin-top:27px;gap:10px}
 .hdf-button{min-height:51px;font-size:12px!important;padding:0 19px!important;gap:15px}
 .hdf-hero__under{margin-top:19px}
 .hdf-hero__visual{height:min(110vw,565px);margin-top:9px;margin-bottom:21px}
 .hdf-hero__picture--main{right:7%;width:75%;height:83%}
 .hdf-hero__picture--secondary{left:1%;bottom:4%;width:37%;height:37%;border-width:6px}
 .hdf-hero__seal{right:0;top:49%;width:112px;height:112px}
 .hdf-hero__seal>span{font-size:7px}
 .hdf-hero__seal>strong{font-size:49px}
 .hdf-hero__seal>strong span{font-size:24px}
 .hdf-hero__seal>small{font-size:7px}
 .hdf-hero__visual-note{right:7%;bottom:2%;font-size:7px}
 .hdf-hero__bottom{height:60px;font-size:8px;letter-spacing:.1em}
 .hdf-section{padding:78px 0}
 .hdf-site h2{font-size:clamp(42px,9.5vw,63px);margin-top:18px}
 .hdf-section-heading{margin-bottom:32px}
 .hdf-section-heading--split{grid-template-columns:1fr;gap:16px}
 .hdf-section-heading--split>p{padding:0;justify-self:start;max-width:530px;font-size:13px;line-height:1.8}
 .hdf-benefits__grid{grid-template-columns:1fr;gap:11px}
 .hdf-benefit{min-height:295px;padding:23px 25px}
 .hdf-benefit__large{font-size:105px;margin-top:15px}
 .hdf-benefit__large--date{font-size:83px}
 .hdf-benefit h3{margin-top:14px;font-size:23px;margin-bottom:7px}
 .hdf-benefit p{font-size:12px!important;max-width:420px}
 .hdf-benefits__fineprint{font-size:10px!important}
 .hdf-editorial__layout{display:flex;flex-direction:column-reverse;gap:0;align-items:stretch;padding-top:67px}
 .hdf-editorial__copy{padding:0 0 48px}
 .hdf-editorial h2{font-size:clamp(49px,9.9vw,78px)}
 .hdf-editorial__asterisk{top:0;right:12px;font-size:54px}
 .hdf-editorial__copy>p:not(.hdf-kicker){font-size:14px!important;margin-top:23px!important}
 .hdf-editorial__image{height:435px;align-self:stretch;margin:0;border-radius:220px 220px 0 0}
 .hdf-partners__intro{padding:17px 16px;gap:10px}
 .hdf-partners__intro strong{font-size:12px}
 .hdf-partners__intro div span{font-size:11px}
 .hdf-partners__directory{padding:16px 11px;min-height:240px}
 .hdf-partners__outro{align-items:flex-start;flex-direction:column;gap:14px}
 .hdf-partners__outro>span{font-size:9px}
 .hdf-section-heading--center>p:last-child{font-size:13px!important;margin-top:17px!important}
 .hdf-steps__grid{grid-template-columns:1fr;gap:10px}
 .hdf-step{min-height:0;padding:22px;display:grid;grid-template-columns:64px 1fr;column-gap:20px}
 .hdf-step__num{grid-column:1/-1}
 .hdf-step__icon{grid-column:1;grid-row:2/4;width:62px;height:62px;margin-top:17px;font-size:27px}
 .hdf-step h3{grid-column:2;grid-row:2;margin-top:16px;font-size:20px}
 .hdf-step p{grid-column:2;grid-row:3;margin-top:6px!important}
 .hdf-steps__cta{flex-direction:column;gap:10px}
 .hdf-steps__cta p{text-align:center;font-size:11px!important}
 .hdf-about__layout{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .hdf-about__copy{padding:75px 0 30px}
 .hdf-about__copy>p:not(.hdf-kicker){font-size:14px!important}
 .hdf-about__media{height:365px;width:100%}
 .hdf-about__media img{width:64%}
 .hdf-about__badge{right:3%;bottom:45px;font-size:8px}
 .hdf-faq__grid{grid-template-columns:1fr;gap:9px}
 .hdf-faq__column{gap:9px}
 .hdf-faq__item summary{font-size:13px;padding:18px}
 .hdf-faq__answer{padding:0 18px 18px}
 .hdf-faq__answer p{font-size:12px!important}
 .hdf-contact{padding:68px 0}
 .hdf-contact__layout{grid-template-columns:1fr;gap:36px}
 .hdf-contact__layout>div:first-child>p:last-child{font-size:13px!important}
 .hdf-contact__actions{align-items:flex-start;padding-bottom:0}
 .hdf-contact__mail{font-size:clamp(21px,6vw,31px);max-width:100%;overflow-wrap:anywhere}
 .hdf-footer{padding:57px 0 24px}
 .hdf-footer__top{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 23px}
 .hdf-footer__brand{grid-column:1/-1}
 .hdf-footer__brand img{width:72px;height:72px}
 .hdf-footer__brand p{font-size:12px!important}
 .hdf-footer__column h3{font-size:11px}
 .hdf-footer__column a{font-size:12px}
 .hdf-footer__divider{margin:50px 0 20px}
 .hdf-footer__bottom{flex-wrap:wrap;justify-content:space-between;gap:19px}
 .hdf-footer__bottom nav{order:3;width:100%;gap:15px}
 .hdf-footer__bottom nav a{font-size:10px}
 .hdf-footer__bottom p{font-size:10px!important}
}
@media(max-width:390px){
 .hdf-brand{gap:5px}
 .hdf-brand__copy strong{font-size:10px}
 .hdf-login{font-size:11px;padding:0 11px}
 .hdf-header__actions{gap:8px}
 .hdf-hero h1{font-size:clamp(43px,10.3vw,54px)}
 .hdf-hero__buttons{flex-direction:column;align-items:stretch}
 .hdf-button{justify-content:space-between;width:100%}
 .hdf-benefit__large--date{font-size:76px}
 .hdf-contact__mail{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .hdf-site *, .hdf-site *::before, .hdf-site *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 .hdf-notice__ticker{animation:none;transform:none}
}
/* Sticky header remains below the WordPress toolbar for logged-in editors. */
body.admin-bar .hdf-header{top:32px}
@media(max-width:782px){body.admin-bar .hdf-header{top:46px}}

/* Subtle section entrances: JS adds classes only when IntersectionObserver exists. */
.hdf-motion-ready .hdf-reveal{opacity:0;transform:translate3d(0,20px,0);transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1);transition-delay:var(--hdf-reveal-delay,0ms)}
.hdf-motion-ready .hdf-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@keyframes hdf-faq-enter{from{opacity:.2;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.hdf-faq__item[open] .hdf-faq__answer{animation:hdf-faq-enter .32s cubic-bezier(.22,1,.36,1) both}
/* Progressive enhancement for browsers supporting animated details content. */
@supports(interpolate-size:allow-keywords){
 .hdf-faq__item{interpolate-size:allow-keywords}
 .hdf-faq__item::details-content{block-size:0;overflow:hidden;transition:block-size .3s cubic-bezier(.22,1,.36,1),content-visibility .3s;transition-behavior:allow-discrete}
 .hdf-faq__item[open]::details-content{block-size:auto}
}
@media(prefers-reduced-motion:reduce){
 .hdf-motion-ready .hdf-reveal{opacity:1!important;transform:none!important}
 .hdf-faq__item[open] .hdf-faq__answer{animation:none!important}
 .hdf-header__inner,.hdf-brand img,.hdf-header,.hdf-nav,.hdf-nav>a{transition:none!important}
}

/* v1.1.2 – Permanent closure announcement above the sticky navigation.
   The notice is fixed; the header remains sticky (in normal document flow).
   Reserved page space prevents content jumps and avoids overlap. */
:root { --hdf-notice-height: 37px; }
.hdf-site { padding-top: var(--hdf-notice-height); }
.hdf-site [id] { scroll-margin-top: calc(var(--hdf-notice-height) + 100px); }
.hdf-notice {
  position: fixed;
  inset: 0 0 auto;
  width: 100%;
  height: var(--hdf-notice-height);
  z-index: 1002;
}
.hdf-header { top: var(--hdf-notice-height); z-index: 1001; }
/* Keep both bars below the WordPress admin toolbar for signed-in users. */
body.admin-bar .hdf-notice { top: 32px; }
body.admin-bar .hdf-header { top: calc(32px + var(--hdf-notice-height)); }
@media (max-width: 980px) {
  .hdf-nav { max-height: calc(100dvh - var(--hdf-notice-height) - 82px - var(--hdf-admin-height, 0px)); }
  body.admin-bar { --hdf-admin-height: 32px; }
}
@media (max-width: 782px) {
  body.admin-bar { --hdf-admin-height: 46px; }
  body.admin-bar .hdf-notice { top: 46px; }
  body.admin-bar .hdf-header { top: calc(46px + var(--hdf-notice-height)); }
}
@media (max-width: 760px) {
  :root { --hdf-notice-height: 36px; }
  .hdf-nav { max-height: calc(100dvh - var(--hdf-notice-height) - 73px - var(--hdf-admin-height, 0px)); }
  .hdf-site [id] { scroll-margin-top: calc(var(--hdf-notice-height) + 82px); }
}
