
:root{
  --ink:#1e2622; --green:#1b4332; --green2:#2f6a50; --mint:#dce8e1;
  --stone:#f4f3ef; --white:#fff; --muted:#66716b; --earth:#9b8b72;
  --line:rgba(30,38,34,.14); --shadow:0 22px 70px rgba(21,34,27,.13);
  --serif:Georgia, "Times New Roman", serif; --sans:"Segoe UI", Arial, sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);background:#fff;line-height:1.65;overflow-wrap:anywhere}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}
.shell{width:min(1180px,calc(100% - 48px));margin:auto}
.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:.25s}
.site-header.scrolled{border-color:var(--line);box-shadow:0 8px 28px rgba(15,30,22,.07)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.13em;font-size:.86rem}
.brand img{width:46px;height:46px;object-fit:contain;border-radius:12px;background:#fff}
.navlinks{display:flex;align-items:center;gap:29px;font-size:.9rem;font-weight:600}
.navlinks a{position:relative;padding:30px 0}
.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:2px;background:var(--green);transition:.25s}
.navlinks a:hover:after,.navlinks a.active:after{right:0}
.nav-cta{padding:11px 18px!important;border:1px solid var(--green);border-radius:999px}
.nav-cta:after{display:none}
.menu{display:none;border:0;background:none;font-weight:700}
.hero{min-height:100vh;display:grid;align-items:end;position:relative;color:white;background:center/cover no-repeat}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,25,19,.78) 0%,rgba(13,25,19,.47) 48%,rgba(13,25,19,.17) 75%),linear-gradient(0deg,rgba(13,25,19,.65),transparent 52%)}
.hero.home{background-image:url("../images/home-hero.jpg")}
.hero.about{background-image:url("../images/about-team.jpg")}
.hero.projects{background-image:url("../images/project-site.jpg")}
.hero.governance{background-image:url("../images/governance-team.jpg")}
.hero-inner{position:relative;padding:175px 0 82px;max-width:900px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.76rem;color:#c9ded2;margin-bottom:18px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;margin:0}
h1{font-size:clamp(3.25rem,7vw,6.8rem);max-width:1050px;letter-spacing:-.045em}
.hero p{max-width:760px;font-size:1.18rem;color:rgba(255,255,255,.86);margin:26px 0 32px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:999px;font-weight:700;font-size:.9rem;transition:.2s;border:1px solid transparent}
.btn.primary{background:var(--green2);color:#fff}.btn.primary:hover{transform:translateY(-2px);background:#34765a}
.btn.light{background:#fff;color:var(--ink)}.btn.light:hover{transform:translateY(-2px)}
.btn.outline{border-color:rgba(255,255,255,.7);color:#fff}.btn.outline:hover{background:#fff;color:var(--ink)}
.scrollhint{position:absolute;right:32px;bottom:38px;writing-mode:vertical-rl;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;opacity:.75}
.kpi-strip{background:var(--ink);color:#fff}
.kpis{display:grid;grid-template-columns:repeat(5,1fr)}
.kpi{padding:31px 22px;border-right:1px solid rgba(255,255,255,.14)}
.kpi:last-child{border-right:0}.kpi strong{display:block;font-family:var(--serif);font-size:2.05rem;font-weight:500}.kpi span{font-size:.78rem;color:#bac6c0}
.section{padding:105px 0}.section.soft{background:var(--stone)}.section.dark{background:var(--ink);color:#fff}
.section-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start;margin-bottom:55px}
.section h2{font-size:clamp(2.4rem,4.8vw,4.6rem);letter-spacing:-.035em}
.section-copy{font-size:1.08rem;color:var(--muted);max-width:700px}.dark .section-copy{color:#c3cec8}
.editorial{position:relative;min-height:650px;overflow:hidden;background:var(--ink);box-shadow:var(--shadow)}
.editorial-media{position:absolute;inset:0;background:center/cover no-repeat}
.editorial-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,28,23,.72) 0%,rgba(18,28,23,.38) 48%,rgba(18,28,23,.08) 78%)}
.editorial-media.aboutimg{background-image:url("../images/about-team.jpg");background-position:center 42%}
.editorial-media.projectimg{background-image:url("../images/project-site.jpg")}
.editorial-copy{position:relative;z-index:2;width:min(560px,58%);margin:0;padding:90px 64px;color:#fff;background:transparent;box-shadow:none}
.editorial-copy h2{font-size:clamp(2.6rem,4.4vw,4.5rem);margin-bottom:22px;color:#fff}
.editorial-copy p{color:rgba(255,255,255,.84);font-size:1.05rem}
.editorial-copy .eyebrow{color:#c9ded2!important}
.editorial-copy .text-link{color:#fff}
.text-link{font-weight:800;color:var(--green);display:inline-flex;gap:10px;margin-top:12px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{border:1px solid var(--line);padding:34px;background:#fff;min-height:220px;transition:.25s}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.card .num{font-size:.78rem;font-weight:800;color:var(--green2);letter-spacing:.14em;margin-bottom:38px}
.card h3{font-size:1.65rem;margin-bottom:12px}.card p{color:var(--muted);margin:0}
.project-feature{display:grid;grid-template-columns:1.1fr .9fr;min-height:690px}
.project-photo{background:url("../images/project-site.jpg") center/cover no-repeat}
.project-panel{background:var(--green);color:#fff;padding:80px 70px;display:flex;align-items:center}
.project-panel h2{font-size:clamp(2.7rem,4.5vw,4.8rem)}.project-panel p{color:#d6e3dc}
.stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.22);margin:34px 0}
.stat{padding:22px 8px;border-bottom:1px solid rgba(255,255,255,.22)}.stat strong{display:block;font-size:1.55rem}.stat span{font-size:.78rem;color:#caddd2}
.quote{font-family:var(--serif);font-size:clamp(2.35rem,4.8vw,5rem);line-height:1.12;max-width:1050px;letter-spacing:-.04em}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid var(--line)}
.timeline-item{padding:28px 28px 0 0}.timeline-item b{color:var(--green);font-size:1.25rem}.timeline-item h3{font-size:1.4rem;margin:10px 0}.timeline-item p{color:var(--muted)}
.governance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}
.gov{padding:38px;background:var(--ink)}.gov h3{font-size:1.55rem;margin:16px 0}.gov p{color:#bdc9c2}.gov .icon{font-size:1.5rem;color:#8fb9a3}
.page-intro{padding:140px 0 90px}.page-intro h2{font-size:clamp(2.8rem,5vw,5.2rem);max-width:950px}.page-intro p{max-width:760px;color:var(--muted);font-size:1.12rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.split h3{font-size:2.2rem;margin-bottom:15px}.split p{color:var(--muted)}
.value-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.value{padding:28px;border-top:2px solid var(--green)}.value h3{font-size:1.45rem}.value p{color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.contact-card{background:var(--stone);padding:42px}.contact-card h3{font-size:2rem}.form{display:grid;gap:16px}.form input,.form textarea{width:100%;border:1px solid var(--line);padding:15px;background:#fff}.form textarea{min-height:150px}.note{font-size:.8rem;color:var(--muted)}
footer{background:#121814;color:#fff;padding:68px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:50px}.footer-grid h3{font-family:var(--sans);font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:#9fb0a7}.footer-grid p,.footer-grid a{color:#c2cbc6;font-size:.9rem}.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:20px;font-size:.76rem;color:#829088;display:flex;justify-content:space-between;gap:20px}
.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){
 .navlinks{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:18px 24px;flex-direction:column;align-items:flex-start;box-shadow:0 20px 30px rgba(0,0,0,.08)}
 .navlinks.open{display:flex}.navlinks a{padding:9px 0}.menu{display:block}
 .kpis{grid-template-columns:repeat(2,1fr)}.kpi{border-bottom:1px solid rgba(255,255,255,.12)}
 .section-head,.editorial,.project-feature,.split,.contact-grid{grid-template-columns:1fr}
 .editorial{min-height:590px}.editorial-copy{width:72%;padding:70px 46px}.editorial-media{min-height:0}
 .cards,.governance-grid{grid-template-columns:1fr 1fr}.project-photo{min-height:520px}.project-panel{padding:55px 34px}
 .timeline{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .shell{width:min(100% - 28px,1180px)}.nav{height:72px}.navlinks{top:72px}
 .hero-inner{padding:140px 0 55px}.hero p{font-size:1rem}.scrollhint{display:none}
 .kpis,.cards,.governance-grid,.timeline,.value-list,.footer-grid{grid-template-columns:1fr}
 .section{padding:75px 0}.section-head{gap:25px;margin-bottom:38px}
 .editorial{min-height:620px}.editorial-copy{width:100%;padding:330px 26px 34px;background:linear-gradient(0deg,rgba(18,28,23,.96) 0%,rgba(18,28,23,.72) 58%,transparent 100%)}.editorial-media{min-height:0}.editorial-media:after{background:linear-gradient(0deg,rgba(18,28,23,.82) 0%,rgba(18,28,23,.08) 65%)}
 .project-photo{min-height:400px}.project-panel{padding:48px 24px}.stats{grid-template-columns:1fr}
 .page-intro{padding:100px 0 60px}.legal{flex-direction:column}
 .download-card{flex-direction:column;align-items:flex-start}.download-card .btn{width:100%;justify-content:center}
}


/* ===== Albaretos v1.0 Premium Finish ===== */
:root{--ease:cubic-bezier(.22,1,.36,1)}
body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
::selection{background:var(--mint);color:var(--ink)}
.site-header{transition:background .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.brand img{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.brand:hover img{transform:scale(1.04);box-shadow:0 8px 24px rgba(27,67,50,.14)}
.hero{overflow:hidden;background-image:none!important;background-color:var(--ink)}
.hero:after{content:"";position:absolute;inset:-8%;background-position:center;background-size:cover;transform:scale(1.05);z-index:-2;animation:heroDrift 16s ease-out both}
.hero.home:after{background-image:url("../images/home-hero.jpg")}
.hero.about:after{background-image:url("../images/about-team.jpg")}
.hero.projects:after{background-image:url("../images/project-site.jpg")}
.hero.governance:after{background-image:url("../images/governance-team.jpg")}
@keyframes heroDrift{from{transform:scale(1.12)}to{transform:scale(1.04)}}
.hero-inner>*{animation:heroRise .9s var(--ease) both}
.hero-inner>*:nth-child(2){animation-delay:.08s}.hero-inner>*:nth-child(3){animation-delay:.16s}.hero-inner>*:nth-child(4){animation-delay:.24s}
@keyframes heroRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.btn{transition:transform .3s var(--ease),background .3s var(--ease),color .3s var(--ease),box-shadow .3s var(--ease)}
.btn:hover{box-shadow:0 14px 32px rgba(19,40,29,.18)}
.card,.gov,.value,.timeline-item{transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.card:hover,.value:hover{transform:translateY(-6px)}.gov:hover{transform:translateY(-4px)}
.text-link{position:relative;padding-bottom:3px}.text-link:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:currentColor;transition:right .3s var(--ease)}.text-link:hover:after{right:0}
.section.soft:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 85% 15%,rgba(47,106,80,.07),transparent 32%)}
.kpi strong{letter-spacing:-.03em}
.disclaimer{padding:20px 22px;border-left:3px solid var(--green2);background:var(--stone);font-size:.84rem;color:var(--muted)}
.download-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.download-card{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px;border:1px solid var(--line);background:#fff;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.download-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.download-card h3{font-size:1.45rem;margin-bottom:7px}.download-card p{margin:0;color:var(--muted);font-size:.9rem}
.badge{display:inline-block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;border-radius:999px;background:var(--mint);color:var(--green);font-weight:800}
.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-family:var(--serif);font-size:1.35rem;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;font-family:var(--sans);font-weight:400}.faq details[open] summary:after{content:"-"}.faq details p{max-width:850px;color:var(--muted)}
.skip-link{position:fixed;left:16px;top:-80px;z-index:500;background:#fff;padding:12px 16px;box-shadow:var(--shadow)}.skip-link:focus{top:16px}
@media(max-width:900px){.download-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Legal pages (Imprint / Privacy Policy) */
.legal-doc{max-width:860px}
.legal-doc h3{font-size:1.7rem;margin:46px 0 14px;letter-spacing:-.02em}
.legal-doc h3:first-child{margin-top:0}
.legal-doc h4{font-family:var(--sans);font-size:1rem;font-weight:700;margin:26px 0 8px;color:var(--green2);letter-spacing:.01em}
.legal-doc p{margin:0 0 14px;color:var(--ink)}
.legal-doc ul{margin:0 0 16px;padding-left:22px}
.legal-doc li{margin-bottom:7px}
.legal-doc a{text-decoration:underline;text-decoration-color:var(--line)}
.legal-doc a:hover{text-decoration-color:var(--green2)}
.legal-doc .legal-meta{font-size:.85rem;color:var(--muted);margin-bottom:36px}
.legal-doc .todo{background:#fff7e6;border:1px solid #e8c97a;border-radius:4px;padding:14px 18px;font-size:.85rem;color:#6b5215;margin:0 0 16px}
.legal-doc .todo strong{color:#4d3b0f}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 20px}
.legal-doc table th,.legal-doc table td{border:1px solid var(--line);padding:10px 12px;text-align:left;font-size:.92rem;vertical-align:top}
.legal-doc table th{background:var(--stone);font-weight:700}
.legal-toc{border:1px solid var(--line);padding:22px 26px;margin:0 0 40px;background:var(--stone)}
.legal-toc h4{margin:0 0 10px;font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.legal-toc ol{margin:0;padding-left:20px;columns:2;column-gap:32px}
.legal-toc li{margin-bottom:6px;font-size:.92rem}

/* Language switch */
.lang-switch{display:flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:999px;padding:3px;margin-left:20px;flex-shrink:0}
.lang-btn{border:0;background:none;padding:6px 13px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.05em;color:var(--muted);cursor:pointer;transition:.2s;font-family:var(--sans)}
.lang-btn.active{background:var(--green2);color:#fff}
.lang-btn:hover:not(.active){color:var(--ink)}
@media(max-width:900px){.lang-switch{margin-left:auto;margin-right:14px}}
@media(max-width:600px){.lang-switch{margin-right:10px}.lang-btn{padding:5px 10px;font-size:.72rem}}
