
  :root{
    --emerald-950:#081E17;
    --emerald-900:#0D3327;
    --emerald-800:#134634;
    --gold-300:#E9D3A0;
    --gold-400:#D8B570;
    --gold-600:#B8933F;
    --ivory-50:#F6EFE4;
    --ivory-100:#EFE5D3;
    --ink-900:#15120D;
    --clay-700:#8A3B27;
    --stone-500:#8C8577;
    --ease:cubic-bezier(.22,.7,.24,1);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--ivory-50);
    color:var(--ink-900);
    font-family:'Jost',sans-serif;
    font-weight:400;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  img{display:block;max-width:100%;}
  a{color:inherit;text-decoration:none;}

  h1,h2,h3,.serif{font-family:'Fraunces',serif;font-weight:500;letter-spacing:-0.01em;}
  .eyebrow{
    font-family:'Jost',sans-serif;
    text-transform:uppercase;
    letter-spacing:.32em;
    font-size:.68rem;
    font-weight:500;
    color:var(--gold-600);
  }
  .eyebrow.on-dark{color:var(--gold-300);}

  .wrap{max-width:1280px;margin:0 auto;padding:0 6vw;}

  /* -------- signature sunburst -------- */
  .sunmark{width:1em;height:1em;display:inline-block;}
  .sunmark svg{width:100%;height:100%;display:block;}

  /* -------- nav -------- */
  header.nav{
    position:fixed;top:0;left:0;right:0;z-index:100;
    display:flex;align-items:center;justify-content:space-between;
    padding:1.6rem 6vw;
    mix-blend-mode:normal;
    transition:background .5s var(--ease),padding .4s var(--ease),border-color .5s var(--ease);
    border-bottom:1px solid rgba(216,181,112,0);
  }
  header.nav.scrolled{
    background:rgba(8,30,23,.86);
    backdrop-filter:blur(10px);
    padding:1.05rem 6vw;
    border-bottom:1px solid rgba(216,181,112,.18);
  }
  .logo{
    font-family:'Fraunces',serif;
    font-size:1.35rem;
    letter-spacing:.14em;
    color:var(--ivory-50);
    display:flex;align-items:center;gap:.5rem;
  }
  .logo .sunmark{color:var(--gold-400);width:1.1em;height:1.1em;}
  nav.links{display:flex;gap:2.4rem;align-items:center;}
  nav.links a{
    font-size:.78rem;text-transform:uppercase;letter-spacing:.18em;
    color:var(--ivory-100);opacity:.85;
    position:relative;padding-bottom:.3rem;
  }
  nav.links a::after{
    content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold-400);
    transition:width .35s var(--ease);
  }
  nav.links a:hover::after{width:100%;}
  nav.links a:hover{opacity:1;}
  .nav-cta{
    border:1px solid var(--gold-400);color:var(--gold-300)!important;
    padding:.55rem 1.3rem;font-size:.72rem!important;
  }
  .nav-toggle{display:none;}

  /* -------- hero -------- */
  .hero{
    position:relative;min-height:100svh;
    display:flex;align-items:flex-end;
    background:var(--emerald-950);
    overflow:hidden;
  }
  .hero-img{
    position:absolute;inset:0;width:100%;height:100%;
    object-fit:cover;object-position:78% 20%;
    opacity:0;
    animation:heroreveal 1.6s var(--ease) forwards .2s;
    filter:saturate(1.02);
  }
  @keyframes heroreveal{
    from{opacity:0;transform:scale(1.06);}
    to{opacity:1;transform:scale(1);}
  }
  .hero::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(100deg,rgba(8,30,23,.94) 8%,rgba(8,30,23,.62) 34%,rgba(8,30,23,.08) 62%),
               linear-gradient(0deg,rgba(8,30,23,.85) 0%,rgba(8,30,23,0) 32%);
  }
  .hero-content{
    position:relative;z-index:2;
    padding:7.5rem 6vw 6.5rem;
    width:100%;
    box-sizing:border-box;
    display:flex;justify-content:space-between;align-items:flex-end;gap:3rem;
  }
  .hero-sun{
    position:absolute;top:12%;left:6vw;width:min(46vw,520px);height:min(46vw,520px);
    color:var(--gold-400);opacity:.16;z-index:1;
    animation:spin 90s linear infinite;
  }
  @keyframes spin{to{transform:rotate(360deg);}}
  .hero-left{max-width:640px;}
  .hero-left .eyebrow{
    opacity:0;transform:translateY(16px);
    animation:fadeup .9s var(--ease) forwards 1.1s;
  }
  .hero-left h1{
    color:var(--ivory-50);
    font-size:clamp(3rem,8.5vw,6.4rem);
    line-height:.94;
    margin:.6rem 0 1.3rem;
    opacity:0;transform:translateY(24px);
    animation:fadeup 1s var(--ease) forwards 1.25s;
  }
  .hero-left h1 em{font-style:italic;color:var(--gold-400);font-weight:400;}
  .hero-left p{
    color:var(--ivory-100);opacity:0;
    font-size:1.05rem;line-height:1.6;max-width:30rem;
    animation:fadein .9s var(--ease) forwards 1.55s;
  }
  @keyframes fadeup{to{opacity:1;transform:translateY(0);}}
  @keyframes fadein{to{opacity:.86;}}
  .hero-right{
    display:none;
  }
  .scroll-cue{
    position:absolute;bottom:2.4rem;right:6vw;z-index:2;
    display:flex;align-items:center;gap:.7rem;
    color:var(--ivory-100);opacity:0;
    animation:fadein .8s var(--ease) forwards 2s;
  }
  .scroll-cue .line{width:1px;height:38px;background:linear-gradient(var(--gold-400),transparent);}
  .scroll-cue span{font-size:.68rem;text-transform:uppercase;letter-spacing:.22em;writing-mode:vertical-rl;}

  /* -------- marquee -------- */
  .marquee-band{
    background:var(--gold-400);
    color:var(--emerald-950);
    overflow:hidden;padding:.85rem 0;
    border-top:1px solid var(--emerald-950);
    border-bottom:1px solid var(--emerald-950);
  }
  .marquee-track{display:flex;width:max-content;animation:scroll 34s linear infinite;}
  .marquee-track span{
    font-family:'Fraunces',serif;font-style:italic;font-weight:400;
    font-size:1.15rem;padding:0 2.2rem;white-space:nowrap;display:flex;align-items:center;gap:2.2rem;
  }
  .marquee-track span::after{content:"◆";font-style:normal;font-size:.6rem;opacity:.6;}
  @keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

  /* -------- manifesto -------- */
  .manifesto{
    padding:9rem 0 8rem;
    position:relative;
  }
  .manifesto .grid{
    display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;
  }
  .manifesto-copy .eyebrow{margin-bottom:1.1rem;}
  .manifesto-copy h2{
    font-size:clamp(2.1rem,3.6vw,3.1rem);
    line-height:1.08;margin-bottom:1.6rem;
  }
  .manifesto-copy p{
    font-size:1.02rem;line-height:1.8;color:#3a352c;max-width:34rem;margin-bottom:1.4rem;
  }
  .pull{
    font-family:'Fraunces',serif;font-style:italic;font-size:1.4rem;
    color:var(--clay-700);margin-top:1.8rem;position:relative;padding-left:1.8rem;
    line-height:1.4;
  }
  .pull::before{
    content:"";position:absolute;left:0;top:.35em;width:1rem;height:1px;background:var(--clay-700);
  }
  .manifesto-media{position:relative;}
  .manifesto-media .frame{
    position:relative;border-radius:2px;overflow:hidden;
    aspect-ratio:4/5;
  }
  .manifesto-media img{width:100%;height:100%;object-fit:cover;}
  .manifesto-media .frame-tag{
    position:absolute;bottom:1.3rem;left:1.3rem;
    background:rgba(8,30,23,.82);color:var(--gold-300);
    font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;
    padding:.55rem .9rem;
  }
  .manifesto-media .ring{
    position:absolute;top:-2.4rem;right:-2.4rem;width:7rem;height:7rem;color:var(--gold-600);
    animation:spin 60s linear infinite;
  }

  /* -------- reveal -------- */
  .reveal{opacity:0;transform:translateY(36px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
  .reveal.in{opacity:1;transform:translateY(0);}
  .reveal-stagger > *{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
  .reveal-stagger.in > *{opacity:1;transform:translateY(0);}
  .reveal-stagger.in > *:nth-child(1){transition-delay:.05s;}
  .reveal-stagger.in > *:nth-child(2){transition-delay:.15s;}
  .reveal-stagger.in > *:nth-child(3){transition-delay:.25s;}
  .reveal-stagger.in > *:nth-child(4){transition-delay:.35s;}
  .reveal-stagger.in > *:nth-child(5){transition-delay:.45s;}
  .reveal-stagger.in > *:nth-child(6){transition-delay:.55s;}

  /* -------- section heading generic -------- */
  .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:3.2rem;flex-wrap:wrap;}
  .section-head h2{font-size:clamp(2rem,3.4vw,2.9rem);}
  .section-head p{color:var(--stone-500);max-width:24rem;font-size:.95rem;line-height:1.6;}

  /* -------- gallery -------- */
  .gallery-section{padding:2rem 0 7rem;}
  .cat-block{margin-bottom:6rem;}
  .cat-block:last-child{margin-bottom:0;}
  .cat-label{
    display:flex;align-items:center;gap:1rem;margin-bottom:2.2rem;
  }
  .cat-label .num{font-family:'Fraunces',serif;font-style:italic;color:var(--gold-600);font-size:1.1rem;}
  .cat-label h3{font-size:1.5rem;}
  .cat-label .rule{flex:1;height:1px;background:linear-gradient(90deg,var(--gold-600),transparent);}

  .piece-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.4rem;}
  .piece{
    position:relative;overflow:hidden;background:var(--emerald-950);
    border-radius:2px;
  }
  .piece img{
    width:100%;height:100%;object-fit:cover;
    transition:transform 1s var(--ease),filter .6s var(--ease);
  }
  .piece:hover img{transform:scale(1.055);}
  .piece .info{
    position:absolute;left:0;right:0;bottom:0;
    padding:1.6rem 1.4rem 1.3rem;
    background:linear-gradient(0deg,rgba(8,30,23,.92) 0%,rgba(8,30,23,.0) 100%);
    color:var(--ivory-50);
    transform:translateY(8px);
    opacity:.94;
  }
  .piece .info .pname{font-family:'Fraunces',serif;font-size:1.15rem;font-style:italic;color:var(--gold-300);}
  .piece .info .pmat{font-size:.72rem;letter-spacing:.05em;color:var(--ivory-100);opacity:.75;margin-top:.25rem;}
  .piece .idx{
    position:absolute;top:1rem;right:1rem;font-family:'Fraunces',serif;font-style:italic;
    color:rgba(246,239,228,.75);font-size:.8rem;
  }

  .p-a{grid-column:span 7;aspect-ratio:4/5.1;}
  .p-b{grid-column:span 5;aspect-ratio:4/5.1;}
  .p-c{grid-column:span 4;aspect-ratio:3/4;}
  .p-d{grid-column:span 4;aspect-ratio:3/4;}
  .p-e{grid-column:span 4;aspect-ratio:3/4;}
  .p-f{grid-column:span 6;aspect-ratio:4/3.4;}
  .p-g{grid-column:span 6;aspect-ratio:4/3.4;}
  .p-h{grid-column:span 3;aspect-ratio:3/4.3;}
  .p-i{grid-column:span 3;aspect-ratio:3/4.3;}
  .p-j{grid-column:span 3;aspect-ratio:3/4.3;}
  .p-k{grid-column:span 3;aspect-ratio:3/4.3;}

  /* -------- ineffable feature -------- */
  .ineffable{
    background:var(--emerald-950);color:var(--ivory-50);
    padding:8rem 0;position:relative;overflow:hidden;
  }
  .ineffable .grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:5vw;align-items:center;}
  .ineffable-media{position:relative;aspect-ratio:5/6;overflow:hidden;border-radius:2px;}
  .ineffable-media img{width:100%;height:100%;object-fit:cover;}
  .ineffable-copy .eyebrow{margin-bottom:1.2rem;}
  .ineffable-copy h2{font-size:clamp(2.3rem,4vw,3.6rem);line-height:1.06;margin-bottom:1.6rem;}
  .ineffable-copy h2 em{color:var(--gold-400);font-style:italic;}
  .ineffable-copy p{font-size:1.05rem;line-height:1.85;color:var(--ivory-100);opacity:.85;max-width:32rem;margin-bottom:1.1rem;}
  .word-inefable{
    position:absolute;bottom:-4rem;right:-1rem;
    font-family:'Fraunces',serif;font-style:italic;font-weight:300;
    font-size:min(20vw,220px);color:rgba(216,181,112,.06);
    letter-spacing:-.02em;pointer-events:none;user-select:none;
  }

  /* -------- craft band -------- */
  .craft{padding:7.5rem 0;}
  .craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.4rem;}
  .craft-item{border-top:1px solid var(--gold-600);padding-top:1.6rem;}
  .craft-item .sunmark{width:1.6rem;height:1.6rem;color:var(--clay-700);margin-bottom:1.4rem;}
  .craft-item h4{font-family:'Fraunces',serif;font-size:1.25rem;font-weight:500;margin-bottom:.7rem;}
  .craft-item p{font-size:.92rem;line-height:1.7;color:var(--stone-500);}

  /* -------- lifestyle band -------- */
  .lifestyle{padding:0 0 8rem;}
  .life-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:1.4rem;}
  .life-grid .big{aspect-ratio:4/3.1;overflow:hidden;position:relative;border-radius:2px;}
  .life-grid .small{aspect-ratio:4/5.4;overflow:hidden;position:relative;border-radius:2px;}
  .life-grid img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease);}
  .life-grid a:hover img{transform:scale(1.04);}
  .life-caption{
    position:absolute;left:1.3rem;bottom:1.3rem;color:var(--ivory-50);
    background:rgba(8,30,23,.55);backdrop-filter:blur(4px);
    padding:.5rem .9rem;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;
  }

  /* -------- CTA / newsletter -------- */
  .cta{
    background:var(--emerald-950);color:var(--ivory-50);
    padding:7rem 0;text-align:center;position:relative;overflow:hidden;
  }
  .cta .sunmark.bgmark{
    position:absolute;top:50%;left:50%;width:60vw;height:60vw;
    transform:translate(-50%,-50%);color:var(--gold-400);opacity:.05;
    animation:spin 120s linear infinite;
  }
  .cta-inner{position:relative;z-index:1;max-width:640px;margin:0 auto;}
  .cta h2{font-size:clamp(2.2rem,4.2vw,3.4rem);margin-bottom:1.1rem;}
  .cta h2 em{color:var(--gold-400);font-style:italic;}
  .cta p{color:var(--ivory-100);opacity:.8;margin-bottom:2.4rem;font-size:1rem;}
  .cta-form{display:flex;gap:0;max-width:420px;margin:0 auto;border-bottom:1px solid var(--gold-400);padding-bottom:.6rem;}
  .cta-form input{
    flex:1;background:transparent;border:none;outline:none;color:var(--ivory-50);
    font-family:'Jost',sans-serif;font-size:.95rem;padding:.4rem 0;
  }
  .cta-form input::placeholder{color:rgba(246,239,228,.5);}
  .cta-form button{
    background:none;border:none;color:var(--gold-400);text-transform:uppercase;
    letter-spacing:.18em;font-size:.72rem;cursor:pointer;font-family:'Jost',sans-serif;font-weight:500;
    padding:.4rem .3rem;transition:color .3s;
  }
  .cta-form button:hover{color:var(--ivory-50);}
  .form-note{margin-top:1rem;font-size:.72rem;color:rgba(246,239,228,.45);letter-spacing:.05em;}

  /* -------- footer -------- */
  footer{background:var(--ink-900);color:var(--ivory-100);padding:5rem 0 2rem;}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding-bottom:4rem;border-bottom:1px solid rgba(246,239,228,.12);}
  .foot-logo{font-family:'Fraunces',serif;font-size:1.6rem;letter-spacing:.1em;color:var(--ivory-50);display:flex;align-items:center;gap:.6rem;margin-bottom:1.2rem;}
  .foot-logo .sunmark{color:var(--gold-400);width:1.05em;height:1.05em;}
  .foot-about p{font-size:.88rem;line-height:1.75;color:rgba(246,239,228,.6);max-width:22rem;}
  .foot-col h5{font-size:.72rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gold-400);margin-bottom:1.3rem;}
  .foot-col a,.foot-col p{display:block;font-size:.88rem;color:rgba(246,239,228,.68);margin-bottom:.75rem;}
  .foot-col a:hover{color:var(--gold-300);}
  .foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1.8rem;font-size:.75rem;color:rgba(246,239,228,.4);flex-wrap:wrap;gap:1rem;}
  .foot-bottom .socials{display:flex;gap:1.4rem;}
  .foot-bottom .socials a{color:rgba(246,239,228,.55);letter-spacing:.05em;}
  .foot-bottom .socials a:hover{color:var(--gold-300);}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
  }

  a:focus-visible,button:focus-visible,input:focus-visible{
    outline:2px solid var(--gold-400);outline-offset:3px;
  }

  /* -------- responsive -------- */
  @media (max-width:980px){
    .manifesto .grid,.ineffable .grid{grid-template-columns:1fr;}
    .manifesto-media{order:-1;max-width:22rem;}
    .foot-grid{grid-template-columns:1fr 1fr;row-gap:2.6rem;}
    .life-grid{grid-template-columns:1fr;}
    .life-grid .big,.life-grid .small{aspect-ratio:4/3.3;}
    .craft-grid{grid-template-columns:1fr;gap:2.4rem;}
  }
  @media (max-width:760px){
    nav.links{position:fixed;top:0;right:0;height:100svh;width:78vw;max-width:340px;
      background:var(--emerald-950);flex-direction:column;justify-content:center;align-items:flex-start;
      padding:2rem 2.4rem;gap:2rem;transform:translateX(100%);transition:transform .5s var(--ease);z-index:99;}
    nav.links.open{transform:translateX(0);}
    nav.links a{font-size:1rem;}
    .nav-toggle{
      display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;z-index:101;padding:.4rem;
    }
    .nav-toggle span{width:22px;height:1px;background:var(--ivory-50);display:block;transition:.3s;}
    .hero-content{padding-bottom:5rem;}
    .p-a,.p-b{grid-column:span 12;}
    .p-c,.p-d,.p-e{grid-column:span 6;}
    .p-h,.p-i,.p-j,.p-k{grid-column:span 6;}
    .p-f,.p-g{grid-column:span 12;}
    .scroll-cue{display:none;}
    .wrap{padding:0 7vw;}
  }

  /* ============================================================
     AÑADIDOS — banner flotante, páginas internas, historia, inspiración
     ============================================================ */

  /* -------- promo banner (flotante) -------- */
  .promo-banner{
    position:fixed;left:1.6rem;bottom:1.6rem;z-index:200;
    width:min(300px,86vw);
    background:var(--emerald-950);
    border:1px solid var(--gold-400);
    color:var(--ivory-50);
    padding:1.5rem 1.5rem 1.4rem;
    box-shadow:0 20px 60px rgba(0,0,0,.35);
    transform:translateY(140%);
    opacity:0;
    transition:transform .7s var(--ease),opacity .7s var(--ease);
  }
  .promo-banner.show{transform:translateY(0);opacity:1;}
  .promo-banner .promo-close{
    position:absolute;top:.7rem;right:.8rem;
    background:none;border:none;color:var(--ivory-100);opacity:.6;
    font-size:.85rem;cursor:pointer;line-height:1;padding:.3rem;
  }
  .promo-banner .promo-close:hover{opacity:1;color:var(--gold-300);}
  .promo-banner .promo-eyebrow{margin-bottom:.5rem;font-size:.62rem;}
  .promo-banner .promo-text{
    font-family:'Fraunces',serif;font-size:1.3rem;line-height:1.25;margin-bottom:.2rem;
  }
  .promo-banner .promo-text strong{color:var(--gold-400);font-weight:500;}
  .promo-banner .promo-sub{font-size:.78rem;color:rgba(246,239,228,.65);margin-bottom:1.1rem;}
  .promo-banner .promo-code{
    display:inline-block;border:1px dashed var(--gold-600);color:var(--gold-300);
    font-size:.72rem;letter-spacing:.14em;padding:.3rem .6rem;margin-bottom:1.1rem;
  }
  .promo-banner .promo-cta{
    display:inline-flex;align-items:center;gap:.5rem;
    font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;
    color:var(--emerald-950);background:var(--gold-400);
    padding:.7rem 1.1rem;width:100%;justify-content:center;
    transition:background .3s;
  }
  .promo-banner .promo-cta:hover{background:var(--gold-300);}
  @media (max-width:520px){
    .promo-banner{left:1rem;right:1rem;bottom:1rem;width:auto;}
  }

  /* -------- sub-page header (Historia / Inspiración) -------- */
  .page-header{
    position:relative;min-height:62vh;display:flex;align-items:flex-end;
    padding-top:7.5rem;
    background:var(--emerald-950);overflow:hidden;
    box-sizing:border-box;
  }
  .page-header .ph-img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
    opacity:0;animation:heroreveal 1.4s var(--ease) forwards .15s;
  }
  .page-header::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(100deg,rgba(8,30,23,.94) 12%,rgba(8,30,23,.55) 42%,rgba(8,30,23,.15) 75%),
               linear-gradient(0deg,rgba(8,30,23,.85) 0%,rgba(8,30,23,0) 40%);
  }
  .page-header .wrap{position:relative;z-index:2;padding-bottom:4.5rem;}
  .page-header .eyebrow{opacity:0;transform:translateY(14px);animation:fadeup .8s var(--ease) forwards .7s;}
  .page-header h1{
    color:var(--ivory-50);font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.02;margin-top:.6rem;
    max-width:44rem;opacity:0;transform:translateY(20px);animation:fadeup .9s var(--ease) forwards .85s;
  }
  .page-header h1 em{color:var(--gold-400);font-style:italic;font-weight:400;}
  .page-header p.lede{
    color:var(--ivory-100);opacity:0;max-width:34rem;margin-top:1.1rem;font-size:1.02rem;line-height:1.7;
    animation:fadein .9s var(--ease) forwards 1.05s;
  }
  .page-header .hero-sun{opacity:.14;}

  /* breadcrumb-ish crumb under nav on internal pages */
  .crumb{padding:6.6rem 0 0;}
  .crumb .wrap{display:flex;gap:.6rem;align-items:center;font-size:.72rem;letter-spacing:.1em;
    text-transform:uppercase;color:var(--stone-500);}
  .crumb a:hover{color:var(--clay-700);}
  .crumb .sep{opacity:.5;}

  /* -------- timeline (Historia) -------- */
  .timeline-section{padding:8rem 0;}
  .timeline{position:relative;margin-top:4rem;padding-left:2.4rem;}
  .timeline::before{
    content:"";position:absolute;left:0;top:0;bottom:0;width:1px;
    background:linear-gradient(var(--gold-600),rgba(184,147,63,.15));
  }
  .tl-item{position:relative;padding-bottom:4.2rem;}
  .tl-item:last-child{padding-bottom:0;}
  .tl-item::before{
    content:"";position:absolute;left:-2.4rem;top:.35rem;width:10px;height:10px;border-radius:50%;
    background:var(--ivory-50);border:2px solid var(--gold-600);
  }
  .tl-year{font-family:'Fraunces',serif;font-style:italic;color:var(--clay-700);font-size:1.35rem;margin-bottom:.5rem;display:block;}
  .tl-item h4{font-size:1.3rem;margin-bottom:.6rem;}
  .tl-item p{color:#3a352c;line-height:1.75;max-width:34rem;font-size:.98rem;}

  .story-split{padding:2rem 0 8rem;}
  .story-split .grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;}
  .story-split .frame{aspect-ratio:4/5;overflow:hidden;border-radius:2px;position:relative;}
  .story-split .frame img{width:100%;height:100%;object-fit:cover;}
  .story-split .frame-tag{
    position:absolute;bottom:1.2rem;left:1.2rem;background:rgba(8,30,23,.82);color:var(--gold-300);
    font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;padding:.5rem .85rem;
  }
  .story-copy h2{font-size:clamp(2rem,3.4vw,2.8rem);line-height:1.1;margin-bottom:1.4rem;}
  .story-copy p{color:#3a352c;line-height:1.8;font-size:1rem;max-width:32rem;margin-bottom:1.1rem;}

  .values-band{background:var(--ivory-100);padding:6rem 0;}
  .values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;}
  .value-item h4{font-family:'Fraunces',serif;font-size:1.2rem;margin-bottom:.7rem;}
  .value-item p{font-size:.92rem;color:var(--stone-500);line-height:1.7;}
  .value-item .vnum{font-family:'Fraunces',serif;font-style:italic;color:var(--gold-600);font-size:1rem;display:block;margin-bottom:.9rem;}

  /* -------- inspiración: fauna & flora field-guide -------- */
  .species-section{padding:7rem 0;}
  .species-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;margin-top:3rem;}
  .species-card{
    border:1px solid rgba(20,17,13,.1);padding:2.2rem;position:relative;
    background:var(--ivory-50);transition:border-color .4s,transform .4s var(--ease);
  }
  .species-card:hover{border-color:var(--gold-600);transform:translateY(-4px);}
  .species-card .sp-icon{width:2.4rem;height:2.4rem;color:var(--clay-700);margin-bottom:1.4rem;}
  .species-card .sp-latin{
    font-family:'Fraunces',serif;font-style:italic;color:var(--stone-500);font-size:.82rem;margin-bottom:.35rem;
  }
  .species-card h3{font-size:1.4rem;margin-bottom:.9rem;}
  .species-card p{color:#3a352c;line-height:1.75;font-size:.95rem;margin-bottom:1.1rem;}
  .species-card .sp-link{
    font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--gold-600);
    border-bottom:1px solid var(--gold-600);padding-bottom:.2rem;
  }
  .species-card .sp-link:hover{color:var(--clay-700);border-color:var(--clay-700);}

  .species-feature{
    background:var(--emerald-950);color:var(--ivory-50);padding:8rem 0;position:relative;overflow:hidden;
  }
  .species-feature .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:5vw;align-items:center;}
  .species-feature-media{aspect-ratio:4/5;overflow:hidden;position:relative;border-radius:2px;}
  .species-feature-media img{width:100%;height:100%;object-fit:cover;}
  .species-feature-copy .eyebrow{margin-bottom:1.1rem;}
  .species-feature-copy h2{font-size:clamp(2.1rem,3.8vw,3.2rem);line-height:1.08;margin-bottom:1.5rem;}
  .species-feature-copy h2 em{color:var(--gold-400);font-style:italic;}
  .species-feature-copy p{color:var(--ivory-100);opacity:.85;line-height:1.8;font-size:1.02rem;max-width:32rem;margin-bottom:1.1rem;}

  @media (max-width:900px){
    .species-grid{grid-template-columns:1fr;}
    .story-split .grid,.species-feature .grid{grid-template-columns:1fr;}
    .story-split .frame{order:-1;max-width:24rem;}
  }
