/* A compact brand introduction and unobstructed photographic cards. */
#espacios>.section-head:first-child{position:relative;display:grid;grid-template-columns:1.25fr 1fr;gap:50px;align-items:center;margin:0;padding:0 0 30px}#espacios>.section-head:first-child h2{font-size:clamp(44px,4.7vw,68px);line-height:1.05;margin:0 0 18px}#espacios>.section-head:first-child>.muted{font-size:16px;line-height:1.8;max-width:440px;border-left:1px solid #b6a37788;padding-left:30px;justify-self:end}#espacios .featured-brand{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:20px 26px;margin:0 0 32px;background:#fbf5e766;border:1px solid #b8a67e55;border-radius:8px;box-shadow:0 8px 25px #36533508}#espacios .featured-brand img{width:175px;height:57px}.venue-locations{display:flex;gap:22px;flex-wrap:wrap;align-items:center}.venue-locations span{font-size:12px;color:#455b43;letter-spacing:1px;margin:0}.venue-locations span::before{content:'·';margin-right:18px;color:#9c7d46;font-weight:bold}
.venue-grid{gap:30px}.venue-grid .place-card{min-height:0;border:1px solid #b9ab8855;border-radius:10px;overflow:hidden;background:#1e4233;box-shadow:0 13px 32px #203c2c20}.venue-grid .photo-button{height:330px;min-height:0;position:relative}.venue-grid .photo-button img{height:330px;width:100%;object-fit:cover;filter:none}.venue-grid .photo-button::after{background:linear-gradient(180deg,#071f1512,transparent 60%,#183b2c25)}.venue-grid .card-body{position:relative;inset:auto;border:0;padding:24px 28px 27px;background:linear-gradient(110deg,#1c4031,#2a4b37);pointer-events:auto}.venue-grid .card-body .eyebrow{font-size:10px;margin-bottom:8px}.venue-grid h3{font-size:36px;margin-bottom:9px}.venue-grid .card-body .muted{font-size:13px;max-width:100%;min-height:44px;line-height:1.65}.venue-grid .photo-count{top:auto;bottom:18px;right:18px;left:auto;background:#f0deb2!important;color:#183b2b;border-color:#f4e6c6;box-shadow:0 4px 14px #09231730;backdrop-filter:none;padding:12px 17px;font-size:12px}.venue-grid .photo-button:hover .photo-count{background:#fff0cb!important}.venue-grid .photo-button:focus-visible{outline:3px solid #e4bd6d;outline-offset:-5px}.venue-grid .photo-button[data-gallery='trujillo'] img{object-position:center 40%}
#espacios>.alternatives-heading{margin-top:58px;padding-top:35px;border-top:1px solid #a7a58277;gap:35px}#espacios>.alternatives-heading h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:clamp(30px,3vw,42px);line-height:1.15;margin:0}#espacios>.alternatives-heading>.muted{font-size:14px;max-width:430px;line-height:1.75}.alternatives{gap:25px}.alternatives .place-card{display:grid;grid-template-columns:48% 1fr;background:linear-gradient(130deg,#ede7d7,#d4ddc9);border:1px solid #abb39799;border-radius:9px;box-shadow:0 8px 24px #29463213;min-height:240px;overflow:hidden}.alternatives .photo-button{min-height:240px;height:100%;overflow:hidden}.alternatives .photo-button img{height:100%;width:100%;object-fit:cover}.alternatives .card-body{display:flex;flex-direction:column;justify-content:center;padding:24px;border:0}.alternatives h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:29px;line-height:1.2;margin:0 0 14px;color:#244633}.alternatives .muted{font-size:13px;line-height:1.7;margin:0}.alternatives .photo-count{left:12px;right:12px;bottom:13px;padding:11px 8px;background:#193e30eb!important;color:#fff1d1;border:1px solid #d6c095;font-size:11px;box-shadow:0 4px 15px #163d2630}
@media(min-width:1500px){.venue-grid .photo-button,.venue-grid .photo-button img{height:380px}}
@media(max-width:850px){#espacios>.section-head:first-child{gap:25px;grid-template-columns:1fr}#espacios>.section-head:first-child>.muted{max-width:100%;justify-self:start;margin:0;padding-left:20px;font-size:15px}.venue-locations{gap:12px}.venue-locations span{font-size:11px}.venue-locations span::before{margin-right:9px}.venue-grid .photo-button,.venue-grid .photo-button img{height:260px}.venue-grid .card-body{padding:22px}.alternatives .place-card{grid-template-columns:1fr}.alternatives .photo-button{height:210px;min-height:210px}.alternatives .photo-button img{position:static}.alternatives .card-body{padding:23px}}
@media(max-width:650px){#espacios .featured-brand{padding:18px;align-items:start}#espacios .featured-brand img{width:135px;height:49px}.venue-locations{display:grid;grid-template-columns:1fr;gap:6px}#espacios .venue-locations span{max-width:none;text-align:left;font-size:10px;letter-spacing:.3px}.venue-grid .photo-button,.venue-grid .photo-button img{height:280px}.venue-grid .card-body .muted{min-height:0}.venue-grid h3{font-size:34px}.venue-grid .photo-count{padding:11px 15px;bottom:15px;right:15px}.alternatives{grid-template-columns:1fr}.alternatives .place-card{grid-template-columns:43% 1fr;min-height:225px}.alternatives .photo-button{height:100%;min-height:225px}.alternatives .photo-button img{position:absolute}.alternatives .card-body{padding:20px 17px}.alternatives h3{font-size:26px}.alternatives .muted{font-size:12px}.alternatives .photo-count{left:8px;right:8px;font-size:10px}#espacios>.alternatives-heading h2{font-size:35px}}
/* Compact header and consistent, readable interactive states. */
header{min-height:96px;padding:6px 5%;gap:26px}.brand-header{flex-basis:255px}.brand-header img{width:255px;height:90px}header nav{gap:23px}.header-call{display:flex;flex-direction:column;justify-content:center;padding:10px 17px;min-height:54px;border-radius:7px;font-size:16px;line-height:1.3;background:#e5c994;color:#183d2d;border:1px solid #eedbb5;box-shadow:0 3px 12px #071f1926}.header-call small{color:#36523b;font-size:9px;letter-spacing:1.2px;margin-top:4px}.header-call:hover,.header-call:focus-visible{background:#f6e6c1;color:#123326;border-color:#f6e6c1}.header-call:hover small,.header-call:focus-visible small{color:#254632}
#espacios>.alternatives-heading{margin-top:38px;padding-top:28px;margin-bottom:23px}#espacios>.alternatives-heading>.muted{margin:0;font-size:13px;line-height:1.7}.alternatives .place-card{min-height:200px;grid-template-columns:44% 1fr}.alternatives .photo-button{min-height:200px}.alternatives .card-body{padding:20px 23px}.alternatives h3{font-size:27px;margin-bottom:10px}.alternatives .muted{font-size:12px;line-height:1.7}.alternatives .photo-count{min-height:42px;display:flex;align-items:center;justify-content:center;font-size:12px;padding:9px 8px}
.alternatives .photo-button:hover .photo-count,.alternatives .photo-button:focus-visible .photo-count{background:#fff0cb!important;color:#173d2b!important;border-color:#e9cc91;opacity:1}.venue-grid .photo-button:hover .photo-count,.venue-grid .photo-button:focus-visible .photo-count{background:#fff0cb!important;color:#173d2b!important;opacity:1}.button:hover,.button:focus-visible{background:#315b43;color:#fff6e4;border-color:#315b43}.button.gold:hover,.button.gold:focus-visible,.plan .button.gold:hover,.plan .button.gold:focus-visible{background:#f4dfb2;color:#183b2b;border-color:#ebd09c}.hero .button.outline:hover,.hero .button.outline:focus-visible{background:#f3e1b8;color:#183b2b;border-color:#f3e1b8}.contact-box .button:hover,.contact-box .button:focus-visible{background:#315b43;color:#fff6e4}.service-card:hover .service-action,.service-card:focus-visible .service-action{background:#f4e1b7;color:#173d2b}.button.gold::after{background:linear-gradient(90deg,transparent,#ffffff30,transparent)}
@media(max-width:1200px){.header-call{display:none}}
@media(min-width:651px) and (max-width:850px){header{flex-wrap:nowrap;gap:16px}.brand-header{flex-basis:200px}.brand-header img{width:200px;height:78px}header nav{gap:11px}header nav a{font-size:11px}.alternatives .place-card{grid-template-columns:1fr}.alternatives .photo-button{height:175px;min-height:175px}}
@media(max-width:650px){header{min-height:88px;padding:4px 6%;gap:15px}.brand-header{flex-basis:220px}.brand-header img{width:220px;height:80px}header nav{top:88px;gap:10px}.alternatives .place-card{grid-template-columns:42% 1fr;min-height:195px}.alternatives .photo-button{min-height:195px;height:100%}.alternatives .card-body{padding:17px}.alternatives h3{font-size:24px}.alternatives .photo-count{font-size:10px;padding:8px 5px}.alternatives .muted{font-size:12px}}
/* Strong contrast for the telephone action in every state. */
header .header-call{background:#ecd39c;color:#102f24;border-color:#f6e4bb;font-weight:700;box-shadow:0 3px 12px #071f1933}header .header-call small{color:#284532;font-weight:600;font-size:10px;letter-spacing:1px;opacity:1}header .header-call:hover,header .header-call:focus-visible{background:#fff0cb;color:#102f24;border-color:#fff0cb}header .header-call:hover small,header .header-call:focus-visible small{color:#284532}header .header-call:focus-visible{outline:2px solid #fff0cb;outline-offset:4px}
.pyramid-feature{position:relative;margin:4px 0 28px;border-radius:9px;overflow:hidden;height:340px;background:#193c2e}.pyramid-feature img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.pyramid-feature::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b2d25cc,transparent 60%)}.pyramid-feature figcaption{position:absolute;bottom:28px;left:30px;z-index:1;font:36px Georgia,serif;color:#fff1d5}.pyramid-feature figcaption span{display:block;font:13px Arial,sans-serif;letter-spacing:1px;margin-top:10px}.branch-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.branch-links button{padding:9px 12px;min-height:40px;border:1px solid #55704e;border-radius:5px;background:#214634;color:#fff0cf;font:500 12px Arial,sans-serif;cursor:pointer}.branch-links button:hover,.branch-links button:focus-visible{background:#f5dfaf;color:#173d2c;border-color:#6b774b}.venue-grid .photo-button[data-gallery='molina'] img{object-position:center 30%}@media(max-width:650px){.pyramid-feature{height:260px}.pyramid-feature figcaption{font-size:27px;left:20px;bottom:20px}.branch-links{gap:6px}.branch-links button{padding:8px;font-size:11px}}
/* Full original logo, with breathing room above the emblem. */
header .brand-header{flex:0 0 240px;display:flex;align-items:center;justify-content:center;padding:6px 0;line-height:0}header .header-logo{display:block;width:220px;height:102px;max-width:100%;overflow:hidden}header{padding-top:5px;padding-bottom:5px}@media(max-width:1100px){header .brand-header{flex-basis:205px}header .header-logo{width:195px;height:90px}}@media(max-width:650px){header .brand-header{flex-basis:200px;padding:5px 0}header .header-logo{width:185px;height:86px}header{min-height:106px}header nav{top:106px}}
.alternative-groups{display:grid;gap:28px}.alternative-group{padding:26px;border:1px solid #a9b29688;border-radius:12px;background:linear-gradient(120deg,#f0ecdf,#dde2cf);box-shadow:0 9px 25px #233f3010}.alternative-group:nth-child(2){background:linear-gradient(120deg,#e4dfcf,#d0dac3)}.alternative-brand-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:20px}.alternative-brand-heading h3{font:32px/1.2 'Libre Caslon Display',Georgia,serif;margin:0;color:#204632}.alternative-brand-heading p{font-size:12px;color:#4b6046;margin:0}.branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.branch-card{border-radius:8px;overflow:hidden;background:#1d4031;border:1px solid #b3ad8766;box-shadow:0 6px 18px #183a2214}.branch-photo{display:block;position:relative;width:100%;padding:0;border:0;background:#173a2d;cursor:pointer;overflow:hidden;height:190px}.branch-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}.branch-photo span{position:absolute;bottom:12px;left:12px;right:12px;display:block;padding:11px 8px;background:#f1dfb7;color:#193c2e;border:1px solid #f7e8c9;border-radius:5px;font:600 12px Arial,sans-serif;box-shadow:0 3px 12px #001b1b26}.branch-photo:hover img{transform:scale(1.035)}.branch-photo:hover span,.branch-photo:focus-visible span{background:#fff0ca;color:#102f24}.branch-photo:focus-visible{outline:3px solid #e2bd77;outline-offset:-4px}.branch-caption{padding:17px 20px 20px}.branch-caption>span{font:10px Arial,sans-serif;letter-spacing:2px;color:#e2c998}.branch-caption h4{font:26px/1.2 'Libre Caslon Display',Georgia,serif;margin:6px 0 0;color:#fff0d3}@media(max-width:700px){.alternative-group{padding:18px}.alternative-brand-heading{display:block}.alternative-brand-heading h3{font-size:29px}.alternative-brand-heading p{margin-top:8px}.branch-grid{grid-template-columns:1fr;gap:16px}.branch-card{display:grid;grid-template-columns:55% 1fr;align-items:stretch}.branch-photo{height:165px}.branch-caption{display:flex;flex-direction:column;justify-content:center;padding:16px}.branch-caption h4{font-size:25px}.branch-photo span{font-size:11px;left:8px;right:8px;padding:10px 5px}}@media(prefers-reduced-motion:reduce){.branch-photo img{transition:none}}

/* Identidad de los camposantos secundarios */
.alternative-brand-heading{align-items:center;gap:24px;padding-bottom:22px;border-bottom:1px solid #b7bb9f;margin-bottom:24px}.alternative-brand-identity{display:flex;align-items:center;gap:24px}.alternative-brand-logo{display:block;width:210px;height:76px;object-fit:contain;padding:12px 18px;background:#fffdf5;border:1px solid #d5d0b9;border-radius:8px;box-sizing:content-box}.alternative-brand-identity h3{font-size:26px}.alternative-brand-heading>p{color:#385044}@media(max-width:700px){.alternative-brand-identity{gap:14px;flex-wrap:wrap}.alternative-brand-logo{width:170px;height:60px;padding:10px 14px}.alternative-brand-heading{align-items:flex-start;flex-direction:column;gap:10px}.alternative-brand-identity h3{font-size:24px}}

.contact-email{display:inline-flex;align-items:center;gap:12px;color:#f5dfac!important;font-size:clamp(15px,2vw,21px);padding:14px 0;text-decoration:underline;text-underline-offset:6px;overflow-wrap:anywhere}.contact-email svg{width:24px;height:24px;flex-shrink:0}.contact-email:hover{color:#fff!important}.contact-email:focus-visible{outline:2px solid #f5dfac;outline-offset:6px}.partner-card img{object-fit:contain}

.studio-credit{padding:20px 24px 30px;text-align:center;background:#102f24;color:#d8dfd8;font-size:12px;letter-spacing:.08em;border-top:1px solid #536147}.studio-credit strong{color:#f1dba9;font-weight:600;margin-left:6px}@media(max-width:700px){.studio-credit{padding-bottom:90px}}
