:root{--ink:#102c27;--cream:#f8f5ee;--muted:#65726e;--line:#dfe4dc;--brand:#c99231}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{text-decoration:none;color:inherit}.site-header{height:84px;padding:0 clamp(22px,6vw,90px);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;gap:10px;align-items:center;font-weight:700;letter-spacing:-.03em}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--brand);color:#fff;clip-path:polygon(50% 0,63% 35%,100% 50%,63% 65%,50% 100%,37% 65%,0 50%,37% 35%)}.site-nav{display:flex;gap:20px;align-items:center;font-size:13px;font-weight:600}.site-nav a{padding:7px 0;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav .active{color:var(--brand);border-color:var(--brand)}.site-nav .give-link{border:0;background:var(--brand);color:white;border-radius:999px;padding:10px 17px}.menu-toggle{display:none;border:0;background:none;font-size:24px}.hero{min-height:660px;padding:100px clamp(22px,8vw,130px);display:flex;align-items:center;position:relative;color:white;background:linear-gradient(90deg,#0a211d 4%,rgba(10,33,29,.74) 43%,rgba(10,33,29,.14)),var(--hero) center/cover}.hero-copy{max-width:650px}.eyebrow{font-size:12px;letter-spacing:.17em;text-transform:uppercase;color:#f4cc84;font-weight:700}.hero h1,.page-hero h1{font:600 clamp(43px,6vw,78px)/1.06 'Playfair Display',serif;margin:14px 0 22px}.hero p{max-width:580px;font-size:18px;color:#f0f3ef}.button{display:inline-block;padding:14px 23px;border-radius:4px;background:var(--brand);color:#fff;font-weight:700;margin:15px 10px 0 0}.button.ghost{background:transparent;border:1px solid #fff}.section{padding:90px clamp(22px,8vw,130px)}.section-head{max-width:620px;margin-bottom:42px}.section h2{font:600 clamp(31px,4vw,49px)/1.15 'Playfair Display',serif;margin:8px 0 12px}.section p{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;padding:28px;border:1px solid var(--line)}.card b{display:block;color:var(--brand);font-size:12px;letter-spacing:.13em}.card h3{font:600 25px 'Playfair Display',serif;margin:12px 0 8px}.split{display:grid;grid-template-columns:1fr 1fr;min-height:470px}.split-photo{background:center/cover var(--hero)}.split-copy{padding:70px;background:#153c34;color:#fff}.split-copy p{color:#d7e0dc}.page-hero{padding:100px clamp(22px,8vw,130px) 70px;background:#153c34;color:#fff}.page-hero p{max-width:630px;color:#d7e0dc}.event-list,.post-grid,.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.event,.post{background:#fff;border:1px solid var(--line);padding:24px}.event time{color:var(--brand);font-weight:700}.post img,.gallery img{width:100%;height:230px;object-fit:cover}.post h3{font:600 24px 'Playfair Display',serif}.gallery{grid-template-columns:repeat(3,1fr)}.gallery figure{margin:0;background:#fff}.gallery figcaption{padding:12px;font-weight:600}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px}.contact-details{background:#153c34;color:white;padding:38px}.contact-details p{color:#d7e0dc}form{display:grid;gap:14px}input,textarea{border:1px solid var(--line);padding:14px;font:inherit;background:#fff}.site-footer{padding:55px clamp(22px,8vw,130px) 28px;background:#0d2823;color:#e9efec;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px}.site-footer p{color:#b9c8c2;font-size:14px}.copyright{grid-column:1/-1;border-top:1px solid #ffffff24;padding-top:18px}@media(max-width:850px){.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:84px;left:0;right:0;padding:18px 22px;background:#fff;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.site-nav.open{display:flex}.cards,.event-list,.post-grid,.gallery,.contact-grid,.site-footer{grid-template-columns:1fr}.split{grid-template-columns:1fr}.split-photo{min-height:300px}.hero{min-height:570px;padding-top:70px}.section{padding-top:65px;padding-bottom:65px}}
 
/* Navegación móvil: panel centrado y apertura suave. */
@media(max-width:1100px){
  body .site-header{height:76px;padding:0 22px}
  body .site-header .menu-toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--ink);font-size:21px;line-height:1;transition:transform .25s ease,background .25s ease,color .25s ease}
  body .site-header .menu-toggle[aria-expanded="true"]{background:var(--ink);color:#fff;transform:rotate(90deg)}
  body .site-header .site-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:absolute;top:76px;left:12px;right:12px;z-index:-1;visibility:hidden;opacity:0;transform:translateY(-18px);pointer-events:none;padding:16px;background:#fcfbf8;border:1px solid var(--line);border-radius:0 0 22px 22px;box-shadow:0 18px 42px rgba(16,44,39,.14);align-items:stretch;gap:6px;transition:opacity .28s ease,transform .32s cubic-bezier(.2,.8,.2,1),visibility .32s ease}
  body .site-header .site-nav.open{z-index:30;visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}
  body .site-header .site-nav a{width:100%;padding:12px 16px;text-align:center;border:0;border-radius:10px;transition:background .2s ease,color .2s ease,transform .2s ease}
  body .site-header .site-nav a:hover,body .site-header .site-nav .active{background:#f5eee1;color:var(--brand);border:0}body .site-header .site-nav a:active{transform:scale(.98)}
  body .site-header .site-nav .give-link{grid-column:1/-1;margin:8px auto 2px;width:min(100%,260px);padding:12px 18px;text-align:center;box-shadow:0 10px 18px rgba(201,146,49,.24)}
}
@media(max-width:440px){body .site-header .site-nav{grid-template-columns:1fr;padding:14px 18px}body .site-header .site-nav .give-link{grid-column:auto;width:min(100%,230px)}}
