/* Lanzarote invitation and Costa Papagayo record pages */
.lanzarote-page { color: #183034; background: #f6f1e8; }
.lanzarote-page .site-header { background: rgba(246,241,232,.96); }
.lz-hero { position: relative; overflow: hidden; padding: clamp(4.5rem, 9vw, 8rem) 0 clamp(3.25rem, 6vw, 5.5rem); color: #fdf8ee; background: radial-gradient(circle at 78% 18%, rgba(231,191,111,.34), transparent 23rem), linear-gradient(124deg, #152f34 0%, #155e62 50%, #bc7a38 160%); }
.lz-hero::before { content: ""; position: absolute; inset: 0; opacity: .5; background: repeating-linear-gradient(154deg, transparent 0 3.4rem, rgba(255,255,255,.055) 3.48rem 3.58rem); pointer-events: none; }
.lz-hero .shell, .lz-callout .shell { position: relative; }
.lz-hero-grid { display: grid; grid-template-columns: minmax(0, 1.32fr) minmax(16rem, .68fr); gap: clamp(2rem, 6vw, 5.5rem); align-items: end; }
.lz-hero .eyebrow { color: #f5d5a3; }
.lz-hero h1 { max-width: 14ch; margin: .45rem 0 1rem; color: #fffdf7; font-size: clamp(3rem, 7.2vw, 6.4rem); font-weight: 500; line-height: .94; letter-spacing: -.045em; }
.lz-hero .lead { max-width: 44rem; color: #e4efed; font-size: clamp(1.08rem, 1.7vw, 1.38rem); }
.lz-hero-aside { padding: 1.35rem; border: 1px solid rgba(255,255,255,.28); border-radius: 1rem; background: rgba(10,38,42,.42); box-shadow: 0 1rem 3rem rgba(0,0,0,.18); }
.lz-hero-aside span, .lz-track > span, .lz-source-card > span, .lz-callout .kicker { display: block; color: #f0c685; font-size: .67rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.lz-hero-aside strong { display: block; margin: .55rem 0 .8rem; color: #fff; font: 500 clamp(1.55rem, 2.8vw, 2.2rem)/1.05 Georgia, serif; }
.lz-hero-aside p { margin: 0; color: #d4e3e1; font-size: .86rem; }
.lz-status { border-bottom: 1px solid #cfbe9d; background: #efe1c5; }
.lz-status .shell { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: #cfbe9d; }
.lz-status div { min-height: 6.3rem; padding: 1.15rem 1.25rem; background: #f7f0e2; }
.lz-status span { display: block; color: #6b5b46; font-size: .64rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.lz-status strong { display: block; margin-top: .35rem; color: #26484b; font: 500 1.08rem/1.15 Georgia, serif; }
.lz-section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, .75fr); gap: 2.5rem; align-items: end; margin-bottom: 1.55rem; }
.lz-section-head h2 { max-width: 17ch; margin: .35rem 0 0; font-size: clamp(2rem, 4vw, 3.8rem); font-weight: 500; line-height: 1; letter-spacing: -.03em; }
.lz-section-head > p { margin: 0; color: #566c6e; font-size: .94rem; }
.lz-promise-grid, .lz-track-grid, .lz-source-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; }
.lz-promise, .lz-track, .lz-source-card { padding: 1.35rem; border: 1px solid #d8d2c6; border-radius: .9rem; background: #fffdfa; box-shadow: 0 .6rem 1.6rem rgba(31,49,47,.06); }
.lz-promise { border-top: .3rem solid #c18543; }
.lz-promise:nth-child(2) { border-top-color: #197377; }
.lz-promise:nth-child(3) { border-top-color: #204b50; }
.lz-promise .number { color: #ba7d3d; font-size: .68rem; font-weight: 900; letter-spacing: .09em; }
.lz-promise h3, .lz-track h3, .lz-source-card h3 { margin: .65rem 0 .65rem; font: 500 1.48rem/1.08 Georgia, serif; }
.lz-promise p, .lz-track p, .lz-source-card p { margin: 0; color: #586d6e; font-size: .85rem; }
.lz-track-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lz-track { display: flex; flex-direction: column; min-height: 19rem; border-top: .35rem solid #1b7477; }
.lz-track.yaiza { border-top-color: #b06642; }
.lz-track > span { color: #167174; }
.lz-track.yaiza > span { color: #9a5939; }
.lz-track .track-rule { margin: 1rem 0 1.35rem; padding: .8rem .9rem; color: #365457; border-left: .25rem solid #d3b170; background: #f4ece0; font-size: .78rem; }
.lz-track ul, .lz-record-list { margin: 0 0 1.25rem; padding-left: 1.1rem; color: #52696b; font-size: .83rem; }
.lz-track li + li, .lz-record-list li + li { margin-top: .46rem; }
.lz-track a { margin-top: auto; color: #0d696d; font-size: .8rem; font-weight: 900; text-underline-offset: .2em; }
.lz-track.yaiza a { color: #914b30; }
.lz-callout { padding: clamp(2rem, 5vw, 4rem) 0; color: #fff; background: linear-gradient(125deg, #17383d, #247579); }
.lz-callout-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 3rem; align-items: center; }
.lz-callout h2 { margin: .45rem 0 0; color: #fffdf5; font-size: clamp(2.25rem, 4vw, 4.2rem); font-weight: 500; line-height: .97; }
.lz-callout p { margin: 0; color: #d9ebe8; }
.lz-callout p + p { margin-top: .8rem; }
.lz-callout .actions { margin-top: 1.25rem; }
.lz-callout .button { color: #17383d; background: #f2d39b; }
.lz-callout .button.secondary { color: #fff; border-color: rgba(255,255,255,.45); background: transparent; }
.lz-safeguard { padding: 1.1rem 1.2rem; color: #4a3731; border-left: .35rem solid #b46643; background: #f2dfcf; border-radius: 0 .7rem .7rem 0; font-size: .86rem; }
.lz-source-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lz-source-card { display: flex; flex-direction: column; min-height: 15rem; border-top: .3rem solid #b17440; }
.lz-source-card:nth-child(2) { border-top-color: #237577; }
.lz-source-card:nth-child(3) { border-top-color: #254d52; }
.lz-source-card > span { color: #9a5c34; }
.lz-source-card a { margin-top: auto; color: #0e6c70; font-size: .8rem; font-weight: 900; text-underline-offset: .2em; }
.lz-source-card small { display: block; margin-top: 1rem; color: #758486; font-size: .72rem; }
.lz-evidence-notice { margin-top: 1.1rem; padding: 1rem 1.15rem; color: #3f5154; border: 1px solid #c8d8d3; border-radius: .7rem; background: #e9f2ef; font-size: .82rem; }
.lz-evidence-notice strong { color: #1d6568; }
.lz-records { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: 2.2rem; padding: 1.4rem; border: 1px solid #d3ddd8; border-radius: .9rem; background: #f4faf7; }
.lz-records h2 { margin: 0; color: #1f5558; font-size: clamp(1.75rem, 3vw, 2.55rem); font-weight: 500; line-height: 1.04; }
.lz-records p { margin: .8rem 0 0; color: #5c7374; font-size: .85rem; }
.lz-record-list { columns: 2; margin: 0; }
.lz-record-list li { break-inside: avoid; }
.lz-footnote { margin-top: 1rem; color: #687879; font-size: .76rem; }

/* 16 Sep 2026 institutional 100 layer */
.lanzarote-page main{overflow:hidden}.lz-page-meta{border-bottom:1px solid #d7d0c2;background:#fffdfa}.lz-page-meta .shell{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding-top:.75rem;padding-bottom:.75rem;color:#617274;font-size:.75rem}.lz-page-meta strong{color:#24494d}.lz-page-meta a{color:#0f686b;font-weight:850;text-decoration-thickness:.08em;text-underline-offset:.18em}.lz-brief{padding:clamp(2rem,5vw,4rem) 0;background:linear-gradient(180deg,#fffdfa,#f3eee5)}.lz-brief-head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1rem}.lz-brief-head .kicker{margin:0;color:#9a5a35;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.lz-brief-head h2{margin:.3rem 0 0;max-width:16ch;font-size:clamp(2rem,4vw,3.4rem);font-weight:500;line-height:1;letter-spacing:-.03em}.lz-brief-head p{max-width:38rem;margin:0;color:#586d6e;line-height:1.55}.lz-brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.lz-brief-card{position:relative;overflow:hidden;padding:1.25rem 1.25rem 1.35rem;border:1px solid #d7d0c2;border-radius:1rem;background:#fff;box-shadow:0 .75rem 1.8rem rgba(31,49,47,.07)}.lz-brief-card:before{content:"";position:absolute;left:0;top:0;right:0;height:.3rem;background:#1a7477}.lz-brief-card:nth-child(2):before{background:#b16c40}.lz-brief-card:nth-child(3):before{background:#6f3b3b}.lz-brief-card span{display:block;color:#7d6652;font-size:.66rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.lz-brief-card strong{display:block;margin:.55rem 0;color:#183034;font:500 1.3rem/1.08 Georgia,serif}.lz-brief-card p{margin:0;color:#586d6e;font-size:.85rem;line-height:1.5}.lz-audience{margin-top:1rem;padding:1rem;border:1px solid #d4ded9;border-radius:1rem;background:#edf5f2}.lz-audience-label{margin:0 0 .7rem;color:#1a6568;font-size:.7rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.lz-audience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.lz-audience-grid a{display:flex;min-height:5rem;flex-direction:column;justify-content:center;padding:.85rem .9rem;border:1px solid #c7d8d2;border-radius:.75rem;background:#fff;color:#1b3e42;text-decoration:none;box-shadow:0 .25rem .8rem rgba(31,49,47,.04)}.lz-audience-grid strong{font-size:.9rem}.lz-audience-grid span{margin-top:.2rem;color:#687b7d;font-size:.72rem;line-height:1.35}.lz-architecture{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:.6rem;align-items:center;margin:1.1rem 0 0}.lz-arch-node{min-height:8.5rem;padding:1rem;border:1px solid #d5ddd9;border-radius:.9rem;background:#fff;box-shadow:0 .5rem 1.2rem rgba(31,49,47,.05)}.lz-arch-node span{display:block;color:#8a6441;font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.lz-arch-node strong{display:block;margin:.45rem 0;color:#183034;font:500 1.15rem/1.1 Georgia,serif}.lz-arch-node p{margin:0;color:#607274;font-size:.78rem;line-height:1.42}.lz-arch-arrow{color:#a17345;font-size:1.5rem;font-weight:900}.lz-recovery-rail{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:1rem;align-items:center;margin-top:1rem;padding:1rem 1.1rem;border:1px solid #ead2c7;border-left:.35rem solid #a55c43;border-radius:.8rem;background:#fbede6}.lz-recovery-rail strong{color:#653a31}.lz-recovery-rail p{margin:0;color:#664f48;font-size:.82rem;line-height:1.48}.lz-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.1rem}.lz-next-card{display:flex;min-height:9.5rem;flex-direction:column;padding:1rem;border:1px solid #d3ddd8;border-radius:.85rem;background:#fff}.lz-next-card span{color:#9a5a35;font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.lz-next-card strong{margin:.4rem 0;color:#183034;font:500 1.1rem/1.1 Georgia,serif}.lz-next-card p{margin:0;color:#627577;font-size:.78rem;line-height:1.45}.lz-next-card a{margin-top:auto;padding-top:.75rem;color:#0d696d;font-size:.78rem;font-weight:900;text-underline-offset:.2em}.lz-current-badge{display:inline-flex;align-items:center;gap:.45rem;margin-top:1rem;padding:.48rem .68rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.09);color:#fff;font-size:.73rem;font-weight:850}.lz-current-badge:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:#f0c685;box-shadow:0 0 0 .22rem rgba(240,198,133,.15)}
@media (max-width: 980px){.lz-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lz-architecture{grid-template-columns:1fr}.lz-arch-arrow{transform:rotate(90deg);text-align:center}.lz-recovery-rail{grid-template-columns:1fr}.lz-next-grid{grid-template-columns:1fr}}
@media (max-width: 800px) {
  .lz-hero-grid, .lz-section-head, .lz-callout-grid, .lz-records { grid-template-columns: 1fr; }
  .lz-status .shell, .lz-promise-grid, .lz-track-grid { grid-template-columns: 1fr; }
  .lz-source-grid { grid-template-columns: 1fr; }
  .lz-status .shell { gap: 1px; }
  .lz-track { min-height: 0; }
  .lz-track a { margin-top: 1.4rem; }
  .lz-record-list { columns: 1; }
  .lz-brief-head{display:block}.lz-brief-head p{margin-top:.75rem}.lz-brief-grid{grid-template-columns:1fr}.lz-page-meta .shell{align-items:flex-start;flex-direction:column;gap:.25rem}
}
@media(max-width:560px){.lz-audience-grid{grid-template-columns:1fr}.lz-hero h1{font-size:clamp(2.7rem,14vw,4.4rem)}.lz-hero{padding-top:3.2rem}}
