/*
Theme Name: NEST Spain Editable
Theme URI: https://nestspain.org/
Author: OpenAI for NEST Spain
Description: Fully editable WordPress theme inspired by the NEST landing page design. Creates an editable homepage with block content, blog cards, project cards and a professional footer.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: nest-editable
*/

:root{
  --nest-bg:#f4f0df;
  --nest-bg-2:#eef3e5;
  --nest-cream:#fffdf2;
  --nest-ink:#092218;
  --nest-muted:#5e6d62;
  --nest-green:#0b4a2e;
  --nest-green-2:#16843c;
  --nest-lime:#75c943;
  --nest-clay:#b96743;
  --nest-blue:#bfe1dd;
  --nest-card:#fffdf5;
  --nest-border:rgba(9,34,24,.11);
  --nest-shadow:0 18px 45px rgba(9,34,24,.08);
  --nest-radius:24px;
  --nest-radius-sm:14px;
  --nest-max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--nest-ink);
  background:
    linear-gradient(rgba(9,34,24,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(9,34,24,.055) 1px, transparent 1px),
    radial-gradient(circle at 30% 0%, #fbf8e8 0%, var(--nest-bg) 44%, #eef2df 100%);
  background-size:64px 64px,64px 64px,100% 100%;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:16px;
  line-height:1.6;
}

a{color:inherit;text-decoration:none}
a:hover{color:var(--nest-green-2)}
img{max-width:100%;height:auto}

.nest-wrap{width:min(var(--nest-max), calc(100% - 40px)); margin:0 auto}

/* Header */
.nest-topbar{
  border-bottom:1px solid var(--nest-border);
  background:rgba(244,240,223,.8);
  backdrop-filter: blur(14px);
  font-size:13px;
  color:var(--nest-muted);
}
.nest-topbar-inner{width:min(var(--nest-max), calc(100% - 40px));margin:0 auto;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:8px 0}
.nest-topbar-links{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.nest-topbar-links a{font-weight:700;color:var(--nest-green)}

.nest-site-header{position:sticky;top:0;z-index:50;padding:18px 0;background:rgba(244,240,223,.72);backdrop-filter:blur(18px)}
.nest-header-card{
  width:min(var(--nest-max), calc(100% - 40px));margin:0 auto;padding:13px 18px;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;
  background:rgba(255,253,242,.92);border:1px solid rgba(9,34,24,.09);border-radius:22px;box-shadow:0 14px 38px rgba(9,34,24,.08)
}
.nest-brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:-.04em;color:var(--nest-green)}
.nest-logo-img{display:block;max-height:46px;width:auto}
.nest-brand-fallback{font-size:28px;color:var(--nest-green-2)}
.nest-main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap}
.nest-main-nav li{position:relative;margin:0;padding:0}
.nest-main-nav a{display:block;padding:10px 12px;border-radius:999px;font-weight:800;font-size:14px;color:#314139}
.nest-main-nav a:hover,.nest-main-nav .current-menu-item>a{background:#eef5e7;color:var(--nest-green-2)}
.nest-main-nav ul ul{position:absolute;left:0;top:100%;display:none;min-width:210px;padding:8px;background:var(--nest-card);border:1px solid var(--nest-border);border-radius:16px;box-shadow:var(--nest-shadow)}
.nest-main-nav li:hover>ul,.nest-main-nav li:focus-within>ul{display:block}
.nest-main-nav ul ul a{border-radius:10px;white-space:nowrap}
.nest-header-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end}
.nest-button,.wp-block-button__link,.nest-submit{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:0;
  padding:12px 18px;background:var(--nest-green);color:#fff!important;font-weight:900;font-size:14px;box-shadow:0 10px 20px rgba(11,74,46,.14);cursor:pointer
}
.nest-button:hover,.wp-block-button__link:hover,.nest-submit:hover{background:#073723;color:#fff!important;transform:translateY(-1px)}
.nest-button.secondary,.is-style-outline .wp-block-button__link{background:transparent;color:var(--nest-green)!important;border:1px solid var(--nest-border);box-shadow:none}
.nest-button.secondary:hover,.is-style-outline .wp-block-button__link:hover{background:#edf4e8;color:var(--nest-green)!important}
.nest-lang,.nest-lang .widget,.nest-lang ul,.nest-lang li{margin:0!important;padding:0!important;list-style:none!important}
.nest-lang ul{display:flex!important;gap:6px!important;align-items:center!important}
.nest-lang img{max-height:18px;width:auto;display:block}
.nest-lang select{max-width:120px;border:1px solid var(--nest-border);border-radius:999px;padding:7px 9px;background:#fffdf5}

.nest-mobile-toggle{display:none;border:1px solid var(--nest-border);background:#fffdf5;border-radius:12px;padding:9px 11px;font-weight:900;color:var(--nest-green)}

/* WordPress content */
.site-main{min-height:60vh}
.entry-content > *{margin-block-start:0;margin-block-end:0}
.entry-content > * + *{margin-block-start:0}
.entry-content .alignwide{max-width:var(--nest-max);margin-left:auto;margin-right:auto}
.entry-content .alignfull{max-width:none;width:100%}

/* Editable landing blocks */
.nest-section{padding:86px 0}
.nest-section.compact{padding:58px 0}
.nest-kicker{font-size:13px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--nest-clay);margin-bottom:14px!important}
.nest-h1{font-size:clamp(3.4rem, 8.2vw, 7.4rem);line-height:.93;letter-spacing:-.075em;margin:0 0 24px!important;font-weight:950;color:var(--nest-ink);max-width:860px}
.nest-h2{font-size:clamp(2.1rem, 4.3vw, 4.3rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 20px!important;font-weight:950;color:var(--nest-ink);max-width:790px}
.nest-lead{font-size:clamp(1.03rem,1.6vw,1.24rem);color:var(--nest-muted);max-width:620px;font-weight:600}
.nest-hero{padding:94px 0 74px}
.nest-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:52px;align-items:center}
.nest-hero-card{min-height:440px;border-radius:34px;background:linear-gradient(160deg,#b9dbc7 0%,#e7ecd7 48%,#2e7652 49%,#0b4a2e 100%);border:1px solid rgba(11,74,46,.18);box-shadow:var(--nest-shadow);position:relative;overflow:hidden;padding:34px}
.nest-hero-card:before{content:"";position:absolute;inset:38px;border:1px solid rgba(255,255,255,.45);border-radius:26px}
.nest-floating{position:relative;background:rgba(255,253,242,.9);border:1px solid rgba(9,34,24,.09);border-radius:20px;padding:22px;box-shadow:0 16px 38px rgba(9,34,24,.1);max-width:260px;margin-bottom:42px}
.nest-floating:nth-child(2){margin-left:auto;margin-top:10px}
.nest-floating h3{margin:4px 0 4px;font-size:24px;line-height:1}
.nest-floating p{margin:0;color:var(--nest-muted);font-weight:600;font-size:14px}
.nest-icon{width:38px;height:38px;border-radius:12px;background:var(--nest-green);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:900}
.nest-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:26px!important}

.nest-panel{background:linear-gradient(120deg,#e0f0ec,#f6f4e6);border:1px solid rgba(9,34,24,.08);border-radius:30px;padding:56px;box-shadow:var(--nest-shadow)}
.nest-panel-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}
.nest-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.nest-card{background:rgba(255,253,242,.92);border:1px solid var(--nest-border);border-radius:20px;padding:24px;box-shadow:0 12px 34px rgba(9,34,24,.05);min-height:170px}
.nest-card:hover{transform:translateY(-3px);box-shadow:var(--nest-shadow)}
.nest-card h3{font-size:20px;line-height:1.12;margin:14px 0 8px;color:var(--nest-ink)}
.nest-card p{margin:0;color:var(--nest-muted);font-weight:600;font-size:15px}

.nest-split{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
.nest-image-frame{border-radius:28px;overflow:hidden;border:1px solid var(--nest-border);box-shadow:var(--nest-shadow);background:#d8e5d1;min-height:360px}
.nest-image-frame img{width:100%;height:100%;object-fit:cover;display:block}
.nest-steps{display:grid;gap:12px;margin-top:24px}
.nest-step{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:center;background:rgba(255,253,242,.95);border:1px solid var(--nest-border);border-radius:14px;padding:14px 16px;font-weight:800;color:#425149}
.nest-step strong{display:flex;width:34px;height:34px;border-radius:10px;align-items:center;justify-content:center;background:var(--nest-green);color:#fff}

.nest-dark{background:var(--nest-green);border-radius:30px;color:#fff;padding:56px;box-shadow:var(--nest-shadow);overflow:hidden}
.nest-dark .nest-kicker{color:#d7f2c4}
.nest-dark .nest-h2,.nest-dark h2,.nest-dark h3{color:#fff}
.nest-dark p{color:rgba(255,255,255,.76)}
.nest-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.nest-tag{display:inline-flex;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);border-radius:999px;padding:7px 11px;color:#fff;font-size:13px;font-weight:900}

.nest-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.nest-metric{padding:26px;background:rgba(255,253,242,.9);border:1px solid var(--nest-border);border-radius:20px;box-shadow:0 12px 34px rgba(9,34,24,.05)}
.nest-metric strong{font-size:42px;line-height:1;letter-spacing:-.06em;color:var(--nest-green);display:block}
.nest-metric span{display:block;margin-top:8px;color:var(--nest-muted);font-weight:800}

/* Blog */
.nest-page-hero{padding:72px 0 40px}
.nest-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:30px 0 80px}
.nest-post-card{background:rgba(255,253,242,.94);border:1px solid var(--nest-border);border-radius:22px;overflow:hidden;box-shadow:0 16px 38px rgba(9,34,24,.06);display:flex;flex-direction:column;min-height:100%}
.nest-post-thumb{aspect-ratio:16/10;background:#dfe8d7;overflow:hidden}
.nest-post-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.nest-post-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.nest-post-meta{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:950;color:var(--nest-clay)}
.nest-post-card h2,.nest-post-card h3{font-size:24px;line-height:1.08;margin:0;letter-spacing:-.035em}
.nest-post-card p{color:var(--nest-muted);margin:0;font-weight:600}
.nest-readmore{margin-top:auto;font-weight:950;color:var(--nest-green)}
.nest-pagination{padding:0 0 80px;text-align:center;font-weight:900}

/* Footer */
.nest-prefooter{padding:0 0 70px}
.nest-cta{background:linear-gradient(90deg,rgba(11,74,46,.92),rgba(11,74,46,.68)), url('assets/img/vegetables.svg') center/cover;border-radius:30px;padding:62px;color:#fff;display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center;box-shadow:var(--nest-shadow)}
.nest-cta h2{font-size:clamp(2.2rem,4.5vw,4.7rem);line-height:1;letter-spacing:-.06em;margin:0 0 14px;color:#fff;max-width:700px}
.nest-cta p{margin:0;color:rgba(255,255,255,.78);font-weight:650;max-width:620px}
.nest-site-footer{background:#082418;color:#fff;padding:58px 0 26px}
.nest-footer-grid{display:grid;grid-template-columns:1.3fr .7fr .9fr 1fr;gap:34px}
.nest-footer-logo{font-size:30px;font-weight:950;color:#b7ec83;margin-bottom:10px;letter-spacing:-.04em}
.nest-footer-col h3{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#d7f2c4;margin:0 0 12px}
.nest-footer-col p,.nest-footer-col li,.nest-footer-bottom{color:rgba(255,255,255,.68);font-size:14px}
.nest-footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.nest-footer-col a{color:rgba(255,255,255,.78);font-weight:700}
.nest-footer-col a:hover{color:#fff}
.nest-newsletter{display:flex;gap:8px;margin-top:12px}
.nest-newsletter input{min-width:0;flex:1;border:0;border-radius:999px;padding:12px 14px;background:rgba(255,255,255,.12);color:#fff}
.nest-newsletter input::placeholder{color:rgba(255,255,255,.55)}
.nest-newsletter button{border:0;border-radius:999px;padding:12px 14px;background:#b96743;color:#fff;font-weight:900}
.nest-footer-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:42px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.nest-legal-menu ul{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap}

/* Forms / comments */
input,textarea,select{font:inherit}
.search-form{display:flex;gap:8px}.search-field{border:1px solid var(--nest-border);border-radius:999px;padding:12px 14px;background:#fffdf5}.search-submit{border:0;border-radius:999px;background:var(--nest-green);color:#fff;font-weight:900;padding:12px 16px}

/* Responsive */
@media (max-width: 980px){
  .nest-header-card{grid-template-columns:auto auto;justify-content:space-between}
  .nest-mobile-toggle{display:inline-flex}
  .nest-main-nav{grid-column:1/-1;display:none;width:100%}
  .nest-main-nav.is-open{display:block}
  .nest-main-nav ul{display:grid;gap:3px;justify-content:stretch}
  .nest-main-nav a{padding:12px 10px}
  .nest-main-nav ul ul{position:static;display:block;box-shadow:none;margin:4px 0 4px 14px;border-radius:12px;background:#f3f6e9}
  .nest-header-actions{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}
  .nest-hero-grid,.nest-panel-grid,.nest-split,.nest-cta{grid-template-columns:1fr}
  .nest-card-grid,.nest-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nest-metrics{grid-template-columns:repeat(2,1fr)}
  .nest-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .nest-wrap,.nest-header-card,.nest-topbar-inner{width:min(100% - 24px, var(--nest-max))}
  .nest-site-header{padding:10px 0}
  .nest-topbar-inner{align-items:flex-start;flex-direction:column;gap:6px}
  .nest-h1{font-size:clamp(3rem, 17vw, 4.8rem)}
  .nest-section,.nest-hero{padding:54px 0}
  .nest-panel,.nest-dark,.nest-cta{padding:28px;border-radius:22px}
  .nest-card-grid,.nest-post-grid,.nest-metrics,.nest-footer-grid{grid-template-columns:1fr}
  .nest-hero-card{min-height:360px;padding:22px}
  .nest-floating{max-width:230px}
}
.custom-logo{display:block;max-height:46px;width:auto}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{background:#fff;color:#000;clip:auto!important;clip-path:none;height:auto;left:10px;padding:12px;top:10px;width:auto;z-index:100000;border-radius:8px}
.entry-content.nest-wrap{padding-bottom:70px}
body.home .entry-content.nest-wrap, body.front-page .entry-content.nest-wrap{padding-bottom:0}
