/*
Theme Name: Dragonfly Nutrition TT Prototype
Theme URI: https://www.dragonflynutritiontt.com/
Author: Dragonfly Nutrition
Description: Custom WPBakery-ready WordPress theme matching the approved Dragonfly Nutrition prototype, with seeded pages, editable hero banners, founder portrait, service content, corporate wellness, resources, challenge, client stories, blog, store, contact, and booking pages.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: dragonfly-nutrition
*/
:root{--green:#153f35;--green2:#2f6b5b;--sage:#dce9df;--cream:#fbf7ef;--gold:#d9a55b;--ink:#1f2f2a;--muted:#65736d;--white:#fff;--shadow:0 24px 70px rgba(20,62,52,.16);--border:#e8ece8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wide-container{width:min(1500px,calc(100% - 5vw));margin:auto}.df-container{width:min(1180px,calc(100% - 10vw));margin:auto}
.utility-bar{background:var(--green);color:#fff;padding:9px 0;font-size:12px;letter-spacing:.04em}.utility-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}.utility-contact{display:flex;gap:18px;flex-wrap:wrap}.utility-bar a{color:#fff}
.site-header{height:82px;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:999;backdrop-filter:blur(14px);border-bottom:1px solid #edf0ec}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:block;flex:0 1 310px}.brand img,.custom-logo{display:block;width:310px;max-width:32vw;height:70px!important;object-fit:contain;object-position:left center}.nav-links{margin-left:auto}.primary-menu-list{list-style:none;margin:0;padding:0;display:flex;gap:24px;align-items:center}.primary-menu-list>li{position:relative}.primary-menu-list a{font-size:17px;font-weight:700;color:var(--ink);white-space:nowrap}.primary-menu-list a:hover,.current-menu-item>a,.current_page_item>a{color:var(--green2)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-weight:700;font-size:16px;transition:.2s;border:0;cursor:pointer}.nav-cta,.btn.primary{background:var(--green);color:#fff}.nav-cta:hover,.btn.primary:hover{transform:translateY(-2px);background:#0f332b;color:#fff}.btn.secondary{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.5);color:#fff}.btn.outline{background:#fff;border:1px solid var(--green);color:var(--green)}.mobile-toggle{display:none;border:0;background:none;font-size:26px;color:var(--green)}
.df-hero{min-height:540px;display:grid;align-items:end;position:relative;overflow:hidden;background-size:cover;background-position:center}.df-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,24,.86) 0%,rgba(7,29,24,.56) 42%,rgba(7,29,24,.08) 78%)}.df-hero.df-about-hero{min-height:600px;background-position:center 58%}.df-hero.df-about-hero:before{background:linear-gradient(90deg,rgba(10,44,36,.92) 0%,rgba(10,44,36,.7) 42%,rgba(10,44,36,.18) 72%,rgba(10,44,36,.02) 100%)}.df-hero-inner{position:relative;z-index:2;padding:88px 5vw 74px;max-width:790px;color:#fff}.df-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;color:#dfeadb;margin-bottom:16px}.df-hero h1{font-family:Georgia,serif;font-size:clamp(48px,7vw,84px);line-height:.96;margin:0 0 20px;max-width:760px}.df-about-hero h1{font-size:clamp(46px,6.2vw,78px)}.df-hero p{font-size:18px;line-height:1.65;max-width:690px;color:rgba(255,255,255,.9)}.df-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.dragonfly-editor-content>.vc_row,.dragonfly-editor-content>.wpb-content-wrapper>.vc_row{margin-left:0;margin-right:0}.df-section-row{padding:78px 0}.df-section-row.df-soft{background:var(--cream)}.df-section-row>.wpb_column>.vc_column-inner{padding-left:0;padding-right:0}.df-section-row .wpb_content_element{margin-bottom:0}.df-wrap{width:min(1180px,calc(100% - 10vw));margin:auto}.df-section-head{max-width:760px;margin-bottom:34px}.df-section-head.center{margin-left:auto;margin-right:auto;text-align:center}.df-section-head .df-eyebrow{color:var(--green2)}.df-section-head h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,54px);line-height:1.06;margin:0 0 14px;color:var(--green)}.df-section-head p,.df-prose p{font-size:17px;line-height:1.72;color:var(--muted)}.df-prose{max-width:760px}.df-prose h3{font-family:Georgia,serif;color:var(--green);font-size:30px;margin:30px 0 8px}.df-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.df-grid.two{grid-template-columns:repeat(2,1fr)}.df-grid.four{grid-template-columns:repeat(4,1fr)}.df-card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:28px;box-shadow:0 8px 30px rgba(18,54,46,.06)}.df-card h3{font-family:Georgia,serif;font-size:25px;margin:4px 0 10px;color:var(--green)}.df-card p,.df-card li{line-height:1.65;color:var(--muted)}.df-card ul{padding-left:18px}.df-number{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--gold)}.df-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.df-founder-frame{min-height:560px;border-radius:26px;background:#f7f3eb;box-shadow:var(--shadow);border:1px solid #e4e9e5;display:flex;align-items:center;justify-content:center;overflow:hidden}.df-founder-frame img{width:100%;height:560px;object-fit:contain;object-position:center;background:#f7f3eb}.df-checklist{display:grid;gap:13px;margin-top:24px}.df-check{padding:14px 16px;border-radius:14px;background:#f4f8f5;color:#34584d;font-weight:600}.df-quote{font-family:Georgia,serif;font-size:26px;line-height:1.45;color:var(--green);margin-bottom:18px}.df-price{font-size:32px;font-weight:800;margin-top:18px;color:var(--green)}.df-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}.df-kpi{background:#f4f8f5;border-radius:18px;padding:22px;text-align:center;color:var(--green);font-weight:700}.df-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.df-logo-chip{border:1px solid #e2e8e4;background:#fff;padding:16px 18px;border-radius:14px;text-align:center;font-weight:700;color:#486159}.df-notice{padding:14px 16px;background:#fff7df;border:1px solid #efd78d;border-radius:12px;color:#72591d;margin:18px 0}.df-cta-wrap{padding:48px 0 62px}.df-cta{width:min(1180px,calc(100% - 10vw));margin:auto;border-radius:28px;padding:48px;background:linear-gradient(135deg,var(--green),#275f50);color:#fff;box-shadow:var(--shadow)}.df-cta h2{font-family:Georgia,serif;font-size:42px;margin:0 0 10px}.df-cta p{max-width:750px;color:rgba(255,255,255,.82);line-height:1.65}.df-form{display:grid;gap:14px}.df-form input,.df-form select,.df-form textarea{width:100%;padding:15px;border:1px solid #dbe2de;border-radius:12px;font:inherit}.df-form textarea{min-height:120px}.df-form-message{display:none;padding:12px 14px;border-radius:10px;background:#f4f8f5;color:var(--green);font-weight:700}.df-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.df-post-card{background:#fff;border:1px solid var(--border);border-radius:22px;overflow:hidden;box-shadow:0 8px 30px rgba(18,54,46,.06)}.df-post-card .inner{padding:24px}.df-post-card h3{font-family:Georgia,serif;color:var(--green);font-size:25px;margin:0 0 10px}.df-meta{font-size:12px;color:var(--muted);margin-bottom:12px}.df-store-placeholder .df-card{height:100%}
.site-footer{background:#102f28;color:#dfe7e4;padding:54px 0 30px;margin-top:40px}.footer-grid{width:min(1180px,calc(100% - 10vw));margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px}.footer-logo{display:block;width:330px;max-width:100%;height:auto;background:white;border-radius:10px;padding:4px}.site-footer h4{color:#fff;margin:0 0 12px}.site-footer a{display:block;margin:8px 0;color:#cedbd6}.footer-bottom{width:min(1180px,calc(100% - 10vw));margin:30px auto 0;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:12px;color:#afc2bb}
.site-main-simple{width:min(980px,calc(100% - 10vw));margin:70px auto}.site-main-simple h1{font-family:Georgia,serif;color:var(--green)}
@media(max-width:1200px){.primary-menu-list{gap:15px}.primary-menu-list a{font-size:15px}.brand img,.custom-logo{width:250px;max-width:28vw}}
@media(max-width:1000px){.utility-bar{display:none}.brand{flex-basis:235px}.brand img,.custom-logo{width:235px;max-width:58vw;height:62px!important}.nav-links{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:24px 5vw;box-shadow:0 20px 40px rgba(0,0,0,.1)}.nav-links.open{display:block}.primary-menu-list{flex-direction:column;align-items:flex-start;gap:16px}.primary-menu-list a{font-size:17px}.mobile-toggle{display:block;margin-left:auto}.nav-cta{display:none}.df-grid,.df-grid.two,.df-grid.four,.df-split,.footer-grid,.df-logos,.df-kpis,.df-post-grid{grid-template-columns:1fr}.df-hero{min-height:470px}.df-hero h1{font-size:52px}.df-founder-frame,.df-founder-frame img{min-height:420px;height:420px}}
@media(max-width:640px){.site-header,.nav{height:72px}.nav-links{top:72px}.df-hero-inner{padding:70px 6vw 55px}.df-hero h1{font-size:44px}.df-section-row{padding:58px 0}.df-wrap,.df-cta,.footer-grid,.footer-bottom{width:min(100% - 36px,1180px)}.df-cta{padding:34px}.df-cta h2{font-size:34px}}
