@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap');

:root{
  --green-deep:#3a9b32;
  --green-mid:#3a9b32;
  --cream:#f3f3f3;
  --gold:#b27e3d;
  --gold-light:#b27e3d;
  --text-dark:#000;
  --text-mute:#656565;
  --ease:cubic-bezier(.25,.7,.35,1);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'EB Garamond',serif;color:var(--text-mute);background:#fff;overflow-x:hidden;font-size:18px;font-weight:500;line-height:1.7;}
a{text-decoration:none;color:inherit;transition:color .25s;}
a:hover{color:var(--green-deep);}
img{max-width:100%;display:block;}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px;}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
.reveal.in{opacity:1;transform:translateY(0);}

header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,rgba(28,50,25,.95),rgba(16,30,14,.96));backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(178,126,61,.3);border-top:none;box-shadow:0 10px 30px rgba(0,0,0,.25),inset 0 1px 0 rgba(178,126,61,.2);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1180px;margin:0 auto;}
.logo{font-size:20px;letter-spacing:3px;color:#fff;}
.logo img{height:48px;width:auto;display:block;}
.logo b{font-weight:600;color:var(--gold);}
.menu{display:flex;gap:30px;font-size:13px;letter-spacing:1px;text-transform:uppercase;font-weight:600;}
.menu>li{position:relative;list-style:none;}
.menu a{position:relative;color:#fff;padding:8px 14px;display:inline-block;border-radius:8px;transition:background .3s var(--ease),box-shadow .3s var(--ease);}
.menu>li>a:hover{background:rgba(178,126,61,.28);backdrop-filter:blur(8px) saturate(160%);-webkit-backdrop-filter:blur(8px) saturate(160%);box-shadow:inset 0 1px 0 rgba(178,126,61,.4),0 4px 12px rgba(0,0,0,.2);color:#fff;}
.dropdown{position:absolute;top:100%;left:0;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.8));backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(255,255,255,.6);border-radius:10px;min-width:220px;box-shadow:0 12px 32px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.8);opacity:0;pointer-events:none;transform:translateY(8px);transition:all .3s var(--ease);padding:10px 0;}
.menu>li:hover .dropdown{opacity:1;pointer-events:auto;transform:translateY(0);}
.dropdown .dd-toggle{width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:space-between;padding:10px 18px;font-size:15px;letter-spacing:.2px;color:var(--text-dark);text-transform:none;font-weight:600;}
.dropdown .dd-toggle::after{content:"+";color:var(--gold);font-size:14px;}
.dropdown .dd-group.open .dd-toggle::after{content:"–";}
.dropdown .dd-toggle:hover{background:var(--cream);color:var(--green-deep);}
.dropdown .dd-sub{display:none;padding-bottom:4px;}
.dropdown .dd-group.open .dd-sub{display:block;}
.dropdown .dd-sub a{padding-left:30px;}
.dropdown a{display:block;padding:8px 18px;font-size:15px;text-transform:none;letter-spacing:.2px;color:var(--text-dark);}
.dropdown a:hover{background:var(--cream);color:var(--green-deep);}
.lang{font-size:12px;color:rgba(255,255,255,.85);letter-spacing:1px;}

.page-hero{background:linear-gradient(160deg,rgba(58,155,50,.20),rgba(178,126,61,.10));color:var(--text-dark);padding:90px 0 60px;}
.page-hero .eyebrow{color:var(--green-deep);}
.page-hero h1{font-size:38px;font-weight:400;}
.crumb{font-size:12px;letter-spacing:1px;opacity:.7;margin-top:10px;}

.section{padding:80px 0;}
.eyebrow{font-size:12px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:14px;font-weight:600;}
.section-title{font-size:5rem;color:var(--green-deep);margin-bottom:24px;font-weight:400;line-height:1.1;}
.lead{max-width:760px;color:var(--text-mute);line-height:1.85;font-size:16px;margin-bottom:16px;}

.visual{width:100%;max-width:520px;aspect-ratio:1/1;background:rgba(58,155,50,.16);border:1px solid #ece4cf;display:flex;align-items:center;justify-content:center;color:var(--text-mute);font-size:13px;letter-spacing:2px;text-transform:uppercase;margin:32px auto;overflow:hidden;position:relative;}
.visual img,.news-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease);}
.visual:hover img,.news-card:hover .thumb img{transform:scale(1.06);}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}

.contact-form input,.contact-form textarea{width:100%;background:transparent;border:none;border-bottom:1px solid #d5d5d5;color:var(--text-dark);padding:12px 0;margin-bottom:20px;font-family:inherit;font-size:16px;}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--green-deep);}
.btn-send{position:relative;overflow:hidden;border:1px solid var(--green-deep);background:linear-gradient(135deg,#4bb042,var(--green-deep));color:#fff;padding:13px 34px;font-size:12px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;box-shadow:0 6px 18px rgba(58,155,50,.25);transition:all .35s var(--ease);}
.btn-send::before,.btn-visit::before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);transition:left .7s var(--ease);pointer-events:none;}
.btn-send:hover::before,.btn-visit:hover::before{left:130%;}
.btn-send:hover{background:#fff;color:var(--green-deep);box-shadow:0 4px 10px rgba(58,155,50,.15);}
.btn-visit{position:relative;overflow:hidden;display:inline-block;border:1px solid var(--green-deep);color:var(--green-deep);padding:12px 30px;font-size:12px;letter-spacing:2px;text-transform:uppercase;transition:all .35s var(--ease);}
.btn-visit:hover{background:linear-gradient(135deg,#4bb042,var(--green-deep));color:#fff;box-shadow:0 6px 18px rgba(58,155,50,.25);}
.form-msg{font-size:13px;margin-top:14px;color:var(--green-mid);display:none;}

.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px;}
.news-card{border:1px solid #ece4cf;background:#fff;}
.news-card .thumb{aspect-ratio:1/1;height:auto;background:rgba(58,155,50,.16);position:relative;overflow:hidden;}
.news-card .body{padding:18px;}
.news-card .date{font-size:11px;color:var(--gold);letter-spacing:1px;margin-bottom:8px;}
.news-card h3{font-size:17px;font-weight:400;color:var(--green-deep);margin-bottom:8px;}
.news-card p{font-size:13px;color:var(--text-mute);line-height:1.6;}

footer{background:var(--green-deep);color:#fff;padding-top:45px;padding-bottom:45px;font-size:13px;}
.footer-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.menu a .chev{font-size:9px;margin-left:3px;opacity:.6;}

.share-buttons{position:fixed;bottom:26px;right:26px;z-index:60;display:flex;flex-direction:column;gap:12px;}
.share-buttons a{width:42px;height:42px;border-radius:50%;background:transparent;box-shadow:none;display:flex;align-items:center;justify-content:center;transition:transform .25s;}
.share-buttons a:hover{transform:scale(1.08);}
.share-buttons img{width:26px;height:26px;object-fit:contain;}
.share-buttons .email-btn{font-size:20px;color:var(--green-deep);}


.bottom-tabs{display:none;}
.sectors-sheet{display:none;}

.img-fallback{position:relative;background:linear-gradient(135deg,rgba(58,155,50,.20),rgba(178,126,61,.16)) !important;}
.img-fallback::before{content:"";position:absolute;inset:14px;border:1px solid rgba(178,126,61,.4);pointer-events:none;}
.img-fallback::after{content:"VINAGREEN GROUP";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'EB Garamond',serif;font-size:12px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;text-align:center;white-space:nowrap;}

.hero{padding:40px 0 0;position:relative;}
.hero-track{position:relative;height:420px;overflow:hidden;}
.hero-slide{position:absolute;inset:0;display:grid;grid-template-columns:280px 1fr;gap:10px;opacity:0;transform:translateX(60px);pointer-events:none;transition:opacity .8s var(--ease),transform .8s var(--ease);}
.hero-slide.active{opacity:1;transform:translateX(0);pointer-events:auto;z-index:2;}
.hero-slide.leaving{opacity:0;transform:translateX(-60px);z-index:1;}
.hero-left{background:rgba(58,155,50,.16);color:var(--text-dark);padding:32px 28px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;}
.hero-arrow{color:var(--gold-light);font-size:20px;margin-bottom:18px;opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease) .15s,transform .6s var(--ease) .15s;}
.hero-num{font-size:34px;color:var(--gold-light);font-weight:400;margin-bottom:6px;opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease) .25s,transform .6s var(--ease) .25s;}
.hero-desc{font-size:11px;letter-spacing:2px;text-transform:uppercase;opacity:0;margin-bottom:10px;transform:translateY(14px);transition:opacity .6s var(--ease) .35s,transform .6s var(--ease) .35s;}
.hero-title{font-size:22px;font-weight:400;opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease) .45s,transform .6s var(--ease) .45s;}
.hero-slide.active .hero-arrow,.hero-slide.active .hero-num,.hero-slide.active .hero-desc,.hero-slide.active .hero-title{opacity:1;transform:translateY(0);}
.hero-slide.active .hero-desc{opacity:.65;}
.hero-right{position:relative;height:100%;overflow:hidden;background:rgba(58,155,50,.16);}
.hero-right img{width:100%;height:100%;object-fit:cover;display:block;clip-path:inset(0 100% 0 0);transition:clip-path 1s var(--ease) .1s;}
.hero-slide.active .hero-right img{clip-path:inset(0 0 0 0);}
.hero-dots{display:flex;gap:10px;margin-top:16px;position:relative;z-index:3;}
.hero-dots span{width:9px;height:9px;border-radius:50%;background:#cfc6a8;cursor:pointer;transition:background .3s,transform .3s;}
.hero-dots span.active{background:var(--gold);transform:scale(1.2);}

.values{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px;}
.value-card{background:rgba(58,155,50,.16);min-height:220px;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;transition:background .3s var(--ease);cursor:pointer;}
.value-mark{position:absolute;top:14px;right:14px;width:24px;height:24px;opacity:.7;}
.value-card:hover{background:var(--green-deep);}
.value-card:hover .value-title,.value-card:hover .value-tag,.value-card:hover .value-desc{color:#fff;}
.value-title{font-size:26px;color:var(--green-deep);margin-bottom:6px;font-weight:600;text-transform:uppercase;transition:color .3s;}
.value-tag{font-size:12px;letter-spacing:1.5px;color:var(--green-deep);text-transform:uppercase;transition:color .3s;}
.value-desc{display:none;font-size:13px;margin-top:14px;line-height:1.5;}
.value-card:hover .value-desc{display:block;}

.marquee-strip{background:#fff;padding:10px 0;overflow:hidden;}
.marquee-strip .track{display:flex;width:max-content;gap:60px;animation:scrollx 45s linear infinite;}
.marquee-strip .tile{font-size:9rem;font-weight:600;letter-spacing:2px;color:var(--green-deep);opacity:.3;white-space:nowrap;text-transform:uppercase;}
@keyframes scrollx{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.journey{padding:70px 0;}
.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.journey-visual{aspect-ratio:1/1;height:auto;background:rgba(58,155,50,.16);border:1px solid #ece4cf;overflow:hidden;}
.journey-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease);}
.journey-visual:hover img{transform:scale(1.06);}

.vmv{background:#fff;border-top:1px solid #e0d5d0;}
.vmv .section-title{color:var(--green-deep);}
.vmv .lead{color:var(--text-mute);}
.vmv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:60px;}
.vmv-item{border-left:1px solid #e0d5d0;padding-left:26px;}
.vmv-item h3{font-size:36px;color:var(--green-deep);margin-bottom:12px;font-weight:400;}
.vmv-item p{font-size:14px;line-height:1.75;color:var(--text-mute);}

.companies{background:#fff;}
.cty-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:52px;align-items:center;}
.cty-visual{aspect-ratio:1/1;height:auto;background:rgba(58,155,50,.16);border:1px solid #ece4cf;overflow:hidden;}
.cty-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease);}
.cty-visual:hover img{transform:scale(1.05);}
.cty-slide{display:none;}
.cty-slide.active{display:block;}
.cty-sub{font-size:12px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:10px;}
.cty-title{font-size:28px;color:var(--green-deep);margin-bottom:16px;font-weight:400;}
.cty-desc{font-size:14px;line-height:1.85;color:var(--text-mute);}
.cty-nav{display:flex;align-items:center;gap:20px;margin-top:32px;}
.cty-prev,.cty-next{width:40px;height:40px;flex:0 0 auto;border:1px solid #ece4cf;background:#fff;cursor:pointer;font-size:18px;color:var(--green-deep);display:flex;align-items:center;justify-content:center;transition:background .3s,border-color .3s;}
.cty-prev:hover,.cty-next:hover{background:var(--cream);border-color:var(--gold);}
.cty-current{flex:1;}
.cty-current .num{display:block;font-size:12px;color:var(--gold);letter-spacing:1px;}
.cty-current .lbl{display:block;font-size:15px;color:var(--text-dark);margin-top:4px;font-weight:600;}

.partners{padding:64px 0;overflow:hidden;}
.partners-title{text-align:center;font-size:12px;letter-spacing:3px;color:var(--text-mute);text-transform:uppercase;margin-bottom:36px;}
.marquee{display:flex;width:max-content;animation:scroll 18s linear infinite;gap:24px;}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.partner-box{min-width:150px;height:64px;background:#fff;border:1px solid #ece4cf;display:flex;align-items:center;justify-content:center;padding:12px 20px;}
.partner-box img{max-height:100%;max-width:100%;object-fit:contain;}

/* ===== Responsive ===== */

@media(max-width:1024px){
  .wrap{padding:0 20px;}
  .section-title{font-size:3.6rem;}
  .cty-grid{gap:32px;}
}

@media(max-width:900px){
  .menu{display:none;}
  .grid-2,.card-grid,.values,.vmv-grid,.journey-grid,.cty-grid{grid-template-columns:1fr;}
  .hero-slide{grid-template-columns:1fr;grid-template-rows:auto 1fr;}
  .hero-track{height:520px;}
  .section{padding:56px 0;}
  .section-title{font-size:2.6rem;}
  .marquee-strip .tile{font-size:4.5rem;}

  .bottom-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:70;background:linear-gradient(0deg,rgba(255,255,255,.9),rgba(255,255,255,.7));backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-top:1px solid rgba(255,255,255,.5);box-shadow:0 -8px 28px rgba(0,0,0,.10);}
  .bottom-tabs a{flex:1;text-align:center;padding:12px 4px;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-mute);font-weight:600;}
  .bottom-tabs a.active{color:var(--green-deep);}
  .sectors-sheet.open{display:block;position:fixed;left:0;right:0;bottom:56px;z-index:65;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.8));backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-top:1px solid rgba(255,255,255,.5);box-shadow:0 -8px 28px rgba(0,0,0,.12);padding:6px 0;max-height:70vh;overflow-y:auto;}
  .sectors-sheet .dd-toggle{width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:space-between;padding:13px 24px;font-size:14px;color:var(--text-dark);border-bottom:1px solid #f3f3f3;font-weight:600;}
  .sectors-sheet .dd-toggle::after{content:"+";color:var(--gold);}
  .sectors-sheet .dd-group.open .dd-toggle::after{content:"–";}
  .sectors-sheet .dd-sub{display:none;}
  .sectors-sheet .dd-group.open .dd-sub{display:block;}
  .sectors-sheet .dd-sub a{display:block;padding:12px 24px 12px 36px;font-size:13px;color:var(--text-mute);border-bottom:1px solid #f3f3f3;}
  .sectors-sheet .dd-group:last-child .dd-toggle{border-bottom:none;}
  body{padding-bottom:56px;}
  .share-buttons{bottom:80px;right:16px;}
}

@media(max-width:600px){
  .page-hero{padding:70px 0 40px;}
  .page-hero h1{font-size:28px;}
  .section-title{font-size:2rem;}
  .lead{font-size:15px;}
  .visual{max-width:100%;margin:24px auto;}
  .hero-track{height:560px;}
  .hero-left{padding:24px 20px;}
  .hero-num{font-size:26px;}
  .hero-title{font-size:19px;}
  .value-card{min-height:160px;padding:18px;}
  .value-title{font-size:20px;}
  .marquee-strip .tile{font-size:2.6rem;}
  .cty-visual{height:auto;}
  .cty-title{font-size:22px;}
  .vmv-item h3{font-size:28px;}
  .footer-row{justify-content:center;text-align:center;}
  .share-buttons a{width:38px;height:38px;}
  .share-buttons img{width:22px;height:22px;}
}

/* Sector page accent colors — matches each brand's own site mood */
body.theme-namare .section-title,
body.theme-namare .page-hero .eyebrow,
body.theme-namare .section .eyebrow,
body.theme-namare .btn-visit{color:#c17a3d;}
body.theme-namare .page-hero{background:linear-gradient(160deg,rgba(193,122,61,.20),rgba(178,126,61,.10));}
body.theme-namare .btn-visit{border-color:#c17a3d;}
body.theme-namare .btn-visit:hover{background:linear-gradient(135deg,#d99457,#c17a3d);border-color:#c17a3d;box-shadow:0 6px 18px rgba(193,122,61,.25);}

body.theme-borgo .section-title,
body.theme-borgo .page-hero .eyebrow,
body.theme-borgo .section .eyebrow,
body.theme-borgo .btn-visit{color:#2e6b7e;}
body.theme-borgo .page-hero{background:linear-gradient(160deg,rgba(46,107,126,.20),rgba(178,126,61,.10));}
body.theme-borgo .btn-visit{border-color:#2e6b7e;}
body.theme-borgo .btn-visit:hover{background:linear-gradient(135deg,#4a93a8,#2e6b7e);border-color:#2e6b7e;box-shadow:0 6px 18px rgba(46,107,126,.25);}
